Sublimetext2 在Sublime文本中设置我自己的语法
有时我会用精彩的文字来写提醒。 对于此任务,我始终使用相同的布局,如下所示:Sublimetext2 在Sublime文本中设置我自己的语法,sublimetext2,syntax-highlighting,sublimetext,sublime-text-plugin,Sublimetext2,Syntax Highlighting,Sublimetext,Sublime Text Plugin,有时我会用精彩的文字来写提醒。 对于此任务,我始终使用相同的布局,如下所示: >Title >>Subtitle >>>Comment > Title >> ... 其中,表示制表符 因此,我想知道是否有可能为这类文件创建自己的语法高亮显示,其中一种颜色用于标题,另一种颜色用于副标题,常规颜色用于注释。语法高亮显示是使用.tmLanguage执行的。它们是以苹果基于XML的PLIST格式格式化的,不过多亏了优秀的Sublime插件,它们可
>Title
>>Subtitle
>>>Comment
> Title
>> ...
其中,
表示制表符
因此,我想知道是否有可能为这类文件创建自己的语法高亮显示,其中一种颜色用于标题,另一种颜色用于副标题,常规颜色用于注释。语法高亮显示是使用
.tmLanguage
执行的。它们是以苹果基于XML的PLIST格式格式化的,不过多亏了优秀的Sublime插件,它们可以用JSON或YAML编写,我之所以选择它,是因为它的紧凑性,以及我使用我的主题*获得了甜美的语法高亮显示
因此,您的语法非常简单。您将有三条规则:
在这里,在亚马尔:
#[PackageDev]target_格式:plist,ext:tmLanguage
---
名称:提醒
评论:写给http://stackoverflow.com/q/25689365/1426065 作者@MattDMo
scopeName:text.members
文件类型:[待办事项]
uuid:6B548E74-5E01-497A-B030-9D31131B7A70
模式:
-名称:text.title.members
匹配:^\t(?!\t+)(*)
-名称:text.subtitle.members
匹配:^\t\t(?!\t+)(*)
-名称:text.comment.members
匹配:^\t\t\t(.*)
一切都很简单。名称显示在Sublime的右下角,由我编写,其基本作用域名称为文本。提醒
,打开扩展名为的文件。todo
将自动应用此语法,UUID只是一个唯一标识符。如上所述,有三种模式。要记住一件事:只有当行以文本制表符开头,而不是以空格字符作为制表符插入时,才会匹配这意味着您需要选择
查看->缩进
并确保未选中使用空格缩进
。为了更好地测量,还可以选择查看->缩进->将缩进转换为选项卡。这些设置可以仅应用于“提醒”视图,我将在后面介绍
因此,我们有我们的YAML,如果您没有PackageDev
,它是无用的。但是,如果将其转换为PLIST,效果会更好:
评论
写给http://stackoverflow.com/q/25689365/1426065 作者@MattDMo
文件类型
. 将文件另存为包/用户/提醒。升华设置
就这样!您可能需要重新启动Sublime,以启动更改,但随后您已全部就绪。总而言之,创建新语法定义的步骤如下:
得到,你的生活会轻松得多
使用正则表达式语言编写JSON或YAML格式的高亮正则表达式,并使用诸如(使用Ruby 1.9.2选项)之类的工具进行在线测试
编译为PLIST/XML
修改新范围的颜色方案
为特定于语法的设置(如选项卡)创建一个.sublime settings
文件
利润李>
*如果您感兴趣,请链接到我的用户配置文件中…是的,这是可能的。这非常有帮助——如果您能看看我最近问的一个类似问题,我将不胜感激。@MattDMo那么这样做只会给特定文件添加一些颜色?OP提到使用制表符,有没有办法设置它,使句子以字符开头,如#或//,它会改变颜色?@vytfla是的,你所要做的就是调整正则表达式以匹配
或/
或任何你想要的东西。@MattDMo好的,谢谢。所以我相信我添加的所有内容都是正确的。我刚才做的一切怎么知道我想将它与当前文件关联?我试着在我的文件中添加标签,但它不起作用。另外,我不熟悉正则表达式,我如何为我想要的字符定制它?