キーボード関係ブログ

自作キーボードの話題を中心に

QMK firmware キーレイアウトの編集 Introduction

エディタはVisual Studio Codeを使用する。プログラミングの経験がある人はそれぞれ好みのエディタを使えばよい。

Visual Studio Code - Visual Studio

 

エディタの初回起動時には、ソフトによってはプラグインやらアドオンやらの追加のインストールを要求してくる場合がある。プログラミングに触れたことが無い人はとりあえず全てYESで構わないだろう。やがて色々やりたくなってきたり、使いやすくしたくなったら各自調べてカスタマイズして頂きたい。

エディタを用いる最大の理由はその視認性である。プログラミングのイメージとして未経験者にありがちな「文字と数字がバラバラに並んでいるもの」を作るのがエディタの役割であり、またそうすることによってプログラムを読みやすくしてくれている。メモ帳でプログラムを書くことがいかに面倒なことであるかを知りたければ、実際にこれから下記で説明するファイルをメモ帳で開いてみればよい。

 

 

さてQMK firmwareは対応モデルのdefalultキーマップが大体揃っているので、それを元にして自分用のキーマップを編集していくことになる。キットを用いない場合でも、配線を既存のキットと同じようにすることでこれらのライブラリが使用できる。

それらはQMK firmwareインストールフォルダ内のkeyboardsフォルダに収められているので、まずはエディタから開いて確認しよう。

<msys2>\home\<username>\qmk_firmware\keyboards\<model>

 

例えばXD60フォルダ内のxd60.hを開くとこのようになる。

f:id:hukimijirantan:20180522212626p:plain

中央より下にかけてで表示された文字列が確認できる。これがXD60のキー配列(レイアウト)の定義を表している。

ここでXD60実機の配列を確認してみよう

f:id:hukimijirantan:20180517230656j:plain

文字列の並びとキーの配置がなんとなく似ていることがイメージできればそれでよい。少なくともエディタ内K45の表示がスペースキーに対応していそうだと予測できるだろう。

実際にこのK00K4Dまでの文字列に対してキーの機能を割り当てることで独自の配列を作成していくことになる。

 

次にエディタから、同フォルダ内"keymaps"フォルダにアクセスする。その中に"default"というフォルダがあるので、その中の"keymap.c"を開いてみよう。

f:id:hukimijirantan:20180523014238p:plain

先ほどと似たような文字列を含むプログラムが表示されていることがわかる。しかし先ほどとは違い、文字は青色ではなく、単語も異なることがわかる。

単語の部分に注目すると、その配置と意味がなんとなく理解できるだろう。実はこのファイルこそが独自のキーマップを作るための雛型であり、この部分の単語を好きに並び変えていくことによってオリジナルのキーマップを作成することができる。

default以外にも有志が作成したキーマップが色々とあるので、ここまで理解できたら他のファイルも眺めてみるといいだろう。世の中には面白いキーボードがあるものだと思いを馳せることができる。

 

次回、ついにキーマップの編集。