Vim 使用默认 PHP 语法进行括号匹配时速度很慢

Vim 使用默认 PHP 语法进行括号匹配时速度很慢

我明显感觉到 Vim 的括号匹配和高亮功能运行缓慢。当光标放在括号或方括号上时,控制台的响应速度会延迟约 300 毫秒。如前所述,这种情况似乎只发生在处理 PHP 文件时。我在 Debian Squeeze 上运行 Vim 7.2,并带有一个 .vimrc 文件:

  1 set autoindent
  2 set smarttab
  3 set ruler
  4 set expandtab
  5 set termencoding=utf-8
  6 set fileformat=unix
  7 set number
  8 set tabstop=4
  9 set encoding=utf-8
 10 set shiftwidth=4
 11 set noswapfile
 12 set backspace=indent,eol,start
 13 set shortmess=lrwxI
 14 set history=50
 15 set background=dark
 16
 17 let php_folding=2
 18 let php_asp_tags=0
 19
 20 colorscheme desert

有什么方法可以缓解这种放缓吗?

答案1

我在本地看不到这个;匹配的括号会立即突出显示。试试这个:

:set filetype=txt

...看看情况是否有所改善。如果是这样,vim 的 PHP 处理配置中可能有些问题。您是否在非常小的 PHP 文件上看到同样的行为?我在 ubuntu 上使用 7.2,没有看到您所看到的情况。

希望这有帮助!
-保罗

更新:感谢您更新您的问题以包含您的 .vimrc - 这会导致您需要测试另一件事。请看看这是否对情况有帮助 - 将 php_folding 更改为 1 而不是 2。2 折叠所有 { } 区域,因此这可能以某种方式与括号匹配逻辑交互并导致延迟。

答案2

键入以下命令来关闭每个实例:

:NoMatchParen

(大写很重要)

将其添加到您的 ~/.vimrc 以在模块加载之前禁用它:

let loaded_matchparen = 1

您只需要一个。使用第一个,您每次打开 PHP 文件时都必须输入它,但您可以随时将其重新打开。使用第二个,它始终处于关闭状态,但您不能简单地将其重新打开。

相关内容