map: キーコードをQMK表記とし、キーごとの設定をMAP、全体設定をGeneratorに置く

- キーコードはQMKの表記を基本とし、レイヤーとStatic定義は名前で参照する
- キーボード全体の設定値はFirmware Generator、キーごとの上書きはMAPが持つ。QMKの機能ごとに所属を判断しないため
- P-1を動作定義とキーごとの設定の保存形式に絞り、初期対応範囲の問いを削除する
- QMK以外のファームウェアでのキーコード表記をMAP-P-8としてbacklogへ

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P4UAjpgV7DLqJqF3sEf1bi
This commit is contained in:
2026-09-23 21:18:59 +09:00
co-authored by Claude Opus 5.5
parent e8fe11bfa1
commit 49b023ceaa
3 changed files with 22 additions and 7 deletions
+13 -6
View File
@@ -17,7 +17,14 @@ MAPのキー参照にはPHYのキーIDを使い、実機との通信に使うア
現行の保存形式は、[JSON SchemaのMAP節](phase1-json-schema.md#4-mapレイヤー-json-schema)にある
レイヤー別のキーコード割り当てを出発点とする。
動作定義と保存形式の拡張範囲は、[P-1](#p-1-割り当てる動作と保存形式の範囲)で扱う。
キーコードはQMKの表記を基本とする。当面の対象ファームウェアがQMKであるため。
レイヤーとStaticの動作定義への参照は、QMKの番号ではなく名前で書く([DynamicとStatic](#dynamicとstatic))。
ファームウェアの設定値は、キーボード全体に効くものをFirmware Generatorの設定とし、
キーごとに上書きする値(tapping termのper key設定等)をMAPが持つ。
QMKの機能ごとにどちらに属するかを個別に判断しないで済むようにするため。
動作定義とキーごとの設定の保存形式は、[P-1](#p-1-動作定義とキーごとの設定の保存形式)で扱う。
新規作成したMAPは、すべてのキーが未割り当ての状態から始める。
PHYのラベルからの自動適用は行わない([PHY「ラベル」](PHYレイヤー.md#ラベル))。
@@ -57,8 +64,6 @@ MAPエディタはDynamicの読み書きを提供する。Dynamicで変更でき
- Community Modules
- キーボード・キーマップ固有のコード(VIAのキーボード独自メニューを含む)には、原則として対応しない。
Staticで扱う動作定義のうち、どこまでを初期対応するかは[P-1](#p-1-割り当てる動作と保存形式の範囲)で扱う。
Staticで定義する動作(タップダンス等)をキーへ割り当てるときは、定義を名前で参照し、出力時に番号へ変換する。
割り当て自体はVIAで読み書きできても、参照先の定義はStaticにしかないため、
[レイヤーの参照](#キーマップレイヤーの識別)と同じく並び順に依存させない。
@@ -108,11 +113,13 @@ MAPエディタは、キーコードを当面US配列の文字で表示する。
## 未確認事項
### P-1 割り当てる動作と保存形式の範囲
### P-1 動作定義とキーごとの設定の保存形式
- 位置づけ: MAPのデータモデルを定めるための設計判断。
- 未決事項: キーコード割り当てに加え、タップ/ホールド、コンボ、マクロ等の定義・設定のうち、どこまでを初期対応するか。ファームウェア共通表現と固有表現の境界も未定。
- 完了条件: 初期対応する動作と設定、その保存形式をユーザーが決める。
- 未決事項:
- マクロ(VIAで読み書きするため内容をMAPが持つ)と、タップダンス・コンボ等のStaticで定義する動作を、MAPにどう保存するか。
- キーごとに上書きする設定を、PHYのキー、キーとレイヤーの組、キーコードのどれに付けるか。
- 完了条件: 動作定義とキーごとの設定の保存形式をユーザーが決める。
### P-2 VIAの初期対応範囲