Tip 712 Printable Monobook Previous Next

created 2004 · complexity basic · author David Fishburn · version 5.7

Simply enable visual mode (v), highlight the characters you want inverted, and hit \is.

For a single word you can use vw (or viw):

vnoremap <silent> <Leader>is :<C-U>let old_reg_a=@a<CR>
 \:let old_reg=@"<CR>
 \:let @a=substitute(@a, '.\(.*\)\@=',
 \ '\=@a[strlen(submatch(1))]', 'g')<CR>
 \:let @a=old_reg_a<CR>
 \:let @"=old_reg<CR>


If your Vim has +rightleft (check vim --version), the following visual mode map does the job:

vmap <Leader>fR c<C-O>:set ri<CR><C-R>"<Esc>:set nori<CR>

A map that reverses the sequence of lines (again, visual mode):

vmap <Leader>fr :<c-u>set lz<CR>'>o<Esc>'<O<Esc>V'>j:<c-u>'<+1,'>-1g/^/m '<<CR>'<dd'>dd:set nolz<CR>

Community content is available under CC-BY-SA unless otherwise noted.