嗨我无法将imenu与CEDET代码完成集成。当我调用自动完成时出现的是另一个带有可能单词的缓冲区。
我的.emacs文件:
(require 'color-theme)
(color-theme-initialize)
(color-theme-blue-mood)
;; Load CEDET
(load-file "/home/user/cedet-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
;; control + space
(global-set-key [?\C- ] 'semantic-complete-analyze-inline)
(load-library "completion")
(global-set-key (kbd "C-.") 'complete)
(defun my-semantic-hook ()
(imenu-add-to-menubar "TAGS"))
(add-hook 'semantic-init-hooks 'my-semantic-hook)
答案 0 :(得分:3)
我不完全确定你在问什么,但我猜你选择C-SPC
时,你会想要弹出一个菜单吗?代码完成引擎使用了许多不同的完成输出机制,但是菜单不是其中之一,因为Emacs菜单系统会抓取焦点,并阻止进一步输入。如果您只想要一个菜单,那么您应该将C-SPC
绑定到semantic-ia-complete-symbol-menu
。
Imenu是一个工具,可以显示菜单中缓冲区中的所有标记。完成是一个系统,Emacs通过该系统提供将完成某些符号的可能单词列表。它们与完全提示使用Imenu标签收集机制的唯一例外无关,CEDET未启用它。