问题:Emacs是否有与Vim的折叠方法=缩进相对应的规范等效物?
我特别关注能够与任何Emacs主模式和任何文件一起使用的东西。Emacs搜索没有找到明确的答案。
;; 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))))
虽然这很基础,但你希望它对Python缩进敏感。
更新:昨晚我盯着这个问题看,意识到我已经厌倦了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中实现代码折叠效果
我尝试了Joe Casadonte和Michael Paulukonis提出的所有建议,但没有一个像vim那样好用。因此,目前来看,对于原帖的问题,答案可能是“不行”。