Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Vim中更改文本矩形_Vim_Insert_Block - Fatal编程技术网

在Vim中更改文本矩形

在Vim中更改文本矩形,vim,insert,block,Vim,Insert,Block,在中,可以使用I命令一次在多行中插入文本,如中所示。然而,这只适用于真正的插入。如果我想同时删除一些字符,这是行不通的 例如,我想要改变 000 one 000 two 000 three 000 four 到 为此,我会调用^v3gglx从前三行中删除000,然后^V3ggI111^[将111插入相同的位置,这对我来说很尴尬。 (上面的意思是,进入视觉分块模式,标记前三行中的所有零并将其删除。然后再次进入视觉分块模式,标记前三行的开始,进入多行插入模式,插入111并使用Esc退出。) 一定有

在中,可以使用
I
命令一次在多行中插入文本,如中所示。然而,这只适用于真正的插入。如果我想同时删除一些字符,这是行不通的

例如,我想要改变

000 one
000 two
000 three
000 four

为此,我会调用
^v3gglx
从前三行中删除000,然后
^V3ggI111^[
将111插入相同的位置,这对我来说很尴尬。 (上面的意思是,进入视觉分块模式,标记前三行中的所有零并将其删除。然后再次进入视觉分块模式,标记前三行的开始,进入多行插入模式,插入111并使用Esc退出。)


一定有更好的方法可以做到这一点。最烦人的是,我必须在删除零后再次选择区域。如果删除后仍然选择该区域,则可以。如果可以在多插入模式下删除字符,也可以。但如果我尝试此操作,则只会更改第一行

重新选择是简单而快速的
gv
;然后您可以使用
I111^[
插入新文本。但是,正如@melpomene的回答所示,这实际上是不必要的


(但我想我会提到它,这样你就可以在其他情况下应用这一新知识。)

重新选择是简单而快速的
gv
;然后你可以使用
I111^[
插入新文本。但是,正如@melpomene的回答所示,这实际上是没有必要的


(但我想我会提到它,以便您可以在其他情况下应用此新知识。)

或者,由于您要替换为同一个字符,您可以在选择以下内容后使用
r

^V2jer1
这样做的好处是完全避免了插入模式


顺便说一句,
3G
完成了与
3gg

相同的任务。另外,由于您要替换为相同的字符,您可以在选择以下内容后使用
r

^V2jer1
这样做的好处是完全避免了插入模式


顺便说一句,
3G
完成了与
3gg

相同的任务,一旦您选择了
0
s列,用
1
s替换它们就像点击
r1
一样简单:

<C-v>2jer111

一旦选择了
0
s列,用
1
s替换它们就像点击
r1
一样简单:

<C-v>2jer111

使用
^A
的有趣方法,但请注意,如果
nrformats
包括
octall
(默认情况下是这样的),Vim将
000
解释为八进制,而
000
上的
111^A
导致
0157
73^A
将给出
0111
,但仍然是前导零。我总是忘记我的设置不是每个人的设置;-
^A
的有趣方法,但请注意,如果
格式
包括des
octall
(默认情况下会这样做),Vim将
000
解释为八进制,而
000
上的
111^A
结果为
0157
73^A
将给出
0111
,但仍有一个前导零。我总是忘记我的设置不是每个人的设置;-)多亏了大家。这个特定问题的最佳答案当然是melpomenes,但其他答案也提供了其他非常有用的提示。谢谢大家。这个特定问题的最佳答案当然是melpomenes,但其他答案也提供了其他非常有用的提示。
V2j:norm 111<C-a>