IDX: キー番号の正本としてIDXレイヤーを確定し、MAPの参照をPHYへ移す

キー番号はPHYの幾何からもELCの配線からも導出できない決めごとなので、IDXが正本を持つ。
公開した基板のキー番号は他人のキーマップが依存する公開インターフェースであり、
出力のたびに生成し直さず固定する。

「最も重要な抽象化層」「最も欠けている層」という位置づけは誤りだったので落とした。
QMKのLAYOUTマクロの引数順、ZMKのmatrix transformのmap、KMKのcoord_mappingとして
既に存在していて、形式化されていないだけである。

あわせて2点。MAPはキー番号ではなくPHYのキーIDを参照する(IDXへの挿入でMAPがずれないため)。
IDXの保存形式は order: string[] とし、ELCのLEDChain.orderと同じく並びの位置を番号とする。

phase1-json-schema.md の P-1 を解消。

Journal: journal/2026-09-21-idx-necessity.md

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-21 08:52:27 +09:00
co-authored by Claude Opus 5
parent fdd3c7def1
commit 2eb2867c13
6 changed files with 263 additions and 54 deletions
+6 -3
View File
@@ -57,9 +57,12 @@
- マトリックス定義(ROW/COL)
- ピン配置設定
- 物理レイアウト定義
- **現在の課題**: KLEとファームウェア設定の手動変換
- キーマップ配列の並び順を決める(QMKなら `LAYOUT` マクロの引数順、ZMKなら matrix transform の
`map`、KMKなら `coord_mapping`)
- **現在の課題**: KLEとファームウェア設定の手動変換。並び順は手書きで、引数の数え間違いがそのまま
キーのずれになる
- **Beyond KLE対応**: **PHY** + **IDX** + **ELC** → ファームウェア自動生成。
ROW/COLはELCの配線から出力時に割り当てる
ROW/COLはELCの配線から出力時に割り当てる。並び順は**IDXレイヤー**が正本として持つ
#### b) キーマップ設定
@@ -68,7 +71,7 @@
- 各キーへのキーコード割り当て
- レイヤー設計
- マクロ・特殊機能の設定
- **Beyond KLE対応**: **MAPレイヤー**
- **Beyond KLE対応**: **MAPレイヤー**。キーの参照にはPHYのキーIDを使い、配列への並べ替えは出力時にIDXの順で行う
### 4. 製造・組み立て段階