首页 > 其他分享 >youcomplete的vimrc配置文件demo

youcomplete的vimrc配置文件demo

时间:2024-06-14 22:22:59浏览次数:7  
标签:set 补全 配置文件 extra conf demo youcomplete let ycm

离开youcompleteme, vim的使用体验差很多。
下面是vimrc文件中ycm相关配置demo。对于C/C++语言的语法补齐需要安装clangd.

set nu
set expandtab
set tabstop=4
set shiftwidth=4
set mouse=a
set shell=bash
set hls
set encoding=utf-8

"YoucomPleteMe:语句补全插件", ref to https://blog.csdn.net/OIDCAT/article/details/106816941
set runtimepath+=~/.vim/bundle/YouCompleteMe
set shellcmdflag=-ic

autocmd InsertLeave * if pumvisible() == 0|pclose|endif     " 离开插入模式后自动关闭预览窗口"
let g:ycm_clangd_uses_ycmd_caching = 0
let g:ycm_collect_identifiers_from_tags_files = 1           " 开启YCM基于标签引擎
let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释与字符串中的内容也用于补全
let g:syntastic_ignore_files=[".*\.py$"]
let g:ycm_seed_identifiers_with_syntax = 1                  " 语法关键字补全
let g:ycm_complete_in_strings = 1
let g:ycm_confirm_extra_conf = 0                            " 关闭加载.ycm_extra_conf.py提示
let g:ycm_key_list_select_completion = ['<c-n>', '<Down>']  " 映射按键,没有这个会拦截掉tab, 导致其他插件的tab不能用.
let g:ycm_key_list_previous_completion = ['<c-p>', '<Up>']
let g:ycm_key_invoke_completion = '<C-a>'
let g:ycm_complete_in_comments = 1                          " 在注释输入中也能补全
let g:ycm_complete_in_strings = 1                           " 在字符串输入中也能补全
let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释和字符串中的文字也会被收入补全
let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/.ycm_extra_conf.py'
"let g:ycm_global_ycm_extra_conf='~/.vim/.ycm_extra_conf.py' "加载文件路径
let g:ycm_clangd_binary_path = "~/software/llvm-13.0.0.obj/bin/clangd"
"let g:clang_library_path='/home/zwl/software/llvm-13.0.0.obj/lib/libclang.so' "libclang路径
let g:ycm_show_diagnostics_ui = 0                           " 禁用语法检查

inoremap <expr> <CR> pumvisible() ? "<Down>\<CR>" : "\<CR>"
inoremap <a-cr> <CR>
nnoremap <c-j> :YcmCompleter GoToDefinitionElseDeclaration<CR>
let g:ycm_min_num_of_chars_for_completion = 2                 " 从第2个键入字符就开始罗列匹配项
let g:ycm_max_num_candidates = 15                                                         " 候选数量设置
let g:ycm_auto_trigger = 1                                                                        " 签名帮助

标签:set,补全,配置文件,extra,conf,demo,youcomplete,let,ycm
From: https://www.cnblogs.com/zwlwf/p/18248743

相关文章

  • demo-socket
    在通过WebSocket或者TCPSocket进行通信时,如果服务器端期望接收ArrayBuffer类型的数据,那么客户端也需要相应地发送二进制数据。然而,对于字符串"DDT1"这样的文本数据,你需要先将其转换为二进制格式(如Uint8Array或ArrayBuffer),然后再发送。以下是一个使用JavaScriptWebS......
  • mysql数据库修改配置文件后无法启动服务问题排查
    windowsserver 报错现象:本地计算机上的MySQL8.0服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止。 MySQL服务无法启动。服务没有报告任何错误。 故障原因:经多方排查最终确认是配置文件存储编码错误导致服务无法初始化。处理过程:1、   本地环境检......
  • springboot打包将配置文件和jar分开
    <?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0......
  • 3.Nginx配置文件基本介绍
    nginx配置文件所在路径:/usr/local/nginx/conf/nginx.confnginx配置文件有三块:1.全局块从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令。配置运行nginx服务器的用户(组)允许生成的workerprocess数,Nginx服务器并发处理服务的关键配置,w......
  • python 圖片拼接demo
    fromPILimportImagedefcomb(png1,png2,png3,png4,png5,style='horizontal'):img1,img2,img3,img4,img5=Image.open(png1),Image.open(png2),Image.open(png3),Image.open(png4),Image.open(png5)#统一图片尺寸,可以自定义设置(宽,高)img1=img1.r......
  • 四、nvim配置文件
    这是一份没有插件的neovim配置。init.vimsource$HOME/.config/nvim/general/settings.vimsource$HOME/.config/nvim/general/appearance.vimsource$HOME/.config/nvim/general/keyshortcuts.vimsource$HOME/.config/nvim/general/plugins.vim下属四个子配置文件:(一)se......
  • 从零手写实现 nginx-13-nginx.conf 配置例子解释 + nginx 配置文件要如何解析?
    前言大家好,我是老马。很高兴遇到你。我们为java开发者实现了java版本的nginxhttps://github.com/houbb/nginx4j如果你想知道servlet如何处理的,可以参考我的另一个项目:手写从零实现简易版tomcatminicat手写nginx系列如果你对nginx原理感兴趣,可以阅读:从零......
  • SpringBoot配置文件敏感信息加密方案
    在SpringBootProject中,会将一些敏感信息配置到application.yml/application.properties配置文件中(同样适用于SpringCloud的各个微服务其实(微服务实例)本质就是一个SpringBoot),例如数据库的用户名和密码、Redis的密码等。为了保证敏感信息的安全,我们需要将此类数据进行加密配置。J......
  • Qt基于SQLite数据库的增删查改demo
    一、效果展示在Qt创建如图UI界面,主要包括“查询”、“添加”、“删除”、“更新”,四个功能模块。查询:从数据库中查找所有数据的所有内容,并显示在左边的QListWidget控件上。添加:在右边的QLineEdit标签上输入需要添加的内容,包含id,name,age三个字段,然后点击添加按钮,即可将数据......
  • spring和Mybatis的核心配置文件
    目录四、核心配置文件详解五、MyBatis获取参数值的两种方式5.1、搭建新的module:mybatis_parameter5.2、单个字面量类型的参数5.3、多个字面量类型的参数5.3、map集合类型的参数5.4、实体类类型的参数用的较多5.5、使用@Param标识参数四、核心配置文件详解<?xmlversion="1.0"......