An open sandbox for people to test out Imzy.
An Introduction to Imzy's flavour of Markdown
Originally posted to /imzy here.
Also note that you can view the markdown of any post or comment, by clicking the three dots and selecting "View Markdown"
For those of you who don't know, we use a system called Markdown to allow for rich formatting without having to write the HTML yourself. Markdown is supported in:
- Posts
- Comments
- Community
- About
- Long description
- Leader chat
If you are using the desktop website, posts will have the rich editor enabled, and can be enabled for comments by clicking on the
button in the lower left.
@Saicred made an awesome post a few months back, but we wanted to take the time to make The Ultimate post, given that we can put our noses in our code to confirm what can, and can not be done.
This will be quite the lengthy post, and will be referenced in the FAQ, so bear with me. You should be able to search the page for what you're looking for to find out how to do it.
Markdown Basics 1
For the purpose of examples, as we can't easily show white space on the web, I'll pretend that the examples have reveal formatting enabled. For those of you not familiar with the codes that are used, they are:
·means a space.¶means hitting<enter>on your keyboard.
Paragraphs 2
Markdown requires a blank line between paragraphs. A single <enter> is treated as a space, and will cause the paragraphs to run together.
Example: These two lines will run together
¶
This is the first paragraph.¶
This is the second, but it will run together in one line.¶
¶
Becomes:
This is the first paragraph. This is the second, but it will run together in one line.
Example: These two lines will be separate paragraphs
¶
This is the first paragraph.¶
¶
This is the second, but it will NOT run together in one line.¶
¶
Becomes:
This is the first paragraph.
This is the second, but it will NOT run together in one line.
Line breaks 3
If you want to have a line break, but not a paragraph break, you can add two spaces to the end of the line.
Example
¶
This is the first paragraph.··¶
This is the second, but it will run NOT together in one line, nor will it have a paragraph break between them.¶
¶
Becomes:
This is the first paragraph.
This is the second, but it will NOT run together in one line, nor will it have a paragraph break between them.
Headings 4
You can do headings in by having a blank line, then the next line starting with a # symbol, space, then the words you want as the heading. Repeating the # will make nested headings, up to six levels deep.
Examples
¶
# Level 1 Heading¶
## Level 2 Heading¶
### Level 3 Heading¶
¶
Becomes:
Level 1 Heading
Level 2 Heading
Level 3 Heading
Lists 5
Lists can be created by creating a blank line, an either ordered or unordered list, followed by another blank line.
- Unordered lists can use
-,+, or*as the indicator of a list item. - Ordered lists case use
1.,a.,i.as the indicator of a list item, and must be consistent throughout the list. - For both ordered and unordered lists, you can nest list items by starting the line with three spaces for each level of nesting.
Example: Unordered lists
¶
- This line started with a dash.¶
+ This line started with a plus sign.¶
* This line started with an asterisk.¶
···+ This is a nested item.¶
······+ This is a further nested item.¶
¶
Becomes:
- This line started with a dash.
- This line started with a plus sign.
- This line started with an asterisk.
- This is a nested item.
- This is a further nested item.
- This is a nested item.
Example: Ordered lists
¶
1. Point 1¶
···1. This is a nested item.¶
······1. This is a further nested item.¶
······2. This is a further nested item.¶
···2. This is a nested item.¶
···3. This is a nested item.¶
2. Point 2.¶
2. Point 3.¶
4. Point 4.¶
¶
Becomes:
- Point 1.
- This is a nested item.
- This is a further nested item.
- This is a further nested item.
- This is a nested item.
- This is a nested item.
- This is a nested item.
- Point 2.
- Point 3.
- Point 4.
Those eagle-eyed viewers amongst you would have noticed that there were two 2.'s in that list. Markdown is handy in that it does not make you manage the numbers yourself, so you can rearrange your items, without manually updating the numbers.
Example: Ordered lists that aren't rendered as lists.
Sometimes, like when quoting someone else, you might want the 3. but due to the helpfulness of Markdown, it continually renders it to a 1. as a list.
¶
3\. Point 3¶
¶
Something that is not a part of the list.¶
¶
2\. Point 2¶
¶
Becomes:
3. Point 3.
Something that is not a part of the list.
2. Point 2.
Quotes, also known as blockquotes 6
To create a block quote, start with a blank line, then start the next line with >, followed by the text you want to quote, then another blank line. Much like lists, you can nest blockquotes.
Examples
¶
>·Nested one level deep.··¶
>>·Nested two levels deep.··¶
>>>·Nested three levels deep.··¶
¶
>>·Nested two levels deep, again.··¶
¶
>·Nested one level deep, again.··¶
Becomes:
Nested one level deep.
Nested two levels deep.
Nested three levels deep.
Nested two levels deep, again.
Nested one level deep, again.
Code Blocks, or monospaced font 7
To create blocks with monospaced font, Markdown uses backticks `. Text within a code block with not wrap naturally, so you can end up with very long lines, which require a horizontal scroll.
Note: Imzy does not currently have support for syntax highlighting for code blocks.
Example: Monospaced text within a paragraph.
This is a paragraph, that contains a single word that is `monospaced`. The `monospacing can span multiple words`.¶
Becomes:
This is a paragraph, that contains a single word that is monospaced. The monospacing can span multiple words.
Example: Code block surrounded by three ```
Note: I can not for the life of me figure out how to escape the ``` within a code block so it shows up, so ignore the . at the start of the line.
¶
.```¶
Line 1, wrapped in backticks¶
Line 2, wrapped in backticks¶
Line 3, wrapped in backticks¶
Line 4, wrapped in backticks¶
Line 5, wrapped in backticks¶
.```¶
¶
Becomes:
Line 1, wrapped in backticks
Line 2, wrapped in backticks
Line 3, wrapped in backticks
Line 4, wrapped in backticks
Line 5, wrapped in backticks
Example: Code block starting each line with four spaces
¶
····Line 1, each line starting with four spaces¶
····Line 2, each line starting with four spaces¶
····Line 3, each line starting with four spaces¶
····Line 4, each line starting with four spaces¶
····Line 5, each line starting with four spaces¶
¶
Becomes:
Line 1, each line starting with four spaces
Line 2, each line starting with four spaces
Line 3, each line starting with four spaces
Line 4, each line starting with four spaces
Line 5, each line starting with four spaces
Bold, Italics, and Strikethrough 8
As stated earlier, Markdown allows for some basic formatting. You can make text bold, italicized, or add a strikethrough to it.
- To make text bold, surround the text with two
*characters. - To make text italicized, surround the text with one
*or_character. - To make text strikethrough, surround the text with two
~characters.
Note: Some implementations support superscript through the use of the ^ character, Imzy's does not at the time of this writing.
Examples
This text will be **bold**.¶
This text will be *italicized* as will _this_.¶
This text will be ~~strikethrough~~.¶
This text will be ~~**all *three* together**~~.¶
Becomes:
This text will be bold.
This text will be italicized as will this.
This text will be strikethrough.
This text will be all three together.
Links 9
Links can be created either by putting in the raw URL, or using the syntax [words to make a link](https://some-destination.url).
Example
This link with auto link: https://www.imzy.com/faq.¶
¶
This link will have the word [FAQ](https://www.imzy.com/faq) as the link.¶
¶
This link will have the word [FAQ](https://www.imzy.com/faq "Have you read the FAQ?") as the link, and "Have you read the FAQ?" as the hover (or alt) text.¶
Becomes:
This link with auto link: https://www.imzy.com/faq.
This link will have the word FAQ as the link.
This link will have the word FAQ as the link, and "Have you read the FAQ?" as the hover (or alt) text.
Dividing line, or horizontal rule 10
A horizontal rule can be added by having a blank line, three -, or *, followed by another blank line.
Example
¶
---¶
¶
and¶
¶
***¶
¶
Becomes:
and
Escaping Markdown's special characters 11
In the case that you want to have one of the characters in your text, but not have it trigger into Markdown, you can precede the character with a \\.
Example
\*This\* will be surrounded by asterisks, but \*\*NOT\*\* be italicized or bolded.¶
Becomes:
*This* will be surrounded by asterisks, but **NOT** be italicized or bolded.
Markdown Extensions 12
These are things that are not core to Markdown, but the package that we use to take Markdown and turn it into HTML supports.
Inline Images 13
Inline images can be added using the syntax .
Note: If you link to a page, not directly to an image, the image will render as a broken link, like this .
Example
¶
Becomes:
Tables 14
Tables can be created using syntax that I can't easily put into words, so please see the example!
Example
some | header | labels¶
:---|:---:|---:¶
Left-justified | center-justified | right-justified¶
a | b | c¶
d | e | f¶
Becomes:
| some | header | labels |
|---|---|---|
| Left-justified | center-justified | right-justified |
| a | b | c |
| d | e | f |
Footers 15
Footers can be added by using the syntax [^footer name] where you want to add the note, and repeated at the end of the text for the footer reference. This will add a superscript number which can be used as a permalink.
Example
This is some text which needs a footer noted[^footer example]. It's super important that it be annotated. You will find the footnote at the end of this post.¶
¶
[^footer example]: This is the footer text from the footer example.¶
Becomes:
This is some text which needs a footer noted16. It's super important that it be annotated. You will find the footnote at the end of this post.
Imzy's Custom Markdown 17
Just incase all of the above wasn't enough, we here at Imzy added a few extra parts into the mix.
Username mentions 18
Using the syntax @username, we will create a link to the user's profile page, and notify them they are being talked about.
Example
In yet another case that our extentions to Markdown and examples not playing along, pretend there is no space after the @. It really is as simple as typing @imzy when you want to link to a user.
Yes, @ Lesley and @ weffey are the same person.
Becomes:
Yes, @Lesley and @weffey are the same person.
Community mentions 19
Using the syntax /community_url, we will create a link to the community's home page, and notify the leaders that their community is being talked about.
Example
In yet another case that our extentions to Markdown and examples not playing along, pretend there is no space after the /. It really is as simple as typing /imzy when you want to link to us.
/ Imzy and / leaders are two great resources you should definitely check out.
Becomes:
/Imzy and /leaders are two great resources you should definitely check out.
SPOILERS! 20
The ability to have discussions, without spoiling content for those not yet in the know, is important to us, so we've extended the blockquote syntax for spoilers. Instead of starting the line with >, add an exclamation point, like this >!.
Example
¶
>!·This **IS** a spoiler. Don't tell anyone.··¶
>!·Probably a bad example considering the example has it above.¶
¶
Becomes:
This IS a spoiler. Don't tell anyone.
Probably a bad example considering the example has it above.
Plugins 21
The first step towards our developer platform (check out /imzy_developers for more information as it grows), are what we have been calling "plugins". Leaders can enable, and disable, plugins in their communities. Plugins can be invoked by having a blank line, followed by [/plugin_name keywords], blank line. The first plugin we built is for Giphy, and you may have seen used around the site already.
Example
This is another case where our extensions and Markdown don't get along perfectly, so pretend there is a not a space between the [/ and giphy, and again at the end for party ].
¶
[/ giphy it's a party ]¶
¶
Becomes:
[/giphy it's a party]
Emoji 22
If you are using a keyboard that does not have built in emoji support, we can help! You can use the :name:, and we'll convert it! You can find a complete list here.
Example
The Markdown and the Emoji conflict with one another, so I don't have a good way to example in a perfect way, so pretend the space after the colon is not there.
¶
: cow:¶
¶
Becomes:
🐮
Quick reply (desktop web only) 23
This isn't really "Markdown" so much as quick tip: When you're in a comment box, you can press <control> + <enter> (Windows) or <cmd> + <enter> (Mac), and save yourself the mouse movement and click.
You can see the raw text for this post here.
That's it! Below you'll find a table of contents of sorts, using the footer functionality, click, which allows for permalinks to each section.
An overview of standard Markdown.↩
How to make paragraph breaks.↩
How to make line breaks, without paragraph spacing..↩
How to make headings.↩
How to make lists, both ordered and unordered.↩
How to make blockquotes.↩
How to make code blocks.↩
Such as bold, italics, and strikethrough.↩
How to make links.↩
How to make a dividing line.↩
How to escape Markdown’s special characters.↩
An overview of Markdown Imzy's library adds, but are not native to Markdown.↩
How to put images in your text.↩
How to add tables.↩
An overview of the Imzy specific overrides to Markdown.↩
How to mention other users, without manually adding the link yourself.↩
How to mention communities, without manually adding the link yourself.↩
How to add spoilers.↩
How to add plugins.↩
How to add emoji, when your keyboard doesn't support it.↩
Press
<control> + <enter>(Windows) or<cmd> + <enter>(Mac) when in a comment box, and it'll save the comment.↩






test
Oh look, I'm anon. :D
Could be two typos here:
where extensions is the usual spelling, and the sentence is more readily understood by using 'of' instead of 'that'.
with this result: In yet another case of our extensions to Markdown and examples not playing along