【问题标题】:Vim: brace matching unreliableVim:大括号匹配不可靠
【发布时间】:2011-11-25 20:02:40
【问题描述】:

我正在使用 Vim 通过 JavaScript 编辑 JSP 文件。不知何故,% 键(跳转到匹配的大括号)大部分时间都不起作用:有时它起作用,有时它只在一个方向起作用,但大多数时候它根本不起作用。当然 Vim 能够突出显示正确的匹配大括号,但 matchit.vim 似乎没有找到它。我正在使用插件的最新版本(1.13.2)。

例子:

<s:layout-component name="extra_styles">
@import "${mediaPath}/css/whatever.css";
.test .someclassname {
    top: 5px;
    left: 32px;
}
</s:layout-component>

这里找不到匹配的花括号。

有人知道解决办法吗?

【问题讨论】:

  • 有人知道这个问题吗?
  • 我加了一个小例子。

标签: vim plugins macvim


【解决方案1】:

我认为这与 JSP 语法定义有关:我将您示例中的文件类型更改为 css:matchit 正确地从一个大括号跳转到另一个大括号。将文件类型改回 jsp 会让 matchit 头晕目眩。

:set ft=css.jsp 似乎允许正确的 matchit 行为和 CSS 全方位补全。看看它是否不会破坏 jsp 前端的任何内容。

【讨论】:

  • 不错的尝试,但这会破坏 JSP 和 HTML 标记的 % 标记匹配。
  • 我不认为 matchit 应该适用于不属于该语言的对。花括号是 CSS 的一部分,但不是 JSP 的一部分,所以 matchit 不能发挥它的魔力。
【解决方案2】:

我遇到了同样的问题:% 不会跳转到匹配的 {}。这是我的解决方法:

:let b:match_debug=1

% 在那之后开始跳舞。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2016-10-03
    • 2021-10-12
    • 1970-01-01
    • 2011-05-30
    • 1970-01-01
    • 2018-03-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    相关资源
    最近更新 更多