Di Zsh secara default tabkuncinya terikat expand-or-complete
. Saya ingin secara sistematis mengakses daftar kandidat yang telah selesai diproduksi oleh penekanan tab, sehingga saya dapat menulis fungsi saya sendiri dan memfilter daftar sendiri. Saya mengerti bahwa ada "kerangka penyelesaian" yang datang dengan Zsh tapi saya ingin melakukannya sendiri.
Ada juga list-choices
fungsi / widget yang menghasilkan output yang sama seperti expand-or-complete
tetapi tidak menawarkan fungsi tab cycling.
Saya telah melakukan pencarian yang cukup luas di Google dan juga mencolek sumber Zsh tetapi muncul kering. Bantuan apa pun akan dihargai.
zsh
autocomplete
John Lunzer
sumber
sumber
Jawaban:
Secara tidak langsung berkat JakeGould saya stumbled atas satu solusi:
zsh-capture-completion
. Sebenarnya ada dua lainnya pertanyaan yang hampir identik pada situs Unix Stack Exchange, baik dengan jawaban yang saya berikan di sini.Kode sumber skrip untuk
zsh-capture-completion
dapat ditemukan di sini:Berikut ini adalah contoh penggunaan skrip:
Perhatikan karakter spasi dalam perintah di atas. Dengan spasi skrip menyediakan daftar folder yang dapat Anda
cd
masuki dari direktori saat ini. Tanpanya script akan menyediakan semua penyelesaian untuk sebuah perintah yang dimulai dengancd
.Saya juga harus mencatat bahwa bahkan penulis script / plugin yang disediakan menganggap solusinya "hacky". Jika ada yang tahu solusi yang lebih pendek atau lebih lurus saya akan senang menerimanya sebagai jawabannya.
sumber