我的rails项目中有一个文件Guardfile
,但只是以纯文本显示,因此每次打开时都必须分配ruby语法才能正确显示它。
我无法使用Open all with current extension as...
,因为它没有扩展名,但我想我可以为没有扩展名的文件指定特定语法,因为Gemfile
,Capfile
或{{1}等文件正确显示。
我怎样才能做到这一点?
答案 0 :(得分:11)
菜单:首选项 - >浏览器包
然后打开文件Ruby \ Ruby.tmLanguage
查找此块:
<array>
<string>rb</string>
<string>rbx</string>
<string>rjs</string>
<string>Rakefile</string>
<string>rake</string>
<string>cgi</string>
<string>fcgi</string>
<string>gemspec</string>
<string>irbrc</string>
<string>capfile</string>
<string>Gemfile</string>
</array>
添加新条目:
<string>Guardfile</string>
答案 1 :(得分:3)
安装facelessuser / ApplySyntax。它有一个内置的Guardfiles规则。对于应该设置为特定语法的其他随机文件也是有益的。例如,这是我为随机文件设置的应该具有Bash语法的文件。
"syntaxes": [
{
"name": "ShellScript/Shell-Unix-Generic",
"rules": [
{"file_name": ".*random$"}
]
}
]
name值是Packages中tmLanguage文件的路径。 ShellScript 是tmLanguage文件所在的Packages文件夹的名称。 Shell-Unix-Generic 是tmLanguage文件名。
答案 2 :(得分:1)
对于Sublime 3:
Commmand + Shift + p
:set syntax ruby 添加如下语法:
{
"extensions": [
"Gemfile",
"Gemfile.lock",
"Podfile",
"Podfile.lock",
"Manifest.lock",
"Fastfile_helper",
"Fastfile",
"Appfile"
]
}
真正糟糕的是语法不支持模糊匹配,正则表达式。这意味着您必须列出所有文件。