+ Sample Page for Wiki Markup [[toc]] ++ General Notes The markup described is a combination of the [http://tavi.sourceforge.net \ WikkTikkiTavi] and [http://develnet.org/ coWiki] markup styles. All text is entered as plain text, and will be converted to HTML entities as \ necessary. This means that {{<}}, {{>}}, {{&}}, and so on are converted for \ you (except in special situations where the characters are Wiki markup; \ the Wiki is generally smart enough to know when to convert and when not to). Just hit "return" twice to make a paragraph break. If you want \ to keep the same logical line but have to split it across \ two physical lines (such as when your editor only shows a certain number \ of characters per line), end the line with a backslash {{\}} and hit \ return once. This will cause the two lines to be joined on display, and the \ backslash will not show. (If you end a line with a backslash and a tab \ or space, it will ''not'' be joined with the next line, and the backslash \ will be printed.) ++ Inline Formatting || {{``//emphasis text//``}} || //emphasis text// || || {{``**strong text**``}} || **strong text** || || {{``//**emphasis and strong**//``}} || //**emphasis and strong**// || || {{``'''bold text'''``}} || '''bold text''' || || {{``''italic text''``}} || ''italic text'' || || {{``__underline text__``}} || __underline text__ || || {{``{{teletype text}}``}} || {{teletype text}} || || {{``,,subscript,, text``}} || ,,subscript,, text || || {{``^^superscript^^ text``}} || ^^superscript^^ text || || {{``@@--- delete text +++ insert text @@``}} || @@--- delete text +++ insert text @@ || || {{``@@--- delete only @@``}} || @@--- delete only @@ || || {{``@@+++ insert only @@``}} || @@+++ insert only @@ || || {{``##red|red text## ``}} || ##red|red text## || || {{``##FFFF00|yellow text##``}} || ##FFFF00|yellow text## || ++ Literal Text If you don't want the wiki to parse some text, enclose it in two backticks (not single-quotes). <code> This //text// gets **parsed**. ``This //text// does not get **parsed**.`` </code> This //text// gets **parsed**. ``This //text// does not get **parsed**.`` ++ Headings You can make various levels of heading by putting \ plus-signs before the text (all on its own line): <code> +++ Level 3 Heading ++++ Level 4 Heading +++++ Level 5 Heading ++++++ Level 6 Heading </code> +++ Level 3 Heading ++++ Level 4 Heading +++++ Level 5 Heading ++++++ Level 6 Heading ++ Text Alignment You can center align paragraphs by starting it with an equal sign. <code> = Center aligned text </code> = Center aligned text ++ Table of Contents To create a list of every heading, with a link to that heading, put a table of contents tag on its own line. <code> [[toc]] </code> ++ Horizontal Rules Use four dashes ({{``----``}}) to create a horizontal rule. ---- ++ Lists +++ Bullet Lists You can create bullet lists by starting a paragraph with one or \ more asterisks. <code> * Bullet one * Sub-bullet </code> * Bullet one * Sub-bullet +++ Numbered Lists Similarly, you can create numbered lists by starting a paragraph \ with one or more hashes. <code> # Numero uno # Number two # Sub-item </code> # Numero uno # Number two # Sub-item +++ Mixing Bullet and Number List Items You can mix and match bullet and number lists: <code> # Number one * Bullet * Bullet # Number two * Bullet * Bullet * Sub-bullet # Sub-sub-number # Sub-sub-number # Number three * Bullet * Bullet </code> # Number one * Bullet * Bullet # Number two * Bullet * Bullet * Sub-bullet # Sub-sub-number # Sub-sub-number # Number three * Bullet * Bullet +++ Definition Lists You can create a definition (description) list with the following syntax: <code> : Item 1 : Something : Item 2 : Something else </code> : Item 1 : Something : Item 2 : Something else ++ Block Quotes You can mark a blockquote by starting a line with one or more '>' \ characters, followed by a space and the text to be quoted. <code> This is normal text here. > Indent me! The quick brown fox jumps over the lazy dog. \ Now this the time for all good men to come to the aid of \ their country. Notice how we can continue the block-quote \ in the same "paragraph" by using a backslash at the end of \ the line. > > Another block, leading to... >> Second level of indenting. This second is indented even \ more than the previous one. Back to normal text. </code> This is normal text here. > Indent me! The quick brown fox jumps over the lazy dog. \ Now this the time for all good men to come to the aid of \ their country. Notice how we can continue the block-quote \ in the same "paragraph" by using a backslash at the end of \ the line. > > Another block, leading to... >> Second level of indenting. This second is indented even \ more than the previous one. Back to normal text. ++ Links and Images +++ Wiki Links SmashWordsTogether to create a page link. You can force a Wiki page name '''not''' to be clickable by putting \ an exclamation mark in front of it. <code> SmashWordsTogether !SmashWordsTogether </code> SmashWordsTogether !SmashWordsTogether You can force a Wiki page to be clickable even if it does '''not''' match the page name format by putting the name in parentheses. <code> ((Wiki/Page)) </code> ((Wiki/Page)) You can also use this format to create a "described" or "labeled" link or to add an anchor target. <code> ((Wiki/Page|Descriptive text for the link.#anchor)) </code> ((Wiki/Page|Descriptive text for the link.#anchor)) +++ Interwiki Links Interwiki links are links to pages on other Wiki sites. \ Type the {{``SiteName:PageName``}} like this: * MeatBall:RecentChanges * Advogato:proj/WikkiTikkiTavi * Wiki:WorseIsBetter +++ PHP Manual Links PHP manual links are links to the PHP manual on the php.net web site. <code> [[php strtolower]] </code> [[php strtolower]] +++ URLs Create a remote link simply by typing its URL: http://www.horde.org. If you like, enclose it in brackets to create a numbered reference \ and avoid cluttering the page; {{``[http://www.horde.org/]``}} becomes [http://www.horde.org/]. Or you can have a described-reference instead of a numbered reference: <code> [http://www.horde.org Horde] </code> [http://www.horde.org Horde] +++ On-Page Links Create an anchor on the page by {{``[[# anchorName nice anchor text]]``}} [[# anchorName nice anchor text]] and refer to it by {{``#anchorName``}} #anchorName, or {{``[#anchorName use normal link renaming]``}} [#anchorName use normal link renaming]. +++ Images You can put a picture in a page with {{``[[image foo.jpg]]``}}. You can use any file type, but most browsers only support GIF, JPEG, and PNG formats. The filename can either be a relative reference (in which case the wiki looks for a file attached to the current page - or a different wiki page if the file name is prefixed with a page name, e.g. {{``[[image SomePage:foo.jpg]]``}}), an absolute reference which begins with a slash (in which case the wiki uses it to retrieve a file relative to the web server's root), or a full, external URL. Additional attributes, such as "alt" can follow the image filename or URL like so: {{``[[image foo.jpg alt="A Foo JPEG"]]``}}. "link" is a special attribute which makes the image a link to the specified URL. ++ Application Content +++ Application Blocks Content from other Horde applications provided by portal blocks can be embedded into a page using {{[[block]]}} tags. To include Horde's moon phases block for example: <code> [[block horde/Moon phase=next hemisphere=northern]] </code> [[block horde/Moon phase=next hemisphere=northern]] +++ Application Links Links to other Horde applications is supported if those applications support API links. The Wiki itself supports such an API to link to individual wiki pages: <code> [[link Link to some other wiki page|wiki/show page=Wiki/Page]] </code> [[link Link to some other wiki page|wiki/show page=Wiki/Page]] ++ Code Blocks Create code blocks by using {{<code>...</code>}} tags (each on its own line). <code> This is an example code block! </code> To create PHP blocks that get automatically colorized when you use PHP tags, simply surround the code with {{<code type="php">...</code>}} tags (the tags themselves should each be on their own lines, and no need for the {{<?php ... ?>}} tags). <code> <code type="php"> // Set up the wiki options $options = array(); $options['view_url'] = "index.php?page="; // load the text for the requested page $text = implode('', file($page . '.wiki.txt')); // create a Wiki objext with the loaded options $wiki = new Text_Wiki($options); // transform the wiki text. echo $wiki->transform($text); </code> </code> <code type="php"> // Set up the wiki options $options = array(); $options['view_url'] = "index.php?page="; // load the text for the requested page $text = implode('', file($page . '.wiki.txt')); // create a Wiki objext with the loaded options $wiki = new Text_Wiki($options); // transform the wiki text. echo $wiki->transform($text); </code> API references can be generated using {{<function>}} tags. <code> <function> name:listUsers access:public param:string,Filter users by this string.,'USER' returns:array throws:Exception,if user backend not available. </function> </code> //Rendering of this rule is broken as of Text_Wiki 1.2.1, usage is discouraged.// ++ HTML Markup You can add native HTML markup using {{<html>...</html>}} tags. <code> <html> <div style="border:2px double blue"><strong>HTML</strong></div> </html> </code> //This rule is disabled by default.// <html> <div style="border:2px double blue"><strong>HTML</strong></div> </html> ++ Tables You can create tables using pairs of vertical bars: <code> ||~ Heading one ||~ Heading two || || cell one || cell two || |||| big ol' line || || cell four || cell five || || cell six || here's a very long cell || </code> ||~ Heading one ||~ Heading two || || cell one || cell two || |||| big ol' line || || cell four || cell five || || cell six || here's a very long cell || <code> || lines must start and end || with double vertical bars || nothing || || cells are separated by || double vertical bars || nothing || |||| you can span multiple columns by || starting each cell || || with extra cell |||| separators || |||||| but perhaps an example is the easiest way to see || </code> || lines must start and end || with double vertical bars || nothing || || cells are separated by || double vertical bars || nothing || |||| you can span multiple columns by || starting each cell || || with extra cell |||| separators || |||||| but perhaps an example is the easiest way to see ||