oh-my-zsh tarihinin tamamlanması


45

Son zamanlarda robbyrusselloh-my-zsh kullanarak, zsh geçti . Ondan önce bash ile çok özel şeyler kullandım ve sadece bir şeyi özlüyorum çünkü zsh 'çok akıllı' olmaya çalışıyor:

Eğer yazarsam git commitve sonra zsh tüm son gitkomutlardan geçer. Gerçekte istediğim şey, onunla başlayan tüm komutlardan geçiyor git commit(sadece değil git).

Bu davranışı (oh-my-) zsh'da nasıl başarabilirim?


Garip, OMZSH kullanıyorum ve böyle davranıyor. Zshrc'nizde 'plugins = (git)' var mı?
Chris2048

evet yaparım, ama sadece git için değil, tüm komutlar bu şekilde tamamlanır.
Patrick Oscity

Yanıtlar:


66

Sorunumun çözümünü ZSH belgelerinde buldum . Oh-my-zsh, ve şunun gibi bir şeyle eşleşiyor gibi görünüyor

bindkey '\e[A' history-search-backward
bindkey '\e[B' history-search-forward

Yukarıda tarif ettiğim davranışların sonucunu verir. ZSH Belgeleri history-search-backwardolarak davranışını açıklar.

Tampondaki ilk sözcükle başlayan bir satır için geçmişe geriye doğru arama yapın .



Bunun yerine istediğim, benim içine eklediğim aşağıdaki haritalama oldu ~/.zshrc:

bindkey '\e[A' history-beginning-search-backward
bindkey '\e[B' history-beginning-search-forward

Davranışı history-beginning-search-backwardşöyledir:

İmlecin geçerli satırından başlayarak bir satır için geçmişte ileriye doğru arama yapın . Bu, imleci orijinal konumunda bırakır.

Ayrıca, \e[Ayukarı veya aşağı oklar için işe yaramazsa, <ctrl-v><KEY (e.g., up arrow)>veren başka bir terminale basın ^[OA. O zaman bunu yerine kullanabilirsiniz \e[A. İşlem burada açıklanmaktadır: http://zshwiki.org/home/zle/bindkeys


1
Teşekkürler teşekkürler teşekkürler!! Bunun üzerine
çıldırıyordum

Benim gibi OMZ olmayan kullanıcılar için: bindkeybir hata nedeniyle gerçek bir şey yapmaz, bu yüzden OMZ ekibi bu eklenti ile onu ekler . Basitçe indirin ve daha önce kaynak bindkey.
Franklin Yu

@ FranklinBu toplam bs olduğunun farkındasın, değil mi? Bu eklenti bazı olayları yakalamak için KULLANIM dışında bindkey ile hiçbir şey yapmaz.
non chip

Vay, bu mükemmel!
Sincap

12

Aynı davranışı zsh için oh-my-zshyüklü ve eklenti bulmayı da istedim history-substring-search.

Eklentiyi benim ekleyerek ekleyerek yukarıda açıklanan aynı davranışı elde ettim ~/.zshrc:

plugins=(git brew npm history-substring-search)

Sanırım bu eklenti bu soru ortaya çıktığında geri gelmedi. Aynı şeyi başarmanın sadece alternatif bir yolu.

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.