首页 文章

在Sublime Text 2中将默认语法设置为不同的文件类型

提问于
浏览
709

如何在Sublime Text 2中为某个文件扩展名设置默认文件类型?具体来说,我希望* .cfg文件默认具有Ini语法高亮,但我似乎无法弄清楚如何创建此自定义设置 .

4 回答

  • 4

    在当前版本的Sublime Text 2(Build:2139)中,您可以使用菜单栏中的选项设置特定文件扩展名的所有文件的语法 . 打开包含要为其设置默认值的扩展名的文件,然后浏览以下菜单: View -> Syntax -> Open all with current extension as... ->[your syntax choice] .

    Updated 2012-06-28: 最近构建的Sublime Text 2(至少从Build 2181开始)允许通过单击窗口右下角的当前语法类型来设置语法 . 这将打开语法选择菜单,并在菜单顶部选择 Open all with current extension as... .

    Updated 2016-04-19: 截至目前,这也适用于Sublime Text 3 .

  • 1554

    转到 Packages/User ,创建(或编辑)一个 .sublime-settings 文件,该文件以您要添加扩展名的语法命名, Ini.sublime-settings 在您的情况下,然后写下这样的内容:

    {
        "extensions":["cfg"]
    }
    

    然后重新启动Sublime Text

  • 21

    在ST2中,您可以安装一个名为Default FileType的软件包 . 有关https://github.com/spadgos/sublime-DefaultFileType的更多信息 .

  • 147

    您可以根据文件内容启用语法突出显示 .

    例如,我的Makefiles无论其扩展名如何,第一行如下:

    #-*-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-*- " and " 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
    

    与第一行规则匹配的所有文件应在打开时打开语法高亮显示 .

相关问题