Converts Markdown to Steam's markup.
[url=//example.com]text[/url]
, images don't have an equivalent, so the ![image name](//example.com/image.png)
syntax might be disabled. Tables in Steam do not support alignment, but do support the noborder
and equalcells
attributes, so the table syntax may look similar to Markdown, but serve a different purpose.
Go to http://steamdown.vercel.app/
import parse from 'steamdown';
console.log(parse(text));
# read from STDIN
steamdown -
# or
steamdown < file.md
# read from file
steamdown file.md
View the input spec and output spec for an example.
Images are not supported. They render to links. For example,
![example](/image.png)
becomes [url=/image.png]example[/url]
.
Wrapping text with __
does not make it bold, but makes it underlined
(__underlined text__
).
Wrapping text with !!!
makes it spoiler text (!!!hidden text!!!
).
Quotes can have authors by adding (author)
after text preceded with a >
.
For this reason, continuing a quote on a newline without preceding each line
with a >
is considered undocumented behavior.
>this is some text that I'm
>responding to.
(some person)
Steam's [noparse]
tag instructs Steam to render text like [b]this[/b]
literally, without styling. In addition to rendering a [noparse]
block,
steamdown's literal text rule will also prevent parsing of the source text.
For example, *this*
would not be converted to [i]this[/i]
.
Text can be made literal by wrapping it with {{{
and }}}
({{{[b]The bold tag is rendered[/b]}}}
).
Any lines between {{{
and }}}
will be rendered without
any parsing.
{{{
[b] is bold
[u] is underline
}}}
Steam supports tables with no borders ([table noborder=1]
) and equal-width cells
([table equalcells=1]
). These are not currently supported. Syntax proposals welcome!