【问题标题】:What are the "a1", "c1" bindings in mc.keymap (Midnight Commander)?mc.keymap(午夜指挥官)中的“a1”、“c1”绑定是什么?
【发布时间】:2021-05-14 15:30:23
【问题描述】:

mc.keymap 中有这样的绑定,它没有描述有意义的 shift 类组合键,而是看起来像以字母开头并以数字结尾的原始字符序列,例如:

Top = home; alt-g; a1 # ← the sequence in question, i.e.: "a1"
Bottom = end; alt-shift-g; c1

我想知道它们是如何描述的,即:它们是如何被触发的?什么组合键,例如“c1”?

【问题讨论】:

    标签: keyboard-shortcuts keymapping mc keymaps mcedit


    【解决方案1】:

    A1 是键盘上的“Home”键(Num Lock 关闭的小键盘 7),它被解码为与常规“Home”不同的键。同样,C1 是键盘“End”,C1 是键盘“Page Up”,C3 是键盘“Page Down”,B2 记录在“键盘中心”,即 5 键,虽然我不知道实际上是否有任何键盘用那个。它们记录在 curses 库 here 中(搜索“键盘”)。

    其他库倾向于将这些键命名为 KP_HOME、KP_END 等,但 curses 采取了不同的策略,它更关心物理布局而不是键标签。午夜指挥官刚刚从 (n) 个诅咒中继承了这一点。

    无论如何,现在应该清楚为什么“Top”命令会同时获得“home”和“a1”的默认绑定——它们是普通 PC 键盘上标有“Home”的两个键。

    【讨论】:

    • 从哪里获得特殊键码(“a1”、“c3”等)含义的完整列表?
    • @psprint 我在答案中链接的页面似乎很好。
    • 事实证明绑定不起作用 - 由于键盘键通过返回 KEY_HOME、KEY_END 等来工作,因此该错误被隐藏,并且映射也希望它们位于相同的位置。您是否知道如何使用 ncurses 区分键盘 a1 和普通家庭等? stackoverflow.com/questions/70206081
    猜你喜欢
    • 2013-01-26
    • 2017-01-06
    • 1970-01-01
    • 2016-01-01
    • 2015-03-28
    • 2014-09-26
    • 2020-02-22
    • 2016-12-25
    • 2013-02-04
    相关资源
    最近更新 更多