TWiki Text Formatting
These instructions are for contributors who prefer to use the Raw Edit over the default WYSIWYG editor. Working in TWiki is as easy as typing in text. You don't need to know HTML, though you can use it if you prefer. Links to topics are created automatically when you enter WikiWords. And TWiki shorthand gives you all the power of HTML with a simple coding system that takes no time to learn. It's all laid out below.On this page:
TWiki Editing Shorthand
Formatting Command: | You write: | You get: | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paragraphs: Blank lines will create new paragraphs. |
1st paragraph 2nd paragraph | 1st paragraph 2nd paragraph | |||||||||||||||||||||||||||
Headings: Three or more dashes at the beginning of a line, followed by plus signs and the heading text. One plus creates a top level heading, two pluses a second level heading, etc. The maximum heading depth is 6.
|
---++ Sushi ---+++ Maguro ---+++!! Not in TOC |
SushiMaguroNot in TOC |
|||||||||||||||||||||||||||
Bold Text: Words get shown in bold by enclosing them in * asterisks.
|
*Bold* | Bold | |||||||||||||||||||||||||||
Italic Text: Words get shown in italic by enclosing them in _ underscores.
|
_Italic_ | Italic | |||||||||||||||||||||||||||
Bold Italic: Words get shown in bold italic by enclosing them in __ double-underscores.
|
__Bold italic__ | Bold italic | |||||||||||||||||||||||||||
Fixed Font: Words get shown in fixed font by enclosing them in = equal signs.
|
=Fixed font= |
Fixed font
|
|||||||||||||||||||||||||||
Bold Fixed Font: Words get shown in bold fixed font by enclosing them in double equal signs.
|
==Bold fixed== |
Bold fixed
|
|||||||||||||||||||||||||||
|
_This works_, _this does not _ _this fails too_ |
This works, _this does not _ _this fails too_ |
|||||||||||||||||||||||||||
Separator (Horizontal Rule): Three or more three dashes at the beginning of a line.. |
------- |
|
|||||||||||||||||||||||||||
Bulleted List: Multiple of three spaces, an asterisk, and another space.
|
* level 1 * level 2 * back on 1 * A bullet broken over three lines * last bullet |
|
|||||||||||||||||||||||||||
Icon List: Multiple of three spaces, an asterisk, text icon:name and another space.
|
* icon:tip Icon list * icon:led-red Full * icon:led-green OK * icon:unchecked Item 1 * icon:checked Item 2 * icon:empty No bullet |
|
|||||||||||||||||||||||||||
Numbered List: Multiple of three spaces, a type character, a dot, and another space. Several types are available besides a number:
|
1. Sushi 1. Dim Sum 1. Fondue A. Sushi A. Dim Sum A. Fondue i. Sushi i. Dim Sum i. Fondue |
|
|||||||||||||||||||||||||||
Definition List: Three spaces, a dollar sign, the term, a colon, a space, followed by the definition. Deprecated syntax: Three spaces, the term with no spaces, a colon, a space, followed by the definition. |
$ Sushi: Japan $ Dim Sum: S.F. |
|
|||||||||||||||||||||||||||
Table: Each row of the table is a line containing of one or more cells. Each cell starts and ends with a vertical bar '|'. Any spaces at the beginning of a line are ignored.
|
| *L* | *C* | *R* | | A2 | B2 | C2 | | A3 | B3 | C3 | | multi span ||| | A5-7 | 5 | 5 | |^| six | six | |^| seven | seven | | split\ | over\ | 3 lines | | A9 |>> | Nested | | table | <<| C9 | |
|
|||||||||||||||||||||||||||
WikiWord Links: CapitalizedWordsStuckTogether (or WikiWords) will produce a link automatically if preceded by whitespace or parenthesis.
|
WebStatistics Sandbox.WebNotify Sandbox.WebHome Sandbox.Subweb.TopicName !EscapedWikiWord | WebStatistics WebNotify WebHome TopicName EscapedWikiWord | |||||||||||||||||||||||||||
Anchors: You can define a reference inside a TWiki topic (called an anchor name) and link to that. To define an anchor write #AnchorName at the beginning of a line. The anchor name must be a WikiWord of no more than 32 characters. To link to an anchor name use the [[MyTopic#MyAnchor]] syntax. You can omit the topic name if you want to link within the same topic.
|
[[WikiWord#NotThere]] [[#MyAnchor][Jump]] #MyAnchor To here | WikiWord Jump To here | |||||||||||||||||||||||||||
External Links: URLs starting with file , ftp , gopher , http , https , irc , mailto , news , nntp and telnet are linked automatically if preceded by whitespace or parenthesis. External links are indicated with a trailing ![]() ! exclamation point prefix.
|
http://twiki.org https://google.com !http://escaped-link |
http://twiki.org![]() ![]() |
|||||||||||||||||||||||||||
Forced Links: Use double square brackets to create forced links: Write [[link]] or [[link][label]] to force a link. Use the former for singleton words and if automatic linking is disabled. Use the latter one to specify a link label other than the link. For the link, you can use internal link references (e.g. WikiWords) and URLs (e.g. http://TWiki.org/).
|
[[WikiWord]] [[WikiWord?n1=v1;n2=v2]] [[WikiWord#TheAnchor]] [[WikiWord?n=5#TheAnchor]] [[WikiSyntax][wiki syntax]] [[http://gnu.org/][GNU]] [[Singleton]] escaped: ![[WikiSyntax]] |
WikiWord
WikiWord
WikiWord
WikiWord
wiki syntax
GNU![]() |
|||||||||||||||||||||||||||
Topic Title Links: Use double square brackets and a plus sign to create links with topic title: Write [[+TopicName]] or [[+Web.TopicName]] to show the topic title instead of the topic name. The topic title is defined by the form field named "Title", the topic preferences setting named TITLE, or the topic name if neither exists.
|
[[+BugN1234]] [[+Bugs.BugN1234]] [[BugN1234][$topictitle]] | The sky is falling The sky is falling The sky is falling | |||||||||||||||||||||||||||
Refer to Topic or Attachment Name in Double Square Brackets: $name in the link label in the double square brackets notation refers to the topic name or the attachment file name.
$name is used for consistency with QuerySearch, in which name refers to the topic name and the attachment file name, respectively.
|
[[%SYSTEMWEB%.WikiWord\ #TheSyntax][$name]] [[%PUBURL%/%WEB%/WabiSabi\ /wabisabi.gif][$name]] | WikiWord wabisabi.gif | |||||||||||||||||||||||||||
Prevent a Link: Prevent a WikiWord from being linked by prepending it with an exclamation point. |
!RedHat | RedHat | |||||||||||||||||||||||||||
Disable Links: You can disable automatic linking of WikiWords by surrounding text with <noautolink> and </noautolink> tags.
|
<noautolink> RedHat & SuSE </noautolink> | RedHat & SuSE | |||||||||||||||||||||||||||
Mailto Links: E-mail addresses are linked automatically. To create e-mail links that have more descriptive link text, specify subject lines or message bodies, or omit the e-mail address, you can write [[mailto:user@domain][descriptive text]] .
|
a@b.com [[mailto:a@b.com]\ [Mail]] [[mailto:?subject=\ Hi][Hi]] | a@b.com Mail Hi | |||||||||||||||||||||||||||
Twitter Links: @twitter IDs are linked automatically. The link rule is defined by the {Links}{TwitterUrlPattern} configure setting.
|
@twiki !@escaped |
@twiki![]() |
|||||||||||||||||||||||||||
Verbatim Text: Surround code excerpts and other formatted text with <verbatim> and </verbatim> tags.
|
<verbatim> class CatAnimal { void purr() { <code here> } } </verbatim> |
class CatAnimal { void purr() { <code here> } } |
|||||||||||||||||||||||||||
Literal Text: TWiki generates HTML code from TWiki shorthand. Experts surround anything that must be output literally in the HTML code, without the application of TWiki shorthand rules, with <literal>..</literal> tags.
|
<literal> | Not | A | Table | <literal> |
| Not | A | Table | | |||||||||||||||||||||||||||
Protected Text: Experts protect text from mangling by WYSIWYG editors using <sticky>..</sticky> tags. Sticky tags don't have any effect on normal
topic display; they are only relevant when content has to be
protected from a WYSIWYG editor (usually because it isn't well-formed HTML, or because it
is HTML that WYSIWYG would normally filter out or modify). Protected
content appears as plain text in the WYSIWYG editor.
|
<sticky> <div> This div is required </div> </sticky> |
This div is required
|
Using HTML, CSS and JavaScript
You can use most HTML tags in TWiki topics without a problem. This is useful where you want to add some content that is formatted in a way that is not supported using TWiki shorthand, for example, you can write<strike>deleted text</strike>
to get - On collaboration pages, it's better not to use HTML, but to use TWiki shorthand instead - this keeps the text uncluttered and easy to edit using the plaintext editor.
- If you must use HTML, use XHTML 1.0 Transitional
syntax.
- Use
<literal>..</literal>
tags around blocks of HTML to avoid accidental interpretation of TWiki shorthand within the HTML. -
Script tags may be filtered out, at the discretion of your TWiki administrator.
- Copy only text between
<body>
and</body>
tags. - Remove all empty lines. TWiki inserts
<p />
paragraph tags on empty lines, which causes problems if done between HTML tags that do not allow paragraph tags, like for example between table tags. - Remove leading spaces. TWiki might interpret some text as lists.
- Do not span a tag over more than one line. TWiki requires that the opening and closing angle brackets -
<...>
- of a HTML tag are on the same line, or the tag will be broken. - In your HTML editing program, save without hard line breaks on text wrap.


JavaScript Example: | CSS Example: |
---|---|
<!-- <pre> --> <script language="javascript"> <!-- // put your JavaScript code here //--> </script> <!-- </pre> --> |
<!-- <pre> --> <style type="text/css"> /* put your CSS code here */ </style> <!-- </pre> --> |
Hyperlinks
Being able to create links without any special formatting is a core TWiki feature, made possible with WikiWords and inline URLs.Internal Links
- NotExistingYet is a topic waiting to be written because it is a red-link. Create the topic by clicking on the link. (Try clicking, but then, Cancel - creating the topic would wreck this example!)
External Links
-
http://...
,https://...
,ftp://...
,gopher://...
,news://...
,file://...
,telnet://...
andmailto:...@...
are linked automatically.
- Write
[[URL][label]]
to get an external link with a descriptive text for the link, such as[[http://google.com/][Google home page]]
to get Google home page.
- E-mail addresses like
name@domain.com
are linked automatically.
TWiki Variables
TWiki Variables are names enclosed in percent signs that are that are expanded to some other text when the topic is displayed. For example,%TOPIC%
is expanded to TextFormattingRules. Some variables can take arguments in curly braces - for example, %INCLUDE{"OtherTopic" arg="value"}%
.
Many TWiki variables are built-in, and others are predefined for your convenience. TWikiVariables describes how you can also define your own TWiki Variables at the entire site, individual web, or individual topic level. Variables are fully expanded before any of the TWiki text formatting rules are applied.
Commonly used variables:
-
%TOC%
: Automatically generates a table of contents based on headings in a topic - see the top of this page for an example. -
%WEB%
: The current web, is TWiki. -
%TOPIC%
: The current topic name, is TextFormattingRules. -
%ATTACHURL%
: The attachment URL of the current topic. Example usage: If you attach a file to a topic you can refer to it as%ATTACHURL%/image.gif
to show the URL of the file or the image in your text. -
%INCLUDE{"SomeTopic"}%
: Server side include, includes another topic. The current web is the default web. Example:%INCLUDE{"TWiki.SiteMap"}%
-
%SEARCH{"sushi"}%
: Inline search showing the search result embedded in a topic. FormattedSearch gives you control over formatting, used to create web-based applications. - Documentation Graphics: There are many graphics available to use in your topics. Use
%ICON{"help"}%
,%ICON{"tip"}%
, and%ICON{"warning"}%
to get:,
, and
, respectively.
- Use the TWiki Variables Wizard to find and compose variables.
- See all TWiki Variables.

!%SOMEVARIABLE%
to get: %SOMEVARIABLE%.
TWikiPlugin Formatting Extensions
Plugins can extend the functionality of TWiki into many other areas. There are a huge number of TWiki plugins available from the Plugins
%PLUGINDESCRIPTIONS%
:
- SpreadSheetPlugin (2018-07-05, $Rev: 30478 (2018-07-16) $): Add spreadsheet calculation like
"$SUM( $ABOVE() )"
to TWiki tables or anywhere in topic text - ActionTrackerPlugin (2017-08-05, $Rev: 30633 (2019-01-23) $): Adds support for action tags in topics, and automatic notification of action statuses
- AutoViewTemplatePlugin (2011-05-14, $Rev: 21260 (2011-05-14) $): Automatically sets VIEW_TEMPLATE and EDIT_TEMPLATE
- BackupRestorePlugin (2018-07-10, $Rev: 30551 (2018-07-16) $): Administrator utility to backup, restore and upgrade a TWiki site
- BreadCrumbsPlugin (2010-08-01, $Rev: 19303 (2010-08-01) $): A flexible way to display breadcrumbs navigation
- ColorPickerPlugin (2018-07-05, $Rev: 30442 (2018-07-16) $): Color picker, packaged for use in TWiki forms and TWiki applications
- CommentPlugin (2018-07-05, $Rev: 30530 (2018-07-16) $): Quickly post comments to a page without an edit/preview/save cycle
- DBCachePlugin (2.1, $Rev: 19283 (2010-07-30) $): Lightweighted frontend to the DBCacheContrib to query cached TWiki content
- DatePickerPlugin (2018-07-05, $Rev: 30446 (2018-07-16) $): Pop-up calendar with date picker, for use in TWiki forms, HTML forms and TWiki plugins
- EditTablePlugin (2018-07-05, $Rev: 30448 (2018-07-16) $): Edit TWiki tables using edit fields, date pickers and drop down boxes
- FilterPlugin (2010-07-25, $Rev: 19240 (2010-07-25) $): Substitute and extract information from content by using regular expressions
- FormQueryPlugin (TWiki-4, $Rev: 15561 (12 Dec 2008) $): Provides query capabilities across a database defined using forms and embedded tables in TWiki topics.
- GluePlugin (2.1, $Rev: 18553 (2010-04-30) $): Enable markup to span multiple lines
- GuidPlugin (2016-03-02, $Rev: 29983 (2016-03-02) $): Generate GUID unique IDs
- HeadlinesPlugin (2018-07-13, $Rev: 30560 (2018-07-16) $): Show headline news in TWiki pages based on RSS and ATOM news feeds from external sites
- IfDefinedPlugin (v1.1, $Rev: 18548 (2010-04-29) $): Render content conditionally
- InterwikiPlugin (2018-07-05, $Rev: 30454 (2018-07-16) $): Write
ExternalSite:Page
to link to a page on an external site based on aliases defined in a rules topic - JQueryPlugin (2018-07-05, $Rev: 30456 (2018-07-16) $): jQuery JavaScript library for TWiki
- JQueryTwistyPlugin (2010-07-25, $Rev: 19236 (2010-07-25) $): Twisty section JavaScript library to open/close content dynamically
- NotificationPlugin (2017-08-05, $Rev: 30635 (2019-01-23) $): This plugin allows you to send fine grained notifications of topics you are interested in
- PreferencesPlugin (2018-07-05, $Rev: 30528 (2018-07-16) $): Allows editing of preferences using fields predefined in a form
- QRCodePlugin (2018-07-17, $Rev: 30621 (2018-07-17) $): Create QR Code (a matrix barcode) in TWiki pages, useful for mobile applications
- SendMailPlugin (2016-01-19, $Rev: 29910 (2016-01-20) $): Send e-mail from actions in TWiki topics, useful for workflow automation
- SetGetPlugin (2018-07-05, $Rev: 30472 (2018-07-16) $): Set and get variables and JSON objects in topics, optionally persistently across topic views
- SlideShowPlugin (2018-07-05, $Rev: 30474 (2018-07-16) $): Create web based presentations based on topics with headings.
- SmiliesPlugin (2018-07-05, $Rev: 30476 (2018-07-16) $): Render smilies as icons, like
:-)
asor
:eek:
as - TWikiSheetPlugin (2018-07-15, $Rev: 30604 (2018-07-16) $): Add TWiki Sheet spreadsheet functionality to TWiki tables
- TablePlugin (2018-07-05, $Rev: 30480 (2018-07-16) $): Control attributes of tables and sorting of table columns
- TagMePlugin (2018-07-05, $Rev: 30482 (2018-07-16) $): Tag wiki content collectively or authoritatively to find content by keywords
- TinyMCEPlugin (2018-07-10, $Rev: 30541 (2018-07-16) $): Integration of the Tiny MCE WYSIWYG Editor
- TopicCreatePlugin (2014-11-07, $Rev: 28434 (2014-11-07) $): Automatically create a set of topics and attachments at topic save time
- TreePlugin (2015-08-12, $Rev: 29430 (2015-08-12) $): Dynamically generate TWiki topic trees based on the parent-child relationship of topics
- TwistyPlugin (2018-07-06, $Rev: 30497 (2018-07-16) $): Twisty section JavaScript library to open/close content dynamically
- UserInfoPlugin (2010-07-25, $Rev: 19259 (2010-07-25) $): Render information about users on a TWiki site
- WatchlistPlugin (2018-07-10, $Rev: 30536 (2018-07-16) $): Watch topics of interest and get notified of changes by e-mail
- WysiwygPlugin (2018-07-06, $Rev: 30528 (2018-07-16) $): Translator framework for WYSIWYG editors
Common Editing Errors
TWiki formatting rules are fairly simple to use and quick to type. However, there are some things to watch out for, taken from the TextFormattingFAQ:- Q: Text enclosed in angle brackets like
<filename>
is not displayed. How can I show it as it is?- A: The
'<'
and'>'
characters have a special meaning in HTML, they define HTML tags. You need to escape them, so write'<'
instead of'<'
, and'>'
instead of'>'
.
Example: Type'prog <filename>'
to get'prog <filename>'
.
- A: The
- Q: Why is the
'&'
character sometimes not displayed?- A: The
'&'
character has a special meaning in HTML, it starts a so-called character entity, e.g.'©'
is the©
copyright character. You need to escape'&'
to see it as it is, so write'&'
instead of'&'
.
Example: Type'This & that'
to get'This & that'
.
- A: The