docs(mxl-decompile): свернуть каталог раундтрип-форм до одного абзаца

Таблица из пяти записей читалась как меню возможностей и звала писать
apply руками — ровно та развилка, которой мы избегаем в прощающем вводе.
Осталась одна мысль, ради которой это вообще упомянуто: незнакомый ключ
в разобранном макете нельзя удалять «для чистоты» — он несёт состояние
исходного файла.
This commit is contained in:
Nick Shirokov
2026-08-17 14:26:15 +03:00
parent 2a16395951
commit f4768e245a
+6 -13
View File
@@ -43,20 +43,13 @@ powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/mxl-decompile.ps1"
Формат JSON на выходе — тот же DSL, что принимает `/mxl-compile`; его описание живёт в навыке `/mxl-compile`. Формат JSON на выходе — тот же DSL, что принимает `/mxl-compile`; его описание живёт в навыке `/mxl-compile`.
## Формы, которые встречаются только в разобранном макете ## Ключи, которых нет в описании DSL
Их пишет декомпилятор, чтобы ничего не потерять; для авторинга они не нужны, но в чужом В разобранном макете попадаются ключи, которых нет в инструкции `/mxl-compile`: например,
макете попадаются: у `rowStyle` — модификатор `apply`, у ячейки-поля ввода — `controlType: "none"`. Они несут
состояние исходного файла, которое иначе не выразить. Писать их самому не нужно; удалять
| Запись | Значение | из разобранного JSON — тоже: компилятор принимает их обратно как есть, а без них макет
|---|---| изменится.
| `"rowStyle": { "style": "имя", "apply": "row" }` | Стиль строки лёг ТОЛЬКО на саму строку. `"cells"` — только на ячейки, `"both"` (умолчание при обычной записи именем) — на то и другое |
| `"controlType": "none"` | У ячейки-поля ввода элемент управления не задан вовсе |
| `"valueType": ""` | Ячейка содержит значение, но тип не ограничен |
| `"columnSet": ""` | У области нет привязки к колоночной раскладке |
| `"pictures": { "имя": {} }` | Запись палитры без картинки |
Компилятор принимает их обратно как есть — правя такой JSON, эти ключи можно не трогать.
## Что нужно знать о пересборке ## Что нужно знать о пересборке