我们说我有以下三行,光标在where是:
1. This is a slightly longer line.▐I want to delete this and the next line.
2. This is a shorter line
3. This is the third line
我想删除光标和第2行的其余部分,所以我做了vjd
,但这样就留下了我的文字:
# This is a slightly longer line.# This is the third line
这是因为在视觉模式下选择文本时,vim会在行尾选择一个额外的虚拟角色。我曾与virtualedit
玩过,但这似乎没什么帮助。
关于如何获得我想要的原始行为的任何线索?
答案 0 :(得分:0)
尝试三次击键 - sh-d,sh-j,sh-d
shift-d(删除到行尾)
shift-j(与此合并下一行)
shift-d(删除合并的,即第二行
这将为你做到这一点。
答案 1 :(得分:0)
那是因为如果您没有设置virtualedit,vjd
将删除包括新行字符在内的所有内容。所以你只需做vjhd
代替,以保持新线完整。
否则virtualedit=all
,我不会遇到这个问题。