我正在查看启用折纸时负责spacemacs代码折叠的代码。我只看到hs-mode
已启用,并且键绑定到折纸的折叠功能。
当我把它放在我的emacs(而不是spacemacs)配置中时,折叠并不像在spacemacs中那样工作。以下是我从.emacs.d/layers/+spacemacs/spacemacs-editing/packages.el
找到的内容。
(use-package origami
:defer t
:init
(progn
(origami-global-mode 1)
(define-key evil-normal-state-map "za" 'origami-forward-toggle-node)
(define-key evil-normal-state-map "zc" 'origami-close-node)
(define-key evil-normal-state-map "zC" 'origami-close-node-recursively)
...)
...)
将其添加到我的emacs配置时:
1)当性别在第1行时,折叠不起作用
2)折叠工作与defun但不使用包或其他功能
我想找到spacemacs用于定义折叠的特定解析器,以便我可以在自己的emacs中复制它。但我不明白折叠是如何运作的。
例如,让我感到困惑的是,当我检查za
与describe-key
的绑定时,我发现密钥绑定到evil-toggle-fold
而不是{{} {1}}这就是我所期望的。
答案 0 :(得分:0)
由于za
显示evil-toggle-fold
绑定到hs-minor-mode
,我猜这个图层实际上没有启用,折叠行为只是普通hs-minor-mode
。您可以尝试启用C-c @ C-c
并使用{{1}}切换性别。