""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " Important: " This requires that you install https://github.com/amix/vimrc ! " """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""" " => Load pathogen paths """""""""""""""""""""""""""""" let s:vim_runtime = expand('<sfile>:p:h')."/.." call pathogen#infect(s:vim_runtime.'/sources_forked/{}') call pathogen#infect(s:vim_runtime.'/sources_non_forked/{}') call pathogen#infect(s:vim_runtime.'/my_plugins/{}') call pathogen#helptags() """""""""""""""""""""""""""""" " => bufExplorer plugin """""""""""""""""""""""""""""" let g:bufExplorerDefaultHelp=0 let g:bufExplorerShowRelativePath=1 let g:bufExplorerFindActive=1 let g:bufExplorerSortBy='name' map <leader>o :BufExplorer<cr> """""""""""""""""""""""""""""" " => MRU plugin """""""""""""""""""""""""""""" let MRU_Max_Entries = 400 map <leader>f :MRU<CR> """""""""""""""""""""""""""""" " => YankStack """""""""""""""""""""""""""""" let g:yankstack_yank_keys = ['y', 'd'] nmap <C-p> <Plug>yankstack_substitute_older_paste nmap <C-n> <Plug>yankstack_substitute_newer_paste """""""""""""""""""""""""""""" " => CTRL-P """""""""""""""""""""""""""""" let g:ctrlp_working_path_mode = 0 " Quickly find and open a file in the current working directory let g:ctrlp_map = '<C-f>' map <leader>j :CtrlP<cr> " Quickly find and open a buffer map <leader>b :CtrlPBuffer<cr> " Quickly find and open a recently opened file map <leader>f :CtrlPMRU<CR> let g:ctrlp_max_height = 20 let g:ctrlp_custom_ignore = 'node_modules\|^\.DS_Store\|^\.git\|^\.coffee' """""""""""""""""""""""""""""" " => ZenCoding """""""""""""""""""""""""""""" " Enable all functions in all modes let g:user_zen_mode='a' """""""""""""""""""""""""""""" " => snipMate (beside <TAB> support <CTRL-j>) """""""""""""""""""""""""""""" ino <C-j> <C-r>=snipMate#TriggerSnippet()<cr> snor <C-j> <esc>i<right><C-r>=snipMate#TriggerSnippet()<cr> """""""""""""""""""""""""""""" " => Vim grep """""""""""""""""""""""""""""" let Grep_Skip_Dirs = 'RCS CVS SCCS .svn generated' set grepprg=/bin/grep\ -nH """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => Nerd Tree """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let g:NERDTreeWinPos = "left" let NERDTreeShowHidden=0 let NERDTreeIgnore = ['\.pyc$', '__pycache__'] let g:NERDTreeWinSize=35 map <leader>nn :NERDTreeToggle<cr> map <leader>nb :NERDTreeFromBookmark<Space> map <leader>nf :NERDTreeFind<cr> """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => vim-multiple-cursors """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let g:multi_cursor_use_default_mapping=0 " Default mapping let g:multi_cursor_start_word_key = '<C-s>' let g:multi_cursor_select_all_word_key = '<A-s>' let g:multi_cursor_start_key = 'g<C-s>' let g:multi_cursor_select_all_key = 'g<A-s>' let g:multi_cursor_next_key = '<C-s>' let g:multi_cursor_prev_key = '<C-p>' let g:multi_cursor_skip_key = '<C-x>' let g:multi_cursor_quit_key = '<Esc>' """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => surround.vim config " Annotate strings with gettext """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" vmap Si S(i_<esc>f) au FileType mako vmap Si S"i${ _(<esc>2f"a) }<esc> """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => lightline """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let g:lightline = { \ 'colorscheme': 'wombat', \ 'active': { \ 'left': [ ['mode', 'paste'], \ ['fugitive', 'readonly', 'filename', 'modified'] ], \ 'right': [ [ 'lineinfo' ], ['percent'] ] \ }, \ 'component': { \ 'readonly': '%{&filetype=="help"?"":&readonly?"🔒":""}', \ 'modified': '%{&filetype=="help"?"":&modified?"+":&modifiable?"":"-"}', \ 'fugitive': '%{exists("*FugitiveHead")?FugitiveHead():""}' \ }, \ 'component_visible_condition': { \ 'readonly': '(&filetype!="help"&& &readonly)', \ 'modified': '(&filetype!="help"&&(&modified||!&modifiable))', \ 'fugitive': '(exists("*FugitiveHead") && ""!=FugitiveHead())' \ }, \ 'separator': { 'left': ' ', 'right': ' ' }, \ 'subseparator': { 'left': ' ', 'right': ' ' } \ } """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => Vimroom """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let g:goyo_width=100 let g:goyo_margin_top = 2 let g:goyo_margin_bottom = 2 nnoremap <silent> <leader>z :Goyo<cr> """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => Ale (syntax checker and linter) """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let g:ale_linters = { \ 'javascript': ['jshint'], \ 'python': ['flake8'], \ 'go': ['go', 'golint', 'errcheck'] \} nmap <silent> <leader>a <Plug>(ale_next_wrap) " Disabling highlighting let g:ale_set_highlights = 0 " Only run linting when saving the file let g:ale_lint_on_text_changed = 'never' let g:ale_lint_on_enter = 0 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " => Git gutter (Git diff) """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" let g:gitgutter_enabled=0 nnoremap <silent> <leader>d :GitGutterToggle<cr>