多年来,我一直使用SHIFTO和SHIFT$来移动到vi中的一行的开始和结束。

然而,SHIFTO更适合在光标上方打开新行。

是否有任何命令只把你带到一行的开始?


当前回答

还有另一种方法:

|

这就是“管道”——在ANSI布局中退格下的符号。

Vim quickref (:help quickref)将其描述为:

N |到N列(默认为1)

换行行呢?

如果启用了换行,0和|将不再带您到屏幕行的开头。在这种情况下使用:

g0

你又来了

G0到屏幕行的第一个字符(与“0”不同) 当行换行时)

其他回答

尝试这个Vi/Vim备忘单解决许多问题。

正常模式: 0 -[零]到行首,第一列。 $ -到行结束

0带你到行首

Shift 0把你带到线的末端

您可以在正常模式下使用^或0(零)移动到一行的开头。

^将光标移动到一行的第一个非空字符 0总是将光标移动到“第一列”

您也可以使用Shifti移动和切换到插入模式。

可以使用0或^来移动到行首。 并且可以使用Shift+I移动到开头并切换到编辑模式(插入)。

你也可以使用

:-0

这将光标设置在当前行(此处为空白)的0列上。