Установите синтаксис по умолчанию для разных типов файлов в Sublime Text 2

Как установить тип файла по умолчанию для определенного расширения файла в Sublime Text 2? В частности, я хочу, чтобы файлы *.cfg по умолчанию имели подсветку синтаксиса Ini, но я не могу понять, как создать эту настраиваемую настройку.

Ответ 1

В текущей версии Sublime Text 2 (Build: 2139) вы можете установить синтаксис для всех файлов определенного расширения файла с помощью опции в строке меню. Откройте файл с расширением, для которого вы хотите установить значение по умолчанию, и перемещайтесь по следующим меню: View -> Syntax -> Open all with current extension as... ->[your syntax choice].

Обновлено 2012-06-28: Недавние сборки Sublime Text 2 (по крайней мере, начиная с Build 2181) позволили установить синтаксис, щелкнув текущий тип синтаксиса в нижнем правом углу окно. Это откроет меню выбора синтаксиса с опцией Open all with current extension as... в верхней части меню.

Обновлено 2016-04-19:. На данный момент это также работает для Sublime Text 3.

Ответ 2

Перейдите в Packages/User, создайте (или отредактируйте) файл .sublime-settings, названный в честь синтаксиса, где вы хотите добавить расширения, Ini.sublime-settings в вашем случае, а затем напишите там что-то вроде этого:

{
    "extensions":["cfg"]
}

И затем перезапустите Sublime Text

Ответ 3

В ST2 есть пакет, который вы можете установить под названием FileType по умолчанию, который делает именно это. Дополнительная информация о https://github.com/spadgos/sublime-DefaultFileType.

Ответ 4

Вы можете включить подсветку синтаксиса на основе содержимого файла.

Например, мои Make файлы независимо от их расширения, первая строка выглядит следующим образом:

#-*-Makefile-*- vim:syntax=make

Это типичная практика для других редакторов, таких как vim.

Однако для этого вам необходимо изменить Makefile.tmLanguage.

  • Найдите файл (для Sublime Text 3 в Ubuntu) по адресу:

    /opt/sublime_text/Packages/Makefile.sublime-package
    

Обратите внимание, что это действительно zip файл. Скопируйте его, переименуйте в .zip в конец и извлеките из него файл Makefile.tmLanguage.

  1. Отредактируйте новый Makefile.tmLanguage, добавив ключ и строку "firstLineMatch" после раздела "fileTypes". В приведенном ниже примере последние две строки являются новыми (должны быть добавлены вами). Раздел <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>
    
  2. Поместите измененный Makefile.tmLanguage в каталог настроек пользователя:

    ~/.config/sublime-text-3/Packages/User/Makefile.tmLanguage
    

Все файлы, соответствующие правилу первой строки, должны включать подсветку синтаксиса при открытии.