4

在下面的代码片段中,如果我转到以(开头的行的第一个左括号(spit

(defn missing-accts 
    "Prints accounts found in one report but not the other."

    [report-header mapped-data out-file]
    (spit out-file (str "\n\n    " 
          (count mapped-data) 
          "   " report-header 
          "\n\n") :append true)
          .
          .
          .

vim 突出显示第一个括号(和右)括号。

是否有,如果有,什么是 vim 命令可以拉动整个 spit 命令?

谢谢。

4

3 回答 3

9

序列

va(

将突出显示从开始到结束的括号,然后 ay将拉动它。请注意,与%命令不同的是,您不必位于括号上 - 您只需要位于子句内即可。

注意

vi(

将突出显示括号的所有内容,但不突出括号。

您也可以对大括号({而不是()和 XML 标签(t-大概是标签)执行此操作

于 2012-06-22T15:38:36.673 回答
7

Vim 确实有这样的命令,幸运的是它非常简单。只需键入y%.

之所以可行,是因为这%就是 Vim 所说的移动命令。它从一个分隔符移动到匹配的分隔符——在您的情况下,从左括号移动到右括号。如果调用为 ,该y命令将单行拖入 Vim 的缓冲区yy,但第二行y不是必需的。取而代之的是,可以发出类似的移动%,然后 Vim 会拉动移动的文本。因此,y%.

于 2012-06-22T15:39:30.857 回答
2

将 % 与 y 一起使用。按“y”一次,然后按“%”,当你输入命令时,你的光标应该在“(”上。

于 2012-06-22T15:38:38.377 回答