(anonymous guest) (logged out)

Copyright (C) by the contributors. Some rights reserved, license BY-SA.

Sponsored by the Wiki Symposium and the Nuveon GmbH.

 

Add new attachment

Only authorized users are allowed to upload new attachments.

This page (revision-68) was last changed on 26-Sep-2008 22:52 by 134.65.2.117  

This page was created on 20-Feb-2007 12:32 by ChuckSmith

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 5 changed one line
!!Superscript
== Superscript
At line 18 changed one line
!!Subscript
== Subscript
At line 33 changed one line
!!Underline
== Underline
At line 43 changed one line
!!Alternate Link Syntax
== Alternate Link Syntax
At line 63 changed one line
!!Monospace
== Monospace
At line 75 added 93 lines
==Escape Character
%%commentbox
Users should be able to escape markup characters (or all non-alphanumeric characters) with a special character. It's often faster to type and more readable than using nowiki (3+3 curly braces). In order to allow spaces in front of lists, which is a quite common practice in wiki engines, it should be a escape character other than space. This way, stars, slashes and other markup characters, when found in the original text, can be easily escaped, to be rendered as themselves. [[Escape Character Reasoning|Reasoning]]
%%
It is often troublesome to use the nowiki in-line to display symbols of wiki syntax, so it would be useful to have an escape character that could be put before wiki syntax to prevent it from being interpreted. The tilde was chosen not to conflict with line breaks and because it is a very infrequently used character. It is not generally easy to type, but it will also not need to be used often, so in this sense it is also suitable.
The escape character only escapes in certain combinations. This means that e.g. the tilde in this use case is displayed as tilde and not escaped. It would certainly **never** escape if followed by a space or an alphanumeric character.
{{{
http://stud.hs-heilbronn.de/~someone
}}}
Escape characters only trigger if you use it in combination with the occurrence of a character that has special meaning in creole and would otherwise be rendered as markup. For example if you use "tilde + equal sign as first characters in a line" it will escape the equal sign and display it as such because otherwise it would be rendered as heading.
{{{
=Heading
~=Line starting with equal sign, this displays a normal tilde: ~
}}}
If an escape character is only used in certain combinations we have a minimum of collisions with existing markup. For example if an wiki uses tilde as normal markup, it would not collide with e.g.
{{{
~=This is a heading
~this is subscript in certain wikis~
~~=This is a sentence with a tilde and an equal sign at the beginning... (tilde escapes itself)
}}}
Here's a complete list that would cause the escape character (e.g. tilde) to trigger escaping of the following character combinations. This can be extended as need be. Note also that an escape character can be escaped by putting a space after it, since a space cannot be escaped.
{{{
Escapes Markup Combination Constraint Example:
============== ========================== =========
Bold Anywhere ~**
Italics Anywhere ~//
Unordered Lists Hyphen, first chars in line ~-
Ordered Lists First chars in line ~#
Headings Equal signs, first chars in line ~=
Links Open Anywhere ~[[
Inside Links Within Links [[A pipe ~| is used within links]]
Links Close Anywhere ~]]
Line Breaks Anywhere ~\\
Horizontal Line First chars in line ~----
Image Open Anywhere ~{{
Image Close Anywhere ~}}
Table Open First chars in line ~| this is | not a table
Inside Tables Pipe used within a table cell | x~|y |
Escaping Escape Anywhere ~~
Escaping Escape Anywhere ~<space>
Nowiki Open First chars in line ~{{{
Nowiki Close First chars in line ~~}}}
}}}
So, for example, this markup:
{{{
{{{
int main(int argc, char *argv[]) {
if argc>0 {
if argc<=1 {
--argc;
~}}}
}}}
will produce this result:
{{{
<pre>
int main(int argc, char *argv[]) {
if argc>0 {
if argc<=1 {
--argc;
~}}}
</pre>
}}}
----
Creole:
{{{
Some examples of markup are: {{{** <i>this</i> ** ~}}}
}}}
Recommended XHTML:
{{{
Some examples of markup are: <tt>** <i>this</i> **</tt>
}}}
Sample output:
Some examples of markup are: {{{** <i>this</i> **}}}
Version Date Modified Size Author Changes ... Change note
68 26-Sep-2008 22:52 4.767 kB 134.65.2.117 to previous
67 29-Feb-2008 16:15 4.767 kB YvesPiguet to previous | to last Discussion on talk page plz
66 29-Feb-2008 16:12 4.755 kB YvesPiguet to previous | to last Mv discussion to Talk.Creole Additions
65 23-Feb-2008 15:10 6.211 kB WeakishJiang to previous | to last inline and block quote
64 23-Feb-2008 13:03 5.736 kB WeakishJiang to previous | to last one term with multi-definitions in dl
63 22-Feb-2008 15:04 5.55 kB WeakishJiang to previous | to last
62 22-Feb-2008 15:03 5.548 kB WeakishJiang to previous | to last I suggest that descriptions (or definitions) //must// begin on a new line beginn
61 22-Feb-2008 14:20 5.133 kB WeakishJiang to previous | to last we should consider output HTML more carefully.
« This page (revision-68) was last changed on 26-Sep-2008 22:52 by 134.65.2.117