From 1414a7d725a0d55e0758c4a300a138bf4ea0f3bd Mon Sep 17 00:00:00 2001 From: EwdErna Date: Thu, 24 Sep 2026 08:21:45 +0900 Subject: [PATCH] =?UTF-8?q?map:=20VIA=E3=81=8CCommunity=20Modules=E3=81=B8?= =?UTF-8?q?=E7=A7=BB=E3=81=A3=E3=81=A6=E3=82=82VIA=E3=83=A2=E3=82=B8?= =?UTF-8?q?=E3=83=A5=E3=83=BC=E3=83=AB=E3=81=A7=E8=BF=BD=E5=BE=93=E3=81=99?= =?UTF-8?q?=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - QMKはVIAをモジュールへ移し、旧実装を将来削除すると告知している(0.34.4 ChangeLog) - QMKとVIAの両方に追従する方針は変えず、Community Modules非対応の例外としてVIAモジュールに対応する - 移行がmasterに入る前に対応するため、MAP-P-6の再開条件に#26315のdevelop取り込みを加える Journal: journal/2026-09-24-via-module-migration.md Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_011zrYqwC8nXQX5Kg9Fur6Td --- MAPレイヤー.md | 5 +++- backlog/README.md | 4 ++- journal/2026-09-24-via-module-migration.md | 30 ++++++++++++++++++++++ 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 journal/2026-09-24-via-module-migration.md diff --git a/MAPレイヤー.md b/MAPレイヤー.md index c1eb174..61d9163 100644 --- a/MAPレイヤー.md +++ b/MAPレイヤー.md @@ -61,7 +61,10 @@ MAPエディタはDynamicの読み書きを提供する。Dynamicで変更でき - 次のものには当面対応しない。 - Vial等のフォーク - XAP、developブランチ等、master以外にある機能 - - Community Modules + - Community Modules(VIAモジュールを除く) + +QMKはVIAをCommunity Modulesの形式へ移し、従来の実装を将来のリリースで削除すると告知している(QMK 0.34.4のChangeLog「VIA Feature Migration」)。 +VIAがモジュールへ移っても、QMKとVIAの両方に追従する。そのため、移行がmasterに入る前に、VIAモジュールを有効にした出力と読み書きに対応する。 - キーボード・キーマップ固有のコード(VIAのキーボード独自メニューを含む)には、原則として対応しない。 Staticで定義する動作(タップダンス等)をキーへ割り当てるときは、定義を名前で参照し、出力時に番号へ変換する。 diff --git a/backlog/README.md b/backlog/README.md index 8d7b997..caf41fe 100644 --- a/backlog/README.md +++ b/backlog/README.md @@ -124,10 +124,12 @@ ### MAP-P-6 QMKのdevelopブランチ・Community Modulesへの対応 - 関連仕様: [MAPレイヤー](../MAPレイヤー.md)「DynamicとStatic」 -- 未決事項: 当面非対応としたdevelopブランチの機能とCommunity Modulesを、DynamicとStaticの対象に含めるか。 +- 未決事項: 当面非対応としたdevelopブランチの機能とCommunity Modules(VIAモジュール以外)を、DynamicとStaticの対象に含めるか。 含める場合、対応するコミットやモジュールの指定方法と、UIでの対応バージョンの示し方。 - 保留できる理由: QMK本家masterの公式機能だけで、Dynamicの読み書きとStaticの生成を実装できる。 - 再開条件: masterの機能だけでは足りない動作や設定が必要になったとき。 + または、VIAのモジュール移行([qmk_firmware#26315](https://github.com/qmk/qmk_firmware/pull/26315))がdevelopに入ったとき。 + VIAモジュールへの対応はmasterに入る前に済ませる([MAPレイヤー「DynamicとStatic」](../MAPレイヤー.md#dynamicとstatic))。 - 完了条件: 対象に含める範囲と、対応バージョンの管理方法をユーザーが決める。 ### MAP-P-7 再ビルド時に実機の調整を失わないワークフロー diff --git a/journal/2026-09-24-via-module-migration.md b/journal/2026-09-24-via-module-migration.md new file mode 100644 index 0000000..a7c3483 --- /dev/null +++ b/journal/2026-09-24-via-module-migration.md @@ -0,0 +1,30 @@ +# VIAのモジュール化への追従 + +## 結論 + +- QMKはVIA統合をCommunity Modules形式へ移し、旧実装を将来削除すると告知(20260830 ChangeLog「VIA Feature Migration」#26315)。 +- 方針「QMKとVIAの両方に追従する」は変えない(ユーザー判断)。 + → Community Modulesは当面非対応のままだが、VIAモジュールだけは例外として、移行がmasterに入る前に対応する。 + 最悪、Community Modulesへの対応はVIAだけでもよい(ユーザー発言)。 +- キーテスター(switch_matrix_state)が既定で動かない件は気にしない(ユーザー判断)。 + +## 案の比較 + +| 案 | 扱い | +| --- | --- | +| VIAモジュールだけCommunity Modules非対応の例外にする | 採用 | +| Community Modules全般に対応を広げる | MAP-P-6のまま保留 | +| 旧VIA実装が残るQMKに固定し続ける | 追従方針に反するので採用しない | + +## 根拠(2026-09-24時点) + +- docs/ChangeLog/20260830.md(QMK 0.34.4): + "upkeep of the VIA integration will transition to the VIA team" / + "in a future release, the old VIA feature-based implementation is expected to be removed." +- PR https://github.com/qmk/qmk_firmware/pull/26315 : develop向けDraft。追加ファイルは + modules/qmk/via/{qmk_module.json, via.c, via.h, post_config.h, post_rules.mk}。 + qmk_module.json にバージョン欄なし。VIA_EEPROM_MAGIC_ADDR 以外は後方互換を維持すると記載。 +- 0.34.4時点のVIAは従来どおり quantum/via.c、VIA_PROTOCOL_VERSION 0x000D。 +- 同梱モジュールの有効化は keymap.json の `"modules": ["qmk/via"]` の形(data/schemas/keymap.jsonschema の modules、 + builddefs/build_keyboard.mk の generate-community-modules-*)。対応コストは小さい見込み。 +- 保守がVIAチームへ移るため、将来QMKリポジトリ外へ出る可能性はあるが未確認。