【问题标题】:Reload .Xresources without restarting the xterm在不重新启动 xterm 的情况下重新加载 .Xresources
【发布时间】:2014-03-11 21:12:23
【问题描述】:

要在 vim 中使用 ALT 键而不进行调整,应在 xterm 中禁用转义。 如果不转义,ALT 将无法在 bash 中用于快捷方式。

要解决这个问题,我需要在启动 vim 之前重新加载此选项:

XTerm*metaSendsEscape: false | xrdb -load 

知道如何在不重新启动终端窗口的情况下重新加载 .Xresource 并使更改生效吗?
打开其他终端,让 ALT 在 vi​​m 和 bash 中都可以工作。

【问题讨论】:

  • 试试 xrdb ~/.Xresource
  • 这与 cat .Xresource | xrdb - 加载。它需要重新启动终端。

标签: bash vim escaping xterm alt-key


【解决方案1】:

是的,刚刚检查过,XTerm 的菜单中有这个选项!我以为我在里面看到了...

当您按住 Ctrl 键时,XTerm 会响应左键、中键(又名滚轮)和右键单击各个选项菜单。

在您的情况下,“Meta Sends Escape”位于 ctrl+左键菜单中:)

此外,检查所有三个菜单(如果只是为了了解选项的存在)是一个非常好的主意。例如,我经常使用字体选择器。

【讨论】:

    【解决方案2】:

    这将重新加载.Xresources:

    xrdb ~/.Xresources
    

    来源:Arch wiki

    【讨论】:

    • 这个答案应该被删除,因为它与问题无关。
    • @ThomasDickey 这个问题是谷歌搜索“重新加载 Xresources”的第一个结果。
    • @Daerdemandt 这也是谷歌搜索“在不重新启动 xterm 的情况下重新加载 xresources”的第一个结果。你的意思是什么?
    • 此答案已在问题的评论中提出并被拒绝。 如果没有重新启动任何程序,它就无法工作。
    • +1 删除此答案。在问题中,我通过管道连接到 xrdb -load,这与 this 等价。我显然试过这个。
    【解决方案3】:

    xterm 将不会仅仅因为您运行 xrdb 而重新读取资源。 X 应用程序仅在初始化时读取资源。

    除了菜单项(在patch #122, 1999 中添加)之外,还可以使用另外两种方法来更改metaSendsEscape 资源:

    • 转义序列,记录在XTerm Control Sequences

      CSI ? Pm h DEC Private Mode Set (DECSET). ... Ps = 1 0 3 6 -> Send ESC when Meta modifies a key. (This enables the metaSendsEscape resource).

    • editres(但由于资源多,很麻烦)

    【讨论】:

      【解决方案4】:

      不得不将xterm*metaSendsEscape: true 放入.Xdefaults,使用.Xresources 在16.04 下不想为我工作。

      xrdb ~/.Xdefaults跟进。

      【讨论】:

        猜你喜欢
        • 2012-05-13
        • 1970-01-01
        • 2015-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-10
        • 2012-10-03
        相关资源
        最近更新 更多