pandoc/test/markdown-reader-more.txt

321 lines
5.3 KiB
Text
Raw Normal View History

% Title
spanning multiple lines
% Author One
Author Two; Author Three;
Author Four
# Additional markdown reader tests
## Blank line before URL in link reference
[foo] and [bar]
[foo]:
/url
[bar]:
/url
"title"
## Raw ConTeXt environments
\placeformula \startformula
L_{1} = L_{2}
\stopformula
\start[a2]
\start[a2]
\stop[a2]
\stop[a2]
## Raw LaTeX environments
\begin{center}
\begin{tikzpicture}[baseline={([yshift=+-.5ex]current bounding box.center)}, level distance=24pt]
\Tree [.{S} [.NP John\index{i} ] [.VP [.V likes ] [.NP himself\index{i,*j} ]]]
\end{tikzpicture}
\end{center}
## URLs with spaces and punctuation
[foo](/bar and baz)
[foo](/bar
and baz )
[foo]( /bar and baz )
[foo](bar baz "title" )
[baz][] [bam][] [bork][]
[baz]: /foo foo
[bam]: /foo fee
[bork]: /foo/zee zob (title)
[Ward's method.](http://en.wikipedia.org/wiki/Ward's_method)
## Horizontal rules with spaces at end
* * * * *
-- - -- -- -
## Raw HTML before header
<a></a>
### my header
## $ in math
$\$2 + \$3$
$x = \text{the $n$th root of $y$}$
This should not be math:
$PATH 90 $PATH
## Commented-out list item
- one
<!--
- two
-->
- three
## Indented code at beginning of list
Markdown reader: use CommonMark rules for list item nesting. Closes #3511. Previously pandoc used the four-space rule: continuation paragraphs, sublists, and other block level content had to be indented 4 spaces. Now the indentation required is determined by the first line of the list item: to be included in the list item, blocks must be indented to the level of the first non-space content after the list marker. Exception: if are 5 or more spaces after the list marker, then the content is interpreted as an indented code block, and continuation paragraphs must be indented two spaces beyond the end of the list marker. See the CommonMark spec for more details and examples. Documents that adhere to the four-space rule should, in most cases, be parsed the same way by the new rules. Here are some examples of texts that will be parsed differently: - a - b will be parsed as a list item with a sublist; under the four-space rule, it would be a list with two items. - a code Here we have an indented code block under the list item, even though it is only indented six spaces from the margin, because it is four spaces past the point where a continuation paragraph could begin. With the four-space rule, this would be a regular paragraph rather than a code block. - a code Here the code block will start with two spaces, whereas under the four-space rule, it would start with `code`. With the four-space rule, indented code under a list item always must be indented eight spaces from the margin, while the new rules require only that it be indented four spaces from the beginning of the first non-space text after the list marker (here, `a`). This change was motivated by a slew of bug reports from people who expected lists to work differently (#3125, #2367, #2575, #2210, #1990, #1137, #744, #172, #137, #128) and by the growing prevalance of CommonMark (now used by GitHub, for example). Users who want to use the old rules can select the `four_space_rule` extension. * Added `four_space_rule` extension. * Added `Ext_four_space_rule` to `Extensions`. * `Parsing` now exports `gobbleAtMostSpaces`, and the type of `gobbleSpaces` has been changed so that a `ReaderOptions` parameter is not needed.
2017-08-19 19:56:15 +02:00
- code
code
Markdown reader: use CommonMark rules for list item nesting. Closes #3511. Previously pandoc used the four-space rule: continuation paragraphs, sublists, and other block level content had to be indented 4 spaces. Now the indentation required is determined by the first line of the list item: to be included in the list item, blocks must be indented to the level of the first non-space content after the list marker. Exception: if are 5 or more spaces after the list marker, then the content is interpreted as an indented code block, and continuation paragraphs must be indented two spaces beyond the end of the list marker. See the CommonMark spec for more details and examples. Documents that adhere to the four-space rule should, in most cases, be parsed the same way by the new rules. Here are some examples of texts that will be parsed differently: - a - b will be parsed as a list item with a sublist; under the four-space rule, it would be a list with two items. - a code Here we have an indented code block under the list item, even though it is only indented six spaces from the margin, because it is four spaces past the point where a continuation paragraph could begin. With the four-space rule, this would be a regular paragraph rather than a code block. - a code Here the code block will start with two spaces, whereas under the four-space rule, it would start with `code`. With the four-space rule, indented code under a list item always must be indented eight spaces from the margin, while the new rules require only that it be indented four spaces from the beginning of the first non-space text after the list marker (here, `a`). This change was motivated by a slew of bug reports from people who expected lists to work differently (#3125, #2367, #2575, #2210, #1990, #1137, #744, #172, #137, #128) and by the growing prevalance of CommonMark (now used by GitHub, for example). Users who want to use the old rules can select the `four_space_rule` extension. * Added `four_space_rule` extension. * Added `Ext_four_space_rule` to `Extensions`. * `Parsing` now exports `gobbleAtMostSpaces`, and the type of `gobbleSpaces` has been changed so that a `ReaderOptions` parameter is not needed.
2017-08-19 19:56:15 +02:00
1. code
code
Markdown reader: use CommonMark rules for list item nesting. Closes #3511. Previously pandoc used the four-space rule: continuation paragraphs, sublists, and other block level content had to be indented 4 spaces. Now the indentation required is determined by the first line of the list item: to be included in the list item, blocks must be indented to the level of the first non-space content after the list marker. Exception: if are 5 or more spaces after the list marker, then the content is interpreted as an indented code block, and continuation paragraphs must be indented two spaces beyond the end of the list marker. See the CommonMark spec for more details and examples. Documents that adhere to the four-space rule should, in most cases, be parsed the same way by the new rules. Here are some examples of texts that will be parsed differently: - a - b will be parsed as a list item with a sublist; under the four-space rule, it would be a list with two items. - a code Here we have an indented code block under the list item, even though it is only indented six spaces from the margin, because it is four spaces past the point where a continuation paragraph could begin. With the four-space rule, this would be a regular paragraph rather than a code block. - a code Here the code block will start with two spaces, whereas under the four-space rule, it would start with `code`. With the four-space rule, indented code under a list item always must be indented eight spaces from the margin, while the new rules require only that it be indented four spaces from the beginning of the first non-space text after the list marker (here, `a`). This change was motivated by a slew of bug reports from people who expected lists to work differently (#3125, #2367, #2575, #2210, #1990, #1137, #744, #172, #137, #128) and by the growing prevalance of CommonMark (now used by GitHub, for example). Users who want to use the old rules can select the `four_space_rule` extension. * Added `four_space_rule` extension. * Added `Ext_four_space_rule` to `Extensions`. * `Parsing` now exports `gobbleAtMostSpaces`, and the type of `gobbleSpaces` has been changed so that a `ReaderOptions` parameter is not needed.
2017-08-19 19:56:15 +02:00
12345678. code
code
- code
code
- no code
## Backslash newline
hi\
there
## Code spans
`hi\`
`hi
there`
`` hi````there ``
`hi
there`
## Multilingual URLs
<http://测.com?测=测>
[foo](/bar/测?x=测 "title")
<测@foo.测.baz>
2010-07-13 08:07:00 +02:00
## Numbered examples
(@) First example.
(@foo) Second example.
Explanation of examples (@foo) and (@bar).
(@bar) Third example.
2010-10-27 05:03:02 +02:00
## Macros
\newcommand{\tuple}[1]{\langle #1 \rangle}
$\tuple{x,y}$
## Case-insensitive references
[Fum]
[FUM]
[bat]
[fum]: /fum
[BAT]: /bat
## Curly smart quotes
“Hi”
Hi
## Consecutive lists
- one
- two
1. one
2. two
a. one
b. two
## Implicit header references
### My header
### My other header
A link to [My header].
Another link to [it][My header].
Should be [case insensitive][my header].
Link to [Explicit header attributes].
[my other header]: /foo
But this is not a link to [My other header], since the reference is defined.
## Explicit header attributes {#foobar .baz key="val"}
> ## Header attributes inside block quote {#foobar .baz key="val"}
## Line blocks
| But can a bee be said to be
| or not to be an entire bee,
| when half the bee is not a bee,
| due to some ancient injury?
|
| Continuation
line
| and
another
## Grid Tables
+------------------+-----------+------------+
| col 1 | col 2 | col 3 |
+==================+===========+============+
| r1 a | b | c |
| r1 bis | b 2 | c 2 |
+------------------+-----------+------------+
| r2 d | e | f |
+------------------+-----------+------------+
Headless
+------------------+-----------+------------+
| r1 a | b | c |
| r1 bis | b 2 | c 2 |
+------------------+-----------+------------+
| r2 d | e | f |
+------------------+-----------+------------+
With alignments
+------------------+-----------+------------+
| col 1 | col 2 | col 3 |
+=================:+:==========+:==========:+
| r1 a | b | c |
| r1 bis | b 2 | c 2 |
+------------------+-----------+------------+
| r2 d | e | f |
+------------------+-----------+------------+
Headless with alignments
+-----------------:+:----------+:----------:+
| r1 a | b | c |
| r1 bis | b 2 | c 2 |
+------------------+-----------+------------+
| r2 d | e | f |
+------------------+-----------+------------+
Spaces at ends of lines
+------------------+-----------+------------+
| r1 a | b | c |
| r1 bis | b 2 | c 2 |
+------------------+-----------+------------+
| r2 d | e | f |
+------------------+-----------+------------+
Multiple blocks in a cell
+------------------+-----------+------------+
| # col 1 | # col 2 | # col 3 |
| col 1 | col 2 | col 3 |
+------------------+-----------+------------+
| r1 a | - b | c |
| | - b 2 | c 2 |
| r1 bis | - b 2 | c 2 |
+------------------+-----------+------------+
Empty cells
+---+---+
| | |
+---+---+
## Entities in links and titles
[link](/&uuml;rl "&ouml;&ouml;!")
<http://g&ouml;&ouml;gle.com>
<me@ex&auml;mple.com>
[foobar]
[foobar]: /&uuml;rl "&ouml;&ouml;!"
## Parentheses in URLs
[link](/hi(there))
[link](/hithere\))
[linky]
[linky]: hi_(there_(nested))
2013-06-19 18:00:37 +02:00
## Backslashes in link references
[\*\a](b)
2013-06-19 18:00:37 +02:00
## Reference link fallbacks
[*not a link*] [*nope*]...
## Reference link followed by a citation
MapReduce is a paradigm popularized by [Google] [@mapreduce] as its
most vocal proponent.
[Google]: http://google.com
## Empty reference links
[foo2]:
bar
[foo2]
## Wrapping shouldn't introduce new list items
- blah blah blah blah blah blah blah blah blah blah blah blah blah blah 2015.
## Bracketed spans
[*foo* bar baz [link](url)]{.class #id key=val}