Vim
Automatically close ( [ { and "
imap ( ()<Left> imap [ []<Left> imap { {}<Left> imap " <C-V>"<C-V>"<Left>
% springt auf die öffnende oder schließende Klammer.
Tab-Completion
function InsertTabWrapper(direction) " automagically decide what to do with <tab> let col = col('.') -1 " <s-tab> in insert mode if !col return "\<tab>" " insert Tab at the beginning of the line elseif a:direction < 0 return "\<c-p>" " insert Backward-Completion elseif getline('.')[col - 1] == '<space>' return "\<BS>\<TAB>" " replace <space><tab> with <tab> elseif getline('.')[col - 1] !~ '\k' return "\<tab>" " insert Tab if preceding character is not a keyword character else return "\<c-n>" " insert Forward-Completion endfunction inoremap <tab> <c-r>=InsertTabWrapper(1)<cr> inoremap <s-tab> <c-r>=InsertTabWrapper(-1)<cr>
lange Zeilen und Whitespaces markieren
Sofern textwidth einen Wert größer 0 hat, wird hiermit alles jenseits dieser Grenze , sowie Whitespaces am Zeilenende weiß auf rot (Error) markiert.
au BufEnter * if &textwidth > 0 | exec 'match Error /\%>' . &textwidth . 'v.\+\|\s\+$/' | endif