3

I have a file, say

Hello A, b, c, d,
Hello A, b, c, d,
Hello A, b, c, 
d,
Hello A, b, c, d,
Hello A, b, c, 
d,
Hello A, b, c, d,
Hello A, b, c, d,

and I'd like it to look like

Hello A, b, c, d,
Hello A, b, c, d,
Hello A, b, c, d,
Hello A, b, c, d,
Hello A, b, c, d,
Hello A, b, c, d,

So I might run the command :g/^d/j and that will join the lines - but it joins the matched lines to the line after - I'd like to join the matched lines to the line before - how might I do this?

5

You need to be a little more creative with your pattern:

:g/\nd/j

We are essentially matching the line above the line with the single d.

Another solution:

:g/^d/-1j

We move one line up before we do the join.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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