Neovim
Neovim
是基于vim的速度更快的编辑器,也是vim的良好替代品。官网:https://neovim.io/
安装
mac
brew install neovim
配置
创建配置文件用于设置neovim配置
mkdir -vp ~/.config/nvim
touch ~/.config/nvim/init.vim
安装一些插件需要让VIM支持PYTHON
pip3 install --user --upgrade neovim
插件
插件安装一般使用 vim-plug 管理,基本步骤如下
- 以下代码中以
Plug
开始的要放在~/.config/nvim/init.vim
文件中 - 执行
source $INITVIM
生新加载配置 - 在 neovim 中执行命令
:PlugInstall
进行安装
常用插件管理命令
命令 | 描述 |
---|---|
PlugInstall [name ...] [#threads] |
安装插件 |
PlugUpdate [name ...] [#threads] |
安装或更新插件 |
PlugClean[!] |
删除未列出的插件 |
PlugUpgrade |
本身升级vim-plug |
PlugStatus |
检查插件状态 |
PlugDiff |
检查来自先前更新的更改以及未决的更改 |
PlugSnapshot[!] [output path] |
生成脚本以还原插件的当前快照 |
vim-plug
安装
官网:https://github.com/junegunn/vim-plug
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
https://houdunren-video.oss-cn-hangzhou.aliyuncs.com/soft/plug.vim
配置文件
在 ~/.vimrc
或 ~/.config/nvim/init.vim
文件中定义 vim-plug 的配置
安装插件
下面是 vim.plug 的示例,在
call plug#begin
与call plug#end()
间定义插件call plug#begin('~/.vim/plugged') Plug 'StanAngeloff/php.vim' Plug 'shawncplus/phpcomplete.vim' Plug 'neoclide/coc.nvim', {'branch': 'release'} Plug 'mhinz/vim-startify' call plug#end()
重新启动nvim并执行命令
:PlugInstall
如果出现以下错误
startify: Can't read viminfo file. Read :help startify-faq-02
执行以下命令
chmod 777 ~/.viminfo
coc.nvim
Coc是 Vim / Neovim的智能感知引擎,提供像vscode类似的提示功能,你可以通过 查看文档 了解全部。
安装
在 ~/.config/nvim/init.vim
文件中添加
Plug 'neoclide/coc.nvim', {'branch': 'release'}
回到 neovim中执行安装
:PlugInstall
插件安装
coc.vim也提供了插件管理功能,官方插件列表 https://github.com/neoclide/coc.nvim/wiki/Using-coc-extensions#implemented-coc-extensions
.config/coc/extensions/package.json
为插件安装列表
插件安装在以下目录
cd ~/.config/coc/extensions
常用开发语言配置 https://github.com/neoclide/coc.nvim/wiki/Language-servers#register-custom-language-servers
下面以安装 coc-json coc-phpls
两个插件为例
- 安装
:CocInstall coc-json coc-phpls
- 查看插件列表
:CocList extensions
- 删除插件
:CocUninstall coc-phpls
,无法删除vim-plug
安装的插件
插件配置
有些插件有独立的配置项,在 neovmi
中执行命令 :CocConfig
打开配置文件,并添加上所安装插件的独立配置项
常用插件
coc-phpls
php 语言的代码提示插件
需要先安装 Intelephense
$ npm i intelephense -g
然后安装插件
:CocInstall coc-phpls
需要通过命令 :CocConfig
进行配置
{
"languageserver": {
"intelephense": {
"command": "intelephense",
"args": ["--stdio"],
"filetypes": ["php"],
"initializationOptions": {
"storagePath": "/tmp/intelephense"
}
}
}
}
如果你有 Intelephense
付费密钥,在 coc-settings.json
文件中添加,使用 :CocConfig
可编辑该文件
{
"intelephense.licenceKey": "your licence key",
}