Emacs C++ Auto Complete
Posted 深度操作系统
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Emacs C++ Auto Complete相关的知识,希望对你有一定的参考价值。
所谓 auto complete 即自动完成,就是智能猜测用户想输入的词,帮助用户自动输入,通常我们所说的 IDE 中的 Intellisense 也可用认为是某种自动完成。
auto-complete 是第三方开发者写的插件,提供自动完成支持,配合 Clang 可实现对 C、C++ 进行代码补全。
Clang 是一个 C、C++、Objective-c、Objective-C++ 编程语言的编译器前端。它采用底层虚拟机(LLVM)作为其后端,它的目标是替代 GCC,在苹果公司的赞助支持下进行开发,而且开源。
安装插件
在 github 下载 auto-complete 与 auto-complete-clang,丢到自己的配置目录;
或者通过 elpa (Emacs 的 “AppStore”),M-x package-install ,安装完成后 ~/.emacs.d/ 会生成 elpa 文件夹,elpa 里边是安装好的插件。
auto-complete-clang 配置
需要注意的是 ac-clang-flags 是头文件目录,根据系统的不同你的头文件目录也会不同,列出头文件目录的方法:
你会找到类似几行:
然后直接替换即可。
效果图
Qt 补全
添加 Qt 的头文件目录,一般在 /usr/include/x86_64-linux-gnu/qt5,然后通过 ac-clang-flags 这个变量中的设置。
其他方案
ycmd
cmake-ide
rtags
…
小结
自动完成框架,我认为唯一做得好的就是 auto-complete 了,加上 clang 后端语法解析引擎,其他都很普通。
【相关链接】
以上是关于Emacs C++ Auto Complete的主要内容,如果未能解决你的问题,请参考以下文章
C、C++ 和 JAVA 的 Emacs 中的 Eclipse 样式函数完成?