mc.keymap(午夜指挥官)中的“a1”、“c1”绑定是啥?
Posted
技术标签:
【中文标题】mc.keymap(午夜指挥官)中的“a1”、“c1”绑定是啥?【英文标题】: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”?
【问题讨论】:
【参考方案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 和普通家庭等? ***.com/questions/70206081以上是关于mc.keymap(午夜指挥官)中的“a1”、“c1”绑定是啥?的主要内容,如果未能解决你的问题,请参考以下文章
如何确保保存在数据库中的UTC日期等于Django中指定时区的午夜[重复]