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.