我想使用cedet包(emacs)中的语义代码折叠。我安装了1.1版本,并在.emacs中添加了以下几行:
(load-file "~/software/cedet-1.1/common/cedet.el")
(require 'semantic-tag-folding)
(defun c-folding-hook ()
(global-semantic-tag-folding-mode 1)
(local-set-key (kbd "C-c <left>") 'semantic-tag-folding-fold-block)
(local-set-key (kbd "C-c <right>") 'semantic-tag-folding-show-block)
)
(add-hook 'c-mode-common-hook 'c-folding-hook)
好的,当我现在加载一个C++文件时,使用键绑定(bind)或直接运行相应的命令时什么也没有发生。怎么了我忘记了什么吗?
最佳答案
首先,您不需要在(global-semantic-tag-folding-mode 1)
中包含defun
-最好一次运行此命令...
但是我认为,主要问题是您尚未启用任何语义功能(请参阅this section in my article)-至少需要在加载CEDET之后调用(semantic-load-enable-minimum-features)
。
P.S.您的代码为我工作(我在设置中使用semantic-load-enable-excessive-code-helpers
)
关于c++ - 用emacs/cedet折叠C++代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10223645/