Yamato DaiwaAutomation

$markupProcessing — Настройки обработки разметки

Обработка разметки может быть настроена в $projectBuilding.$markupProcessing файла конфигурации (yda.config.yaml по умолчанию):

$common — общие настройки

Настройки, не связанные с конкретной группой точек входа и не принадлежащие другим подкатегориям обработки разметки. На данный момент все настройки этой подкатегории необходимо указывать для каждого режима сборки проекта отдельно.

Данная подкатегория включает в себя нижеследующие настройки.

$secondsBetweenFileUpdatingAndStartingOfRebuilding — секунд между сохранением файла разметки и началом пересборки

Определяет, сколько секунд должно пройти с момента сохранения исходного файла разметки (то есть Pug-файла) до начала нового цикла обработки файлов разметки включая преобразование из Pug в HTML. Актуально для инкрементальных режимов сборки (статическое превью, локальная разработка).

Даже если редактор кода или интегрированная среда разработки может сохранять несколько файлов [#+Keyword--YDID разом], на самом деле они сохраняются не одновременно, а с разницей в доли секунды. Кроме того, обнаружение изменения статуса файлов соответствующими утилитами также происходит с небольшой, но задержкой. Ввиду этого, без специальных мер будет одна пересборка на каждый сохранённый файл, что будет давать всё большую нагрузку на аппаратное обеспечение по мере увеличения количества файлов, пока станет невозможно осуещствлять разработку в нормальном режиме. Чтобы это оптимизировать, необходимо немного подождать после того, как один файл будет сохранён — возможно вслед за ним будет замечено сохранение последующих файлов.

В YDA на инкрементальных режимах сборки после сохранения одного Pug-файла запускается таймер ожидания пересборки, который истекает через количество секунд, которые и определяются этой настройкой. Если до истечения этого таймера не будет сохранено ни одного последующего Pug-файла, то запустится новый цикл обработки Pug-файлов. Если же до истечения этого таймера будет сохранён ещё один Pug-файл, то таймер ожидания будет перезапущен, и так до тех пор, пока в течение secondsBetweenFileUpdatingAndStartingOfRebuilding не будет сохранено ни одного последующего Pug-файла.

Значения по умолчанию достаточно для начальной стадии разработки, когда обычно количество файлов невелико. Однако когда количество файлов станет порядка несколько десятков, может стать желательным увеличить значение secondsBetweenFileUpdatingAndStartingOfRebuilding. Поскольку по умолчанию обнаружение изменений в Pug-файлах и начало обработки каждого Pug-файла логируются, то Вы сможете заметить потребность в изменении значения secondsBetweenFileUpdatingAndStartingOfRebuilding.

$mustResolveResourcesPointersToRelativePaths — нужно ли преобразовывать указатели на ресурсы к относительным путям

Имеет отношении к функциональности преобразования указателей на ресурсы. По умолчанию, YDA попытается преобразовать указатели на ресурсы к укороченным абсолютным путям для всех режимов сборки кроме статического превью, однако чтобы это сделать, для целевого режима сборки проекта должна быть указана настройка $projectBuilding.$commonSettings.publicDirectoriesRelativePaths[РЕЖИМ_СБОРКИ_ПРОЕКТА], иначе будет выдано предупреждение. Если же Вы не хотите, чтобы указатели на ресурсы разрешались к абсолютным путям, установите опции mustResolveResourcesPointersToRelativePaths значение true.

Принять решение о том, нужна ли Вам эта опция Вы должны на основе понимания разницы между абсолютными и относительными путями, а также на основе той цели, для которых Вы пишите разметку. Эта разница была подробно рассмотрена в статье о разрешении указателей на ресурсы.