Thanks to visit codestin.com
Credit goes to github.com

Skip to content

フィルターで@から始まる行をルールとして解釈しない #50

@nines75

Description

@nines75

現在ディレクティブが使えるフィルターでは共通のparserを使っているため、対応していないディレクティブも有効になる
例えばNGワードで@disableディレクティブは効果はないが、ルールとして解釈されるわけではなくディレクティブとなる

# NGワード

@disable # これは効果がないがディレクティブとして解釈される
rule # 通常のルール
@end

@escape(@disable) # '@disable'というルールを書きたい場合はエスケープが必要
@rule # 予約されていないディレクティブではエスケープは不要

この仕様はどこまでエスケープが必要なのか分かりずらいため、一律して@から始まる行をルールとして解釈しない
つまりルールの先頭に@を使いたい場合は常にエスケープが必要になる

現在は補完もハイライトも各フィルターで利用可能なもののみ行っているが、単純なルールとして解釈されないことを示すためにハイライトの方は利用不可であってもすべての予約語に対して行うようにする
また行頭の@もハイライトする

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions