LINUX.ORG.RU

Не работает smart-tabs-mode в Emacs-24.5.1

 ,


0

2

После обновления Emacs'а перестали ставится отступы табуляцией в Ruby. Конфиг такой

(require 'smart-tabs-mode)
(smart-tabs-insinuate 'c 'ruby 'java)
(setq-default indent-tabs-mode nil)
(setq-default tab-width 4)
$ emacs --version | head -n 1
GNU Emacs 24.5.1
$ ls .emacs.d/elpa/ | grep smart-tabs-mode
smart-tabs-mode-20140331.1629

В чём дело? Как это исправить?

★★★★★

smart-tabs-mode

Похоже в smart-tabs-mode что-то поломалось в ruby-mode. Раньше с конфигом выше работало, теперь надо использовать такой конфиг:

(setq-default indent-tabs-mode nil)
(setq-default tab-width 4)
(require 'smart-tabs-mode)
(smart-tabs-insinuate 'ruby 'c 'java)
(smart-tabs-advice ruby-indent-line ruby-indent-level)
(setq-default ruby-indent-tabs-mode t)
(setq ruby-indent-level tab-width)

Camel ★★★★★ ()
7 августа 2017 г.

smart-tabs-mode в Emacs-25.2

Дальше хуже. Всё ломается всё. Сейчас работает такая шняга

(setq-default indent-tabs-mode nil)
(setq-default tab-width 4)

(require 'smart-tabs-mode)
(smart-tabs-insinuate 'c 'c++ 'java 'javascript 'cperl 'python 'ruby 'nxml)
(if (require 'ruby-mode nil 'no-error)
    (progn
      (setq-default ruby-indent-level tab-width)
      (smart-tabs-advice ruby-indent-line ruby-indent-level)
      (setq ruby-indent-tabs-mode t)
      (setq ruby-use-smie nil)

      (add-hook 'ruby-mode-hook
                (lambda ()
                  (setq-local indent-line-function 'ruby-indent-line)))))

Camel ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.