Phpdocumentor ищет пользовательские шаблоны в каталоге поставщиков

Мне нужно создать собственный шаблон для PhpDocumentor. Проблема в том, что пути, определенные в template.xmlдаже если они определены как абсолютные, они не разрешаются правильно. PhpDocumentor ищет их в каталоге поставщиков.

<template>
<author>Code Mine</author>
<email>[email protected]</email>
<description>Template for Confluence API</description>
<version>1.0.0</version>
<transformations>
<transformation writer="twig" source="./index.html.twig" artifact="index.html"/>
<transformation query="indexes.namespaces" writer="twig" source="./namespace.html.twig" />
<transformation query="indexes.classes" writer="twig" source="./class.html.twig" />
</transformations>
</template>

Несмотря на то, что шаблоны веток расположены в пути, на который ссылается xml, я получаю сообщение об ошибке, что файлы не существуют.

РЕДАКТИРОВАТЬ:

Я также попытался с настройкой всех деталей конфигурации в phpdoc.xml в надежде, что пути будут считаться относительно файла конфигурации, но безуспешно.

16

Решение

Если вы указываете пользовательский шаблон с --template="..." это будет (по какой-то странной причине) копия весь этот шаблон в папку поставщика вместе с исходными шаблонами и, следовательно, структуру пути в template.xml должен оставаться прежним. Вам нужно только изменить, например. templates/clean/ в templates/yourtemplatename/,

У меня есть проблема с кэшированием, хотя. Я не могу заставить его перечитывать мой шаблон каждый раз. Это где-то кешируется, и я не могу понять, где. Документация действительно плохая, а источник хуже.

Обновить:
Наконец выяснил, что он кеширует мой шаблон во временной папке моего компьютера. Для Windows, например: c:\Users\<username>\AppData\Local\Temp\phpdoc-twig-cache\, Поэтому я просто удаляю всю эту папку.

1

Другие решения

Поправьте меня, если я ошибаюсь, но кажется, что вы можете просто передать путь к файлу в CLI

https://www.phpdoc.org/docs/latest/getting-started/changing-the-look-and-feel.html

Использование пользовательского шаблона Если у вас есть шаблон компании или проекта, вы также можете использовать его с phpDocumentor, указав расположение папки вашего шаблона:

$ phpdoc -d "./src" -t "./docs/api" --template="data/templates/my_template"

вам может потребоваться выйти из каталога поставщиков с несколькими ..вот так

--template="../../data/templates/my_template"

или пройти абсолютный путь

--template="/var/scratch/foo/data/templates/my_template"
0

По вопросам рекламы [email protected]