%VARIABLE%
or %VARIABLE{ parameter="value" }%
- that expand into content whenever a topic is rendered for viewing. There are two types of variables: %CALC{}%
variable)
%T%
to get (a preferences variable)
%TOPIC%
to get TWikiVariables
(a predefined variable)
%CALC{ "$UPPER(Text)" }%
to get TEXT
(a variable defined by Plugin)
!%TOPIC%
to get %TOPIC%
%ALLVARIABLES%
to get a full listing of all variables defined for a particular topic
%MYVAR%
, %MyVar%
, %My2ndVar%
, and %My_Var%
are all valid variable names. Variables are case sensitive. %MyVAR%
and %MYVAR%
are not the same variable.
By convention all settings, predefined variables and variables used by plugins are always UPPER-CASE.
[multiple of 3 spaces] * [space] Set [space] VARIABLENAME [space] = [space] value
Examples:Spaces between the = sign and the value will be ignored. You can split a value over several lines by indenting following lines with spaces - as long as you don't try to use * as the first character on the following line.
Set VARIABLENAME = value
Set VARIABLENAME = value
Example:Whatever you include in your Variable will be expanded on display, exactly as if it had been entered directly.* Set VARIABLENAME = value starts here and continues here
Example: Create a custom logo variableYou can also set preferences variables on a topic by clicking the link
- To place a logo anywhere in a web by typing
%MYLOGO%
, define the Variable on the web's WebPreferences topic, and upload a logo file, ex:mylogo.gif
. You can upload by attaching the file to WebPreferences, or, to avoid clutter, to any other topic in the same web, e.g.LogoTopic
. Sample variable setting in WebPreferences:
Set MYLOGO = %PUBURL%/%WEB%/LogoTopic/mylogo.gif
Edit topic preference settings
under More topic actions
. Preferences set in this manner are not visible in the topic text, but take effect nevertheless.
Local
in place of Set
in the variable definition. For example, if the user sets the following in their home topic:
* Set EDITBOXHEIGHT = 10 * Local EDITBOXHEIGHT = 20Then when they are editing any other topic, they will get a 10 high edit box. However when they are editing their home topic, they will get a 20 high edit box.
Local
can be used wherever a preference needs to take a different value depending on where the current operation is being performed.
Use this powerful feature with great care! %ALLVARIABLES%
can be used to get a listing of the values of all variables in their evaluation order, so you can see variable scope if you get confused.
%BR%
- line break
%BULLET%
- bullet sign
%BB%
- line break and bullet combined
%BB2%
- indented line break and bullet
%RED% text %ENDCOLOR%
- colored text (also %YELLOW%
, %ORANGE%
, %PINK%
, %PURPLE%
, %TEAL%
, %NAVY%
, %BLUE%
, %AQUA%
, %LIME%
, %GREEN%
, %OLIVE%
, %MAROON%
, %BROWN%
, %BLACK%
, %GRAY%
, %SILVER%
, %WHITE%
)
%H%
- Help icon
%I%
- Idea icon
%M%
- Moved to icon
%N%
- New icon
%P%
- Refactor icon
%Q%
- Question icon
%S%
- Pick icon
%T%
- Tip icon
%U%
- Updated icon
%X%
- Alert icon
%Y%
- Done icon
%SEARCH%
, are powerful and general tools.
%INCLUDINGTOPIC%
, %INCLUDE%
, and the mighty %SEARCH%
.
%ACTIVATEDPLUGINS%
%ADDTOHEAD{}%
expands in-place to an empty string, unless there is an error in which case the variable expands to an error string.
%ADDTOHEAD{ "..." text="..." }%
Parameter: | Description: | Comment: |
---|---|---|
"..." | ID of the head block, such as "MY_CSS" | Optional but recommended |
text="..." | HTML text to add to the head section | Mutually exclusive with topic="" |
topic="Web.TopicName" | Name of topic that contains the full HTML text to add to the head section, such as topic="Main.MyCssTopic" | Mutually exclusive with text="" |
section="name" | If topic parameter is used, includes only the specified named section, as defined in the topic by the STARTSECTION and ENDSECTION variables. Nothing is shown if the named section does not exists. section="" is equivalent to not specifying a section | Optional |
requires="..., ..." | Comma-separated list of other IDs this one depends on | Optional |
%ADDTOHEAD{ "MYBOX_CSS" text="<style type=\"text/css\"> .myBox { height: 22px; background-color: #AFB3C5; } </style>" }%
%ALLVARIABLES%
AQUA
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%AQUA% aqua text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%ATTACHURL%
https://lcc.inversion-lab.com/pub/TWiki/VarATTACHURL
%ATTACHURL%/image.gif
%ATTACHURLPATH%
/pub/TWiki/VarATTACHURLPATH
%AUTHREALM%
%TOPIC%
if there is no INCLUDE.
%BASETOPIC%
%BASETOPIC%
in topic C is reported as A when looking at topic A, B when looking at topic B, and C when looking at topic C itself.
%WEB%
in case there is no include.
%BASEWEB%
%BASEWEB{format="..."}%
-- see WEB for format documentation
%BASEWEB%
in topic C is reported as the web of topic A when looking at topic A, the web of topic B when looking at topic B, and the web of topic C when looking at topic C itself.
%BB%
%BB2%
%BB3%
%BB4%
BLACK
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%BLACK% black text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
BLUE
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%BLUE% blue text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%BR%
BROWN
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%BROWN% brown text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%BUBBLESIG{WikiName}%
or %BUBBLESIG{WikiName - YYYY-MM-DD}%
-- %BUBBLESIG{TWikiGuest - 2024-10-31}%
| %BULLET% One %BB% Two %BB% Three |
%BULLET%
%CALC{formula}%
variable is handled by the SpreadSheetPlugin. Over 100 functions are available, such as $ABS()
, $EXACT()
, $EXISTS()
, $GET()/$SET()
, $IF()
, $LOG()
, $LOWER()
, $PERCENTILE()
, $TIME()
, $VALUE()
.
%CALC{formula}%
%CALC{$SUM($ABOVE())}%
returns the sum of all cells above the current cell
%CALC{$EXISTS(Web.SomeTopic)}%
returns 1
if the topic exists
%CALC{$UPPER(Collaboration)}%
returns COLLABORATION
%INCLUDE{%CALC{...}%}%
) because it does not get evaluated inside-out & left-to-right like ordinary TWiki variables. Use CALCULATE if you nest variables.
%CALCULATE{formula}%
variable is handled by the SpreadSheetPlugin. Over 100 functions are available, such as $ABS()
, $EXACT()
, $EXISTS()
, $GET()/$SET()
, $IF()
, $LOG()
, $LOWER()
, $PERCENTILE()
, $TIME()
, $VALUE()
.
%CALC{formula}%
%CALC{$EXISTS(Web.SomeTopic)}%
returns 1
if the topic exists
%CALC{$UPPER(Collaboration)}%
returns COLLABORATION
$LEFT()
or $T()
. Use CALC instead.
%CARET%
%CHILDREN{...}%
Parameter: | Description: | Default: |
---|---|---|
web="%WEB%" | Wiki web. | Current web |
topic="%TOPIC%" | The topic to find the children. | Current topic |
format="..." | Custom format for each topic found. Supports same format strings as SEARCH. See FormattedSearch for usage, variables & examples | "$topic" |
separator="..." | Separator between topics. | ", " |
default="none" | Default text shown if no children found. | "" (empty) |
%CHILDREN{ topic="%TOPIC%" }%
%COLORPICKER{}%
variable is handled by the ColorPickerPlugin.
%COLORPICKER{ name="..." value="..." }%
Parameter | Description | Default | Example |
---|---|---|---|
name | Name of input field | (required) | name="text_color" |
value | Initial color value, in hexadecimal notation for the combination of Red, Green, and Blue color values (RGB). | (none) | value="#0000ff" |
size | Size of input field, in number of characters | (browser default) | size="8" |
class | CSS class of input field or the rectangular color block | (none) | class="twikiInputField" |
style | Style of input field or the rectangular color block | (none) | style="width: 190px; height: 32px" |
type | Type of color widget: • "below" - color picker is located below the input field;• "popup" - pop-up a color picker window when clicking the button next to the input field (this uses very little vertical space); • "view" - a read-only rectangular block colored in the color value (no color picker);• "view-hex" - like view , in addition shows the color value as an RGB hexadecimal code (no color picker); | type="below" | type="view-hex" |
Additional parameters can be supplied; they will be added to the HTML input field or the rectangular color block. |
<form action="...">
%COLORPICKER{ name="text_color" value="#123456" class="twikiInputField" type="popup" }%
<form>
%COMMENT%
without parameters shows a simple text box.
%COMMENT{}%
can handle the following parameters: Parameter | Description | Default |
---|---|---|
type | This is the name of the template to use for this comment. Comment templates are defined in a TWiki template - see customization. If this attribute is not defined, the type is whatever is defined by COMMENTPLUGIN_DEFAULT_TYPE, either in this topic or in your WebPreferences. | "below" |
default | Default text to put into the textarea of the prompt. | |
target | Name of the topic to add the comment to | the current topic |
location | Regular expression specifying the comment location in the target topic. Read carefully the CommentPlugin documentation! | |
mode | For compatibility with older versions only, synonymous with type | |
nonotify | Set to "on" to disable change notification for target topics | "off" |
noform | Set to "on" to disable the automatic form that encloses your comment block - remember to insert <form> tags yourself! See CommentPluginExamples#noform for an example. | "off" |
nopost | Set to "on" to disable insertion of the posted text into the topic. | "off" |
remove | Set to "on" to remove the comment prompt after the first time it is clicked. | "off" |
button | Button label text | "Add comment" |
emailto | Send comment by email. Use comma "," to seperate multiple email addresses. This feature is disabled by default. To enable this feature, please set up "$TWiki::cfg{Plugins}{CommentPlugin}{EmailEnabled} = 1;". |
%CONTENTMODE{web="WEB"}%
Parameter: | Description: | Default: |
---|---|---|
web | The name of the web. | The current web |
%COPY%
%DASHBOARD{...}%
variable.
%DASHBOARD{ section="..." ... }%
%DASHBOARD{ section="dashboard_start" }%
%DASHBOARD{ section="banner" image="..." title="..." }%
%DASHBOARD{ section="box_start" title="Box 1 title" }%
Box 1 content
%DASHBOARD{ section="box_end" }%
%DASHBOARD{ section="box_start" title="Box 2 title" }%
Box 2 content
%DASHBOARD{ section="box_end" }%
...
%DASHBOARD{ section="dashboard_end" }%
%DATE%
2024-10-31
$year-$mo-$day
%DATEPICKER{}%
variable is handled by the DatePickerPlugin.
%DATEPICKER{ name="..." value="..." }%
Parameter | Description | Default | Example |
---|---|---|---|
name | Name of input field. φ: No output is shown if the name parameter is missing, but the CSS and Javascript are loaded. | (requiredφ) | name="Start" |
value | Initial date value. | "" (today) | value="2012-12-31" |
format | Format of resulting date value. • %a - abbreviated weekday name• %A - full weekday name• %b - abbreviated month name• %B - full month name• %C - century number• %d - the day of the month (00 ... 31)• %e - the day of the month (0 ... 31)• %H - hour (00 ... 23)• %I - hour (01 ... 12)• %j - day of the year ( 000 ... 366)• %k - hour (0 ... 23)• %l - hour (1 ... 12)• %m - month (01 ... 12)• %M - minute (00 ... 59)• %n - a newline character• %p - "PM" or "AM"• %P - "pm" or "am"• %S - second (00 ... 59)• %s - number of seconds since Epoch (since Jan 01 1970 00:00:00 UTC)• %t - a tab character• %U , %W , %V - the week number. The week 01 is the week that has the Thursday in the current year, which is equivalent to the week that contains the fourth day of January. Weeks start on Monday.• %u - the day of the week (1 ... 7, 1 = MON)• %w - the day of the week (0 ... 6, 0 = SUN)• %y - year without the century (00 ... 99)• %Y - year including the century (ex. 2012)• %% - a literal % character | "%Y-%m-%d" | format="%e %b %Y" |
id | ID of input field, optional. | "id_" + name | id="idStart" |
size | Size of input field, in number of characters. | (calculated as needed) | size="12" |
class | CSS class of input field. | "twikiInputField" | class="dateField" |
Additional HTML input field attributes, such as alt , disabled , maxlength , onblur , onchange , onfocus , readonly , style , tabindex , title |
<form action="...">
%DATEPICKER{ name="Start_Date" }%
<form>
%DISPLAYTIME%
2024-10-31 - 23:55
$year-$mo-$day
. The time is shown as hh:mm (24 hour clock)
$year-$mo-$day
. Same format qualifiers as %GMTIME%
%DISPLAYTIME{"format"}%
$seconds
, $minutes
, $hours
, $day
, $wday
, $dow
, $month
, $mo
, $year
, $ye
, $tz
, $iso
, $rcs
, $http
, $epoch
%DISPLAYTIME{"$hou:$min"}%
expands to 23:55
text
, then hide the form. If EDITACTION is defined as form
hide the normal text area and only edit the form.
%EDITACTION%
(returning either text
or form
)
;action=text
or ;action=form
to the URL for the edit script. If you have defined EDITACTION in a topic setting or preference setting you can still edit the topic content or the form by removing the ;action=form
or ;action=text
from the edit URL in the browser and reload.
%EDITFORM{topic="..." formfields="..."}%
Parameter: | Description: | Default: |
---|---|---|
"..." ortopic="..." | Name of topic containing the TWiki form, such as "Bug1234" . Specify topic name or Web.TopicName | Either "..." , topic="" or formtemplate="" is required |
formtemplate="..." | Name of form template topic, such as "BugForm" . Specify topic name or Web.TopicName | |
elements="..." | Elements of edit form: formstart is the HTML form tag, header the form header, formfields the form fields, submit the submit button, hiddenfields are hidden input fields, formend is the HTML form end tag. | "formstart, header, |
header="..." | Form header, typically containing the form name. If "on" , the default format is used:"| *[[$formweb.$formtopic][$formtopic]]* ||" Supported variables: • $formweb - name of web containing the form definition. • $formtopic - name of topic containing the form definition. | "on" |
formfields="..., ..." | Specify names of TWiki form fields to use, in sequence. The all token shows all remaining fields. | "all" |
format="..." | Format of one form field. Supported variables: • $inputfield - rendered form input field. • $title - raw field name (includes space and other special characters). • $name - field name (sanitized title). • $size - size of field or selector. • $value - initial value, or select options. • $tooltip - tooltip message. • $attributes - type attributes, such as H for hidden, M for mandatory. • $extra - extra information, such as * for mandatory field. • $formweb - name of web containing the form definition. • $formtopic - name of topic containing the form definition. See details in TWikiForms#FormFieldTypes. | "| $title: $extra | $inputfield |" |
hiddenfields="..., ..." | List of form field names to use as hidden fields. For each name listed in hiddenfields="" , add a name="value" parameter to specify the value of the hidden input field. If you omit the name="value" parameter for a hidden input field, it will be excluded as a form field, even with a formfields="all" . | "" |
submit="..." | Format of submit button row. Line separator. Variable $submit expands to submit input field with label "Save", $submit(Save) to a submit input field with specific label. | "| | $submit |" |
onsubmit="..." | Execute JavaScript when the form is submitted, optional. | "" |
action="..." | Specify a TWiki script (view , edit , save , ...), or the full URL of an action to take on form submit. | "save" |
method="..." | HTML form action method. | "post" for saveaction, else "get" |
separator="..." | Line separator. Variable $br expands to <br /> tag, and $n to a newline. | "$n" |
default="..." | Text shown when no form or form fields are found | "" |
%EDITFORM{ topic="%INCLUDINGTOPIC%" }%
- show HTML form to update form data of the including topic (typically used in an included header)
%EDITFORM{
topic="%BASEWEB%.%BASETOPIC%"
formfields="Priority, Status"
hiddenfields="Updated"
Updated="%SERVERTIME{$year-$mo-$day}%"
submit=" | | $submit(Update) |"
}%
%EDITFORMFIELD{"fieldname" form="...Form"}%
- create form field defined in a TWiki Form template
%EDITFORMFIELD{"fieldname" topic="..."}%
- create form field based on a topic that has a TWiki Form & initialize its value
%EDITFORMFIELD{"fieldname" type="..."}%
- create an HTML input field
Parameter: | Description: | Default: |
---|---|---|
"fieldname" | The name of a TWiki form field or HTML form field. | Required |
form="..." | Name of form template topic, such as "BugForm" . Specify topic name or Web.TopicName | Either form or topic is required unless type is specified |
topic="..." | Name of topic containing form, such as "Bug1234" . Specify topic name or Web.TopicName | |
format="..." | Format string. Supported variables: • $inputfield - rendered form input field. • $title - raw field name (includes space and other special characters). • $name - field name (sanitized title). • $size - size of field or selector. • $value - initial value, or select options. • $tooltip - tooltip message. • $attributes - type attributes, such as H for hidden, M for mandatory. • $extra - extra information, such as * for mandatory field. See details in TWikiForms#FormFieldTypes. This parameter is ignored if type="..." is specified. | "$inputfield" |
value="..." | Initial value of input field. If omitted and if topic="..." is specified, the value is taken from the named form field. | "" |
type="start" | Special case: Start an HTML form. Parameters: "form" type="start" action="save" topic="..." method="" onsubmit="" onreset="" • action : Specify a TWiki script (view , edit , save , ...), or a full action URL, default "view" . • topic : Specify topic name or Web.TopicName , default current topic; ignored if full action URL is provided. • method : HTML form action method, default "post" for save action, else "get" . • onsubmit : Execute JavaScript when the form is submitted, optional. • onreset : Execute JavaScript when the reset button is clicked, optional. | "" |
type="end" | Special case: End an HTML form. Parameters: "form" type="end" | "" |
type="..." | Special case: Create an input field regardless of the type defined in the TWikiForm. Used mainly for hidden fields and submit button. The nameless parameter is the field name. Supported types: • "fieldname" type="hidden" value="..." - hidden input field. • "fieldname" type="submit" value="..." - submit button, value is button label. • "fieldname" type="button" value="..." onclick="..." - regular button, value is button label. • "fieldname" type="text" value="..." size="80" - text input field. • "fieldname" type="textarea" value="..." size="80x6" - multi line text area field, size denotes columns x rows. • "fieldname" type="checkbox" value="..." text="..." - checkbox, text is display text. • "fieldname" type="radio" value="..." text="..." - radio button, text is display text. • In addition, any valid XHML and HTML5 input type is supported, such as type="date" , type="file" , type="image" . Additional type-specific parameters can be supplied, such as alt="..." , checked="checked" , class="..." , max="..." , min="..." , placeholder="..." , src="..." , style="..." , width="..." . Consult HTML documentation. | "" |
%EDITFORMFIELD{ "ReleaseType" form="PackageForm" value="Beta-1" }%
%EDITFORMFIELD{ "form" type="start" action="save" topic="%BASEWEB%.%BASETOPIC%" method="post" }%
| Priority: | %EDITFORMFIELD{ "Priority" topic="%BASETOPIC%" }% |
| Status: | %EDITFORMFIELD{ "Status" topic="%BASETOPIC%" }% |
| | %EDITFORMFIELD{ "form" type="submit" value="Update" }% |
%EDITFORMFIELD{ "Updated" type="hidden" value="%SERVERTIME{$year-$mo-$day}%" }%
%EDITFORMFIELD{ "form" type="end" }%
%EDITTABLE{}%
variable is handled by the EditTablePlugin
%EDITTABLE{ attributes }%
Attribute | Comment | Default |
---|---|---|
header | Specify the header format of a new table like "|*Food*|*Drink*|" . Useful to start a table with only a button | (no header) |
format | The format of one column when editing the table. A cell can be a text input field, or any of these edit field types: • Text input field (1 line): | text, <size>, <initial value> | • Textarea input field: | textarea, <rows>x<columns>, <initial value> | • Drop down box: | select, <size>, <option 1>, <option 2>, etc* | * only one item can be selected • Radio buttons: | radio, <size*>, <option 1>, <option 2>, etc | * size indicates the number of buttons per line in edit mode • Checkboxes: | checkbox, <size*>, <option 1>, <option 2>, etc | * size indicates the number of checkboxes per line in edit mode • Fixed label: | label, 0, <label text> | • Row number: | row, <offset> | • Date: | date, <size>, <initial value>, <DHTML date format*> | * see Date Field Type | "text, 16" for all cells |
changerows | Rows can be added and removed if "on" Rows can be added but not removed if "add" Rows cannot be added or removed if "off" | CHANGEROWS plugin setting |
quietsave | Quiet Save button is shown if "on" , hidden if "off" | QUIETSAVE plugin setting |
include | Other topic defining the EDITTABLE parameters. The first %EDITTABLE% in the topic is used. This is useful if you have many topics with the same table format and you want to update the format in one place. | (none) |
helptopic | Topic name containing help text shown below the table when editing a table. The %STARTINCLUDE% and %STOPINCLUDE% variables can be used in the topic to specify what is shown. | (no help text) |
headerislabel | Table header cells are read-only (labels) if "on" ; header cells can be edited if "off" or "0" | "on" |
editbutton | Set edit button text, e.g. "Edit this table" ; set button image with alt text, e.g. "Edit table, %PUBURL%/%SYSTEMWEB%/TWikiDocGraphics/edittopic.gif" ; hide edit button at the end of the table with "hide" (Note: Button is automatically hidden if an edit button is present in a cell) | EDITBUTTON plugin setting |
buttonrow | Set to top to put the edit buttons above the table. | bottom |
javascriptinterface | Use javascript to directly move and delete row without page refresh. Enable with "on" , disable with "off" . | JAVASCRIPTINTERFACE plugin setting |
redirectto | Set up a return page after saving changes. e.g By setting redirectto="%BASEPAGE%", you can return to base page if your editable table is included by another page. | (none) |
%EDITTABLE{ format="| text, 20 | select, 1, one, two, three |" changerows="on" }%
| *Name* | *Type* |
| Foo | two |
"\n"
) and linefeed ("\r"
)
"<"
, ">"
, "&"
, single quote ('
) and double quote ("
)
"%"
, "["
, "]"
, "@"
, "_"
, "*"
, "="
and "|"
%ENCODE{"string"}%
Parameter: | Description: | Default: |
---|---|---|
"string" | String to encode | required (can be empty) |
type="url" | Encode special characters for URL parameter use, like a double quote into %22 | (this is the default) |
type="quotes" | Escape double quotes with backslashes (\" ), does not change other characters. This type does not protect against cross-site scripting. | type="url" |
type="moderate" | Encode special characters into HTML entities for moderate cross-site scripting protection: "<" , ">" , single quote (' ) and double quote (" ) are encoded. Useful to allow TWiki variables in comment boxes. | type="url" |
type="safe" | Encode special characters into HTML entities for cross-site scripting protection: "<" , ">" , "%" , single quote (' ) and double quote (" ) are encoded. | type="url" |
type="entity" | Encode special characters into HTML entities, like a double quote into " . Does not encode newline (\n ) or linefeed (\r ). | type="url" |
type="entity" extra=" $n$r" | For type="entity" only, use the extra parameter to encode additional characters to HTML numeric entities. Formatting tokens can be used, such as "$n" for newline. Note that type="entity" extra=" $n$r" is equivalent to type="html" . | type="url" extra="" |
type="html" | Encode special characters into HTML entities. In addition to type="entity" , it also encodes space, \n and \r . Useful to encode text properly in HTML input fields. See equivalent ENTITY. | type="url" |
type="json" | Escape double quotes and backslashes with backslashes (\" and \\ , respectively), escape non-printable characters with hex code \u0000 ... \u001F , does not change other characters. Use this to properly escape text for a JSON string. Example result: This is a string with \"quoted\" and \\backslashed\\ text . | type="url" |
type="csv" | Escape single quotes and double quotes by repeating them, other characters do not change. Use this to properly escape fields in CSV reports that output comma-separated values, such as "field 1","field 2 with ''single'' and ""double"" quotes" . | type="url" |
type="search" | Special encoding used for SEARCH: Substitute % characters into non-printable characters, so that TWikiVariables are no longer expanded. Also escapes quotes. Used to feed a search string from a URLPARAM into SEARCH without expanding any variables, such as when searching for %BR% . | type="url" |
newline="..." | Replace a newline with the specified value before encoding. Please note that newline="<br/>" does not bring <br/> to the output because < and > are encoded (except with the quotes and csv types). To have <br/> in the output, you need to specify newline="$br" . However, newline="$br" does not work in combination with type="url" (the defautl type). This shouldn't be a problem because it's very rare to need to have <br/> encoded in a URL. In addition to $br , $n has a special meaning in a newline parameter value - $n results in a newline in the output. This parameter is expected to be used in combination with the moderate , safe , entity , or html type. With the other types, it causes unuseful results. |
%ENCODE{"spaced name"}%
expands to spaced%20name
%ENCODE{"spaced name" type="entity" extra=" "}%
expands to spaced name
"html"
. A shorter %ENTITY{any text}%
can be used instead of the more verbose %ENCODE{ "any text" type="html" }%
. <input type="text" name="address" value="%ENTITY{any text}%" />
%SET{ "lunch" value="%ENCODE{ "string with "quotes"" type="quotes" }%" remember="1" }%
type="moderate"
, type="safe"
, type="entity"
or type="html"
to protect user input from URL parameters and external sources against cross-site scripting (XSS). type="html"
is the safest mode, but some TWiki applications might not work. type="safe"
provides a safe middle ground, type="moderate"
provides only moderate cross-site scripting protection.
ENDBG
is a rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of background colors.
%REDBG% red background %ENDBG%
%<color>BG%
section must end with %ENDBG%
. If you want to switch from one background color to another one you first need to end the active background color with %ENDBG%
, such as %REDBG% some text %ENDBG% %GREENBG% more text %ENDBG%
.
ENDCOLOR
is a rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%RED% red text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%TWOCOLUMNS% ...text... %ENDCOLUMNS%
to get a page layout with two columns. See TWOCOLUMNS, THREECOLUMNS, FOURCOLUMNS.
%TWOCOLUMNS% ... %ENDCOLUMNS%
%ENDSECTION{"name"}%
%ENDSECTION{type="include"}%
%ENDSECTION{type="templateonly"}%
%ENDSECTION{type="expandvariables"}%
Parameter: | Description: |
---|---|
"name" | Name of the section. |
type="..." | Type of the section being terminated; supported types "section" , "include" , "templateonly" , "expandvariables" |
STARTSECTION
is named, the corresponding ENDSECTION
must also be named with the same name. If the STARTSECTION
specifies a type, then the corresponding ENDSECTION
must also specify the same type. If the section is unnamed, ENDSECTION
will match with the nearest unnamed %STARTSECTION%
of the same type above it.
"\n"
) and linefeed ("\r"
)
"<"
, ">"
, "&"
, single quote ('
) and double quote ("
)
"%"
, "["
, "]"
, "@"
, "_"
, "*"
, "="
and "|"
%ENTITY{string}%
%ENTITY{text with "quotes" and
newline}%
expands to text with "quotes" and newline
<input type="text" name="address" value="%ENTITY{any text}%" />
%ENTITY{string}%
is roughly equivalent to %ENCODE{ "string" type="html" }%
, but the latter cannot handle strings that have double quotes embedded in it.
{AccessibleENV}
in the Security Settings/Miscellaneous section of configure
can be displayed. Any other variable will just be shown as an empty string, irrespective of its real value.
%ENV{MOD_PERL}%
displays as: not set
not set
.
%EXAMPLEVAR{}%
variable is handled by the EmptyPlugin
%EXAMPLEVAR{"text" format="..."}%
text="..."
- example text.
format="..."
- format of report.
%EXAMPLEVAR{"hello" format="| $topic: $summary |"}%
%FAILEDPLUGINS%
%FORM{topic="..." formfields="..." ...}%
Parameter: | Description: | Default: |
---|---|---|
"..." ortopic="..." | Name of topic containing the TWiki form, such as "Bug1234" . Specify topic name or Web.TopicName | Current topic |
rev="..." | Get the form from the specified topic revision, range "1" to top revision of topic. "0" is equivalent to the top revision | The rev URL parameter value if present, else the top revision |
formfields="..., ..." | Specify names of TWiki form fields to show, in sequence. The all token shows all remaining fields. | "all" |
header="..." | Form header, typically containing the form name. If "on" , the default format "| *[[$formweb.$formtopic][$formtopic]]* ||" is used. If "none" , the header is suppressed. Supported variables: • $formweb - name of web containing the form definition. • $formtopic - name of topic containing the form definition. | "on" |
format="..." | Format of one form field. Supported variables: • $title - raw field name (includes space and other special characters). • $name - field name (sanitized title). • $type - form field type. • $size - size of field or selector. • $value - form field value. • $value(20, -<br />) - value hyphenated every 20 characters using separator -<br />. • $value(30, ...) - value shortened to 30 characters. • $length - length of form field value. • $tooltip - tooltip message. • $attributes - type attributes, such as H for hidden, M for mandatory. • $formweb - name of web containing the form definition. • $formtopic - name of topic containing the form definition. See details in TWikiForms#FormFieldTypes. | "| $title: | $value |" |
separator="..." | Line separator. Variable $br expands to <br /> tag, and $n to a newline. | "$n" |
default="..." | Text shown when no form or form fields are found | "" |
newline="$br" | Convert newlines in textarea to other delimiters. Variable $br expands to <br /> tag, and $n to a newline. Other text is encoded based on encode parameter. | "$br" if format is a TWiki table, else "\n" |
encode="html" | Encode special characters in form field value into HTML entities. Additional encodings available: encode="quote" , encode="moderate" , encode="safe" , encode="entity" and encode="url" . See ENCODE for details. | "" (no encoding) |
showhidden="..." | Set to "on" to show also hidden form fields. | "" |
%FORM{topic="%INCLUDINGTOPIC%"}%
- show form data of the including topic (typically used in an included header)
%FORM{topic="Projects.SushiProject" formfields="Title, Status, Deadline" header="none"}%
- show a subset of form fields
%FORM{format="$name" header="none" separator=", "}%
- get all visible form field names as a list
%FORMFIELD{"fieldname"}%
Parameter: | Description: | Default: |
---|---|---|
"fieldname" | The name of a TWiki form field | required |
topic="..." | Topic where form data is located. May be of the form Web.TopicName | Current topic |
rev="..." | Get the form field value from the specified topic revision, range "1" to top revision of topic. "0" is equivalent to the top revision | The rev URL parameter value if present, otherwise the top revision |
format="..." | Format string. Supported variables: • $value - form field value • $value(20, -<br />) - value hyphenated every 20 characters using separator -<br /> • $value(30, ...) - value shortened to 30 characters • $length - length of value (can be used to test if value is set) • $title - raw field name (includes space and other special characters) • $name - field name (sanitized title) • $attributes - form field attributes • $formtopic - name of form definition topic | "$value" |
default="..." | Text shown when no value is defined for the field | "" |
alttext="..." | Text shown when field is not found in the form | "" |
newline="$br" | Convert newlines in textarea to other delimiters. Variable $br expands to <br /> tag, and $n to a newline. Other text is encoded based on encode parameter. | no conversion |
encode="html" | Encode special characters into HTML entities. If a FORMFIELD is passed into an HTML form field it should be encoded as "html" . Additional encodings available: encode="quote" , encode="moderate" , encode="safe" , encode="entity" , encode="url" and encode="csv" . See ENCODE for details. | "" (no encoding) |
%FORMFIELD{ "ProjectName" topic="Projects.SushiProject" default="(not set)" alttext="ProjectName field not found" }%
%FORMFIELD{ "Title" topic="%INCLUDINGTOPIC%" }%
topic="%INCLUDINGTOPIC%"
if you have a base topic that includes a report topic, and in the report topic you want to reference a field of the base topic
%FORMFIELD{ "LastName" topic="%USERSWEB%.%WIKINAME%" encode="safe" }%
encode="safe"
to guard against Cross-Site Scripting (XSS) attacks
<input type="text" name="Address" value="%FORMFIELD{ "Address" encode="html" }%" />
%FOURCOLUMNS% ...text... %ENDCOLUMNS%
to get a page layout with four columns. The layout is responsive, e.g. it automatically adjusts to a lower number of columns (4 => 3 => 2 => 1) depending on the window width or screen width of the device used. The 300 pixels minimum width of a column determines the number of columns shown. Embedded images scale down automatically to the width of the screen if needed.
%FOURCOLUMNS% ... %ENDCOLUMNS%
%SET{}%
. The %SET{}%
and %GET{}%
variables are handled by the SetGetPlugin.
%GET{ "name" default="..." }%
Parameter | Description | Default |
---|---|---|
"name" | Name of variable, such as menu . May optionally contain a JSON path, such as menu.File.Open . | (required) |
format="..." | Format with supported variables: • $name for variable name • $value for variable value • $isdefined expanding to 1 or 0 depending if variable is defined or not • $isset expanding to 1 or 0 depending if variable is logically true or false • $ispersistent expanding to 1 or 0 depending if variable is persistent or not • all FormatTokens such as $dollar , $n , $percnt . | "$value" |
default="..." | Text shown if variable is not defined, e.g. not found. This parameter overrides the format parameter. | "" (empty string) |
store="..." | Specify a store name that holds the persistent variable. This assumes the variable was previously set with the same store name. | "" |
%GET{"lunch"}%
returns Sushi
if the following has been previously set:%SET{ "lunch" value="Sushi" }%
- see more examples
%GET{ name }%
- see description.
%SET{ menu = { "File": { "New": [ "new", "F" ], "Open": [ "open", "F" ] }, "Edit": { "Copy": [ "cpy", "F" ], "Paste": [ "pst", "F" ] } } }%
- set a JSON object
%GET{ menu.File.Open }%
- returns: ["open","F"]
%GMTIME%
2024-10-31 - 23:55
$year-$mo-$day
%GMTIME{"format"}%
Variable: | Unit: | Example |
---|---|---|
$seconds | seconds | 59 |
$minutes | minutes | 59 |
$hours | hours | 23 |
$day | day of month | 31 |
$wday | day of the Week (Sun, Mon, Tue, Wed, Thu, Fri, Sat) | Thu |
$dow | day of the week (Sun = 0) | 2 |
$week | number of week in year (ISO 8601) | 34 |
$month | short name of month | Dec |
$mo | 2 digit month | 12 |
$year | 4 digit year | 1999 |
$ye | 2 digit year | 99 |
$tz | either "GMT" (if set to gmtime), or offset such as "-0700" (if set to servertime) | GMT |
$iso | ISO format timestamp | 2024-10-31T23:55:41Z |
$rcs | RCS format timestamp | 2024/10/31 23:55:41 |
$http | E-mail & http format timestamp | Thu, 31 Oct 2024 23:55:41 GMT |
$epoch | Number of seconds since 00:00 on 1st January, 1970 | 1730418941 |
%GMTIME{"$day $month, $year - $hour:$min:$sec"}%
expands to 31 Oct, 2024 - 23:55:41
GRAY
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%GRAY% gray text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
GREEN
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%GREEN% green text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%GROUPS{"format" ...}%
Parameter: | Description: | Default: |
---|---|---|
header="" | Table header. Standard format tokens are expanded. To omit the header, specify an empty value or "none" . | "| *Group* | *Members* |" |
format="" | Format of one row, may include tokens: • $group - topic name of group • $grouplink - link to group • $members - list of members, up to limit • standard format tokens | "| $grouplink | $members |" |
separator="" | Line separator. Standard format tokens are expanded. | "$n" (newline) |
memberlimit="" | Truncate member list. Specify "all" for full list. | "32" |
memberformat="" | Format of one member, may include tokens: • $wikiusername - Web.TopicName of user • $wikiname - TopicName of user | "[[$wikiusername][$wikiname]]" |
memberseparator="" | Separator for members. Standard format tokens are expanded. | ", " |
sort="on" | By default, the members of a group are listed in the same order as in the definition in the group topic. With this parameter, members are listed in the alphabetical order of their wiki names. | "off" |
%H%
%HEADLINES{"url"}%
variable is handled by the HeadlinesPlugin.
%HEADLINES{ "http://..." }%
"..." | Source of RSS or ATOM feed; this can be a URL (starting with http) or a web.topic location for internal feeds |
refresh="60" | Refresh rate in minutes for caching feed; "0" for no caching |
limit="12" | Maximum number of items shown |
header="..." | Header. May include these variables: - $channeltitle , $title : title of channel (channel.title) - $channellink , $link : link of channel (channel.link) - $channeldescription , $description : description (channel.description) - $channeldate , $date : publication date of the channel (channel.pubDate) - $rights : copyrights of the channel (channel.copyright) - $imagetitle : title text for site (image.title) - $imagelink : link for site (image.link) - $imageurl : URL of image (image.url) - $imagedescription : description of image (image.description) |
format="..." | Format of one item. May include these variables: - $title : news item title (item.title) - $link : news item link (item.link) - $description : news item description (item.description) - $date : the publication date (item.pubDate, item.date) - $category : the article category (item.category) |
newline="$br" | Convert newlines in feed; "$br" becomes <br /> tag, default "$n" (newline) |
filter="..." | Filter out content from feed; for example to delete an encoded break tag specify "<br>" |
Details |
%HEADLINES{ "http://slashdot.org/slashdot.rdf" header="*[[$link][$title]]:* $description" format="$t* [[$link][$title]]" limit="4" }%
shows the latest Slashdot news in bullet list format
%HIDE{ any text }%
<!-- HTML comments -->
also hide content from the user, but unlike HIDE, HTML comments are sent to the browser.
%HIDEINPRINT{ any text }%
any text
in topic view, or empty string in printout
%HOMETOPIC%
WebHome
, renders as WebHome
%HTTP%
%HTTP{"Header-name"}%
%HTTP% | |
%HTTP{"Accept-language"}% | |
%HTTP{"User-Agent"}% | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
COOKIE
field value cannot be retrieved. You can add or delete hidden fields by changing the {HTTP}{HiddenFields}
configuration parameter.
%HTTP_HOST%
lcc.inversion-lab.com
%HTTP%
but operates on the HTTPS environment variables present when the SSL protocol is in effect. Can be used to determine whether SSL is turned on.
%HTTPS%
%HTTPS{"Header-name"}%
COOKIE
field value cannot be retrieved. You can add or delete hidden fields by changing the {HTTP}{HiddenFields}
configuration parameter.
%I%
%ICON{"name"}%
Parameter: | Description: | Default: |
---|---|---|
"name" | Name of icon | required |
format="..." | Format of icon. Supported variables (with %ICON{"person"}% example): • $name - name of icon (person ) • $type - type of icon (gif ) • $filename - icon filename (person.gif ) • $web - web where icon is defined (TWiki ) • $topic - topic where icon is defined (TWikiDocGraphics ) • $description - icon description (Person ) • $width - width of icon ('16') • $height - height of icon ('16') • $img - full img tag of icon (<img src="... /> ) • $info - icon tag with usage info in title • $url - URL of icon (http://example.com/pub/TWiki/TWikiDocGraphics/person.gif ) • $urlpath - URL path of icon (/pub/TWiki/TWikiDocGraphics/person.gif ) | format="$img" |
default="else" | Alternate icon if named icon is not defined | default="$name" |
%ICON{"flag-gray"}%
returns:
%ICON{"pdf"}%
returns:
%ICON{"smile.pdf"}%
returns:
%ICON{"/home/sweet/home.pdf"}%
returns:
%ICON{"http://twiki.org/doc/xhtml.xsl"}%
returns:
%ICON{"bubble" format="$description icon is defined in $web.$topic"}%
returns: Speech bubble icon is defined in TWikiDocGraphics
arrowbright
, bubble
, choice-yes
, hand
bmp
, doc
, gif
, hlp
, html
, mp3
, pdf
, ppt
, txt
, xls
, xml
, zip
%ICON{"name"}%
generates the full HTML img tag. Specify image name or full filename (see ICON for details on filenames.)
%ICONURL{"name"}%
%ICONURL{"arrowbright"}%
returns https://lcc.inversion-lab.com/pub/TWiki/TWikiDocGraphics/arrowbright.gif
%ICONURL{"novel.pdf"}%
returns https://lcc.inversion-lab.com/pub/TWiki/TWikiDocGraphics/pdf.gif
%ICONURL{"/queen/boheme.mp3"}%
returns https://lcc.inversion-lab.com/pub/TWiki/TWikiDocGraphics/wav.gif
%ICONURLPATH{"name"}%
%ICONURLPATH{"locktopic"}%
returns /pub/TWiki/TWikiDocGraphics/locktopic.gif
%ICONURLPATH{"eggysmell.xml"}%
returns /pub/TWiki/TWikiDocGraphics/xml.gif
%ICONURLPATH{"/doc/xhtml.xsl"}%
returns /pub/TWiki/TWikiDocGraphics/xsl.gif
%IF{"CONDITION" then="THEN" else="ELSE"}%
shows "THEN"
if "CONDITION"
evaluates to TRUE
, otherwise "ELSE"
will be shown
%IF{"defined FUNFACTOR" then="FUNFACTOR is defined" else="FUNFACTOR is not defined"}%
renders as FUNFACTOR is not defined
%INCLUDE{"page" ...}%
Parameter: | Description: | Default: |
---|---|---|
"SomeTopic" | The name of a topic located in the current web, i.e. %INCLUDE{"WebNotify"}% | |
"Web.Topic" | A topic in another web, i.e. %INCLUDE{"TWiki.SiteMap"}% | |
"http://..." | A full qualified URL, i.e. %INCLUDE{"http://twiki.org:80/index.html"}% . Supported content types are text/html and text/plain by default. See allowanytype .if the URL resolves to an attachment file on the server this will automatically translate to a server-side include. | |
attachment="filename.ext" | Include the specified attachment instead of topic text. The attachment content is subject to processing just like when topic text is included. For example, text up to %STARTINCLUDE% is excluded. When including an attachment, you can do without topic specification - %INCLUDE{attachment="filename.ext"}% works, which results in including the attachment of the same topic. | |
allowanytype="on" | Suppress the content type checking in including the web page specified by a URL. | disabled |
charset="CHARSET" | Specify the charset of the included content so that a proper charset conversion happens when it's different from the site charset. Needless to say, this works for a TWiki topic, a topic attachment, and a content specified with a URL. This parameter overrides otherwise specified or implied charset. | none |
pattern="..." | Include a subset of a topic or a web page. Specify a RegularExpression that scans from start ('^' ) to end and contains the text you want to keep in parenthesis, e.g., pattern="^.*?(from here.*?to here).*" . IncludeTopicsAndWebPages has more. | none |
headingoffset="2" | Adjust the level of headings in the included topic. A "2" or "+2" increases the level by two, e.g. a ---+ H1 turns into a ---+++ H3. Positive and negative values are supported. Adjusted min and max levels are H1 and H6, respectively. | no adjustment |
hidetoc="on" | Remove %TOC% in included content. Useful to show table of contents in individual topics, while suppressing them if included in a big master document. | TOC_HIDE_IF_ setting |
rev="2" | Include a previous topic revision; N/A for URLs | top revision |
raw="on" (for HTTP inclusion) | When a page is included via HTTP, normally TWiki will process it, doing the following: 1) Alter relative links to point back to originating host, 2) Remove some basic HTML tags (html, head, body, script) and finally 3) Remove newlines from HTML tags spanning multiple lines. If you prefer to include exactly what is in the source of the originating page set this to on . raw="on" is short for disableremoveheaders="on" , disableremovescript="on" , disableremovebody="on" , disablecompresstags="on" and disablerewriteurls="on" . | disabled |
raw="on" (for topic or attachment inclusion) | When a topic is included, normally TWiki variables in the included topic are expanded in the context of the included topic. If raw="on" is specified, that variable expansion does not happen. You may wonder what's that for and what are the implications, which are found out on IncludeTopicRaw. Because of the "in the raw" nature of the parameter, if it's specified, parameters such as encode , headingoffset , hidetoc , newline , nofinalnewline , and section are ignored. | disabled |
literal="on" | While using the raw option will indeed include the raw content, the included content will still be processed and rendered like regular topic content. To disable parsing of the included content, set the literal option to "on" . | disabled |
nofinalnewline="on" | Delete the new line at the end of the result if exists | disabled |
newline="$br" | Convert newlines in textarea to other delimiters. Variable $br expands to <br /> tag, and $n to a newline. Other text is encoded based on encode parameter. | no conversion |
encode="html" | Encode special characters into HTML entities. If a FORMFIELD is passed into an HTML form field it should be encoded as "html" . Additional encodings available: encode="quote" , encode="moderate" , encode="safe" , encode="entity" and encode="url" . See ENCODE for details. | no encoding |
disableremoveheaders="on" | Bypass stripping headers from included HTML (everything until first </head> tag) | disabled |
disableremovescript="on" | Bypass stripping all <script> tags from included HTML | disabled |
disableremovebody="on" | Bypass stripping the </body> tag and everything around over and below it | disabled |
disablecompresstags="on" | Bypass replacing newlines in HTML tags with spaces. This compression step rewrites unmatched <'s into < entities unless bypassed | disabled |
disablerewriteurls="on" | Bypass rewriting relative URLs into absolute ones | disabled |
disablefixlinks="on" | Bypass fixing WikiWord links if include is done across webs. Fixing links in included text such as from SomeLink to Otherweb.SomeLink is usually desirable so that links in included text still point to the same target | disabled |
warn="off" | Warn if topic include fails: Fail silently (if off ); output default warning (if set to on ); else, output specific text (use $topic for topic name) | %INCLUDEWARNING% preferences setting |
section="name" | Includes only the specified named section, as defined in the included topic by the STARTSECTION and ENDSECTION variables. Nothing is shown if the named section does not exists. section="" is equivalent to not specifying a section | |
PARAMONE="val 1" | Any other parameter will be defined as a variable within the scope of the included topic. The example parameters on the left will result in %PARAMONE% and %PARAMTWO% being defined within the included topic. A default value for a variable can be specified in the included topic in case the corresponding parameter is not specified, such as %PARAMONE{ default="..." }% |
%INCLUDE{"http://www.google.com/"}%
is turned off by default. To turn this on, ask your TWiki administrator to enable the {INCLUDE}{AllowURLs}
flag in the Security setup section of configure.
raw
or disableremovescript
parameter.
%INCLUDE{"http://THIS_SERVER/.../THIS_WEB/THIS_TOPIC}%
is detected and blocked.
$TWiki::cfg{UrlHostRegex}
should be set so that it matches all possible server names. e.g. $TWiki::cfg{UrlHostRegex} = qr{http://(www\.)?domain\.com};
attachment="filename.ext"
%STARTINCLUDE%
and %STOPINCLUDE%
in the attachment are observed. The section
parameter is observed. The variables are expanded in the context of the topic having the attachment. For example, %TOPIC%
is expanded to the name of the topic having the attachment.
%INCLUDE{%ATTACHURL%/foo.txt}%
) raw="on"
is specified, the content of <body>...</body>
is extracted, all occurrences of <script>...</script>
are removed. Topic context change doesn't happen because in general inclusion via HTTP doesn't cause topic context change.
%TOPIC%
in case there is no include.
%INCLUDINGTOPIC%
%INCLUDINGTOPIC%
in topic C is reported as B when looking at topics A or B, and as C when looking at topic C itself.
%WEB%
if there is no INCLUDE.
%INCLUDINGWEB%
%INCLUDINGWEB{format="..."}%
-- see WEB for format documentation
%INCLUDINGWEB%
in topic C is reported as web of topic B when looking at topics A or B, and as of topic C when looking at topic C itself.
%JQTABPANE% %JQTAB{"Tab 1"}% ... %JQENDTAB% %JQTAB{"Tab 2"}% ... %JQENDTAB% ... %JQENDTABPANE%
%JQTABPANE% %JQTAB{"Tab 1"}% ... %JQENDTAB% %JQTAB{"Tab 2"}% ... %JQENDTAB% ... %JQENDTABPANE%
%JQTABPANE% %JQTAB{"Tab 1"}% ... %JQENDTAB% %JQTAB{"Tab 2"}% ... %JQENDTAB% ... %JQENDTABPANE%
Parameter: | Description: | Default: |
---|---|---|
"..." | Name of tab, shown as tab label | (required) |
before | When switching tabs, this is the Javascript fragment to be executed just before the tab is displayed | "" |
after | This Javascript handler is to be executed after the tab has been made visible | "" |
afterload | This Javascript handler will be called when content loaded asynchronously has finished loading (using the url parameter described below). Depending on the network latency and server response time, this can be significantly later than execution of the after handler above | "" |
url | Link from where to load the content of the tab asynchronously when selecting this tab; the result of the addressed handler will replace the content area; if no url is set the content of the TAB ... ENDTAB area will be shown when the tab is selected | "" |
container | Container element (".someClass" or "#someID" ) where content will be loaded asynchronously using Ajax; this is only used together with url | ".jqTabContents" |
class | Add additional class to existing tab class "jqTab" | "" |
%JQTABPANE%
%JQTAB{ "Tim Berners-Lee" url="%SCRIPTURL{view}%/TWiki/TimBernersLee?skin=text" }%
%ICON{processing}%
%JQENDTAB%
%JQENDTABPANE%
%JQTAB{"..."}%
and %JQENDTAB%
pairs, and enclose them in %JQTABPANE%
and %JQENDTABPANE%
. Tab panes can be nested, e.g. within one tab you can add another tab pane. These variable are handled by the JQueryPlugin.
%JQTABPANE{ select="1" }% %JQTAB{"Tab 1"}% ... %JQENDTAB% %JQTAB{"Tab 2"}% ... %JQENDTAB% ... %JQENDTABPANE%
Parameter: | Description: | Default: |
---|---|---|
select="" | Select a tab pane, default is the first tab. | "1" |
tab
URL parameter using %JQTABPANE{ select="%URLPARAM{tab}%" }%
%JQTABPANE%
%JQTAB{"Tab 1"}%
Tab 1 content...
%JQENDTAB%
%JQTAB{"Tab 2"}%
Tab 2 content...
%JQENDTAB%
%JQENDTABPANE%
LANGUAGE
preference is set, it's used as user's language instead of any language detected from the browser.
LANGUAGE
at a non per-user way, so each user can choose his/her preferred language.
PO
files) to TWiki. Those are the languages in which TWiki's user interface is available.
%LANGUAGES{...}%
Parameter: | Description: | Default: |
---|---|---|
format | format for each item. See below for variables available in the format string. | " * $langname" |
separator | separator between items. | "\n" (newline) |
marker="selected" | Text for $marker if the item matches selection | "selected" |
selection="%LANGUAGE%" | Current language to be selected in list | (none) |
format
variables: Variable | Meaning |
---|---|
$langname | language's name, as informed by the translators |
$langtag | language's tag. Ex: en , pt-br , etc. |
<select>%LANGUAGES{format="<option $marker value='$langtag'>$langname</option>" selection="%LANGUAGE%"}%</select>
creates an option list of the available languages with the current language selected
%LAQUO%
LIME
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%LIME% lime text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%LOCALSITEPREFS%
Main.TWikiPreferences
, renders as TWikiPreferences
%LOGIN%
%LOGINURL%
/do/login/TWiki/TWikiVariables?origurl=/do/view/TWiki/TWikiVariables%3frev%3d81%26sortcol%3d1%26table%3d10%26up%3d2
%LOGOUT%
%LOGOUTURL%
/do/view/TWiki/TWikiVariables?logout=1
%M%
%MAKETEXT{"string" args="..."}%
Parameter | Description | Default |
---|---|---|
"text" or string="text" | The text to be displayed. | none |
args="param1, param2" | a comma-separated list of arguments to be interpolated in the string, replacing the [_N] placeholders in it. | none |
%MAKETEXT{string="Notes:"}%
%MAKETEXT{"If you have any questions, please contact [_1]." args="%WIKIWEBMASTER%"}%
%MAKETEXT{"Did you want to ~[~[[_1]~]~[reset [_2]'s password~]~]?" args="%SYSTEMWEB%.ResetPassword, %WIKINAME%"}%
string
to the current user's language only if it has such string in its translation table for that language.
&
) followed by one letter (one of a...z
, A...Z
-- say, X
) in the translatable string will be translated to <span class='twikiAccessKey'>X</span>
. This is used to implement access keys. If you want to write an actual amperstand that stays just before a letter, write two consecutive amperstands (&&
): they will be transformed in just one.
~[
and ~]
in the text have a special meaning and need to be escaped using ~[
and ~]
, respectively.
_
) are reserved. You must not use translatable phrases starting with an underscore.
%VARIABLES%
inside the translatable strings - string would not get translated because variables get expanded before the %MAKETEXT{...}%
itself is handled.
MAROON
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%MAROON% maroon text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%MDREPO{ "table" ...}%
(generic form), %MDREPO{ web="..." ...}%
(web specific form)
web="..."
parameter): Parameter | Description | Default | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
"..." | Specify the table to retrieve | This or below is required | ||||||||||||||||
table="..." | (Alternative to above) | This or above is required | ||||||||||||||||
separator="..." | The separator string of records | "$n" (new line) | ||||||||||||||||
format="..." | Format of one record. It may contain the following items. In addtion, the standard special tokens are handled accordingly.
| "| $_ | $__ |" | ||||||||||||||||
selection="..." | The record ID to be regarded as the selected. It affects how $marker in the format is evaluated. | none | ||||||||||||||||
marker="..." | Text for $marker in the format if the item matches selection | "selected" | ||||||||||||||||
filter="..." | The regular expression of record IDs to filter records. Matching is case-insensitive | none | ||||||||||||||||
exclude="..." | Comma separated list of record IDs to be excluded. You can use regular expression. If you specify Trash\d*, then Trash, Trash1, Trash2, ... are exluded but LightTrash and TrashBag are not excluded | none |
%MDREPO{"webs" filter="^A" format="| $_ | $_admin | $_master |"}%
Parameter | Description | Default |
---|---|---|
web="..." | Specify the web. If it's a subweb, the corresponding top level web is specified | This is required |
"..." | Specify the format of the return value in the same manner as the format parameter in the generic form | $__ |
default="..." | Specify the value to be returned when the specified or implied top level web does not exist in MDREPO | "" (null string) |
%MDREPO{web="Foo/Bar" "$_admin"}%
formfield
item is the most likely to be useful to casual users.
%META{ "item" ...}%
Item | Options | Description |
---|---|---|
"formfield" | name="..." : name of the field. The field value can be shortened as described in FormattedSearch for $formfield . newline="..." : by default, each newline character will be rewritten to <br /> to allow metadata that contains newlines to be used in tables, etc. $n indicates a newline character.bar="..." : by default, each vertical bar is rewritten to an HTML entity so as to not be mistaken for a table separator.encode="type" : have the value encoded in the specified type. Possible types are the same as ENCODE's. If this is specified, newline and bar options are ignored. topic="..." : Get meta info of "Topic" or "Web.Topic"; default "%BASEWEB%.%BASETOPIC%" . | Show a single form field |
"form" | topic="..." : Get meta info of "Topic" or "Web.Topic"; default "%BASEWEB%.%BASETOPIC%" . | Generates the table showing the form fields. See Form Templates |
"attachments" | all="on" to show hidden attachments.title="..." to show a title - only if attachments are displayed.template="..." to use a custom template for the rendering of attachments; default attachtables is used.topic="..." : Get meta info of "Topic" or "Web.Topic"; default "%BASEWEB%.%BASETOPIC%" . | Generates the list of attachments |
"moved" | topic="..." : Get meta info of "Topic" or "Web.Topic"; default "%BASEWEB%.%BASETOPIC%" . | Details of any topic moves |
"parent" | dontrecurse="on" : By default recurses up tree, this has some cost.nowebhome="on" : Suppress WebHome. prefix="..." : Prefix that goes before parents, but only if there are parents, default "" . format="..." : Format string used to display each parent topic where $web expands to the web name, and $topic expands to the topic name; default: "[[$web.$topic][$topic]]" suffix="..." : Suffix, only appears if there are parents; default "" . separator="..." : Separator between parents; default " > " . topic="..." : Get meta info of "Topic" or "Web.Topic"; default "%BASEWEB%.%BASETOPIC%" . | Generates the parent link |
%META{}%
is placed in an included topic. Add a topic="%WEB%.%TOPIC%"
parameter if you need meta info of the current topic.
newline
, prefix
, format
, suffix
and separator
options, such as separator="$n * "
%METASEARCH{...}%
Parameter: | Description: | Default: |
---|---|---|
type="..." | Type of search: • "topicmoved" - search for a topic that may have been moved. • "parent" - search for topics that have a specific parent i.e. its children. • "field" - search for topics that have a particular form field value (use the name and value parameters to specify which field to search). | Required |
web="%WEB%" | Wiki web to search: A web, a list of webs separated by whitespace, or all webs. | Current web |
topic="%TOPIC%" | The topic the search relates to. | Current topic |
name="..." | form field to search, for type="field" searches. May be a regular expression (see SEARCH). | |
value="..." | form field value, for type="field" searches. May be a regular expression (see SEARCH). | |
title="Title" | Text that is prefixed to any search results. | "" (empty) |
format="..." | Custom format of each search hit. Supports same format strings as SEARCH. See FormattedSearch for usage, variables & examples | "$topic" |
separator="..." | Separator between search hits. | "$n" (newline) |
default="none" | Default text shown if no search hit. | "" (empty) |
%METASEARCH{type="topicmoved" web="%WEB%" topic="%TOPIC%" title="This topic used to exist and was moved to: "}%
%METASEARCH{type="parent" web="%WEB%" topic="%TOPIC%" title="Children: "}%
%METASEARCH{type="field" name="Country" value="China"}%
%N%
NAVY
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%NAVY% navy text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
into normal space. Use this variable where non-breaking space needs to be retained, such as in empty table headings.
'%NBSP%'
)
%NOP%
%NOP{...}%
deprecated %STARTSECTION{type="templateonly"}%
.. %ENDSECTION{type="templateonly"}%
instead (see TWikiTemplates for more details).
%NOTIFYTOPIC%
WebNotify
, renders as WebNotify
OLIVE
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%OLIVE% olive text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
ORANGE
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%ORANGE% orange text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%P%
%PARENTBC%
to a heading of a topic to show the breadcrumb of its parents. Parent topics are linked, topic names are shown spaced out in a smaller font, and are separated by »
quotes. In addition, a parentlist
SetGetPlugin variable is set to the parent list, and a parent
variable is set to the immediate parent. This can be retrieved later in the topic using %GET{parentlist}%
and %GET{parent}%
, respectively.
%PARENTBC%
---+ %PARENTBC% Myself and me
%PARENTTOPIC%
or %PARENTTOPIC{ format="..." topic="..." }%
TWikiVariables
, renders as TWikiVariables
Item | Description | Default |
---|---|---|
format="..." | Format string used to display parent topic, where $web expands to the web name, and $topic expands to the topic name. Additional formatting tokens can be used. | "$topic" (topic name) |
topic="..." | Get parent of "Topic" or "Web.Topic" | "%WEB%.%TOPIC%" (current topic) |
PINK
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%PINK% pink text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%PLUGINDESCRIPTIONS%
"$SUM( $ABOVE() )"
to TWiki tables or anywhere in topic text ExternalSite:Page
to link to a page on an external site based on aliases defined in a rules topic :-)
as or :eek:
as %PLUGINVERSION{"name"}%
to get the version of a specific plugin
%PLUGINVERSION{"InterwikiPlugin"}%
expands to $Rev: 30454 (2018-07-16) $
%PLUGINVERSION%
to get the version of the API
6.10
%PUBURL%
https://lcc.inversion-lab.com/pub
%PUBURL%/%WEB%/OtherTopic/image.gif
%PUBURLPATH%
/pub
PURPLE
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%PURPLE% purple text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%Q%
%QUERYPARAMS{...}%
format="..."
format string for each entry, default $name=$value
separator="..."
separator string, default separator="$n"
(newline)
encode="..."
the encoding to apply to parameter values; see ENCODE for a description of the available encodings. If this parameter is not given, no encoding is performed.
Sequence: | Expands To: |
---|---|
$name | Name of the parameter |
$value | String value of the parameter. Multi-valued parameters will have a "row" for each value. |
$n or $n() | New line. Use $n() if followed by alphanumeric character, e.g. write Foo$n()Bar instead of Foo$nBar |
$nop or $nop() | Is a "no operation". This variable gets removed; useful for nested search |
$quot or \" | Double quote (" ) |
$aquot | Apostrophe quote (' ) |
$percnt | Percent sign (% ) |
$dollar | Dollar sign ($ ) |
$lt | Less than sign (< ) |
$gt | Greater than sign (> ) |
%QUERYPARAMS{format="<input type='hidden' name='$name' value='$value' encoding="html" />"}%
%QUERYPARAMS%
.
%QUERYSTRING%
rev=81;sortcol=1;table=10;up=2
%RAQUO%
RED
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%RED% red text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
REDBG
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of background colors.
%REDBG% red background %ENDBG%
%REDBG%
area must end with %ENDBG%
.
%REG%
%REMOTE_ADDR%
18.224.44.186
%REMOTE_PORT%
%REMOTE_USER%
%RENDERLIST%
variable is handled by the RenderListPlugin
%RENDERLIST%
%RENDERLIST{ "org" focus="Sales.WestCoastTeam" }%
%RENDERLIST{ "org" }%
* [[Eng.WebHome][Engineering]]
* [[Eng.TechPubs][Tech Pubs]]
* [[Sales.WestCoastTeam][Sales]]
* [[Sales.EastCoastTeam][East Coast]]
* [[Sales.WestCoastTeam][West Coast]]
%REVINFO%
r4 - 2012-11-15 - 06:09:07 - TWikiContributor
$year-$mo-$day
%REVINFO{"format"}%
Parameter: | Description: | Default: |
---|---|---|
"format" | Format of revision information, see supported variables below | "r$rev - $date - $time - $wikiusername" |
web="..." | Name of web | Current web |
topic="..." | Topic name | Current topic |
rev="5" | Specific revison number. Old RCS format "1.5" is also supported. | Latest revision |
Variable: | Unit: | Example |
---|---|---|
$web | Name of web | Current web |
$topic | Topic name | Current topic |
$rev | Revison number. Add prefix r to get the usual r5 format | 5 |
$username | Login username of revision | jsmith |
$wikiname | WikiName of revision | JohnSmith |
$wikiusername | WikiName with Main web prefix | Main.JohnSmith |
$date | Revision date. Actual date format defined as {DefaultDateFormat} in configure, default $year-$mo-$day | 2010-12-31 |
$time | Revision time | 23:24:25 |
$iso | Revision date in ISO date format | 2006-09-22T06:24:25Z |
$min , $sec , etc. | Same date format qualifiers as GMTIME{"format"} |
%REVINFO{"$date - $wikiusername" rev="1.1"}%
returns revision info of first revision
%S%
viewauth.cgi
)
%SCRIPTNAME%
view
.pl
or .cgi
%SCRIPTSUFFIX%
%SCRIPTURL%
https://lcc.inversion-lab.com/do
edit
script should always be used in conjunction with ?t=%GMTIME{"$epoch"}%
to ensure pages about to be edited are not cached in the browser
edit
, save
, attach
, upload
, and rename
, the URL on the master site is returned. master="on"
parameter is specified, the URL on the master site is returned.
%SCRIPTURL{"script" ...}%
Parameter: | Description: | Default: |
---|---|---|
"script" | The name of the script | |
web="WEB" | Specifies a web | When a topic name is specified and a web is not, the current web is assumed |
topic="TOPIC" or topic="WEB.TOPIC" | Specifies a topic or both a web and a topic | |
master="on" | A URL on the master site is needed or not | off |
web="WEB"
is specified but topic
is not specified, the resulting URL ends with WEB
.
%SCRIPTURL{"viewauth"}%/%WEB%/%TOPIC%
which expands to https://lcc.inversion-lab.com/do/viewauth/TWiki/TWikiVariables
. It can be written %SCRIPTURL{"viewauth" topic="%TOPIC%"}%
as well.
http://florawiki/cgi-bin
. Then %SCRIPTURL{"edit" web="Flowers"}%
expands to http://florawiki/cgi-bin/edit/Flowers
. This is because the 'Flower' web on this site is a slave and editing needs to happen on the master site.
%SCRIPTURL{"view" web="Flowers" master="on"}%
expands to http://florawiki/cgi-bin/view/Flowers
. The view
script works on a slave site, but master="on"
parameter forces to yield the master site URL.
[[%SCRIPTURL{view}%/%WEB%/MyQuery?food=sushi][Sushi]]
%SCRIPTURLPATH{"script"}%
instead, as it works with URL rewriting much better
%SCRIPTURL%
, but doesn't include the protocol and host part of the URL
%SCRIPTURLPATH%
/do
edit
script should always be used in conjunction with ?t=%GMTIME{"$epoch"}%
to ensure pages about to be edited are not cached in the browser
%SCRIPTURL{"script"}%
, but doesn't include the protocol and host part of the URL
%SCRIPTURL{"script"}%
, this variable is aware of ReadOnlyAndMirrorWebs. So it may return a URL of a different site.
%SCRIPTURLPATH{"script" ...}%
Parameter: | Description: | Default: |
---|---|---|
"script" | The name of the script. | |
web="WEB" | Specifies a web | When a topic name is specified and a web is not, the current web is assumed |
topic="TOPIC" or topic="WEB.TOPIC" | Specifies a topic or both a web and a topic | |
master="on" | A URL on the master site is needed or not. | off |
web="WEB"
is specified but topic
is not specified, the resulting URL ends with WEB
.
%SCRIPTURLPATH{"view"}%
expands to "/do/view"
(This might be a null string. Hence surrounded by double quotes)
%SCRIPTURLPATH{"view" web="%WEB%"}%
expands to /do/view/TWiki
%SCRIPTURLPATH{"view" topic="%TOPIC%"}%
expands to /do/view/TWiki/VarSCRIPTURLPATH2
http://florawiki/cgi-bin
. Then %SCRIPTURLPATH{"edit" web="Flowers"}%
expands to http://florawiki/cgi-bin/edit/Flowers
. This is because the 'Flower' web on this site is a slave and editing needs to happen on the master site.
%SEARCH{"text" ...}%
Parameter: | Description: | Default: |
---|---|---|
"text" | Search term. Is a keyword search, literal search, regular expression search, or query, depending on the type parameter. SearchHelp has more | required |
search="text" | (Alternative to above) | N/A |
web="Name" web="Main, Know" web="all" | Comma-separated list of webs to search. You can specifically \*exclude\* webs from an all search using a minus sign - for example, web="all,-Secretweb" . The special word all means all webs that do not have the NOSEARCHALL variable set to on in their WebPreferences. Note that TWikiAccessControls are respected when searching webs; it is much better to use them than NOSEARCHALL . | Current web |
topic="WebPreferences" topic="*Bug" | Limit search to topics: A topic, a topic with asterisk wildcards, or a list of topics separated by comma. Note this is a list of topic names and must not include web names. | All topics in a web |
excludetopic="Web*" excludetopic="WebHome, WebChanges" | Exclude topics from search: A topic, a topic with asterisk wildcards, or a list of topics separated by comma. Note this is a list of topic names and must not include web names. | None |
scope="topic" scope="text" scope="all" | Search topic name (title); the text (body) of topic; or all (title and body) | "text" |
type="keyword" type="word" type="literal" type="regex" type="query" | Control how the search is performed when scope="text" or scope="all" keyword : use Google-like controls as in soap "web service" -shampoo ; searches word parts: using the example, topics with "soapsuds" will be found as well, but topics with "shampoos" will be excluded word : identical to keyword but searches whole words: topics with "soapsuds" will not be found, and topics with "shampoos" will not be excluded literal : search for the exact string, like web service regex : use a RegularExpression search like soap;web service;!shampoo ; to search on whole words use \bsoap\b query : query search of form fields and other meta-data, like (Firstname='Emma' OR Firstname='John') AND Lastname='Peel' | %SEARCHVAR- DEFAULTTYPE% preferences setting (literal) |
sort="topic" sort="created" sort="modified" sort="editby" sort="parent" sort="parent(99)" sort="formfield(name)" sort="parent, | Sort the search results by: • topic : topic name, • created : topic creation time, • modified : last modified time, • editby : last editor, • parent : parent topic name, • parent(N) : parent breadcrumb up to indicated level, • formfield(NAME) : named TWikiForms field, • or a combination to sort by more than one field using a comma list. The sorting is done web by web; if you want to sort across webs, create a formatted table and sort it with TablePlugin's initsort. Note that dates are sorted most recent date last (i.e at the bottom of the table). Legacy order parameter is used in case sort is not specified. | "topic" |
reverse="on" reverse="off, on" | Reverse the direction of the search. Specify a comma list of on, off tokens to toggle direction by sort field. If sort has more fields than reverse tokens, the state of the last reverse token is taken for the remaining fields. | "off" |
start="0" start="20" | Specify the number of results to skip. This is done after sorting if sort parameter is specified. This is intended for pagination of results. If this parameter is specified, %NTOPICS% in the search template is replaced with the number of topics matched. Without this parameter, %NTOPICS% doesn't exceed the limit value. | "0" |
limit="all" limit="16" | Limit the number of results returned. This is done after sorting if sort parameter is specified. This parameter specifing the number of results remains the same in the presense of the start parameter. Assuming there are more than 20 results matched, start="10" limit="10" results in 11th to 20th results are returned | "all" |
date="..." | limits the results to those pages with latest edit time in the given time interval. | All results |
createdate="..." | similar to date but it's about create time instead of last edit. You can specify both date and createdate , in which case topics matching both conditions are shown. | All results |
casesensitive="on" | Case sensitive search | Ignore case |
bookview="on" | BookView search, e.g. show complete topic text | Show topic summary |
nonoise="on" | Shorthand for nosummary="on" nosearch="on" nototal="on" zeroresults="off" noheader="on" noempty="on" | Off |
nosummary="on" | Show topic title only | Show topic summary |
nosearch="on" | Suppress search string | Show search string |
noheader="on" | Suppress default search header Topics: Changed: By: , unless a header is explicitly specified | Show default search header, unless search is inline and a format is specified (Cairo compatibility) |
nototal="on" | Do not show number of topics found | Show number |
zeroresults="off" | Suppress all output if there are no hits | zeroresults="on" , displays: "Number of topics: 0" |
noempty="on" | Suppress results for webs that have no hits. | Show webs with no hits |
headingoffset="2" | Adjust the level of headings in text of topics found, taking effect in $text and $pattern() of a FormattedSearch. A "2" or "+2" increases the level by two, e.g. a ---+ H1 turns into a ---+++ H3. Positive and negative values are supported. Adjusted min and max levels are H1 and H6, respectively. | no adjustment |
header="..." format="..." footer="..." | Custom format results. See FormattedSearch for usage, variables & examples | Results in table |
default="..." | Default message if there are no hits in a web. See FormattedSearch for usage, variables & examples | No output |
expandvariables="on" | Expand variables before applying a FormattedSearch on a search hit. Useful to show the expanded text, e.g. to show the result of a SpreadSheetPlugin %CALC{}% instead of the formula | Raw text |
multiple="on" | Multiple hits per topic. Each hit can be formatted. The last token is used in case of a regular expression ";" and search | Only one hit per topic |
nofinalnewline="on" | If on , the search variable does not end in a line by itself. Any text continuing immediately after the search variable on the same line will be rendered as part of the table generated by the search, if appropriate. | off |
recurse="on" | Recurse into subwebs, if subwebs are enabled. | off |
separator=", " | Line separator between search hits. Specify format="$topic" separator=", " to get a comma separated list of topic names. The following variables can be used in the separator value: $n expands to a newline, $br expands to a <br /> line break tag. | "$n" (Newline) |
newline="$br" | Line separator within a search hit. Useful if you want to put multi-line content into a table cell, for example if the format="" parameter contains a $pattern() that captures more than one line, or contains a $formfield() that returns a multi-line textfield. The following variables can be used in the newline value: $n expands to a newline, $br expands to a <br /> line break tag. | "$n" (Newline) |
encode="html" | Encode special characters into HTML entities. If a FORMFIELD is passed into an HTML form field it should be encoded as "html" . Additional encodings available: encode="quote" , encode="moderate" , encode="safe" , encode="entity" and encode="url" . See ENCODE for details. | no encoding |
%SEARCH{"wiki" web="Main" scope="topic"}%
%SEARCH{"%URLPARAM{"query" encode="search"}%" web="Main"}%
%SEARCH{"FAQ" scope="topic" nosearch="on" nototal="on" header="| *Topic: * | *Summary: * |" format="| $topic | $summary |"}%
(displays results in a table with header - details)
%TABLE{}%
variable just before the %SEARCH{}%
to alter the output of a search. Example: %TABLE{ tablewidth="90%" }%
%SERVERTIME%
2024-11-01 - 00:55
$year-$mo-$day
%GMTIME%
%SERVERTIME{"format"}%
$seconds
, $minutes
, $hours
, $day
, $wday
, $dow
, $month
, $mo
, $year
, $ye
, $tz
, $iso
, $rcs
, $http
, $epoch
%SERVERTIME{"$hou:$min"}%
expands to 00:55
%SESSIONID%
%SESSIONVAR%
%SESSION_VARIABLE{"name"}%
- read a session variable
%SESSION_VARIABLE{"name" set="value"}%
- set a session variable
%SESSION_VARIABLE{"name" clear=""}%
- clear a session variable
%SESSION_VARIABLE{"AUTHUSER"}%
- user ID, current value:
%SESSION_VARIABLE{"SESSION_REQUEST_NUMBER"}%
- number of pages accessed by current user since login, current value:
"_NON_OF_YOUR_BUSINESS"
%GET{}%
. No output is shown, e.g. %SET{}%
resolves to an empty string. It is also possible to set a JSON object using a JSON path. The %SET{}%
and %GET{}%
variables are handled by the SetGetPlugin.
%SET{ "name" value="..." remember="1" }%
Parameter | Description | Default |
---|---|---|
"name" | Name of variable. Alphanumeric characters, dashes and underscores can be used. | (required) |
value="..." | Value of variable. Escape double quotes with backslash. | (required, may be empty) |
remember="1" | If set, the variable will be stored persistently so that it can be used later in any TWiki topic. Alternatively use the store parameter. See important notes. | "0" |
store="..." | Specify a store name to persistently store the variable, such as store="Parts" . Use alphanumeric characters, dashes and underscores for the name. For better performance, store is preferred over the remember parameter if you need to store a large dataset. See important notes. | "" |
%SET{"lunch" value="Sushi"}%
- see more examples.
%SET{ name = { ... } remember="1" }%
- see description. remember="1"
or store="..."
parameter can be appended. If specified, the JSON object will be stored persistently so that it can be used later in any TWiki topic.
%SET{ menu = { "File": { "New": [ "new", "F" ], "Open": [ "open", "F" ] }, "Edit": { "Copy": [ "cpy", "F" ], "Paste": [ "pst", "F" ] } } }%
- set a JSON object
%GET{ menu }%
- returns: {"File":{"New":["new","F"],"Open":["open","F"]},"Edit":{"Copy":["cpy","F"],"Paste":["pst","F"]}}
%SET{ menu.File.Open[1] = "T" }%
- modify a JSON object
%GET{ menu }%
- returns: {"File":{"New":["new","F"],"Open":["open","T"]},"Edit":{"Copy":["cpy","F"],"Paste":["pst","F"]}}
%SET{ menu.Edit.Cut = [ "cut", "T" ] }%
- add to a JSON object
%GET{ menu }%
- returns: {"File":{"New":["new","F"],"Open":["open","T"]},"Edit":{"Copy":["cpy","F"],"Paste":["pst","F"],"Cut":["cut","T"]}}
%SET{}%
. The %SETGETDUMP{}%
, %SET{}%
, and %GET{}%
variables are handled by the SetGetPlugin.
%SETGETDUMP{ remember="1" format="..." separator="..." }%
Parameter | Description | Default |
---|---|---|
remember="1" | Dump all persistent variables | (volatile variables) |
store="..." | Dump variables of a specific store | (volatile variables) |
format="..." | Format output using variables $name and $value | "name: $name, value: $value <br />" |
separator="..." | String used for separating entries | "\n" |
%SETGETDUMP{"| $name | $value |" separator="$n"}%
- see more examples.
SILVER
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%SILVER% silver text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%SITENAME%
{ReadOnlyAndMirrorWebs}{SiteName}
if defined. Returns the null string if not.
%SITESTATISTICSTOPIC%
SiteStatistics
%USERSWEB%.%SITESTATISTICSTOPIC%
renders as SiteStatistics
%SLIDESHOWEND%
variable is handled by the SlideShowPlugin
%SLIDESHOWEND%
%SLIDESHOWSTART%
variable is handled by the SlideShowPlugin
%SLIDESHOWSTART%
%SLIDESHOWSTART{ template="MyOwnSlideTemplate" }%
%SLIDESHOWSTART%
---++ Sample Slide 1
* Bullet 1
* Bullet 2
---++ Sample Slide 2
* Bullet 1
* Bullet 2
%SLIDESHOWEND%
%SPACEDTOPIC%
Var%20*SPACEDTOPIC
%ENCODE{%SPACEOUT{"%TOPIC%" separator=" *"}%}%
%SPACEOUT{ "%TOPIC%" }%
TWiki Variables
Parameter: | Description: | Default: |
---|---|---|
separator | The separator to put between words e.g. %SPACEOUT{"DogsCatsBudgies" separator=", "}% -> Dogs, Cats, Budgies | ' ' |
[[WebHome][%SPACEOUT{"WebHome"}%]]
expands to Web Home
%STOPINCLUDE%
variable. A normal view of the topic shows everything exept the %STARTINCLUDE%
variable itself.
%STARTSECTION{type="include"}%
instead
%STARTINCLUDE%
%STARTSECTION{}%
and %ENDSECTION{}%
.
type="section"
- the default, used for a generic section, such as a named section used by INCLUDE.
type="include"
- like %STARTINCLUDE%
... %STOPINCLUDE%
except that you can have as many include blocks as you want (%STARTINCLUDE%
is restricted to only one).
type="templateonly"
- start position of text to be removed when a template topic is used. Use this to embed text that you do not want expanded when a new topic based on the template topic is created. TWikiTemplates has more.
type="expandvariables"
- start position where TWikiVariables get expanded when a new topic is created. As documented in TWikiTemplates#VariableExpansion, only certain variables get expanded when a new topic based on the template topic is created. All variables get expanded within a "expandvariables"
section.
%STARTSECTION{"name"}% ................... %ENDSECTION{"name"}%
%STARTSECTION{type="include"}% ........... %ENDSECTION{type="include"}%
%STARTSECTION{type="templateonly"}% ...... %ENDSECTION{type="templateonly"}%
%STARTSECTION{type="expandvariables"}% ... %ENDSECTION{type="expandvariables"}%
Parameter: | Description: | Default |
---|---|---|
"name" | Name of the section. Must be unique inside a topic. | Generated name |
type="..." | Type of the section; type "section" , "include" , "templateonly" , or "expandvariables" | "section" |
disablefixlinks="on" | Only for named sections: Bypass fixing WikiWord links if section is included from a topic in another web. Fixing links in included text such as from SomeLink to Thisweb.SomeLink is usually desirable so that links in included text still point to the same target. | fix links |
_SECTION0
for the first unnamed section in the topic, _SECTION1
for the second, etc..
%STATISTICSTOPIC%
WebStatistics
, renders as WebStatistics
%STOPINCLUDE%
variable itself.
%STOPINCLUDE%
%SYSTEMWEB%
TWiki
%T%
%TABLE{}%
variable is handled by the TablePlugin
%TABLE{ attributes }%
Argument | Comment | Default value | Example |
---|---|---|---|
sort | Set table sorting by clicking headers "on" or "off" . | unspecified | sort="on" |
initsort | Column to sort initially ("1" to number of columns). | unspecified | initsort="2" |
initdirection | Initial sorting direction for initsort , set to "up" (descending) or "down" (ascending). | unspecified | initdirection="up" |
disableallsort | Disable all sorting, both initsort and header sort. This is mainly used by plugins such as the EditTablePlugin to disable sorting in a table while editing the table. | unspecified | disableallsort="on" |
headerbg | Header cell background color. | "#6b7f93" | headerbg="#999999" |
headerbgsorted | Header cell background color of a sorted column. | the value of headerbg | headerbgsorted="#32596c" |
headercolor | Header cell text color. | "#ffffff" | headercolor="#0000cc" |
databg | Data cell background color, a comma separated list. Specify "none" for no color, that is to use the color/background of the page the table is on. | "#edf4f9,#ffffff" | databg="#f2f2f2,#ffffff" |
databgsorted | Data cell background color of a sorted column; see databg . | the values of databg | databgsorted="#d4e8e4,#e5f5ea" |
datacolor | Data cell text color, a comma separated list. | unspecified | datacolor="#0000CC, #000000" |
tableborder | Table border width (pixels). | "1" | tableborder="2" |
tableframe | Table frame, set to "void" (no sides), "above" (the top side only), "below" (the bottom side only), "hsides" (the top and bottom sides only), "lhs" (the left-hand side only), "rhs" (the right-hand side only), "vsides" (the right and left sides only), "box" (all four sides), "border" (all four sides). | unspecified | tableframe="hsides" |
tablerules | Table rules, set to "none" (no rules), "groups" (rules will appear between row groups and column groups only), "rows" (rules will appear between rows only), "cols" (rules will appear between columns only), "all" (rules will appear between all rows and columns). | unspecified | tablerules="rows" |
cellpadding | Cell padding (pixels). | "0" | cellpadding="0" |
cellspacing | Cell spacing (pixels). | "0" | cellspacing="3" |
cellborder | Cell border width (pixels). | unspecified | cellborder="0" |
valign | Vertical alignment of cells and headers, set to "top" , "middle" , "bottom" or "baseline" . | unspecified | valign="top" |
headervalign | Vertical alignment of header cells; overrides valign . | unspecified | headervalign="top" |
datavalign | Vertical alignment of data cells; overrides valign . | unspecified | datavalign="top" |
headeralign | Header cell alignment, one value for all columns, or a comma separated list for different alignment of individual columns. Set to "left" , "center" , "right" or "justify" . Overrides individual cell settings. | unspecified | headeralign="left,right" |
dataalign | Data cell alignment, one value for all columns, or a comma separated list for different alignment of individual columns. Set to "left" , "center" , "right" or "justify" . Overrides individual cell settings. | unspecified | dataalign="center" |
tablewidth | Table width: Percentage of window width, or absolute pixel value. | unspecified | tablewidth="100%" |
columnwidths | Column widths: Comma delimited list of column widths, percentage or absolute pixel value. | unspecified | columnwidths="80%,20%" |
headerrows | Number of header rows to exclude from sort. (will be rendered in a HTML thead section) | (determined automatically) | headerrows="2" |
footerrows | Number of footer rows to exclude from sort. (will be rendered in a HTML tfoot section) | "0" | footerrows="1" |
id | Unique table identifier string, used for targeting a table with CSS. | tableN (where N is the table order number on the page) | id="userTable" |
summary | Table summary used by screenreaders: A summary of what the table presents. It should provide an orientation for someone who listens to the table. | unspecified | summary="List of subscribed users" |
caption | Table caption: A title that will be displayed just above the table. | unspecified | caption="Users" |
%TABLE{ tableborder="0" cellpadding="4" cellspacing="3" cellborder="0" }%
| *A1* | *B1* |
| A2 | B2 |
TEAL
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%TEAL% teal text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%THREECOLUMNS% ...text... %ENDCOLUMNS%
to get a page layout with three columns. The layout is responsive, e.g. it automatically adjusts to a lower number of columns (3 => 2 => 1) depending on the window width or screen width of the device used. The 300 pixels minimum width of a column determines the number of columns shown. Embedded images scale down automatically to the width of the screen if needed.
%THREECOLUMNS% ... %ENDCOLUMNS%
%TM%
"---++ text"
) and HTML ("<h2>text</h2>"
) are taken into account. Any heading text after "!!"
is excluded from the TOC; for example, write "---+!! text"
if you do not want to list a header in the TOC. An abbreviated heading can be shown in the TOC, such as "---++ text!! this is excluded from TOC"
.
%TOC%
"---++ text"
) and HTML ("<h2>text</h2>"
) are taken into account. Any heading text after "!!"
is excluded from the TOC; for example, write "---+!! text"
if you do not want to list a header in the TOC. An abbreviated heading can be shown in the TOC, such as "---++ text!! this is excluded from TOC"
.
%TOC{"SomeTopic" ...}%
Parameter: | Description: | Default: |
---|---|---|
"TopicName" | Topic name | Current topic |
web="Name" | Name of web | Current web |
depth="2" | Limit depth of headings shown in TOC | TOC_MAX_DEPTH if defined. Otherwise 6 |
mindepth="2" | Specify the minimum depth of headings | TOC_MIN_DEPTH if defined. Otherwise 1 |
title="Some text" | Title to appear at top of TOC | none (TOC_TITLE setting) |
style="..." | Style to apply to the TOC | none (TOC_STYLE setting) |
%TOC{depth="2"}%
%TOC{"TWikiDocumentation" web="TWiki" title="Contents:" style="float: right;"}%
%TOPIC%
expands to the name of the topic. If you are looking at the text of an included topic, it is the name of the included topic.
%TOPIC%
TWikiVariables
, renders as TWikiVariables
$topic
variable gets expanded to the topic name, $marker
to marker
parameter where topic matches selection
, and $web
to the name of the web, or any of the standard FormatTokens.
%TOPICLIST{"format" ...}%
Parameter: | Description: | Default: |
---|---|---|
"format" | Format of one line, may include $web (name of web), $topic (name of the topic), $marker (which expands to marker for the item matching selection only) | "$topic" |
format="format" | (Alternative to above) | "$topic" |
separator=", " | line separator | "$n" (new line) |
marker="selected" | Text for $marker if the item matches selection | "selected" |
selection="TopicA, TopicB" | Topic(s) to show selected with $marker ; specify a comma-space list of full topic names | (none) |
web="Name" | Name of web | Current web |
%TOPICLIST{" * $web.$topic"}%
creates a bullet list of all topics
%TOPICLIST{separator=", "}%
creates a comma separated list of all topics
%TOPICLIST{" <option>$topic</option>"}%
creates an option list (for drop down menus)
<select>%TOPICLIST{" <option $marker value='$topic'>$topic</option>" separator=" " selection="%TOPIC%"}%</select>
creates an option list of web topics with the current topic selected
%TOPICTITLE%
or %TOPICTITLE{ topic="TopicName" }%
Parameter: | Description: | Default: |
---|---|---|
"..." ortopic="..." | Topic to get the title from. Can be of form TopicName or Web.TopicName . | Current topic |
encode="html" | Encode special characters into HTML entities. If a TOPICTITLE is passed into an HTML form field it should be encoded as "html" . Additional encodings: encode="quote" , encode="moderate" , encode="safe" , encode="entity" and encode="url" . See ENCODE for details. | "" (no encoding) |
%TOPICTITLE{Projects.SushiProject}%
returns Sushi Project
assuming the topic has a form field named "Title" with value "Sushi Project"
TWikiVariables
[[+SomeTopicName]]
to get the topic title link of a topic, see TWikiEditingShorthand#TopicTitleLinks
%TOPICURL%
- shortcut for %SCRIPTURL{view}%/%WEB%/%TOPIC%
%TWIKISHEET{}%
variable is handled by the TWikiSheetPlugin
%TWIKISHEET{ parameters }%
Parameter | Description | Example | Default | |
---|---|---|---|---|
mode | Mode of operation: • mode="classic" - regular TWiki table and an edit button; once pressed, the table switches into spreadsheet edit mode. • mode="toggle" - spreadsheet in read-only mode and an edit button; once pressed, the table switches into spreadsheet edit mode. • mode="toggle-edit" - like "toggle" but initial state is spreadsheet edit mode. • mode="edit" - the table is always in spreadsheet edit mode. | mode="edit" | {Plugins} configure setting ( "toggle" ) | |
concurrent | Concurrent editing. If enabled, multiple people can edit TWiki Sheet and see each other's changes. This includes editing cells, pasting a range of cells, drag-filling cells, adding/removing rows, adding/removing columns, and undo. • concurrent="0" - disable concurrent editing; changes by others will be shown after a page reload. • concurrent="1" - enable concurrent editing; changes by others will show up while editing TWiki Sheet. | concurrent="1" | {Plugins} configure setting ( "0" ) | |
save | Optionally disable save; useful to demo the plugin | save="0" | save="1" | |
width | Table width in pixels; a horizontal scrollbar is added if needed | width="500" | (full window width) | |
height | Table height in pixels; a vertical scrollbar is added if needed | height="300" | (full table height) | |
colHeaders | Set to "false" to disable the default column headers (A, B, C); set to a function for custom headers, such as:colHeaders="function(index) { return String.fromCharCode(65+index) + ' (' + (index + 1) + ')'; }" , which will show headers A (1) , B (2) , C (3) , ... | colHeaders="false" | colHeaders="true" | |
rowHeaders | Set to "false" to disable the default row headers (1, 2, 3) | rowHeaders="false" | rowHeaders="true" | |
contextMenu | Defines the right-click context menu; set to "false" to disable; set to array of available strings, such as:contextMenu="['row_above', 'row_below', 'col_left', 'col_right', 'remove_row', 'remove_col', '---------', 'undo', 'redo']" | contextMenu="false" | contextMenu="true" | |
fixedRowsTop | Fixed number of rows shown on top; takes effect if height parameter is used | fixedRowsTop="1" | (none) | |
fixedColumnsLeft | Fixed number of columns shown on the left; takes effect if width parameter is used | fixedColumnsLeft="2" | (none) | |
formulas | Formula support; set to "false" to disable spreadsheet calculations in table cells, such as: =SUM(A1:A8) | formulas="false" | formulas="true" | |
maxCols | Maximum number of columns | maxCols="10" | (unlimited) | |
maxRows | Maximum number of rows | maxRows="1000" | (unlimited) | |
minSpareCols | When set to 1 (or more), automatically add a new column at the right if there are no more empty columns | minSpareCols="1" | minSpareCols="0" | |
minSpareRows | When set to 1 (or more), automatically add a new row at the bottom if there are no more empty rows | minSpareRows="1" | minSpareRows="0" | |
wordWrap | Word wrap; set to "false" to disable cell content wrapping if it does not fit in the fixed column width | wordWrap="false" | wordWrap="true" | |
more... | Additional Handsontable options can be used. Notes on types of values: • Number value: Specify the number, such as width="500" • String value: Enclose the string in single quotes, such as preventOverflow="'horizontal'" • Boolean value: Specify "true" or "false" , such as manualRowResize="true" • Array value: Specify the array, such as manualRowResize="[40, 50]" • Object value: Specify the object, such as columnSorting="{ column: 2, sortOrder: true }" • Function: Specify the JavaScript function, such as: cells="function( row, col, prop ) { var cp = {}; if( row===0 ) { cp.readOnly = true; } return cp; }" |
%TWIKISHEET{ mode="edit" save="0" }% | | 16Q1 | 16Q2 | 16Q3 | 16Q4 | | East: | 163 | 182 | 208 | 193 | | Center: | 82 | 97 | 126 | 91 | | West: | 217 | 231 | 294 | 249 | | Total: | =SUM(B2:B4) | =SUM(C2:C4) | =SUM(D2:D4) | =SUM(E2:E4) | | Min: | =MIN(B2:B4) | =MIN(C2:C4) | =MIN(D2:D4) | =MIN(E2:E4) | | Max: | =MAX(B2:B4) | =MAX(C2:C4) | =MAX(D2:D4) | =MAX(E2:E4) | |
%SYSTEMWEB%
instead.
%TWISTY{}%
variable is handled by the TwistyPlugin.
%TWISTY{}% ... %ENDTWISTY%
%TWISTY{}%
my twisty content
%ENDTWISTY%
%TWOCOLUMNS% ...text... %ENDCOLUMNS%
to get a page layout with two columns. The layout is responsive, e.g. it automatically adjusts to a single column (2 => 1) depending on the window width or screen width of the device used. The 300 pixels minimum width of a column determines the number of columns shown. Embedded images scale down automatically to the width of the screen if needed.
%TWOCOLUMNS% ... %ENDCOLUMNS%
%U%
%URLPARAM{"name"}%
Parameter: | Description: | Default: |
---|---|---|
"name" | The name of a URL parameter | required |
newline="$br" | Convert newlines in textarea to other delimiters. Variables $br (for <br /> tag), $n (for newline) are expanded. Other text is encoded based on encode parameter. | no conversion |
encode="off" | Turn off encoding. See important security note below | encode="safe" |
encode="quote" | Escape double quotes with backslashes (\" ), does not change other characters; required when feeding URL parameters into other TWiki variables. This encoding does not protect against cross-site scripting. | encode="safe" |
encode="moderate" | Encode special characters into HTML entities for moderate cross-site scripting protection: "<" , ">" , single quote (' ) and double quote (" ) are encoded. Useful to allow TWiki variables in comment boxes. | encode="safe" |
encode="safe" | Encode special characters into HTML entities for cross-site scripting protection: "<" , ">" , "%" , single quote (' ) and double quote (" ) are encoded. | (this is the default) |
encode="entity" | Encode special characters into HTML entities. See ENCODE for details. | encode="safe" |
encode="html" | Encode special characters into HTML entities. In addition to encode="entity" , it also encodes space, newline (\n ) and linefeed (\r ). Useful to encode text properly in HTML input fields. | encode="safe" |
encode="url" | Encode special characters for URL parameter use, like a double quote into %22 | encode="safe" |
encode="search" | Special encoding used for SEARCH: Substitute % characters into non-printable characters, so that TWikiVariables are no longer expanded. Also escapes quotes. Used to feed a search string from a URLPARAM into SEARCH without expanding any variables, such as when searching for %BR% . | type="url" |
multiple="on" multiple="[[$item]]" | If set, gets all selected elements of a <select multiple="multiple"> tag. A format can be specified, with $item indicating the element, e.g. multiple="Option: $item" | first element |
separator=", " | Separator between multiple selections. Only relevant if multiple is specified | "\n" (newline) |
format="..." | Format the result. $value expands to the URL parameter. If multiple is specified, $value expands to the result of the concatenated items. | "$value" |
default="..." | Default value in case parameter is empty or missing. The format parameter is not applied. | empty string |
%URLPARAM{"skin"}%
returns print
for a .../view/TWiki/TWikiVariables?skin=print
URL
encode="safe"
is the default, it provides a safe middle ground. The encode="entity"
is more aggressive, but some TWiki applications might not work.
"html"
. <input type="text" name="address" value="%URLPARAM{ "address" encode="html" }%" />
%SET{ "lunch" value="%ENCODE{ "string with "quotes"" type="quotes" }%" remember="1" }%
%SEARCH{ "%URLPARAM{ "query" encode="search" }%" noheader="on" }%
rev
, skin
, template
, topic
, web
; they have a special meaning in TWiki. Common parameters and view script specific parameters are documented at TWikiScripts.
%URLPARAM{
in the value of a URL parameter, it will be modified to %<nop>URLPARAM{
. This is to prevent an infinite loop during expansion.
%USERINFO%
guest, TWikiGuest,
(comma-separated list of the username, wikiusername, and emails)
$emails
, $username
, $wikiname
, $wikiusername
, $groups
and $admin
($admin returns 'true' or 'false'): %USERINFO{ format="$username is really $wikiname" }%
guest is really TWikiGuest
%USERINFO{ "TWikiGuest" format="$username is really $wikiname" }%
guest is really TWikiGuest
{AntiSpam}{HideUserDetails}
configuration option is not enabled, or if you are an admin. (User details are hidden in this TWiki)
jsmith
, WIKINAME like JohnSmith
and WIKIUSERNAME like Main.JohnSmith
. Un-authenticated users are all TWikiGuest.
%USERNAME%
guest
%USERREPORT{ action="..." ... }%
Report | action= | Parameters |
---|---|---|
Show a simple list of registered users | "user_list" | search , limit , sort , reverse |
Show the profile picture image of a user | "profile_picture" | user , height , width , title |
Show slim, one line height user boxes | "slim_box_start" "slim_box" or "slim_box_list" "slim_box_end" | style user , style users , style none |
Show small, two line height user boxes | "small_box_start" "small_box" or "small_box_list" "small_box_end" | style user , style users , style none |
Show users in business card format | "business_card_start" "business_card" or "business_card_list" "business_card_end" | style user , style users , style none |
Show a selector to pick a user, for use in HTML forms | "select_one_user" | name , selected , users |
Show rows of checkboxes to select users, for use in HTML forms | "select_users" | name , selected , users , colums , style |
%USERREPORT{ action="user_list" search="jane" limit="5" }%
%USERSIG{WikiName}%
or %USERSIG{WikiName - YYYY-MM-DD}%
-- %USERSIG{TWikiGuest - 2024-10-31}%
%USERSWEB%
Main
topic
parameter is specified, it gets the value of the specified preferences variable in the specified topic. Please note that the WebPreferences of the web of the specified topic is not examined. So the returned value may not be the same as the value of the variable when the specified topic is viewed.
topic
parameter is not specified and the web
parameter is specified, it gets the value of the specified preferences variable in the specified web, which means the specified web's WebPreferences is examined for the variable.
topic
nor web
parameter is specified, it gets the value of the specified variable in the current context -- the variable can either be a preferences variable or a session variable but cannot be a tag with a tag handler (e.g. %GMTIME%
). %VAR{"NAME"}%
is similar to %NAME%
, but they differ if NAME
is undefined, in which case %VAR{"NAME"}%
is expanded to null (zero width string) while %NAME%
remains as is (%NAME%
). %VAR{"NAME"}%
yields the same value as %IF{"defined NAME" then="$percntNAME$percnt"}%
if NAME is a variable, but the latter is cubmersome.
%VAR{"NAME" ...}%
Parameter: | Description: | Default: |
---|---|---|
"Variable" | The name of the variable to be retrieved. If not specified, %VAR{...}% is expanded to null. | required |
topic="Web.Topic" | Specifies the topic in which the specified preferences vaiable is fetched. | none |
topic="Topic" | Same as above, but the web is specified specified explicitly with the web parameter or the current web is specified. | none |
web="Web" | Specifies the web in which the specified preferences variable is fetched. | none |
default="Value" | Specifies the value to be returned if the specified variable is undefined. | "" (null string) |
ignorenull="on" | If specified, a null string ("") value is regarded as undefined. This affects whether or not the value specified by the default parameter is returned. | "off" |
%VAR{"GROUP" topic="%USERSWEB%.TWikiAdminGroup"}%
, which expands to MichaelVossbeck ThomasKaminski LccAdminTester1
.
%WEBBGCOLOR%
of the Main web write %VAR{"WEBBGCOLOR" web="Main"}%
, which expands to #FFEFA6
%VAR{"FOOSKIN_HTML_HEAD_HOOK" default="<nop>" ignorenull="on"}%
%VBAR%
%WEB%
expands to the name of the web where the topic is located. If you are looking at the text of an included topic, it is the web where the included topic is located.
%WEB%
, expands to: TWiki
%WEB{"..."}%
or %WEB{format="..."}%
Parameter: | Description: | Example: | Default: |
---|---|---|---|
"..." orformat="..." | Format of web name. Supported tokens: • $web - the full web path, • $parents - parent webs, if any, • $current - current web without parent webs, • $last(n) - last n webs, including current one, • $top - top-level web only, • $top(n) - n top-level webs, • $item(n) - the n-th web from top • $list - comma-space delimited list of webs • $size - array size of webs | Engineering/TechPubs/Apps/Bugs Engineering/TechPubs/Apps Bugs for $current Apps/Bugs for $last(2) Engineering for $top Engineering/TechPubs for $top(2) TechPubs for $item(2) Engineering, TechPubs, Apps, Bugs 4 for $size | "$web" |
%WEB%
is Engineering/TechPubs/Apps/Bugs
: %WEB{"Parent webs: $parents, current web: $current, top-level web: $top"}%
returns:Parent webs: Engineering/TechPubs/Apps, current web: Bugs, top-level web: Engineering
NOSEARCHALL = on
preference variable. The "format"
defines the format of one web item. The $name
variable gets expanded to the name of the web, $qname
gets expanded to double quoted name, $marker
to marker
where web matches selection
.
%WEBLIST{"format" ...}%
Parameter: | Description: | Default: | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
"format" | Format of one line, may include following items. In addtion, the standard special tokens are handled accordingly.
$nop() , one of FormatTokens. e.g. $name$nop()a | "$name" | ||||||||||||||
format="format" | (Alternative to above) | "$name" | ||||||||||||||
separator=", " | Line separator | "$n" (new line) | ||||||||||||||
web="" | if you specify $web in format, it will be replaced with this | "" | ||||||||||||||
webs="public" | Comma separated list of webs. There are special webs:
NOTE 2: If MetadataRepository is used and webs are required to be registered, then cancopyto , canmoveto , and webtemplate behave differently.
| "public" | ||||||||||||||
exclude="Legacy*, Sandbox" | Comma separated list of webs to exclude. Wildcards can be used, such as Legacy* to exclude all webs starting with Legacy. | "" | ||||||||||||||
marker="selected" | Text for $marker if the item matches selection | "selected" | ||||||||||||||
selection="%WEB%" | Current value to be selected in list | selection="%WEB%" | ||||||||||||||
subwebs="Sandbox" | Show webs that are a sub-web of this one (recursivly) | "" | ||||||||||||||
depth="1" | Specify the maximum depth of recursive search. E.g. %WEBLIST{depth="1"}% shows only top level webs. %WEBLIST{subwebs="Foo" depth="1"}% shows the direct subwebs of Foo. | (no maximum depth) | ||||||||||||||
limit="30" | Limit number of webs to show | "" (all) | ||||||||||||||
overlimit="..." | Message shown if over limit, such as: overlimit=" * [[%SYSTEMWEB%.SiteMap][More...]]" | "" | ||||||||||||||
reverse="on" | Reverse the order of the result. | "" (off) |
%WEBLIST{"$listindent * [[$name.WebHome]]"}%
- creates a indented bullet list of all webs.
<form><select name="web"> %WEBLIST{"<option $marker value=$qname>$name</option>" webs="Trash, public" selection="%WEB%" separator=" "}% </select></form>
- creates a dropdown of all public webs + Trash web, with the current web highlighted.
%WEBPREFSTOPIC%
WebPreferences
, renders as WebPreferences
WHITE
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%WHITE% white text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.
%WIKIHOMEURL%
/do/view/Main/WebHome
%SCRIPTURLPATH{"view"}%/%USERSWEB%/%HOMETOPIC%
%WIKILOGOURL%
defined in WebPreferences instead.
%WIKILOGOALT%
Home - this site is powered by TWiki(R)
%WIKILOGOIMG%
/pub/TWiki/TWikiLogos/T-logo-140x40-t.gif
%WIKILOGOURL%
https://lcc.inversion-lab.com/do/view/Main/WebHome
%SCRIPTURLPATH{"view"}%/%USERSWEB%/%HOMETOPIC%
%USERNAME%
if not defined in the TWikiUsers topic
%WIKINAME%
TWikiGuest
%WIKIPREFSTOPIC%
TWikiPreferences
, renders as TWikiPreferences
%WIKITOOLNAME%
TWiki
%WIKIUSERNAME%
Main.TWikiGuest
, renders as TWikiGuest
%WIKIUSERSTOPIC%
TWikiUsers
, with Main prefix renders as TWikiUsers
%WIKIVERSION%
TWiki-6.1.0, Mon, 16 Jul 2018, build 30610
%WIKIWEBMASTER%
expands to the email address of the administrator of this TWiki installation.
%WIKIWEBMASTER%
, expands to: WebServer@inversion-lab.com
%WIKIWEBMASTERNAME%
expands to the name of the administrator of this TWiki installation.
%WIKIWEBMASTERNAME%
, expands to: LCTWikiAdmin
%WIP%
%X%
%Y%
YELLOW
is one of the rendering shortcut settings predefined in TWikiPreferences. See the section rendering shortcut settings in that topic for a complete list of colors.
%YELLOW% yellow text %ENDCOLOR%
%<color>%
text must end with %ENDCOLOR%
. If you want to switch from one color to another one you first need to end the active color with %ENDCOLOR%
, e.g. write %RED% some text %ENDCOLOR% %GREEN% more text %ENDCOLOR%
.