在命令行emacs中没有使用cedet 1.1自动完成

时间:2013-09-08 02:05:37

标签: c++ emacs cedet

我正在尝试在emacs 23中使用cedet 1.1。据我所知,我已经安装了它,当我加载emacs时它会加载cedet,但我正在使用带有-nw选项的emacs。当我输入。或 - >我没有得到任何代码完成。 (c ++文件,在std :: vector对象上)。例如,当我输入:

vec_map.

vec_map->

什么都不做,其中vec_map是std :: vector的实例。

我假设可以在emacs的命令行版本中完成代码。

另外,我的.emacs文件是(它加载得很好):

(load-file "~/cedet-1.1/common/cedet.el")
(global-ede-mode 1)                      ; Enable the Project management system
(semantic-load-enable-code-helpers)      ; Enable prototype help and smart completion
(global-srecode-minor-mode 1)            ; Enable template insertion menu

1 个答案:

答案 0 :(得分:2)

默认情况下,CEDET中的自动完成应该通过semantic-ia-complete-symbol-menusemantic-ia-complete-symbol命令显式调用,或者您应该通过以下方式在自插入时配置完成:

(defun my/c-mode-cedet-hook ()
  (local-set-key "." 'semantic-complete-self-insert)
  (local-set-key ">" 'semantic-complete-self-insert)
)
(add-hook 'c-mode-common-hook 'my/c-mode-cedet-hook)

但正如评论中所提到的,最好从bzr中获取最新的Emacs和/或CEDET - 自1.1发布以来,已经修复了许多错误。