Tags:
, view all tags

TWiki Variables

Special text strings expand on the fly to display user data or system info

TWikiVariables are text strings - %VARIABLE% or %VARIABLE{ parameter="value" }% - that expand into content whenever a topic is rendered for viewing. There are two types of variables:

  1. Preferences variables: Can be defined and changed by the user
  2. Predefined variables: Defined by the TWiki system or by Plugins (for example, the SpreadSheetPlugin introduces a %CALC{}% variable)

On this page:

Using Variables

To use a variable type its name. For example,

  • type %T% to get TIP (a preferences variable)
  • type %TOPIC% to get TWikiVariables (a predefined variable)
  • type %CALC{ "$UPPER(Text)" }% to get TEXT (a variable defined by Plugin)

Note:

  • To leave a variable unexpanded, precede it with an exclamation point, e.g. type !%TOPIC% to get %TOPIC%
  • Variables are expanded relative to the topic they are used in, not the topic they are defined in
  • Type %ALLVARIABLES% to get a full listing of all variables defined for a particular topic

Variable Names

Variable names must start with a letter. The following characters can be letters, numbers and the underscore '_'. You can use both upper-case and lower-case letters and you can mix the characteres. E.g. %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.

Preferences Variables

Unlike predefined variables, preferences variables can be defined by the user in various places.

Setting Preferences Variables

You can set variables in all the following places:
  1. local site level in TWiki.TWikiPreferences
  2. plugin topics (see TWikiPlugins)
  3. local site level in Main.TWikiPreferences
  4. user level in individual user topics in Main web
  5. web level in WebPreferences of each web
  6. topic level in topics in webs
  7. session variables (if sessions are enabled)

Settings at higher-numbered levels override settings of the same variable at lower numbered levels, unless the variable was included in the setting of FINALPREFERENCES at a lower-numbered level, in which case it is locked at the value it has at that level.

If you are setting a variable and using it in the same topic, note that TWiki reads all the variable settings from the saved version of the topic before it displays anything. This means you can use a variable anywhere in the topic, even if you set it somewhere inconspicuous near the end. But beware: it also means that if you change the setting of a variable you are using in the same topic, Preview will show the wrong thing, and you must Save the topic to see it correctly.

The syntax for setting Variables is the same anywhere in TWiki (on its own TWiki bullet line, including nested bullets):
[multiple of 3 spaces] * [space] Set [space] VARIABLENAME [space] = [space] value

Examples:
  • Set VARIABLENAME = value
    • Set VARIABLENAME = value
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.
Example:
   * Set VARIABLENAME = value starts here
     and continues here

Whatever you include in your Variable will be expanded on display, exactly as if it had been entered directly.

Example: Create a custom logo variable
  • 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

You can also set preferences variables on a topic by clicking the link Edit topic preference settings under More topic actions. Preferences set in this manner are not visible in the topic text, but take effect nevertheless.

Access Control Variables

These are special types of preferences variables to control access to content. TWikiAccessControl explains these security settings in detail.

Local values for variables

Certain topics (a users home topic, web site and default preferences topics) have a problem; variables defined in those topics can have two meanings. For example, consider a user topic. A user may want to use a double-height edit box when they are editing their home topic - but only when editing their home topic. The rest of the time, they want to have a normal edit box. This separation is achieved using 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 = 20
Then 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.

Frequently Used Preferences Variables

The following preferences variables are frequently used. They are defined in TWikiPreferences#Miscellaneous_Settings:

  • %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 Help icon
  • %I% - IDEA! Idea icon
  • %M% - MOVED TO... Moved to icon
  • %N% - NEW New icon
  • %P% - Blue led Refactor icon
  • %Q% - QUESTION? Question icon
  • %S% - PICK Pick icon
  • %T% - TIP Tip icon
  • %U% - UPDATED Updated icon
  • %X% - ALERT! Alert icon
  • %Y% - DONE Done icon

There are additional useful preferences variables defined in TWikiPreferences, in Main.TWikiPreferences, and in WebPreferences of every web.

Predefined Variables

Most predefined variables return values that were either set in the configuration when TWiki was installed, or taken from server info (such as current username, or date and time). Some, like %SEARCH%, are powerful and general tools.

  • ALERT! Predefined variables can be overridden by preferences variables (except TOPIC and WEB)
  • ALERT! Plugins may extend the set of predefined variables (see individual Plugins topics for details)
  • TIP Take the time to thoroughly read through ALL preference variables. If you actively configure your site, review variables periodically. They cover a wide range of functions, and it can be easy to miss the one perfect variable for something you have in mind. For example, see %INCLUDINGTOPIC%, %INCLUDE%, and the mighty %SEARCH%.

Search predefined variables

List of all predefined variables

This TWiki: - TWiki-6.0.0, Mon, 14 Oct 2013, build 26523

ACTIVATEDPLUGINS -- list of currently activated plugins

ADDTOHEAD -- add HTML to the HTML head section of the current page

  • Useful for TWiki applications to add custom CSS or JavaScript to the HTML head section of a topic. Supplied TWiki variables will be expanded. %ADDTOHEAD{}% expands in-place to an empty string, unless there is an error in which case the variable expands to an error string.
  • Syntax: %ADDTOHEAD{ "..." text="..." }%
  • Supported parameters:
    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
  • Category: ApplicationsAndComponentsVariables, DevelopmentVariables
  • Example: %ADDTOHEAD{ "MYBOX_CSS" text="<style type=\"text/css\"> .myBox { height: 22px; background-color: #AFB3C5; } </style>" }%

ALLVARIABLES -- list of currently defined TWikiVariables

AQUA -- start aqua colored text

ATTACHURL -- full URL for attachments in the current topic

ATTACHURLPATH -- path of the attachment URL of the current topic

AUTHREALM -- authentication realm

BASETOPIC -- base topic where an INCLUDE started

  • The name of the topic where a single or nested INCLUDE started - same as %TOPIC% if there is no INCLUDE.
  • Syntax: %BASETOPIC%
  • Example: If topic A includes B, and B includes C, then a %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.
  • Category: SystemInformationVariables
  • Related: BASEWEB, INCLUDINGTOPIC, INCLUDE, TOPIC

BASEWEB -- base web where an INCLUDE started

  • The web name where the includes started, e.g. the web of the first topic of nested includes. Same as %WEB% in case there is no include.
  • Syntax: %BASEWEB%
  • Syntax: %BASEWEB{format="..."}% -- see WEB for format documentation
  • Example: If topic A includes B, and B includes C, then a %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.
  • Category: SystemInformationVariables
  • Related: BASETOPIC, INCLUDINGWEB, INCLUDE, WEB

BB -- bullet with line break

BB2 -- level 2 bullet with line break

BB3 -- level 3 bullet with line break

BB4 -- level 4 bullet with line break

BLACK -- start black colored text

BLUE -- start blue colored text

BR -- line break

BROWN -- start brown colored text

BUBBLESIG -- show bubble box and user signature with profile picture icon

  • Syntax: %BUBBLESIG{WikiName}% or %BUBBLESIG{WikiName - YYYY-MM-DD}%
  • The parameter can be either just the WikiName of a user, or by convention the WikiName followed by a dash and the date
  • Example:
    -- %BUBBLESIG{TWikiGuest - 2024-11-01}%
  • Expands to:
    -- TWiki Guest - 2024-11-01
  • Category: EditingAndContentUpdateVariables, FormattingAndRenderingVariables, UsersAndAuthenticationVariables
  • Related: USERREPORT, USERSIG, UserList, UserReports

BULLET -- bullet sign

CALC{"formula"} -- add spreadsheet calculations to tables

  • The %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().
  • Syntax: %CALC{formula}%
  • Examples:
    • %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
  • Note: The CALC variable is handled with delay compared to other TWiki variables. You may get unexpected results if you nest CALC inside other variables (such as %INCLUDE{%CALC{...}%}%) because it does not get evaluated inside-out & left-to-right like ordinary TWiki variables. Use CALCULATE if you nest variables.
  • Category: DevelopmentVariables, TablesAndSpreadsheetsVariables
  • Related: CALCULATE, IF, IfStatements, SpreadSheetPlugin

CALCULATE{"formula"} -- handle spreadsheet calculations outside tables

  • The %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().
  • Syntax: %CALC{formula}%
  • Examples:
    • %CALC{$EXISTS(Web.SomeTopic)}% returns 1 if the topic exists
    • %CALC{$UPPER(Collaboration)}% returns COLLABORATION
  • Note: The CALCULATE variable is handled inside-out & left-to-right like ordinary TWiki variables, but it does not support functions that refer to table cells, such as $LEFT() or $T(). Use CALC instead.
  • Category: DevelopmentVariables, TablesAndSpreadsheetsVariables
  • Related: CALC, IF, IfStatements, SpreadSheetPlugin

