Wikia

Vim Tips Wiki

Changes: Replace a visual-block of text with another such block

Edit

Back to page

(fix DrChip changed URL + minor manual clean)
(Change <tt> to <code>, perhaps also minor tweak.)
 
Line 13: Line 13:
 
}}
 
}}
 
One may overwrite a visual-block of text with another visual-block of text by:
 
One may overwrite a visual-block of text with another visual-block of text by:
*Select the first block: <tt>ctrl-v move "ay</tt>
+
*Select the first block: <code>ctrl-v move "ay</code>
*Select the second block: <tt>ctrl-v move c ctrl-o "aP <Esc></tt>
+
*Select the second block: <code>ctrl-v move c ctrl-o "aP <Esc></code>
   
 
==Comments==
 
==Comments==
Line 22: Line 22:
 
*Move cursor to another location, hit \vr (the backslash is actually <Leader>, so folks may customize that easily).
 
*Move cursor to another location, hit \vr (the backslash is actually <Leader>, so folks may customize that easily).
   
That sequence will replace the text in a visual-block fashion below the cursor. One may repeat the <tt>\vr</tt> multiple times for additional replacements.
+
That sequence will replace the text in a visual-block fashion below the cursor. One may repeat the <code>\vr</code> multiple times for additional replacements.
   
 
For visswap.vim, see [http://www.drchip.org/astronaut/vim/index.html#VISSWAP Visual Mode Based Swapping].
 
For visswap.vim, see [http://www.drchip.org/astronaut/vim/index.html#VISSWAP Visual Mode Based Swapping].

Latest revision as of 05:49, July 13, 2012

Tip 808 Printable Monobook Previous Next

created 2004 · complexity intermediate · author Chip Campbell · version 6.0


One may overwrite a visual-block of text with another visual-block of text by:

  • Select the first block: ctrl-v move "ay
  • Select the second block: ctrl-v move c ctrl-o "aP <Esc>

CommentsEdit

Based on the current tip, I've added a little extension to visswap.vim which allows one to

  • Select a region using Ctrl-v + motion (visual block).
  • Press Escape.
  • Move cursor to another location, hit \vr (the backslash is actually <Leader>, so folks may customize that easily).

That sequence will replace the text in a visual-block fashion below the cursor. One may repeat the \vr multiple times for additional replacements.

For visswap.vim, see Visual Mode Based Swapping.


To make second block exactly same size as first instead of <Ctrl-v> move hit 1<Ctrv-V>

This will make a rectangular selection of exactly same size as previous one using current cursor position as top left corner. Unfortunately it does not (always? yet?) work with multibyte encodings, so be careful if you use them.


Around Wikia's network

Random Wiki