(CN) Neovim

Neovim 基础配置

Neovim的配置文件位于$HOME/.config/nvim/init.vim

基础配置主要是让Neovim显示更多辅助信息,设置一些基本参数,如显示行号与设置缩进字符数

以下为我的基础配置,在注释中标注了配置的主要内容

set nocompatible            " 禁用与vi的兼容性
filetype on                 " 探测文件类型
filetype plugin on          " 按照文件类型加载插件
filetype indent on          " 按照文件类型设置缩进
syntax on                   " 打开语法高亮
set number                  " 显示行号
set cursorline              " 高亮当前行
set shiftwidth=4            " 设置位移宽度为4
set tabstop=4               " 设置缩进宽度为4
set expandtab               " 将缩进替换为空格
set nobackup                " 不生成backup文件
set scrolloff=10            " 设置滚动时始终显示上下10行
set nowrap                  " 禁止折行
set incsearch               " 增量式搜索
set ignorecase              " 搜索时大小写不敏感
set smartcase               " 搜索时对首字母大小写敏感
set showcmd                 " 显示键入的命令前缀
set showmode                " 显示当前模式(插入、可视等)
set showmatch               " 在搜索过程中显示匹配的单词
set hlsearch                " 高亮搜索结果
set history=1000            " 设置命令历史记录为1000
set wildmenu                " 设置tab补全
set wildmode=list:longest   " 使tab补全类似于Bash
set encoding=utf-8          " 设置编码方式为UTF-8

Neovim 插件管理

Neovim能够收到青睐的重要原因来自插件众多,可以根据需求进行个性化配置。但如果按照官方的方法进行插件安装既麻烦又不便于管理,因此选择使用vim-plug进行Neovim插件的管理

  1. 首先将源码克隆到自己规定的目录下
git clone https://github.com/junegunn/vim-plug.git
  1. 将源码目录中的plug.vim文件复制到指定目录
mkdir -p ~/.local/share/nvim/site/autoload
cp /your-path/vim-plug/plug.vim ~/.local/share/nvim/site/autoload/plug.vim
  1. 最后在配置文件$HOME/.config/nvim/init.vim中添加以下内容就可以使用vim-plug管理插件
call plug#begin(stdpath('data') . '/plugged')
" 在此处添加插件
call plug#end()

常用命令如下:

:PlugInstall 下载列出的插件

:PlugUpdate 升级下载的插件

:PlugClean 删除不在列表中的插件

  1. 在配置文件中添加如下插件
call plug#begin(stdpath('data') . '/plugged')

" 在此处添加插件
Plug 'preservim/nerdtree'
Plug 'preservim/nerdcommenter'
Plug 'preservim/tagbar'
Plug 'jiangmiao/auto-pairs'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
" theme
Plug 'dracula/vim', { 'as': 'dracula' }

call plug#end()

NERDTree

NERDTree是一个可以显示目录树的插件

参考网站

常用命令:

:NERDTree 打开目录树

:NERDTreeToggle 打开或关闭目录树

NERDCommenter

NERDCommenter插件用于快速注释,可以单行注释也可以多行注释,提供了很多注释快捷键

参考网站

默认快捷键映射:

cc 注释当前行或选中模式中的部分

c 注释或取消注释

Tagbar

Tagbar可以显示当前文件的各种标签,包括变量名、函数名等等

参考网站

需要先下载依赖ctags

sudo pacman -S ctags

常用命令:

:TagbarToggle 打开或关闭标签列表

Auto Pairs

Auto Pairs可以在输入左括号后自动补上右括号,也可以补全其他某些成对出现的符号

参考网站

coc.nvim

coc.nvim是带有一套子插件系统的插件,通过下载子插件可实现代码补全以及其他功能

参考网站

需要先下载node.js

sudo pacman -S nodejs npm

常用命令:

CocInstall 下载子插件

CocUninstall 删除子插件

CocUpdate 更新子插件

CocInfo 查看插件状态

Neovim 快捷键

配置文件添加如下内容

" basic map
let mapleader = ','
nnoremap <leader>s :source %<CR>				" 更新配置文件
nnoremap <leader>ww :w<CR>						
nnoremap <leader>wq :wq<CR>
nnoremap <leader>qq :q!<CR>
" vim-plug map
nnoremap <leader>pi :PlugInstall<CR>
" NERDTree map
nnoremap <leader>nn :NERDTreeToggle<CR>
" Tagbar man
nnoremap <leader>tt :TagbarToggle<CR>

Neovim 主题

选择Dracula,详细见配置文件以及主题官方网站

Outis Yang
Outis Yang
2024 Undergraduate in Cyberspace Security

My research interests include Internet of Vehicles(IoV), Penetration Testing and Security research.