The Variable interface allows to register either exact matches
of the form %{Document:Text} or prefix matches of the form
%{Date:} where the text after the colon (separator) is passed
to the evaluation of the variable.
This functionality is required for the External Tools plugin,
that will use this interface to do its macro expansion.
A unit test demonstrates a bit how it works.
Some possible/fictive examples:
- %{CurrentDocument:Text} evaluates to documents contents
- %{UUID} evaluates to a random uuid
- %{Time:hh-mm} evaluates to 17-35
Currently, none of these variables are added, it's just the
interface.