我确信曾经有一个插件这类的东西,但现在我需要它,我似乎找不到它(自然),所以我只会问nice和简单。

在括号、引号或匹配字符列表中选择最简单的方法是什么?

   write ( *, '(a)' ) 'Computed solution coefficients:'

例如,这里我想选择(a),或Computed solution coefficients:。

我对多行不感兴趣,只对发生在一行上的情况感兴趣。


当前回答

要在单引号内进行选择,请使用vi'。

要在括号内进行选择,请使用vi(。

其他回答

在vim中使用一个简单的键映射就可以解决这个问题。 map viq F " lvf " hh 上面的命令将viq映射到用于在引号之间搜索的键。将“替换为任何字符并创建您的键映射。 在启动期间将此插入vimrc,您应该能够每次都使用它。

要在单引号内进行选择,请使用vi'。

要在括号内进行选择,请使用vi(。

我想补充一些已经很好的答案。我来这里寻找一种方法来改变html括号内的文本,所以我想为其他人提供一个答案,也在寻找它。

你可能认为ci<可以工作,但实际上只有当你在其中一个标签内部时才可以工作:

<would work inside here> But not here </would work inside here>

我想要的是改变html标签之间的文本本身:

<div>change me</div>

我想要的是“改变内部标签”:cit

感谢另一个提到文档(:help text-objects)的答案,这就是我如何找到我正在寻找的东西。

停在括号的开头,全部选中并打印

vi' 

vi(

vi[ 

vi{

vi<

vi"

如果要删除,请将vi替换为di

使用searchpair内置函数在.vimrc中编写一个Vim函数:

searchpair({start}, {middle}, {end} [, {flags} [, {skip}
            [, {stopline} [, {timeout}]]]])
    Search for the match of a nested start-end pair.  This can be
    used to find the "endif" that matches an "if", while other
    if/endif pairs in between are ignored.
    [...]

(http://vimdoc.sourceforge.net/htmldoc/eval.html)