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

☆樱花仙子☆ 提交于 2020-02-27 00:46:48

我希望Sublime 2编辑器将* .sbt文件(以突出显示语法)视为Scala语言,与* .scala相同,但是我找不到在何处进行设置。 你碰巧知道吗?


#1楼

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

*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 ...

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


#2楼

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


#3楼

对于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等)


#4楼

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

ss +(要设置的类型)

例如:ss html + Enter

ss表示“设置语法”

它确实比检查菜单中的复选框更快。


#5楼

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

我要开

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

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

<dict>
  <key>bundleUUID</key>
  <string>452017E8-0065-49EF-AB9D-7849B27D9367</string>
  <key>fileTypes</key>
  <array>
    <string>scala</string>
    <string>sbt</string>
  <array>
  ...

PS:也许还有更好的方法,就像我放置自定义项(插入修改包本身)的正确位置一样,我仍然想知道。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!