Poker II 是一款可编程的61键机械键盘,是最小的那种,没有 F1-F12 那一行键。跟 HHKB 有些像。这是我第一次使用这么小的键盘,以前都用的84键的。选择它的原因是,更加小巧,没有旁边的光标移动键,使得打字的时候几乎不需要把手挪来挪去的。编程功能似乎也挺有意思的。我手上这把是红轴的,感觉手感也挺好,虽然没有了青轴那清脆的叫声。照片我就不放啦,网上能搜到的。
研究完说明书,发现它的编程功能并没有想像中的那么好。主要缺点如下:
- 非默认层会一直亮着个灯,而默认层又不能编程。
- 只能对非组合键,以及没有预设功能的 Fn 组合键编程。所以额外的 Pn 键很残废。
- 编程结果无法导入导出。所以哪天不小心重置了键盘,这将导致重复而无趣的劳动。
不过也能凑合着用了。最后我的设置是这样的:
不再使用 xmodmap 来交换 Esc 和 Caps Lock。笔记本键盘改用 hwdb,Poker II 使用内建编程功能。于是我可以在别处(比如手机、BIOS、Win10)使用这把键盘而不感觉别扭与小心翼翼。xmodmap 依旧用来把右 Alt 映射为 Multi(Compose)键,用来输入特殊字符,因为我不知道这个键怎么用 hwdb 映射。哦还要在 /etc/vconsole.conf
里去掉之前给 tty 虚拟终端设置的交换 Caps Lock 和 Esc 的 keymap。
红、绿、蓝三个编程层。红层没什么用,暂时留作测试。绿层作为打字用布局,方向键使用 Fn 组合键完成,Esc 位放 `~。蓝层作为看视频的布局,方向键使用右下角的四个键完成,无处安放的 Pn 暂时放 Esc 位。其余共有映射为:
- Caps Lock 位放 Esc。
- 交换 Fn 和右 Alt 键。这样 Fn 键好按一点,反正右 Alt 很少用到。
- 映射两组 Ctrl-PgUp/PgDn 分别到 Fn-Q/E 和 Fn-O/L。这快捷键非常常用,可以在火狐和 Telegram 切换标签页。
Poker II 编程时有个「编程延迟」设置,我一直没搞明白它要怎么用,也导致我的映射一直有问题,按一次出一到两次。直到后来找到这篇文章,才明白它不是个设置,而是个事件,按下它即导致出键码时延迟指定的时间。
另外我没能在 Poker II 上按出 SysRq 来,不知道是怎么回事。
hwdb 的配置方法来自 ArchWiki Map scancodes to keycodes 页面。我的配置如下:
evdev:atkbd:dmi:* KEYBOARD_KEY_01=capslock # esc KEYBOARD_KEY_3a=esc # capslock KEYBOARD_KEY_b7=rightmeta # prtsc KEYBOARD_KEY_c5=print # pause (Fn+P)
把配置放到 /etc/udev/hwdb.d
下的 .hwdb
后缀文件中,然后执行
sudo systemd-hwdb update sudo udevadm trigger
就好了。
用了几天了。除了 LED 灯老亮着有些刺眼外,一切安好。也终于把 Caps Lock 的设置方法搬到更底层了。