如何在 Windows 下使用 Vim 的 YouCompleteMe 插件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在 Windows 下使用 Vim 的 YouCompleteMe 插件相关的知识,希望对你有一定的参考价值。

从vim的官网下载相应的插件,一般插件都有安装说明,另外自动补全的插件vim上有很多,vim在windows平台上叫gvim,插件一般在plugin目录。。。

.YourCompleteMe使用说明
-for-windows
2.本程序YCM部分使用的几乎是该作者提供的文件。
3.使用步骤:
a.确保电脑上安装有python2.7,并且python.exe在path目录里。
b.在_vimrc中注释掉neocpmplete插件,反注释YourCompleteMe.
c.打开vim ,输入命令 :YcmDebug.如果有看到clang版本信息号,server running at,
server process ID 等即表示YCM已经可以使用。
d.对于C++补全,首先确保电脑上安装有MinGW或者CLang(折腾去吧)。然后运行如下
命令找到C++的库文件:
gcc:
POSIX shell: g++ -E -x c++ - -v < /dev/null
windows: g++ -E -x c++ - -v < nul
LLVM/CLang:
POSIX shell: clang++ -E -x c++ - -v < /dev/null
windows: clang++ -E -x c++ - -v < nul
在#include <...> search starts here:和End of search list.之间的路径就是C++
库路径。按照默认配载的格式添加进去。
你也可以直接下载我克隆的MinGW,把它放在C盘根目录,再把MinGW/bin目录加到path中。
e. 经测试,XP系统YCM不可用。WIN7 X86和64可以正常使用。原因未知。
参考技术A

关键问题是在于Python环境:必须确保环境变量Path里只有一个python.exe。

ycmd是client-server架构。ycmd本身是server,可以为多种客户端所用,如VIM/YouComplete,emacs/emacs-ycmd等。服务端有不同引擎,如clang补全c-familiy语言,其他引擎如可以补全javascript,python,c#等。

因为我想把ycmd用在其他环境,故这里把ycmd与YouCompleteMe分开设置。这与官网上的教程不太一致。

0. 依赖

vs 2015 community,必须

Python,必须。这里使用的版本是3.5.2

Git,必须

CMake,必须

LLVM,可选

下载最新版安装就可,并把所有安装路径加到环境变量Path里去。必须确保环境变量Path里面只有一个python.exe和它的dll,否则编译能通过,但运行出错。我这一个星期的折腾都是因为这个,好郁闷。可以运行命令where python来检查,只有一条输出就可以了。

1. ycmd

打开cmd.exe, 运行:

cd %USERPROFILE%
git clone https://github.com/Valloric/ycmd.git ycmd.git
cd ycmd.git
git submodule update --init --recursive
python build.py --clang-completer
cd examples
pip install -r requirements.txt
python example_client.py

其他第五步编译时间较长,编译完后检查有无错误。第8步有些错误输出,但只要python代码无错误,服务能起来就好。

2. VIM

上VIM官网下载最新版安装即可,并把安装路径加入环境变量Path.

3. YouCompleteMe

打开cmd.exe, 运行:

cd %USERPROFILE%
git clone /Valloric/YouCompleteMe.git YouCompleteMe.git
cd YouCompleteMe.git
cd third_party 
rename ycmd ycmd.bak
mklink /J ycmd ..\\..\\ycmd.git

按照YouCompleteMe的默认设置,ycmd目录在YouCompleteMe目录下,故这里我们创建一个链接到ycmd.git.

打开gvim配置文件_vimrc,加入一行:

set rtp+=%USERPROFILE%/YouCompleteMe.git

保存,用gvim打开一个.cc文件,若无错误提示,则配置成功。我这里提示python import module requests_futures错误,用pip安装即可:

pip install requests_futures

本回答被提问者采纳

windows下you-get下载后默认路径在哪里?

主要是我搜到一个提问这个问题的,但是答案不对,我却无法回答,为方便大家获取正确答案,在此提问一下,方便大家搜到
you-get默认的下载路径为:C:\Users\用户名\
在该目录下

C:\Documents and Settings\XX\Local Settings\Application Data\Microsoft\Outlook 如果你想修改:菜单 工具--选项--维护---存储文件夹---更改位置 参考技术A 应该是命令行当前目录

以上是关于如何在 Windows 下使用 Vim 的 YouCompleteMe 插件的主要内容,如果未能解决你的问题,请参考以下文章

windows下you-get下载后默认路径在哪里?

windows下you-get下载后默认路径在哪里?

如何在 Ubuntu 下正确显示 vim-airline 的箭头符号

如何在Vim / Gvim中的光标下编辑文件名,当它以/ cygdrive /在Windows中启动时

如何使用vundle在vim中安装插件?

如何在 VIM 中映射 CAPS LOCK 键?