map: VIAがCommunity Modulesへ移ってもVIAモジュールで追従する
- 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 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011zrYqwC8nXQX5Kg9Fur6Td
This commit is contained in:
+4
-1
@@ -61,7 +61,10 @@ MAPエディタはDynamicの読み書きを提供する。Dynamicで変更でき
|
|||||||
- 次のものには当面対応しない。
|
- 次のものには当面対応しない。
|
||||||
- Vial等のフォーク
|
- Vial等のフォーク
|
||||||
- XAP、developブランチ等、master以外にある機能
|
- 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のキーボード独自メニューを含む)には、原則として対応しない。
|
- キーボード・キーマップ固有のコード(VIAのキーボード独自メニューを含む)には、原則として対応しない。
|
||||||
|
|
||||||
Staticで定義する動作(タップダンス等)をキーへ割り当てるときは、定義を名前で参照し、出力時に番号へ変換する。
|
Staticで定義する動作(タップダンス等)をキーへ割り当てるときは、定義を名前で参照し、出力時に番号へ変換する。
|
||||||
|
|||||||
+3
-1
@@ -124,10 +124,12 @@
|
|||||||
### MAP-P-6 QMKのdevelopブランチ・Community Modulesへの対応
|
### MAP-P-6 QMKのdevelopブランチ・Community Modulesへの対応
|
||||||
|
|
||||||
- 関連仕様: [MAPレイヤー](../MAPレイヤー.md)「DynamicとStatic」
|
- 関連仕様: [MAPレイヤー](../MAPレイヤー.md)「DynamicとStatic」
|
||||||
- 未決事項: 当面非対応としたdevelopブランチの機能とCommunity Modulesを、DynamicとStaticの対象に含めるか。
|
- 未決事項: 当面非対応としたdevelopブランチの機能とCommunity Modules(VIAモジュール以外)を、DynamicとStaticの対象に含めるか。
|
||||||
含める場合、対応するコミットやモジュールの指定方法と、UIでの対応バージョンの示し方。
|
含める場合、対応するコミットやモジュールの指定方法と、UIでの対応バージョンの示し方。
|
||||||
- 保留できる理由: QMK本家masterの公式機能だけで、Dynamicの読み書きとStaticの生成を実装できる。
|
- 保留できる理由: QMK本家masterの公式機能だけで、Dynamicの読み書きとStaticの生成を実装できる。
|
||||||
- 再開条件: masterの機能だけでは足りない動作や設定が必要になったとき。
|
- 再開条件: 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 再ビルド時に実機の調整を失わないワークフロー
|
### MAP-P-7 再ビルド時に実機の調整を失わないワークフロー
|
||||||
|
|||||||
@@ -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リポジトリ外へ出る可能性はあるが未確認。
|
||||||
Reference in New Issue
Block a user