Як налаштувати тип файлу для асоціацій синтаксису в Sublime Text?


517

Я хотів би, щоб редактор Sublime 2 розглядав файли * .sbt (щоб виділити синтаксис) як мову Scala, як і * .scala, але я не можу знайти, де це налаштувати. Ви випадково знаєте?



Відповіді:


1166

У Sublime Text (підтверджено як v2.x та v3.x) є команда меню:

Перегляд -> Синтаксис -> Відкрити все з поточним розширенням як ...


18
чи маєте ви уявлення, як це відображається у файлах конфігурації піднесеного тексту? Я намагаюся досягти цього за допомогою автоматизованого рецепта кухаря, і я не можу зрозуміти, що встановити в налаштуваннях JSON.
брад

24
Працює однаково і в Sublime Text 3. Дякую @TedG
fusion27

11
@brad Відкрийте специфічні параметри синтаксису (Scala.sublime-settings у папці Користувачі) та додайте до них: {"extensions": ["scala", "sbt"]}
omittones

5
Також не працює, як очікувалося, для файлових файлів з подвійним розширенням. Редагування *.sublime-settings дійсно працює.
ММ.

9
Як встановити синтаксис за замовчуванням для відкритих файлів, які не мають розширення?
кавалькад

38

Я знайшов відповідь (детальніше вивчивши структуру файлів конфігурації Sublime 2):

Я мав відкрити

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

І відредагуйте його, щоб додати sbt(розширення файлів, які я хочу відкрити як файли коду Scala) до масиву після fileTypesключа:

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

PS: Чи може бути кращий спосіб, я хотів би знати, як правильне місце для розміщення моїх налаштувань (замість того, щоб змінювати самі пакунки).


1
це зараз у/Library/Application Support/Sublime Text 2/Packages/Scala/Scala.tmLanguage
Гійом Масме

2
Я думаю, що це бібліотека користувачів, а не системна бібліотека:~/Library/Application Support/Sublime Text 2/Packages/Scala/Scala.tmLanguage
seren

4
@Eric, вам слід прочитати більш уважно .. Він відкриває всі файли з цим конкретним розширенням із зазначеним синтаксисом. Здебільшого це саме те, що ти хочеш.
Вінсент Кетелаарс

28

Я вкладаю свої індивідуальні зміни в Користувацький пакет:

*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
Зауважте, що це єдиний метод (принаймні в ST2), який дозволяє встановити специфічний синтаксис для файлів з подвійним розширенням (наприклад, whatever.twig.html), оскільки метод меню приймає лише останній!
ММ.

1
Я знайшов це працює з Sublime Text 3. Я використав View -> Syntax -> Open all with current extension as ...для створення файлу мови Markdown.sublime-settingsв ~/Library/Application Support/Sublime Text 3/Packages/User/, а потім редагувати цей файл , щоб додати додаткові розширення файлів.
Джейк Рейсон

13

Є чудовий плагін під назвою ApplySyntax (раніше DetectSyntax), який надає певні інші смаки для відповідності файлу-синтаксису. дозволяє виражати формули і т.д.


9

Існує швидкий спосіб встановити синтаксис: Ctrl+ Shift+ P, а потім введіть у поле введення

ss + (який тип ви хочете встановити)

наприклад: ss html +Enter

а ss означає "встановити синтаксис"

це дійсно швидше, ніж перевірити прапорець у меню.


7

для 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 тощо).


2
Отже, щоб пов’язати файли .js.php з JavaScript, я повинен створити файл, який називається Javascript.sublime-settings, заповнений { "extensions": [ "js.php" ] }?
Остін Шмідт

Так, якщо файл не існує, якщо він вже існує, просто додайте розширення, яке ви хочете, до масиву "розширення".
xpeiro
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.