CALENDAR -- show a monthly calendar with highlighted events

  • Events are defined by bullets, see CalendarPlugin#Event_Syntax for details. The %CALENDAR{}% variable is handled by the CalendarPlugin.
  • Syntax: %CALENDAR{ parameters }%
  • Parameters:
    Parameter Description Default
    year="yyyy" The year Current year
    year="+yy" or "-yy" Relative year Current year
    month="mm" The month Current month
    month="+mm" or "-mm" relative month Current month
    gmtoffset="+/-hh" Timezone expressed as number of hours offset from GMT Server timezone
    topic="TopicName" Topic containing events The topic containing the tag
    topic="Web.TopicName1, Web.TopicName2" Topics containing events The topics containing the tags
    web="Webname" Web containing the event topic The current web
    lang="language" Language: First few characters of "English", "Francais", "Deutsch", "Espagnol", "Portugues", "Nederlands", "Italiano", "Norsk", "Svenska", "Dansk", "Suomi", "Magyar", "Polski "English"
    daynames="Mon|Tue|..." Custom day names "Monday|Tuesday|
    Wednesday|Thursday|
    Friday|Saturday|
    Sunday"
    header="..." Text at the top of the calendar; use $m for current month, $y for year Current month and year
    weekstartsonmonday="1" or "0" Flag to start week on Monday "0" (Sunday)
    showdatenumbers="0" Show day numbers 1...31 in date cells. Note that showdatenumbers=1 means that HTML::CalendarMonthSimple will add the date numbers to the cells. If showdatenumbers=0, then the plugin adds the date numbers. The result of this is that a calendar will always show the date numbers. "0" (except with aslist="1", see below)
    showweekdayheaders="1" Show the weekday headers "0"
    weekdayheadersbig="0" If enabled, show weekday headers in bold cell headings "1"
    cellalignment="left" Horizontal cell alignment of day cells: "left", "center", "right", "justify", "char" "center"
    vcellalignment="middle" Vertical cell alignment of day cells: "top", "middle", "bottom", "baseline" "top"
    cellheight="n" Height in pixels of each cell in the calendar Minimum height needed
    format="..." How to highlight a date See Event Formatting below
    width="n" or "n%" Width of calendar table in pixels or percent Minimum width needed
    sharpborders="n" If set to 1, this gives very crisp edges between the table cells. If set to 0 standard HTML cells are used. "1"
    border="n" Border width of calendar table. (sharpborders="0" required) "1"
    cellspacing="n" Spacing of calendar cells. (sharpborders="0" required) "0"
    cellpadding="n" Padding of calendar cells. (sharpborders="0" required) "3"
    nowrap="1" or "0" Prevent cell content from wrapping "0"
    bgcolor="#nnnn" Default background color of all cells unless redefined by other color settings below (use an HTML color-code like "#000000" as defined in StandardColors) "white"
    contentcolor="#nnnn" Default content color of all cells unless redefined "black"
    headercolor="#nnnn" Background color of the Month+Year header The web bgcolor
    headercontentcolor="#nnnn" Content color of the Month+Year header contentcolor setting
    weekdayheadercolor="#nnnn" Background color of weekdays' headers bgcolor setting
    weekdayheadercontentcolor=
    "#nnnn"
    Content color of weekdays' headers contentcolor setting
    weekendheadercolor="#nnnn" Background color of weekends' headers bgcolor setting
    weekendheadercontentcolor=
    "#nnnn"
    Content color of weekends' headers contentcolor setting
    weekdaycolor="#nnnn" Background color of weekday cells bgcolor setting
    weekdaycontentcolor="#nnnn" Content color of weekday cells contentcolor setting
    weekendcolor="#nnnn" Background of weekend cells light gray
    weekendcontentcolor="#nnnn" Content color of weekend cells contentcolor setting
    todaycolor="#nnnn" Background of today's cell The web bgcolor
    todaycontentcolor="#nnnn" Content color of today's cell contentcolor setting
    and other attributes of HTML::CalendarMonthSimple
    aslist Controls whether events displayed in calendar style (aslist=0) or list style (aslist=1). Note that specifying aslist=1 forces showdatenumbers=1. This is done to ensure that the date number is formatted according to datenumberformat and that only the days that have an event are listed. "0"
    days Specifies how many days of calendar data to list. Only valid if aslist="1". "1"
    months Specifies how many months of calendars to display. Only valid if aslist="0". "1"
    datenumberformat Specifies formatting for the date number in each cell. The formatting codes accepted are the same as those for the %GMTIME% variable. $day (if aslist="0")
      * $day $mon $year (if aslist="1")
    todaydatenumberformat Specifies formatting for the date number for the current day (today) in the calendar. The formatting codes accepted are the same as those for the %GMTIME% variable. datenumberformat
    multidayformat Specifies formatting of the description for multi-day events. See Multi-Day Event Formatting for details. $description
  • Example: %CALENDAR{ month="2" year="2024" bgcolor="cyan" }% shows a February 2024 calendar
  • Category: DateAndTimeVariables, FormattingAndRenderingVariables
  • Related: DATE, DISPLAYTIME, GMTIME{"format"}, SERVERTIME, CalendarPlugin

CARET -- caret symbol

CHART{ attributes } -- create area, bar, line and scatter charts to visualize TWiki tables

CODE{"language"} -- highlight source code fragments for many languages

  • The %CODE{}% and %ENDCODE% variables are handled by the SyntaxHighlightingPlugin.
  • Syntax: %CODE{"language"}% ...code... %ENDCODE%
  • Parameters:
    Parameter Description Default
    "..." or
    lang="..."
    Source language. Supported languages: ada, asm, awk, bash, changelog, cpp, csh, c, delphi, diffs, diff, diffu, dylan, eiffel, elisp, Name:, forth, fortran_pp, fortran, haskell, html, icon, idl, inf, javascript, java, ksh, lua, m4, mail, makefile, matlab, nroff, oberon2, objc, outline, oz, pascal, perl, php, postscript, pyrex, python, rfc, ruby, scheme, sh, skill, Smalltalk, sml, sql, states, synopsys, tcl, tcsh, tex, vba, verilog, vhdl, vrml, wmlscript, zsh (none, required)
    num="..." Show line numbers next to the source code. An integer indicates the start number. Also "on" and "off" "off"
    step="..." Increment line numbers with the given step. Negative numbers will decrement. "1"
    style="..." Style of box around the source code light gray box
    numstyle="..." Style of line number column light brown box
  • Example:                   • Expands to:
    <sticky>
    %CODE{"cpp" num="on"}%
    void foo() {
      print("Do stuff.\n");
    }
    %ENDCODE%
    </sticky>
      %CODE{"cpp" num="on"}% void foo() { print("Do stuff.\n"); } %ENDCODE%
  • Category: FormattingAndRenderingVariables, UIAndVisualizationVariables
  • Related: SyntaxHighlightingPlugin

COLORPICKER{} -- color picker for use in HTML forms for TWiki applications

COMMENT{ attributes } -- insert an edit box into the topic to easily add comments.

  • A %COMMENT% without parameters shows a simple text box.
  • A %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"} -- content mode

DASHBOARD -- build a dashboard with banner and boxes

DATE -- signature format date

DATEPICKER{} -- pop-up calendar to select a date for use in HTML forms

  • The %DATEPICKER{}% variable is handled by the DatePickerPlugin.
  • Syntax: %DATEPICKER{ name="..." value="..." }%
  • Parameters:
    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    
  • Example:
    <form action="...">
    %DATEPICKER{ name="Start_Date" }%
    <form>
  • Expands to:
  • Category: ApplicationsAndComponentsVariables, DatabaseAndFormsVariables, DateAndTimeVariables, EditingAndContentUpdateVariables, FormattingAndRenderingVariables, UIAndVisualizationVariables
  • Related: DatePickerPlugin, TWikiForms

DISPLAYTIME -- display date and time

DISPLAYTIME{"format"} -- formatted display time

DRAWING -- vector drawing editor and clickable maps for diagrams and workflows

EDITACTION -- select an edit template

  • EDITACTION defined in a topic or preference setting will define the use of an editaction template instead of the standard edit. If EDITACTION is defined as text, then hide the form. If EDITACTION is defined as form hide the normal text area and only edit the form.
  • Syntax: %EDITACTION% (returning either text or form)
  • Expands to: %EDITACTION%
  • Note: When EDITACTION is defined as text or form the Edit and Edit Raw buttons simply add ;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.
  • Category: AdministrationVariables, EditingAndContentUpdateVariables, SkinsAndTemplatesVariables
  • Related: TWikiScripts#edit

EDITFORMFIELD{"fieldname" form=""} -- render an input field specified in a form template topic

  • Use this to create HTML forms that update TWikiForms, such as a custom "create new topic" form, or a topic header that allows users to change some form values at the top of the page. A valid form is composed of a start form type, various form fields, a submit type, and an end form type.
  • Syntax:
    • %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
  • Supported parameters:
    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=""
    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".
    ""
    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="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="", src="", style="", width="". Consult HTML documentation.
    ""
  • Example: %EDITFORMFIELD{ "ReleaseType" form="PackageForm" value="Beta-1" }%
  • Example: Custom form in an included header to update some values of the base topic
    %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" }%
  • Category: DatabaseAndFormsVariables, DevelopmentVariables, EditingAndContentUpdateVariables
  • Related: EDITTABLE, FORMFIELD, METASEARCH, SEARCH, FormattedSearch, QuerySearch, SearchHelp, TWikiForms, TWikiScripts

EDITTABLE{ attributes } -- edit TWiki tables using edit fields and other input fields

  • The %EDITTABLE{}% variable is handled by the EditTablePlugin
  • Syntax: %EDITTABLE{ attributes }%

  • Supported 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)

