Jawaban:
Pertama cari tahu urutan apa yang dihasilkannya.
echo "CtrlVFnDelete" | od -c
Kemudian ikat urutan itu menggunakan mekanisme ikat zsh normal.
echo "~", Anda harus benar-benar mengikuti petunjuk yang diberikan Ignacio kepada Anda. Di sistem saya, ini ^[[3~(atau sebagai odoutput:) 033 [ 3 ~. Jadi perintah akan menjadi bindkey "^[[3~" delete-charyang akan masuk di Anda ~/.zshrc.
ctrl-vadalah urutan pelarian khusus yang berarti "menyisipkan karakter berikutnya yang saya tekan sebagai karakter yang tidak dilepaskan secara harfiah, alih-alih melakukan apa pun yang biasanya dilakukannya." Artinya tidak dikonversi ~, tetapi tetap sebagai urutan pelarian.
0000000 C t r l V F n D e l e t e \n 0000016.
Bagi saya hal di atas tidak berhasil, jadi saya menambahkan kunci berikut yang mengikat saya ~/.zshrc:
bindkey "\e[3~" delete-char
FYI: Saya menggunakan Mac (High Sierra).
~/.zshrc.
catdan mengetikkan kunci. Fn+F1memberi saya ^[OPmisalnya.
bindkey 'CtrlvFnDelete' delete-char
Ini akan mengikat Fn+ Deleteuntuk menghapus maju satu karakter. Jika hal di atas tidak jelas, Anda harus mengetikkan Ctrl+ v, Fn+ di Deleteantara mengetikkan tanda kutip. Ctrl+ vmemungkinkan Anda mengetik urutan escape secara literal dari kunci apa pun yang muncul setelahnya.
Anda dapat meletakkan baris ini di ~/.zshrcfile Anda .