Packages
ex_doc
0.36.0
0.40.3
0.40.2
0.40.1
0.40.0
0.39.3
0.39.2
0.39.1
0.39.0
0.38.4
0.38.3
0.38.2
0.38.1
0.38.0
0.37.3
0.37.2
0.37.1
0.37.0
0.37.0-rc.2
0.37.0-rc.1
0.37.0-rc.0
0.36.1
0.36.0
0.35.1
0.35.0
0.34.2
0.34.1
0.34.0
0.33.0
0.32.2
0.32.1
0.32.0
0.31.2
0.31.1
0.31.0
0.30.9
0.30.8
0.30.7
0.30.6
0.30.5
0.30.4
0.30.3
0.30.2
0.30.1
0.30.0
0.29.4
0.29.3
0.29.2
0.29.1
0.29.0
0.28.6
0.28.5
0.28.4
0.28.3
0.28.2
0.28.1
0.28.0
0.27.3
0.27.2
0.27.1
0.27.0
0.26.0
0.25.5
0.25.4
0.25.3
0.25.2
0.25.1
0.25.0
0.24.2
0.24.1
0.24.0
0.23.0
0.22.6
0.22.5
0.22.4
0.22.2
0.22.1
0.22.0
0.21.3
0.21.2
0.21.1
0.21.0
0.20.2
0.20.1
0.20.0
0.19.3
0.19.2
0.19.1
0.19.0
0.19.0-rc
0.18.4
0.18.3
0.18.2
0.18.1
0.18.0
retired
0.17.1
0.17.0
retired
0.16.4
0.16.3
0.16.2
0.16.1
0.16.0
0.15.1
0.15.0
0.14.5
0.14.4
0.14.3
0.14.2
0.14.1
0.14.0
0.13.2
0.13.1
0.13.0
0.12.0
0.11.5
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.0
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.3
0.7.2
0.7.1
0.7.0
0.6.2
0.6.1
0.6.0
0.5.2
0.5.1
ExDoc is a documentation generation tool for Elixir
Current section
Files
Jump to
Current section
Files
Cheatsheet.cheatmd
# Cheatsheet Example
Cheatsheets are Markdown files with the `.cheatmd` extension which support a limited range of elements and formatting. Refer to the source of this document to see the relevant Markdown.
## H2 title
{: .col-2}
### H3 title
#### H4 title
A paragraph.
### Code
```elixir
# hello.exs
defmodule Greeter do
def greet(name) do
message = "Hello, " <> name <> "!"
IO.puts message
end
end
Greeter.greet("world")
```
### Paragraphs
Paragraphs are also supported and can quote `code`.
Paragraphs are visually distinct from one another.
### Lists
- Element 1
- Element 2
- `piece of code`
### Table
#### Date (H4 header)
| Example | Output |
| --- | --- |
| `%m/%d/%Y` | `06/05/2013` |
| `%A, %B %e, %Y` | `Sunday, June 5, 2013` |
| `%b %e %a` | `Jun 5 Sun` |
## Variants
{: .col-2}
### Adding variants
```
## H2
{: .col-2}
### H3
{: .list-6}
* example 1
* example 2
```
Variants change presentation via Markdown's inline attribute notation.
### Header variants
#### H2
| `.col-2` | two-columns |
| `.col-3` | three-columns |
| `.col-2-left` | two-columns (1/3 - 2/3) |
#### H3
| `.list-4` | four-columns for lists |
| `.list-6` | six-columns for lists |
## Code
{: .col-3}
### Code with headings
#### index.ex
```
Path.join(["~", "foo"])
"~/foo"
```
#### other.ex
```
Path.join(["foo"])
"foo"
```
Code blocks can have headings.
### Long lines
```elixir
defmodule MyTracer do
def trace({:remote_function, _meta, module, name, arity}, env) do
IO.puts "#{env.file}:#{env.line} #{inspect(module)}.#{name}/#{arity}"
:ok
end
def trace(_event, _env) do
:ok
end
end
```
Long lines show scrollbars.
### Line wrapping
```elixir
defmodule MyTracer do
def trace({:remote_function, _meta, module, name, arity}, env) do
IO.puts "#{env.file}:#{env.line} #{inspect(module)}.#{name}/#{arity}"
:ok
end
def trace(_event, _env) do
:ok
end
end
```
{: .wrap}
Add `wrap` to wrap long lines.
## Lists
{: .col-2}
### Bullet lists
- This is
- a list
- with a few items
### Ordered lists
1. First
2. Second
3. Third
An extra paragraph after the list.
### With headings and code links
#### Part 1
- `is_atom/1`
- `is_binary/1`
- `is_number/1`
#### Part 2
- `length/1`
- `elem/2`
## List columns
### Six columns
{: .list-6}
- One
- Two
- Three
- Four
- Five
- Six
- Seven
- Eight
- Nine
- Ten
- Eleven
Add `{: .list-6}` after the H3 title to make large lists.
### Four columns
{: .list-4}
- One
- Two
- Three
- Four
- Five
- Six
- Seven
- Eight
- Nine
- Ten
- Eleven
Add `{: .list-4}` after the H3 title to make large lists.
## Full page
The default.
## Half width
{: .width-50}
### Avoid overly long lines
#### Time
| Example | Output |
| --- | --- |
| `%H:%M` | `23:05` |
| `%I:%M %p` | `11:05 PM` |
Add `{: .width-50}` after the H2 title to use only half width.
## Column left example
{: .col-2-left}
### One
```elixir
# hello.exs
defmodule Greeter do
def greet(name) do
message = "Hello, " <> name <> "!"
IO.puts message
end
end
Greeter.greet("world")
```
### Two
```elixir
user = %{
name: "John",
city: "Melbourne"
}
```
```elixir
IO.puts "Hello, " <> user.name
```
### Three
* Yet
* Another
* List
### Four
A grid, with 1/3 - 2/3 widths.