コメントスタイルにおいて、ブロック型と行型の書式が一部重なる場合、 正しくブロック型のコメントスタイルが動かない
- ページ: BugReport
- 投稿者: anonymous
- 優先順位: 低
- 状態: 提案
- カテゴリー: コメントスタイル
- 投稿日: 2009-04-28 (火) 18:18:38
- バージョン: 1.6.4.0
メッセージ
まれなケースですが、独自スクリプトで使用するコメント書式に
ブロック型
com〜endcom
行型
com
というコメントスタイルを設定した場合、ブロック型のコメントスタイルが有効になりません。
行型のコメントスタイルが少ない文字数でマッチしてしまうので、優先されてしまうせいだと思われます。
通常はブロック型の方がコメント範囲は長いので、
マッチングアルゴリズムは最短ではなく最長マッチで判定するようにすればいいのではないかと思います。
(ブロック型のコメント開始タグがファイルの終端にあると、コメント終了タグを探して変な挙動をしそうですが)
よろしくお願いします。
例:
com
サンプル ←この二行が
endcom ←コメントとして認識されない
- それをコンピュータが理解しようとするとき行とブロックの区別は?矛盾してると思いますけど。 --
- comが出現したらその先をサーチして、endcomに到達したらブロックコメント、別のcomまたはEOFに到達したら行コメント、てことだと思います。一文字でも編集があるたびに最悪、ファイル全体サーチになるので効率悪すぎですねぇ。当該スクリプトの仕様作成者はそういう道理(スクリプト解析・実行も非効率)もわかってないのでしょう。エディタに色分けでもしてもらわない限り、どこからどこまでがコメントかも一目じゃわからない、糞スクリプトですな。他エディタを探してもご希望の解析を実現しているものは存在しないんじゃないの?何でこういうのをバグレポートに書くかな? --
- 糞スクリプト認定したいのでスクリプト名を教えてください。 --
- Luaのコメント書式が似てますね。Luaの行コメントは「--」、ブロックコメントは「--[[〜]]」なので、たいていのエディタはブロックコメントの開始を認識してくれません。秀丸エディタは行コメントとブロックコメントを分けて設定できるのですが、残念ながらサクラエディタでは… --
- Luaのコメントは開始文字列がブロックコメントと行コメントとで違いますが、本件ではまったく同一(どっちもcom)です。Luaならサクラでも[一般]掲示板の[6841]の方法で解決できますが、本件はかなり論理的に無理があります。秀丸でだってできないと思いますが... --
- upachid:952 色分けのコメントを拡張/Luaのような場合に上に書いた方が優先になるように指定可能 --