# Pandoc Test Suite

John MacFarlane
Anonymous
July 17, 2006

This is a set of tests for pandoc. Most of them are adapted from John Gruber’s markdown test suite.

## Headers

### Level 2 with an embedded link

#### Level 3 with emphasis

##### Level 4

###### Level 5

Hi.

## Level 1

### Level 2 with emphasis

#### Level 3

with no blank line

##### Level 4

An unnumbered section.

### Level 2

with no blank line

## Paragraphs

Here’s a regular paragraph.

In Markdown 1.0.0 and earlier. Version 8. This line turns into a list item. Because a hard-wrapped line in the middle of a paragraph looked like a list item.

Here’s one with a bullet. * criminey.

## Block Quotes

E-mail style:

> This is a block quote. It is pretty short.

> Code in a block quote:

>     sub status {
>         print "working";
>     }

>     sub status {
>         print "working with line numbers";
>     }

>     % ls

> A list:

> 1. item one

> 2. item two

> Nested block quotes:

> > nested

> > nested

This should not be a block quote: 2 > 1.

And a following paragraph.

## Code Blocks

Code:

    ---- (should be four hyphens)

    sub status {
        print "working";
    }

    this code block is indented by one tab

And:

        this code block is indented by two tabs

    These should not be escaped:  \$ \\ \> \[ \{

## Lists

### Unordered

Asterisks loose:

- asterisk 1

- asterisk 2

- asterisk 3

Asterisks tight:

- Plus 1

- Plus 2

- Plus 3

### Ordered

1. First

2. Second

3. Third

and tight:

1. One

2. Two

3. Three

Multiple paragraphs:

1. Item 1, graf one.

   Item 1. graf two. The quick brown fox jumped over the lazy dog’s back.

2. Item 2.

3. Item 3.

### Nested

- Tab

  - Tab

    - Tab

Here’s another:

1. First

2. Second:

   - Fee

   - Fie

   - Foe

3. Third

Same thing but with paragraphs:

1. First

2. Second:

   - Fee

   - Fie

   - Foe

3. Third

### Tabs and spaces

- this is a list item indented with tabs

- this is a list item indented with spaces

  - this is an example list item indented with tabs

  - this is an example list item indented with spaces

### Fancy list markers

1. begins with 2

2. and now 3

   with a continuation

   1. sublist with roman numerals, starting with 4

   2. more items

      1. a subsublist

      2. a subsublist

Nesting:

1. Upper Alpha

   1. Upper Roman.

      1. Decimal start with 6

         1. Lower alpha with paren

Autonumbering:

1. Autonumber.

2. More.

   1. Nested.

Should not be a list item:

M.A. 2007

B. Williams

### Callout

Simple.

A `__letrec` is equivalent to a normal Haskell &let;.

&GHC; compiled the body of our list comprehension into a loop named `go_s1YC`.

If our &case; expression matches the empty list, we return the empty list. This is reassuringly familiar.

## Definition Lists

apple

  red fruit

orange

  orange fruit

banana

  yellow fruit

Multiple blocks with italics:

apple

  red fruit

  contains seeds, crisp, pleasant to taste

orange

  orange fruit

      { orange code block }

  > orange block quote

Multiple definitions, loose:

apple

  red fruit

  computer

orange

  orange fruit

  bank

Blank line after term, indented marker, alternate markers:

apple

  red fruit

  computer

orange

  orange fruit

  1. sublist

  2. sublist

## Inline Markup

This is emphasized, and so is this.

This is strong, and so is this.

An emphasized link.

This is strong and em.

So is this word.

This is strong and em.

So is this word.

This is code: `>`, `$`, `\`, `\$`, `<html>`.

More code: Class and Type

Referencing a man page: nix.conf 5

This is strikeout.

Superscripts: abcd ahello ahello there.

Subscripts: H2O, H23O, Hmany of themO.

These should not be superscripts or subscripts, because of the unescaped spaces: a^b c^d, a~b c~d.

## Smart quotes, ellipses, dashes

Hello, said the spider. Shelob is my name.

A, B, and C are letters.

He said, I want to go. Were you alive in the 70’s?

Some dashes: one—two — three—four — five.

Dashes between numbers: 5–7, 255–66, 1987–1999.

Ellipses…and…and….

e = m c 2 1
e = m c 2
e = m c 2

## Special Characters

Here is some unicode:

- I hat: Î

- o umlaut: ö

- section: §

- set membership: ∈

- copyright: ©

AT&T has an ampersand in their name.

AT&T is another way to write it.

This & that.

4 < 5.

6 > 5.

Backslash: \

Backtick: `

Asterisk: *

Underscore: _

Left brace: {

Right brace: }

Left bracket: [

Right bracket: ]

Left paren: (

Right paren: )

Greater-than: >

Hash: #

Period: .

Bang: !

Plus: +

Minus: -

## Links

### Explicit

Just a URL.

URL and title.

URL and title.

URL and title.

URL and title

URL and title

with_underscore

nobody@nowhere.net

Empty.

### Reference

Foo bar.

Foo bar.

Foo bar.

With embedded [brackets].

b by itself should be a link.

Indented once.

Indented twice.

Indented thrice.

This should [not][] be a link.

    [not]: /url

Foo bar.

Foo biz.

### With ampersands

Here’s a link with an ampersand in the URL.

Here’s a link with an amersand in the link text: AT&T.

Here’s an inline link.

Here’s an inline link in pointy braces.

### Autolinks

With an ampersand: http://example.com/?foo=1&bar=2

- In a list?

- http://example.com/

- It should.

An e-mail address: nobody@nowhere.net

> Blockquoted: http://example.com/

Auto-links should not occur here: `<http://example.com/>`

    or here: <http://example.com/>

## Images

From Voyage dans la Lune by Georges Melies (1902):

lalune fig caption

lalune alt text shadowed by fig caption

Here is a movie icon. And here a second movie alt text icon. And here a third movie

alt text
icon.
lalune no figure alt text

## Footnotes

Here is a footnote reference,

Here is the footnote. It can go anywhere after the footnote reference. It need not be placed at the end of the document.

and another.

Here’s the long note. This one contains multiple blocks.

Subsequent blocks are indented to show that they belong to the footnote (as with list items).

      { <code> }

If you want, you can indent every line, but you can also be lazy and just indent the first line of each block.

This should not be a footnote reference, because it contains a space.[^my note] Here is an inline note.

This is easier to type. Inline notes may contain links and `]` verbatim characters, as well as [bracketed text].

> Notes can go in quotes.

> In quote.

1. And in list items.

   In list.

This paragraph should not be part of the note, as it is not indented.

## Tables

Simple table with caption:

Demonstration of simple table syntax.

Right | Left | Center | Default
--- | --- | --- | ---
12 | 12 | 12 | 12
123 | 123 | 123 | 123
1 | 1 | 1 | 1

Simple table without caption:

Right | Left | Center | Default
--- | --- | --- | ---
12 | 12 | 12 | 12
123 | 123 | 123 | 123
1 | 1 | 1 | 1

Simple table indented two spaces:

Demonstration of simple table syntax.

Right | Left | Center | Default
--- | --- | --- | ---
12 | 12 | 12 | 12
123 | 123 | 123 | 123
1 | 1 | 1 | 1

Multiline table with caption:

Here's the caption. It may span multiple lines.

Centered Header | Left Aligned | Right Aligned | Default aligned
--- | --- | --- | ---
First | row | 12.0 | Example of a row that spans multiple lines.
Second | row | 5.0 | Here's another one. Note the blank line between rows.

Multiline table without caption:

Centered Header | Left Aligned | Right Aligned | Default aligned
--- | --- | --- | ---
First | row | 12.0 | Example of a row that spans multiple lines.
Second | row | 5.0 | Here's another one. Note the blank line between rows.

Table without column headers:

12 | 12 | 12 | 12
123 | 123 | 123 | 123
1 | 1 | 1 | 1

Multiline table without column headers:

First | row | 12.0 | Example of a row that spans multiple lines.
Second | row | 5.0 | Here's another one. Note the blank line between rows.

An Example Procedure

- A Step

- Another Step

  1. Substeps can be nested indefinitely deep.

- A Final Step

## Index terms

In the simplest case, index terms consists of just a `<primary>` element, but they can also consist of a `<primary>` and `<secondary>` element, and can even include a `<tertiary>` term.

index term
index term multi-level
index term multi-level 3-level

Index terms can also refer to other index terms: exclusively, using the `<see>` tag; or as a reference to related terms, using the `<seealso>` tag.

index cross referencing
index term cross references index cross referencing
index cross referencing cross referencing

Nested content in index term elements is flattened.

food big baguette supreme

## Abbreviated title

Abbr. title