Vortex Coreで様々なキー配列にカスタマイズしてみた
QWERTY
QWERTYは1867年に特許を取得し、1880年代頃にほぼ現在の形ができあがった。
言うまでもなく世界標準のキーボード配列でありVortex Coreのデフォルトの配列
当時のタイプライターの技術的物理的な制約下で最も合理的な配列であった
- QWERTY DATA
https://pastebin.com/NHKvaUFQ
Default
Much Programming Core ( https://tsfreddie.github.io/much-programming-core/ ) のWebサイトから引用
カスタマイズ例
デフォルトから自分用にカスタマイズしたQWERTYレイアウト
DHIATENSOR
DHIATENSOR配列はタイプライター黎明期に存在した配列のひとつ。
下記画像はVortex Coreの配列に再現したもので、当時の物理的な位置とは大きく異なっている。
- DHIATENSOR
https://deskthority.net/wiki/DHIATENSOR
20世紀のキー配列
Dvorak
Dvorakは1936年に特許が取得された。
先行するQWERTYよりも合理的にタッチタイピングできることを目的とした歴史上初のキー配列である
多くの専門家がDvorakのほうがQWERTYよりも優れていると認めていたが、QWERTYに取って代わることはなかった。
DvorakはQWERTYに次いで2番目のユーザーシェアがあるが、コンピューターの誕生前にタイプライター用に考案されたため時代遅れになっていることは否めない。
例えばUndoやCut、Copy、Pasteなどの定着したショートカットキーを考慮していない。
また、いくつもの欠点を指摘されている。例えば右手の負担が重く、特に右手小指が疲労しやすい。
現代において新規に習得するのはあまり合理的とはいえない。
- DVORAK DATA
https://pastebin.com/JK3evifP - Wikipedia
https://ja.wikipedia.org/wiki/Dvorak%E9%85%8D%E5%88%97
Maltron
1970年代頃より、Maltron社が販売しているエルゴノミクスキーボードに実装されているキー配列
- THE MALTRON LETTER LAYOUT
https://www.maltron.com/the-maltron-letter-layout-advantage.html
Arensito
Arensitoは2001年に考案された。
非常に個性的なキー配列で、ホームポジションが通常よりも一段上に設定されている。
また、40%キーボードのように3段に圧縮した配置となっており、時代を先取りしすぎたとも言える。
Vortex Coreでは制約上、Arensito配列を再現するのは難しい。
- Arensito
http://www.pvv.org/~hakonhal/main.cgi/keyboard - Arensito Data
https://pastebin.com/vm9YTPSx
Colemakとその周辺
21世紀になってからColemakが登場した。
理想のキー配列はDvorakのようにQWERTYから大幅な変化が必要というそれまでの常識はColemakによって覆され、
「QWERTYから最小限の変更で大きな前進を」系アプローチの配列が多く考案された。
Asset
Asset配列は、2004年から2006年にかけて、時代遅れになっていたDvorakへの失望から生まれた。
QWERTYからの変化を抑えて効果を得られることを念頭においている。
ほぼ同時期にほぼ同じコンセプトで世に出たColemakのほうが高い支持を獲得したため、マイナー配列の一つに終わった。
Colemak
Colemakは2006年に誕生した。ZXCVなどQWERTYとの互換性を保ちながらもDvorakよりも優れた効果を目指した。
発案者(Shai Coleman)の名前とDvorakを組み合わせてColemakと名付けられた。
QWERTY、Dvorakに次いで3番目のユーザーシェアがある。
Colemak以降、より優れたキー配列を探究する試みが生まれ、多くの代替キー配列が考案されるようになった。
- Colemak.com
https://colemak.com/ - Colemak Data
https://pastebin.com/BUjbwUEv
Colemak Mod-DH
ColemakはDとHの位置が中央にあり、運指上の欠点であるとの批判があった。
例えば「he」や「the」という非常にありふれた単語に頻繁に現れる「he」は右手人差し指と中指の横方向の動きが大きい。
Colemak Mod-DHはそれらを修正したものである。
Tarmak
Tarmakは独立したキー配列ではなく、Colemakの習得を補助するために考案された、中間的なキー配列である。
Tarmak 1/2/3/4の4段階あり、段階的に移行してゆき、最終的にColemak/Colemak Mod-DHに到達する。
Minimak
QWERTYからの変更を最小限度に抑えながらも、効果的なキー配列を目指したもの
いくつかある中から好みのものを使えばよい。
Minimak
http://www.minimak.org/
Capewell-QWERF
2005年から2007年にかけて、Michael Capewellが自分用に考案した。
- The QWERF Layout
http://www.michaelcapewell.com/projects/keyboard/#The_QWERF_Layout
Workman
Workman配列は2010年に考案された。
Colemakの欠点である中央列のDHからの横方向の動きと右手小指の負担軽減等に留意している。
Colemak配列に触発された、またはColemakを修正する派生の中では最も有用な配列である。
- Workman
https://workmanlayout.org/
Workman配列では以下のように、キーごとに打鍵の負担を数値化し、出現頻度の高い文字を優先的に負担の少ないキーに配置している。
※画像はWorkman Webサイトより引用
Norman layout
David Normanが2013年に考案したキー配列。
本人の主張に反してこの配列は酷いもので、様々なベンチマークで劣悪なスコアを出している。
- Norman layout
https://normanlayout.info/
Qwpr keylayout
Normanと同時期の2013年に生まれた、Dvorakに失望しColemakに触発された「QWERTYから最小限の変更で大きな前進を」系アプローチの配列。
スペイン語などのラテン系言語に配慮していることが特徴
- qwpr keylayout
https://sourceforge.net/p/qwpr/wiki/Home/
Carpalx
Carpalxはキー配列ではなくキー配列を定量的に評価するツールでありプロジェクトのこと。
Colemakとほぼ同時期に始まったこともあり、QWERTYのZXCV維持への執着がみられる。
Carpalxからは複数のキー配列が考案されているが、QGMLWYが最も推奨されている。
- Carpalx
http://mkweb.bcgsc.ca/carpalx/
Carpalx QWKRFY
QWKRFYはCarpalxから生まれたキー配列のひとつ。
QWERTYから10キーの差分がある。
- PARTIAL OPTIMIZATION - QWKRFY (5 SWAP) AND QWYRFM (10 SWAP) LAYOUTS
http://mkweb.bcgsc.ca/carpalx/?partial_optimization
Carpalx QWYRFM
QWYRFMはCarpalxから生まれたキー配列のひとつ。
QWERTYから15キーの差分がある。
- PARTIAL OPTIMIZATION - QWKRFY (5 SWAP) AND QWYRFM (10 SWAP) LAYOUTS
http://mkweb.bcgsc.ca/carpalx/?partial_optimization
Carpalx QFMLWY
QFMLWYはCarpalxから生まれたキー配列のひとつ。
QWERTYとの互換性をほぼ考慮せず最適化した配列。
- FULL OPTIMIZATION - Q*MLW* LAYOUTS
http://mkweb.bcgsc.ca/carpalx/?full_optimization
Carpalx QGMLWB
QGMLWBはCarpalxから生まれたキー配列のひとつ。
ZXCVの維持をある程度考慮した配列。
- FULL OPTIMIZATION - Q*MLW* LAYOUTS
http://mkweb.bcgsc.ca/carpalx/?full_optimization
Carpalx QGMLWY
QGMLWYはCarpalxから生まれたキー配列のひとつ。
QWERTYとの互換性を考慮しZXCVを維持しつつ最適化した配列。
Carpalx産出のキー配列の中で最も推奨されている。
- FULL OPTIMIZATION - Q*MLW* LAYOUTS http://mkweb.bcgsc.ca/carpalx/?full_optimization
- QGMLWY Data
https://pastebin.com/g6dByNvs
機械生成キー配列
Carpalx以降
現代ではキーボードレイアウトベンチマークが発達し、アルゴリズムやAIによるキー配列の生成などが増えてきた。
P.M. Klausler's Evolved Layout
2002年に考案されたキー配列。
キーごとの負担をスコアづけし、アルゴリズムにより生成するなど設計プロセスには先進性が見られる。
- P.M. Klausler's Evolved Layout
http://www.michaelcapewell.com/projects/keyboard/layout_capewell.htm#Klausler
Capewell
前述のMichael Capewellが、2005年に考案したもの。
- The (Coming) Capewell Layout
http://www.michaelcapewell.com/projects/keyboard/index.htm#The_Coming_Capewell_Layout_ - Capewell Data
https://pastebin.com/Kbe77TSf
MTGAP
MTGAPは、Michael Dickensが2008年頃から2012年にかけて遺伝的アルゴリズムにより設計した一連のキー配列の総称。
いくつかのキー配列があり、それらの間には共通性が少ないものも多い。
下記は単に「MTGAP」とだけ表記した場合のキー配列。
MTGAP
https://mathematicalmulticore.wordpress.com/the-keyboard-layout-project/MTGAP Data
https://pastebin.com/MUdsJErc
Halmak
Halmakは、AI技術によって2016年にリリースされた。
右手優遇位置に母音を集め、左手優遇位置に頻出子音を集めている。
QWERTYとの互換性はほぼ考慮されていない。
また、ColemakのDH問題を重視しているのか、中央列を強く冷遇している。
- Halmak Keyboard Layout
https://github.com/MadRabbit/halmak - Keyboard Genetics
Halmakを設計したAIプロジェクト
https://github.com/MadRabbit/keyboard-genetics - OPTIMAL KEYBOARD
Halmakを考案したNikolay Nemshilovのブログ。
Dvorakを検討しColemakの学習を始めてからHalmak完成までの過程が書かれている。
http://nikolay.rocks/categories/optimal+keyboard
BEAKL系
- BEAKL (Balanced Effortless Advanced Keyboard Layout)
https://ieants.cc/code/keyboard/beakl/
BEAKLはここ数年のキーボードレイアウト沼世界を席巻する配列
小指列と人差し指隣接列を冷遇するのが大きな特徴
キーボードレイアウトベンチマークで高いスコアを叩き出している
様々なバージョンや派生形があり、バージョン違いでも全くの別配列と言っていいほど変動があり
ひとつの配列に安住することができないのが欠点
ergodox前提にしている配列もあり、Vortex Coreではシフトの関係(?と/など)を切り離すのが手間なので完全にBEAKLを再現するのは難しい
BEAKL 15
現在の最新版BEAKL 15をVortex Coreの制約の中で配置してみた
BEAKL EZ
英語と中国語の双方に配慮して作られた
マルチリンガル配列をうたっているが、日本語を考えるとKの位置が悪い
BEAKL Stretch
ホームポジションを下段においたアグレッシブな配列
指を伸ばす(Stretch)ほうが曲げるよりも負担が軽いからという発想による
日本発祥のキーボードレイアウト
Typehack
- Typehack Layout
http://typehack.web.fc2.com/ - Typehack Data
https://pastebin.com/tvTBDWEk
右手に母音を集めることで左右交互の打鍵を意図した配列
Eucalyn
- Eucalyn配列について
http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout
左手中段に母音を集めることで左右交互の打鍵を意図した配列
しかし最頻出のAが左手小指という欠点を持つ
QWやZXCVでQWERTY配列互換とし、ショートカットキーの利便性を高めている
viエディタのHJKLキー移動にある程度配慮している
Astarte
- 日本語 / 英語 両方に最適化した IT エンジニア向けキー配列 Astarte を作りました
http://neinvalli.hatenablog.com/entry/2018/07/21/185448
日本語と英語の打鍵事情に考慮しつつ、Unixコマンド等の現場のITエンジニア体験に基づいて考案された優れた配列
QWUOJP version 0.0.1
自作キーボードレイアウト。左手上段の並びと日本語配慮していることからQWUOJP配列と命名
Eucalyn配列の欠点である左手小指が最頻出のAである問題を是正しつつ、その特徴である左手下段のZXCV互換、左手上段のQW互換性、viのHJKLが破綻しない配慮、左手に母音の集中にインスピレーションを受けて、日本語と英語の文字頻出順、BEAKL系配列の小指列冷遇思想等を考慮して作った、ひとことで言えば、ぼくのつくったさいきょうのキーボードレイアウト
文字出現頻度については下記サイトを参考にしている
- 文字頻度表 - DvorakJP
http://www7.plala.or.jp/dvorakjp/index.htm
まだ改善の余地が多いだろうから、下記画像は暫定版
QWUOJP version 0.0.2
上記配列から主に右手部分を見直した
- ※追記:その後も気になった箇所を日替わりで直しながら使っているが、それらについてはここにはもう書かない。
Vortex Coreは手軽にキー配列を変えられるのでマイキー配列を日々手を加えながら使うことができる。
ひとこと付け加えると、Aを左手小指の呪縛から解放すると、左手小指が楽になり、左Controlキーが使いやすくなる。特にEmacsキーバインドが心地よい。
その他
他の主な代替キーレイアウトたち
- RSTHD
https://xsznix.wordpress.com/2016/05/16/introducing-the-rsthd-layout/ - Balance 12
https://mathematicalmulticore.wordpress.com/the-keyboard-layout-project/#comment-4976
参考
- Keyboard Layout Analyzerを使ったキー配列12種類の比較
https://qiita.com/ZeptByteS/items/6e6a3e46552dcb105948 - Alternative layouts
https://mdickens.me/typing/alternative_layouts.html - carpalx
http://mkweb.bcgsc.ca/carpalx/ - The Layout Hub
https://bruhdooh.home.blog/ - キー配列頂上決戦!さいつよなレイアウトはどれだ!
https://yushakobo.jp/blog/pluis9/2017/12/thinkkeylayout/ - Keyboard Layout Analyzer
http://ieants.cc/code/keyboard/klatest/#/config - カナ入力配列一覧
https://jisx6004.client.jp/layout.html