Bagaimana cara mengaktifkan pencarian terbalik di zsh?

38

Saya baru saja beralih ke zsh (akhirnya) dan saya menyukainya! Sejauh ini satu hal yang saya lewatkan adalah Ctrl+ Runtuk melakukan pencarian riwayat tambahan.
Saya memiliki sejarah yang diatur dengan benar

HISTSIZE=10000
SAVEHIST=10000
HISTFILE=~/.zsh_history

dan saya menggunakan vibinding utama

bindkey -v

Tetapi Ctrl+ Rtidak berfungsi. Ini menghapus garis di atas garis saat ini, yang bukan perilaku yang seharusnya ada di vim juga.

Ada saran?

Ali
sumber
1
btw Ctrl[ /
penyelesaian

Jawaban:

60

Jika saya ingat dengan benar, Anda perlu mengaturnya secara eksplisit, bahkan dengan bindkey -v. Gunakan sesuatu seperti ini:

bindkey -v
bindkey '^R' history-incremental-search-backward
Chris Down
sumber
4
mungkin history-incremental-pattern-search-backwardmerupakan tindakan alternatif untuk digunakan dalam konteks itu.
maxschlepzig
2
@maxschlepzig maaf apa bedanya keduanya?
Ali
2
@ Ali, dengan versi -pola- Anda dapat menggunakan pola pencarian (gaya mana, yaitu globbing atau regex (?) Tergantung pada bagian lain dari konfigurasi zsh Anda) - seperti misalnya Anda dapat menggunakan pola pencarian fo*bardengan grepmencocokkan ' fobar ',' foobar ',' fooobar 'dll.
maxschlepzig
3
Saya mendapatkan kesalahan. Wrapping ^ R dalam tanda kutip ganda melakukannya. bindkey "^R" history-incremental-pattern-search-backward
Ramon Tayag
1
bindkey -vharus mendahuluihistory-incremental-search-backward
Deniz