Emacs中与Vim的foldmethod = indent相当的功能是什么?

12

问题:Emacs是否有与Vim的折叠方法=缩进相对应的规范等效物?

我特别关注能够与任何Emacs主模式和任何文件一起使用的东西。Emacs搜索没有找到明确的答案。

3个回答

6

3
也许是selective-display?我将以下功能绑定到[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))))

虽然这很基础,但你希望它对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中实现代码折叠效果


2

我尝试了Joe Casadonte和Michael Paulukonis提出的所有建议,但没有一个像vim那样好用。因此,目前来看,对于原帖的问题,答案可能是“不行”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接