jainbot27

init.vim

Aug 31st, 2020
1,089
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VIM 3.90 KB | None | 0 0
  1. set packpath+=~/.vim
  2. syntax on
  3. set smartindent
  4. set noerrorbells
  5. set tabstop=4
  6. set softtabstop=4
  7. set shiftwidth=4
  8. set expandtab
  9. set nu
  10. set nowrap
  11. set smartcase
  12. set incsearch
  13. set showcmd
  14. set relativenumber
  15. set splitright
  16. set nocompatible
  17. set mouse=a
  18. set hidden
  19. set nobackup
  20. set nowritebackup
  21. set cmdheight=2
  22. set updatetime=300
  23. set shortmess+=c
  24. call plug#begin('~/.vim/plugged')
  25. Plug 'scrooloose/nerdtree', { 'on':  'NERDTreeToggle' }
  26. Plug 'dense-analysis/ale'  
  27. Plug 'SirVer/ultisnips'
  28. Plug 'vim-airline/vim-airline'
  29. Plug 'vim-airline/vim-airline-themes'
  30. Plug 'neoclide/coc.nvim'
  31. Plug 'octol/vim-cpp-enhanced-highlight'
  32. Plug 'morhetz/gruvbox'
  33. Plug 'crusoexia/vim-monokai'
  34. Plug 'dracula/vim', { 'as': 'dracula' }
  35. Plug 'arcticicestudio/nord-vim'
  36. call plug#end()
  37. inoremap {<CR>  {<CR>}<Esc>O
  38. inoremap {}     {}
  39. colorscheme gruvbox
  40. autocmd vimenter * :80vs | :term
  41. imap jk <Esc>
  42. autocmd filetype cpp nnoremap <C-Q> :s/^\(\s*\)/\1\/\/<CR> :s/^\(\s*\)\/\/\/\//\1<CR> $
  43. tnoremap <Esc> <C-\><C-n>
  44. tnoremap jk <C-\><C-n>
  45. let g:airline#extensions#whitespace#enabled = 0
  46. if has("patch-8.1.1564")
  47.   set signcolumn=number
  48. else
  49.   set signcolumn=yes
  50. endif
  51. inoremap <silent><expr> <TAB>
  52.       \ pumvisible() ? "\<C-n>" :
  53.       \ <SID>check_back_space() ? "\<TAB>" :
  54.       \ coc#refresh()
  55. inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
  56.  
  57. function! s:check_back_space() abort
  58.   let col = col('.') - 1
  59.   return !col || getline('.')[col - 1]  =~# '\s'
  60. endfunction
  61. if has('nvim')
  62.   inoremap <silent><expr> <c-space> coc#refresh()
  63. else
  64.   inoremap <silent><expr> <c-@> coc#refresh()
  65. endif
  66. if exists('*complete_info')
  67.   inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>"
  68. else
  69.   inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
  70. endif
  71. nmap <silent> [g <Plug>(coc-diagnostic-prev)
  72. nmap <silent> ]g <Plug>(coc-diagnostic-next)
  73. nmap <silent> gd <Plug>(coc-definition)
  74. nmap <silent> gy <Plug>(coc-type-definition)
  75. nmap <silent> gi <Plug>(coc-implementation)
  76. nmap <silent> gr <Plug>(coc-references)
  77. nnoremap <silent> K :call <SID>show_documentation()<CR>
  78. function! s:show_documentation()
  79.   if (index(['vim','help'], &filetype) >= 0)
  80.     execute 'h '.expand('<cword>')
  81.   else
  82.     call CocAction('doHover')
  83.   endif
  84. endfunction
  85. autocmd CursorHold * silent call CocActionAsync('highlight')
  86. nmap <leader>rn <Plug>(coc-rename)
  87. xmap <leader>f  <Plug>(coc-format-selected)
  88. nmap <leader>f  <Plug>(coc-format-selected)
  89. augroup mygroup
  90.   autocmd!
  91.   autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected')
  92.   autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
  93. augroup end
  94. xmap <leader>a  <Plug>(coc-codeaction-selected)
  95. nmap <leader>a  <Plug>(coc-codeaction-selected)
  96. nmap <leader>qf  <Plug>(coc-fix-current)
  97. xmap if <Plug>(coc-funcobj-i)
  98. omap if <Plug>(coc-funcobj-i)
  99. xmap af <Plug>(coc-funcobj-a)
  100. omap af <Plug>(coc-funcobj-a)
  101. xmap ic <Plug>(coc-classobj-i)
  102. omap ic <Plug>(coc-classobj-i)
  103. xmap ac <Plug>(coc-classobj-a)
  104. omap ac <Plug>(coc-classobj-a)
  105. nmap <silent> <C-s> <Plug>(coc-range-select)
  106. xmap <silent> <C-s> <Plug>(coc-range-select)
  107. command! -nargs=0 Format :call CocAction('format')
  108. command! -nargs=? Fold :call     CocAction('fold', <f-args>)
  109. command! -nargs=0 OR   :call     CocAction('runCommand', 'editor.action.organizeImport')
  110. set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}
  111. nnoremap <silent><nowait> <space>a  :<C-u>CocList diagnostics<cr>
  112. nnoremap <silent><nowait> <space>e  :<C-u>CocList extensions<cr>
  113. nnoremap <silent><nowait> <space>c  :<C-u>CocList commands<cr>
  114. nnoremap <silent><nowait> <space>o  :<C-u>CocList outline<cr>
  115. nnoremap <silent><nowait> <space>s  :<C-u>CocList -I symbols<cr>
  116. nnoremap <silent><nowait> <space>j  :<C-u>CocNext<CR>
  117. nnoremap <silent><nowait> <space>k  :<C-u>CocPrev<CR>
  118. nnoremap <silent><nowait> <space>p  :<C-u>CocListResume<CR>"source ~/.vimrc
  119.  
Advertisement
Add Comment
Please, Sign In to add comment