Emacs эквивалент Vim-метода foldmethod = отступ
Вопрос
Вопрос: Есть ли у Emacs канонический эквивалент Vim Сгибание с помощью Foldmethod=отступ?
Меня особенно интересует что-то, что может работать вместе с любым основным режимом Emacs и любым файлом.Поиски в Emacs не дали окончательного ответа.
Решение
Похоже, что это возможно, хотя я сам не пользуюсь складыванием, так что я этого не пробовал.Неудивительно, что специалисты по Python без ума от этой функции.Смотрите следующее:
Другие советы
может быть, выборочный показ?У меня есть следующая функция привязанный к [f2]
;; http://emacs.wordpress.com/2007/01/16/quick-and-dirty-code-folding/
(defun jao-toggle-selective-display (column)
(interactive "P")
(set-selective-display
(if selective-display nil (or column 1))))
Тем не менее, это довольно просто, и вы бы действительно хотели, чтобы он был чувствителен к Pythony-отступам....
Обновить:Я смотрел на это прошлой ночью и понял, что устал от того, что C-u входит в колонку, в которой я был (плюс 1)....поэтому я закодировал это:
(defun toggle-selective-display-column ()
"set selective display fold everything greater than the current column, or toggle off if active"
(interactive)
(set-selective-display
(if selective-display nil (or (+ (current-column) 1) 1))))
Дальнейшая разработка должна объединить эти две функции.
Смотрите также: Как добиться эффектов сворачивания кода в emacs
Я перепробовал все предложения Джо Касадонте и Майкла Паулукониса, но ни одно из них не работает так хорошо, как предложение vim.Таким образом, похоже, что более точным ответом на вопрос OP на данный момент может быть "НЕТ".