Babycode guide

What is babycode?

You may be familiar with BBCode, a loosely related family of markup languages popular on forums. Babycode is another, simplified, dialect of those languages. It is a way of formatting text by enclosing parts of it in special tags.

Text formatting tags

  • To make some text bold, enclose it in [b][/b]:
    [b]Hello World[/b]
    Will become
    Hello World
  • To italicize text, enclose it in [i][/i]:
    [i]Hello World[/i]
    Will become
    Hello World
  • To make some text strikethrough, enclose it in [s][/s]:
    [s]Hello World[/s]
    Will become
    Hello World
  • To underline some text, enclose it in [u][/u]:
    [u]Hello World[/u]
    Will become
    Hello World
  • To make some text big, enclose it in [big][/big]:
    [big]Hello World[/big]
    Will become
    Hello World
  • Similarly, you can make text small with [small][/small]:
    [small]Hello World[/small]
    Will become
    Hello World
  • You can change the text color by using [color][/color]:
    [color=red]Red text[/color]
    [color=white]White text[/color]
    [color=#3b08f0]Blueish text[/color]
    Will become
    Red text
    White text
    Blueish text
  • You can center text by enclosing it in [center][/center]:
    [center]Hello World[/center]
    Will become
    Hello World
  • You can right-align text by enclosing it in [right][/right]:
    [right]Hello World[/right]
    Will become
    Hello World
  • Note: the center and right tags will break the paragraph. See Paragraph rules for more details.

Emoji

There are a few emoji in the style of old forum emotes:

Short code Emoji result
:angry: angry
:(: frown
:D: grin
:imp: imp
:angryimp: impangry
:impangry: impangry
:lobster: lobster
:|: neutral
:pensive: pensive
:scissors: scissors
:): smile
:smiletear: smiletear
:crytear: smiletear
:,: sob
:T: sob
:cry: sob
:sob: sob
:o: surprised
:O: surprised
:hmm: think
:think: think
:thinking: think
:P: tongue
:p: tongue
:weary: weary
:;: wink
:wink: wink

Special thanks to the Forumoji project and its contributors for these graphics.

Paragraph rules

Line breaks in babycode work like Markdown: to start a new paragraph, use two line breaks:

paragraph 1

paragraph 2
Will produce:
paragraph 1

paragraph 2

To break a line without starting a new paragraph, end a line with two spaces:

paragraph 1  
still paragraph 1
That will produce:
paragraph 1
still paragraph 1

Additionally, the following tags will break into a new paragraph:

  • [code] (code block, not inline);
  • [img];
  • [center];
  • [right];
  • [ul] and [ol];
  • [quote].

Loose links (starting with http:// or https://) will automatically get converted to clickable links. To add a label to a link, use
[url=https://example.com]Link label[/url]:
Link label

Attaching an image

To add an image to your post, use the [img] tag:
[img=https://forum.poto.cafe/avatars/default.webp]the Python logo with a cowboy hat[/img]

the Python logo with a cowboy hat

Text inside the tag becomes the alt text. The attribute is the image URL. The text inside the tag will become the image's alt text.

Images will always break up a paragraph and will get scaled down to a maximum of 400px. However, consecutive image tags will try to stay in one line, wrapping if necessary. Break the paragraph if you wish to keep images on their own paragraph.

Multiple images attached to a post can be clicked to open a dialog to view them.

Adding code blocks

There are two kinds of code blocks recognized by babycode: inline and block. Inline code blocks do not break a paragraph. They can be added with [code]your code here[/code]. As long as there are no line breaks inside the code block, it is considered inline. If there are any, it will produce this:

func _ready() -> void:
	print("hello world!")

Inline code tags look like this: Inline code

Babycodes are not parsed inside code blocks.

Quoting

Text enclosed within [quote][/quote] will look like a quote:

A man provided with paper, pencil, and rubber, and subject to strict discipline, is in effect a universal machine.

Lists

There are two kinds of lists, ordered (1, 2, 3, ...) and unordered (bullet points). Ordered lists are made with [ol][/ol] tags, and unordered with [ul][/ul]. Every new paragraph according to the usual paragraph rules will create a new list item. For example:

[ul]
item 1

item 2

item 3  
still item 3 (break line without inserting a new item by using two spaces at the end of a line)
[/ul]
Will produce the following list:
  • item 1
  • item 2
  • item 3
    still item 3 (break line without inserting a new item by using two spaces at the end of a line)

Spoilers

You can make a section collapsible by using the [spoiler] tag:

[spoiler=Major Metal Gear Spoilers]Snake dies[/spoiler]
Will produce: All other tags are supported inside spoilers.

Table of contents