Answers:
此页面包含您在此问题上所需的所有信息;我建议你阅读。现在,如果您使用bash
,则足以创建一个~/.inputrc
包含以下行的文件:
"\e[3~": delete-char
# this is actually equivalent to "\C-?": delete-char
# VT
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# kvt
"\e[H":beginning-of-line
"\e[F":end-of-line
# rxvt and konsole (i.e. the KDE-app...)
"\e[7~":beginning-of-line
"\e[8~":end-of-line
作为额外的奖励,他们将Home和End正常工作。
实际上,您确实需要http://web.archive.org/web/20120621035133/http://www.ibb.net/~anne/keyboard/keyboard.html中的大多数信息。对该信息的一种更正是他们对XTerm的建议:
*VT100.Translations: #override \
<Key>BackSpace: string(0x7F)\n\
<Key>Delete: string("\033[3~")\n\
<Key>Home: string("\033[1~")\n\
<Key>End: string("\033[4~")
*ttyModes: erase ^?
虽然这将使XTerm发送正确的字符,并将stty更改为backspace ^?
,但^H
在某些情况下,它仍会错误地报告为backspace,从而破坏了Vim instert模式下的backspace(请参见:https ://bugs.gentoo.org / 154090)。为避免这种情况,请VT100.backarrowKey: false
改用,这样:
*VT100.backarrowKey: false
*VT100.Translations: #override \
<Key>Delete: string("\033[3~")\n\
<Key>Home: string("\033[1~")\n\
<Key>End: string("\033[4~")
*ttyModes: erase ^?
(另请参见[请在此处插入链接])