Solaris Home/End 键无法像 Debian / Ubuntu 一样工作

Solaris Home/End 键无法像 Debian / Ubuntu 一样工作

我正在使用 putty 连接到 solaris 系统。

我只是一个用户(没有 root 访问权限)。我所知道的关于这个系统的全部信息是

Oracle 公司 SunOS 5.11 11.1 2014 年 1 月

我的问题来自键盘设置。按键insert/home/pageup/pagedown/end/delete全部显示出来,~而不是像 Ubuntu 中那样移动光标。

我已经尝试了很多在互联网上找到的技巧,但没有任何效果。

echo $TERM给出了xtermputty 与 xterm 的配置良好。

我不知道该怎么办。

答案1

要支持替代键映射,您可以使用 GNU readline 库的inputrcinit 文件。

.inputrc每个用户都可以在其主目录中拥有自己的文件。或者使用 global/etc/inputrc为所有用户设置。


要检查当前的键映射,请输入逐字模式 ( Ctrl-v),然后输入要映射的键。这将阻止shell解析和执行密钥并提供密钥序列。

例如

Ctrl-v Home
^[[1~

序列^[相当于[Esc]键,因此需要映射为e\

要测试新地图,请使用以下bind命令:

bind '"\e[1~": beginning-of-line'

一旦成功,您可以将该bind命令添加到您的 shell 配置文件中,或者将所有映射添加到您的.inputrc文件中。


为了Debian / 乌布努图基于键映射,将以下内容添加到您的个人~/.inputrc文件中:

# for linux console and RH/Debian xterm
set meta-flag on
set input-meta on
set convert-meta off
set output-meta on
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# commented out keymappings for pgup/pgdown to reach begin/end of history
#"\e[5~": beginning-of-history
#"\e[6~": end-of-history
"\e[5~": history-search-backward
"\e[6~": history-search-forward
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word

然后再次登录或启动新的 shell。

相关内容