Всем доброго времени суток, извиняюсь за долгое отсутсвие, занят оптимизацией выходных файлов Doxygen.
Цель Ссылка на заголовок
Оптимизировать сгенерированные Doxygen файлы для работы с мобильными устройствами.
Средства и интсрументы Ссылка на заголовок
Поскольку автодеплой идёт по Web-hook-у Gitea, то логично использование PHP.
Алгоритм Ссылка на заголовок
- Gitea: получает обновление репозитория и запускает web-hook на локальный адрес.
- PHP: сравнивает секретный код hook-а, запускает соответствующий скрипт.
- PHP: вытягивает во временную папку изменения из репозитория.
- PHP: запускает Doxygen.
- PHP: ищет все сгенерированные .html файлы и вставляет в блок
<head></head>ссылку на скрипт. - PHP: в найденных файлах изменяет открывающий тег
<body>- добавляет к нему свойствоonloadс вызовом функции инициализации вставленного - PHP: непосредственно после открывающего тега
<body>вставляет нужный<div style="display:none;"></div>блок содержащий в себе необходимые для работы скрипта DOM-объекты(svg, img и прочие). - PHP: завершает выполнение, делает отметку в логе и уведомляет Gitea о результате.
Суть оптимизации Ссылка на заголовок
- Во все блоки кода сгенерированных файлов вставляется иконка для копирования содержания.
- Боковое меню на мобильных устройствах должно иметь 2 положения:
- скрыто: полностью свёрнуто.
- открыто: развёрнуто на весь экран.
Почему именно так Ссылка на заголовок
- Как перфекционист - не хочу засорять код вставляя скрипты в тело документа.
- Лишний раз прокачаю навыки JS/CSS/PHP.
Нюансы Ссылка на заголовок
Придётся рефакторить весь JavaScript код связанный с работой бокового меню.
Польза Ссылка на заголовок
Помимо оптимизации внешнего вида останутся инструменты которые возможно пригодятся другим энтузиастам.
Скорее всего это выльется в очередной подмодуль проекта NeurOX или даже скорее в самостоятельный проект.