例如,我想在我的Python文档字符串中突出显示@param
,@type
和@return
(即epytext声明)。我已经想出了如何通过编辑Python/Python.tmLanguage
来完成这项工作;但是,由于以下几个原因,我真的想把它放在自己的文件中:
有没有办法将突出显示规则放入单独的文件中,或许只能应用于特定范围?
答案 0 :(得分:7)
听起来我想要创建自己的语法文件,继承Python语法文件(source.python
),并在那里进行更改和自定义。 Sublime Text 2使用.tmLanguage format for syntax files,这有点复杂,但幸运的是,大部分工作已经为您完成,只需继承source.python
。
您要做的是设置正则表达式模式以匹配您要突出显示的子字符串,并为该模式指定名称;像punctuation.definition.comment.epydoc
之类的东西,遵循Java/JavaDoc.tmLanguage
中设定的约定。然后,检查您的配色方案文件(以.tmTheme
结尾)并确保您选择的范围或其父级之一的设置,因为ST2应该使用适当的范围规则的事情。
要使用您创建的语法文件,请将其粘贴在Packages/User
中(以便ST2在升级时不会覆盖它),在编辑器中打开Python文件,然后从中选择新语法窗口右下角的下拉列表。如果您已正确设置所有内容,则epydoc字符串应更改为您在颜色方案中设置的任何颜色。