ENCODE{string} -- encode a string to URL or HTML entities

  • Encode "special" characters to HTML numeric entities or to URL entities.
  • Encoded characters:
    • all non-printable ASCII characters below space, except newline ("\n") and linefeed ("\r")
    • HTML special characters "<", ">", "&", single quote (') and double quote (")
    • TWiki special characters "%", "[", "]", "@", "_", "*", "=" and "|"
  • Syntax: %ENCODE{"string"}%
  • Supported parameters:
    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 &#034;. 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"
  • Examples:
    • %ENCODE{"spaced name"}% expands to spaced%20name
    • %ENCODE{"spaced name" type="entity" extra=" "}% expands to spaced&#32;name
  • Notes:
    • Values of HTML input fields should be encoded as "html". A shorter %ENTITY{any text}% can be used instead of the more verbose %ENCODE{ "any text" type="html" }%.
      Example: <input type="text" name="address" value="%ENTITY{any text}%" />
    • Double quotes in strings must be escaped when passed into other TWiki variables.
      Example: %SEARCH{ "%ENCODE{ "string with "quotes"" type="quotes" }%" noheader="on" }%
    • Use 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.
  • Category: ApplicationsAndComponentsVariables, DevelopmentVariables, ExportAndPublishingVariables
  • Related: ENTITY, FORMFIELD, QUERYPARAMS, URLPARAM

ENDBG -- end background color section

ENDCOLOR -- end colored text

ENDSECTION{"name"} -- marks the end of a named section within a topic

  • Syntax: %ENDSECTION{"name"}%
  • Syntax: %ENDSECTION{type="include"}%
  • Syntax: %ENDSECTION{type="templateonly"}%
  • Syntax: %ENDSECTION{type="expandvariables"}%
  • Supported parameter:
    Parameter: Description:
    "name" Name of the section.
    type="..." Type of the section being terminated; supported types "section", "include", "templateonly", "expandvariables"
  • If the 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.
  • Category: DevelopmentVariables, WorkflowAndAutomationVariables
  • Related: ENDSECTION, INCLUDE, STARTINCLUDE, STARTSECTION, STOPINCLUDE

ENTITY{string} -- encode a string to HTML entities

  • Encode "special" characters to HTML entities. Useful to encode text properly for HTML input fields.
  • Encoded characters:
    • all non-printable ASCII characters below space, including newline ("\n") and linefeed ("\r")
    • Space
    • HTML special characters "<", ">", "&", single quote (') and double quote (")
    • TWiki special characters "%", "[", "]", "@", "_", "*", "=" and "|"
  • Syntax: %ENTITY{string}%
  • Example: %ENTITY{text with "quotes" and
    newline}%
    expands to text&#32;with&#32;&#34;quotes&#34;&#32;and&#10;newline
  • Notes:
    • To protect against cross-site scripting (XSS), always entity encode text intended for HTML input fields. This is especially true if text is received dynamically via URLPARAM or the like.
      Example: <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.
  • Category: DevelopmentVariables, FormattingAndRenderingVariables, ExportAndPublishingVariables
  • Related: ENCODE, FORMFIELD, QUERYPARAMS, URLPARAM

ENV{"varname"} -- inspect the value of an environment variable

  • Returns the current value of the environment variable in the CGI (Common Gateway Interface) environment. This is the environment that the TWiki scripts run in on the web server.
  • Note: For security reasons, only those variables whose names match the regular expression in {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.
  • Example: %ENV{MOD_PERL}% displays as: not set
  • If a variable is undefined (as against being set to the empty string) it will be returned as not set.
  • Category: SystemInformationVariables
  • Related: HTTP_HOST, REMOTE_ADDR, REMOTE_PORT, REMOTE_USER

EXAMPLEVAR -- example variable

  • The %EXAMPLEVAR{}% variable is handled by the EmptyPlugin
  • Syntax: %EXAMPLEVAR{"text" format="..."}%
  • Parameter text="..." - example text.
  • Parameter format="..." - format of report.
  • Example: %EXAMPLEVAR{"hello" format="| $topic: $summary |"}%
  • Category: DevelopmentVariables
  • Related: EmptyPlugin

FAILEDPLUGINS -- debugging for plugins that failed to load, and handler list

FORMFIELD{"fieldname"} -- renders a field in the form attached to some topic

  • Syntax: %FORMFIELD{"fieldname"}%
  • Supported parameters:
    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" and encode="url". See ENCODE for details. "" (no encoding)
  • Example: %FORMFIELD{"ProjectName" topic="Projects.SushiProject" default="(not set)" alttext="ProjectName field not found"}%
  • Example: <input type="text" name="Address" value="%FORMFIELD{ "Address" encode="html" }%" />
    • Note: It is easier to use EDITFORMFIELD for custom input fields
  • Category: DatabaseAndFormsVariables, DevelopmentVariables
  • Related: EDITFORMFIELD, ENCODE, ENTITY, META, METASEARCH, SEARCH, FormattedSearch, QuerySearch, SearchHelp

GET{"name"} -- get a variable

  • Get the value of a named variable, previously set with %SET{}%. The %SET{}% and %GET{}% variables are handled by the SetGetPlugin.
  • Syntax: %GET{ "name" default="..." }%
  • Parameters:
    Parameter Description Default
    "name" Name of variable. (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)
  • Example: %GET{"lunch"}% returns Sushi if the following has been previously set:
    %SET{ "lunch" value="Sushi" }% - see more examples
  • Category: ApplicationsAndComponentsVariables, DevelopmentVariables
  • Related: IF, SET, SETGETDUMP, SetGetPlugin, SpreadSheetPlugin#FuncGET

GMTIME -- GM time

GMTIME{"format"} -- formatted GM time

  • Syntax: %GMTIME{"format"}%
  • Supported variables:
    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-11-01T00:11:31Z
    $rcs RCS format timestamp 2024/11/01 00:11:31
    $http E-mail & http format timestamp Fri, 01 Nov 2024 00:11:31 GMT
    $epoch Number of seconds since 00:00 on 1st January, 1970 1730419891
  • Variables can be shortened to 3 characters
  • Example: %GMTIME{"$day $month, $year - $hour:$min:$sec"}% expands to 01 Nov, 2024 - 00:11:31
  • Note: When used in a template topic, this variable will be expanded when the template is used to create a new topic. See TWikiTemplates#TemplateTopicsVars for details.
  • Category: DateAndTimeVariables
  • Related: DISPLAYTIME, GMTIME, REVINFO, SERVERTIME

GRAY -- start gray colored text

GREEN -- start green colored text

GROUPS -- a formatted list of groups

  • Expands to a formatted list of user groups in your TWiki. The variable is intended to be used in TWikiGroups, to allow a group listing for various user mapping managers.
  • Syntax: %GROUPS{"format" ...}%
  • Supported parameters:
    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"
  • Category: FormattingAndRenderingVariables
  • Related: REMOTE_USER, USERINFO, USERNAME, WIKIUSERNAME, WIKIUSERSTOPIC

H -- help icon

HEADLINES{"url"} -- show RSS and ATOM feeds in TWiki pages

  • The %HEADLINES{"url"}% variable is handled by the HeadlinesPlugin.
  • Syntax: %HEADLINES{ "http://..." }%
  • Parameters: (all but the first one are optional)
    "..." 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)
    Details
  • Example: %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
  • Category: ApplicationsAndComponentsVariables, ImportVariables
  • Related: HeadlinesPlugin

HIDE -- hide content in topic view

  • Text inside the HIDE is removed when viewing the topic. This can be used to remove large amounts of text from being sent to the browser, such as the user list in Main.TWikiUsers if there are many thousands of users.
  • Syntax: %HIDE{ any text }%
  • Expands to: (empty string)
  • Notes:
    • Using HIDE is not a replacement for access control, because edit and raw view still show the content.
    • Variables inside HIDE still get expanded because variables execute inside out, e.g. you can't use it to speed up slow variables.
    • <!-- HTML comments --> also hide content from the user, but unlike HIDE, HTML comments are sent to the browser.
  • Category: FormattingAndRenderingVariables
  • Related: NOP, STARTINCLUDE

HOLIDAYLIST -- add a vacation list to a topic

HOMETOPIC -- home topic in each web

HTTP -- get HTTP headers

HTTP_HOST -- environment variable

HTTPS -- get HTTPS headers

  • The same as %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.
  • Syntax: %HTTPS%
  • Syntax: %HTTPS{"Header-name"}%
  • Limitation: For security reasons, the COOKIE field value cannot be retrieved. You can add or delete hidden fields by changing the {HTTP}{HiddenFields} configuration parameter.
  • Category: SystemInformationVariables
  • Related: HTTP, REMOTE_ADDR, REMOTE_PORT, REMOTE_USER

I -- idea icon

ICON{"name"} -- small documentation graphic or icon of common attachment types

  • Generates the HTML img tag of a small graphic image attached to TWikiDocGraphics. Images typically have a 16x16 pixel size. You can select a specific image by name, or you can give a full file path or URL, in which case the type of the file will be used to select one of a collection of common file type icons.
  • Syntax: %ICON{"name"}%
  • Supported parameters:
    Parameter: Description: Default:
    "name" Name of icon required
    format="..." Format of icon. Supported variables (with Person %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"
  • Examples:
    • %ICON{"flag-gray"}% returns: Gray flag
    • %ICON{"pdf"}% returns: PDF
    • %ICON{"smile.pdf"}% returns: PDF
    • %ICON{"/home/sweet/home.pdf"}% returns: PDF
    • %ICON{"http://twiki.org/doc/xhtml.xsl"}% returns: XSL (XML style sheet)
    • %ICON{"bubble" format="$description icon is defined in $web.$topic"}% returns: Speech bubble icon is defined in TWikiDocGraphics
  • Graphic samples: Arrow blue right arrowbright, Speech bubble bubble, Yes / Done choice-yes, Pointing hand hand
  • File type samples: Bitmap bmp, Microsoft Word file doc, GIF gif, Standard help file hlp, HTML html, Waveform sound file mp3, PDF pdf, PowerPoint ppt, Text txt, Microsoft Excel Spreadsheet xls, XML xml, Compressed Zip archive zip
  • Category: FormattingAndRenderingVariables
  • Related: ICONURL, ICONURLPATH, TWikiPreferences, FileAttachments, TWikiDocGraphics

ICONURL{"name"} -- URL of small documentation graphic or icon

  • Generates the full URL of a TWikiDocGraphics image, which TWiki renders as an image. The related %ICON{"name"}% generates the full HTML img tag. Specify image name or full filename (see ICON for details on filenames.)
  • Syntax: %ICONURL{"name"}%
  • Examples:
    • %ICONURL{"arrowbright"}% returns https://www.sprace.org.br/twiki/pub/TWiki/TWikiDocGraphics/arrowbright.gif
    • %ICONURL{"novel.pdf"}% returns https://www.sprace.org.br/twiki/pub/TWiki/TWikiDocGraphics/pdf.gif
    • %ICONURL{"/queen/boheme.mp3"}% returns https://www.sprace.org.br/twiki/pub/TWiki/TWikiDocGraphics/wav.gif
  • Category: FormattingAndRenderingVariables
  • Related: ICONURLPATH, ICON, TWikiPreferences, FileAttachments, TWikiDocGraphics

ICONURLPATH{"name"} -- URL path of small documentation graphic or icon

  • Generates the URL path of a TWikiDocGraphics image, typically used in an HTML img tag. Specify image name or full filename (see ICON for details on filenames.)
  • Syntax: %ICONURLPATH{"name"}%
  • Examples:
    • %ICONURLPATH{"locktopic"}% returns /twiki/pub/TWiki/TWikiDocGraphics/locktopic.gif
    • %ICONURLPATH{"eggysmell.xml"}% returns /twiki/pub/TWiki/TWikiDocGraphics/xml.gif
    • %ICONURLPATH{"/doc/xhtml.xsl"}% returns /twiki/pub/TWiki/TWikiDocGraphics/xsl.gif
  • Category: FormattingAndRenderingVariables
  • Related: ICONURL, ICON, TWikiPreferences, FileAttachments, TWikiDocGraphics

IF{"condition" ...} -- simple conditionals

INCLUDE{"page"} -- include other topic or web page

  • Merges the content of a specified page into the current one before rendering.
  • Syntax: %INCLUDE{"page" ...}%
  • Supported parameters:
    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.
    IDEA! if the URL resolves to an attachment file on the server this will automatically translate to a server-side include.
     
    allowanytype="on" Suppress the content type checking in including the web page specified by a URL. disabled
    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_
    INCLUDED
    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 inclusion) When a topic is included, normally TWiki variables in the included topic are expanded in the context of the inlcluded 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 parapmeter, 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 &lt; 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"
    PARAMTWO="val 2"
    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="..." }%  
  • Security Considerations:
    • The ability to INCLUDE arbitrary URLs, such as %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.
    • JavaScript in included web pages is filtered out as a security precaution per default. Disable filtering with raw or disableremovescript parameter.
  • Examples: See IncludeTopicsAndWebPages
  • Category: ApplicationsAndComponentsVariables, DevelopmentVariables, ImportVariables
  • Related: BASETOPIC, BASEWEB, INCLUDINGTOPIC, INCLUDINGWEB, STARTINCLUDE, STOPINCLUDE, STARTSECTION, ENDSECTION, TOC, IncludeTopicsAndWebPages, ParameterizedVariables

INCLUDINGTOPIC -- name of topic that includes current topic

  • The name of the topic that includes the current topic - same as %TOPIC% in case there is no include.
  • Syntax: %INCLUDINGTOPIC%
  • Example: If topic A includes B, and B includes C, then a %INCLUDINGTOPIC% in topic C is reported as B when looking at topics A or B, and as C when looking at topic C itself.
  • Category: SystemInformationVariables
  • Related: BASETOPIC, INCLUDINGWEB, INCLUDE, TOPIC

INCLUDINGWEB -- web that includes current topic

  • The web name of the topic that includes the current topic - same as %WEB% if there is no INCLUDE.
  • Syntax: %INCLUDINGWEB%
  • Syntax: %INCLUDINGWEB{format="..."}% -- see WEB for format documentation
  • Example: If topic A includes B, and B includes C, then a %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.
  • Category: SystemInformationVariables
  • Related: BASEWEB, INCLUDINGTOPIC, INCLUDE, WEB

JQENDTAB -- end a JQuery tab within a tab pane

JQENDTABPANE -- end a JQuery tab pane

JQTAB -- start a JQuery tab within a tab pane

JQTABPANE -- start a JQuery tab pane

  • Create nice looking horizontal tab panes in TWiki topics. Write a sequence of %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.
  • Syntax: %JQTABPANE% %JQTAB{"Tab 1}% ... %JQENDTAB% %JQTAB{"Tab 2}% ... %JQENDTAB% ... %JQENDTABPANE%
  • Example:
    %JQTABPANE%
    %JQTAB{"Tab 1"}%
    Tab 1 content...
    %JQENDTAB%
    %JQTAB{"Tab 2"}%
    Tab 2 content...
    %JQENDTAB%
    %JQENDTABPANE%
  • Category: ApplicationsAndComponentsVariables, FormattingAndRenderingVariables
  • Related: JQENDTAB, JQENDTABPANE, JQTAB, JQueryPlugin

LANGUAGE -- current user's language

  • Returns the language code for the language used as the current user. This is the language actually used by TWiki Internationalization (e.g. in user interface).
  • The language is detected from the user's browser, unless some site/web/user/session-defined setting overrides it:
    • If the LANGUAGE preference is set, it's used as user's language instead of any language detected from the browser.
    • Avoid defining LANGUAGE at a non per-user way, so each user can choose his/her preferred language.
  • Category: AdministrationVariables, SystemInformationVariables
  • Related: LANGUAGES

LANGUAGES -- list available TWiki languages

  • List the languages available (as PO files) to TWiki. Those are the languages in which TWiki's user interface is available.
  • Syntax: %LANGUAGES{...}%
  • Supported parameters:
    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.
  • Category: AdministrationVariables, SystemInformationVariables
  • Example: <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 -- left double angle quote

LDAP{"filter" format="format"} -- LDAP directory query

  • An interface to query an LDAP directory and display the results in a TWiki topic
  • Syntax: %LDAP{"filter" format="format" ...}%
  • Supported parameters:
    Parameter: Description: Default:
    "uid=joeshmoe" the LDAP query string required
    filter="uid=joeshmoe" (Alternative to above) N/A
    host="..." host IP or name to connect to  
    port="..." port to of the host  
    version="..." protocol version; possible values: 2,3  
    ssl="..." use ssl to bind to the server; possible values 0,1  
    base="..." base dn of the (sub)tree to search in; if base is written in brackets (e.g. 'base="(ou=people)"') then it is prepended to the default base the default base of the LdapContrib
    scope="one" scope of search; possible values: sub, base, one sub
    format="..." format string used to display a database record $dn
    header="..." header to prepend the output no header
    footer="..." footer to appended to the output no footer
    sep="..." or separator="..." separator between database records $n (new line)
    sort="..." name of attributes to sort the output DN
    reverse="on" reverse the result set; possible values: on, off off
    limit="100" maximum number of records to return no limit
    skip="10" number of records in the hit set to skip before displaying them 0 (nothing is skipped)
    required="..." a comma separated list of LDAP record attributes. If specified, the LDAP query results not having all of the specified attributes are eliminated nothing is required
    hidenull="on" wether to hide any output on an empty hit set; possible values: on, off off
    default="..." when the LDAP query yields no results, the value of this parameter is returned as the search result instead of null. Naturally, if hidenull is on, default doesn't have any effect "" (null string)
    clear="..." comma separated list of attributes to be removed from the output if they are not resolved nothing is cleared
  • The header, format and footer format strings may contain the following variables and the standard special tokens:
    Variable: Description:
    $count the number of hits
    $index the record number
    $<attr-name> the value of the record attribute <attr-name>
  • Example: %LDAP{"objectClass=posixAccount" format="| $index | $cn | $mail |"}%
  • Category: DevelopmentVariables, DatabaseAndFormsVariables, SearchingAndListingVariables
  • Related: LDAPUSERS, LdapNgPlugin, LdapContrib

LDAPUSERS{...} -- LDAP user information

  • List all LDAP user information. Information is drawn from cache and not from the LDAP server. Use ?refreshldap=on to update.
  • Supported parameters:
    Parameter: Description: Default:
    format="..." format string used to display a user record ordered list of $displayName
    header="..." header to prepend the output no header
    footer="..." footer to appended to the output no footer
    sep="..." separator between database records $n (new line)
    limit="100" maximum number of records to return no limit
    skip="10" number of records in the hit set to skip before displaying them 0 (nothing is skipped)
    include="..." regular expression a user's WikiName must match to be included in the output  
    exclude="..." regular expression a user's WikiName must not match  
    hideunknown="off" on/off, enable/disable filtering out users that did not log in yet and thus have no home topic (e.g. created by TWiki:Plugins/NewUsersPlugin) on
  • The header, format and footer format strings may contain the following variables and the standard special tokens:
    Variable: Description:
    $index the record number
    $wikiName the user's WikiName
    $loginName the user's login name
    $displayName a link pointing to the users home topic in the Main web, if it exists, and '<nop>$wikiName' otherwise
    $emails the list of all known email addresses
  • Example: %LDAPUSERS{limit="10"}%
  • Category: DevelopmentVariables, DatabaseAndFormsVariables, SearchingAndListingVariables
  • Related: LDAPUSERS, LdapNgPlugin, LdapContrib

LIME -- start lime colored text

LOCALSITEPREFS -- web.topicname of site preferences topic

LOGIN -- present a full login link to non-authenticated user

LOGINURL -- present a login link

LOGOUT -- present a full logout link to authenticated user

LOGOUTURL -- present a logout link

M -- moved to... icon

MAINWEB -- synonym for USERSWEB

MAKETEXT -- creates text using TWiki's I18N infrastructure

  • Syntax: %MAKETEXT{"string" args="..."}%
  • Supported parameters:
    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
  • Examples:
    • %MAKETEXT{string="Notes:"}%
      expands to
      Notes:
    • %MAKETEXT{"If you have any questions, please contact [_1]." args="%WIKIWEBMASTER%"}%
      expands to
      If you have any questions, please contact web_admin@ncc.unesp.br.
    • %MAKETEXT{"Did you want to [[[_1]][reset [_2]'s password]]?" args="%SYSTEMWEB%.ResetPassword,%WIKIUSERNAME%"}%
      expands to
      Did you want to reset Main.TWikiGuest's password?
  • Notes:
    • TWiki will translate the string to the current user's language only if it has such string in its translation table for that language.
    • Ampersands (&) 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.
    • Translatable string starting with underscores (_) are reserved. You must not use translatable phrases starting with an underscore.
    • Make sure that the translatable string is constant. Specially, do not include %VARIABLES% inside the translatable strings (since they will get expanded before the %MAKETEXT{...}% itself is handled).
  • Category: DevelopmentVariables, FormattingAndRenderingVariables
  • Related: TWiki:Codev.UserInterfaceInternationalisation (on TWiki.org)

MAROON -- start maroon colored text

MDREPO -- retrieve data from metadata repository

  • Attention: This variable works only if MetadataRepository is in use. Otherwise, it always returns a zero length string.
  • This retrieves data from the specified metadata repository table.
  • Syntax: %MDREPO{ "table" ...}% (generic form), %MDREPO{ web="..." ...}% (web specific form)
  • Parameters (generic form without 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.
    Item Description
    $_ or $_() the record ID
    $__ or $__() The record value in the following format:
    FIELD_NAME=FIELD_VALUE FIELD_NAME=FIELD_VALUE ...
    $marker or $marker() Expands to marker for the item matching selection only
    $_FILED_NAME or $_FIELD_NAME() Please be noted that you need to put _ (underscore) in front of a field name. $_FIELD_NAME$ yields the value of the specified field. If the specified field does not exist in the record, it returns the null string ("").
    ?FIELD_NAME?IF_FIELD_HAS_VALUE? If the specified field has value and it's neither 0 nor the null string (""), it's evaluated as IF_FIELD_HAS_VALUE. Otherwise, it's evaluated as the null string. This is like q/.../ in Perl. A non-word character following ?FIELD_NAME becomes the terminator; i.e. you can write: ?FIELD_NAME:IF_TRUE:
    Specifically, the following characters can be used as the delimiter: ! # % ' / : ? @ ^ ` | ~
    = is excluded because it clashes with a parameter specification in a URL (?name=value).
    ?!FIELD_NAME?IF_FIELD_HAS_NO_VALUE? Similar to above but it's opposite. If the field has value, it's evaluated as the null string. Otherwise, it's evaluated as IF_FIELD_HAS_NO_VALUE.
    $question Replaced with ? after the ?FIEL_DNAME and ?!FIELD_ANME constructs are processed.
    "| $_ | $__ |"
    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
  • Example: %MDREPO{"webs" filter="^A" format="| $_ | $_admin | $_master |"}%
    This would show the metadata of webs whose names start with A.
  • Paramerers (web specific form):
    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)
  • Example: %MDREPO{web="Foo/Bar" "$_admin"}%
    This would show the admin field of the Foo web.
  • Category: AdministrationVariables, SystemInformationVariables
  • Related: MetadataRepository

META -- displays meta-data

  • Provided mainly for use in templates, this variable generates the parts of the topic view that relate to meta-data (attachments, forms etc.) The formfield item is the most likely to be useful to casual users.
  • Syntax: %META{ "item" ...}%
  • Parameters:
    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
  • Attention: The base topic, not the current topic, is used if %META{}% is placed in an included topic. Add a topic="%WEB%.%TOPIC%" parameter if you need meta info of the current topic.
  • Note: Formatting tokens can be used for newline, prefix, format, suffix and separator options, such as separator="$n   * "
  • Category: AttachmentsAndFilesVariables, SearchingAndListingVariables, SystemInformationVariables
  • Related: EDITFORMFIELD, FORMFIELD, METASEARCH, PARENTTOPIC, SEARCH, ENCODE, FormattedSearch

METASEARCH -- special search of meta data

  • Syntax: %METASEARCH{...}%
  • Supported parameters:
    Parameter: Description: Default:
    type="topicmoved" What sort of search is required?
    "topicmoved" if search for a topic that may have been moved
    "parent" if searching for topics that have a specific parent i.e. its children
    "field" if searching 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, for topicmoved and parent searches All topics in a web
    name form field to search, for field type searches. May be a regular expression (see SEARCH).  
    value form field value, for field type searches. May be a regular expression (see SEARCH).  
    title="Title" Text that is prefixed to any search results empty
    format="..." Custom format results. Supports same format strings as SEARCH. See FormattedSearch for usage, variables & examples Results in table
    default="none" Default text shown if no search hit Empty
  • Example: %METASEARCH{type="topicmoved" web="%WEB%" topic="%TOPIC%" title="This topic used to exist and was moved to: "}%
  • Example: You may want to use this in WebTopicViewTemplate and WebTopicNonWikiTemplate:
    %METASEARCH{type="parent" web="%WEB%" topic="%TOPIC%" title="Children: "}%
  • Example: %METASEARCH{type="field" name="Country" value="China"}%
  • Note: METASEARCH is deprecated in favour of the new and much more powerful query type search. See SEARCH and QuerySearch.
  • Category: SearchingAndListingVariables, SystemInformationVariables
  • Related: EDITFORMFIELD, FORMFIELD, SEARCH, META

N -- "new" icon

NAVY -- start navy blue colored text

NBSP -- non-breaking space

NOP -- template text not to be expanded in instantiated topics

  • Syntax: %NOP%
    • In normal topic text, expands to <nop>, which prevents expansion of adjacent variables and wikiwords
    • When the topic containing this is used as a template for another topic, it is removed.
  • Syntax: %NOP{...}% deprecated
    • In normal topic text, expands to whatever is in the curly braces (if anything).
    • Note: This is deprecated. Do not use it. Use %STARTSECTION{type="templateonly"}% .. %ENDSECTION{type="templateonly"}% instead (see TWikiTemplates for more details).
  • Category: FormattingAndRenderingVariables, SkinsAndTemplatesVariables
  • Related: HIDE, STARTSECTION, TWikiTemplates

NOTIFYTOPIC -- name of the notify topic

OLIVE -- start olive green colored text

ORANGE -- start orange colored text

P -- pencil icon

PARENTBC -- parent breadcrumbs for headings

PARENTTOPIC -- parent of current topic

PINK -- start pink colored text

PLUGINDESCRIPTIONS -- list of plugin descriptions

  • Syntax: %PLUGINDESCRIPTIONS%
  • Expands to:
    • SpreadSheetPlugin (2013-10-10, $Rev: 26482 (2013-10-14) $): Add spreadsheet calculation like "$SUM( $ABOVE() )" to TWiki tables or anywhere in topic text
    • BackupRestorePlugin (2013-02-16, $Rev: 25103 (2013-02-16) $): Administrator utility to backup, restore and upgrade a TWiki site
    • BibliographyPlugin (2011-03-09, $Rev: 20645 (2011-03-09) $): Cite bibliography in one topic and get an automatically created references list
    • ColorPickerPlugin (2013-02-15, $Rev: 25074 (2013-10-14) $): Color picker, packaged for use in TWiki forms and TWiki applications
    • CommentPlugin (2013-02-10, $Rev: 24977 (2013-10-14) $): Quickly post comments to a page without an edit/preview/save cycle
    • DatePickerPlugin (2013-09-04, $Rev: 26272 (2013-10-14) $): Pop-up calendar with date picker, for use in TWiki forms, HTML forms and TWiki plugins
    • EditTablePlugin (2013-01-13, $Rev: 25108 (2013-10-14) $): Edit TWiki tables using edit fields, date pickers and drop down boxes
    • HeadlinesPlugin (2013-02-16, $Rev: 25104 (2013-10-14) $): Show headline news in TWiki pages based on RSS and ATOM news feeds from external sites
    • HttpsRedirectPlugin (2011-01-21, $Rev: 20293 (2011-01-21) $): Redirect authenticated users to HTTPS url.
    • InterwikiPlugin (2013-02-12, $Rev: 25126 (2013-02-22) $): Text ExternalSite:Page links to a page on an external site based on aliases defined in a rules topic
    • JQueryPlugin (2013-09-28, $Rev: 26439 (2013-09-28) $): jQuery JavaScript library for TWiki
    • LdapNgPlugin (2013-02-01, $Rev: 27182 (2014-03-25) $): Query and display data from an LDAP directory
    • PreferencesPlugin (2013-09-08, $Rev: 26286 (2013-10-14) $): Allows editing of preferences using fields predefined in a form
    • SetGetPlugin (2013-01-28, $Rev: 24822 (2013-10-14) $): Set and get variables in topics, optionally persistently across topic views
    • SlideShowPlugin (2013-04-07, $Rev: 25715 (2013-10-14) $): Create web based presentations based on topics with headings.
    • SmiliesPlugin (2013-01-13, $Rev: 24784 (2013-10-14) $): Render smilies as icons, like  :-)  as smile or  :eek:  as eek!
    • TablePlugin (2013-09-25, $Rev: 26425 (2013-10-14) $): Control attributes of tables and sorting of table columns
    • TagMePlugin (2013-03-12, $Rev: 25778 (2013-10-14) $): Tag wiki content collectively to find content by keywords
    • TinyMCEPlugin (2013-09-18, $Rev: 26397 (2013-10-08) $): Integration of the Tiny MCE WYSIWYG Editor
    • TwistyPlugin (2013-03-22, $Rev: 25508 (2013-10-14) $): Twisty section JavaScript library to open/close content dynamically
    • WysiwygPlugin (2013-09-18, $Rev: 26391 (2013-10-14) $): Translator framework for WYSIWYG editors
  • Category: AdministrationVariables, SystemInformationVariables
  • Related: ACTIVATEDPLUGINS, FAILEDPLUGINS, PLUGINVERSION, TWikiPlugins, InstalledPlugins

