]> git.madduck.net Git - etc/vim.git/blobdiff - .vimrc

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

markdown inclusion does not yet work, comment
[etc/vim.git] / .vimrc
diff --git a/.vimrc b/.vimrc
index 4e56c980522df087214fbc623627f458619c44c9..ae1e9bcb5478f65bd2b2d27f8f1e8f5723dc6ed7 100644 (file)
--- a/.vimrc
+++ b/.vimrc
@@ -1,6 +1,3 @@
-" vim: set ft=vim :
-version 7.1
-
 " obtained from the output of :options, then postprocessed:
 "   d2}
 "   :%s/^ *[[:digit:]]\+/"""
 " obtained from the output of :options, then postprocessed:
 "   d2}
 "   :%s/^ *[[:digit:]]\+/"""
@@ -40,15 +37,11 @@ set pt=<F2>
 
 " runtimepath
 " list of directories used for runtime files and plugins
 
 " runtimepath
 " list of directories used for runtime files and plugins
-"       set rtp=/home/madduck/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim71,/usr/share/vim/vimfiles/after,/home/madduck/.vim/after
-set rtp-=~/.vim
-set rtp-=~/.vim/after
-set rtp^=~/.etc/vim
-set rtp+=~/.etc/vim/after
+"       set rtp=/home/madduck/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vimcurrent,/usr/share/vim/vimfiles/after,/home/madduck/.vim/after
 
 " helpfile
 " name of the main help file
 
 " helpfile
 " name of the main help file
-"       set hf=/usr/share/vim/vim71/doc/help.txt
+"       set hf=/usr/share/vim/vimcurrent/doc/help.txt
 
 """ moving around, searching and patterns
 
 
 """ moving around, searching and patterns
 
@@ -56,7 +49,7 @@ set rtp+=~/.etc/vim/after
 " list of flags specifying which commands wrap to another line
 "       (local to window)
 "       set ww=
 " 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
 
 " startofline
 " many jump commands move the cursor to the first non-blank
@@ -199,7 +192,7 @@ set nowrap
 " wrap long lines at a character in 'breakat'
 "       (local to window)
 "       set nolbr       lbr
 " 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
 
 " breakat
 " which characters might cause a line break
@@ -677,6 +670,7 @@ set fo=tcroqn1l
 " pattern to recognize a numbered list
 "       (local to buffer)
 "       set flp=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
 " pattern to recognize a numbered list
 "       (local to buffer)
 "       set flp=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
+let &flp='^\v\s*(((\a|\d{,4})[]:.)}/])+|[-\*.·→+])\s+'
 
 " formatexpr
 " expression used for "gq" to format lines
 
 " formatexpr
 " expression used for "gq" to format lines
@@ -854,7 +848,10 @@ set ci
 " Preserve kind of whitespace when changing indent
 "       (local to buffer)
 "       set nopi        pi
 " Preserve kind of whitespace when changing indent
 "       (local to buffer)
 "       set nopi        pi
