【问题标题】:How to create custom escape sequence in mac terminal如何在 mac 终端中创建自定义转义序列
【发布时间】:2018-01-29 21:07:09
【问题描述】:

我不明白如何为 Ctrl+Shift+S 创建自定义转义序列,例如 question

我的问题是我想在 MacOS 终端下的 emacs 无窗口模式下使用 Ctrl+Shift+S。目前我正在尝试将此转义序列绑定到 Ctrl+Shift+F12 但我在创建该转义序列时遇到了麻烦。也许有一种更好的方法可以在无窗口模式下使用 emacs 在 MacOS 终端中使用复杂的 (Ctrl-Shift+anykey) 绑定?

【问题讨论】:

    标签: macos emacs terminal


    【解决方案1】:

    您可能假设 F12 是一个字符。它不是。按照惯例,功能键会发送一系列字符。

    在终端的首选项屏幕中,您可以查看(大部分)键绑定:

    您还可以添加一个键定义(在决定它应该发送哪些字符之后),并将 ShiftControl 修饰符与该键关联:

    为了举例,我使用了 xterm 将发送的序列。但是,Terminal 与 xterm 不同,您可能会发现其他序列更有趣。

    关于“什么是 control/shift/s 的正确转义码”的相关问题:没有 正确 转义码,因为终端(除非如上图特别配置)不区分 shift - 和未移位的控制字符。要确定什么是“正确的”,您必须检查您的 emacs 绑定以查看您应该发送什么以使其识别您所询问的功能。

    【讨论】:

    • 我想发送 control+shift+s(emacs 快捷方式)作为绑定到 control+shift+f12 的序列,而不是 ctrl+shift+f12 的序列。而且我仍然不知道这个序列(ctrl+shift+s)应该是什么样子。
    • 答案是一样的:你必须找到 emacs 期望的字符序列,并绑定 control/shift/s(在终端 Preferences 中)以匹配它。跨度>
    • 什么是 control/shift/s 的正确转义码,因为 ^[[27;6;83~ 不像我预期的那样工作。
    猜你喜欢
    • 2011-07-24
    • 2020-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-31
    • 1970-01-01
    • 1970-01-01
    • 2017-03-02
    相关资源
    最近更新 更多