安装Neovim
su - roottar xvf nvim-linux64.tar.gzmv nvim-linux64 /usr/local/cd /binln -s /usr/local/nvim-linux64/bin/nvim nvimpip3 install --user --upgrade pynvimcurl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -sudo yum install nodejs
安装插件管理器
# github克隆代码
https://github.com/junegunn/vim-plug
# 将得到的vim-plug.vim复制到 ~/.local/share/nvim/site/autoload/plug.vim
# 设置文件格式fileformat=unix
# 创建配置文件
mkdir -p ~/.config/nvim/
nvim ~/.config/nvim/init.vim
#设置文件格式fileformat=unix
创建配置文件
~/.config/nvim/init.vim
参考链接 链接
set nu " 显示行号
" 插件列表
" 插件加载目录 .config/nvim/plugged ,也可以是.vim/plugged 随便都可以, 以后太会下载到这个目录,启动vim也会加载这里的插件
" 开始语句
call plug#begin('~/.config/nvim/plugged')
" 这是coc.nvim 插件
Plug 'neoclide/coc.nvim', {'branch': 'release'}
"Golang
Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
"Theme
Plug 'vim-airline/vim-airline'
"彩色括号
Plug 'luochen1990/rainbow'
"Shell
Plug 'shougo/vimshell.vim'
Plug 'powerline/powerline'
Plug 'vim-scripts/bash-support.vim'
"Python
Plug 'davidhalter/jedi-vim'
Plug 'nvie/vim-flake8'
Plug 'sirver/ultisnips'
"Markdown 必要插件,安装在vim-markdown前面
Plug 'godlygeek/tabular'
Plug 'plasticboy/vim-markdown'
"markdown预览
Plug 'plasticboy/markdown-syntax'
" 结束语句
call plug#end()
" coc.nvim settings
" ---
let g:coc_global_extensions = ['coc-snippets', 'coc-python', 'coc-json']
inoremap <silent><expr> <TAB>
\ pumvisible() ? coc#_select_confirm() :
\ coc#expandableOrJumpable() ? "\<C-r>=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\<CR>" :
\ <SID>check_back_space() ? "\<TAB>" :
\ coc#refresh()
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
function! s:check_back_space() abort
let col = col('.') - 1
return ! col || getline('.')[col - 1] =~? '\s'
endfunction
augroup user_plugin_coc
autocmd!
autocmd CompleteDone * if pumvisible() == 0 | pclose | endif
augroup END
" use <c-space>for trigger completion
inoremap <silent><expr> <C-space> coc#refresh()
" Movement within 'ins-completion-menu'
imap <expr><C-j> pumvisible() ? "\<Down>" : "\<C-j>"
imap <expr><C-k> pumvisible() ? "\<Up>" : "\<C-k>"
" Scroll pages in menu
inoremap <expr><C-f> pumvisible() ? "\<PageDown>" : "\<Right>"
inoremap <expr><C-b> pumvisible() ? "\<PageUp>" : "\<Left>"
imap <expr><C-d> pumvisible() ? "\<PageDown>" : "\<C-d>"
imap <expr><C-u> pumvisible() ? "\<PageUp>" : "\<C-u>"
" Use `[c` and `]c` to navigate diagnostics
nmap <silent> [c <Plug>(coc-diagnostic-prev)
nmap <silent> ]c <Plug>(coc-diagnostic-next)
" Remap keys for gotos
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)
nmap <Leader>p <Plug>(coc-format)
nmap gs <Plug>(coc-git-chunkinfo)
nmap [g <Plug>(coc-git-prevchunk)
nmap ]g <Plug>(coc-git-nextchunk)
" show commit contains current position
nmap gC <Plug>(coc-git-commit)
" Use K to show documentation in preview window
nnoremap <silent> K :call <SID>show_documentation()<CR>
function! s:show_documentation()
if (index(['vim', 'help'], &filetype) >= 0)
execute 'h '.expand('<cword>')
else
let l:found = CocAction('doHover')
endif
endfunction
" Specify a directory for plugins
" - For Neovim: stdpath('data') . '/plugged'
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.config/nvim/plugged')
" Make sure you use single quotes
" 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 'neoclide/coc.nvim'
Plug 'shougo/vimshell.vim'
Plug 'tpope/vim-surround'
Plug 'vim-airline/vim-airline'
Plug 'sirver/ultisnips'
Plug 'stephpy/vim-yaml'
Plug 'ekalinin/dockerfile.vim'
Plug 'docker/docker'
Plug 'neoclide/coc-tabnine'
Plug 'zxqfl/tabnine-vim'
Plug 'scrooloose/nerdtree'
Plug 'yggdroot/indentline'
Plug 'vim-airline/vim-airline-themes'
Plug 'joshdick/onedark.vim'
Plug 'thanethomson/vim-jenkinsfile'
Plug 'burnettk/vim-jenkins'
Plug 'luochen1990/rainbow'
Plug 'joshdick/onedark.vim'
Plug 'vim-scripts/bash-support.vim'
" Initialize plugin system
call plug#end()
" 彩色括号
let g:rainbow_active = 1 "set to 0 if you want to enable it later via :RainbowToggle
let g:lightline = {
\ 'colorscheme': 'onedark',
\ }
