Cc-1c-skills mxl-decompile

Декомпиляция табличного документа (MXL) в JSON-определение. Используй когда нужно получить редактируемое описание существующего макета

install
source · Clone the upstream repo
git clone https://github.com/Nikolay-Shirokov/cc-1c-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Nikolay-Shirokov/cc-1c-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/mxl-decompile" ~/.claude/skills/nikolay-shirokov-cc-1c-skills-mxl-decompile && rm -rf "$T"
manifest: .claude/skills/mxl-decompile/SKILL.md
source content

/mxl-decompile — Декомпилятор макета в DSL

Принимает Template.xml табличного документа 1С и генерирует компактное JSON-определение (DSL). Обратная операция к

/mxl-compile
.

Использование

/mxl-decompile <TemplatePath> [OutputPath]

Параметры

ПараметрОбязательныйОписание
TemplatePathдаПуть к Template.xml
OutputPathнетПуть для JSON (если не указан — stdout)

Команда

powershell.exe -NoProfile -File .claude/skills/mxl-decompile/scripts/mxl-decompile.ps1 -TemplatePath "<путь>/Template.xml" [-OutputPath "<путь>.json"]

Рабочий процесс

Декомпиляция существующего макета для анализа или доработки:

  1. Claude вызывает
    /mxl-decompile
    для получения JSON из Template.xml
  2. Claude анализирует или модифицирует JSON (добавляет области, меняет стили)
  3. Claude вызывает
    /mxl-compile
    для генерации нового Template.xml
  4. Claude вызывает
    /mxl-validate
    для проверки

JSON-схема DSL

Полная спецификация формата:

docs/mxl-dsl-spec.md
(прочитать через Read tool).

Генерация имён

Скрипт автоматически генерирует осмысленные имена:

  • Шрифты:
    default
    ,
    bold
    ,
    header
    ,
    small
    ,
    italic
    — или описательные имена по свойствам
  • Стили:
    bordered
    ,
    bordered-center
    ,
    bold-right
    ,
    border-top
    и т.д. — по комбинации свойств

Детектирование
rowStyle

Если в строке есть пустые ячейки (без параметров/текста) и все они имеют одинаковый формат — этот формат распознаётся как

rowStyle
, а пустые ячейки исключаются из вывода.