gpt4 book ai didi

c++ - 在 emacs 中寻求自动完成功能

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:45:23 25 4
gpt4 key购买 nike

我正在寻找一个插件来为 emacs 中的 C++ 开发执行自动完成弹出窗口。我尝试过的是 Cedet Semantics 和 Autocompletion mode , 它们在完成变量和函数名称方面非常简洁,只要我已经有几句话了。例如,我有一个名为 foo 的类和一个返回整数 1 的函数

class foo{
int getInt(){return 1};
};

在main方法中,只要我开始输入这个

int main(){
foo bar;
bar.get...
}

插件可以毫无问题地弹出像 bar.getInt() 这样的建议。然而,我真正想要的是像 Eclipse 中的东西,只要我按下“点”,就可以为我生成可能的选择。这在 Emacs 中可能吗?谢谢

最佳答案

这取决于您对自动完成和 CEDET 的设置。看起来自动完成设置为仅在键入多个字符后才显示可能的完成。您可以检查 ac-auto-start 变量的值 - 如果这是一个数字,那么将在这个字符数之后调用自动完成。另一件重要的事情是你的 ac-sources 变量中的内容 - 要使用 CEDET,你需要使用 ac-source-semantic-rawac-source -语义完成源。要在 .-> 之后自动完成,您可以尝试使用 Semantic 的内置完成功能,例如:

(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)

附言你见过my article on CEDET & C++吗?

关于c++ - 在 emacs 中寻求自动完成功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10669394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com