我想删除vim
中一行中光标位置之后的部分。例如,一行如下所示:
abcdefghijklmn
并且光标的位置在字符c
,我想删除以d
开头的字符。换句话说,我想删除defghijklmn
并留下abc
.如何优雅地使用vim
命令?
PS:目前我只是一直按Backspace
键。
更新:如何从光标位置删除到当前行的begining
?
l(字母 ell)向右移动一个字符
D 删除直到行尾
de 删除直到单词末尾
所以它完全取决于你想要什么,如果它是一个完整的线 lD 否则 lde
如果你不熟悉 Vim(及其导航和编辑命令),你应该花 30 分钟在它附带的vimtutor
上。然后,网上有几个很好的资源、备忘单和 vi/Vim 教程。http://vimcasts.org/有几个简短的娱乐剧集,超出了基础知识。
学习如何查找命令和导航内置:help
;它很全面,并提供了许多提示。你不会像其他编辑器那样快速学习 Vim,但如果你致力于持续学习,它将证明是一个非常强大和高效的编辑器。
dt[char]
- 从光标位置删除到[char]
。
cw
- 更改单词(删除单词并进入插入模式)。
dw
- 删除一个词。
d3w
- 删除下一个单词3个。
x
- 删除光标下的字符。
D
- 从光标位置删除到当前行的末尾。
从这个来源
d$
将从光标中删除(包括它下面的字符!)到当前行的末尾,并且
d^
将从光标中删除(将字母保留在光标下方)到当前行的开头。
在您的例子中 ab[X]defghijklmn
,其中 [X] 是光标,将光标向右移动 1 并键入 d$
。