====== Formatting Syntax ======
[[wiki:DokuWiki]] supports some simple markup language which tries to make the datafiles to be as readable as possible. This page contains all possible syntax you may use when editing the pages. Simply have a look at the source of this page by pressing the //Edit this page// button at top or bottom of the screen. If you want to try something just use the [[playground]] page. The simpler markup is easy accessible via [[doku>quickbuttons]], too.
===== Basic text formatting =====
DokuWiki supports **bold**, //italic//, __underlined__ and ''monospaced'' texts. Of course you can **__//''combine''//__** all these.
DokuWiki supports **bold**, //italic//, __underlined__ and ''monospaced'' texts.
Of course you can **__//''combine''//__** all these.
You can use subscript and superscript, too.
You can use subscript and superscript, too.
You can mark something as deleted as well.
You can mark something as deleted as well.
**Paragraphs** are created from blank lines. If you want to **force a newline** without a paragraph you can use two backslashes followed by a whitespace or the end of line.
This is some text with some linebreaks\\ Note that the
two backslashes are only recognized at the end of a line\\
or followed by\\ a whitespace \\this happens without it.
This is some text with some linebreaks\\ Note that the
two backslashes are only recognized at the end of a line\\
or followed by\\ a whitespace \\this happens without it.
You should use forced newlines only if really needed.
===== Links =====
DokuWiki supports multiple ways of creating links.
==== External ====
External links are recognized automagically: http://www.google.com or simply www.google.com - You can set Linknames, too: [[http://www.google.com|This Link points to google]]. Email addresses like this one: are recognized, too.
DokuWiki supports multiple ways of creating links. External links are recognized
automagically: http://www.google.com or simply www.google.com - You can set
Linknames, too: [[http://www.google.com|This Link points to google]]. Email
addresses like this one: are recognized, too.
==== Internal ====
Internal links are created by using square brackets. You can either just give a [[doku>wiki:pagename]] or use an additional [[doku>wiki:pagename|Title Text]]. Wiki pagenames are converted to lowercase automatically, special chars are not allowed.
Internal links are created by using square brackets. You can either just give
a [[pagename]] or use an additional [[pagename|Title Text]]. Wiki pagenames
are converted to lowercase automatically, special chars are not allowed.
You can use [[wiki:namespaces]] by using a colon in the pagename.
You can use [[wiki:namespaces]] by using a colon in the pagename.
For details about namespaces see [[doku>wiki:namespaces]].
Linking to a specific section is possible, too. Just add the sectionname behind a hash character as known from HTML. This links to [[syntax#internal|this Section]].
This links to [[syntax#internal|this Section]].
Notes:
* Links to [[wiki:syntax|existing pages]] are shown in a different style from [[wiki:nonexisting]] ones.
* DokuWiki does not use [[wp>CamelCase]] to automatically create links by default, but this behaviour can be enabled in the [[doku>config]] file. Hint: if DokuWiki is a link then it's enabled.
* When a section's heading is changed it's bookmark changes, too. So don't rely on section linking too much.
==== Interwiki ====
DokuWiki supports [[doku>wiki:interwiki]] links. These are quick links to other Wikis. For example this is a link to Wikipedia's page about Wikis: [[wp>Wiki]].
DokuWiki supports [[interwiki]] links. These are quick links to other Wikis.
For example this is a link to Wikipedia's page about Wikis: [[wp>Wiki]].
==== Windows Shares ====
Windows shares like [[\\server\share|this]] are recognized, too. Please note that these only make sense in a homogenous user group like a corporate [[wp>Intranet]].
Windows Shares like [[\\server\share|this]] are recognized, too.
Note:
* For security reasons direct browsing of windows shares only works in Microsoft Internet Explorer
==== Image Links ====
You can also use an image to link to another internal or extern page by combing the syntax for links and images (see below) like this:
[[http://www.php.net|{{wiki:php-powered.png}}]]
[[http://www.php.net|{{wiki:php-powered.png}}]]
Please note: The image formatting is the only formatting syntax accepted in link names.
===== Footnotes =====
You can add footnotes ((This is a footnote)) by using double parentheses ((is this spelled right?)).
You can add footnotes ((This is a footnote)) by using double parentheses ((is this spelled right?)).
===== Sectioning =====
You can use up to five different levels of headlines structure your content. If you have more then three headlines a table of contents is generated automatically -- this can be disabled by including the string ''~~NOTOC~~'' in the document.
==== Headline Level 3 ====
=== Headline Level 4 ===
== Headline Level 5 ==
==== Headline Level 3 ====
=== Headline Level 4 ===
== Headline Level 5 ==
By using four dashes you can make horizontal line:
----
===== Images and other files =====
You can include external and internal [[doku>images]] with curly brackets. Optional you can specify the size of them.
Real size: {{wiki:php-powered.png}}
Resize to given width: {{wiki:php-powered.png?100}}
Resize to given size: {{wiki:php-powered.png?100x100}}
Resized external Image: {{http://de3.php.net/images/php.gif?100x100}}
Real size: {{wiki:php-powered.png}}
Resize to given width: {{wiki:php-powered.png?100}}
Resize to given size: {{wiki:php-powered.png?100x100}}
Resized external Image: {{http://de3.php.net/images/php.gif?100x100}}
By using left or right whitespaces you can choose the alignment
{{ wiki:php-powered.png}}
{{wiki:php-powered.png }}
{{ wiki:php-powered.png }}
{{ wiki:php-powered.png}}
{{wiki:php-powered.png }}
{{ wiki:php-powered.png }}
Of course you can add a title (displayed as tooltip by most browsers), too.
{{ wiki:php-powered.png |This is the caption}}
{{ wiki:php-powered.png |This is the caption}}
If you specify an filename (external or internal) that is not an image (''gif,jpeg,png'') then it will be displayed as link instead.
===== Lists =====
Dokuwiki supports ordered and unordered lists. To create a list item **indent your text by two spaces** and use a **''*''** for unordered lists or a **''-''** for ordered ones.
* This is a list
* The second item
* You may have different levels
* Another item
- The same list but ordered
- Another item
- Just use indention for deeper levels
- Thats it
* This is a list
* The second item
* You may have different levels
* Another item
- The same list but ordered
- Another item
- Just use indention for deeper levels
- Thats it
===== Smileys =====
DokuWiki converts commonly used [[wp>emoticon]]s to their graphical equivalents. More smileys can be placed in the ''smiley'' directory and be configured in the ''conf/smileys.conf'' file. Here is an overview on Smileys included in DokuWiki.
* 8-) %% 8-) %%
* 8-O %% 8-O %%
* :-( %% :-( %%
* :-) %% :-) %%
* =) %% =) %%
* :-/ %% :-/ %%
* :-\ %% :-\ %%
* :-? %% :-? %%
* :-D %% :-D %%
* :-P %% :-P %%
* :-O %% :-O %%
* :-X %% :-X %%
* :-| %% :-| %%
* ;-) %% ;-) %%
* ^_^ %% ^_^ %%
* :?: %% :?: %%
* :!: %% :!: %%
* LOL %% LOL %%
* FIXME %% FIXME %%
* DELETEME %% DELETEME %%
===== Typography =====
[[DokuWiki]] can convert simple text characters to their typographically correct entities. Here is an example of recognized characters.
-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r)
"He thought 'It's a man's world'..."
-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r)
"He thought 'It's a man's world'..."
Please note: These conversions can be turned off in the config file.
===== Tables =====
DokuWiki supports a simple syntax to create tables.
^ Heading 1 ^ Heading 2 ^ Heading 3 ^
| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
| Row 2 Col 1 | some colspan (note the double pipe) ||
| Row 3 Col 1 | Row 2 Col 2 | Row 2 Col 3 |
Table rows have to start and end with a ''|'' for normal rows or a ''^'' for headers.
^ Heading 1 ^ Heading 2 ^ Heading 3 ^
| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 |
| Row 2 Col 1 | some colspan (note the double pipe) ||
| Row 3 Col 1 | Row 2 Col 2 | Row 2 Col 3 |
To connect cells horizontally just make the next cell completely empty as shown above. Be sure to have always the same amount of cell separators!
Vertical Tableheaders are possible, too.
| ^ Heading 1 ^ Heading 2 ^
^ Heading 3 | Row 1 Col 2 | Row 1 Col 3 |
^ Heading 4 | no colspan this time | |
^ Heading 5 | Row 2 Col 2 | Row 2 Col 3 |
As you can see it's the cell separator before a cell which decides about the formating:
| ^ Heading 1 ^ Heading 2 ^
^ Heading 3 | Row 1 Col 2 | Row 1 Col 3 |
^ Heading 4 | no colspan this time | |
^ Heading 5 | Row 2 Col 2 | Row 2 Col 3 |
Note: vertical spans (rowspan) are not possible.
===== Norparsed Blocks =====
You can include non parsed blocks into your documents by either indenting them by at least two spaces (like used for the previous examples) or by using the tags ''code'' or ''file''.
This is preformated code all spaces are preserved: like <-this
This is pretty much the same but you could use it to show that you quoted a file.
To let the parser ignore an area completely (ie. do no formatting on it) enclose the area either with ''nowiki'' tags or even simpler with double percent signs ''%%''.
This is some text which contains addresses like this: http://www.splitbrain.org and **formatting** but nothing is done on it.
See the source of this page to see how to use these blocks.
===== Syntax Highlighting =====
[[DokuWiki]] can highlight sourcecode which makes it easier to read. It uses the [[http://qbnz.com/highlighter/|GeSHi]] Generic Syntax Highlighter -- so any language supported by GeSHi is supported. The syntax is the same like in the code block in the previous section but this time to give the language of the used sourcecode in side the tag. Eg. ''
''.
/**
* The HelloWorldApp class implements an application that
* simply displays "Hello World!" to the standard output.
*/
class HelloWorldApp {
public static void main(String[] args) {
System.out.println("Hello World!"); //Display the string.
}
}
The following language strings are currently recognized: //actionscript, ada, apache, asm, asp, bash, caddcl, cadlisp, c, cpp, css, delphi, html4strict, java, javascript, lisp, lua, nsis, oobas, pascal, perl, php-brief, php, python, qbasic, sql, vb, visualfoxpro, xml//
===== Embedding HTML and PHP =====
You can embed raw HTML or PHP code into your documents by using the ''html'' or ''php'' tags like this:
This is some HTML
This is some HTML
echo 'A logo generated by PHP:';
echo '';
echo 'A logo generated by PHP:';
echo '';
**Please Note**: HTML and PHP embeding can be disabled in the configuration. If disabled the code is displayed instead of being executed.