mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-18 01:00:24 +03:00
Каскад повторял спецификацию: reference/dsl-spec.md был её копией, а styles и format-properties — копиями двух других файлов документации. Модель, чтобы что-то сделать, читала спеку целиком. Теперь в SKILL.md лежит то, что нужно почти всегда: компактный пример печатной формы, структура DSL, области, строки, ячейки с короткой формой, rowStyle и оформление из десяти частых ключей. Остальное — по файлу на задачу: layout, print, drawings, input-cells, groups, notes, style-properties, каждый 26-81 строка; читать нужно только свой. Состав ядра выбран по частоте в обычных макетах (корпус без регламентированной отчётности, которая перекашивала статистику): шрифт 93%, выравнивание 88/87%, размещение текста 86%, рамки 57-72%, формат 52%; поля ввода и группы, наоборот, оказались редкими — 7%. В mxl-decompile переехало то, что относится к чтению чужого макета, а не к авторингу: пересборка — полная перегенерация, побайтового совпадения ждать не всегда стоит, и перечень конструкций, которые цикл не переживают.
27 lines
1.3 KiB
Markdown
27 lines
1.3 KiB
Markdown
# Группы строк и колонок
|
|
|
|
Диапазон строк или колонок, который сворачивается кнопкой на полях. Задаются плоским списком;
|
|
вложенность выражена вхождением одного диапазона в другой:
|
|
|
|
```json
|
|
"rowGroups": [
|
|
{ "rows": "2-4" },
|
|
{ "rows": 3 },
|
|
{ "rows": 5, "name": "Итоговая", "collapsed": true, "titleLocation": "begin" }
|
|
],
|
|
"columnGroups": [
|
|
{ "cols": "2-3", "name": { "ru": "Показатели", "en": "Values" } },
|
|
{ "cols": 3 }
|
|
]
|
|
```
|
|
|
|
| Поле | Обяз. | По умолч. | Описание |
|
|
|------|:-----:|-----------|----------|
|
|
| `rows` / `cols` | да | — | Диапазон 1-based: число или `"N-M"` |
|
|
| `name` | нет | — | Имя группы: строка или объект «язык → текст» |
|
|
| `collapsed` | нет | `false` | Свёрнута ли группа при открытии |
|
|
| `titleLocation` | нет | `auto` | Расположение заголовка: `begin`, `end`, `auto` |
|
|
|
|
Диапазоны либо вложены, либо не пересекаются: частичное пересечение — ошибка. Порядок в списке
|
|
не важен, число уровней вложенности считается само.
|