PLUGINVERSION -- the version of a TWiki Plugin, or the TWiki Plugins API

PUBURL -- the base URL of attachments

PUBURLPATH -- the base URL path of attachments

PURPLE -- start purple colored text

Q -- question icon

QUERYPARAMS -- show paramaters to the query

  • Expands the parameters to the query that was used to display the page.
  • Syntax: %QUERYPARAMS{...}%
  • Parameters:
    • 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.
  • The following escape sequences are expanded in the format string:
    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 (>)

QUERYSTRING -- full, unprocessed string of parameters to this URL

  • String of all the URL parameters that were on the URL used to get to the current page. For example, if you add ?name=Samantha;age=24;eyes=blue to this URL you can see this in action. This string can be appended to a URL to pass parameter values on to another page.
  • ALERT! Note: URLs built this way are typically restricted in length, typically to 2048 characters. If you need more space than this, you will need to use an HTML form and %QUERYPARAMS%.
  • Syntax: %QUERYSTRING%
  • Expands to: cover=print%3brev%3d85;rev=85
  • Category: DevelopmentVariables, SystemInformationVariables
  • Related: QUERYPARAMS, URLPARAM

RAQUO -- right double angle quote

RED -- start red colored text

REDBG -- start red colored background section

REDIRECT{"url"} -- create a redirect to another topic or website

