From b3dac2572992847d6c80f60efa40fb26a03c4ec2 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Sat, 7 Feb 2026 22:13:47 +0300 Subject: [PATCH] Add epf-add-help skill and help specification New skill /epf-add-help creates built-in help files (Help.xml + HTML page) for external data processors. Also adds IncludeHelpInContents to form metadata if missing. New spec docs/1c-help-spec.md documents the help file format, HTML template, and help button integration on forms. Co-Authored-By: Claude Opus 4.6 --- .claude/skills/epf-add-help/SKILL.md | 96 +++++++++++ .../skills/epf-add-help/scripts/add-help.ps1 | 115 +++++++++++++ README.md | 4 + docs/1c-help-spec.md | 151 ++++++++++++++++++ docs/1c-xml-format-spec.md | 4 + 5 files changed, 370 insertions(+) create mode 100644 .claude/skills/epf-add-help/SKILL.md create mode 100644 .claude/skills/epf-add-help/scripts/add-help.ps1 create mode 100644 docs/1c-help-spec.md diff --git a/.claude/skills/epf-add-help/SKILL.md b/.claude/skills/epf-add-help/SKILL.md new file mode 100644 index 00000000..915cf821 --- /dev/null +++ b/.claude/skills/epf-add-help/SKILL.md @@ -0,0 +1,96 @@ +--- +name: epf-add-help +description: Добавить встроенную справку к внешней обработке 1С +argument-hint: +allowed-tools: + - Bash + - Read + - Write + - Edit + - Glob + - Grep +--- + +# /epf-add-help — Добавление справки + +Добавляет встроенную справку к обработке: файл метаданных `Help.xml`, HTML-страницу и при необходимости обновляет метаданные форм. + +## Usage + +``` +/epf-add-help [Lang] [SrcDir] +``` + +| Параметр | Обязательный | По умолчанию | Описание | +|---------------|:------------:|--------------|-------------------------------------| +| ProcessorName | да | — | Имя обработки | +| Lang | нет | `ru` | Код языка справки | +| SrcDir | нет | `src` | Каталог исходников | + +## Команда + +```powershell +powershell.exe -NoProfile -File .claude/skills/epf-add-help/scripts/add-help.ps1 -ProcessorName "" [-Lang ""] [-SrcDir ""] +``` + +## Что создаётся + +``` +// + Ext/ + Help.xml # Метаданные справки (namespace extrnprops) + Help/ + ru.html # HTML-страница справки +``` + +- `Help.xml` — фиксированная структура с `ru` (namespace `http://v8.1c.ru/8.3/xcf/extrnprops`) +- `ru.html` — HTML 4.0 Transitional с подключением стилей 1С (`v8help://service_book/service_style`) +- Справка **не регистрируется** в `ChildObjects` корневого XML — достаточно наличия файлов + +## Что модифицируется + +- Если в метаданных формы (`Forms/.xml`) отсутствует `` — скрипт добавит `false` после ``. Для форм, созданных через `/epf-add-form`, элемент уже есть. + +## Кнопка справки на форме + +После создания справки для её вызова нужна кнопка на форме. Добавь кнопку `Form.StandardCommand.Help` в AutoCommandBar формы (`Forms//Ext/Form.xml`). + +### Текущая структура AutoCommandBar (созданная epf-add-form) + +```xml + + true + +``` + +### Нужно заменить на + +```xml + + true + + + + +``` + +### Выбор id + +Просмотри все `id="..."` в `Form.xml` и выбери следующий свободный числовой id. Обычно id начинаются с 1 и идут подряд. Для кнопки нужны 2 id: один для Button, один для ExtendedTooltip. + +### Важно + +- `Form.StandardCommand.Help` — стандартная команда платформы, не нужно объявлять в `` +- Обработчика в Module.bsl не требуется — платформа сама найдёт `Help.xml` и откроет HTML + +## Редактирование справки + +После создания содержимое справки — обычный HTML. Отредактируй `Ext/Help/ru.html` в соответствии с назначением обработки. Поддерживается стандартная HTML-разметка: `

`..`

`, `

`, `