windows 10 平台安装 vim 插件 YouCompleteMe 详细流程
配置流程
0. 编译和安装环境
- Visual Studio Build Tools 2019 (或直接安装 VS2019)
- CMake
- Python (作者安装时使用的是 Python3)
- vim
1. 配置 vim 的 Python 路径
在设置配置文件前, 请确保以下命令的输出为 1
.
:echo has("python_dynamic")
以及
:echo has("python3_dynamic")
在 _vimrc
(或 .vimrc
) 中添加如下语句
" Python3
set pythonthreehome=D:\Python3.7.3
set pythonthreedll=D:\Python3.7.3\python37.dll
如果你使用的是 Python2 , 添加如下语句.
" Python2
set pythonhome=D:\Python2
set pythondll=D:\Python2\python27.dll
配置完成后, 重新加载 vimrc
, 使用以下命令来检查输出是否正确
:py3 print("test")
Python2
:py print "test"
2. 安装 vim-plug
从 项目主页 上下载 plug.vim
文件, 然后将其添加在 vim82\autoload
文件下.
3. 设置代理[可选]
若在 vim-plug 下载过程出现超时以及 SSL 错误, 可在给设置 git bash 代理后, 手动 git clone
项目到插件文件夹中. 注意, git bash 的代理设置是全局的, 也就是设置代理并关闭窗口后, 下一次打开窗口仍然会保留上次的代理设置.
设置代理
git config --global http.proxy http://127.0.0.1:1081
git config --global https.proxy http://127.0.0.1:1081
查看代理
git config http.proxy
git config https.proxy
取消代理
git config --unset http.proxy
git config --unset https.proxy
若在 cmake 的编译过程中, 下载依赖时出现下载超时以及 SSL 错误, 可在 CMD 窗口中设置代理后重新进行编译. CMD 的代理设置是针对于窗口的, 多个窗口间不会相互影响.
设置代理
set http_proxy=http://127.0.0.1:1081
set https_proxy=http://127.0.0.1:1081
查看代理
set http_proxy
set https_proxy
4. 使用 vim-plug 下载 YouCompleteMe
在 _vimrc
(或 .vimrc
) 文件中添加如下内容
call plug#begin('./plugs')
Plug 'ycm-core/YouCompleteMe'
call plug#end()
其中 ./plugs
为插件的目录, ycm-core/YouCompleteMe
为项目的地址.
添加完毕后, 重启 vim 或重新载入配置文件, 输入以下命令以下载 YouCompleteMe
:PlugInstall
5. 编译 YouCompleteMe
打开 CMD , 移动到 ./vim82/plugs/YouCompleteMe
目录, 输入以下命令来编译 YouCompleteMe
python3 install.py
上述命令仅编译了 YouCompleteMe , 并没有添加相应的语言支持. 若要添加相应的语言支持, 确保正确配置了相应语言环境的同时, 在编译命令中加入以下参数
- C-family languages:
--clangd-completer
- C# support: install Mono and add
--cs-completer
when calling./install.py
. - Go support: install Go and add
--go-completer
when calling./install.py
. - JavaScript and TypeScript support: install Node.js and npm and add
--ts-completer
when callinginstall.py
. - Rust support: add
--rust-completer
when calling./install.py
. - Java support: install JDK8 (version 8 required) and add
--java-completer
when calling./install.py
.
举个例子, 添加 C 语言系列支持:
python3 install.py --clangd-completer
如果要添加所有的语言支持, 可输入以下命令
python3 install.py --all
6. 检查安装是否成功
打开 vim , 输入命令
:scriptnames
若 youcompleteme.vim
包含在加载列表中, 则表明安装成功.
参考
- YouComplete 项目首页安装文档: https://github.com/ycm-core/YouCompleteMe#windows
- vim-plug 项目: https://github.com/junegunn/vim-plug
- YouCompleteMe 无法载入 Python DLL : https://github.com/ycm-core/YouCompleteMe/issues/2124
- vim 配置 Python 路径: https://vi.stackexchange.com/questions/18574/how-do-i-configure-the-python-location
- git bash 设置代理: https://gist.github.com/evantoli/f8c23a37eb3558ab8765
- git bash 取消代理: https://stackoverflow.com/questions/32268986/git-how-to-remove-proxy/32269086
windows 10 平台安装 vim 插件 YouCompleteMe 详细流程相关推荐
- Fedora 27安装vim插件YouCompleteMe
YouCompleteMe是一款强大的Vim插件,它可以实现代码的自动补全,跳转到定义等功能,并且支持java, python, go, c家族等多种语言. 网址: https://github.co ...
- 安装vim插件YouCompleteMe过程记录
第一步,通过配置文件[.vimrc]中使用的包管理器进行插件YouCompleteMe的安装. " use vim-plug to manage vim plugins call plug# ...
- Ubuntu20.04 使用Vundle安装Vim插件YouCompleteMe
先安装好Vundle vi ~/.vimrc文件代码 set nocompatible filetype off set rtp+=~/.vim/bundle/Vundle.vim call vund ...
- IDEA安装Vim插件并配置共享VIM和Windows的剪切板
IDEA安装Vim插件并配置共享VIM和Windows的剪切板 这两天学习了Vim的基本使用后,认为Vim的工作效率还是相当高的,所以便有了Idea中配置Vim使用的想法.也是经历了多重困难,查询了多 ...
- Vim 插件YouCompleteMe(YCM)安装
vim插件YouCompleteMe插件安装: 在ubuntu 18.04默认的vim版本是8.0,PluginInstall之后报不支持当前vim版本,所以在github上下载vim8.2的源码进行 ...
- 如何在 Windows 10 上安装 WSL 2
翻译自 Joey Sneddon 2020年10月30日的文章<How to Install WSL 2 on Windows 10> [1] 如果您想在最新的 Windows 版本中尝试 ...
- 如何在 Windows 10 中安装 WSL2 的 Linux 子系统
本文介绍如何在 Windows 10 中安装 WSL2 的 Linux 子系统 本文内容 第一步:启用虚拟机平台和 Linux 子系统功能 第二步:安装一个 Linux 发行版 第三步:启用 WSL2 ...
- windows环境下安装RabbitMQ(超详细)
windows环境下安装RabbitMQ(超详细) 记录RabbitMQ安装过程,欢迎大家和我交流.(安装过程中遇到的问题也有总结哈,请查看) RabbitMq简介 安装准备工具 安装步骤(图文) 安 ...
- 如何使用UUP来下载Windows 10 的安装镜像(Windows篇)
UUP全称为Unified Update Platform,即统一更新平台,是微软于2016年推出的更新模式,也是现在Windows的更新方式.UUP更新机制下Windows的更新方式为增量更新,在U ...
最新文章
- 无线路由器的使用方法
- MongoDB数据库安装与连接
- 【项目管理】绩效域-工件裁剪对照(绩效维度)
- 采用vue-cli安装的一些注意点
- 核心编程之十一章的11-9
- 如何设计领域特定语言,实现终极业务抽象?
- PASCAL VOC 2012 and SBD (the augment dataset) 总结
- CVPR 2021 论文和开源项目合集
- 【C 语言】文件操作 ( getc 和 putc 函数 )
- 实验一:MongoDB的基本操作
- 刚刚,蚂蚁区块链喜提“世界互联网领先科技成果”大奖!
- 关于多个债权人申请执行同一被执行人的清偿顺序问题
- 7.3 数字化的资产管理
- python学习路线图(初级阶段,中级阶段,高级阶段)
- html页面虚化,css实现背景虚化效果的示例代码
- 超融合走向红海,下一代超融合是新蓝海?
- 奶爸日记12 - 小鱼儿
- Java基础之代理模式
- 计算机网络原理fin,一个动画看懂网络原理之TCP建立和释放过程
- 集中式版本控制系统和分布式版本控制系统的区别