ANTLR4解析器中的Colorize规则

时间:2014-06-05 09:30:17

标签: parsing antlr antlr4

我正在研究CSS编辑器,我需要突出选择器。

这是ANTLR中的解析器规则

selectors
: selector (COMMA selector)*
;

selector
: simple_selector_sequence (combinator? simple_selector_sequence)*
;

依旧...... 如您所见,选择器规则包含其他规则,因此我不能简单地着色一种类型的令牌。

我相信最好的方法是在选择器规则中为每个标记设置一种类型。然后仅使用此类型的标记着色。但我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

典型语法高亮显示器仅对令牌类型起作用。如果您需要语法结构来指示颜色,那么您需要在解析树上操作。使用名称选择器查找子树根。下面的所有标记都应以您的特殊颜色突出显示。