Keterlambatan dalam pencocokan braket Vim dengan sintaks PHP default

8

Saya mengalami kelambatan yang terlihat pada fitur bracket-matching dan -highlighting Vim. Ketika kursor ditempatkan di atas tanda kurung atau braket, ada penundaan sekitar 300 ms pada respon konsol. Seperti yang dinyatakan, ini sepertinya hanya terjadi ketika bekerja dengan file PHP. Saya menjalankan Vim 7.2 pada Debian Squeeze dengan file .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

Apakah ada cara untuk mengurangi perlambatan ini?

melenguh
sumber

Jawaban:

2

Saya tidak melihat ini secara lokal; parens yang cocok langsung disorot. Coba ini:

:set filetype=txt

... dan lihat apakah semuanya membaik. Jika demikian, sesuatu dalam konfigurasi penanganan PHP vim mungkin sedikit rusak. Apakah Anda melihat perilaku yang sama pada file PHP yang sangat kecil? Saya menggunakan 7.2 di ubuntu dan tidak melihat apa yang Anda lihat.

Semoga ini membantu!
-Paul

PEMBARUAN: terima kasih telah memperbarui pertanyaan Anda untuk memasukkan .vimrc Anda - ini mengarah ke hal lain untuk Anda uji. Silakan lihat apakah ini tidak membantu situasi - ubah php_folding menjadi 1 daripada 2. 2 lipat semua {} area jadi ini mungkin entah bagaimana berinteraksi dengan logika pencocokan parens dan menyebabkan penundaan.

pbr
sumber
Juga Anda mengatakan "pada konsol responsif" - apakah Anda menjalankan vim di terminal emulator, atau pada konsol virtual (ctrl-alt-F1 misalnya)?
pbr
7

Ketik ini untuk mematikannya per instance:

:NoMatchParen

(huruf besar itu penting)

Tambahkan ini ke ~ / .vimrc Anda untuk menonaktifkannya sebelum modul dimuat:

let loaded_matchparen = 1

Anda hanya butuh satu. Dengan yang pertama, Anda harus mengetiknya setiap kali Anda membuka file PHP, tetapi Anda dapat menyalakannya lagi kapan saja. Dengan yang kedua, selalu mati, tetapi Anda tidak bisa begitu saja menyalakannya lagi.

quack quixote
sumber