配置 nvim

手贱修改了一次电脑的配置,导致之前的 vim 重装,并丢失了相关的配置,本文记录一下重现安装并且配置的过程,作为备忘,在下次遇到相关的问题时,可以更快的恢复。

首先是安装 neovim,这里不选择 vim 的原因是听网上的推荐, neovim 更为现代化一点,所以尝试使用 neovim 替代 vim。

直接通过 brew 安装。

1
$ brew install neovim

键入 nvim 就可以使用了,不想每次都输入 nvim,于是在 .zshrc 下添加一个 alias

1
alias vim="nvim"

这样所有的 vim 都实际上使用的是 nvim 了。

接下来就是配置 nvim.

1. 创建配置文件

nvim 的默认配置文件是 ~/.config/nvim/init.vim, 如果目录不存在,需要新建目录, 并且创建文件

1
2
$ mkdir -p  ~/.config/nvim/
$ echo "set nu" > ~/.config/nvim/init.vim

添加最基本的配置,显示行号。然后就是插件的安装了

2. 配置插件

依托于丰富的插件,vim 可以获得媲美 IDE 的体验,在安装插件之前,首先需要先安装好插件管理器来帮助我们管理 vim 的插件。

首先安装 pynvim, 来支持 python 书写的插件.

1
pip install --user --upgrade pynvim

插件管理器选用 vim-plug,路径是 "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim.

1
2
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'

完成之后就可以开始安装所需要的插件了,编辑 ~/.config/nvim/init.vim 文件,新增如下的内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
" 指定插件的安装位置
call plug#begin('~/.vim/plugged')


" 插件引入的形式为 Plug 'plugin-url'
" 使用单引号包裹路径,双引号会被视作注释
" Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
Plug 'junegunn/vim-easy-align'

" Any valid git URL is allowed
Plug 'https://github.com/junegunn/vim-github-dashboard.git'

" Multiple Plug commands can be written in a single line using | separators
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'

" On-demand loading
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }

" Using a non-default branch
Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' }

" Using a tagged release; wildcard allowed (requires git 1.9.2 or above)
Plug 'fatih/vim-go', { 'tag': '*' }

" Plugin options
Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }

" Plugin outside ~/.vim/plugged with post-update hook
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }

" Unmanaged plugin (manually installed and updated)
Plug '~/my-prototype-plugin'

Plug 'altercation/vim-colors-solarized'

call plug#end()

然后输入 PlugInstall 命令,就会自动下载安装指定的插件了.

删除插件只需要移除对应的插件声明,在运行 PlugClean 命令即可.

3. 优化配置

设置主题

1
2
set background=dark
colorscheme solarized

设置 NerdTree

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
map <F10> :NERDTreeToggle<CR>
nmap <M-m> :NERDTreeFind<CR>

let NERDTreeShowLineNumbers=1

let NERDTreeAutoCenter=1

let NERDTreeShowHidden=0

let NERDTreeIgnore=['\.pyc','\~$','\.swp']

let g:nerdtree_tabs_open_on_console_startup=1

let g:NERDTreeGitStatusIndicatorMapCustom = {
\ "Modified" : "✹",
\ "Staged" : "✚",
\ "Untracked" : "✭",
\ "Renamed" : "➜",
\ "Unmerged" : "═",
\ "Deleted" : "✖",
\ "Dirty" : "✗",
\ "Clean" : "✔︎",
\ 'Ignored' : '☒',
\ "Unknown" : "?"
\ }

let g:NERDTreeGitStatusShowIgnored= 1
nmap <Leader>pwd :NERDTreeCWD<CR>

到这里就完成了基本的配置了,如果之后需要进一步的配置,就需要自己安装或者写一下插件,并且配置了。


配置 nvim
https://blog.zhangliangliang.cc/post/setup-nvim.html
作者
Bobby Zhang
发布于
2021年12月7日
许可协议