" key mappings let mapleader = "," nmap s :update nmap p :set paste! nmap h :set hlsearch! nmap t :wa :Make test " navigate buffers by ctrl-b nmap :bprevious nmap :bnext nmap d :bd nnoremap ; : " no cheating ! map map map map " for damaged keyboards map imap " special chars nmap l :set list! " tree map n :NERDTreeToggle " quickfix nmap q window:quickfix:toggle " ack cnoreabbrev Ack Ack! nnoremap / :Ack! nnoremap [q :cprevious nnoremap ]q :cnext " coc function! s:check_back_space() abort let col = col('.') - 1 return !col || getline('.')[col - 1] =~# '\s' endfunction function! s:show_documentation() if (index(['vim','help'], &filetype) >= 0) execute 'h '.expand('') else call CocAction('doHover') endif endfunction inoremap \ pumvisible() ? "\" : \ check_back_space() ? "\" : \ coc#refresh() inoremap pumvisible() ? "\" : "\" inoremap coc#refresh() if exists('*complete_info') inoremap complete_info()["selected"] != "-1" ? "\" : "\u\" else inoremap pumvisible() ? "\" : "\u\" endif nmap [g (coc-diagnostic-prev) nmap ]g (coc-diagnostic-next) nmap gd (coc-definition) nmap gy (coc-type-definition) nmap gi (coc-implementation) nmap gr (coc-references) nnoremap K :call show_documentation() nmap rn (coc-rename) xmap f (coc-format-selected) nmap f (coc-format-selected) xmap a (coc-codeaction-selected) nmap a (coc-codeaction-selected) nmap ac (coc-codeaction) nmap qf (coc-fix-current) xmap if (coc-funcobj-i) xmap af (coc-funcobj-a) omap if (coc-funcobj-i) omap af (coc-funcobj-a) nmap (coc-range-select) xmap (coc-range-select) nnoremap a :CocList diagnostics nnoremap e :CocList extensions nnoremap c :CocList commands nnoremap o :CocList outline nnoremap s :CocList -I symbols nnoremap j :CocNext nnoremap k :CocPrev nnoremap p :CocListResume