Я использую js2-режим для редактирования Javascript в Emacs, но я не могу заставить его перестать использовать вкладки вместо пробелов для отступов. Другие мои режимы работают нормально, только проблемы с js2.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


У тебя есть
(setq-default indent-tabs-mode nil)
в вашем .emacs? Когда я это делаю, он отлично работает в emacs 23.0.60.1. js2-mode использует стандартную функцию emacs indent-to, которая учитывает режим indent-tabs-mode, для создания отступов.
Добавьте это в свой файл .emacs после загрузки режима js2:
(setq js2-mode-hook
'(lambda () (progn
(set-variable 'indent-tabs-mode nil))))
В моей копии GNU Emacs 24.2.1 установка:
(setq-default indent-tabs-mode nil)
in .emacs недостаточно для режима javascript, предположительно потому, что этот параметр каким-то образом переопределяется в контексте каждого буфера. Достаточно следующего изменения:
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(indent-tabs-mode nil))