web-dev-qa-db-fra.com

Comment changer la largeur d'indentation en mode javascript emacs

J'aimerais utiliser 2 espaces pour les retraits au lieu de 4. Je peux changer le comportement par défaut du mode C en utilisant: 

(setq c-basic-offset 2)

Comment puis-je changer cela en mode javascript?

106
mksuth

js-indent-level peut être utilisé dans le mode javascript par défaut, qui est inclus par défaut à partir de emacs 23.2. 

(setq js-indent-level 2)

devrait faire ce que vous cherchez. Si vous utilisez une version plus ancienne d’emacs, il se peut que vous soyez en mode Java. Je pense que ce mode répond à c-basic-offset, mais je peux me tromper. 

176
Willi Ballenthin

J'espère que quelqu'un m'a parlé de la coutume beaucoup plus tôt! Peut-être que cela aidera un autre simple mortel comme moi;)

Invoquer Custom:

M-x customize

Ensuite, choisissez "Programmation", puis "Langues", puis sélectionnez une langue/mode à personnaliser. Modifiez les options comme bon vous semble. Une fois terminé, choisissez "Enregistrer pour la session en cours" ou "Enregistrer pour les sessions futures".

69
wprl

Si vous utilisez le mode js2 (qui est un IMHO plus puissant), la commande est la suivante:

(setq-default js2-basic-offset 2)

La source.

14
metakermit

Vous voudrez peut-être aussi configurer emacs pour qu'il utilise des espaces à la place des tabulations

(setq-default indent-tabs-mode nil)
11
Tyler

Si vous souhaitez le modifier fichier par fichier, placez-le en haut de votre fichier:

// -*- mode: js; js-indent-level: 2; -*-
2
MatthewD

Dans mon fichier javascript.el (/ usr/share/emacs/site-LISP) j'ai trouvé 

javascript-indent-level 4

Donc, si vous utilisez le même mode LISP, vous pouvez le changer en exécutant 

(setq javascript-indent-level 2)
2
Helge

Vous pouvez aussi utiliser

M-x customize-variable

et le type 

js-indent-level

(js- [TAB] affiche une liste d’options). Puis changez le Js Indent Level comme vous le souhaitez et cliquez sur [State:] et enregistrez.

2
kwarnke

Utiliser EditorConfig pourrait aussi être une bonne idée. Et bien sûr, Emacs avait un mode pour cela editorconfig-emacs .

Il est également disponible dans le gestionnaire de paquets (M-x package-list-packages) via Melpa ou Marmalade.

1
hs0ucy