vim插件配置

配置的比较简单,主要有三个功能:背景主题,目录树和代码补全(c++,python)

先安装vim-plug,用来管理插件 https://github.com/junegunn/vim-plug

先创建路径 ~/.vim/autoload

然后将vim-plug clone到本地,将本地仓库中的plug.vim文件拷贝到~/.vim/autoload/文件夹下

然后安装node

下载地址 https://nodejs.org/en/download/

用wget+下载地址下载到本地,然后创建路径

sudo mkdir -p /usr/local/lib/nodejs

然后将node解压到指定路径

sudo tar -xJvf node-v18.12.1-linux-x64.tar.xz -C /usr/local/lib/nodejs

在~/.bashrc中设置环境变量

export PATH=$PATH:/usr/local/lib/nodejs/node-v18.12.1-linux-x64/bin

就ok了

如何安装vim-plug的插件

进入vim,在命令模式下输入PlugInstall,就会自动安装,需要利用vim-plug安装一个叫做coc的插件,在命令模式下输入CocInfo查看是否安装成功

在vim插件的网址,可以在里面找各种插件,使用vim-plug安装 https://vimawesome.com/

在coc_global_extensions中配置需要的coc插件,配置好之后下次进入vim会自动安装,其中coc-clangd是c++补全插件,使用coc-clangd还需要用apt安装clangd

sudo apt install clangd

========================================

2024.6.5补充

clang是clangd的前置依赖

对于非ubuntu系统,比如centos,可以使用yum先把clang装好,或者下载llvm源码进行编译,安装好clang后,cocvim就可以自己安装clangd了

编译安装教程 https://www.cnblogs.com/yangwen0228/p/17183701.html

编译完成后记得把bin文件夹下编译好的clangd拷贝到 /usr/local/bin/ 目录下

========================================

安装完之后,vim就可以成功补全c++代码了,完整配置文件如下

" line number
set number

" tab = 4 space
set tabstop=4
set shiftwidth=4

" allow user edit other file when current file was not saved
set hidden

" faster response of vim
set updatetime=100

" hide vim-coc warning
let g:coc_disable_startup_warning = 1

" plug-in
call plug#begin('~/.vim/plugged')

Plug 'tpope/vim-sensible'
Plug 'junegunn/seoul256.vim'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'scrooloose/nerdtree'

call plug#end()

" use Ctrl+n to open or close NERDTree
nnoremap <f2> :NERDTreeToggle<CR>

" seoul256 (dark):
"   Range:   233 (darkest) ~ 239 (lightest)
"   Default: 237
let g:seoul256_background = 233
colo seoul256

" coc plug-in setting
let g:coc_global_extensions =[
    \ 'coc-json',
    \ 'coc-vimlsp',
    \ 'coc-clangd',
    \ 'coc-pyright']

" Make <CR> to accept selected completion item or notify coc.nvim to format
" <C-g>u breaks current undo, please make your own choice
inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm()
                              \: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>"

 

posted @ 2022-12-19 13:52  Wangtn  阅读(279)  评论(0编辑  收藏  举报