169 lines
4 KiB
VimL
169 lines
4 KiB
VimL
set runtimepath+=~/.config/vim,~/.config/vim/after
|
|
|
|
if has('nvim')
|
|
" Neovim specific commands
|
|
set viminfo+=n~/.cache/nviminfo
|
|
else
|
|
" Standard vim specific commands
|
|
set viminfo+=n~/.cache/viminfo
|
|
endif
|
|
|
|
" Plug plugins using VimPlug
|
|
call plug#begin('~/.config/vim/plugged')
|
|
Plug 'editorconfig/editorconfig-vim'
|
|
Plug 'airblade/vim-gitgutter'
|
|
Plug 'samoshkin/vim-mergetool'
|
|
Plug 'fidian/hexmode'
|
|
Plug 'scrooloose/nerdtree'
|
|
Plug 'itchyny/lightline.vim'
|
|
Plug 'nanotech/jellybeans.vim'
|
|
Plug 'scrooloose/syntastic'
|
|
Plug 'sersorrel/vim-lilypond'
|
|
Plug 'vim-scripts/DoxygenToolkit.vim'
|
|
Plug 'drmikehenry/vim-headerguard'
|
|
Plug 'sirtaj/vim-openscad'
|
|
Plug 'cespare/vim-toml'
|
|
Plug 'posva/vim-vue'
|
|
Plug 'lervag/vimtex'
|
|
Plug 'fatih/vim-go'
|
|
Plug 'machakann/vim-swap'
|
|
Plug 'tpope/vim-sleuth'
|
|
Plug 'neoclide/coc.nvim', { 'branch': 'release' }
|
|
call plug#end()
|
|
|
|
packadd termdebug
|
|
|
|
set number relativenumber
|
|
set splitbelow splitright
|
|
|
|
let mapleader = " "
|
|
|
|
augroup numbertoggle
|
|
autocmd!
|
|
autocmd WinEnter * set relativenumber
|
|
autocmd WinLeave * set norelativenumber
|
|
augroup END
|
|
|
|
syntax on
|
|
|
|
set tabstop=4
|
|
set shiftwidth=4
|
|
set expandtab
|
|
|
|
set modeline
|
|
set laststatus=2
|
|
|
|
set encoding=utf-8
|
|
|
|
set nowrap
|
|
|
|
set wildmode=longest,list,full
|
|
|
|
set fillchars+=vert:\
|
|
|
|
runtime ftplugin/man.vim
|
|
set keywordprg=:Man
|
|
|
|
if has("autocmd")
|
|
" Save cursor position. I don't understand this part
|
|
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif
|
|
|
|
au BufNewFile,BufRead neomutt-* setf mail
|
|
|
|
au FileType yaml setlocal ai tabstop=2 shiftwidth=2 expandtab cuc nu
|
|
|
|
au FileType lilypond au BufWritePost * !lilypond %
|
|
au FileType dot au BufWritePost * !dot -Tpng -O %
|
|
endif
|
|
|
|
|
|
|
|
map <leader>b :Break<CR>
|
|
map <leader>n :NERDTreeToggle<CR>
|
|
|
|
|
|
|
|
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
|
|
|
|
let g:lightline = {
|
|
\ 'active': {
|
|
\ 'left': [
|
|
\ [ 'mode', 'paste' ],
|
|
\ [ 'readonly', 'filename', 'modified', 'gitbranch' ]
|
|
\ ],
|
|
\ 'right': [
|
|
\ [ 'bufnum', 'percent', 'lineinfo' ],
|
|
\ [ 'fileformat', 'fileencoding', 'filetype', 'synthastic' ],
|
|
\ [ 'charvaluehex' ]
|
|
\ ]
|
|
\ },
|
|
\ 'inactive': {
|
|
\ 'left': [
|
|
\ [ 'filename' ]
|
|
\ ],
|
|
\ 'right': [
|
|
\ [ 'lineinfo' ],
|
|
\ [ 'bufnum' ]
|
|
\ ]
|
|
\ },
|
|
\ 'component': {
|
|
\ 'charvaluehex': '0x%B',
|
|
\ 'bufnum': '%n'
|
|
\ },
|
|
\ 'component_function': {
|
|
\ 'synthastic': 'SyntasticStatuslineFlag',
|
|
\ 'gitbranch': 'fugitive#head'
|
|
\ },
|
|
\ }
|
|
|
|
if has('termguicolors') && &termguicolors
|
|
let g:jellybeans_overrides['background']['guibg'] = 'none'
|
|
endif
|
|
let g:jellybeans_overrides = {
|
|
\ 'Todo': {
|
|
\ 'guifg': '303030',
|
|
\ 'guibg': 'f0f000',
|
|
\ 'ctermfg': 'Black',
|
|
\ 'ctermbg': 'Yellow',
|
|
\ 'attr': 'bold'
|
|
\ },
|
|
\ 'Comment': { 'guifg': 'cccccc' },
|
|
\ 'LineNr': { 'guifg': 'aaaaaa' },
|
|
\ 'background': {
|
|
\ 'ctermbg': 'none',
|
|
\ '256ctermbg': 'none'
|
|
\ },
|
|
\ }
|
|
colorscheme jellybeans
|
|
|
|
let g:syntastic_always_populate_loc_list = 0
|
|
let g:syntastic_auto_loc_list = 0
|
|
let g:syntastic_check_on_open = 1
|
|
let g:syntastic_check_on_wq = 0
|
|
let g:syntastic_oclint_config_file = '.syntastic_oclint_config'
|
|
let g:syntastic_c_config_file = '.syntastic_cc_config'
|
|
|
|
let g:tex_flavor = 'latex'
|
|
let g:vimtex_compiler_latexmk = {
|
|
\ 'build_dir': 'latexmk_output'
|
|
\}
|
|
|
|
|
|
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
|
|
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
|
|
|
|
inoremap <silent><expr> <C-space> coc#refresh()
|
|
|
|
"GoTo code navigation
|
|
nmap <leader>g <C-o>
|
|
nmap <silent> gd <Plug>(coc-definition)
|
|
nmap <silent> gt <Plug>(coc-type-definition)
|
|
nmap <silent> gi <Plug>(coc-implementation)
|
|
nmap <silent> gr <Plug>(coc-references)
|
|
|
|
nmap <leader>rn <Plug>(coc-rename)
|
|
|
|
"show all diagnostics.
|
|
nnoremap <silent> <leader>d :<C-u>CocList diagnostics<cr>
|
|
"manage extensions.
|
|
nnoremap <silent> <leader>e :<C-u>CocList extensions<cr>
|