加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

语法高亮 – 如何在Sublime Text中添加功能到语法定义而不进行编

发布时间:2020-12-14 19:31:04 所属栏目:资源 来源:网络整理
导读:例如,我想在我的 Python文档列表中突出显示@param,@type和@return(即epytext声明).我已经弄清楚如何做到这一点,只需编辑Python / Python.tmLanguage;不过,我真的很想把它放在自己的文件中,原因有两个: 我并不总是想应用这个突出显示.仅用于使用epydoc作为其
例如,我想在我的 Python文档列表中突出显示@param,@type和@return(即epytext声明).我已经弄清楚如何做到这一点,只需编辑Python / Python.tmLanguage;不过,我真的很想把它放在自己的文件中,原因有两个:

>我并不总是想应用这个突出显示.仅用于使用epydoc作为其文档工具的项目;在其他项目中,我想强调reStructuredText.
>当Sublime Text更新时,我希望将自己的语法作为覆盖功能添加到包含的功能中. Sublime的作者可能会选择在以后的版本中包含Python的几个功能,我不想手工弄清每次更新修改基本Python语法定义时所做的更改.
>我在版本控制中保持自己的编辑器配置,但我希望这是我自己的原创内容; Sublime附带的语法定义不需要承载副本(可能是专有的,我不知道,似乎没有独立的许可证).

有没有办法把突出显示的规则放在一个单独的文件中,也许只能应用于一个特定的范围?

解决方法

听起来像你想要创建自己的语法文件,继承自Python语法文件(source.python),并在那里进行更改和定制. Sublime Text 2使用了 .tmLanguage format for syntax files,这有点复杂,但幸运的是,大多数工作已经为您完成,只需从source.python继承.

您要做的是设置一个正则表达式模式,以匹配您要突出显示的子字符串,并给该模式一个名称;像punctuation.definition.comment.epydoc这样的东西,遵循Java / JavaDoc.tmL语言中的约定.然后,检查您的配色文件(以.tmTheme结尾),并确保您选择的范围设置 – 或其父母之一,因为ST2应该为这种事情使用适当的范围规则.

要使用您创建的语法文件,请将其粘贴到Packages / User(使得ST2在升级时不会覆盖它),在编辑器中打开一个Python文件,然后从底部的下拉列表中选择新的语法窗口右拐角如果您正确设置了所有内容,则epydoc字符串应该更改为您在配色方案中设置的任何颜色.

祝你好运!当你有一个语法文件可以工作时,发布一个链接,所以其他人可以看到和使用它!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读