Я пытаюсь переключиться на Emacs в качестве основного редактора исходного кода. Я очень скучаю по одной вещи (обычно в гораздо более простых редакторах) - направляющие отступов (ненавязчивые вертикальные линии, показывающие уровень отступов). Может ли Emacs отображать их?
Как отображать руководства по отступлению в Emacs?
Ответ 1
Я сделал для этой цели функцию highlight-indentation
, код находится в github.
При вызове highlight-indentation
без аргумента префикса текущий уровень отступов наивно догадается из основного режима (python, ruby и языки на основе cc-mode). Работает только для пространственных углублений. Настройте highlight-indent-face
, чтобы изменить внешний вид строк отступа.
Примеры (ruby, python):
Я также часто использую этот фрагмент, который сбрасывает весь код на уровне отступа больше текущей строки. Это отличный способ получить краткий обзор контура.
(defun aj-toggle-fold ()
"Toggle fold all lines larger than indentation on current line"
(interactive)
(let ((col 1))
(save-excursion
(back-to-indentation)
(setq col (+ 1 (current-column)))
(set-selective-display
(if selective-display nil (or col 1))))))
(global-set-key [(M C i)] 'aj-toggle-fold)
Ответ 2
Насколько мне известно, до сих пор не было внедрено руководство по отступлению для Emacs. Самое близкое, что вы можете получить, это визуализация TAB с пакетом whitespace, см. Показать вкладки с другим символом (Emacs).
Ответ 3
Предположим, вы можете согнуть ColumnMarker в соответствии с вашими потребностями, но выделите столбец не давайте вам один пиксель.
I отступ с 8 пробелами, поэтому я никогда не думал об этом, P
Ответ 4
Теперь существует режим, называемый направлением подсветки, который, кажется, работает довольно хорошо.