Как я могу добавить имя файла каждого используемого шаблона и включить в шаблоны бесплатного маркера в виде комментариев HTML? - PullRequest
1 голос
/ 10 февраля 2012

Есть ли способ настроить freemarker, чтобы механизм шаблонов Freemarker автоматически вставлял имя текущего шаблона в качестве комментария HTML?

Пример вывода HTML, который я хотел бы увидеть:

<!-- template file: main.ftl -->
normal template code of the file main.ftl

<!-- template file: myinclude.ftl -->
This is the code from myinclude.ftl

Я хотел бы использовать такую ​​функциональность только в целях отладки, чтобы было легче выяснить, какиеФрагменты HTML, где отображается в каком шаблоне.

Есть подсказки?

1 Ответ

0 голосов
/ 10 февраля 2012

Вы можете написать реализацию TemplateLoader, которая просто делегирует другому TemplateLoader (тому, который вы используете, когда не в режиме отладки), но захватывает поток, который он возвращает, и вставляет комментарий HTML после <#ftl ...> директива. (Но не добавляйте в комментарий разрыв строки, иначе он сместит номер строки в сообщениях об ошибках; вместо этого используйте ${'\n'}<!-- ... -->${'\n'}.)

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