diff options
Diffstat (limited to 'vim')
-rw-r--r-- | vim/.vimrc | 425 |
1 files changed, 0 insertions, 425 deletions
diff --git a/vim/.vimrc b/vim/.vimrc deleted file mode 100644 index d306d12..0000000 --- a/vim/.vimrc +++ /dev/null @@ -1,425 +0,0 @@ -" ============================================================================ -" Vundle initialization -" Avoid modify this section, unless you are very sure of what you are doing - -" no vi-compatible -set nocompatible -set clipboard=unnamedplus -set cino=N-s -set relativenumber - -" Setting up Vundle - the vim plugin bundler -let iCanHazVundle=1 -let vundle_readme=expand('~/.vim/bundle/vundle/README.md') -if !filereadable(vundle_readme) - echo "Installing Vundle..." - echo "" - silent !mkdir -p ~/.vim/bundle - silent !git clone https://github.com/gmarik/vundle ~/.vim/bundle/vundle - let iCanHazVundle=0 -endif - -filetype off - -set rtp+=~/.vim/bundle/vundle/ -call vundle#rc() - -" let Vundle manage Vundle -Bundle 'gmarik/vundle' - -" ============================================================================ -" Active plugins -" You can disable or add new ones here: - -" Plugins from github repos: - -" Python and PHP Debugger -" Bundle 'fisadev/vim-debug.vim' -" Better file browser -Bundle 'scrooloose/nerdtree' -" Code commenter -Bundle 'scrooloose/nerdcommenter' -" Class/module browser -Bundle 'majutsushi/tagbar' -" Code and files fuzzy finder -Bundle 'kien/ctrlp.vim' -" Extension to ctrlp, for fuzzy command finder -Bundle 'fisadev/vim-ctrlp-cmdpalette' -" Zen coding -Bundle 'mattn/emmet-vim' -" Git integration -Bundle 'motemen/git-vim' -" Tab list panel -Bundle 'kien/tabman.vim' -" Airline -Bundle 'vim-airline/vim-airline' -Bundle 'vim-airline/vim-airline-themes' -" Terminal Vim with 256 colors colorscheme -Bundle 'fisadev/fisa-vim-colorscheme' -" Consoles as buffers -Bundle 'rosenfeld/conque-term' -" Pending tasks list -Bundle 'fisadev/FixedTaskList.vim' -" Surround -Bundle 'tpope/vim-surround' -" Autoclose -Bundle 'Townk/vim-autoclose' -" Indent text object -Bundle 'michaeljsmith/vim-indent-object' -" Python mode (indentation, doc, refactor, lints, code checking, motion and -" operators, highlighting, run and ipdb breakpoints) -Bundle 'klen/python-mode' -" Better autocompletion -"Bundle 'Shougo/neocomplcache.vim' -" Snippets manager (SnipMate), dependencies, and snippets repo -"Bundle 'MarcWeber/vim-addon-mw-utils' -"Bundle 'tomtom/tlib_vim' -"Bundle 'honza/vim-snippets' -"Bundle 'garbas/vim-snipmate' -" Git/mercurial/others diff icons on the side of the file lines -Bundle 'mhinz/vim-signify' -" Automatically sort python imports -Bundle 'fisadev/vim-isort' -" Drag visual blocks arround -Bundle 'fisadev/dragvisuals.vim' -" Window chooser -Bundle 't9md/vim-choosewin' -" Python and other languages code checker -"Bundle 'scrooloose/syntastic' -" Paint css colors with the real color -Bundle 'lilydjwg/colorizer' -" Relative numbering of lines (0 is the current line) -" (disabled by default because is very intrusive and can't be easily toggled -" on/off. When the plugin is present, will always activate the relative -" numbering every time you go to normal mode. Author refuses to add a setting -" to avoid that) -" Bundle 'myusuf3/numbers.vim' -Bundle 'rust-lang/rust.vim' - -" Plugins from vim-scripts repos: - -" Search results counter -Bundle 'IndexedSearch' -" XML/HTML tags navigation -Bundle 'matchit.zip' -" Gvim colorscheme -Bundle 'Wombat' -" Yank history navigation -Bundle 'YankRing.vim' - -" ============================================================================ -" Install plugins the first time vim runs - -if iCanHazVundle == 0 - echo "Installing Bundles, please ignore key map error messages" - echo "" - :BundleInstall -endif - -" ============================================================================ -" Vim settings and mappings -" You can edit them as you wish - -" allow plugins by file type (required for plugins!) -filetype plugin on -filetype indent on - -" tabs and spaces handling -set expandtab -set tabstop=4 -set softtabstop=4 -set shiftwidth=4 - -" tab length exceptions on some file types -autocmd FileType html setlocal shiftwidth=4 tabstop=4 softtabstop=4 -autocmd FileType htmldjango setlocal shiftwidth=4 tabstop=4 softtabstop=4 -autocmd FileType javascript setlocal shiftwidth=4 tabstop=4 softtabstop=4 - -" always show status bar -set ls=2 - -" incremental search -set incsearch -" highlighted search results -set hlsearch - -" syntax highlight on -syntax on - -" show line numbers -set nu - -" tab navigation mappings -map tn :tabn<CR> -map tp :tabp<CR> -map tm :tabm -map tt :tabnew -map ts :tab split<CR> -map <C-S-Right> :tabn<CR> -imap <C-S-Right> <ESC>:tabn<CR> -map <C-S-Left> :tabp<CR> -imap <C-S-Left> <ESC>:tabp<CR> - -" navigate windows with meta+arrows -map <M-Right> <c-w>l -map <M-Left> <c-w>h -map <M-Up> <c-w>k -map <M-Down> <c-w>j -imap <M-Right> <ESC><c-w>l -imap <M-Left> <ESC><c-w>h -imap <M-Up> <ESC><c-w>k -imap <M-Down> <ESC><c-w>j - -" old autocomplete keyboard shortcut -imap <C-J> <C-X><C-O> - -" Comment this line to enable autocompletion preview window -" (displays documentation related to the selected completion option) -" Disabled by default because preview makes the window flicker -set completeopt-=preview - -" save as sudo -ca w!! w !sudo tee "%" - -" simple recursive grep -" both recursive grep commands with internal or external (fast) grep -command! -nargs=1 RecurGrep lvimgrep /<args>/gj ./**/*.* | lopen | set nowrap -command! -nargs=1 RecurGrepFast silent exec 'lgrep! <q-args> ./**/*.*' | lopen -" mappings to call them -nmap ,R :RecurGrep -nmap ,r :RecurGrepFast -" mappings to call them with the default word as search text -nmap ,wR :RecurGrep <cword><CR> -nmap ,wr :RecurGrepFast <cword><CR> - -" use 256 colors when possible -if (&term =~? 'mlterm\|xterm\|xterm-256\|screen-256') || has('nvim') - let &t_Co = 256 - " colorscheme fisa - colorscheme desert -else - colorscheme desert -endif - -" colors for gvim -if has('gui_running') - colorscheme wombat -endif - -" when scrolling, keep cursor 3 lines away from screen border -set scrolloff=3 - -" autocompletion of files and commands behaves like shell -" (complete only the common part, list the options that match) -set wildmode=list:longest - -" better backup, swap and undos storage -set directory=~/.vim/dirs/tmp " directory to place swap files in -set backup " make backup files -set backupdir=~/.vim/dirs/backups " where to put backup files -set undofile " persistent undos - undo after you re-open the file -set undodir=~/.vim/dirs/undos -set viminfo+=n~/.vim/dirs/viminfo -" store yankring history file there too -let g:yankring_history_dir = '~/.vim/dirs/' - -" create needed directories if they don't exist -if !isdirectory(&backupdir) - call mkdir(&backupdir, "p") -endif -if !isdirectory(&directory) - call mkdir(&directory, "p") -endif -if !isdirectory(&undodir) - call mkdir(&undodir, "p") -endif - -" ============================================================================ -" Plugins settings and mappings -" Edit them as you wish. - -" Tagbar ----------------------------- - -" toggle tagbar display -map <F4> :TagbarToggle<CR> -" autofocus on tagbar open -let g:tagbar_autofocus = 1 - -" NERDTree ----------------------------- - -" toggle nerdtree display -map <F3> :NERDTreeToggle<CR> -" open nerdtree with the current file selected -nmap ,t :NERDTreeFind<CR> -" don;t show these file types -let NERDTreeIgnore = ['\.pyc$', '\.pyo$'] - - -" Tasklist ------------------------------ - -" show pending tasks list -map <F2> :TaskList<CR> - -" Vim-debug ------------------------------ - -" disable default mappings, have a lot of conflicts with other plugins -let g:vim_debug_disable_mappings = 1 -" add some useful mappings -map <F5> :Dbg over<CR> -map <F6> :Dbg into<CR> -map <F7> :Dbg out<CR> -map <F8> :Dbg here<CR> -map <F9> :Dbg break<CR> -map <F10> :Dbg watch<CR> -map <F11> :Dbg down<CR> -map <F12> :Dbg up<CR> - -" CtrlP ------------------------------ - -" file finder mapping -let g:ctrlp_map = ',e' -" tags (symbols) in current file finder mapping -nmap ,g :CtrlPBufTag<CR> -" tags (symbols) in all files finder mapping -nmap ,G :CtrlPBufTagAll<CR> -" general code finder in all files mapping -nmap ,f :CtrlPLine<CR> -" recent files finder mapping -nmap ,m :CtrlPMRUFiles<CR> -" commands finder mapping -nmap ,c :CtrlPCmdPalette<CR> -" to be able to call CtrlP with default search text -function! CtrlPWithSearchText(search_text, ctrlp_command_end) - execute ':CtrlP' . a:ctrlp_command_end - call feedkeys(a:search_text) -endfunction -" same as previous mappings, but calling with current word as default text -nmap ,wg :call CtrlPWithSearchText(expand('<cword>'), 'BufTag')<CR> -nmap ,wG :call CtrlPWithSearchText(expand('<cword>'), 'BufTagAll')<CR> -nmap ,wf :call CtrlPWithSearchText(expand('<cword>'), 'Line')<CR> -nmap ,we :call CtrlPWithSearchText(expand('<cword>'), '')<CR> -nmap ,pe :call CtrlPWithSearchText(expand('<cfile>'), '')<CR> -nmap ,wm :call CtrlPWithSearchText(expand('<cword>'), 'MRUFiles')<CR> -nmap ,wc :call CtrlPWithSearchText(expand('<cword>'), 'CmdPalette')<CR> -" don't change working directory -let g:ctrlp_working_path_mode = 0 -" ignore these files and folders on file finder -let g:ctrlp_custom_ignore = { - \ 'dir': '\v[\/](\.git|\.hg|\.svn|node_modules)$', - \ 'file': '\.pyc$\|\.pyo$', - \ } - -" Syntastic ------------------------------ - -" show list of errors and warnings on the current file -nmap <leader>e :Errors<CR> -" check also when just opened the file -let g:syntastic_check_on_open = 1 -" don't put icons on the sign column (it hides the vcs status icons of signify) -let g:syntastic_enable_signs = 0 -" custom icons (enable them if you use a patched font, and enable the previous -" setting) -"let g:syntastic_error_symbol = '✗' -"let g:syntastic_warning_symbol = '⚠' -"let g:syntastic_style_error_symbol = '✗' -"let g:syntastic_style_warning_symbol = '⚠' - -" Python-mode ------------------------------ - -" don't use linter, we use syntastic for that -let g:pymode_lint_on_write = 0 -let g:pymode_lint_signs = 0 -" don't fold python code on open -let g:pymode_folding = 0 -" don't load rope by default. Change to 1 to use rope -let g:pymode_rope = 0 -" open definitions on same window, and custom mappings for definitions and -" occurrences -let g:pymode_rope_goto_definition_bind = ',d' -let g:pymode_rope_goto_definition_cmd = 'e' -nmap ,D :tab split<CR>:PymodePython rope.goto()<CR> -nmap ,o :RopeFindOccurrences<CR> - -" NeoComplCache ------------------------------ - -" most of them not documented because I'm not sure how they work -" (docs aren't good, had to do a lot of trial and error to make -" it play nice) -let g:neocomplcache_enable_at_startup = 1 -let g:neocomplcache_enable_ignore_case = 1 -let g:neocomplcache_enable_smart_case = 1 -let g:neocomplcache_enable_auto_select = 1 -let g:neocomplcache_enable_fuzzy_completion = 1 -let g:neocomplcache_enable_camel_case_completion = 1 -let g:neocomplcache_enable_underbar_completion = 1 -let g:neocomplcache_fuzzy_completion_start_length = 1 -let g:neocomplcache_auto_completion_start_length = 10 -let g:neocomplcache_manual_completion_start_length = 1 -let g:neocomplcache_min_keyword_length = 1 -let g:neocomplcache_min_syntax_length = 1 -" complete with workds from any opened file -let g:neocomplcache_same_filetype_lists = {} -let g:neocomplcache_same_filetype_lists._ = '_' - -" TabMan ------------------------------ - -" mappings to toggle display, and to focus on it -let g:tabman_toggle = 'tl' -let g:tabman_focus = 'tf' - -" Autoclose ------------------------------ - -" Fix to let ESC work as espected with Autoclose plugin -let g:AutoClosePumvisible = {"ENTER": "\<C-Y>", "ESC": "\<ESC>"} - -" DragVisuals ------------------------------ - -" mappings to move blocks in 4 directions -vmap <expr> <S-M-LEFT> DVB_Drag('left') -vmap <expr> <S-M-RIGHT> DVB_Drag('right') -vmap <expr> <S-M-DOWN> DVB_Drag('down') -vmap <expr> <S-M-UP> DVB_Drag('up') -" mapping to duplicate block -vmap <expr> D DVB_Duplicate() - -" Signify ------------------------------ - -" this first setting decides in which order try to guess your current vcs -" UPDATE it to reflect your preferences, it will speed up opening files -let g:signify_vcs_list = [ 'git', 'hg' ] -" mappings to jump to changed blocks -nmap <leader>sn <plug>(signify-next-hunk) -nmap <leader>sp <plug>(signify-prev-hunk) -" nicer colors -highlight DiffAdd cterm=bold ctermbg=none ctermfg=119 -highlight DiffDelete cterm=bold ctermbg=none ctermfg=167 -highlight DiffChange cterm=bold ctermbg=none ctermfg=227 -highlight SignifySignAdd cterm=bold ctermbg=237 ctermfg=119 -highlight SignifySignDelete cterm=bold ctermbg=237 ctermfg=167 -highlight SignifySignChange cterm=bold ctermbg=237 ctermfg=227 - -" Window Chooser ------------------------------ - -" mapping -nmap - <Plug>(choosewin) -" show big letters -let g:choosewin_overlay_enable = 1 - -" Airline ------------------------------ - -let g:airline_powerline_fonts = 0 -let g:airline_theme = 'bubblegum' -let g:airline#extensions#whitespace#enabled = 0 - -" to use fancy symbols for airline, uncomment the following lines and use a -" patched font (more info on the README.rst) -"if !exists('g:airline_symbols') -" let g:airline_symbols = {} -"endif -"let g:airline_left_sep = '⮀' -"let g:airline_left_alt_sep = '⮁' -"let g:airline_right_sep = '⮂' -"let g:airline_right_alt_sep = '⮃' -"let g:airline_symbols.branch = '⭠' -"let g:airline_symbols.readonly = '⭤' -"let g:airline_symbols.linenr = '⭡' |