我希望能够根据起始角色对线条进行不同的着色。
例如:
- This is line 1
- This is line 2
x This is line 3
- This is line 4
x This is line 5
因此,第1,2,4行(以“ - ”开头)应为蓝色,而第3,5行(以“x”开头)应为红色。
这可能吗?你会怎么做?
感谢。
答案 0 :(得分:0)
您可以通过定义新语法来定义颜色。我的语法包含以下内容:
{ scopeName = 'text.todo';
fileTypes = ( 'todo' );
foldingStartMarker = '\{\s*$';
foldingStopMarker = '^\s*\}';
patterns = (
{ name = 'constant';
match = '^\s*(-.*)$';
},
{ name = 'variable.other.constant';
match = '^\s*(x.*)$';
},
);
}
我创建了范围text.todo并将此语法分配给名为“foo.todo”的文件。
第一种模式是“任何数量的空白,然后是破折号,后面是任何东西”。此匹配称为“常量”,因此TextMate将使用在“首选项”>中为此范围定义的颜色。 “字体和颜色”。常量在我的主题中是蓝色的。
第二种模式需要一个“x”而不是破折号,并调用匹配“variable.other.constant”,这在我的主题中恰好是红色的。你应该很容易从这里延伸。如果您需要帮助,只需按下语法定义下方的问号即可。