VIM替换第一个符号中的行的更好方法
具有以下代码:VIM替换第一个符号中的行的更好方法,vim,text-editor,vi,Vim,Text Editor,Vi,具有以下代码: [Test] public void ShouldDoSomethingMeaningFull() { Assert.Fail(); } 我经常需要覆盖第(3)行Assert.Fail()。我现在做的是: 转到那行3G 选择从第一个非空白开始的所有内容^v$ 更改它-c 整个序列是:3G^v$c 虽然这对我很有效,但这不是一种有效的方法,因为我的手指会跳到“^和$”上 还有更好的办法吗 谢谢, Dmitry.对我来说,只需执行以下操作就可以更快: 3GddO 它转到第
[Test]
public void ShouldDoSomethingMeaningFull() {
Assert.Fail();
}
我经常需要覆盖第(3)行Assert.Fail()代码>。我现在做的是:
转到那行3G
选择从第一个非空白开始的所有内容^v$
更改它-c
整个序列是:3G^v$c
虽然这对我很有效,但这不是一种有效的方法,因为我的手指会跳到“^和$”上
还有更好的办法吗
谢谢,
Dmitry.对我来说,只需执行以下操作就可以更快:
3GddO
它转到第3行,删除该行,并在当前行上方插入一行(现在是右括号)O
明显的改进是3GC(C表示更改为行尾,即与3GC$相同)
如果你喜欢像Pavel Shved指出的那样改变整条线,那么也有一个不太明显的捷径。3GS与3Gcc相同
帮助文件的“进行小更改”部分提供了更多详细信息 正确的组合键应该是3Gcc
cc将替换整行(与C相反,C只替换从当前字符开始的字符),并将保留行开头的空格。我喜欢使用S
,它删除行并将您置于插入模式,保留缩进。虽然C
也可以工作,S
在线路的任何位置都可以工作。3GC-对我来说最有意义。比进入视觉模式更容易。不错。我会自己尝试使用。很好的一个,前提是G
总是跳转到行中的第一个非空白位置(看起来是这样)。很好的一个。如果cc
和C
(由Brian Rasmussen建议)是相同的。@Dmitry,它是相同的,除非设置了startofline
,这使得G
保留该列。我个人更喜欢设置它。C
将从当前字符替换到结尾cc
将替换整行,而不考虑光标的位置。另外C
将光标保留在当前位置,而cc
将光标放在第一列(因为行不是空的)。cc
和S
仅在启用自动缩进时保留缩进,如果您正在编辑代码,可能是这样。在某些终端()上使用O
可能会有问题。我认为,应该考虑一个更好的选择。这就是为什么我把它提交给KDE bugzilla不幸的是,这不起作用,因为S
将光标放在行的开头(第一列),并且不会将其设置为第一个非空白字符。@Dmitry Nagirnyak-它应该适用于您上面发布的语法。试着打开c缩进::设置Cinset这不是一个真正的编程问题。这是一个vi问题,或者更一般地说,是一个“如何使用一个软件”的问题。投票发送给超级用户(尽管这篇文章有点陈旧)。VIM不仅仅是一个“软件”。这是一个程序员工具。最好的证明是StackOverflow上“VIM”问题的数量。