From ddc01a57fbf64a0571782aa1ff6c835efafa209a Mon Sep 17 00:00:00 2001 From: Florian Pritz Date: Sat, 17 Oct 2009 23:32:22 +0200 Subject: vimrc: add hotkey for commenting src: http://rsontech.net/articles/2009/09/22/11/vim-comments-revisited Signed-off-by: Florian Pritz --- .vimrc | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/.vimrc b/.vimrc index 1483d5c..88288c1 100644 --- a/.vimrc +++ b/.vimrc @@ -49,6 +49,32 @@ if !exists(":DiffOrig") \ | wincmd p | diffthis endif +" Comment out a visual block +function CommentLines() + execute ":s@^@".g:StartComment." @g" + "execute ":s@^\\(\\s*\\)@\\1".g:StartComment." @g" + + execute ":s@$@ ".g:EndComment."@g" +endfunction + +" Uncomment a visual block +function UncommentLines() + execute ":s@^".g:StartComment." @\@g" + "execute ":s@^\\(\\s*\\)".g:StartComment." @\\1@g" + + execute ":s@ ".g:EndComment."$@@g" +endfunction + +" Set comment characters for common languages +autocmd FileType python,sh,bash,zsh,ruby,perl let StartComment="#" | let EndComment="" +autocmd FileType html let StartComment="" +autocmd FileType php,c,javascript let StartComment="//" | let EndComment="" +autocmd FileType cpp let StartComment="/*" | let EndComment="*/" +autocmd FileType vim let StartComment="\"" | let EndComment="" + +vmap :call CommentLines() +vmap :call UncommentLines() + set runtimepath+=/usr/share/vim "inoremap -- cgit v1.2.3-24-g4f1b