HHKB|HHKB 改造小记

HHKB是PFU生产的静电容系列键盘,按键触发方式与机械键盘不同。主要针对文字输入而设计。我终于还是按耐不住入手了,购买的版本是HHKB pro BT。
首先简单说一下个人使用的感受。
之前主力使用过茶、黑、青、红几种机械轴。从个人使用体验来说,HHKB 类似接近于红轴,但是按键的压力集中在键程的前2/3段,从而有一种不明显的段落感。
HHKB另一个独特之处在于其键位配列。它只有60个按键,对比传统的104键的键盘,少了单独的数字键、方向键和功能键区,也就是所谓的60%键盘。HHKB和其他60%键位设计其中一点不同是,Ctrl 被放置在了 Caps 键的位置,原有的 Ctrl 键位置被移除,然后打上了HHKB硕大的logo....
我是一个忠实的60%键盘拥护者。这里的逻辑在于,我觉着一款真正让人专注于输入的键盘,在形成肌肉记忆后,应该可以在双手几乎不移动的情况下完成所有的工作。而不是看键盘找按键,或者摸索到相应的键区。
HHKB|HHKB 改造小记
文章图片
image HHKB在后盖上有DIP跳线,可以根据个人使用的情况做一些简单的模式调整。但不支持在硬件层面键位映射编程。换壳,加灯什么的就更麻烦了。整体来说,这款键盘把80%的功能做到了满分,而可玩性上弱于机械键盘。
1. 关于HHKB方向键的选择及设置 HHKB国行版本没有单独的方向按键,不知道有多少人是因为这个原因而放弃了这款键盘。其实60%键盘有一些很棒的解决方案,甚至比使用单独方向键更方便。
一些常见的解决方向键解决方案,如:

