info.json
このファイルは QMK API によって使われます。このファイルは QMK Configurator がキーボードの画像を表示するために必要な情報を含んでいます。ここにメタデータを設定することもできます。
このメタデータを指定するために、qmk_firmware/keyboards/<name>
の下の全てのレベルで info.json
を作成することができます。これらのファイルは結合され、より具体的なファイルがそうではないファイルのキーを上書きします。つまり、メタデータ情報を複製する必要はありません。例えば、qmk_firmware/keyboards/clueboard/info.json
は manufacturer
および maintainer
を指定し、qmk_firmware/keyboards/clueboard/66/info.json
は Clueboard 66% についてのより具体的な情報を指定します。
info.json
の形式info.json
ファイルは設定可能な以下のキーを持つ JSON 形式の辞書です。全てを設定する必要はなく、キーボードに適用するキーだけを設定します。
keyboard_name
Clueboard 66%
url
maintainer
qmk
layouts
info.json
ファイル内の辞書の layouts
部分は、幾つかの入れ子になった辞書を含みます。外側のレイヤーは QMK レイアウトマクロで構成されます。例えば、LAYOUT_ansi
あるいは LAYOUT_iso
。各レイアウトマクロ内には、width
、 height
、key_count
のキーがあります。これらは自明でなければなりません。
width
height
key_count
layout
レイアウトの各キー辞書は、キーの物理プロパティを記述します。https://keyboard-layout-editor.com の Raw Code に精通している場合、多くの概念が同じであることが分かります。可能な限り同じキー名とレイアウトの選択を再利用しますが、keyboard-layout-editor とは異なって各キーはステートレスで、前のキーからプロパティを継承しません。
全てのキーの位置と回転は、キーボードの左上と、各キーの左上を基準にして指定されます。
x
y
w
ks
が指定された場合は無視されます。デフォルト: 1
h
ks
が指定された場合は無視されます。デフォルト: 1
r
rx
x
ry
y
ks
[ [0,0], [1.5,0], [1.5,2], [0.25,2], [0.25,1], [0,1], [0,0] ]
label
このメタデータは主に2つの方法で使われます:
make keyboard:keymap:qmk
ターゲットをサポートする。これは、このメタデータをファームウェアにバンドルして QMK Toolbox をよりスマートにします。Configurator の作成者は、JSON API の使用に関する詳細について、QMK Compiler ドキュメントを参照することができます。