среда, 29 февраля 2012 г.

Emacs, JavaScript и Folding

При работе с js в emacs не хватало фолдинга (свёртки кусков кода). В php это решалось через outline-minor-mode, которая в js сворачивает далеко не всё. Возможно, если бы не навороченные конструкции extjs-3, то работа outline меня бы устроила. Вспомнил про js2-mode. Для установки в Debian достаточно дать команду apt-get install js2-mode и перезапустить emacs.

Фолдинг сразу навешан на кнопки C-c C-o, что я нашёл вполне удобным (outline у меня висит на F4).

Для автозапуска js2-mode на js-файлы добавил в ~/.emacs:
(setq auto-mode-alist
      (cons '("\\.js$" . js2-mode)
        auto-mode-alist))

Немного не устроил способ отступов по умолчанию в js2-mode. Исправил через js2-mode-customize, что привело к появлению такого кода в ~/.emacs:
(custom-set-variables
 '(js2-auto-indent-p t)
 '(js2-bounce-indent-p t)
 '(js2-enter-indents-newline t)
)