vim otomatik tamamlama: vim bazı dahil dosyaları okumak nasıl önlenir?


10

Vim, imlecin altındaki kelimeyi geçerli dosyada veya dahil edilen herhangi bir dosyada otomatik olarak tamamlayan kullanışlı Ctrl-N tuşuna sahiptir. Bir kez boost kütüphanesini eklersem, bu özellik kesinlikle işe yaramaz hale gelir, çünkü tüm boost içeriklerini okumak onlarca saniye alır ve gerçekten de boostta tanımlanan hiçbir şeyi tamamlamak istemiyorum. Öyleyse vim'e, içerme dosyalarını ararken / usr / include / boost dizinini yoksaymasını nasıl söyleyebilirim? Nasıl #include <boost /.*> yoksaymak için 'dahil' seçeneğini nasıl ayarlayabilirim?

vim 

Yanıtlar:


16

Aradığınız seçenek 'tamamlandı' , ancak istediğiniz ayrıntı düzeyini tanımlamıyor. Tek yapabileceğiniz, dahil edilen dosyaların taranıp taranmayacağını belirtmektir. Dahil olan tüm dosyaların taranmasını devre dışı bırakmak için şunları yapabilirsiniz:

set complete-=i

Aksi takdirde, takviyeyi 'include'yoksaymak en iyi seçenek olabilir.

set include=^\\s*#\\s*include\ \\(<boost/\\)\\@!

Diğer yorumumda "belirttiğim gibi, seçeneği Vim'in yorum karakteri olarak belirtmek için kullanmamalısınız . Bunun yerine, boşluklardan kaçmanız gerekiyor.


1

Tamam, ikinci bölüme cevap buldum:

set include="#include \\(<boost\\)\\@!"

Aslında, dahil et seçeneğinin ayarını kaldırdınız. "Vim'in yorum karakteri, bu yüzden 'set include ='
komutunu
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.