Below example, first line is shorter than the other lines.
I want to insert \ to all lines at the highlighted place.
enter image description here

If I press CtrlC, jjj(select all lines) , Shifti, \, only first line changed.

enter image description here

How to get below result?
enter image description here

Notice: Don't want to use :s substitute command.

  • :h v_b_A if you want to have them aligned after the physical line end, you might need to :set virtualedit – Christian Brabandt Dec 6 at 11:44
up vote 1 down vote accepted

It could be done with virtualedit=ALL:

  1. set virtualedit=all
  2. select visually vertical part of the text
  3. A\<ESC>
  4. return set virtualedit=block

See the screen:

enter image description here

  • This also works with virtualedit=block. Start visual block mode at the end of the first line. Then move down to the last line. Finally move to the right as far as you want. Then enter A\<ESC>. No need to change virtualedit setting. – Ralf Dec 6 at 19:50

The short answer is: In Visual Block mode select lines to their ends ($) and use A to append some text at the end of each line.

The longer answer:

  • gg to go the beginning of the first line.
  • CTRL-V (or the proper alternative CTRL-Q in e.g. gVim) to start blockwise visual selection.
  • jjj$ select all four lines down (jjj) and to the right until their individual ends ($).
  • A start appending some text ('\' in your case).
  • ESC

In fact this is not exactly your desired result, but functually equal and achievable with a minimum effort and time:

short line \
very long line \
very very long line \
short line \
  • I like this answer because it doesn’t require the fancy alignment: in my experience, alignment of line continuations is too much effort to maintain. – D. Ben Knoble Dec 6 at 19:32

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.