|
毎度お世話になっております。
さて、数値や文字定数などの強調を「複数行コメント」ではなく通常の「強調表示」
で定義したいのですが、
該当の表示方法が通常の「強調表示」に無いためうまくできず困っています。
表示方法の
・普通の文字
・スクリプト部分
・数値
・文字定数
・コメント
・#ifdef等での無効部分
の 6 種類が「複数行コメント」には存在するのですが、「強調表示」には存在しま
せん。この 6 種類を
「強調表示」にもちゃんと揃えてもらえれば大変助かります。
なぜなら、「複数行コメント」と「強調表示」とでは強調の部分が重なった場合での
挙動が大きく異なる
からです。「複数行コメント」では後から重ねた方の定義が一切適用されませんが、
「強調表示」では
表示方法の優先順位に応じて重なり部分が上塗りされます。
特にこれが問題となるのは、上記の 6 種類の表示方法での強調を hmonig.dll など
の 鬼車 系正規表現で
前方一致の \K を用いて定義する場合です。例えば、文字定数の定義の前方参照部分
が数値での強調の部分と
重なったときに、この文字定数の強調が動作しなかったりします。この現象は「複数
行コメント」の挙動による
ものですが、これを避けるために「強調表示」で定義しようにも表示方法に数値と文
字列が無いために
どうしようもなくなって詰んでしまいます。
また、この問題を避けるためにマクロからカラーマーカーを使用することも試みたこ
とがありますが、強調定義と
比べて動作が非常に重くなったため導入を断念した経緯があります。
このように「強調表示」に上記の 6 種類の表示方法が揃っていないことで今まで言
語の強調の定義に大変
苦労させられてきました。この 6 種類の表示方法を正式に「強調表示」に加えるこ
とのご検討を、どうかよろしく
お願い申し上げます。
|
|