我知道如何在命令模式下移动,特别是跳转到行等等。但是,跳到我当前所在行的末尾的命令是什么呢?


当前回答

只有$(美元符号)键。您可以使用A移动到行尾并切换到编辑模式(追加)。要跳过最后一个非空白字符,可以按g键然后按_键。

A的反面是I(在行开始处插入模式),作为旁白。只按^将把光标放在该行的第一个非空白字符上。

其他回答

按A进入编辑模式,从行尾开始。

还要注意线条(或者物理线条)和屏幕线条之间的区别。一行以行结束符("\n")结束。屏幕行是在终端或屏幕上显示为一行字符的任何东西。如果你的物理行比屏幕宽度长,这两者就会分开,这种情况在写电子邮件等时很常见。

这种区别也体现在行尾命令中。

$和0分别移动到物理行或段的末尾或开头: G $和g0分别移动到屏幕行或段落的末尾或开头。

如果你总是喜欢后一种行为,你可以像这样重新映射键:

:noremap 0 g0
:noremap $ g$

最简单的选择是输入$。如果您正在处理文本块,您可能会喜欢使用命令{和},以便分别向前和向后移动一个段落。

在标准终端中使用vim时,我看不到macbook的热键。希望它能帮助到一些人。 macOS用户(在macbook pro 2018上测试):

Fn +←-移动到起始线 Fn +→-移动到结束线 Fn +↑-向上移动页面 Fn +↓-向下移动页面 Fn + g -移动光标到文档的开头 Fn + shift + g -移动光标到文档的末尾

对于最后两个命令,有时需要点击两次。

“结束”键的优点是它可以在正常模式和插入模式下工作。

'$'只能在普通/命令模式下工作,但它也可以在经典的vi编辑器中工作(知道vim不可用是件好事)。