> なんとか、!Open 等で補正をかけることは不可能でしょうか。
ファイルをオープンするときに常に何かするというのは無駄な気がします。特に指定行番号ジャンプをするというのは9割方がタグジャンプだとすれば,タグジャンプのマクロ側で対処すべきだと思います。それに !Openイベントはファイルをオープンしたところで終了しますので,Dnを変更したまま終了させてしまうことになりかねませんから,問題点が大きすぎますね。
> だって、論理行モードだと完全に正常なのに、表示行モードだと異常になることがある、という事象だったものですから。
一時的に論理行モードに変更して,終了後に元に戻すわけですが,初期値が論理行モードであればステータス情報などの書き換えが発生しませんが,初期値が表示行モードの場合は書き換えが発生します。書き換えるところがステータス情報だけではなく,例えばもしも行番号表示(Dl)やページ番号表示(Pg)やカーソル行強調表示(Du)などを有効にしている場合も想定すると,スクリーン全体を書き換える必要があります。
この辺りはさすがの寅次さんも結構試行錯誤されたようで,再表示してから行番号モードを戻すような常識では考えられないような操作を行っています。相当に苦労したように想像するところです。
このへんの動作については,実験を繰り返してみるしかないでしょう。
このほかにも冒頭で Dn[, Dn-,
#60 Dn], というように一見関係なさそうなコマンドの前後でモードを一時的に変更していますが,ここはわたしも理解できないところです。単にタグ情報から取得したパスと行番号を pf に出力する時点では関係がないはず。しかし,あの寅次さんがそうしているのには何か訳があるはずです。相当な動作試験も行ったはずで,その結果,必要だという結論に達したのでしょう。
結論としては,理論はいい,現象がすべて,ということになるでしょう。ちと納得いかないところもありますけれどね。