在VI中不打开新行就转到行首

多年来,我一直使用转变O转变来移动到vi中的一行的开头和结尾。

然而,转变O更多地用于在游标上方打开新行。

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

212803 次浏览

输入“^”。并获得一个好的“Vi”教程:)

我刚刚发现0(零)和shift+0工作在vim。

一个简单的0会把你带到一行的开头。

:help 0获取更多信息

你可以在正常模式下使用0 (Zero)来移动到一行的开头。

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

你也可以使用转变来移动和切换到插入模式。

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

正常模式:
0 -[0]到行开始,第一列 $ -到行尾

你可以使用0移动到行首 并且可以使用转变+移动到开头并切换到编辑模式(插入)

还有另一种方法:

|

这就是“pipe”——在ANSI布局中的退格符下找到的符号。

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

N      |      to column N (default: 1)

换行行呢?

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

g0

再次,vim quickref doc:

 g0   to first character in screen line (differs from "0"
when lines wrap)

0带你到行开始

转变0带你到队伍的末尾

使用插入模式将光标移动到开始或结束

  • I -将光标移动到当前行中第一个非空字符,并启用插入模式。
  • A -将光标移动到当前行中的最后一个字符,并启用插入模式。

这里I等价于^ + i。类似地,A等价于$ + a

只要把光标移到开头或结尾

  • ^ -将光标移动到当前中第一个非空白字符 李线< / >
  • 0 -将光标移动到当前行中的第一个字符
  • $ -将光标移动到当前行中的最后一个字符

你也可以使用

:-0

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