Esolang:Help

This page is split into two parts: how to achieve certain effects, and style guidelines regarding use of those effects.

Where to test things out
If you wish to experiment with editing without changing an actual article, you may do so in the Sandbox.

Text formatting and organization
Use two apostrophes for italics: fun produces fun.

Use three apostrophes for bold: Brainfuck produces Brainfuck. This should only be used for titles of pages, the first time they appear in the article.

Use two equals signs for sections: ==Computational class==. Three for subsections: ===Turing equivalence===.

Internal links
Use two brackets for links within the wiki: Brainfuck produces Brainfuck.

We use the singular form for all nouns for article names (except in the Esolang: namespace). MediaWiki is smart, so this is pretty easy: just do esoteric programming languages and you get esoteric programming languages. Notice how the s is outside the brackets, but it appears to be within the link anyway.

Sometimes you have to be more creative, like this: Such languages are similar to cellular automata, which produces: Such languages are similar to cellular automata. Article names are case sensitive (so don't link to "BrainFuck"), but MediaWiki automatically uppercases the first letter for you.

Code
For textual code snippets, start lines with spaces. They will magically get set off like this:

[-]    empty cell >+++++ set next cell to 5 [-<++>] multiply by 2 <.     print a newline

You can click on "edit" for this page if any of the above is unclear.

For those who use wikitables, our wiki has a special  class that makes preformatted code (as above, or using explicit   tags) look nicer in table cells. Start the table with {| class="wikitable plainpres"

Some esolangs don't allow easy formatting with whitespace, and so naturally give programs that consist of one huge line. Or you might just think having no whitespace fits the language's style better. In any case, we have a  class that is intended to allow such code to be nicely wrapped with straight margins. Use e.g. as follows: ...your code goes here...

Categories
You add something to a category by linking to it, usually at the end of a page. So if you want to put an article in the "Low-level" category, add to the end of it.

If you want to provide a normal link to a category page you must use an additional colon in front of the category. Category:Low-level will produce Category:Low-level.

Pages about specific languages should be added both to Category:Languages (as above) and to the Language_list page (by editing the latter).

See also Categorization.

Lists
Finally, bulleted lists are made by starting successive lines with asterisks. For example, "* One thing" followed by "* Another thing" then "* The last thing" produces this:


 * One thing
 * Another thing
 * The last thing

For numbered lists, do the same, but start the line with an octothorpe (#). For example, the three most commercially successful esoteric programming languages are:


 * 1) Perl
 * 2) Biota
 * 3) Brainfuck

Article names with forbidden characters
Some characters are not allowed in article names. This is typically characters that aren't allowed in URLs, like ?, [ and ]. For instance, the SMITH# article is named SMITH sharp. Such articles should include the wrongtitle template at the top of the page.

Here's the code for adding a wrongtitle template (in the case of SMITH#):

This will look like this on the page:

For articles whose name should be lowercase, put at the top to have their title display correctly.

Signing your posts on talk pages
You can sign your posts by typing ~, which automatically substitutes in your username, a link to your userpage, and the time and date. Always do this when commenting on talk pages. Only do this when commenting on talk pages.

You can also use the signature button above the editing box, which inserts " --~ ".

Redirecting
Sometimes it is useful to have a page that automatically redirects the user to another page. For example, the articles Brainf*** and BF both redirect to Brainfuck.

To make an automatic redirect, insert the following code at the top of the page to be redirected:

#REDIRECT Name of page to redirect to

Emphasis
Only use bold for the title of an article, and only the first time it appears. Important terms can be set off with italics the first time they appear (unless they're important enough to have a separate article, in which case just link to it).

Sections
Try to use subsections sparingly in general (this help page notwithstanding).

Only capitalize the first word in a section's name. "Computational class", not "Computational Class".

Article names
Most articles that are named after nouns should be in the singular form. So we have an article called cellular automaton that discusses cellular automata, for instance.

Linking to user pages
Generally speaking, don't link to user pages, but if you have a good reason to do so, make it obvious by leaving the "User:" part of the link visible (e.g. User:Graue). See Authors for more information.

Categorization
Categorization has information about the existing categories. Please don't make a new category without discussing it at Esolang talk:Categorization.

External resources

 * Wikipedia's guide to editing