Antworten:
Stellen Sie zunächst fest, welche Sequenz generiert wird.
echo "CtrlVFnDelete" | od -c
Binden Sie diese Sequenz dann mit dem normalen zsh-Bindungsmechanismus.
echo "~", Sie müssen tatsächlich den Anweisungen folgen, die Ignacio Ihnen gegeben hat. Auf meinem System ist es ^[[3~(oder als odAusgänge:) 033 [ 3 ~. Das Kommando wäre also bindkey "^[[3~" delete-chardas, was in deine gehen würde ~/.zshrc.
ctrl-vgibt es eine spezielle Escape-Sequenz, bei der "das nächste Zeichen, das ich drücke, als buchstäbliches Zeichen ohne Fluchtzeichen eingefügt wird, anstatt das zu tun, was es normalerweise tut". Das heißt, es wird nicht konvertiert ~, sondern bleibt die Escape-Sequenz.
0000000 C t r l V F n D e l e t e \n 0000016.
Für mich hat das oben Genannte nicht funktioniert, also habe ich die folgende Schlüsselbindung zu meinem hinzugefügt ~/.zshrc:
bindkey "\e[3~" delete-char
Zu Ihrer Information: Ich bin auf einem Mac (High Sierra).
~/.zshrc.
catdie Schlüssel eingeben und dann eingeben. Fn+F1gibt mir ^[OPzum Beispiel.
bindkey 'CtrlvFnDelete' delete-char
Dies wird Fn+ binden Delete, um ein einzelnes Zeichen weiterzuleiten. Wenn das oben nicht klar ist, müssen Sie zwischen dem Eingeben der Anführungszeichen Ctrl+ vund Fn+ Deleteeingeben. CtrlMit + vkönnen Sie die buchstäbliche Escape-Escape-Sequenz für jede Taste eingeben, die danach kommt.
Sie können diese Zeile in Ihre ~/.zshrcDatei einfügen.