I Hate (Most) Keyboard ‘Fn’ Keys
I Hate (Most) Keyboard ‘Fn’ Keys
我讨厌(大多数)键盘上的“Fn”键
In my living room is an ageing Windows media centre PC, which is connected to the TV and principally used for Jellyfin, Netflix, Nebula, Steam, and the like. For convenient sofa use, I’ve equipped it with a wireless keyboard/trackpad combo. The keyboard is, for the most part, fine. You wouldn’t want to type an essay on it, but if you’re searching for a YouTube video it does the job. 我的客厅里有一台老旧的 Windows 多媒体中心电脑,它连接着电视,主要用于运行 Jellyfin、Netflix、Nebula、Steam 等程序。为了在沙发上使用方便,我为它配备了一款无线键盘触控板一体机。这把键盘大部分情况下还算好用。你肯定不会想用它写论文,但如果你只是想搜索一个 YouTube 视频,它完全能胜任。
Unfortunately, the manufacturers of this keyboard decided that it needed a dozen extra functions, and repurposed the F-keys F1 through F12 for these purposes. It was nice that they gave dedicated keys to volume control/toggling muting – we use those all the time. And there are three other dedicated keys in the top right which we never use… so there was clearly capacity for a little extra. And they still they felt the need to do… this: That F4 key has been repurposed as a “sleep” button. 不幸的是,这款键盘的制造商认为它需要十几种额外的功能,于是将 F1 到 F12 功能键重新定义了。他们为音量控制和静音切换设置了专用按键,这很不错——我们经常用到。右上角还有三个我们从不使用的专用键……所以显然还有增加功能的空间。但他们仍然觉得有必要做……这个:F4 键被重新定义成了“睡眠”按钮。
This poses a problem. I don’t want any of these “special function keys. Occasionally, I suppose, I might need one, but mostly I’d just like F1 through F12 to remain the multi-purpose, context-dependent keys that they have been since they first appeared in 1965. And so, because I don’t want to hold Fn every time I want to press an F-key for its intended purpose, I used the arcane shortcut Fn+Caps to “lock” the keyboard into “standard” mode, where multipurpose F-keys remain multipurpose F-keys unless I hold down the special magic button that transforms them into rarely-used single-purpose special function keys. 这带来了一个问题。我并不想要这些“特殊功能键”。偶尔我可能需要用到一个,但大多数时候,我只希望 F1 到 F12 能保持自 1965 年问世以来那种多用途、视语境而定的功能。因此,为了不必每次按下 F 键时都要按住 Fn 键,我使用了那个晦涩的快捷键 Fn+Caps 将键盘“锁定”在“标准”模式。在这种模式下,多用途 F 键保持其原有功能,除非我按住那个特殊的“魔法”按钮,才会将它们转换为那些几乎用不到的单功能特殊按键。
But here’s where the problem occurs. If the batteries get changed, or if the keyboard gets turned-off for an extended period, or sometimes – seemingly – just randomly… that function-lock gets switched off. And I’ll grab the keyboard and, to quickly quit Steam Big Picture or a Jellyfin Client or something, I’ll press Alt+F4. Which will send the “sleep” command. And because this computer’s a bit older, it’ll hibernate. 但问题就在这里。如果更换了电池,或者键盘长时间关闭,甚至有时——看起来是随机地——那个功能锁定就会失效。当我拿起键盘,想要快速退出 Steam 大屏幕模式或 Jellyfin 客户端时,我会按下 Alt+F4。结果它发送了“睡眠”指令。由于这台电脑比较老,它就会进入休眠状态。
Instead of closing one application, which is what I intended, I now have to wait upwards of a minute for the old box to finish copying all of its RAM into a file, and shutting down, and then booting up again (in response to my repeated and frustrated hammering of the space bar), and then loading everything back into RAM… just to put me back where I started. 我本意只是想关闭一个应用程序,现在却不得不等待一分钟以上,看着这台老机器把所有内存数据复制到文件里,关机,然后再(在我愤怒地反复敲击空格键后)重新启动,接着把所有东西重新加载回内存……仅仅是为了回到我开始时的状态。
What’s most-frustrating is at F4 is the only key with such a time-consuming and annoying function. If I accidentally paused some music or opened the system settings or did whatever-the-hell the icon on the F6 key is supposed to mean, that wouldn’t be so bad. But man; the three or four times a year that this catches me out are just aggravating enough to piss me off without being quite bad enough for me to do something about it. 最令人沮丧的是,F4 是唯一一个具有如此耗时且恼人功能的按键。如果我只是不小心暂停了音乐、打开了系统设置,或者触发了 F6 键上那个鬼才知道是什么意思的图标,那倒还没那么糟糕。但是,伙计,每年三四次被这玩意儿坑到,足以让我火冒三丈,却又还没严重到让我非得去解决它的地步。
This is the WASD Code keyboard on another of my computers, showing how a Fn key can be done right. It doesn’t have to be this way. My WASD Code gets it right by resigning the effects of all double-duty keys to minor conveniences only, and making them the secondary functions of the keys to which they’re attached. I use these volume control buttons and they’re fine. 这是我另一台电脑上用的 WASD Code 键盘,它展示了 Fn 键应该如何正确设计。事情本不必如此。我的 WASD Code 做得很对,它将所有双重功能键的效果仅限于小便利,并将其作为按键的次要功能。我使用这些音量控制键,它们表现得很好。
My Keychron K10 gets it right by having the double-duty keys mirror those of the Mac it attaches to: again, all minor, low-impact functions that are easily and quickly un-done. Also, when you lock it to traditional F-key mode it stays that way, even if it’s disconnected and left unpowered for an extended period. 我的 Keychron K10 也做得很好,它的双重功能键与所连接的 Mac 保持一致:同样,这些都是微小、低影响的功能,可以轻松快速地撤销。此外,当你将其锁定为传统的 F 键模式时,即使断开连接并长时间断电,它也能保持该设置。
Here’s what “doing Fn right” looks like, to me: 在我看来,“正确的 Fn 键设计”应该是这样的:
- Where keys do double-duty, it’s a low-impact and quickly reversible operation, so there’s little cognitive load or delay in correcting any mistakes. 当按键具有双重功能时,它应该是低影响且可快速撤销的操作,这样在纠正错误时几乎没有认知负担或延迟。
- The default state is the traditional key function, or if that’s not the case, switching mode is easy (doesn’t involve looking up an underdocumented shortcut or installing a proprietary driver). 默认状态应为传统的按键功能;如果不是,切换模式也应非常简单(不需要去查阅文档不全的快捷键,也不需要安装专有驱动程序)。
- When you switch the default state, it stays switched and doesn’t swap back to factory defaults just because of a loss of power or other arbitrary and unrelated trigger. 当你切换默认状态后,它应该保持该状态,而不会仅仅因为断电或其他随意且无关的触发因素就恢复到出厂设置。
Sadly, a great number of keyboards get their Fn key implementations wrong. And I hate them for it. 遗憾的是,大量的键盘在 Fn 键的实现上都做错了。我因此而讨厌它们。