init.vim 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. " $$$$$$$$\ $$$$$$$$\ $$\ $$\ $$$$$$\ $$\
  2. " \__$$ __|$$ _____|$$$$ | $$ | $$$ __$$\ $$ |
  3. " $$ | $$ | \_$$ | $$$$$$$\ $$$$$$$\ $$$$\ $$ | $$$$$$$\ $$$$$$\
  4. " $$ | $$$$$\ $$ | $$ _____|$$ __$$\ $$\$$\$$ |$$ _____|\_$$ _|
  5. " $$ | $$ __| $$ | $$ / $$ | $$ |$$ \$$$$ |\$$$$$$\ $$ |
  6. " $$ | $$ | $$ | $$ | $$ | $$ |$$ |\$$$ | \____$$\ $$ |$$\
  7. " $$ | $$$$$$$$\ $$$$$$\ \$$$$$$$\ $$ | $$ |\$$$$$$ /$$$$$$$ | \$$$$ |
  8. " \__| \________|\______| \_______|\__| \__| \______/ \_______/ \____/
  9. "Base"
  10. set number
  11. set autoindent
  12. set tabstop=4
  13. set shiftwidth=4
  14. set smarttab
  15. set softtabstop=4
  16. set mouse=a
  17. set termguicolors
  18. set clipboard=unnamedplus
  19. "Plugins"
  20. call plug#begin()
  21. Plug 'vim-airline/vim-airline'
  22. Plug 'vim-airline/vim-airline-themes'
  23. Plug 'scrooloose/nerdtree'
  24. Plug 'ap/vim-css-color'
  25. Plug 'tpope/vim-surround'
  26. Plug 'morhetz/gruvbox'
  27. Plug 'EdenEast/nightfox.nvim'
  28. " --- НОВЫЕ ПЛАГИНЫ ---
  29. " Мощное автодополнение (нужен Node.js в системе)
  30. Plug 'neoclide/coc.nvim', {'branch': 'release'}
  31. " Подсветка синтаксиса для Nginx
  32. Plug 'chr4/nginx.vim'
  33. call plug#end()
  34. " Список расширений, которые должны быть установлены всегда
  35. let g:coc_global_extensions = [
  36. \ 'coc-pyright',
  37. \ 'coc-yaml',
  38. \ 'coc-docker',
  39. \ 'coc-snippets',
  40. \ 'coc-json',
  41. \ 'coc-sh',
  42. \ '@yaegassy/coc-ansible',
  43. \ 'coc-diagnostic'
  44. \ ]
  45. syntax enable
  46. colorscheme carbonfox
  47. " NERDTree config
  48. let NERDTreeShowHidden = 1
  49. nnoremap <C-n> :NERDTree<CR>
  50. nnoremap <C-t> :NERDTreeToggle<CR>
  51. " --- МОИ ХОТКЕИ ---
  52. " Открыть русскую шпаргалку в вертикальном сплите по F1
  53. nnoremap <F1> :vsplit ~/.config/nvim/cheatsheet.md<CR>
  54. " Автозакрытие окна coc.nvim (документации) при выборе автодополнения
  55. autocmd! CompleteDone * if pumvisible() == 0 | pclose | endif
  56. " Выбор автодополнения по Enter (для coc.nvim)
  57. inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm() : "\<CR>"
  58. " off arrows
  59. nnoremap <Left> :echoe "Use h"<CR>
  60. nnoremap <Right> :echoe "Use l"<CR>
  61. nnoremap <Up> :echoe "Use k"<CR>
  62. nnoremap <Down> :echoe "Use j"<CR>
  63. imap jj <ESC>