phy: 行の先頭以外の r, rx, ry を取り込みで受け入れる(P-16解消)
KLE本家は拒否するが、VIAとRemapは読む。Remapで扱える基板を取り込めない 状態にしないため、位置を問わず受け入れる。本家のコードから行頭チェックを 外した挙動をそのまま採る。出力は従来どおり行頭にのみ置く。 Journal: journal/2026-09-21-kle-lenient-row.md Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SSKcJLPAaPLchG4LXxk6cY
This commit is contained in:
+4
-8
@@ -334,6 +334,7 @@ const kleData = (ConfigObject | KeyLabel)[][]
|
||||
- ユニットサイズ(mm)、ビジュアルオフセット、クラスター構造、部品ノード、per-key LEDはKLE JSONに出力されない
|
||||
- バリアント構造はKLE JSONに出力しない。VariantGroupごとにバリアントを1つ選び、その配下だけを畳んで出力する
|
||||
- 部品グループ・スイッチの向きはKLE JSONに出力しない。sm, sb, st には取り込み時に保持した値をそのまま書き戻す
|
||||
- r, rx, ry は行の先頭にのみ置く。KLE本家はそれ以外の位置に置かれたものを読まない
|
||||
- p, sm, sb, st は空文字に戻す指定がKLE側で無視される。値を持つキーと持たないキーが混在する配置は、
|
||||
KLEで開いた時点で後続のキーに前の値が残る
|
||||
- KLEの `p` はキーキャップのプロファイル名(SA、DCSなど)であり、PHYのプロファイルとは対応させない
|
||||
@@ -348,7 +349,9 @@ const kleData = (ConfigObject | KeyLabel)[][]
|
||||
- 構造の復元は保証しない。KLE側での編集が大きいほど、クラスター構造は失われる
|
||||
- 配列の順番は照合に使わない。KLEは保存時にキーを「角度 → rx → ry → y → x」の順に並べ替えるため、順番は形状から決まる以上の情報を持たない
|
||||
|
||||
r, rx, ry を行の先頭以外に置いたKLE JSONが公開されている。KLE本家はこれを読み込まずエラーにする。
|
||||
r, rx, ry は行の先頭以外に置かれていても受け入れ、そのキー以降に適用する。
|
||||
rx, ry を持つキーでは、座標を (rx, ry) に戻してから x, y を加える。
|
||||
KLE本家はこの位置の r, rx, ry をエラーにするが、VIAとRemapは読む。Remapで扱える基板を取り込めない状態にしない。
|
||||
|
||||
KLEの rx, ry, r はキーの絶対配置 (x, y, rotation) に変換して取り込む。元の rx, ry は保持しない。
|
||||
|
||||
@@ -403,10 +406,3 @@ Beyond KLEはスイッチの品種を持たないため、対応づける先が
|
||||
- 位置づけ: 未解決の問い。数値入力以外に、原点をどこへ吸着させるか
|
||||
- 現状の認識: キーのローカル原点(左上角)・キー中心・境界矩形の角と中心が候補。相対グリッドとは別の機構になる
|
||||
- 格上げ条件: 原点移動を実装し、吸着なしで足りるか、足りない場合どの候補が要るかを確認する
|
||||
|
||||
### P-16 KLE本家が拒否するJSONを取り込むか
|
||||
|
||||
- 位置づけ: 未解決の問い。本文「KLE JSONの取り込み」が扱えていない
|
||||
- 現状の認識: r, rx, ry を行の先頭以外に置いたJSONが公開されている(1505件中1件)。KLE本家はエラーにするが、
|
||||
VIAのパーサーは読める。本家に合わせて拒否するか、読めるものは読むかが未定
|
||||
- 格上げ条件: 取り込みの寛容さの方針をユーザーが決める
|
||||
|
||||
Reference in New Issue
Block a user