当前位置: 首页 > news >正文

vim利用vundle安装YouCompleteMe

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1.安装YouCompleteMe

在.vimrc中插入

Plugin 'Valloric/YouCompleteMe'

利用git下载安装包

git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe

然后进入YouCompeteMe所在的文件夹:~/.vim/bundle/YouCompleteMe,运行:

python3 install.py --clang-completer --system-libclang

其中编译安装的过程中,不断提示编译所缺少的依赖,会有错误提示,按照提示安装缺少的依赖就好,其中比较重要的是clang,所以先需要运行

sudo apt-get install clang

运行install.py时会显示

最后在.vimrc文件中,添加配置信息:

set ts=4
set expandtab
set shiftwidth=4
set softtabstop=4
set number
"vundle"
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'Valloric/YouCompleteMe'
Plugin 'davidhalter/jedi-vim'
call vundle#end()
filetype plugin indent on
"youcompleteme"
"默认配置文件路径"
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/.ycm_extra_conf.py'       "配置全局路径
"log"
"let g:ycm_server_keep_logfiles=1
"let g:ycm_sever_log_level='debug'
"打开vim时不再询问是否加载ycm_extra_conf.py配置"
"let g:ycm_confirm_extra_conf=0
"set completeopt=longest,menu
"python解释器路径"
let g:ycm_path_to_python_interpreter='/home/wdh/anaconda3/bin/python3'
"let g:ycm_python_binary_path = '/home/wdh/anaconda3/bin/python3'   "python 环境
"是否开启语义补全"
let g:ycm_seed_identifiers_with_syntax=1
"是否在注释中也开启补全"
let g:ycm_complete_in_comments=1
let g:ycm_collect_identifiers_from_comments_and_strings = 0
"开始补全的字符数"
let g:ycm_min_num_of_chars_for_completion=2
"补全后自动关机预览窗口"
"let g:ycm_autoclose_preview_window_after_completion=1
" 禁止缓存匹配项,每次都重新生成匹配项"
let g:ycm_cache_omnifunc=0
"字符串中也开启补全"
let g:ycm_complete_in_strings = 1
let g:ycm_seed_identifiers_with_syntax=1 "补全关键字 
"离开插入模式后自动关闭预览窗口"
autocmd InsertLeave * if pumvisible() == 0|pclose|endif
"回车即选中当前项"
"inoremap <expr> <CR>       pumvisible() ? '<C-y>' : '\<CR>'     
"上下左右键行为"
"inoremap <expr> <Down>     pumvisible() ? '\<C-n>' : '\<Down>'
"inoremap <expr> <Up>       pumvisible() ? '\<C-p>' : '\<Up>'
"inoremap <expr> <PageDown> pumvisible() ? '\<PageDown>\<C-p>\<C-n>' : '\<PageDown>'
"inoremap <expr> <PageUp>   pumvisible() ? '\<PageUp>\<C-p>\<C-n>' : '\<PageUp>'\

 

转载于:https://my.oschina.net/lifeisshort/blog/2979159

相关文章:

  • 高性能负载均衡之分类架构
  • 华为关于多层网络可视化的研究
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • docker-consul
  • 天猫amp;PEPCO 超智能新零售智慧门店横空出世
  • 思否第一天
  • git学习(一)
  • 图与网络优化---图的基本概念
  • 微服务:更愉快还是更嘈杂?
  • Internet Download Manager IDM 破解器
  • 确保web安全的HTTPS
  • 基于echarts实时温度折线图表
  • 常量池总结
  • html2canvas用法的总结(转载)
  • Confluence 6 删除一个空间
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • Android组件 - 收藏集 - 掘金
  • C# 免费离线人脸识别 2.0 Demo
  • canvas绘制圆角头像
  • DOM的那些事
  • gf框架之分页模块(五) - 自定义分页
  • Gradle 5.0 正式版发布
  • HashMap剖析之内部结构
  • HTTP--网络协议分层,http历史(二)
  • java8 Stream Pipelines 浅析
  • JS变量作用域
  • JS基础之数据类型、对象、原型、原型链、继承
  • Theano - 导数
  • vue-loader 源码解析系列之 selector
  • yii2权限控制rbac之rule详细讲解
  • 驱动程序原理
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 原生 js 实现移动端 Touch 滑动反弹
  • 原生Ajax
  • 《天龙八部3D》Unity技术方案揭秘
  • const的用法,特别是用在函数前面与后面的区别
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • #pragma multi_compile #pragma shader_feature
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (备忘)Java Map 遍历
  • (二)丶RabbitMQ的六大核心
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (附源码)计算机毕业设计ssm基于Internet快递柜管理系统
  • (九)信息融合方式简介
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (转)JAVA中的堆栈
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • *p++,*(p++),*++p,(*p)++区别?
  • .NET 6 Mysql Canal (CDC 增量同步,捕获变更数据) 案例版
  • .net MVC中使用angularJs刷新页面数据列表
  • .net 发送邮件
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境