Відповіді:
Спочатку з’ясуйте, яку послідовність вона генерує.
echo "CtrlVFnDelete" | od -c
Потім зв’яжіть цю послідовність, використовуючи звичайний механізм зв'язування zsh.
echo "~", ви повинні насправді слідувати вказівкам, які вам дав Ігнасіо . У моїй системі це ^[[3~(або як odвихід:) 033 [ 3 ~. Тож команда була б, bindkey "^[[3~" delete-charяка пішла б у вашому ~/.zshrc.
ctrl-vє спеціальна послідовність евакуації, яка означає "вставити наступний символ, який я натискаю як буквальний символ без нагляду, замість того, щоб робити все, що зазвичай робить". Це означає, що він не перетворюється в ~, а залишається як послідовність втечі.
0000000 C t r l V F n D e l e t e \n 0000016.
Для мене вищезгадане не зробило жодної хитрості, тому я додав до моїх наступних ключів ~/.zshrc:
bindkey "\e[3~" delete-char
FYI: Я на Mac (Висока Сьєрра).
~/.zshrc.
catа потім набрати клавіші. Fn+F1дає мені, ^[OPнаприклад.
bindkey 'CtrlvFnDelete' delete-char
Це прив’яже Fn+, Deleteщоб видалити вперед один символ. Якщо вищезгадане не зрозуміло, вам потрібно набрати Ctrl+ v, Fn+ Deleteміж введенням лапок. Ctrl+ vдозволяє вводити послідовну послідовність втечі будь-якого ключа після нього.
Ви можете помістити цей рядок у свій ~/.zshrcфайл.