Мне было интересно, есть ли способ предварительной обработки шаблона freemarker с некоторыми правилами - я хотел бы добавить синтаксический сахар, который на самом деле не является ни директивой, ни методом.
Например, у меня есть переменные, которые я печатаю так:
${item.getLocale(currentLocale).name}
${item.getLocale(currentLocale).text}
${item.parent.getLocale(currentLocale).name}
${item.parent.getLocale(currentLocale).text}
Очевидно, конструкция getLocale
делает все выражение довольно уродливым. Чего я хотел бы достичь, так это уметь писать:
${item.l.name}
${item.l.text}
${item.parent.l.name}
${item.parent.l.text}
Так что все .l.
будут во время компиляции переписаны в .getLocale(currentLocale)
.
Есть ли какой-нибудь хороший способ сделать это? Спасибо!