Last active
October 20, 2017 13:00
-
-
Save therako/6646a67635477f626cd1b7c58c39adb6 to your computer and use it in GitHub Desktop.
My Full Vim config with all useful plugins
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" enable syntax highlighting | |
syntax enable | |
" show line numbers | |
set number | |
" set tabs to have 4 spaces | |
set ts=4 | |
" indent when moving to the next line while writing code | |
set autoindent | |
" expand tabs into spaces | |
set expandtab | |
" when using the >> or << commands, shift lines by 4 spaces | |
set shiftwidth=4 | |
" show a visual line under the cursor's current line | |
set cursorline | |
" show the matching part of the pair for [] {} and () | |
set showmatch | |
" enable all Python syntax highlighting features | |
let python_highlight_all = 1 | |
set rtp+=~/.vim/bundle/Vundle.vim | |
call vundle#begin() | |
Plugin 'gmarik/Vundle.vim' | |
Plugin 'scrooloose/nerdtree' | |
Plugin 'vim-airline/vim-airline' | |
Plugin 'vim-airline/vim-airline-themes' | |
" Add NERDTree Tabs plugin here " | |
Plugin 'jistr/vim-nerdtree-tabs' | |
Plugin 'ctrlp.vim' | |
Plugin 'easymotion/vim-easymotion' | |
Plugin 'syntastic' | |
Plugin 'Valloric/YouCompleteMe' | |
Plugin 'fatih/vim-go' | |
Plugin 'davidhalter/jedi-vim' | |
call vundle#end() | |
filetype plugin indent on | |
" skip some content ... " | |
" Drop NERDTree Tabs settings at the end of the config file " | |
" Open file via NERDTree Tabs, hot key: \t " | |
nmap <silent> <leader>t :NERDTreeTabsToggle<CR> | |
" Start NERDTree Tabs automatically " | |
let g:nerdtree_tabs_open_on_console_startup = 0 | |
let g:airline#extensions#tabline#enabled = 1 | |
" easymotion | |
let g:EasyMotion_smartcase = 1 " turn on case insensitive feature | |
let g:EasyMotion_do_mapping = 0 " disable default mappings | |
let g:EasyMotion_use_smartsign_us = 1 " 1 will match 1 and ! | |
let g:EasyMotion_use_upper = 1 | |
let g:EasyMotion_keys = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ;' | |
let g:EasyMotion_space_jump_first = 1 | |
let g:EasyMotion_enter_jump_first = 1 | |
" <Leader>f{char} to move to {char} | |
map <Leader>f <Plug>(easymotion-bd-f) | |
nmap <Leader>f <Plug>(easymotion-overwin-f) | |
" s{char}{char} to move to {char}{char} | |
nmap s <Plug>(easymotion-overwin-f2) | |
" Move to line | |
map <Leader>L <Plug>(easymotion-bd-jk) | |
nmap <Leader>L <Plug>(easymotion-overwin-line) | |
" Move to word | |
map <Leader>w <Plug>(easymotion-bd-w) | |
nmap <Leader>w <Plug>(easymotion-overwin-w) | |
map / <Plug>(easymotion-sn) | |
omap / <Plug>(easymotion-tn) | |
map n <Plug>(easymotion-next) | |
map N <Plug>(easymotion-prev) | |
" end of easymotion | |
" | |
" syntastic | |
set statusline+=%#warningmsg# | |
set statusline+=%{SyntasticStatuslineFlag()} | |
set statusline+=%* | |
let g:syntastic_always_populate_loc_list = 1 | |
let g:syntastic_auto_loc_list = 1 | |
let g:syntastic_check_on_open = 1 | |
let g:syntastic_check_on_wq = 0 | |
let g:syntastic_aggregate_errors = 1 | |
let g:syntastic_python_checkers = ['flake8', 'pyflakes'] | |
" end of syntastic | |
" config youcompleteme | |
let g:ycm_cache_omnifunc = 1 | |
let g:ycm_python_binary_path = 'python' | |
let g:ycm_key_list_select_completion=[] | |
let g:ycm_key_list_previous_completion=[] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment