【问题标题】:Proper way of creating complex escape code (escape sequence) in terminal在终端中创建复杂转义码(转义序列)的正确方法
【发布时间】:2017-08-22 13:24:09
【问题描述】:

我不明白如何生成转义序列,例如。如果:

^[[27;7;47~ 映射到: C-M-/

^[[27;6;40~ 映射到: C-(

那么为什么这不能像我想象的那样工作:

^[[27;6;83~ 不映射到: C-S-s or control/shift/s

而 83 是大写“S”的 ASCII。

control/shift/s(小写)的正确转义码是什么?

【问题讨论】:

    标签: macos emacs terminal


    【解决方案1】:

    您作为示例列出的序列看起来像 xterm 的编程模式(modifyOtherKeys 资源,在2006 中引入)。资源设置对应于 control sequence,一些 emacs 配置知道如何初始化。参考手册页,即2

       2    enables this feature for keys including the exceptions
            listed.
    

    因为它影响所有的修饰符(包括Shift),所以仅仅设置相应的资源不是很有用。

    OSX 终端不支持该控制序列(或类似的东西)。如果您希望 OSX 终端发送这些转义序列,则必须按照 How to create custom escape sequence in mac terminal 中所述设置您的首选项(使用 xterm 作为参考)。相同的评论适用于有人可能建议的其他终端。

    为了举例,这是我的一个测试程序的屏幕截图,显示 sShiftsControlsShiftControls

    【讨论】:

      猜你喜欢
      • 2018-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-12
      • 1970-01-01
      • 2014-07-17
      • 1970-01-01
      • 2015-07-24
      相关资源
      最近更新 更多