前言
常见的C语言提示插件是YouCompleteMe,这个插件安装比较麻烦,在这推荐一款coc.nvim这个插件,github仓库地址:https://github.com/neoclide/coc.nvim/
下面是安装步骤。
一、安装 nodejs
1、终端命令安装
curl -sL install-node.vercel.app/lts | bash
我这边运行之后没有反映,所以使用离线的方式
2、下载nodejs包
进入nodejs官网:https://nodejs.org/zh-cn/download/
选择linux版本:
下载完成后,解压到当前路径:
tar -xf node-v18.13.0-linux-x64.tar.xz
解压之后,会得到以下文件:
将 bin、include、lib、share下的文件移动或者拷贝到**/usr/local/**文件夹下对应的文件夹中
sudo mv ./bin/* /usr/local/bin/
sudo mv ./include/* /usr/local/include/
sudo mv ./lib/* /usr/local/lib/
在终端输入: node 回车,验证一下是否安装成功
二、安装Vunble
Vunble是一个vim插件管理器,可以通过它安装各类插件
需要安装依赖软件:git :sudo apt install git
使用git从github上下载Vundle放到vim的bundle路径下:
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
在.vimrc中添加配置
"插件管理Vundle
filetype plugin indent on
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'gmarik/Vundle.vim'
call vundle#end()
运行vim,在命令模式下输入:PluginInstall
此时插件管理Vunble已经安装完成,若想安装其他插件,只需在call vundle#begin()
与call vundle#end()
中间写入安装的插件,并运行vim命令模式下输入PluginInstall即可。
三、安装coc.nvim
在.vimrc中加入:
Plugin 'neoclide/coc.nvim', {'branch': 'release'}
运行vim,在命令模式下输入:PluginInstall
安装好后,会报一个错误:
[coc.nvim] build/index.js not found, please install dependencies and compile coc.nvim by: yarn install
解决如下:
cd ~/.vim/bundle/coc.nvim/
git checkout release
此时已经没有错误了,coc.nvim已经安装成功,但是还不具备代码提示功能,还需要进行以下配置
四、配置coc.nvim
打开coc.nvim项目的wiki:https://github.com/neoclide/coc.nvim/wiki
点击Language servers,找到C语言的:C/C++
有四个配置文件,本教程使用ccls:
"languageserver": {
"ccls": {
"command": "ccls",
"filetypes": ["c", "cc", "cpp", "c++", "objc", "objcpp"],
"rootPatterns": [".ccls", "compile_commands.json", ".git/", ".hg/"],
"initializationOptions": {
"cache": {
"directory": "/tmp/ccls"
}
}
}
}
打开终端,使用apt安装一下ccls:
sudo apt install ccls
打开vim,在命令模式下输入: CocConfig
将上述展示的ccls配置文件复制到CocConfig文件中,配置文件用 花括号{} 括起来
现在用vim打开一个 .c 文件测试一下,会发现已经可以提示c语言代码了
回车BUG
代码提示没问题了,但选中时按下回车键,不能进行选中提示的代码,因为需要重新映射一下键盘按键,
在.vimrc 文件中添加 coc.nvim 的配置
inoremap <expr> <cr> coc#pum#visible() ? coc#pum#confirm() : "\<CR>"
更多功能配置看:wiki