REMOTE_ADDR -- environment variable

REMOTE_PORT -- environment variable

REMOTE_USER -- environment variable

RENDERLIST -- render bullet lists in a variety of formats

  • The %RENDERLIST% variable is handled by the RenderListPlugin
  • Syntax: %RENDERLIST%
  • Syntax: %RENDERLIST{ "org" focus="Sales.WestCoastTeam" }%
  • Example:
    %RENDERLIST{ "org" }%
       * [[Eng.WebHome][Engineering]]
          * [[Eng.TechPubs][Tech Pubs]]
       * [[Sales.WestCoastTeam][Sales]]
          * [[Sales.EastCoastTeam][East Coast]]
          * [[Sales.WestCoastTeam][West Coast]]
  • Category: FormattingAndRenderingVariables
  • Related: RenderListPlugin

REVINFO -- revision information of current topic

REVINFO{"format"} -- formatted revision information of topic

  • Syntax: %REVINFO{"format"}%
  • Supported parameters:
    Parameter: Description: Default:
    "format" Format of revision information, see supported variables below "r1.$rev - $date - $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
  • Supported variables in format:
    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"}  
  • Example: %REVINFO{"$date - $wikiusername" rev="1.1"}% returns revision info of first revision
  • Category: SystemInformationVariables
  • Related: GMTIME{"format"}, REVINFO

