我确信曾经有一个插件这类的东西,但现在我需要它,我似乎找不到它(自然),所以我只会问nice和简单。
在括号、引号或匹配字符列表中选择最简单的方法是什么?
write ( *, '(a)' ) 'Computed solution coefficients:'
例如,这里我想选择(a),或Computed solution coefficients:。
我对多行不感兴趣,只对发生在一行上的情况感兴趣。
我确信曾经有一个插件这类的东西,但现在我需要它,我似乎找不到它(自然),所以我只会问nice和简单。
在括号、引号或匹配字符列表中选择最简单的方法是什么?
write ( *, '(a)' ) 'Computed solution coefficients:'
例如,这里我想选择(a),或Computed solution coefficients:。
我对多行不感兴趣,只对发生在一行上的情况感兴趣。
当前回答
停在括号的开头,全部选中并打印
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)
这种选择方法是内置的,并且在Vim帮助中有很好的介绍。它涵盖了XML标记等内容。
参见:help文本对象。
要在单引号之间进行选择,我通常使用vi'(“选择内部单引号”)。
在圆括号块中,我使用vib ("select inner block")
在花括号块中,可以使用viB(大写B)
要使选项“包含”(同时选择引号、圆括号或大括号),可以使用a代替i。
您可以在手册上阅读更多关于文本对象选择的内容,或者:帮助vim中的文本对象。
使用箭头或hjkl进入一个括号表达式,然后v选择可视(即选择)模式,然后%跳转到另一个括号。
我想在投票最多的答案中添加一个细节:
如果您正在使用gvim并希望复制到剪贴板,请使用
+。”这是命令< >
复制括号(或括号或花括号)之间的所有内容
例如:"+yi}将把光标所在花括号之间的所有内容复制到剪贴板。