Risposte:
js-indent-level può essere utilizzato nella modalità javascript predefinita, inclusa di default a partire da emacs 23.2.
(setq js-indent-level 2)
dovrebbe fare quello che stai cercando. Se stai usando una versione precedente di emacs, potresti essere in modalità java. Penso che questa modalità risponda c-basic-offset, tuttavia potrei sbagliarmi.
(defun my-javascript-mode-hook () (setq indent-tabs-mode t tab-width 4 js-indent-level 4)) (add-hook 'javascript-mode-hook 'my-javascript-mode-hook).
js-mode-hook, in questo modo:(defun my-js-mode-hook () (setq indent-tabs-mode t tab-width 4 js-indent-level 4)) (add-hook 'js-mode-hook 'my-js-mode-hook)
M-x hdalla modalità js, ma non sono riuscito a trovare nulla.
Vorrei che qualcuno mi avesse parlato di Custom molto prima! Forse questo aiuterà un altro semplice mortale come me;)
Richiama personalizzato:
M-x customize
Quindi, scegli "Programmazione", quindi "Lingue", quindi seleziona una lingua / modalità da personalizzare. Modifica le opzioni come meglio credi. Al termine, scegli "Salva per sessione corrente" o "Salva per sessioni future".
Se stai usando la modalità js2 (che è più potente IMHO), il comando è:
(setq-default js2-basic-offset 2)
Anche l'uso di EditorConfig potrebbe essere una buona idea. E, naturalmente, Emacs aveva una modalità per esso editorconfig-emacs .
È anche disponibile nel gestore di pacchetti ( M-x package-list-packages) tramite Melpa o Marmalade.
Nessuna di queste soluzioni ha funzionato per me dopo l'aggiornamento a Emacs 26 (avevo già js-indent-levelimpostato a 2 ma la larghezza della mia scheda è tornata a 8), ma ciò che ha funzionato è stato impostare la tab-widthvariabile su 2, che sembra sostituire la vecchia default-tab-widthvariabile.
L'ho trovato M-x customizecercando tab width.