S -- red star icon

SCRIPTNAME -- name of current script

SCRIPTSUFFIX -- script suffix

SCRIPTURL -- base URL of TWiki scripts

SCRIPTURL{"script"} -- URL of TWiki script

  • Expands to the URL of the specified script. Optionally, you can specify a web and/or a topic. In that case, the URL of the script for the specified web and topic is returned.
  • If ReadOnlyAndMirrorWebs is in effect and a web is specified, whether the web is a slave or not is taken into account. For a slave web, with scripts edit, save, attach, upload, and rename, the URL on the master site is returned.
    For the other scripts, if the master="on" parameter is specified, the URL on the master site is returned.
  • Syntax: %SCRIPTURL{"script" ...}%
  • Supported parameters:
    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
  • If web="WEB" is specified but topic is not specified, the resulting URL ends with WEB.
  • Example: To get the authenticated version of the current topic you can write %SCRIPTURL{"viewauth"}%/%WEB%/%TOPIC% which expands to https://www.sprace.org.br/twiki/bin/viewauth/TWiki/TWikiVariables. It can be written %SCRIPTURL{"viewauth" topic="%TOPIC%"}% as well.
  • Example: Let's assume this site has a web named 'Flowers' whose master site is 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.
  • Example: Asuming above, %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.
  • Example: How to link to another topic with a URL parameter: [[%SCRIPTURL{view}%/%WEB%/MyQuery?food=sushi][Sushi]]
  • Note: In most cases you should use %SCRIPTURLPATH{"script"}% instead, as it works with URL rewriting much better
  • Category: DevelopmentVariables, SystemInformationVariables
  • Related: CONTENTMODE, PUBURL, SCRIPTNAME, SCRIPTSUFFIX, SCRIPTURL, SCRIPTURLPATH, SCRIPTURLPATH{"script"}, SITENAME, ReadOnlyAndMirrorWebs, MetadataRepository, TWikiScripts

SCRIPTURLPATH -- base URL path of TWiki scripts

SCRIPTURLPATH{"script"} -- URL path of TWiki script

  • As %SCRIPTURL{"script"}%, but doesn't include the protocol and host part of the URL
  • Like %SCRIPTURL{"script"}%, this variable is aware of ReadOnlyAndMirrorWebs. So it may return a URL of a different site.
  • Syntax: %SCRIPTURLPATH{"script" ...}%
  • Supported parameters:
    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
  • If web="WEB" is specified but topic is not specified, the resulting URL ends with WEB.
  • Example: %SCRIPTURLPATH{"view"}% expands to "/twiki/bin/view" (This might be a null string. Hence surrounded by double quotes)
  • Example: %SCRIPTURLPATH{"view" web="%WEB%"}% expands to /twiki/bin/view/TWiki
  • Example: %SCRIPTURLPATH{"view" topic="%TOPIC%"}% expands to /twiki/bin/view/TWiki/VarSCRIPTURLPATH2
  • Example: Let's assume this site has a web named 'Flowers' whose master site is 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.
  • Category: DevelopmentVariables, SystemInformationVariables
  • Related: CONTENTMODE, PUBURLPATH, SCRIPTNAME, SCRIPTSUFFIX, SCRIPTURL, SCRIPTURL{"script"}, SCRIPTURLPATH, ReadOnlyAndMirrorWebs, MetadataRepository, TWikiScripts

SEARCH{"text"} -- search content

  • Inline search, shows a search result embedded in a topic
  • Syntax: %SEARCH{"text" ...}%
  • Supported parameters:
    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=
     "formfield(name)"
    Sort the results of search by the topic names, topic creation time, last modified time, last editor, parent topic name, or named field of TWikiForms. 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. Sort by topic name
    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. No results skipped
    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 results
    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
    reverse="on" Reverse the direction of the search Ascending search
    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 "$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. "$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
  • Example: %SEARCH{"wiki" web="Main" scope="topic"}%
  • Example with format: %SEARCH{"FAQ" scope="topic" nosearch="on" nototal="on" header="| *Topic: * | *Summary: * |" format="| $topic | $summary |"}% (displays results in a table with header - details)
  • HELP Hint: If the TWiki:Plugins.TablePlugin is installed, you may set a %TABLE{}% variable just before the %SEARCH{}% to alter the output of a search. Example: %TABLE{ tablewidth="90%" }%
  • Category: DevelopmentVariables, DatabaseAndFormsVariables, ExportAndPublishingVariables, SearchingAndListingVariables
  • Related: EDITFORMFIELD, FORMFIELD, META, METASEARCH, TOPICLIST, WEBLIST, FormattedSearch, SearchResultsPagination, QuerySearch, SearchHelp, SearchPatternCookbook, RegularExpression

SERVERTIME -- server time

SERVERTIME{"format"} -- formatted server time

SESSIONID -- unique ID for this session

SESSIONVAR -- name of CGI and session variable that stores the session ID

SESSION_VARIABLE -- get, set or clear a session variable

SET{"name" value="..."} -- set a variable

SETGETDUMP{...} -- dump persistent variables

SHAREME -- icon bar to share topics on popular social media sites

SILVER -- start silver colored text

SITENAME -- the current site name

SITESTATISTICSTOPIC -- name of site statistics topic

SLIDESHOWEND -- end slideshow

SLIDESHOWSTART -- convert a topic with headings into a slideshow

SPACEDTOPIC -- topic name, spaced and URL-encoded deprecated

  • The current topic name with added URL-encoded spaces, for use in regular expressions that search for backlinks to the current topic
  • Syntax: %SPACEDTOPIC%
  • Expands to: Var%20*SPACEDTOPIC
  • Note: This is a deprecated variable. It can be duplicated with %ENCODE{%SPACEOUT{"%TOPIC%" separator=" *"}%}%
  • Category: FormattingAndRenderingVariables
  • Related: SPACEOUT, TOPIC, ENCODE

