views:

89

answers:

2

How come in Vi, when I hit $, it goes to the last character in the line instead of the end of the line character? How would I go to the end of the line character in one keystroke, and what is the fastest way to delete the end of the line character?

A: 

You could use the sequence 'A Del ESC' to delete the newline character from a line.

A: Append after line

more information can be found here: http://www.lagmonster.org/docs/vi.html

sum1stolemyname
+7  A: 

How come in Vi, when I hit $, it goes to the last character in the line instead of the end of the line character?

Because that’s sufficient for anything you might want to achieve.

How would I go to the end of the line character in one keystroke

You basically never need to. You just do different things in the next step depending on what you wanted to achieve by going to the newline character. Eg.:

what is the fastest way to delete the end of the line character?

Just hit J to join the lines. (If you have autoindent or friends enabled, that will even take care of removing indentation from the joined line for you.) Follow up with an x if you didn’t want the extra space character you just got; or use gJ to begin with, instead.

Aristotle Pagaltzis
+1: Good explanation. You can also use `gJ` instead of `Jx` to join without a space (has the advantage of being a single operation, so `.` will repeat the join rather than the character delete).
Al
Ah, nice. I had not stumbled into that one. I’ve amended my answer correspondingly.
Aristotle Pagaltzis