キーボードのキー数を限界まで増やそうとしたら、42キーになった
天下一キーボードわいわい会vol7に参加してきた。参加者の皆様お疲れ様でした。
知らない人に向けて軽く説明しておくと、自作キーボード好きのひとたちが各々の作ったキーボードを持ち寄って展示してみんなで交流する会だ。
今回私は天キー初参加だったが、非常に楽しかった。
面白いキーボード、おしゃれなキーボード、実用性の高いプロダクトがたくさん見れたし、あらたなアイデアや知見も得ることができた。
わたしはキーボードを見て回るのに夢中で写真などをほとんど撮らなかったし、天キーのレポは多くの人が質の高いものを残してくれているので、イベント自体の内容が気になる人はそちらを見てもらったほうがいいだろう。
というかたしか前、7月ぐらいに、
「わたしは自作キーボード界隈の人間ではない」みたいなことを記事に書いたような気がするが、
天キーに参加してしかも自分のキーボードを持ち込み展示しているようでは、すっかり自キ界隈の人間になってしまったと言わざるを得ない。やんぬるかな。
さて、今回は私が天キーにて展示したキーボード「真打42Air」を改めて紹介したいと思う。
「真打42Air」の最大の特徴とは、まず携行性に特化していること。
Xiao BLE nRF52840とZMK Firmwareを用いて完全無線を実現した。USB充電式のため、電池交換も不要だ。
そして左右分離ながら、左右がマグネットでくっつく!
これにより取り回しが格段に良好に。
タブレットPCなどと一緒に使うキーボードとして最適。
それでいて、物理的なキー配置はあくまでも「入力しやすさ」を第一に置いて設計した。
小さな2つのプッシュスイッチはキーマトリクスに組み込まれており、他のキー同様に好きな入力を割り当てることができる。
外出先でも、左右分離カラムスタッガードキーボードの威力を最大限発揮してもらうために作ったキーボードが、この「真打42 Air」なのだ。ネーミングが某林檎製品なのは、遊び心です。
……さて、紹介はこのぐらいにして、この記事では、どのような考えでこのキーボードを作ったか、というのを記していこうと思う。
「真打42 Air」はその名の通り42キーを搭載した左右分割カラムスタッガードキーボードだ。
なぜカラムスタッガードなのか?というのは、すでにこの記事で書いた。
カラムスタッガードのズレ量は、人によって手の大きさが異なるし、好みも分かれる部分だ。あれこれ考えても仕方ないので、自分の手にフィットする配置とさせてもらった。
ということで、ここでは、なぜキー数が42になったか?というのを説明したい。
まず私がこのキーボードを作るにあたって最初に置いた原則は、
「手首を動かさなければ打てない位置にキーを置くべきではない」
である。(そういえば、この思想は前の記事のさいごにもすこしだけ書いたね)
天キーに参加されるようなキーボード好きの方々なら「おなじみの」思想だろう。
そして、「手首を動かさないで済むのなら、そこにはキーを置いていい」ということでもある。
言ってしまえば、このキー数になったのは、キーを可能な限り多くした結果だ。
キーを可能な限り多くすれば、自ずと40%キーボードにたどり着く。
巷では「キーは少なければ少ないほど良い」のような過激なことを言っている方々も一部いるようだが、いやキーは多い方が入力の種類が増えていいに決まっているだろう、とわたしは思うよ。(もちろん検証目的や趣味でキーを減らしてみるのはよい)
一方でこれより多いのはだめだ。手首が動いてしまうのでな。
したがって、横列は6列だ。人差し指と小指はホームポジションより外側の列も使えるからね。
5列以下のキーボードは、個人的には、指の可動域を持て余しているか、指を信用しなさすぎているように感じる。スペースが許すなら、6列置いた方がいいとわたしは考えたい。
そして縦は3行だ。真ん中をホームとして、指を曲げ伸ばしすることでひとつ奥と手前にはアクセスできる。ふたつ以上は無理だ。
これで6列3行、なのだが一つ問題がある。
人間の小指は他より短くて弱いのだ。
小指は縦の可動域が狭く、しかもパワーの弱さのためどちらかというと手全体の重みも利用して打鍵するような感じになりがちで、これはホームポジションの時点で小指は多少伸ばし気味の位置にあったほうが打ちやすいということにつながる。
そしてこれは、小指に限っては「伸ばして打つ必要のある上側のへのアクセスができない」ことを意味する。つまり、人差し指と同じように6キー分を割り当てることなど不可能なのだ。せいぜい4キーが限界だ。
なお、小指ホームポジションの上にあるキーは、おそらく薬指で押した方が打ちやすい。
したがって人差し指〜小指で打てるキーは17キーずつが限度だ。
さて、残りは親指だ。
私は「ロウスタッガードのキーボードをやめろ」でも「親指をもっと使え」と書いたように、親指をなるだけ有効活用したいと思う。
親指は、指の中でも付いている方向が違うし、私としては残り4本の指とは可能な限り役割を分けたいと考えている。
つまり、spaceのほかにもenterやbackspace、モディファイアキーやレイヤーキーなどは親指に集約した方がよいと思っている。
さてそのようなキー群だが、ざっと上げるだけでもそこそこ多い。
space
enter
backspace
delete
ctrl
shift
win / command
alt / option
escape
tab
各種レイヤー切り替えキー
日本語の入力をするなら、ここにさらに英数・かなキーを加える必要があるだろう。
さてこの中で、とくに私が親指で押したいと考えるキーだが、まず単独で押すことがほとんどで、使用頻度も特に多いspaceとenter、backspaceは絶対に必要だ。
これらのキーはあまりにも重要度が高く、単押し/長押しで別のキーとして用いる機能(Mod-Tap)も用いたくない。単独で配置したい。
この思想については、あまり賛同できないひともいるだろう。ただわたしはそう思うのだよ。
そして、他のキーとの組み合わせで使いうるキー、具体的にかwin/command、alt / option、ctrl、shift、そしてレイヤーキーだが、
このうちshiftとレイヤーキーはほかのあらゆるアルファベットと一緒に打ちうるし、その頻度が特に高い。
つまり、この2つは、他の人差し指〜小指のキーが打ちにくくならないような配置にする必要がある。具体的には、親指のホームポジションか、そのひとつ内側のどこかである必要がある。
windowsでのctrlおよびMacでのcommandは、とくにzxcvあたりのショートカットが、明らかに通常のキーボードのctrl/commandの位置を前提にしたような配置になっており、小指下段から下手に動かすと逆に打ちにくくなりかねない。左手親指のホームポジションか、その外側なら、下段にあるこれらのショートカットのうち心地を大きくは損ねないものの、後述する問題(組み合わせ問題)からそれも最適解とは言えないかもしれない。
残り、alt、win/option、Macでのctrlは、使用するソフトウェアなどによっては、マウス操作と組み合わせることも多く、決して軽視できない。
そしてなにより問題をややこしくするのは、これら同士でも同時押しすることがありうるということだ。
shift+ctrl/command、まれにshift+alt/optionという組み合わせはやはり時折使うし、これもソフトによっては頻出する場合もある。
つまり、これらをすべて単純に親指に割り当ててしまうと、それはそれで困ってしまうのだ。
さて事情を説明したところで、具体的にいくつのキーが必要か考えてみよう。
enter、backspace、spaceで3つ。これは最重要キーなので、不動。
そしてレイヤーキーだが、これは最低2つ必要になる。40キー前後になることが明らかなので、記号や数字、ファンクションキーなど含めた一般的な入力を網羅しようとしたら、3レイヤー以上の構成が必要になるからだ。
そして、shift、alt/option、ctrl/command、win/ctrlのうち2つ、左右に1つずつの配置。3つ以上配置してしまうと、同じ側の手に来た2つを同時押しできない。
合計7つである。つまり、片手4キー必要だ。
また、単押しのほうも考えてみよう。欲しいキーだが、
escape、delete、英数・かな、tabの5つ。英数かなを一つのキーで使うなら、4つで済む。個人的には「IMEがいまどちらのモードか?」を気にしなければいけないのは嫌なので、英数キーとかなキーは別々にしたい。
これで、最重要キーの3つと合わせて、8キー。やはり片手4キー必要だ。
左右分離40%キーボードのなかで、少なくない数のものが、親指に3キーずつの配置となっているが、私個人としては、ギリギリ足りない。
spaceの長押しになにかを設定しているパターンが多いようだが、個人的にはかなりの気持ち悪さを感じる。spaceほどの重要なキーは単独で存在していて欲しいのだ。
4キー必要。正直なところ、親指4キーずつの配置はかなり迷った。
まず、なによりホームポジションから2キーぶん離れたキーが発生してしまう問題がある。外側よりは内側のほうがよいが、打ちにくくないのだろうか?
手前奥という形でキーを重ねてしまうという手もあるが、親指は奥行き方向の移動を不得手としておりなおさら打ちにくい。
だが、改めて考えてみると、はじめに置いた原則は「手首を動かさなければ打てない位置にキーを置くべきではない」であった。親指を2キー分内側に曲げるのは、たしかに若干遠いものの、手首は動かさなくても打てる。
また、親指に割り当てたいキー群の中には、一部ショートカットのためのキーで、テキスト入力中には使わない類のものもあり、つまりは「前後に入力する他の親指キー」という概念に乏しい。つまり頻繁にそのキーと他の親指キーを行ったり来たりすることはないはずで、距離の遠さがそこまでデメリットにならない。手首さえ動かさなければ。
ということで、親指に4キー配置してもよい!という結論に至ったのだった。
ようやく答えに辿り着いた。6列3行、小指外側列のみ2キーの17キー+親指4キー=21キー、これが両手分で42キーなのである。
そう、生命、宇宙、そして万物についての究極の疑問の答え「42」は、キーボードに隠されていたのである。
ところで、QMKやZMKといったキーボードファームウェアは単なるキーの入力にとどまらず、さまざまな機能を追加することができる。LEDとか。
そうすると、そういう機能の制御が必要になることがある。
LEDの制御などもそうだし、ZMKならBluetoothプロファイルの切り替えなどもそうだ。レイヤー機能も、ただ入力中に記号や数字レイヤーに切り替えるために使う以外にも、たとえば一時的にマクロパッドのような使い方をするためのレイヤーなどを設定してもいいわけだ。
こういう機能は、キーボードとしての機能というよりは、キーボードを操作する機能だ。思想によっては、ここに音量調整などOSを操作する機能を含めたい人もいるかもしれない。
そして、このような機能は、キーボードとしての機能とはアクセスを分けたほうがわかりやすいと思った。
つまり、そういう用途に使うためのスイッチがあった方がよい。どこかのレイヤーに組み込むより、そっちの方がわかりやすく誤操作も少ない。
しかしキー数を増やしてしまうと、「手首を動かさなければ打てない位置にキーを置くべきではない」の原則に反する。生命、宇宙、そして万物についての究極の疑問の答えでもなくなる。
そもそもキーボードを操作するキーは使用頻度も低く、なによりキーボードとしての機能と同時に使うわけではないため、ホームポジションからのアクセス性を考慮する必要性に乏しい。したがって、キーではない、独立したプッシュスイッチである方が好ましい、と私は考えた。
実質的にはキーマトリクスに組み込まれていて他のキーと特に違いがあるわけではないが、キーではない小さなプッシュスイッチとして組み込むことで、「ファームウェア的にはなんでも割り当てられるが、キーボードの制御など用で、キーとして使うことは想定していませんよ」というメッセージなのである。
親指行のキーマトリクスが2キー分余っているので、そこに割り当てればちょうど収まりがいいというのもあって、左右に2つずつ小さなスイッチを配置した。
したがって「真打42」は、厳密には46キーあることになる。
でも名前は真打「42」だ。
なぜなら、生命、宇宙、そして万物についての究極の疑問の答えだからだ。
……長くなってきたので、今回の記事はここまでとさせてもらう。
気が向いたら、真打42Airの「Air」の部分、つまりなぜ「携行性」を重視し、このマグネットでくっつける構造を採用するに至ったかというのを、後日別の記事として書くかもしれないし、書かないかもしれない。
ではまた。
(この記事は真打42Airで書かれました)