【问题标题】:Line matching and the "n" (next) command in VimVim 中的行匹配和“n”(下一个)命令
【发布时间】:2011-07-10 06:26:12
【问题描述】:

我经常使用搜索模式原子\%<nr>l. 来匹配行或\%<nr>c. 来匹配列。

如果我使用这些原子,有谁知道为什么我不能使用 n(next) 命令转到下一场比赛?

例如,考虑/\%4l.\|\%6l.(匹配第 4 行和第 6 行)。当光标位于第 4 行时,按 n 不会将光标移动到第 6 行;它只是转到下一个字符。

有没有办法一键进入下一场比赛?

【问题讨论】:

    标签: vim match next


    【解决方案1】:

    模式/\%4l.\|\%6l. 规定匹配 第四行,或第六行的任何字符。第一次之后 第四行的字符匹配,下一次出现这个 模式将是同一行的第二个字符,然后是一个 之后依此类推,直到该行的最后一个字符。它移动 只有当第四行的所有字符都有 已匹配。

    【讨论】:

    • 谢谢。有没有办法去“下”行?
    • @Remonn:不知道您要解决什么问题,我建议对模式进行以下修改:^\%4l\|^\%6l。在匹配行上指定特定位置的任何其他模式(例如\%4l\_$\|\%6l\_$\%4l\%5c\|\%6l\%3c)也可以工作。
    • 嗨 ib,你给了我一个更简单的解决方案:$n (go to end of line, n)
    • @Remonn:是的,如果特定的行号(比如这里的 4 和 6)不重要,您可以只搜索一行的开头或结尾(任何行都有)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-09
    • 1970-01-01
    • 2019-01-02
    相关资源
    最近更新 更多