MACRO шаблонизатор поддерживает те теги и фильтры, которые находятся в так называемых словарях:
По-умолчанию, MACRO ищет теги в папке /limb/macro/src/tags, а также в папках limb/*/src/macro и в папке src/macro приложения, если используется пакет VIEW.
По-умолчанию, MACRO ищет фильтры в папке /limb/macro/src/filters, а также в папках limb/*/src/macro и в папке src/macro приложения, если используется пакет VIEW.
MACRO ищет файлы тегов и других элементов на основе определенных шаблонов:
То есть остальные файлы в этих папках пропускаются.
Словари обычно кешируются и собираются только 1 один раз. Обычно кеш словарей лежит в папке /var/compiled вашего приложения. Если вам необходимо пересоздать словари, например, вы создаете новый тег - просто удалите файлы словарей и MACRO проведет процедуру сканирования заново.
При сканировании MACRO использует так называемые аннотации - некоторые мета-описания, указывающие, например, название тега, какие аттрибуты являются обязательными т.д. Например, файл тега {{list:empty}}
/** * Empty List tag for a list which failed to have any contents * @tag list:empty * @aliases list:default * @parent_tag_class lmbMacroListTag * @package macro * @version $Id$ */ class lmbMacroListEmptyTag extends lmbMacroTag { } ?>
@tag, @req_attributes, @forbig_end_tag - это аннотации:
Набор аннотаций достаточно велик и отличается для фильтров и тегов см. разделы "Создание своих тегов", "Создание своих фильтров".
Обсуждение