vim clang autocomplete插件

以前一直用omnicppcomplete自动完成插件,前几天查到有人对clang autocomplete插件评价极高,于是用了一下发现确实很棒,在用c/c++开发时,效果比前者好很多。 下面是些安装使用中的一些经验,和大家分享一下

注:使用环境为centos 6.2, vim 7.3

  1. 系统要先安装llvm和clang, 建议用install-clang来安装,方便很多。 安装时间很长,在我的虚拟机上,安装了整整一下午。
  2. https://github.com/Rip-Rip/clang_complete 直接clone代码来安装插件,用文档提示的用make install安装总失败, 后来从 http://www.vim.org/scripts/script.php?script_id=3302 下载了 clang_complete.vmb 放到代码目录才安装成功
  3. 开始用的时候总不成功,提示pattern not found, 后来在.vimrc 里加入 let g:clang_hl_errors=1, 失败的时候会提示出详细的失败原因。 发现是因为找不到另外一个目录里的头文件。于是在工程根目录建立.clangg_complete 文件, 加入-Isrc/include等内容,问题解决。
  4. 有时还是会失败,后来网上查到个解决方案,在.vimrc中加入let g:clang_user_options=’|| exit 0′ 解决

 

补充:发现这个插件在python开发中也能实现自动完成。

VIM粘贴时的自动缩进问题

在vim里粘贴时,常遇到很讨厌的自动缩进问题,贴出来的格式面目全非。后来在http://stackoverflow.com/questions/2514445/turning-off-auto-indent-when-pasting-text-into-vim 找到解决方案,整理翻译如下:

  1. 在粘贴前,可以执行:set paste, 粘贴完后,再执行 :set nopaste 格式就不会乱了
  2. 但敲命令毕竟麻烦,可在~/.vimrc中加入set pastetoggle=<F10>, 指定F10键为paste状态切换键