キーボード配列について考えたことがありますか?

公開日:2018-11-23
最終更新:2018-11-23
※この記事は外部サイト(https://yuuy.hatenablog.com/entry/2018/11/...)からのクロス投稿です

1. はじめに

小学校で野球を始めて数年が経つと、バットやグローブが身体の一部になる瞬間があった。中学でサッカーを初めて1年ほどで、ボールが身体の一部になる瞬間があった。その瞬間を迎えると、何も考えずに自分の思うがままに操ることができるようになった。

今まで物心がついたときから20年以上パソコンに触れており、人生の9割以上をパソコンとともに過ごして来たのに、キーボード操作でその瞬間を未だに迎えていない。無意識に操作できるようにはなったが、ミスが多く、どこかつっかえながら操作をしている感覚があった。

その事実に気付かされたのは、知人が自作キーボードでEucalyn配列を使っていると知ったときだった。今まで「キーボード配列を変えるなんてよっぽどの物好きがすることだ」と敬遠していたけど、一度調べてみようと重い腰を上げたのが1時間前で、今ではDvorak配列でこの記事を書いている。そんなお話。

2. QWERTY配列である必要性?

そもそもなぜQWERTY配列なのか。今のパソコンでQWERTY配列を使う必要はあるのか。気になって調べたところ、そんなものはどこにもなかった。QWERTY配列の歴史を調べると諸説あったが、ソースがきちんとしていたのが以下の記述。

京都大学の安岡孝一氏安岡素子氏による論文によると、初期のタイプライターのテスターとして活躍したのは、電報のオペレーターであり、彼らのニーズに合うようにできたのが、QWERTYという不思議な配列だということです。Zを表す符号は、SEを表す符号と混同しやすく、特にそれが単語の始めだったりすると余計に判別しにくいのだそうです。そこでSはZやEの近くにある必要がありました。当然の事ですが、モールス信号の受け手は送り手と同じスピードでタイプライターを打つ必要があるわけですから、キーボードの配列は非常に重要だったと考えられます。キーボードがあって、それに人間が合わせるようになったのではなく、人間のニーズに合わせてキーボードが発展したのです。

(QWERTY配列が生まれた本当の理由 - GIZMODO)

Gigazineの記事でその発展の過程が説明されているので興味がある人はどうぞ。他にも「タイプライターの都合に合わせた」などの当時の技術的な理由が挙げられていたが、現在でも採用し続けることを正当化してくれる理由はなかった。

3. Drovak配列

多分そんなことに気付いたであろうワシントン大学のDravokというおっさんが発明したのがDravok配列です。

打鍵の誤りを低減して、入力速度を向上させ、入力従事者の疲労を軽減する、ことを目的に、英文でアルファベットの出現頻度と相関性を分析し、英文入力に特化して設計された。他言語の使用は想定していない。

上段と下段の使用頻度を低く、運指距離を短く設計し、母音は左手側中段、子音は母音に連接する出現頻度の降順で右手側、それぞれに配置し、右と左を交互に打鍵させて効率的で高速な入力を企図している。

キーボードを用いる文字入力速度の世界記録で、本配列が用いられた[要出典]。

(Wikipedia)

こちらがその配列。

頑張って発明したものの当時は受け入れられず、おっさんはこの配列をそっ閉じして別の研究に移ってしまったらしい。

この配列打鍵効率は良いものの、現代使われている多くのショートカットキーの場所が変わってしまうというデメリットがある。例えばおなじみのコピペコマンドが、QWERTY配列の「Ctrl+i」「Ctrl+.」の位置に変わってしまう。Vimのキーバインドも何もかもが変わってしまう。

4. Eucalyn配列

そんな悩みを解決してくれるのがEucalyn配列だ。ショートカットでよく使うキーの配列はそのままに、打鍵効率を挙げるような配列が考案されている。詳しくは作者のブログで。

Eucalyn配列について

本当はこのEucalyn配列を採用したかったのだが、断念した。

5. 移行コスト

もちろんキーボード配列を変更すると導入コストと学習コストが発生する。しかし、今後数十年のキー入力操作の効率が改善されるなら移行コストなんて安いものだと思い、キーボード配列を変えることにした。上記以外にもいくつかのキーボード配列を調べたが、導入コストと学習コストがともに低い、手首の手根管症候群(タイピングによる負荷で痛みを発症する)を防ぐために利用する人がいるという理由でDvorak配列を採用した。先程のEucalyn配列を始め魅力的なキーボード配列はたくさんあったが、どれも導入時の設定が面倒だったので諦めた。今後キーボード配列への熱い想いが芽生えれば移行を検討したい。

ちなみにLinuxでのDvorak配列への移行はコマンド1つで完了する。

$ setxkbmap dvorak

後はdvorakjp-romantableを入れてK→C/拗音のY→H,Nにすると、日本語の子音がほとんど左手で入力でき、ホームポジション手を置いたまま文章が打てるようになる。

Dvorak配列に移行するデメリットと各OSでの移行方法について、プログラミングでDvorak配列を使いたい人のためのガイドラインという記事にまとめられているので、興味がある人は参考にどうぞ。

6. 移行した感想

キーボードのレイアウトを見ながらAZまで打ち続けること15分、なんとなくどのキーがどこにあるかがわかり始め、30分経つとアルファベットの歌を等速で歌いながらAZまで打てるようになった。それから記号の位置を確認し、日本語の適当な文をいくつか書いた後、この記事を書いている。

最初はかなり頭を使いながら打っていて、混乱することも多かった。利き手ではない左手で初めて文字を書いたときに混乱し、鏡文字と混ざりながら文字を書いてしまうのと全く同じ感覚を覚えた。途中からはあまり頭を使わずに打てるようになったが、今度はミスが多くなった。多分慣れてきてある程度感覚で打てるように分、慣れているQWERTY配列での手グセと混ざってきたのだろう。そこからしばらくミスを連発する時間が続いたが、2700字を過ぎたころからミスが減り始め、現在3,000時現在ではだいぶ快適に打てるようになった。

使い始めて30分のキー入力にあまり慣れていない段階でも「QWERTY配列ってめちゃくちゃ手を動かしてたんだ」って気付けるくらい手を動かずして入力できるキー配列だった。

なんか初めてフリック入力に切り替えたときと似てるなと思った。

記事が少しでもいいなと思ったらクラップを送ってみよう!
451
+1
@tk01の技術ブログ

よく一緒に読まれている記事

4件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
11/23 22:20

逆にDvorak配列に慣れちゃうとQWERTY配列のPC触るときに違和感ありそうな気がしますがどうでしょう?

11/23 23:23

shibbさん

コメントありがとうございます。 そこはしょうがないと割り切ってます。自分のパソコンでの作業量が一番多いので、そこでの効率化を取るべきかなと。 もちろんQWERTY配列のパソコンで頻繁に作業する必要がある人は手を出さないほうが良いと思います。

調べていると、一度Dvorak配列にどっぷり浸かって慣れた後に、QWERTY配列での作業も再度取り入れてバイリンガルになる人もいました。ただ多くの人はDvorak配列一筋になるか、さらなる効率化を求めて他のキーボード配列+自作キーボードの世界に旅立っていました。

11/24 00:28

QWERTY配列とDvorak配列のヒートマップの比較を見つけたので載せておきます。
Dvorak, QWERTY, COLEMAK で DvorakJPかつSKK

また10年間Dvorak配列を使っている人の動画(英語)も見つけたので載せておきます。
Dvorak Keyboard: My Thoughts After 10 Years

11/24 12:25

@shibb さん

10年以上仕事でもDvorak配列を使っているので、私の場合を書いておきます。

会社と自宅の自分専用PCはDvorak配列にしています。また、仕事柄、トラブル対応やメンテナンスで他人のPCや共有PC、サーバーを直接操作することがよくあります。もちろん、それらはQWERTY配列です。それでもだいたいうまくいっています。その理由を書きます。

私が他人のPCや共有PC、サーバーを操作するときはトラブル対応やメンテナンスの時がほとんどです。管理者権限で操作するため、一つのミスがシステム停止などの重大な影響を招くこともあり、慎重に操作する必要があります。そこにQWERTY配列であることが「いつもと違う」という緊張感をもたらします。その緊張感により、入力間違い等がないか一つ一つ確認し、慎重に操作することになり、単純ミスを防止します。

このように、普段はDvorak配列、普段とは違うときはQWERTY配列とすることは、適度な緊張感による単純ミス防止の効果があると考えています。なお、私の周りで賛同者は0人です。これまでDvorak配列を使っている人にリアルであったことは一度もありません。なぜ、この素晴らしさが理解できないのか、疑問でなりません!

目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする