How can I add a string to the end of each line in Vim?
Even shorter than the :search command:
:%norm A*
This is what it means:
% = for every line
norm = type the following commands
A* = append '*' to the end of current line
:%s/$/\*/g
should work and so should :%s/$/*/g
.
I think using visual block mode is a better and more versatile method for dealing with this type of thing. Here's an example:
This is the First line.
This is the second.
The third.
To insert " Hello world." (space + clipboard) at the end of each of these lines:
- On a character in the first line, press Ctrl-V (or Ctrl-Q if Ctrl-V is paste).
- Press jj to extend the visual block over three lines.
- Press $ to extend the visual block to the end of each line. Press A then space then type Hello world. + then Esc.
The result is:
This is the First line. Hello world.
This is the second. Hello world.
The third. Hello world.
(example from Vim.Wikia.com)
Also:
:g/$/norm A*
Also:
gg<Ctrl-v>G$A*<Esc>