「QX の導入 (2)」というのは、うちの「まにあわせ主義」解説のことでしょう か。あそこでは QGrep で検索した文字列に色をつける方法は書いてありません。 それは単純に実現する方法がないからです。
文字列に色をつけるには「キーワード」による強調表示を使います。キーワード ファイルに検索文字列を追加して、その後、キーワードファイルの「リセット」 を共通設定から実行すると、その文字列が色分けされます。これをマクロで便利 にすることも可能かと思います。
QGrep は「終了すると同時に」自分の INI ファイルに検索文字列の履歴を書込 みますので、そのデータを取ってきて KEYWORD ファイルに追加して……、とや るといちおう強調できます。でも「終了後」というのがちょっとめんどくさいで すね。プログラマのかたなら現在実行中の QGrep から取得できるかも。
proc main dim s$, fnum, file$ '専用キーワードファイルのファイル名指定 const keyfile$ = "grepword.txt" file$ = @@QXDirectory$ + "\" + keyfile$ s$ = getprofile$("search", "string0", @@QXDirectory$+"\QGREP.INI") fnum = freefile() open file$ for output as #fnum print #fnum, s$ close #fnum ' @@KeywordReset 5 '番号がわかっているなら下の 4 行を消してこちら dim i for i = 1 to 5 @@KeywordReset i next end proc
こんなマクロを使うわけですが、キーワードファイルが QX 上での設定と連動し てないといけないわけで、共通設定のキーワードファイルに、上のマクロ内で使 っているファイル名なら grepword.txt というファイルを指定しておき、また、 QGREP 処理後に開くすべてのファイルの書式で、このキーワードファイルがオン になっている必要があります。
上のマクロですと、常に臨時に追加されるキーワードのランクは1になります。 |