【问题标题】:home\ end keys in xterm not behaving correctlyxterm 中的 home\ end 键行为不正确
【发布时间】:2017-01-22 12:27:33
【问题描述】:

当我在工作中从我的 tsh 打开一个 xterm 时,HomeEnd 键分别上下滚动 xterm 屏幕,而不是移动到行首\结尾。
根据/etc/inputrc,我的键绑定是:

"\e[1~": 行首
"\e[4~": 行尾
...
"\e[H": 行首
"\e[F": 行尾

这正是我在该主题上找到的每个网站所建议的,但是 - 没有用。

如果这意味着什么,Ctrl-aCtrl-e 的行为应该如此,但由于我用于其他键控,所以我错过了。

不用说,因为它是一台工作计算机,我没有/etc/inputrc文件的写入权限,也没有人愿意为我更改它。

如何绕过这个问题?
不要真正关心解决方案是更改某些文件还是添加到 xterm 命令的选项。

附言(感谢评论)
在询问之前,我尝试在我的 ~/.inputrc 文件中设置相同的绑定,也没有工作

【问题讨论】:

  • ~/.inputrc 是一个东西。
  • 点赞提醒我有关 .inptrc 的信息,但即使我有正确的绑定,我仍然没有所需的行为。

标签: key-bindings xterm


【解决方案1】:

该问题与.inputrc 中的任何可能设置无关(虽然您可以滚动浏览 command-history,但不会上下滚动您的 屏幕等)。

如果是 xterm(而不是其他终端),您可以使用 translations 资源修复此问题,例如,使用 xev 来识别主键/结束键的名称(可能 只需 homeend),并在这样的翻译中使用这些名称(在您的 X 资源中):

*VT100*translations:    #override \n\
          <key>home: string(0x1b) string("[1~") \n\
           <key>end: string(0x1b) string("[4~") \n

Solaris 曾经为上翻/下翻键执行此操作,并且(例如)如果您使用的是旧版本,例如 Solaris 10,xterm 常见问题解答中的建议 Why can't I use the pageup/pagedown keys? em> 是相关的。

进一步阅读:

【讨论】:

  • 就是这样。我已经在其他线程(例如unix.stackexchange.com/questions/85656/…)上找到了这个答案,但没有找到合适的位置来放置翻译。顺便说一句,答案是我为这个场合创建的.Xresources 文件。现在我有警告:翻译表语法错误:未知事件类型:key ...在解析'home:string(0x1b)string(“[1〜”)'时找到,但它似乎有效,所以我希望在不久的将来没有任何崩溃..
  • translations 中语法的常见问题是省略了换行符 \n(字面意思)。
  • 如果可以的话,我会再次为您所做的编辑投票,很棒的链接!谢谢。
猜你喜欢
  • 1970-01-01
  • 2010-09-14
  • 1970-01-01
  • 2021-06-23
  • 1970-01-01
  • 1970-01-01
  • 2014-10-06
  • 2011-03-03
  • 2013-12-03
相关资源
最近更新 更多