emacs24语义补全
我正在尝试使用Emacs24和它附带的cedet版本实现语义补全。完成操作适用于我在自己的源文件中定义的类,但完成操作不适用于标准库或STL,这是我的emacs配置:emacs24语义补全,emacs,cedet,Emacs,Cedet,我正在尝试使用Emacs24和它附带的cedet版本实现语义补全。完成操作适用于我在自己的源文件中定义的类,但完成操作不适用于标准库或STL,这是我的emacs配置: (require 'cedet) (require 'semantic) (require 'semantic/ia) (require 'semantic/bovine/gcc) (semantic-add-system-include "/usr/include/c++/4.6.3" 'c++-mode) (setq sema
(require 'cedet)
(require 'semantic)
(require 'semantic/ia)
(require 'semantic/bovine/gcc)
(semantic-add-system-include "/usr/include/c++/4.6.3" 'c++-mode)
(setq semantic-default-submodes
'(global-semantic-idle-scheduler-mode
global-semanticdb-minor-mode
global-semantic-idle-summary-mode
global-semantic-idle-completions-mode
global-semantic-highlight-func-mode
global-semantic-decoration-mode
global-semantic-mru-bookmark-mode))
(setq semanticdb-default-save-directory "~/.semanticdb/"
semantic-complete-inline-analyzer-idle-displayor-class 'semantic-displayor-ghost)
(semantic-mode t)
在我的/.SytTyDB目录中,我只看到“!!!!!!!C++!4.6!x86y64-LIUX-GNU.BITS!语义.Cache”,甚至不使用CONFIG.
例如,当我尝试对std::list进行M-x语义分析时,我得到一个错误:“找不到std::list的类型”
有没有关于如何调试或修复的建议?我今天在新的SSD上安装了一个全新的Ubuntu 13.04, 下面是我配置CEDET的步骤(我检查了它是否为
std::list
提供了补全)
基本设置
.emacs
(语义模式1)#包括
语义模式
$
,M-x语义ia显示变体
semanticdb默认保存目录
=“~/.emacs.d/semanticdb”,
把所有的东西都拿走
然后,当访问源文件时,调用
semantic force refresh
可能是系统配置的问题。我在CentOS上运行,我尝试了上面的步骤,但得到了相同的错误。在第4步之后,我得到“找不到'std::list lst'的类型”。您是否完成了故障排除步骤?另外,确保您已经启动了所构建的emacs<代码>f1 C-a将显示版本。它必须是24.3.4
int main() {
std::list lst;
lst.$
return 0;
}