以前、CODEX.DEF V3.0は便利だが、使用後にファイラーコマンドが効かなくなったり
して、おかしくなると書きましたが、原因が分かりました。
検索文字に色付けするCODEXS.DEFが、&c を使って常駐していたため、
ファイラーコマンドが効かなくなっていたのでした。
オプションの初期化で直っていたのは、これによってマクロが終了したためでした。
CODEXS.DEF は、CODEX.DEF V3.0 に同梱の、5,701bytes 02-04-06 16:27 のものです。
修正箇所はまず、12行目をシフトの認識がよくないのでコメントにします。
これで、このマクロ単独で、通常起動で使えるようになるので、便利。
?.
&10 ((r.-1)!)?.
&01 (r)? >S ;if from codexh.def, set tgtstr
; (ks&1)??{ &10 r.-1='"', #F. } ;★シフト認識悪いのでコメントに
:F ;---- #F -----------------------
次に、37行目、★印のところを追加、修正します。
:L ;---- Main (L)oop --------------
#] ;ステータス画面再描画
&10
r..0=wa,
ax=r, &03 ;---- redraw screen ---
:a &c ;★ ファイラーコマンド効かないので
(s)?>a ;★追加 編集モード以外ならバイパス
&10 (r.-1)?{ (ks&1)?>Z &d >F }
>L
これでこのマクロを常駐したまま普通に作業できるようになりました。
検索文字列がピンク色になって、とても識別しやすくて便利です。
もちろんCODEX.DEFとの連携はそのままできます。
複数の文字列を指定するときは
\x Emmett|CODEX|codex
のように先頭に、\x を付けて、| で区切ればできるので、凄く便利ですよ。
修正による副作用は何かあるかわかりませんが、
&c での常駐のせいか、VTDOS環境で、TAGLIGHT.EXEが常駐していると、
カーソルの動きがかなり遅くなります。INT2F がらみかも。
また、他のマクロとの相性によっては予期せぬ動作をすることもあるかも。
それでも、いちど試してみる価値が十分ある凄いマクロです。
作者のEmmettさんに感謝!!