Notice

This page show a previous version of the article

Sandbox

Use this page to experiment with wiki markup.

Bulleted lists

Nested bulleted list with two spaces for the second level of indentation and four spaces for the fourth:

  • a
    • a.b
      • a.b.c
    • a.v
  • z

That list looks correct in the preview and correct in the final presentation.

Another list where there are two spaces for each level of indentation:

  • a
    • a.b
      • a.b.c
    • a.v
  • z

Note that that list looks messed up in the preview, but correct in the final presentation.

and one where there are four spaces for each level of indentation:

  • a
    • a.b
      • a.b.c
    • a.v
  • z

That list looks correct in both the preview and the final presentation.

Outlines

Only two levels of indentation are shown in the "How to Format Text" box, but in reality, more are available:

Third level of indentation

Fourth level of indentation

Fifth level of indentation

However, the fifth level looks smaller than body text.

Code

We need a way to present code as-is, so we want to be able to turn off wiki formatting for a block. The "code" markup (a pair of backticks) doesn't do the job.

Backticks

Code sample (note that the format differs between preview mode and final presentation):

if (a) b else c

Triple backticks

This section is "fenced off" by triple backticks (see GitHub Flavored Markdown):

if (a) b else c

but the formatting is not preserved.

Blockquote

The blockquote markup doesn't do the job either, since again the format differs between preview mode and final presentation:

if (a) b else c

XML-style blockquote tag

Here's an attempt to use an XML-style blockquote tag:

if (a) b else c

The blockquote tag disappears altogether, but does not prevent the text it surrounds from being reformatted.

Escaping characters

We need ways of escaping various characters:

Underscore

Mention a name that contains a single underscore:

a_b

It appears correctly. But mention a name that contains an underscore twice:

a_b a_b

It appears as:

ab ab

a_b

a_b a_b

where the first b and the second a are italicized.

Parenthesis

Say that I want to write this, but in a help section, so I don't want to trigger interpretation as an actual link. Here, I've included spaces to throw off interpretation, but I want to be able to accomplish that through escape sequences instead.

[ t e x t ] ( h t t p : / / example . com )

[text](http://example.com)

Bookmarklet code

First bookmarklet test (which succeeds in both preview and presentation modes):

test

Second bookmarklet test (which succeeds only in preview mode):

<a href="javascript:var%20u%20=%20%22%22;var%20e=window.prompt%28%22Enter%20URL%20or%20number%20of%22+%22%20sentence%20to%20link%20to%20this%20one%22,%22%22%29;if%28e!=null%29{var%20r=/%28http://%5B^/%5D+/%5Ba-z%5D{3}/%29?%28sentences/show/%29?%28%5B1-9%5D%5B0-9%5D%29%28#.%29?/;var%20em=e.match%28r%29;if%28em!=null%29{var%20h=location.href;var%20hm=h.match%28r%29;u=hm%5B1%5D+%22links/add/%22+hm%5B3%5D+%22/%22+em%5B3%5D;location.href=u;}else{alert%28%22Invalid%20input.%22%29};}">test 2a</a>

Third bookmarklet test (which succeeds only in preview mode; in presentation mode it points to http://en.wiki.tatoeba.org/articles/show/sandbox):

test 2

javascript:var%20u%20=%20%22%22;var%20e=window.prompt%28%22Enter%20URL%20or%20number%20of%22+%22%20sentence%20to%20link%20to%20this%20one%22,%22%22%29;if%28e!=null%29{var%20r=/%28http:\/\/%5B^\/%5D+\/%5Ba-z%5D{3}\/%29?%28sentences\/show\/%29?%28%5B1-9%5D%5B0-9%5D%29%28#.%29?/;var%20em=e.match%28r%29;if%28em!=null%29{var%20h=location.href;var%20hm=h.match%28r%29;u=hm%5B1%5D+%22links/add/%22+hm%5B3%5D+%22/%22+em%5B3%5D;location.href=u;}else{alert%28%22Invalid%20input.%22%29};}

Fourth bookmarklet test (which fails in both preview mode and presentation mode; in presentation mode it points to http://en.wiki.tatoeba.org/articles/show/sandbox):

test 3

javascript:var%20u%20=%20"";var%20e=window.prompt("Enter%20URL%20or%20number%20of" +"%20sentence%20to%20link%20to%20this%20one","");if(e!=null){var%20r=/(http:\/\/[^\/]+\/[a-z]{3}\/)?(sentences\/show\/)?([1-9][0-9])(#.)?/;var%20em=e.match(r);if(em!=null){var%20h=location.href;var%20hm=h.match(r);u=hm1+"links/add/"+hm3+"/"+em3;location.href=u;}else{alert("Invalid%20input.")};}