mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-26 21:19:42 +03:00
docs(mxl): актуализировать спецификации после серии находок на стенде
Спецификация XML — дописано то, что вскрыли контролируемые макеты и замеры по корпусу: - шрифт-ссылка на СИСТЕМНЫЙ шрифт: префикс sys в корне не объявлен, поэтому объявление xmlns дописывается прямо на узел. Плюс правило вывода kind из префикса и то, что неиспользуемый шрифт в палитру не попадает; - новый раздел «Устройство палитр»: порядок документный и НЕ зависит от последовательности действий автора (проверено опытом с оформлением снизу вверх), формат по умолчанию последний, палитра дедуплицирована по содержимому; - у текста ячейки ТРИ состояния: тега нет, тег с элементами, пустой <tl/>. Третье — 57% макетов корпуса; - языковые настройки: набор языков не выводится из языков текста, description бывает самозакрывающимся, currentLanguage бывает отсутствующим и бывает указывающим на необъявленный язык. Спецификация DSL — из ограничений убрано объявление языков макета: оно больше не теряется. Добавлено пояснение, почему побайтовое совпадение достижимо не на любом макете: в долго правленных макетах остаются следы прежних состояний, которые из итогового документа не выводятся. В инструкции навыка отражена только форма шрифта-ссылки — остальное из этой серии либо уже там, либо для авторинга не нужно. Примеры из справочника скомпилированы и проверены валидатором. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
98bcf79b41
commit
241a56a29f
@@ -63,6 +63,18 @@
|
||||
</languageSettings>
|
||||
```
|
||||
|
||||
Языков бывает несколько, и объявленный набор НЕ выводится из того, на каких языках лежит
|
||||
текст ячеек: на корпусе ERP объявлен один `ru` у 10 753 макетов, при том что текст в них
|
||||
лежит и под `ru`, и под `en`. Наборы: `[ru]` — 10 753, `[ru,en]` — 148, `[en,ru]` — 20.
|
||||
|
||||
`id` и `code` всегда со значением; `description` бывает пустым и тогда пишется
|
||||
самозакрывающимся тегом `<description/>` (77 записей из 11 094). Из `id` эти поля не
|
||||
выводятся: у `en` описание бывает «Английский», пустым и «English».
|
||||
|
||||
`currentLanguage` иногда отсутствует вовсе (3 макета), иногда указывает на необъявленный
|
||||
язык (8 макетов с `en` при объявленном одном `ru`). `defaultLanguage` во всех четырёх
|
||||
русских типовых равен `ru`, но это свойство конфигурации, а не формата.
|
||||
|
||||
## Колонки
|
||||
|
||||
### Основной набор
|
||||
@@ -169,6 +181,16 @@
|
||||
На корпусе ERP из 1 212 023 записанных номеров ни один не избыточен (счётчик начинается с −1,
|
||||
поэтому у ячейки в колонке 0 номера тоже нет).
|
||||
|
||||
У текста ячейки ТРИ состояния, а не два:
|
||||
|
||||
| запись | смысл |
|
||||
|---|---|
|
||||
| `<tl>` отсутствует | текста нет |
|
||||
| `<tl>` с элементами | текст по элементу на язык (содержимое бывает пустым) |
|
||||
| `<tl/>` | тег есть, языков в нём нет |
|
||||
|
||||
Третье — не редкость: 38 075 ячеек на 1200 макетов, встречается в 57% макетов корпуса.
|
||||
|
||||
`<f>0</f>` означает, что формата у ячейки **нет вовсе** — это не индекс записи. Так записана
|
||||
ячейка без собственного оформления: 170 710 таких ячеек против 50 635, ссылающихся на формат
|
||||
по умолчанию; `<f>0</f>` встречается в 71% макетов.
|
||||
@@ -365,10 +387,38 @@
|
||||
<font faceName="Arial" height="14" bold="true" italic="false"
|
||||
underline="false" strikeout="false" kind="Absolute" scale="100"/>
|
||||
|
||||
<!-- Ссылка на стиль -->
|
||||
<!-- Ссылка на элемент стиля конфигурации -->
|
||||
<font ref="style:TextFont" kind="StyleItem"/>
|
||||
|
||||
<!-- Ссылка на системный шрифт: префикс sys в корне НЕ объявлен, поэтому объявление
|
||||
дописывается прямо на узел — тот же приём, что у цветов из web-палитры -->
|
||||
<font xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system"
|
||||
ref="sys:ANSIVariableFont" kind="WindowsFont"/>
|
||||
```
|
||||
|
||||
`kind` выводится из префикса ссылки: `style:` → `StyleItem`, `sys:` → `WindowsFont`.
|
||||
На корпусе ERP таких шрифтов 272 в 213 макетах из 10 924 (StyleItem 209, WindowsFont 63).
|
||||
|
||||
Шрифт, на который не ссылается ни один формат, в палитру не попадает: у макета без
|
||||
оформления элемента `<font>` нет вовсе.
|
||||
|
||||
## Устройство палитр
|
||||
|
||||
Три правила, общие для всех палитр. Все проверены на корпусе ERP (10 924 макета) и на
|
||||
макетах, собранных вручную в Конфигураторе.
|
||||
|
||||
**Порядок — документный.** Записи идут в том порядке, в каком встречаются при обходе
|
||||
документа сверху вниз: сначала форматы колонок (в порядке колонок), затем форматы строк и
|
||||
ячеек. Порядок НЕ зависит от того, в какой последовательности автор оформлял макет:
|
||||
контрольный опыт с оформлением снизу вверх дал палитру в порядке строк.
|
||||
|
||||
**Формат по умолчанию — последняя запись.** На корпусе он последний в 8285 макетах из 10 863,
|
||||
первым — в 25.
|
||||
|
||||
**Палитра форматов дедуплицирована по содержимому:** двух одинаковых записей в ней нет
|
||||
(10 804 макета из 10 924). Остальные 120 — накопленный мусор редактирования, там доходит до
|
||||
583 записей при 130 уникальных.
|
||||
|
||||
## Форматы
|
||||
|
||||
Палитра форматов — центральный элемент. **Индексация 1-based** (индекс 0 = формат не задан).
|
||||
|
||||
Reference in New Issue
Block a user