260220 夜记 · 数字区的代替方案

2026年2月20日
约 3 分钟
暂无翻译稿。

讲讲。


design scope/work/keyboard scope/meta/workflow

数字区的代替方案

我的观点是很极端的,我想让键盘越小越好, 因为可以减少手部移动的频率, 一来降低疲劳,二来增高盲打效率 (从我个人情况来说,手跑那么远去按数字和 f 区的精度确实不太高, 至少不如待在字母区打字母的精度高)。

第一个是最直观的问题:数字在层里,但如果一个快捷键包含 2 个以上的 mod, 则好像必须要同时按 4 个按键(2 个 mod + 切层到数字层 + 相应按键)才能触发, 难按。 我的解决方案是用一个 home row mods 的 hack, 我称为 bottom row mods。 即把 bottom row 上相应位置的按键改成带 shift 的版本。 例子,如果 home row 的 s d f 分别对应的 ctrl alt cmd (因为我用 macOS 所以这里以这些玩意为例), 则 x c v 可以改成 shift+ctrl shift+alt shift+cmd, 这样就可以在没有数字区的情况下用三个按键完成包含 2 个 mod 的快捷键, 如 cmd + shift + 1 用 x + 切层 + 相应按键, 同时,因为没有改映射,不会存在挤占其他快捷键的情况。 当然,HRM 本身是一个较为有争议的方案,会有一系列的 side effect, 不过就我个人而言可以接受。

此外,还可以考虑一种相似原理的方案。如果键盘右侧的 mod 键几乎不使用的话, 可以把右侧的 mod 改为 shift + 该 mod,一定程度上可以解决「难按」的问题, side effect 就是右手需要参与进所有这种快捷键, 不过我不怎么用鼠标所以对我来说也不是什么大问题。

第二个问题是,没有数字键就失去了「第 n 个」这样的语义。 其实这个问题被上面的方案解决了大部分。 如果你用上面的方案,就可以保留带数字键的快捷键, 那这个问题就变成了「空间语义」上的问题: 从按键本身来看,你还是在按 cmd + shift + 数字, 只是这些数字在空间上的排列不像数字行那样直观。 但其实也没那么不直观,数字在层里的排列一般都是保留的空间语义的, 如九宫格、top row 一排等。

前文
后文
2024-PRESENT
CC BY-NC-SA 4.0
©
froQ