This macro function inserts the contents of another phrase:
The first recommended option allows you to select a phrase by its description. The link is then established by an internal ID.
Alternatively, you can address a phrase by its autotext (classic method).
If you select a phrase folder (instead of a phrase), PhraseExpress offers you options which item to choose within the defined phrase folder.
You can also drag & drop phrases from the phrase tree directly into the phrase contents field to link it to the phrase you are currently editing. PhraseExpress automatically create the phrase insertion macro at the position where you drop the phrase.
Benefits of using nested phrases
- Nested phrases work like a template system. Footer text changes automatically take effect on all phrases which refer to it and you do not need to enter the phrases individually. This is nice if, e.g. only the phone number in a footer needs to be updated or if you would like to add a temporary special offer advertisement to your footer.
- You save storage space as you only need to add the reference to the nested phrase rather than typing its contents into each individual phrase.
This macro function checks the specified text/value against multiple text/numbers with a comparator. If the first condition is met, the defined text/value is output and the macro is finished:
In above example, PhraseExpress would output the word "kilograms" if the variable "unit" would contain "kg", etc. If no defined match is present, it would default to the text output "no unit specified".
The macro stops after the the first match of multiple comparisons.
The If-Then-Else macro allows you to change the flow of the phrase based on the evaluation of one or more conditions.
Each evaluation can be set to be combined with "or" or "and" logic.
This macro function outputs the result of a math expression.
Supported functions and operators: +, -, *, /, ^, ln(x), sin(x), cos(x), tan(x), ctg(x), abs(x), sqrt(x), modulo(x % y), round(x), floor(x), trunc(x), frac(x)
Hexadecimal number can be entered by using the $-character, e.g. $1F.
An error message appears in case of inconsistent input formatting (e.g. inconsistent use of decimal or thousands separators).
For date calculations, PhraseExpress offers a separate macro function.
Temporary variables store any text or numeric data for re-use in one or multiple phrases. If content is empty, the temporary variable is not deleted but emptied to allow you checking this state with the conditional statement macro.
Temporary variables contents will be deleted on program exit.
Unlike the macro function to create/alter a phrase, temporary variables do not trigger a write operation of the phrase file.
This macro function sets the variable contents with the specified content. If empty, the variable will be cleared.
The variable contents can be optionally output directly after defining its contents.
If saving the contents, the phrase file is saved to the harddisk after each execution of a phrase which contains this macro. If you use a PhraseExpress Server, then all clients are updated with the new phrase file.
This macro function outputs the contents of the variable with the specified name.
When entering the name of a previously defined variable in the phrase contents input box, PhraseExpress offers to automatically convert it to the macro function for outputting the variables of that name.
Set phrase contents
This macro function creates/updates/deletes a phrase as specified. If content is empty, the phrase will be deleted.
The phrase file is stored after each execution of a phrase which contains this macro. If you use a PhraseExpress Server, then all clients are updated in this case. Unless you want to share the generated phrase with others, you might want to store it in a separate, local phrase file.
If the phrase contents is empty in the macro, the phrase will be deleted!
If no phrase folder is specified as the storage destination, the phrase will be stored in the phrase file root.
This macro function waits for a specified amount of milliseconds to give applications enough time to perform automated tasks invoked by PhraseExpress, e.g. loading a website.