151 lines
3.5 KiB
Plaintext
151 lines
3.5 KiB
Plaintext
|
" no highlighting search
|
|||
|
set nohlsearch
|
|||
|
|
|||
|
" encoding:
|
|||
|
set encoding=utf-8
|
|||
|
|
|||
|
" line numbers:
|
|||
|
set number relativenumber
|
|||
|
|
|||
|
" color highlighting:
|
|||
|
syntax on
|
|||
|
|
|||
|
" Use 256 colours
|
|||
|
set t_Co=256
|
|||
|
|
|||
|
" copying/paste from system register (requires xclip)
|
|||
|
set clipboard+=unnamedplus
|
|||
|
|
|||
|
" Always show statusline:
|
|||
|
set laststatus=2
|
|||
|
|
|||
|
" Easier panel navigation
|
|||
|
map <C-h> <C-w>h
|
|||
|
map <C-j> <C-w>j
|
|||
|
map <C-k> <C-w>k
|
|||
|
map <C-l> <C-w>l
|
|||
|
|
|||
|
" Easier tab
|
|||
|
nnoremap <silent> <C-w>t :tabnew<CR>
|
|||
|
|
|||
|
" Easier find and replace
|
|||
|
nnoremap <C-s> :%s//gc<Left><Left><Left>
|
|||
|
|
|||
|
" Disable annoying keybindings
|
|||
|
"Command/Search History
|
|||
|
nnoremap q: <Nop>
|
|||
|
nnoremap q/ <Nop>
|
|||
|
nnoremap q? <Nop>
|
|||
|
cnoremap <C-f> <Nop>
|
|||
|
"Manual (wtf??)
|
|||
|
nnoremap <S-k> <Nop>
|
|||
|
"Select mode
|
|||
|
vnoremap <C-g> <Nop>
|
|||
|
|
|||
|
" base
|
|||
|
hi User1 ctermfg=231 ctermbg=234
|
|||
|
" base light
|
|||
|
hi User4 ctermfg=231 ctermbg=237
|
|||
|
" blue bg
|
|||
|
hi User2 ctermfg=231 ctermbg=27
|
|||
|
" default
|
|||
|
hi User3 ctermfg=white ctermbg=27
|
|||
|
|
|||
|
function! GetMode()
|
|||
|
if mode() == 'n'
|
|||
|
hi User3 ctermfg=white ctermbg=27
|
|||
|
return ' NORMAL '
|
|||
|
elseif mode() == 'i'
|
|||
|
hi User3 ctermfg=black ctermbg=green
|
|||
|
return ' INSERT '
|
|||
|
elseif mode() == 'v' || mode() == 'V' || mode() == ''
|
|||
|
hi User3 ctermfg=black ctermbg=190
|
|||
|
if mode() == 'V'
|
|||
|
return ' VISUAL LINE '
|
|||
|
elseif mode() == ''
|
|||
|
return ' VISUAL BLOCK '
|
|||
|
else
|
|||
|
return ' VISUAL '
|
|||
|
endif
|
|||
|
elseif mode() == 'c'
|
|||
|
hi User3 ctermfg=white ctermbg=27
|
|||
|
return ' COMMAND '
|
|||
|
elseif mode() == 'R'
|
|||
|
hi User3 ctermfg=white ctermbg=196
|
|||
|
return ' 易REPLACE '
|
|||
|
else
|
|||
|
hi User3 ctermfg=white ctermbg=27
|
|||
|
return ' UNKNOWN '
|
|||
|
endif
|
|||
|
endfunction
|
|||
|
|
|||
|
function! DrawStatusLine()
|
|||
|
set statusline=%1* "bare
|
|||
|
set statusline+=\ \ \ "Vim logo
|
|||
|
set statusline+=%3* "mode color
|
|||
|
set statusline+=%{GetMode()} "mode
|
|||
|
set statusline+=%1*\ "space
|
|||
|
set statusline+=%4* "base light
|
|||
|
set statusline+=\ \ \ %f\ "file name
|
|||
|
set statusline+=%1* "bare
|
|||
|
set statusline+=%= "switch side
|
|||
|
set statusline+=%2* "blue
|
|||
|
set statusline+=\ \ %l:%c/%L\ "line and collon
|
|||
|
endfunction
|
|||
|
|
|||
|
call DrawStatusLine()
|
|||
|
|
|||
|
" TabLine colors
|
|||
|
hi clear TabLine
|
|||
|
hi clear TabLineFill
|
|||
|
hi clear TabLineSel
|
|||
|
hi TabLineFill ctermfg=231 ctermbg=234
|
|||
|
hi TabLine ctermfg=231 ctermbg=237
|
|||
|
hi TabLineSel ctermfg=231 ctermbg=27
|
|||
|
|
|||
|
" Disable -- INSERT --, etc
|
|||
|
set noshowmode
|
|||
|
set noshowcmd
|
|||
|
|
|||
|
" VUNDLE START
|
|||
|
set nocompatible " be iMproved, required
|
|||
|
filetype off " required
|
|||
|
|
|||
|
" set the runtime path to include Vundle and initialize
|
|||
|
set rtp+=~/.config/nvim/bundle/Vundle.vim
|
|||
|
"call vundle#begin()
|
|||
|
" alternatively, pass a path where Vundle should install plugins
|
|||
|
call vundle#begin('~/.config/nvim/bundle')
|
|||
|
|
|||
|
"let Vundle manage Vundle, required
|
|||
|
Plugin 'VundleVim/Vundle.vim'
|
|||
|
|
|||
|
"Plugin 'ycm-core/YouCompleteMe'
|
|||
|
|
|||
|
" All of your Plugins must be added before the following line
|
|||
|
call vundle#end() " required
|
|||
|
filetype plugin indent on " required
|
|||
|
" To ignore plugin indent changes, instead use:
|
|||
|
"filetype plugin on
|
|||
|
"
|
|||
|
" Brief help
|
|||
|
" :PluginList - lists configured plugins
|
|||
|
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
|
|||
|
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
|
|||
|
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
|
|||
|
"
|
|||
|
" see :h vundle for more details or wiki for FAQ
|
|||
|
" Put your non-Plugin stuff after this line
|
|||
|
" VUNDLE END
|
|||
|
|
|||
|
" YCM
|
|||
|
"set completeopt-=preview
|
|||
|
"let g:ycm_clangd_args=['--header-insertion=never']
|
|||
|
"hi clear SignColumn
|
|||
|
"hi link YcmWarningLine WarningMsg
|
|||
|
"hi link YcmWarningSign WarningMsg
|
|||
|
"hi link YcmWarningSection Error
|
|||
|
"hi link YcmErrorLine Question
|
|||
|
"hi link YcmErrorSign Question
|
|||
|
"hi link YcmErrorSection Todo
|