web-dev-qa-db-fra.com

Comment personnaliser le type de fichier avec les associations de syntaxe dans Sublime Text?

Je voudrais que l'éditeur Sublime 2 traite les fichiers * .sbt (pour mettre en évidence la syntaxe) en tant que langage Scala, identique à * .scala, mais je ne trouve pas où le configurer. Est-ce que vous savez?

487
Ivan

Dans Sublime Text (confirmé dans les versions v2.x et v3.x), il existe une commande de menu:

Affichage -> Syntaxe -> Tout ouvrir avec l'extension actuelle en tant que ...

1116
TedG

J'ai trouvé la réponse (en examinant plus en profondeur la structure des fichiers de configuration de Sublime 2):

Je devais ouvrir

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

Et éditez-le pour ajouter sbt (l'extension des fichiers que je veux ouvrir comme fichiers de code Scala) au tableau après la touche fileTypes:

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

PS: Peut-il y avoir une meilleure façon, quelque chose comme un bon endroit pour mettre mes personnalisations (au lieu de modifier les paquets eux-mêmes), j'aimerais toujours savoir.

37
Ivan

Je mets mes modifications personnalisées dans le package utilisateur:

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

Ce qui signifie également que c'est au format JSON:

{
  "extensions":
  [
    "sbt"
  ]
}

C'est le même endroit le

View -> Syntax -> Open all with current extension as ...

l'élément de menu l'ajoute (créant le fichier s'il n'existe pas).

27
squeegee

Il existe un excellent plugin appelé ApplySyntax (anciennement DetectSyntax) qui fournit certaines autres subtilités pour la correspondance de syntaxe de fichier. permet les expressions rationnelles, etc.

13
Kaushik Gopal

pour ST3

$ language = "langue souhaitée"

si existe,

allez dans ~/.config/sublime-text-3/Packages/User/ $ language . sublime-settings

else

créer ~/.config/sublime-text-3/Packages/User/ $ language . sublime-settings

et mettre

{"extensions": [" yourextension "]}

Cela vous permet d'activer la syntaxe pour les extensions composites (par exemple, sql.mustache, js.php, etc.).

7
xpeiro

Il existe une méthode rapide pour définir la synatx: Ctrl + Shift + P, puis tapez dans la zone de saisie.

ss + (quel type vous souhaitez définir

par exemple: ss html + Enter

et ss signifie "set synatx"

c'est vraiment plus rapide que de cocher la case du menu

5
Hello Wor1d