在Emacs CEDET /语义中通过键盘自动完成

Ame*_*ina 5 emacs autocomplete cedet

在CEDET语义中查看完成的不同方法(来自Bazaar存储库的新版本),我看到我有以下选项(Alex Ott在他的配置文件中建议的键盘绑定)

  • C-c ?(semantic-ia-complete-symbol)
  • C-return(semantic-ia-complete-symbol-menu)
  • C-c , l(semantic-analyze-possible-completions)

但是,它们似乎都没有让我可以方便地使用键盘在可能的完成之间进行选择.

例如,(semantic-ia-complete-symbol-menu)打开一个菜单,我可以在其中选择不同的选项,但据我所知,它需要我使用鼠标(我试图C-n, C-p, M-n, M-p导航菜单没有成功).

另一方面(semantic-ia-complete-symbol)打开另一个带有选项的缓冲区.我也可以用鼠标选择所需的自动完成功能,但我想用键盘代替.

此外,在以前版本的CEDET中,有一个变量(semantic-complete-inline-analyzer-displayor-class)允许我在几个自动完成选项(例如(semantic-displayor-ghost),或更优雅的叠加作为工具提示)之间进行选择,但这个变量似乎不再存在.

如果它很重要,我主要使用C++文件.

更新:

似乎允许我循环执行自动完成的唯一方法是C-c , space(semantic-complete-analyze-inline),我可以使用它TAB来自动完成,但它没有显示我可以选择的可能自动完成的菜单.

Ale*_*Ott 1

在新版本的 CEDET 中,建议使用自动完成或类似的包。您可以添加ac-semanticac-sources,然后自动完成将使用 Semantic 作为完成的数据源。新版本的 Emacs/CEDET 文章提到了此设置并显示了必要的代码。请尝试一下