SPACEOUT{"string"} -- renders string with spaces inserted in sensible places

  • Inserts spaces after lower case letters that are followed by a digit or a capital letter, and after digits that are followed by a capital letter.
  • Useful for spacing out WikiWords
  • Syntax: %SPACEOUT{ "%TOPIC%" }%
  • Expands to: TWiki Variables
  • Supported parameters:
    Parameter: Description: Default:
    separator The separator to put between words e.g. %SPACEOUT{"DogsCatsBudgies" separator=", "}% -> Dogs, Cats, Budgies ' '
  • TIP Hint: Spaced out WikiWords are not automatically linked. To SPACEOUT a WikiWord but preserve the link use "double bracket" format. For example, [[WebHome][%SPACEOUT{"WebHome"}%]] expands to Web Home
  • Category: FormattingAndRenderingVariables
  • Related: SPACEDTOPIC, $PROPERSPACE() of SpreadSheetPlugin

STARTINCLUDE -- start position of topic text if included

  • If present in included topic, start to include text from this location up to the end, or up to the location of the %STOPINCLUDE% variable. A normal view of the topic shows everything exept the %STARTINCLUDE% variable itself.
  • Note: If you want more than one part of the topic included, use %STARTSECTION{type="include"}% instead
  • Syntax: %STARTINCLUDE%
  • Category: DevelopmentVariables, WorkflowAndAutomationVariables
  • Related: ENDSECTION, INCLUDE, STARTSECTION, STOPINCLUDE

STARTSECTION -- marks the start of a section within a topic

  • Section boundaries are defined with %STARTSECTION{}% and %ENDSECTION{}%.
  • Sections may be given a name to help identify them, and/or a type, which changes how they are used.
    • 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.
  • Syntax: %STARTSECTION{"name"}% ................... %ENDSECTION{"name"}%
  • Syntax: %STARTSECTION{type="include"}% ........... %ENDSECTION{type="include"}%
  • Syntax: %STARTSECTION{type="templateonly"}% ...... %ENDSECTION{type="templateonly"}%
  • Syntax: %STARTSECTION{type="expandvariables"}% ... %ENDSECTION{type="expandvariables"}%
  • Supported parameters:
    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
  • ALERT! Note: If a section is not given a name, it will be assigned one. Unnamed sections are assigned names starting with _SECTION0 for the first unnamed section in the topic, _SECTION1 for the second, etc..
  • ALERT! Note: You can define nested sections. Do not overlap sections. Use named sections to make sure that the correct START and ENDs are matched. Section markers are not displayed when a topic is viewed.
  • Category: DevelopmentVariables, WorkflowAndAutomationVariables
  • Related: ENDSECTION, HIDE, INCLUDE, NOP, STARTINCLUDE, STOPINCLUDE

STATISTICSTOPIC -- name of statistics topic

STOPINCLUDE -- end position of topic text if included

SYSTEMWEB -- name of TWiki documentation web

T -- tip icon

TABLE{ attributes } -- control attributes of tables and sorting of table columns

  • The %TABLE{}% variable is handled by the TablePlugin
  • Syntax: %TABLE{ attributes }%

  • Supported 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"

TEAL -- start teal colored text

TIMETABLE -- add a timetable to a topic

TOC -- table of contents of current topic

  • Table of Contents. Shows a TOC that is generated automatically based on headings of the current topic. Headings in WikiSyntax ("---++ 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".
  • Syntax: %TOC%
  • Category: FormattingAndRenderingVariables, UIAndVisualizationVariables
  • Related: INCLUDE, TOC{"Topic"}

TOC{"Topic"} -- table of contents

  • Table of Contents. Shows a TOC that is generated automatically based on headings of a topic. Headings in WikiSyntax ("---++ 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".
  • Syntax: %TOC{"SomeTopic" ...}%
  • Supported parameters:
    Parameter: Description: Default:
    "TopicName" Topic name Current topic
    web="Name" Name of web Current web
    depth="2" Limit depth of headings shown in TOC 6
    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)
  • Example: %TOC{depth="2"}%
  • Example: %TOC{"TWikiDocumentation" web="TWiki" title="Contents:" style="float: right;"}%
  • Category: FormattingAndRenderingVariables, UIAndVisualizationVariables
  • Related: INCLUDE, TOC

TOPIC -- name of current topic

TOPICLIST{"format"} -- topic index of a web

  • List of all topics in a web. The "format" defines the format of one topic item. It may include variables: The $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.
  • Syntax: %TOPICLIST{"format" ...}%
  • Supported parameters:
    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" Current value to be selected in list (none)
    web="Name" Name of web Current web
  • Example: %TOPICLIST{"   * $web.$topic"}% creates a bullet list of all topics
  • Example: %TOPICLIST{separator=", "}% creates a comma separated list of all topics
  • Example: %TOPICLIST{" <option>$topic</option>"}% creates an option list (for drop down menus)
  • Example: <select>%TOPICLIST{" <option $marker value='$topic'>$topic</option>" separator=" " selection="%TOPIC%"}%</select> creates an option list of web topics with the current topic selected
  • Category: SearchingAndListingVariables, SystemInformationVariables
  • Related: SEARCH, WEBLIST

TOPICTITLE -- title of a topic

  • The topic title is defined by, in order of sequence:
    • form field named "Title",
    • topic preference setting named TITLE,
    • topic name.
  • Syntax: %TOPICTITLE% or %TOPICTITLE{ topic="TopicName" }%
  • Supported parameters:
    Parameter: Description: Default:
    topic="..." Topic to get the title from. May be of form 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)
  • Example: %TOPICTITLE{topic="Projects.SushiProject"}% returns Sushi Project assuming the topic has a form field named "Title" with value "Sushi Project"
  • Expands to: TWikiVariables
  • Category: SystemInformationVariables
  • Related: BASETOPIC, INCLUDINGTOPIC, PARENTTOPIC, TOPIC, TOPICLIST, TOPICURL, WEB

TOPICURL -- shortcut to viewing the current topic

TTCM{"time range,foreground color,backgroundcolor"} -- add a colorized time (range) to a topic

TTTOPICSETUP -- add a default topic setup for the TIMETABLE variable to a topic

  • The %TTTOPICSETUP% variable is handled by the TimeTablePlugin.
  • Syntax: %TTTOPICSETUP{attr1="value1" attr2="value2" ...}%
  • Example:
    • %TTTOPICSETUP{timezone="-1"}% sets the time zone to '-1'
    • %TTTOPICSETUP{eventfgcolor="yellow" eventbgcolor="green"}% sets the default event forground and background colors to yellow and green
  • Related: VarTIMETABLE, VarTTCM, TimeTablePlugin, CalendarPlugin, HolidaylistPlugin

TWIKIWEB -- synonym for SYSTEMWEB

TWISTY{ attributes } -- dynamically open and close sections of content

U -- "updated" icon

