如何使用visual block删除字符?

时间:2015-09-29 03:23:54

标签: vim

我通常使用visual block使用:<Ctrl-v>G$A;<Esc>在行的末尾插入分号。这非常有效。但是,当我想使用类似的键击<Ctrl-v>G$A<BS><Esc>删除分号时,它只对第一行起作用如下:

结果:

var foo = 1
var bar = 'a';
var baz = 'z';
var foobar = foo + bar;
var foobarbaz = foo + bar + baz;

预期结果:

var foo = 1
var bar = 'a'
var baz = 'z'
var foobar = foo + bar
var foobarbaz = foo + bar + baz

我做错了什么?

2 个答案:

答案 0 :(得分:2)

这就是为什么会发生这种情况: 基本上就是这样,因为一旦编辑后的文本比原始行短,Vim就不知道该怎么做,所以它会中止块编辑。

我想解决这个问题,但还没有找到解决这个问题的好方法。

答案 1 :(得分:1)

视觉范围加上命令是否足够?

:<','>norm $x

在视觉选择的每一行上运行$x(删除该行的最后一个字符)。