mt5-manager/docs/articles/README.md
Yuriy Bykov Yuriy Bykov 3ab7e53a4f Исправить оформление кода и архив четвёртой статьи
- оформить комментарии и заголовки функций по замечаниям модератора
- обновить листинги и версию сервиса до 1.01
- подготовить MQL5.zip без EX5 и личных реквизитов
- сохранить исправленную редакцию статьи и правила оформления
2026-10-29 22:07:36 +03:00

Статьи «Разрабатываем менеджер терминалов»

Документация приложения описывает актуальный код. Здесь хранятся материалы отдельных частей цикла, включая прежние версии интерфейса и решения, которые позднее менялись.

Часть Текст Состояние и источник
1. Постановка задачи article.md Опубликована, № 19804; загружена с сайта
2. Запуск нескольких экземпляров article.md Опубликована, № 19852; загружена с сайта
3. Информация о счёте и конфигурация article.md Опубликована, № 19946; загружена с сайта
4. Сервис для получения информации о терминалах article.md Подготовленный текст части № 20150, материалы публикации сохранены локально
5. Создание экземпляров и настройка счетов draft.md Рабочий черновик, ветка article-23709

У первых трёх частей есть source.md с адресом, датой загрузки и сведениями об импорте, publish/article.html с телом опубликованной статьи и локальные изображения. Код сохранён блоками в Markdown. Таблицы оставлены в HTML, чтобы сохранить их структуру. Это копии публикаций, а не новые редакции текстов.

Папка каждой части

part-NN/
  draft.md          рабочий текст до завершения редакции
  article.md        завершённый текст или импорт опубликованной статьи
  notes.md          заметки и результаты экспериментов, если нужны
  source.md         источник и дата, если текст загружен с сайта
  images/           изображения только этой статьи
  publish/          HTML, описание и отдельные листинги для публикации

Необязательно создавать все файлы заранее. Пока текст в работе, используем draft.md; после завершения редакции переименовываем его в article.md и обновляем ссылку в этом каталоге. Дополнительную копию того же текста хранить не требуется: предыдущие редакции остаются в Git. Подготовленные файлы публикации храним отдельно от Markdown. Оглавление статьи составляется вручную.

Изображения подключаются относительно текста: images/имя-файла.png. У каждой части свой набор, поэтому обновление пятой статьи не меняет снимки опубликованной четвёртой. После переименования файлов нужно проверять также скрипты подготовки HTML и ссылки из документации.

Общие материалы:

Подготовка и импорт

HTML четвёртой части собирается отдельным скриптом, рассчитанным на её разделы и адрес статьи:

python -m pip install Markdown
python docs/articles/part-04/publish/build_article_html.py

Он обновляет part-04/publish/article4.html и publish/code/*.txt. Эти листинги в редактор MQL5 нужно вставлять через инструмент «Код», а изображения загружать отдельно. Markdown — основной редактируемый текст; HTML нужен для переноса на сайт.

part-04/publish/article4-site.html — сохранённая копия тела статьи с сайта после исправлений модератора, включая подсветку, выполненную мастером «Код». Её не перезаписывает сборщик Markdown.

Архив к четвёртой части собирается отдельно:

python docs/articles/part-04/publish/build_archive.py

Результат — part-04/publish/MQL5.zip с папкой MQL5 и путями установки проекта. Скрипт берёт код из тега p4, добавляет оформленный исходник сервиса из рабочего дерева только при совпадении логики с p4 и подставляет пример конфигурации без реквизитов. Новые возможности пятой части и исполняемые EX5 туда не попадают.

Для повторного импорта первых трёх опубликованных частей:

python docs/articles/import_published.py

Скрипт использует стандартную библиотеку Python и перезаписывает локальные копии этих трёх частей, включая изображения. Если в них появились собственные правки, сначала сохраните их в Git. Импорт не публикует изменения на сайте.

Связь с документацией

Вместе с кодом новой части обновляем руководства в родительской папке docs и при необходимости быстрый старт в README. Опубликованные тексты не переписываем под каждое изменение приложения: они фиксируют соответствующий этап разработки. Перед публикацией сверяем листинги, снимки, версии файлов в таблице архива и проверяем ссылки после переносов.