Useful vimrc snippets
These are some cool things that I discovered over time. They either save some
time or add some nice functionality. You can just put them into your .vimrc
file.
ASCII Boxes
To get some nice ASCII boxes from within the visual mode in Vim, I use this:
vnoremap ,bs !boxes -a c -s 79 -d shell<CR> vnoremap ,bc !boxes -a c -s 79 -d c<CR> vnoremap ,bl !boxes -a c -s 79 -d latex<CR>
This needs the boxes
command.
jk
Instead of going to the escape key to leave the insert mode, I sometimes just
type jk
. I also mapped the other way around, so that I just need to hit both
keys at the same time. This does the trick:
inoremap jk <Esc> inoremap kj <Esc>
License Texts
Often I need license texts, like the MIT license or the GPL. So I just type
,lm
and get the MIT license into the text.
nnoremap ,lb :read ~/Vorlagen/BSD.rst<CR> nnoremap ,lg2 :read ~/Vorlagen/GPLv2+.rst<CR> nnoremap ,lm :read ~/Vorlagen/MIT.rst<CR>
You will have to adjusts the paths, of course.
Generate HTML With Markdown
Writing HTML can be quite a lot of work. So I usually write the text I have in
Markdown, select it in visual mode and type ,m
and get it converted into
HTML. This needs the markdown
program.
vnoremap ,m !markdown<CR>
Sort
I like to have my imports or keyword lists or other things like that sorted. So
I can either select them in visual mode and press ,s
instead of typing
:sort i
. And if the lines I want to sort are in a paragraph, separated by
blank lines, I can just hit ,p
and have the whole paragraph sorted.
vnoremap ,s :sort i<CR> nnoremap ,p Vip :sort i<CR>
Trailing Whitespace
Having whitespace at the end of lines is usually a mistake, so I have it marked
as error in Vim. With a quick ,t
I can remove all excess whitespace in the
whole file. Be careful with languages like Markdown, where trailing whitespace
can be important.
match Error /\s\+$/ nnoremap ,t :%s/\v\s+$//<CR>