如何在Sublime Text中自定义文件类型到语法关联?

时间:2011-11-11 00:59:50

标签: syntax-highlighting sublimetext

我希望Sublime 2编辑器将* .sbt文件(突出显示语法)视为Scala语言,与* .scala一样,但我找不到在哪里设置它。你碰巧知道吗?

6 个答案:

答案 0 :(得分:1101)

在Sublime Text中(在v2.x和v3.x中都已确认),有一个菜单命令:

  

查看 - >语法 - >打开所有当前扩展名为...

答案 1 :(得分:36)

我找到了答案(通过进一步检查Sublime 2配置文件结构):

我要打开

~/.config/sublime-text-2/Packages/Scala/Scala.tmLanguage

并编辑它以在sbt键之后将fileTypes(我想要作为Scala代码文件打开的文件的扩展名)添加到数组中:

<dict>
  <key>bundleUUID</key>
  <string>452017E8-0065-49EF-AB9D-7849B27D9367</string>
  <key>fileTypes</key>
  <array>
    <string>scala</string>
    <string>sbt</string>
  <array>
  ...
PS:可能有更好的方法,比如放置自定义的正确位置(我自己修改包装),我还是想知道。

答案 2 :(得分:27)

我将自定义更改放在用户包中:

*nix: ~/.config/sublime-text-2/Packages/User/Scala.tmLanguage
*Windows: %APPDATA%\Sublime Text 2\Packages\User\Scala.tmLanguage

这也意味着它采用JSON格式:

{
  "extensions":
  [
    "sbt"
  ]
}

这是

的相同位置
View -> Syntax -> Open all with current extension as ...

菜单项添加它(如果文件不存在则创建文件)。

答案 3 :(得分:13)

有一个名为ApplySyntax的优秀插件(以前称为DetectSyntax),它为文件语法匹配提供了一些其他细节。允许正则表达式等。

答案 4 :(得分:7)

for ST3

$ language =“你希望的语言”

如果存在,

转到〜/ .config / sublime-text-3 / Packages / User / $ language .sublime-settings

否则

创建〜/ .config / sublime-text-3 / Packages / User / $ language .sublime-settings

并设置

{     “扩展”:     [         “ yourextension ”     ] }

这种方式允许您为复合扩展启用语法(例如sql.mustache,js.php等...)

答案 5 :(得分:5)

有一种设置synatx的快速方法: Ctrl + Shift + P,然后在输入框中输入

  

ss +(您想要设置的类型)

例如:ss html + Enter

ss 表示“设置synatx”

它比检查菜单的复选框

要快得多