Mesh text and attribute interpolation.

Description

Implement Guise Mesh interpolation in all attribute value and element text content. The form will be ^{…}, where ^ indicates an insertion point (or a "pyramid" for Guise Mummy). We will not use ${…} as in Maven and the JSP/JSF expression language, because there may be competing expression interpolation at other layers in the build. For example Maven may substitute properties when filtering resources at the build stage, and there may be JSP/JSF expressions that get interpolated by the server at runtime. (Neither of these are current use cases of Guise Mummy, but they are obvious possibilities.)

This syntax may be configurable in a future ticket. We also may provide to disable interpolation, e.g. with mx:interpolate="none" or mx:interpolate="attributes" or some sort, but that too would be part of a separate ticket.

Note that interpolation for purposes of this ticket refers to expression substitution in normal DOM text, not interpolation inside a MEXL expression string (which if supported will be addressed in a separate ticket).

Other interpolation syntaxes:

See also String interpolation (Wikipedia) for a list of interpolation approaches in programming languages.

Environment

None

Activity

Show:
Garret Wilson
January 18, 2021, 1:20 AM

I created this nice little method:

which can be used like this:

But I realized that I can just change the CharacterData node text without replacing the node, so we don't need that method 😁 Still, it was a nice little method; I almost hate to remove it.

Fixed

Assignee

Garret Wilson

Reporter

Garret Wilson

Labels

None

Epic Link

Components

Fix versions

Priority

Critical