MAKETEXT -- creates text using Foswiki's I18N infrastructure
Strings captured in the
MAKETEXT macro are automatically mapped to the
current user's selected language via
locale/*.po translation files.
Parameters
| Parameter |
Description |
Default |
"text" string="text" |
The text to be displayed (the translatable string). |
|
args |
a comma-separated list of arguments to be interpolated in the string, replacing [_N] placeholders in it. |
|
Examples
-
%MAKETEXT{string="Edit"}% expands to Edit
-
%MAKETEXT{"If you have any questions, please contact [_1]." args="%WIKIWEBMASTER%"}% expands to If you have any questions, please contact wikiadmin@doebe.li.
-
%MAKETEXT{"Did you want to [[[_1]][reset [_2]'s password]]?" args="%SYSTEMWEB%.ResetPassword,%WIKIUSERNAME%"}% expands to Did you want to reset Main.WikiGuest's password?
Notes
-
[_n] brackets are validated to a positive integer from 1 to 100.
- Missing arguments are replaced with an empty string ''.
- An ampersand (
&) followed by one ascii alphabetic character (a...z, A...Z) in the translatable string will be expanded to an access key string. For example, &X will expand to <span class='foswikiAccessKey'>X</span>. If you want to write an actual ampersand, either follow it with a non-alphabetic character or write two consecutive ampersands (&&).
- Translatable strings starting with underscores (
_) are reserved. You cannot use translatable phrases starting with an underscore.
- Make sure that the translatable string is constant. Do not include
%MACROS% inside the translatable strings as they will be expanded before the %MAKETEXT{...}% itself is handled. You can, however, use macros in the args, as shown in the examples above.
- The string will be output in English if no mapping can be found in the
.po translation file for the current user's selected language.
Plurals
The
%MAKETEXT macro also supports a
limited subset of the
quant style bracket notation:
-
%MAKETEXT{string="Edit [*,_1,file]" args="4"}% expands to Edit 4 files
Notes on plurals
- Only 3 arguments are supported.
- The first parameter must be an asterisk. Literals
quant, numf or # are not supported.
- The 2nd parameter must be the argument number
- The 3rd parameter is the word or phrase to be made plural.