]> 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:

properly show colours on errors
[etc/vim.git] / .vimrc
diff --git a/.vimrc b/.vimrc
index 28ca20101540381f97da213147e2fb8e3b0d60b8..2855c1c8353e597dce953d795ae786503065b455 100644 (file)
--- a/.vimrc
+++ b/.vimrc
@@ -52,7 +52,7 @@ set pt=<F2>
 " 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*
+set flp=^\\s*\\d\\+[\\]:.)}]\\s*
 
 " formatexpr
 " expression used for "gq" to format lines
@@ -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
@@ -1107,6 +1108,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
@@ -1448,29 +1450,41 @@ 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
 
-" display the git-diff --cached in window below commit
-" assumes nosplitbelow set. Might want to use wincmd p otherwise
-autocmd FileType gitcommit DiffGitCached | wincmd J
-
 " 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
+
+" 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 <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
 map <F1> <Esc>
@@ -1496,6 +1510,11 @@ 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 lf Liebe Frau
@@ -1510,6 +1529,15 @@ iab mbbg Mit bundesbrüderlichen Grüßen
 iab mvbg Mit verbandsbrüderlichen Grüßen
 iab vd Vielen Dank
 iab vld Vielen lieben Dank
+iab email e-mail
+iab emails e-mails
+iab Email E-mail
+iab Emails E-mails
 
 let &cpo=s:cpo_save
 unlet s:cpo_save
+
+source $HOME/.vim/macros/table.vim
+
+let g:SuperTabMappingForward = '<nul>'
+let g:SuperTabMappingBackward = '<s-nul>'