从行首删除到光标

如何使用 vim 删除从行首到光标的字符。 比如,我们有一个字符串“ hello world”,而光标在“ w”上。我们怎么能从“ h”删到“ w”呢。

54001 次浏览

试试 d00表示行的开头。

我认为以下方法应该可行(d^) :

d^

这假设您只想删除到 h,即使它前面有空白。它会留下空白。

其他的建议对我来说不起作用,但我使用视觉模式来实现这一点。

我将光标移动到我想要删除的位置,然后按下 v进入视觉模式。然后我按 ^选择回到当前行的开头,然后按 d删除所有突出显示的文本。

TLDR: 最简单的方法是执行以下

  • 使用导航模式
  • 将光标设置为您想要的任意行
    • 按下 dgg-这将删除一切从光标到开始
    • 按 dG-这将删除所有的线从光标直到文档结束。

但是为什么呢?

gg - goes to the begin of the document
G - navigates at its very end
d - delete mode

我还在寻找一些与 d 和行号符号的组合,当你编辑大文件像 GB 的大小,我发现它有点烦人。 喜欢删除前3行,你需要做这个 0,d3,但是当文档超过100万行,我的眼睛很难读这个废话..。

不确定发生了什么,但是当我输入 d0时,这一行从我的 光标位置到行的开始。-You Are Awesome Dec 14’17 at 6:43

确认这个起作用了。这似乎是最简单的方法。(你不能给一条评论投赞成票,所以我把它作为自己的回答添加进来。)

示例: 在. ssh/authored_ keys 中,我有:

No-port-forward,no-agent-forward,no-X11-forward,command = “ echo‘ Please login as user“ centos”而不是 user“ root”.”; echo; sleep 10“ ssh-rsa AAAAB3NzaC1yc2..。

这就是 Amazon AWS 阻止您以 root 用户身份登录的方式。

我把光标放在 ssh-rsa 中的 s 上,点击“0”,得到了一个对行首的完美删除。

如果你的光标在“ W”上,你会向后删除..。

您可以使用 vim 的“ till”t,但是向后移动它需要一个大写的 T。 同样的工程“找到”f向后移动它的 F

因此,在您的情况下,您可以删除“直到”的引号: dT"

或者,如果更喜欢瞄准/找到“ h”: dFh

首先尝试跳转没有删除,以获得它的感觉,然后你可以只是在行动层作为前缀。

维姆快乐! :)

如果您处于插入模式并且希望删除到行的开始(并保持在插入模式下) ,则可以使用 CTRL+u

这与如图 给你所示的 CTRL+u的 bash 含义相匹配。

我不知道这是没有文档记录,还是只是我的设置(Ubuntu 上的 nevim)的一个怪异之处,但是做 :help CTRL-U显示了在插入模式下击键的帮助。也许有人可以帮助我找到指向我在这里描述的用法的帮助。