У меня есть простой конфиг для web-mode
(require 'web-mode)
; с какими файлами ассоциировать web-mode
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.html\\'" . web-mode))
; настройка отступов
(setq web-mode-markup-indent-offset 2)
(setq web-mode-css-indent-offset 2)
(setq web-mode-code-indent-offset 2)
; сниппеты и автозакрытие парных скобок
(setq web-mode-extra-snippets '(("erb" . (("name" . ("beg" . "end"))))
))
(setq web-mode-extra-auto-pairs '(("erb" . (("open" "close")))
))
; подсвечивать текущий элемент
(setq web-mode-enable-current-element-highlight t)
В принципе, меня устраивает как он работает. НО! когда пишу, например, так:
<div style=""></div>
то emacs не врубается, что надо переходить в css mode и у меня нет autocomplete. Есть еще одна шткука (multi-web-mode), там это работает, но если я использую вместе multi-web-mode и web-mode, то отпадают закрювающися теги в web-mode. Что делать?