如何配置Sublime Text 2以便将名为Makefile.local
的文件识别为Makefile,这样我打开此文件时就不必手动执行“Set Syntax:Makefile”了?
答案 0 :(得分:6)
将标记<string>Makefile.local</string>
添加到 <array>
文件中的Makefile.tmLanguage
部分。
<dict>
<key>fileTypes</key>
<array>
<string>Makefile.local</string>
<string>GNUmakefile</string>
<string>makefile</string>
<string>Makefile</string>
<string>OCamlMakefile</string>
<string>make</string>
</array>
<key>name</key>
...
要查找文件,请点击Preferences | Browse Packages...
菜单。
该文件可用于更改更多Syntax Definition选项。
答案 1 :(得分:2)
您可以根据文件内容启用语法高亮显示。
例如,我有许多名为Makefile.msp430
的类似的makefile,第一行如下:
#-*-Makefile-*- vim:syntax=make
这是其他编辑器的典型做法,例如vim。
但是,为此,您需要修改
Makefile.tmLanguage
个文件。
在以下位置找到文件(对于Ubuntu中的Sublime Text 3):
/opt/sublime_text/Packages/Makefile.sublime-package
注意,这确实是一个zip文件。复制它,最后用.zip重命名,然后从中提取Makefile.tmLanguage文件。
通过在“fileTypes”部分之后添加“firstLineMatch”键和字符串来编辑新的Makefile.tmLanguage
。在下面的示例中,最后两行是新的(应该由您添加)。 <string>
部分包含正则表达式,它将为与第一行匹配的文件启用语法突出显示。此表达式可识别两种模式:“#-*-Makefile-*-
”和“vim:syntax=make
”,但您可以对其进行改进。
<key>fileTypes</key>
<array>
<string>GNUmakefile</string>
<string>makefile</string>
<string>Makefile</string>
<string>OCamlMakefile</string>
<string>make</string>
</array>
<key>firstLineMatch</key>
<string>^#\s*-\*-Makefile-\*-|^#.*\s*vim:syntax=make</string>
将新Makefile.tmLanguage
放在用户设置目录中:
~/.config/sublime-text-3/Packages/User/Makefile.tmLanguage
从现在开始,与第一行规则匹配的文件应打开语法高亮显示。