---
language: markdown
contributors:
- ["Dan Turkel", "http://danturkel.com/"]
- ["Jacob Ward", "http://github.com/JacobCWard/"]
filename: markdown.md
---
Markdown was created by John Gruber in 2004. It's meant to be an easy to read and write syntax which converts easily to HTML (and now many other formats as well).
Markdown is a superset of HTML, so any HTML file is valid Markdown, that
means we can use HTML elements in Markdown, such as the comment element, and
they won't be affected by a markdown parser. However, if you create an HTML
element in your markdown file, you cannot use markdown syntax within that
element's contents.
Markdown also varies in implementation from one parser to a next. This
guide will attempt to clarify when features are universal or when they are
specific to a certain parser.
- [Headings](#headings)
- [Simple Text Styles](#simple-text-styles)
## Headings
You can create HTML elements `
` through `` easily by prepending the
text you want to be in that element by a number of hashes (#).
```markdown
# This is an
## This is an
### This is an
#### This is an
##### This is an
###### This is an
```
Markdown also provides us with two alternative ways of indicating h1 and h2.
```markdown
This is an h1
=============
This is an h2
-------------
```
## Simple text styles
Text can be easily styled as italic or bold using markdown.
```markdown
*This text is in italics.*
_And so is this text._
**This text is in bold.**
__And so is this text.__
***This text is in both.***
**_As is this!_**
*__And this!__*
```
In Github Flavored Markdown, which is used to render markdown files on
Github, we also have strikethrough:
```markdown
~~This text is rendered with strikethrough.~~
This is a paragraph. I'm typing in a paragraph isn't this fun?
Now I'm in paragraph 2.
I'm still in paragraph 2 too!
I'm in paragraph three!
I end with two spaces (highlight me to see them).
There's a
above me!
> This is a block quote. You can either
> manually wrap your lines and put a `>` before every line or you can let your lines get really long and wrap on their own.
> It doesn't make a difference so long as they start with a `>`.
> You can also use more than one level
>> of indentation?
> How neat is that?
```
```markdown
* Item
* Item
* Another item
or
+ Item
+ Item
+ One more item
or
- Item
- Item
- One last item
1. Item one
2. Item two
3. Item three
1. Item one
1. Item two
1. Item three
1. Item one
2. Item two
3. Item three
* Sub-item
* Sub-item
4. Item four
Boxes below without the 'x' are unchecked HTML checkboxes.
- [ ] First task to complete.
- [ ] Second task that needs done
This checkbox below will be a checked HTML checkbox.
- [x] This task has been completed
This is code
So is this
my_array.each do |item|
puts item
end
John didn't even know what the `go_to()` function did!
\`\`\`ruby
def foobar
puts "Hello world!"
end
\`\`\`
***
---
- - -
****************
[Click me!](http://test.com/)
[Click me!](http://test.com/ "Link to Test.com")
[Go to music](/music/).
[Click this link][link1] for more info about it!
[Also check out this link][foobar] if you want to.
[link1]: http://test.com/ "Cool!"
[foobar]: http://foobar.biz/ "Alright!"
[This][] is a link.
[this]: http://thisisalink.com/
![This is the alt-attribute for my image](http://imgur.com/myimage.jpg "An optional title")
![This is the alt-attribute.][myimage]
[myimage]: relative/urls/cool/image.jpg "if you need a title, it's here"
is equivalent to
[http://testwebsite.com/](http://testwebsite.com/)
I want to type *this text surrounded by asterisks* but I don't want it to be
in italics, so I do this: \*this text surrounded by asterisks\*.
Your computer crashed? Try sending a
Ctrl+Alt+Del
| Col1 | Col2 | Col3 |
| :----------- | :------: | ------------: |
| Left-aligned | Centered | Right-aligned |
| blah | blah | blah |
Col 1 | Col2 | Col3
:-- | :-: | --:
Ugh this is so ugly | make it | stop
```
For more info, check out John Gruber's official post of syntax [here](http://daringfireball.net/projects/markdown/syntax) and Adam Pritchard's great cheatsheet [here](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet).