X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/b28fb7f7dedafd5076e3826c68f08c2e3285afd2..3db1fb0677a3a31aa261f9f59c5d5544c1a9a906:/.vimrc?ds=inline diff --git a/.vimrc b/.vimrc index 6d58d6a..6f3d5f6 100644 --- a/.vimrc +++ b/.vimrc @@ -52,7 +52,7 @@ set pt= " list of flags specifying which commands wrap to another line " (local to window) " set ww= -set ww=b,s,[,],~ +set ww=b,s,[,<,>,],~ " startofline " many jump commands move the cursor to the first non-blank @@ -195,7 +195,7 @@ set nowrap " wrap long lines at a character in 'breakat' " (local to window) " set nolbr lbr -set linebreak +" does not work with autocmd set list/nolist below " breakat " which characters might cause a line break @@ -673,6 +673,7 @@ set fo=tcroqn1l " pattern to recognize a numbered list " (local to buffer) " set flp=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s* +let &flp='^\v\s*((\a|\d+)[\]:.)}\t/-]\s|[-\*.·→+]\s)\s*' " formatexpr " expression used for "gq" to format lines @@ -851,7 +852,7 @@ set ci " (local to buffer) " set nopi pi """ set pi this ABORTS < 1:7.1-135+1 (see #446268) -if has('patch135') +if has('patch073') set pi endif @@ -879,7 +880,6 @@ endif " foldlevelstart " value for 'foldlevel' when starting to edit a file " set fdls=-1 -set fdls=1 " foldcolumn " width of the column used to indicate folds @@ -912,6 +912,7 @@ set fdls=1 " folding type: "manual", "indent", "expr", "marker" or "syntax" " (local to window) " set fdm=manual +set fdm=marker " foldexpr " expression used when 'foldmethod' is "expr" @@ -1089,7 +1090,7 @@ set ar " directory " list of directories for the swap file " set dir=.,/home/madduck/tmp,/var/tmp,/tmp -set dir=.,~/tmp//,/var/tmp//,/tmp// +set dir=.,$TMPDIR//,/var/tmp//,/tmp// " swapfile " use a swap file for this buffer @@ -1099,6 +1100,7 @@ set dir=.,~/tmp//,/var/tmp//,/tmp// " swapsync " "sync", "fsync" or empty; how to flush a swap file to disk " set sws=fsync +set sws= " updatecount " number of characters typed to cause a swap file update @@ -1107,6 +1109,7 @@ set dir=.,~/tmp//,/var/tmp//,/tmp// " updatetime " time in msec after which the swap file will be updated " set ut=4000 +set ut=10000 " maxmem " maximum amount of memory in Kbyte used for one buffer @@ -1134,7 +1137,7 @@ set hi=100 " wildmode " specifies how command line completion works " set wim=full -set wim=list +set wim=list:full " suffixes " list of file name extensions that have a lower priority @@ -1415,12 +1418,12 @@ set secure " viewdir " directory where to store files with :mkview " set vdir=/home/madduck/.vim/view -set vdir=$VAR/vim/view +set vdir=$VARDIR/vim/view " viminfo " list that specifies what to write in the viminfo file " set vi= -set vi='1000,f1,\"1000,:20,/20,%,!,h,n$VAR/vim/viminfo +set vi=<1000,'1000,\"1000,:100,/100,@100,f1,%,!,h,n$VARDIR/vim/viminfo " bufhidden " what happens with a buffer when it's no longer in a window @@ -1447,26 +1450,49 @@ colorscheme madduck autocmd BufNewFile,BufRead /etc/logcheck/*.d*/* set tw=0 autocmd BufNewFile,BufRead /home/madduck/debian/pkg/logcheck/*/rulefiles/linux/*.d*/* set tw=0 +autocmd BufNewFile,BufRead /home/madduck/.tmp/dir????? set tw=0 " jump to last known position in file (:he last-position-jump) -autocmd BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal g'\"zz" | endif +autocmd BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal g`\"zz" | endif + +" leave the w mark whenever a file is written +autocmd BufWrite * normal mw + +" keep an extra backup of vimperator's ctrl-i +autocmd BufWritePost */vimperator-*.tmp exe 'write ' . fnameescape((exists('$TMPDIR') ? $TMPDIR : '/tmp') . '/vimperator.ctrl-i.' . strftime('%Y.%m.%d.%H%M%S')) +autocmd BufWritePost */pentadactyl.*.txt exe 'write ' . fnameescape((exists('$TMPDIR') ? $TMPDIR : '/tmp') . '/pentadactyl.ctrl-i.' . strftime('%Y.%m.%d.%H%M%S')) + +autocmd BufRead *.vcf set filetype=vcard + +" leave the i mark whenever we go idle (after updatetime) +"augroup markidle + "autocmd CursorHold * normal mi + "autocmd CursorHoldI * normal mi "DISABLED while broken (shifts left) +"augroup end " disable list mode when inserting stuff, otherwise keep it enabled, it's -" useful +" useful (see also setting lcs) augroup listinsert autocmd InsertEnter * set nolist autocmd InsertLeave * set list augroup end +" flag trailing spaces as error only when not inserting +augroup tsperrorinsert + autocmd InsertEnter * match none /\s\+$/ + autocmd InsertLeave * match Error /\s\+$/ +augroup end if &cp | set nocp | endif let s:cpo_save=&cpo set cpo&vim " treat wrapped lines normally -map k gk -map gk -map j gj -map gj +nnoremap k gk +nnoremap gk +inoremap gk +nnoremap j gj +nnoremap gj +inoremap gj " this isn't windows, screw the F1->help key map @@ -1476,12 +1502,30 @@ vmap " ignore Q -- Ex mode map Q +let mapleader = ';' +let maplocalleader = ';' + imap -- – imap --- — imap ... … +" replace fake tab chars with real ones +map ft :%s,⇝·*, ,g:nohlsearch`` +" replace fake spaces with real ones +map fs :%s,·, ,g:nohlsearch`` + +map sy :echo synIDattr(synID(line("."), col("."), 1), "name") + +map / :nohlsearch + +omap [{ :normal {jj +nmap [{ :normal {jj +omap ]} :normal }kk +nmap ]} :normal }kk + iab sgf Sehr geehrte Frau iab sgh Sehr geehrter Herr +iab sghn Sehr geehrte Herren iab lf Liebe Frau iab lh Lieber Herr iab sgdh Sehr geehrte Damen und Herren @@ -1490,10 +1534,28 @@ iab lg liebe Grüsse iab Lg Liebe Grüsse iab fg Freundliche Grüsse iab mfg Mit freundlichen Grüssen -iab mbbg Mit bundesbrüderlichen Grüßen -iab mvbg Mit verbandsbrüderlichen Grüßen +iab mbg Mit den besten Grüssen +iab hg Herzliche Grüsse +iab mhg Mit herzlichen Grüssen +iab mbbg Mit bundesbrüderlichen Grüssen +iab mvbg Mit verbandsbrüderlichen Grüssen iab vd Vielen Dank iab vld Vielen lieben Dank +iab vhd Vielen herzlichen Dank +iab email e-mail +iab emails e-mails +iab Email E-mail +iab Emails E-mails +iab mk Martin Krafft +iab mfk Martin F. Krafft +iab addr Hanfstaenglstraße 15 D–80638 München let &cpo=s:cpo_save unlet s:cpo_save + +source $HOME/.vim/macros/table.vim + +let g:SuperTabMappingForward = '' +let g:SuperTabMappingBackward = '' + +let g:is_posix = 1