Advertisement
FEgor04

Untitled

Sep 23rd, 2020
2,020
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VIM 3.70 KB | None | 0 0
  1. set nocompatible              " be iMproved, required
  2. filetype off                  " required
  3. set rtp+=~/.vim/bundle/Vundle.vim
  4. call vundle#begin()
  5. Plugin 'VundleVim/Vundle.vim'
  6. Plugin 'Igorjan94/codeforces.vim'
  7. Plugin 'tpope/vim-commentary'
  8. Plugin 'godlygeek/tabular'
  9. Plugin 'lervag/vimtex'
  10. Plugin 'plasticboy/vim-markdown'
  11. Plugin 'leafgarland/typescript-vim'
  12. Plugin 'michaeljsmith/vim-indent-object'
  13. Plugin 'mattn/vim-gist'
  14. Plugin 'mhinz/vim-startify'
  15. Plugin 'ryanoasis/vim-devicons'
  16. Plugin 'tibabit/vim-templates'
  17. Plugin 'ycm-core/YouCompleteMe'
  18. Plugin 'morhetz/gruvbox'        " Gruvbox theme
  19. Plugin 'preservim/nerdtree'     " NERD tree (files etc)
  20. Plugin 'tpope/vim-surround'     " https://vimawesome.com/plugin/surround-vim
  21. Plugin 'tpope/vim-fugitive'     " Git for Vim https://vimawesome.com/plugin/fugitive-vim
  22. Plugin 'junegunn/fzf'           " fzf
  23. Plugin 'frazrepo/vim-rainbow'   " Vim rainbow highlight for {} () etc
  24. Plugin 'vim-airline/vim-airline' " Vim airline
  25. Plugin 'vim-airline/vim-airline-themes' " Vim airline
  26. call vundle#end()            " required
  27. filetype plugin indent on    " required
  28. " SETTINGS
  29. let g:airline_theme = 'gruvbox'
  30. colorscheme gruvbox
  31. autocmd vimenter * colorscheme gruvbox " enabling gruvbox
  32. set background=dark
  33. set number
  34. syntax on
  35. set incsearch
  36. set hlsearch
  37. set ignorecase
  38. set smartcase
  39. set termencoding=utf8
  40. set nocompatible
  41. set showcmd
  42. set mouse=a
  43. set mousemodel=popup
  44. set hidden
  45. set guioptions-=T
  46. set ch=1
  47. set mousehide
  48. set autoindent
  49. set nowrap
  50. set expandtab
  51. set shiftwidth=2
  52. set softtabstop=2
  53. set tabstop=2
  54. set smartindent
  55. set showmatch
  56. set iskeyword=@,48-57,_,192-255
  57. set backspace=indent,eol,start
  58. set cursorline
  59. highlight CursorLine guibg=lightblue ctermbg=lightgray
  60. highlight CursorLine term=none cterm=none
  61. set history=200
  62. set wildmenu
  63. set list listchars=tab:→\ ,trail:·
  64. au FileType c,cpp,objc,objcpp,ts,py call rainbow#load() " Rainbow vim
  65. nmap <F6> :NERDTreeToggle<CR> " Включение NERD Tree
  66. let g:airline_theme='gruvbox'
  67. autocmd filetype cpp nnoremap <F5> :w <bar> !g++ -ulimit -Wall -Wno-unused-result -std=c++11   -O2   % -o %:r <CR>
  68. map <C-a> :call Comment()<CR>
  69. map <C-d> :call Uncomment()<CR>
  70. function! Comment()
  71.   let ft = &filetype
  72.   if ft == 'php' || ft == 'ruby' || ft == 'sh' || ft == 'make' || ft == 'python' || ft == 'perl'
  73.     silent s/^/\#/
  74.   elseif ft == 'javascript' || ft == 'c' || ft == 'cpp' || ft == 'java' || ft == 'objc' || ft == 'scala' || ft == 'go'
  75.     silent s:^:\/\/:g
  76.   elseif ft == 'tex'
  77.     silent s:^:%:g
  78.   elseif ft == 'vim'
  79.     silent s:^:\":g
  80.   endif
  81. endfunction
  82.  
  83. function! Uncomment()
  84.   let ft = &filetype
  85.   if ft == 'php' || ft == 'ruby' || ft == 'sh' || ft == 'make' || ft == 'python' || ft == 'perl'
  86.     silent s/^\#//
  87.   elseif ft == 'javascript' || ft == 'c' || ft == 'cpp' || ft == 'java' || ft == 'objc' || ft == 'scala' || ft == 'go'
  88.     silent s:^\/\/::g
  89.   elseif ft == 'tex'
  90.     silent s:^%::g
  91.   elseif ft == 'vim'
  92.     silent s:^\"::g
  93.   endif
  94. endfunction
  95.  
  96. let mapleader = ','
  97.  
  98. nmap <leader>w :w!<cr>
  99.  
  100. map <space> /
  101. map <C-space> ?
  102. map <silent> <leader><cr> :noh<cr>
  103. let g:tex_flavor = 'latex'
  104. let g:tmpl_search_paths = ['~/.vim/templates']
  105. let g:tmpl_author_email = 'fegor2004@gmail.com'
  106. let g:tmpl_author_name = 'Egor Fedorov'
  107. cmap w!! w !sudo tee > /dev/null %
  108.  
  109. " SNIPPETS SETTINGS "
  110.  
  111. Plugin 'SirVer/ultisnips'
  112.  
  113. Plugin 'honza/vim-snippets'
  114.  
  115. let g:UltiSnipsExpandTrigger="<tab>"
  116. let g:UltiSnipsJumpForwardTrigger="<c-b>"
  117. let g:UltiSnipsJumpBackwardTrigger="<c-z>"
  118.  
  119. " If you want :UltiSnipsEdit to split your window.
  120. let g:UltiSnipsEditSplit="vertical"
  121.  
  122. let g:ycm_filetype_blacklist = { 'tex': 1 }
  123. " SNIPPETS "
  124. snippet test "Test snippet"
  125. Test!
  126. endsnippet
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement