我将 CEDET(最新的 CVS)用于几个中等规模的项目(每个项目几百 kLOC,主要是 C,但也有一些 C++),有时会遇到长时间的停顿,系统在几秒钟内完全没有响应。更罕见的是,它完全失控,我必须混搭C-g
并尝试移动光标或切换到不同的缓冲区以重新获得控制权。
我使用 GNU Global 为我使用的项目创建标签,但这有时仍然很慢,尤其是对于semantic-symref-symbol
. 和一些似乎需要解析大量头文件和源文件的跳转。在某些情况下,即使立即找到semantic-ia-fast-jump
消息(在同一个项目中),消息也会出错,尽管可能在一个过时的位置;这可能是一个临时错误,通常是可靠的。semantic-ia--fast-jump-helper: Tag SomeFunction has no buffer information
gtags-find-tag
semantic-ia-fast-jump
我将不胜感激有关如何
- 在不丢失所有语义分析的情况下限制 CEDET。
- 找出导致 CEDET 失控的原因,以便我可以修复我的项目定义或提交错误报告。
- 确定某些语义分析失败的原因。
- 获取语义以缓存更多信息以使其更具响应性,我有很多我想使用的内存。
- 为不同位置的多个项目管理 GNU Global(创建并保持最新),包括系统目录。
- 管理我配置的项目之间的依赖关系
ede-cpp-root-project
。 - 管理具有多个构建配置的项目,每个配置都有自己的“config.h”和构建目录。
文章http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html中有一些提示,我正在寻找该文章之外的任何内容。