Emacs相当于Vim的foldmethod = indent

时间:2008-12-20 02:19:57

标签: vim emacs editor folding outline

问题:Emacs是否具有规范等效的Vim Folding with Foldmethod=indent

我对能够与任何Emacs主模式和任何文件一起工作的东西特别感兴趣。 Emacs搜索没有找到明确的答案。

3 个答案:

答案 0 :(得分:6)

似乎可以,虽然我自己不使用折叠,所以我没试过。毫不奇怪,Python人员都是关于这个功能的。请参阅以下内容:

答案 1 :(得分:3)

也许是选择性展示?我将following function绑定到[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-indentation敏感的....

更新:我昨晚盯着这个,并意识到我已经厌倦了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))))

进一步阐述应该结合这两个功能。

另请参阅:How to achieve code folding effects in emacs

答案 2 :(得分:2)

我尝试了Joe Casadonte和Michael Paulukonis的所有建议,但没有一个像vim那样好。因此,对OP问题的更准确答案似乎目前可能不是。