如何在Vim中快速选择(内部)行

San*_*hal 8 vim keyboard-shortcuts editor keymapping indentation

Vim有一些非常有用的文本运动,如ib,i),i},等等快速选择文本的一部分.但是,我经常需要在线方式模式下使用内部块.例如(带行号):

1:    $foo = array(
2:        'bar' => 'Bar',
3:        'quux' => 'Quux',
4:    );
Run Code Online (Sandbox Code Playgroud)

现在,当我的光标在2号线或3的地方和我打vib或者vi),Vim会选择行2,3和第4行的缩进空间我只想线2和3.我有试过VibVi),但他们做的一样用小写字母v.

是否有任何简单的文本动作或其他快速方式在行方式模式中选择内部块?

San*_*hal 2

我最终找到了一种更简单的方法:vim-indent-object允许我根据缩进级别选择文本区域。考虑到我的源代码总是很好地缩进,这几乎是同一件事。

现在,如果我在示例中位于第 2 行或第 3 行,我只需按vii选择内部缩进对象,它就会选择第 2 行和第 3 行。Groovy!