X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=vimrc;h=c5941692bd497a23e9e04338ce3272c1c8ba0148;hb=1fbfa10398fe6d78c97b1ab12d7f8ac9ff9ff50f;hp=b537d1723e0d9b949333bfa4f69ce6c7ac9c279c;hpb=ef9cacbdd7feaa188446bf35c22ab0d595067b66;p=config%2Fdotfiles.git diff --git a/vimrc b/vimrc index b537d17..c594169 100644 --- a/vimrc +++ b/vimrc @@ -105,6 +105,9 @@ if exists('+cryptmethod') set cryptmethod=blowfish endif +" Create new split windows on the right (and not left). +set splitright + " Clear all vimrc-related autocmds. Has to be done here as the vimrc augroup " is used multiple times. Necessary to support reloading the vimrc. if has('autocmd') @@ -137,6 +140,15 @@ if has('eval') endif +" TERMINAL SETTINGS + +" Also enable fast terminal mode in GNU screen and tmux, but not for SSH +" connections. +if &term =~# '^screen' && !exists('$SSH_CONNECTION') + set ttyfast +endif + + " EDIT SETTINGS " Enable automatic file detection, plugin and indention support. @@ -373,6 +385,16 @@ if has('statusline') endif endfunction + " Return current syntax group in brackets or nothing if there's none. + function! StatuslineSyntaxGroup() + let l:group = synIDattr(synID(line('.'), col('.'), 1), 'name') + if l:group != '' + return '[' . l:group . '] ' + else + return '' + endif + endfunction + set statusline= " on the left set statusline+=%02n " buffer number @@ -532,6 +554,11 @@ if exists('+spell') nnoremap sn :set nospell nnoremap se :set spell spelllang=en_us nnoremap sd :set spell spelllang=de_de +" If no spell support is available, these mappings do nothing. +else + nmap sn + nmap se + nmap sd endif " Add semicolon to the end of the line. Thanks to @@ -747,11 +774,17 @@ if has('syntax') let g:hs_highlight_boolean = 1 let g:hs_highlight_types = 1 let g:hs_highlight_more_types = 1 + " Java. + let g:java_highlight_java_lang_ids = 1 " color java.lang.* identifiers " Perl. let g:perl_fold = 1 let g:perl_fold_blocks = 1 let g:perl_nofold_packages = 1 let g:perl_include_pod = 1 " syntax coloring for PODs + " PHP. + let g:php_folding = 3 " fold functions + let g:php_short_tags = 0 " no short tags (), not always usable + let g:php_sql_query = 1 " highlight SQL queries in strings " Python. let g:python_highlight_all = 1 " Shell. @@ -808,6 +841,18 @@ if has('eval') let g:ctrlp_cache_dir = $HOME . '/.vim/cache/ctrlp' " Permanent cache, cleared by a crontab entry. let g:ctrlp_clear_cache_on_exit = 0 + +" FSWitch settings. + " Default don't work well for my projects. + augroup vimrc + autocmd BufEnter *.cc let b:fswitchdst = 'h' + \ | let b:fswitchlocs = './' + autocmd BufEnter *.h let b:fswitchdst = 'cc,c' + \ | let b:fswitchlocs = './' + augroup END + + " Switch to corresponding header/source file. + nnoremap h :FSHere endif