ZSH sekmesi git komutlarının tamamlanması çok yavaş. Nasıl kapatabilirim?


18

Eğer yazarsam:

rm <TAB>

Neredeyse anında olası tamamlamaları göreceğim.

Ancak şunu yazarsam:

git rm <TAB>

Git deposundaysa birkaç saniye bekler veya git deposundaysam herhangi bir tamamlama gösteremez.

Bu davranışı nasıl düzeltebilirim?

.Zshrc dosyamda git ile bir ilgisi yok gibi görünüyor: - /


+1 Bu beni çok zorluyor <TAB>Git kullanırken beynimi vurmamaya bağladım.
Christopher,

Yanıtlar:


26

Sonunda bunu google için rahatsız ve bu benim için mükemmel çalıştı bu SO cevap geldi . Şunu ekle .zshrc:

__git_files () { 
    _wanted files expl 'local files' _files     
}

Burada , bu kadar uzun sürecek ne olduğunu açıklayan derin bir posta listesi iş parçacığı da varzsh .


1
Bu benim için işe yaramadı. Aşağıdaki oh-my-zsh eklentilerini yüklüyorum: plugins = (git gitfast-dir-working git zeus). Eklentilerden sonra yukarıdaki işlevi yükledim.
Gordon

1
Ben de aynı problemi yaşadım. Başarıyı doğrulamak için yorum yapma: OSX 10.8.5, zsh 4.3.11, git 1.8.2'de .zshrc girdisi tüm farkı yarattı. Onsuz, cpu düzenli olarak% 100 oranında sabitlendi. Bununla beraber, sekme tamamlama git komutları için diğerleriyle aynı görünüyor. Teşekkür ederim! :)
cweekly

Bu komutu zsh eklentilerinizden önce koyduğunuzdan emin olun , aksi takdirde hızlı otomatik tamamlama ile bitebilirsiniz, ancak bir kez gerçekten git komutunu çalıştırmayı denediğinizde hatalar olabilir.
Simon,

1

İşte başka bir seçenek: resmi Git zsh tamamlama: git-finishion.zsh . Yapmanız gereken tek şey, bunu indirmek ~/.zsh/_gitve sizin fpath içinde olduğundan emin olmak için:

fpath=(~/.zsh $fpath)

Bu konunun başka bir cevapta belirtildiğini ilginç buluyorum ; Bu konuya başladım ve sonuç olarak resmi Git zsh tamamlamasını yazdım.

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.