这篇文章主要介绍我第一次购买机械键盘的选型过程及结果。
成文非常主观,有需要的朋友,可酌情参考。
背景
在朋友的多多多次安利下,我买了一台 Intel 小主机。 然而这个小主机无法在无头模式下安装系统,比如安装系统的时候从 BIOS 那里选择启动盘, 就一定要借由显示器和键盘来设置才行。 无奈需要购买一款外接键盘。
这些年来一直使用 MacBook 自带的键盘(我觉得非常好用),因为害怕外接键盘又丑又不好用,难得我费时间挑,也不打算替代自带的键盘,毕竟我要和触控板一起使用呢! 我就打算随便买个垃圾键盘糊弄过去,在京东上按价格排序挑选了一款价格不到 20 元的普通办公键盘(没想到键盘现在这么便宜了),又黑又长那种,但是迟迟没有下单。 要不我尝试挑一款适合自己的机械键盘如何?于是,我决定:试一下挑选一款适用于我自己的机械键盘。
我对键盘的要求
这些年在办公室见过了无数的机械键盘,但是很少有完全符合我的风格的,所以我在这里列出我的要求,顺便说说为什么。
-
按键数量要足够少,但常用的按键一定不能省
按键数量少的话,键盘看起来就非常小巧,占地方小,方便携带。细说的话,至少有以下几点:
-
数字小键盘一定不能要
我自认为指法很好,对主键盘区域的数字键非常熟悉,所以数字小键盘对我而言没有用处。 按数字小键盘区域时,右手会进行大幅度的移动,影响输入效率(比如输入密码时字母、符号、数字的交替输入)。
-
PageUp / PageDown / Home / End 之类的键不能要
这类键看似对文档光标移动很有用,但是实际用得很少,并且可以被其它的按键组合实现(Ctrl / Shift / Alt / Command + 上下左右)。 由于它们还占据了键盘右侧一大块区域,所以我也不接受。
-
方向键可以没有,但是不能完全没有
方向键对我来说用处很少,可以没有固定键位,但是一定可以通过组合键实现。 之所以说到这一点,是因为早期的 HHKB 就没有方向键,而且不能通过组合键按出来。HHKB 用户一定不用方向键?全部都有 VIM?任何时候都能用? 显然不能。要不然后面的 HHKB 也不会给加上用组合键来实现方向键了。(我对 HHKB 并不太了解,如果有说错,欢迎指出。)
我如何解决方向键的问题?写代码时可以用
hjkl
,其它时候。其它时候,如果没有方向键,就通过Right Command
+hjkl
实现(这是改键来的,所以相当于我整个操作系统都支持 hjkl 模式),究其原因还是我非常不喜欢手移动来移动去。 -
功能键(F1-F12)这一行一定不能要
这些键什么时候用得多?程序员调试代码?对我来说,无效。因为我的像是 Step In / Step Out / Step Over 之类的键,我都绑定到
Left Command
+hjkl
上了。手根本不用移动、眼睛只盯着屏幕就可以完成代码调试了。那些按 F5/6/7/8/9 之类的,很难做到不看键盘吧?另外,MacBook 上绝大多数程序都支持
Command
+Q
来退出,比 Windows 上的Alt
+F4
要好按不少。 -
布局尽量是 ANSI
ANSI 和 ISO 是两种键盘布局,主要区别是
Enter
和\
的布局,具体我不细说了。国内这边的主流应该是 ANSI。
-
-
主要按键一定不能少
哪些是主要按键(对我程序员来说)?
- 主键盘数字区 不用解释。
- 主键盘字母区 不用解释。
~
符号 妈耶,这是 shell 里面的 home 目录好吗,没有它我怎么输入 home 目录前缀?移动到其它地方也不行(比如说 68 键键盘多数将其移动到 Backspace 的后面)。- 主键盘符号区 主要是
\|
和/?
的位置,妈蛋,有些键盘居然这两个的位置给我搞到其它地方!你叫我一个程序员怎么输入文件路径?你叫我怎么输入管道运算符?非常常用啊,常用的键位一定不能动。
-
主键盘区域一定要居中(对称)
因为主键盘区域是使用频率最高的区域,所以它应该正对屏幕中央。否则就非常别扭。看看下面这张图就知道了。 不仅键盘对不准备屏幕中央,按鼠标的时候还会移动很大一段距离,难受。不觉得小键盘区域碍事?
按键数量少的键盘天生满足这一点。
-
支持改键
提供改键支持有多种方式,要么通过组合键,要么直接通过键盘官方的改键工具(更改后适用于所以连接的设备)。不然就只有在操作系统里面改了。
为什么要改键?绝大多数键盘默认都是为 Windows 系统设计的,然而我多年不用 Windows,早已习惯了 MacBook 的键位(个人觉得好用多了,不服来辩)。 Windows 键盘的
Win
键(Alt 左边那个)对应 MacBook 应该是Command
(空格左边那个),所以一定要把这两个键切换一下顺序。 -
支持蓝牙/有线双模
平常绝大多数时候我希望是使用蓝牙(蓝牙 5.0 延迟并不大,我弹琴外放都不怎么感觉到延迟呢)。 有的时候又必须使用有线,比如连接树莓派 / Intel 小主机的时候,它们连个界面都没有,连蓝牙和连有线相比起来,肯定要麻烦得多吧?
-
支持彻底关闭背光灯
这个我不知道有没有不支持的,如果有的话,我也不考虑。我实在不喜欢过于晃眼的霓虹灯光在晚上晃来晃去,瞎眼。
-
安静!
特别强调了这一点,虽然大家很多都喜欢机械键盘的声音和段落感,但是我却不甚喜欢。因为我非常不愿意影响别人。
鉴于多数机械键盘都可以自己决定选用什么轴体,所以这一点很好满足。
-
材质
材质我不在行,这里不讨论。
挑选机械键盘的过程
感觉这是我在网上(京东)买东西挑选最久的一次了,从下午 4 点断断续续挑选到凌晨 1 点多。 所以这里准备列出几款当时考虑是否购买的一些情况。
我主要看的是 61 键键盘,68 键键盘右侧边多了几个我几乎不用的键,所以不喜欢。
优点和缺点我只是列出了我重点考虑的一些点。
图片来自网络,亦非按实际大小调整。
达尔优 EK861
链接在这里:https://item.jd.com/10024997277590.html 。
这是我选中的第一款机械键盘,键位基本完全符合我前面的要求。但是直到我看了它的组合键设定后,我发现这玩意儿根本不是给程序员用的!
优点
- 按
Fn
+W
可以直接切换Win
和Alt
键,满足从 Windows 切换成 Mac 的场景。
缺点
-
使用方向键需要先按
Fn
+O
切换过去,这时候/?
键成了上
键。- 输入
/
需要按Fn
+Right Shift
+/
; - 输入
?
需要按Fn
+/
;
输入路径时如此常用的
/
居然要这么复杂?这是给程序员用的???不仅如此,我的手还得移动到右下角去按! 另外,他们的产品/程序员/QA什么的,没有发现组合后的/
的?
搞反了吗?因为这一个缺点,我就不考虑它了。我不接受
/
不能直接输入。 - 输入
RK61
链接在这里:https://item.jd.com/10024840591435.html 。
亚马逊链接:https://www.amazon.com/Mechanical-Keyboard-Wireless-Bluetooth-Programmer/dp/B07P832XSX?th=1 。
61键键盘的键位基本上是这样,所以和上面的看起来特别像。所以关注一下组合键就好。
优点
- 按
Fn
+A/S
切换 Windows 和 Mac;
缺点
- 感觉京东上面卖的假货;
- 按
Fn
+Left Ctrl
切换成第二组合键,然后才能使用 Fx / 媒体键之类的,相当于把主键盘区域给废掉了。
C61
链接在这里: https://item.jd.com/10034584261159.html 。
不知道是哪个厂家生产的,亦没有说明组合按键如何按。尽管很好看,但是仍然弃了。
新贵 GM610
链接在这里:https://item.jd.com/100017873458.html 。
优点
- 官方支持改键程序(比较挫);
- 可以按
Fn
+Enter
一键关闭所有灯光效果; - 按
Fn
+1-=
可以直接输入F1-F12
;
以上功能需要官方提供的固件升级后方可使用。
缺点
在方向键使用 Fn
+ Right Alt / App / Right Ctrl / ?
组合键的情况下,常规的组合键无法生效。
比如 Shift
+ 左/右
可以选中文本,在 GM610 这里本来应该按 Shift
+ Fn
+ Alt / Ctrl
的,但是这种组合键是无效的。
购买
这款键盘,是我最后购买的键盘。
购买使用几天后,感觉基本是满意的(改键后)。
期间我对上述缺点不满意问题,咨询过店家,问有没有芯片型号或者 PCB/Schema 什么的给提供一下,我想自己编程。 结果店家只告诉了我芯片型号是 SH68F90S 。PCB 和原理图都没有提供。
后面我把这个机械键盘拆开了,想自己看下电路能不能找出 PCB 布局,结果,因为布局较密集的原因,不方便诊断,暂时放弃了自己编写来驱动的想法。
另外还发现一点,这个键盘内部的主控芯片是 BYK916(几乎找不到任何资料),而店家告诉我的是国产的 SH68F90S,所以猜测是厂家有意隐藏了其所使用的芯片型号。 还跟我说是国外芯片,不能“太随意地”修改键位。
可编程机械键盘
在探索机械键盘的过程中,发现了很多机械键盘其实是可以编程(或者说刷固件)的。 国内的键盘似乎很少有支持,国外的偏多一点。
我也因此“挖掘”到了一个支持非常简单的配置键位的“爱好者乐园”:https://qmk.fm/ 。 它的在线配置页 https://config.qmk.fm/ 有超多的可编程键盘,各类繁多,布局看得眼花,感兴趣的可以挑选一款来自己折腾改改键位。
又有点勾起了我折腾硬件的欲望 😅,等树莓派 Pico 2 代出来了,买一个玩玩吧~
我喜欢的键位
只有 61 键的机械键盘基本上都是长上面几个键盘的模样。我按着我的需求作了键位的修改。仅供参考!
-
ESC
和`~
因为我不喜欢
ESC
位于此位置的缘故,我把ESC
改成了`~
键; -
CapsLock
改成ESC
- 文本编辑的时候,我极少输入连续的大写字母,需要的时候,我用
Shift + 小写字母
代替; - 在终端中编辑的时候,我也使用
Shift
输入大写字母,较多的话,我使用快捷键; ESC
我用得非常多,比如 vim 里面,比如关闭对话框,返回;
- 文本编辑的时候,我极少输入连续的大写字母,需要的时候,我用
-
Win
和Alt
键相互切换,因为我使用 Mac;
-
VSCode:
Left Command
+hjkl
是方向键 -
操作系统:
Right Command
+hjkl
是方向键所以我能在整个系统里面使用
hjkl
来作为方向键,且能单手操作。