URLPARAM{"name"} -- get value of a URL parameter

  • Returns the value of a URL parameter.
  • Syntax: %URLPARAM{"name"}%
  • Supported parameters:
    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"
    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
  • Example: %URLPARAM{"skin"}% returns print for a .../view/TWiki/TWikiVariables?skin=print URL
  • ALERT! Notes:
    • IMPORTANT: There is a risk that this variable can be misused for cross-site scripting (XSS) if the encoding is turned off. The encode="safe" is the default, it provides a safe middle ground. The encode="entity" is more aggressive, but some TWiki applications might not work.
    • URL parameters passed into HTML form fields should be encoded as "html".
      Example: <input type="text" name="address" value="%URLPARAM{ "address" encode="html" }%" />
    • Double quotes in URL parameters must be escaped when passed into other TWiki variables.
      Example: %SEARCH{ "%URLPARAM{ "search" encode="quotes" }%" noheader="on" }%
    • When used in a template topic, this variable will be expanded when the template is used to create a new topic. See TWikiTemplates#TemplateTopicsVars for details.
    • Watch out for TWiki internal parameters, such as rev, skin, template, topic, web; they have a special meaning in TWiki. Common parameters and view script specific parameters are documented at TWikiScripts.
    • If you have %URLPARAM{ in the value of a URL parameter, it will be modified to %<nop>URLPARAM{. This is to prevent an infinite loop during expansion.
  • Category: DevelopmentVariables, SystemInformationVariables
  • Related: ENCODE, ENTITY, SEARCH, FormattedSearch, QUERYSTRING

USERINFO{"name"} -- retrieve details about a user

  • Syntax: %USERINFO%
  • Expands to: guest, TWikiGuest, (comma-separated list of the username, wikiusername, and emails)
  • With formatted output, using tokens $emails, $username, $wikiname, $wikiusername, $groups and $admin ($admin returns 'true' or 'false'):
    • Example: %USERINFO{ format="$username is really $wikiname" }%
    • Expands to: guest is really TWikiGuest
  • Retrieve information about another user:
    • Example: %USERINFO{ "TWikiGuest" format="$username is really $wikiname" }%
    • Expands to: guest is really TWikiGuest
    • Note: The parameter should be the wikiname of a user. Since TWiki 4.2.1, you can also pass a login name. You can only get information about another user if the {AntiSpam}{HideUserDetails} configuration option is not enabled, or if you are an admin. (User details are hidden in this TWiki)
  • Category: SystemInformationVariables, UsersAndAuthenticationVariables
  • Related: USERNAME, WIKINAME, WIKIUSERNAME, TWikiUserAuthentication, ChangeEmailAddress

USERNAME -- your login username

USERREPORT -- show user reports with profile pictures

  • Show various user reports documented in UserReports
  • Syntax: %USERREPORT{ action="..." ... }%
  • Overview of actions with parameters:
    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
  • Example: %USERREPORT{ action="user_list" search="jane" limit="5" }%
  • Category: AdministrationVariables, DevelopmentVariables, UsersAndAuthenticationVariables
  • Related: BUBBLESIG, SEARCH, USERSIG, UserList, UserReports

USERSIG -- show user signature with profile picture icon

USERSWEB -- name of users web

VAR{"NAME" ...} -- get a preference value from another web or topic and more

  • Gets the value of a variable in various manners.
    • If the 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.
    • If the 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.
    • If the neither the 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.
  • Syntax: %VAR{"NAME" ...}%
  • Supported parameters:
    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"
  • Example 1: To get the members of TWikiAdminGroup, %VAR{"GROUP" topic="%USERSWEB%.TWikiAdminGroup"}%, which expands to SergioNovaes, novaes, gregores, santos, rogerio.
  • Example 2: To get %WEBBGCOLOR% of the Main web write %VAR{"WEBBGCOLOR" web="Main"}%, which expands to #FFEFA6
  • Example 3: Let's say you are writing the "foo" skin. And you want to have the users specify a string inserted in the head tag with FOOSKIN_HTML_HEAD_HOOK. That can be achived by the following:
    %VARVAL{"FOOSKIN_HTML_HEAD_HOOK" default="<nop>" ignorenull="on"}%
  • Category: DevelopmentVariables, SystemInformationVariables
  • Related: ALLVARIABLES, WEBPREFSTOPIC

VBAR -- vertical bar

VOTE{ id="..." } -- define a poll in a TWiki topic

  • The %VOTE{}% variable is handled by the VotePlugin.
  • Syntax: %VOTE{ id="..." select1="..., ..., ..." }%
  • Parameters:
    Parameter Description Example
    id The identifier of the poll. You can have multiple independent votes in the same topic. id="Dining"
    selectN Defines the name of a select vote, where you select one from a ranges of options. N is a number that identifies this item within the poll e.g. select1, select2 etc. You must number all select and stars parameters uniquely and sequentially (e.g. select1 stars2 select3 select1="Drink"
    optionsN Each selectN must have a corresponding optionsN that defines a comma-separated list of the options that can be selected between. options1="Beer,Wine,Milk"
    starsN Defines the name of a rate vote, where you rate something by giving it a number of stars. N is a number that identifies this item within the poll e.g. select1, stars2 etc. You must number all select and stars parameters uniquely and sequentially (e.g. select1 stars2 select3 stars2="Usability"
    widthN Each starsN must have a corresponding widthN. This gives the number of stars to show e.g. width1="5" will show 5 stars. width2="10"
    formatN Defines the format of the results display. See formatting results, below. format="$large"
    chartN Defines the format of a single bar in the results bar chart generated for the corresponding select (for select type only). See formatting results, below. chart="<p>$option $score</p>"
    separator Defines the string to be used to separate each row in the result. separator="<br/>"
    global If set to "off", this makes the id local to this topic (the default). If set to "on" it will be a global poll that can be accessed from many topics. global="on"
    open If set to "off" this is a closed vote. If set to "on" it is open (the default) open="on"
    secret If set to "off", then the database will record who voted. If set to "on", votes are secret (the default) secret="on"
    saveto If set to the name of a topic, the poll results will be appended to the end of that topic. The results are formatted as a TWiki table for easy post-processing. saveto="Main.VoteResults"
    bayesian If set to "on", rating averages will be computed using the Bayesian average of this item against all the other items that have the same item in their stars field. This requires all the participating %VOTEs to be global, or to save their results to the same place using saveto. See http://www.thebroth.com/blog/118/bayesian-rating for more information about Bayesian rating. bayesian="off"
    submit If set to "off", this makes the %VOTE display the results of the vote without prompting for any input. This is useful when - for example - you want to show the results of a global vote, without permitting more voting.
  • Example: %VOTE{ id="FavouriteMeal" select1="Drink" options1="Beer,Wine,Milk,Water" select2="Food" options2="Steak,Bread,Pasta,Pizza" }% shows two selectors named "Drink" and "Food", respectively, and a "Vote" button
  • Category: ApplicationsAndComponentsVariables, DatabaseAndFormsVariables
  • Related: VotePlugin

WEB -- name of current web

  • %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.
  • Syntax: %WEB%, expands to: TWiki
  • Syntax: %WEB{format="..."}%
  • Supported parameter:
    Parameter: Description: Default:
    format="..." Format, may include tokens $web (the full web path), $parents (parent webs, if any), $current (current web without parent webs), $top (top-level web with any subwebs removed) "$web"
  • Example, assuming %WEB% is Engineering/TechPubs/Apps:
    %WEB{format="Parent webs: $parents, current web: $current, top-level web: $top"}% returns: Parent webs: Engineering/TechPubs, current web: Apps, top-level web: Engineering
  • Category: SystemInformationVariables
  • Related: BASEWEB, INCLUDINGWEB, TOPIC

WEBLIST{"format"} -- index of all webs

  • List of all webs. Obfusticated webs are excluded, e.g. webs with a 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.
  • Syntax: %WEBLIST{"format" ...}%
  • Supported parameters:
    Parameter: Description: Default:
    "format" Format of one line, may include following items. In addtion, the standard special tokens are handled accordingly.
    Item Description
    $name the name of the web
    $qname the name of the web in double quotes
    $indentedname the name of the web with parent web names replaced by indents, for use in indented lists
    $listindent expands to multiple-of-3 spaces for bullet (*) and numberd (1., a., etc.) lists. It's relative to the depth of the web specified by the subwebs parameter. See an example below.
    $marker expands to marker for the item matching selection only
    $web expands to the value specified by the web parameter
    If you need to have a letter immediately after an item listed above, use $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:
    Item Description
    public expands to all non-hidden webs.
    cancopyto similar to public, but webs to which a topic of the current web cannot be copied to are excluded. Specifically, excluded are read-only webs and mirror webs.
    canmoveto similar to cancopyto, but webs to which a topic of the current web cannot be moved to are excluded. Specifically, excluded are webs residing on different disks from the current web.
    webtemplate expands to all template webs, whose name start with underscore (_)
    NOTE 1: Administrators will see all webs, not just the public ones.
    NOTE 2: If MetadataRepository is used and webs are required to be registered, then cancopyto, canmoveto, and webtemplate behave differently.
    • cancopyto and canmoveto results include all top level webs and subwebs of the current webs are listed regardless of accessibility - subwebs of non-current webs are excluded. They also include the user's subweb.
    • webtemplate result has top level template webs only.
    "public"
    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...]]" ""
  • Example: %WEBLIST{"$listindent   * [[$name.WebHome]]"}% - creates a indented bullet list of all webs.
  • Example: <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.
  • Category: SearchingAndListingVariables, SystemInformationVariables
  • Related: TOPICLIST, SEARCH, MetadataRepository, ReadOnlyAndMirrorWebs, UsingMultipleDisks

WEBPREFSTOPIC -- name of web preferences topic

WHITE -- start white colored text

WIKIHOMEURL -- site home URL

WIKILOGOALT -- site logo tooltip message

WIKILOGOIMG -- site logo image URL

WIKILOGOURL -- site logo home URL

WIKINAME -- your Wiki username

WIKIPREFSTOPIC -- name of site-wide preferences topic

WIKITOOLNAME -- name of your TWiki site

WIKIUSERNAME -- your Wiki username with web prefix

WIKIUSERSTOPIC -- name of topic listing all registers users

WIKIVERSION -- the version of the installed TWiki engine

WIP -- work in progress icon

WORKFLOW*{} -- manage workflows

  • Associate a "state" with a topic and then control the work flow that the topic progresses through as content is added. The WorkflowPlugin expands the following variables:
  • Controlling topics in the workflow:
    • %WORKATTACHTOPIC% - Expands to a link that lets you attach to the topic (if the user is not able to modify the topic, either in the workflow sense or according to the standard access controls, the link will be struck out).
    • %WORKEDITTOPIC% - Expands to a link that lets you edit the topic (if the user is not able to modify the topic, either in the workflow sense or according to the standard access controls, the link will be struck out).
    • %WORKFLOWFORK{...}% - Expands to a button that will create a copy of the current topic (see below for more details)
    • %WORKFLOWTRANSITION% - Expands to either (a) a pull-down menu if the user can perform more than one transition, (b) a button if the current user can only perform one transition, or (c) empty space if the current user is not allowed to perform any action. You can change the format of the button using a CSS class.
  • Querying the workflow:
    • %WORKFLOWHISTORY% - Expands to the history of state transitions the topic has undergone. The format of the history is dictated by the WORKFLOWHISTORYFORMAT (described below).
    • %WORKFLOWLASTREV_State% - Expands to the version number when the document was last in the state State.
    • %WORKFLOWLASTTIME_State% - Expands to the timestamp when the document was last in the State last state. For example, %WORKFLOWLASTTIME_APPROVED% would be replaced by the timestamp when the document was last in the APPROVED state.
    • %WORKFLOWLASTVERSION_State% - Expands to a link to the version of the document when it was last in the state State.
    • %WORKFLOWSTATE% - Expands to the current state of the document. It can also be given a topic parameter (default), in which case the state of that topic is returned.
    • %WORKFLOWSTATEMESSAGE% - Expands to the corresponding message in the state table.
  • Category: ApplicationsAndComponentsVariables, EditingAndContentUpdateVariables, WorkflowAndAutomationVariables
  • Related: WorkflowPlugin for details

X -- warning icon

Y -- "yes" icon

YELLOW -- start yellow colored text

Related Topics: UserDocumentationCategory, TWikiVariablesSearch, TWikiVariablesQuickStart

Edit | Attach | Print version | History: r88 < r87 < r86 < r85 < r84 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r85 - 2009-04-13 - TWikiContributor
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.TWikiVariables.

antalya escort bursa escort eskisehir escort istanbul escort izmir escort