-set pi
+""" set pi this ABORTS < 1:7.1-135+1 (see #446268)
+if has('patch073')
+  set pi
+endif
 
 " lisp
 " enable lisp mode
 
 " lisp
 " enable lisp mode
@@ -880,7 +877,6 @@ set pi
 " foldlevelstart
 " value for 'foldlevel' when starting to edit a file
 "       set fdls=-1
 " 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
 
 " foldcolumn
 " width of the column used to indicate folds
@@ -913,6 +909,7 @@ set fdls=1
 " folding type: "manual", "indent", "expr", "marker" or "syntax"
 "       (local to window)
 "       set fdm=manual
 " folding type: "manual", "indent", "expr", "marker" or "syntax"
 "       (local to window)
 "       set fdm=manual
+set fdm=marker
 
 " foldexpr
 " expression used when 'foldmethod' is "expr"
 
 " foldexpr
 " expression used when 'foldmethod' is "expr"
@@ -1090,7 +1087,7 @@ set ar
 " directory
 " list of directories for the swap file
 "       set dir=.,/home/madduck/tmp,/var/tmp,/tmp
 " 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
 
 " swapfile
 " use a swap file for this buffer
@@ -1100,6 +1097,7 @@ set dir=.,~/tmp//,/var/tmp//,/tmp//
 " swapsync
 " "sync", "fsync" or empty; how to flush a swap file to disk
 "       set sws=fsync
 " 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
 
 " updatecount
 " number of characters typed to cause a swap file update
@@ -1108,6 +1106,7 @@ set dir=.,~/tmp//,/var/tmp//,/tmp//
 " updatetime
 " time in msec after which the swap file will be updated
 "       set ut=4000
 " 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
 
 " maxmem
 " maximum amount of memory in Kbyte used for one buffer
@@ -1135,7 +1134,7 @@ set hi=100
 " wildmode
 " specifies how command line completion works
 "       set wim=full
 " 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
 
 " suffixes
 " list of file name extensions that have a lower priority
@@ -1416,12 +1415,12 @@ set secure
 " viewdir
 " directory where to store files with :mkview
 "       set vdir=/home/madduck/.vim/view
 " 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=
 
 " 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
 
 " bufhidden
 " what happens with a buffer when it's no longer in a window
@@ -1442,47 +1441,73 @@ set vi='1000,f1,\"1000,:20,/20,%,!,h,n$VAR/vim/viminfo
 " set to "msg" to see all error messages
 "       set debug=
 
 " set to "msg" to see all error messages
 "       set debug=
 
+if &cp | set nocp | endif
+let s:cpo_save=&cpo
+set cpo&vim
+
 filetype plugin indent on
 syntax on
 colorscheme madduck
 
 filetype plugin indent on
 syntax on
 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
+" leave the w mark whenever a file is written
+autocmd BufWrite * normal mw
 
 
-" jump to last known position in file (:he last-position-jump)
-autocmd BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal g'\"zz" | endif
+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
 
 " 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
 augroup listinsert
   autocmd InsertEnter * set nolist
   autocmd InsertLeave * set list
 augroup end
-
-if &cp | set nocp | endif
-let s:cpo_save=&cpo
-set cpo&vim
+" flag trailing spaces as error only when not inserting
+augroup tsperrorinsert
+  autocmd InsertEnter * match none /\s\+$/
+  autocmd InsertLeave * match Error /\s\+$/
+augroup end
 
 " treat wrapped lines normally
 
 " treat wrapped lines normally
-map k gk
-map <Up> gk
-map j gj
-map <Down> gj
+nnoremap k gk
+nnoremap <Up> gk
+inoremap <Up> <C-\><C-o>gk
+nnoremap j gj
+nnoremap <Down> gj
+inoremap <Down> <C-\><C-o>gj
 
 " this isn't windows, screw the F1->help key
 
 " this isn't windows, screw the F1->help key
-"map <F1> <Esc>
-"imap <F1> <Esc>
-"vmap <F1> <Esc>
+map <F1> <Esc>
+imap <F1> <Esc>
+vmap <F1> <Esc>
 
 " ignore Q -- Ex mode
 map Q <Esc>
 
 
 " ignore Q -- Ex mode
 map Q <Esc>
 
-imap <Leader>-- –
-imap <Leader>--- —
-imap <Leader>... …
+let mapleader = ';'
+let maplocalleader = ';'
+
+" replace fake tab chars with real ones
+map <Leader>ft :%s,⇝·*,     ,g<CR>:nohlsearch<CR>``
+" replace fake spaces with real ones
+map <Leader>fs :%s,·, ,g<CR>:nohlsearch<CR>``
+
+map <Leader>sy :echo synIDattr(synID(line("."), col("."), 1), "name")<CR>
+
+map <Leader>/ :nohlsearch<CR>
+
+omap [{ :normal {jj<CR>
+nmap [{ :normal {jj<CR>
+omap ]} :normal }kk<CR>
+nmap ]} :normal }kk<CR>
 
 iab sgf Sehr geehrte Frau
 iab sgh Sehr geehrter Herr
 
 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
 iab lf Liebe Frau
 iab lh Lieber Herr
 iab sgdh Sehr geehrte Damen und Herren
@@ -1491,10 +1516,23 @@ iab lg liebe Grüsse
 iab Lg Liebe Grüsse
 iab fg Freundliche Grüsse
 iab mfg Mit freundlichen Grüssen
 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 vd Vielen Dank
-iab vld Vielen lieben Dank
+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 => ➬
+
+let g:airline_theme='minimalist'
+
+try
+  execute pathogen#infect()
+catch
+  "echo "Pathogen not installed"
+endtry
+
+let g:is_posix = 1
 
 let &cpo=s:cpo_save
 unlet s:cpo_save
 
 let &cpo=s:cpo_save
 unlet s:cpo_save