1. HHKB原生支持
FN + [ => Up
FN + ; => Left
FN + ' => Right
FN + / => Down
2. 在 Mac平台全局都可以使用类似Emacs风格的快捷键来操作光标
Control-B 光标后退一个字符,相当于左键(B = Backward)
Control-P 上移一行,相当于上键(P = Previous)
Control-N 下移一行,相当于下键(N = Next)
Control-A 移动到一行的开头(A = Ahead)
Control-E 移动到一行的结尾(E = End)
3. 其他的一些映射方案,如:
vi风格:功能键 + h/j/k/l 作为方向键;
功能键 + i/j/k/l 作为方向键;
Poker: fn + w/a/s/d 作为方向键;
从我的使用感受来说,如果实现了下面两点对于使用体验会有很大的提升:
一、无须移动手的位置去找方向键;
二、可以单手操作方向键;
所以,在HHKB上我选择的方案是:
Control + W => Up
Control + A => Left
Control + D => Right
Control + S => Down
这样一来,左手在几乎不需要移动的情况下,小拇指按住 Control,就可以自由的使用W/A/S/D来替代方向键了,一个字,爽!
在MAC上的实现: 使用神器Karabiner。
HHKB|HHKB 改造小记
文章图片
image Karabiner 的配置文件保存在: ~/.config/karabiner/karabiner.json
配置文件是Json格式,还是比较容易理解的。
在配置中,我的"rules"部分设置如下,除了方向键外,还把Control + Q 映射为Control + A,这样就实现了Control +Q光标到行首,Control +E光标到行尾,整个文本输入非常流畅。
"rules": [ { "description": "L_Control + q to L_Control + a ", "manipulators": [ { "from": { "key_code": "q", "modifiers": { "mandatory": [ "left_control" ], "optional": [ "any" ] } }, "to": [ { "key_code": "a", "modifiers": [ "left_control" ] } ], "type": "basic" } ] }, { "description": "L_Control + w/a/s/d to arrows", "manipulators": [ { "from": { "key_code": "w", "modifiers": { "mandatory": [ "left_control" ], "optional": [ "any" ] } }, "to": [ { "key_code": "up_arrow" } ], "type": "basic" }, { "from": { "key_code": "a", "modifiers": { "mandatory": [ "left_control" ], "optional": [ "any" ] } }, "to": [ { "key_code": "left_arrow" } ], "type": "basic" }, { "from": { "key_code": "s", "modifiers": { "mandatory": [ "left_control" ], "optional": [ "any" ] } }, "to": [ { "key_code": "down_arrow" } ], "type": "basic" }, { "from": { "key_code": "d", "modifiers": { "mandatory": [ "left_control" ], "optional": [ "any" ] } }, "to": [ { "key_code": "right_arrow" } ], "type": "basic" } ]

在windows环境下的实现: 在windows环境中可以使用autohotkey实现键位的映射,因为autohotkey自己设计了一种脚本语言,所以门槛稍高于上一个工具。
HHKB在windows中的win按键和在MAC中的Cmd是同一个按键,可以将一些win下ctrl的组合键,映射到win上,以统一两个平台的体验。
一种可以实现该功能的脚本文件如下,安装autohotkey后,将下面的文本另存为拓展名为.ahk的文件,即可直接运行。
; 该文件是为hhkb在windows环境下的改键配置文件;; Ctrl + wasd 实现对方向键的映射 <^a:: Send {left} <^d:: Send {right} <^w:: Send {up} <^s:: Send {down}; copy cut paste 的快捷键 #c::Send ^c #x::Send ^x #v::Send ^v; 撤销,重做, 保存,全选,EOF的快捷键 #z::Send ^z #y::Send ^y #s::Send ^s #a::Send ^a #d::Send ^d

2. 加装静音垫圈,化身蓝牙版Type-s HHKB目前在售的有三个版本:
HHKB pro2
HHKB pro2 Type-s
HHKB pro BT
其中Type-s是静音版,BT是蓝牙版,但是静音的蓝牙版是没有滴。
坦率的说,HHKB相较于机械键盘本身声音就是比较小的。敲击触发的过程没有物理接触点,主要的噪音来源于按键回弹的过程。Type-s也是通过加装硅胶垫圈的方式实现了进一步的静音降噪。
通过神奇的某宝,顺利的买到了配套的静音圈。
HHKB|HHKB 改造小记
文章图片
image 下一步就是拆机了。取下电池,然后拧下如图所示三个位置的螺丝。
HHKB|HHKB 改造小记
文章图片
image 打开后盖后,就可以看到HHKB的四块PCB板了,取下后盖前需要先拆下排线。
HHKB|HHKB 改造小记
文章图片
image 主PCB板上的副板通过螺丝和有双面胶的塑料块和主板连接,需要先拧下螺丝,然后用点力慢慢取下来。
HHKB|HHKB 改造小记
文章图片
image 然后耐心一点拧下主PCB板上的螺丝。
HHKB|HHKB 改造小记
文章图片
image 取下主PCB板。
HHKB|HHKB 改造小记
文章图片
image 然后就可以从键盘的上盖板中取下键帽的轴柱了,把硅胶垫圈加装到轴柱上。
HHKB|HHKB 改造小记
文章图片
image 到这里加装的过程就完成了,HHKB的结构还是比较简单的,很好拆,就是键帽的轴柱一个个加装硅胶垫圈的过程比较耗费时间。
3. 兼容机械键盘键帽 HHKB使用自己独特的topre静电容键帽,这种键帽不但贵,最最重要是太少了,根本买不到。
那么,如何才能使用上机械键盘的键帽呢?
HHKB|HHKB 改造小记
文章图片
image 答曰,把原装的轴柱换成上图右的转换器就可以了。
HHKB|HHKB 改造小记
文章图片
image 最后 在折腾并稳定使用HHKB一个月之后,我觉着,在60%的键盘中,从性价比的角度,我更推荐Poker。但是如果想要第一流的手感,HHKB值得一试。
(我还想换壳,可是找不到......)
【HHKB|HHKB 改造小记】首发于我的个站:http://www.archvy.com/index.php/article/48

    推荐阅读