我使用一个JavaScript代码示例: 1 var a = 1; 2 var b = |{}; 光标位于|(当光标形状为块时,在字符“ {”上的位置)上,我发现我a应该被分配一个对象,因此我想如下进行修改: 1 var a = {}; 所以我想知道当光标在“ {”上时,如何快速删除“ {”之前的所有内容,直到第1行中“ =“”之后的空白? 在其他普通编辑器中,我将按Backspace键删除代码。但是我不怎么在vim中实现这一目标。
假设我有以下非常简单的文件 a b c d e 并且我决定要在每行之后添加空行。我立即想到了几种不同的方法。我们可能会这样做(从而接受失败)。我们可能会录制一个类似的宏,qqo<ESC>jq并重复几次。 在我看来,另外两种方法似乎更明显。 首先,我想我会在每行上发出:norm命令o。所以我跑了:%norm o。但是实际发生的是,我们得到5条空行,然后是上面未分隔的行。我的解释是%norm,vim实际上在这五行文件的前五行中接收了以下普通命令发出的消息。该o命令创建新行,并且vim是“哑”的,因为它是通过行号而不是实际上通过其他标识符来引用的。 好吧,我很尴尬。当然。我尝试了其他一些方法,看看是否可以使上述方法起作用,但是,我不能。出于好奇,我尝试了另一种我最喜欢的大规模应用方法。这导致我尝试:g/^/norm o。令我惊讶的是,这很好!因此,在我看来,这里的vim似乎并不像上面那样“愚蠢”,并且引用行的不仅仅是行号。 到底是怎么回事?