vim yavaş php omnicomplete ayıklama

1 Cevap php

Ben büyük bir proje üzerinde php omnicompletion ile vim kullanıyorum. Bir ctags dosyası kullanılarak vardır:

au FileType python set omnifunc=pythoncomplete#Complete
au FileType php set omnifunc=phpcomplete#CompletePHP
au FileType javascript set omnifunc=javascriptcomplete#CompleteJS
au FileType html set omnifunc=htmlcomplete#CompleteTags
au FileType css set omnifunc=csscomplete#CompleteCSS
au FileType xml set omnifunc=xmlcomplete#CompleteTags

set complete=""
set complete+=.
set complete+=k
set complete+=b
set complete+=t

Benim config

Şu anda omni tam 5 + saniye sonra php inşa ins tamamlayacak. Ancak <C-p> etiketleri listeden öğeleri tamamlamak olacak, benim etiketleri listeden hiçbir şey tam değil. Ben tam = t etiketleri dosyasını kontrol düşünmüştü.

Yoluyla Etiketler tamamlama <C-p> kadar inanılmaz yavaş olması benim omni tamamlanması aşağı ağırlığında emin ne çok hızlı, o kadar değil.

Ben bu proje dir vs benim ev dir taze bir. Php dosyasını düzenlerseniz omni tamamlanana inşa php hızlıdır.

Herhangi bir ipucu / yardım için teşekkürler bu hata ayıklama edilir. İdeal omni hem inşa ve tam = t docs önerdiği gibi görünüyor olarak birlikte tamamlama ctags yapıyorsa var istiyorum.

1 Cevap

Omnicompletion ve <C-p> tamamlama tamamen bağımsızdır. complete seçenek sadece <C-p> / <C-n> ve <C-x><C-l> ile tamamlanmasını etkiler. Eğer omnicompletion ayrıca etiketleri kullanmaya teşebbüs etmek istiyorsanız, o zaman bunu yapmak için tamamlama işlevi değiştirmek gerekir.

PHP durumunda, bu etiketleri dikkate yok ama o ne sadece bir parçası. Omnicompletion etiketleri tamamlanması daha yavaş nedeni daha karmaşık olmasıdır. İmleç, mevcut tamponun içeriğini ayrıştırma orada tamamlanmış olabilir bilgilerin hepsi geçerli türlü bulgu, imlecin önce metinle eşleşen ne onu sınırlayarak ve sunulması oldukça farklı olduğunu daha önce ne eşleşen bir kelime için bir etiket dosyası aranıyor söyledi.