OurBigBook
test_bigb_output.bigb
= tmp

Escape chars: \\, \[, \], \{, \}, \<, \`, \$

Escape at start of newline only:
\* *
\= =
\|| ||
\| |

Same in list indent:

* the list
  \* *
  \= =
  \|| ||
  \| |

Sane inline element: \i[qwer] after.

Sane inline element with named argument: \a[qwer]{external} after.

Sane inline element with positional and named argument: \a[qwer][zxcv]{external} after.

Insane link http://example.com after.

Insane link http://example.com[], with comma immediately following.

Insane ref: <black cat>.

Insane ref capital: <Black cat>.

Insane ref plural: <black cats>.

Insane ref full: <black cats>{full}.

Topic link with spaces: <#rare topic with spaces>.

Topic link without spaces: #RareTopic

Sane xref that cannot be converted to insane: \x[[$]]

Insane ref with greater than: <greater than>

Inline code block: `f(x + 1)[]` after.

Inline code block with backtick: \c[[a ` b]] after.

Inline code block with backtick and double open square brackets: \c[[[a ` [[ b]]] after.

Inline code block with backtick and double close square brackets: \c[[[a ` ]] b]]] after.

Inline code block with backtick and triple open square brackets: \c[[[[a ` [[[ b]]]] after.

\Q[Sane block with a single line.]

\Q[
Sane block with a single line.

No, actually multiple lines.
]

\Q[\Q[Nested sane block]tight.]

Sane block together with paragraph:
\Q[To be]
and another:
\Q[or maybe not]
and finally.

br:

\Q[
aa\br
bb\br
]

\Q[
asdf\br

qwer
]

Empty argument followed by paragraph:

\Q[]

and something after.

Argument ending in list:

\Q[
* asdf
]

and something after.

Non-br macro without arguments\i
followed by a newline

Literal block that renders as sane:

\Q[[To be \i[or] maybe not.]]

Literal block with escaped leading and trailing:

\Q[[\[asdf\]]]

\Q[\Q[asdf]]

Literal block with multiple lines starting in \[ and ending in \]:

\Q[[
[
]
]]

\Image[Tank_man_standing_in_front_of_some_tanks.jpg]
{{description=\{asdf\}}}

Insane block together with paragraph:
``
x = 1
``
and another:
``
x = 2
``

Block code block:

``
x = 1
x = x + 1
``

Block code with double backtick:

```
x = 1
``
x = x + 1
```

Block code with triple backtick:

````
x = 1
```
x = x + 1
````

Insane code block with attribute:

``
x = 1
``
{description=My code}

Inline math: $\sqrt{2}$ after.

Block math:

$$
\sqrt{2} \\
\sqrt{2}
$$

Block math single line:

$$
\sqrt{2}
$$

List:

* p1

  Sane block:

  \Q[To be]

  and another:

  \Q[or maybe not]
* p2

List with paragraph:

* p1

  p1 2

  p1 3
* p2

Nested list:

* p1
* p2
  * p2 1
  * p2 2
    * p2 2 1
  * p2 3
* p3
  * p3 1

Nested list with paragraph:

* p1
* p2
  * p2 p1

    p2 p2

    * p2 p2 1
    * p2 p2 2

    p2 p3
  * p2 2
  * p2 3
* p3
  * p3 1

List with ID:

\Ul[
* p1
* p2
]
{id=my-list}

Insane ordered list:

\Ol[
* p1
* p2
]

Thight list:
* aaa
* bbb
and another:
* ccc
* ddd
done.

Nested and tight:
* aaa
  * bbb
  * ccc
  ddd

* tight code in list without paragraph
  ``
  aaa
  bbb
  ``
* after

* tight quote in list without paragraph
  \Q[first]
  and
  \Q[second]
  done.
* after

\Q[list after block tight]
* the list

List in paragraph with blocks with paragraph:
* \Q[first]

  \Q[second]

List in paragraph with block followed by nested list tight:
* \Q[first]

  * second

List immediately in list item:

* * first
  * second

Table:

|| header 1
|| header 2

| row 1 1
| row 1 2

| row 2 1
| row 2 2

Table with title:

\Table[
|| header 1
|| header 2

| row 1 1
| row 1 2

| row 2 1
| row 2 2
]
{title=My table}

Table with paragraph and list:

|| header 1
|| header 2

| row 1 1

  row 1 1 1

  * row 1 1 1 1
  * row 1 1 1 2
    * row 1 1 1 2 1

  row 1 1 2
| row 1 2

| row 2 1
| row 2 2

Table with empty cell:

| row 1 1
|

| row 2 1
| row 2 2

\Image[Tank_man_standing_in_front_of_some_tanks.jpg]
{id=image-my-test-image}
{title=The title of my image.}
{description=The description of my image.}
{source=https://en.wikipedia.org/wiki/File:Tianasquare.jpg}

\Image[Tank_man_standing_in_front_of_some_tanks.jpg]

== Dog

\Include[test-bigb-output-2]{parent=dog}
\Include[test-bigb-output-3]{parent=dog}

<code In OurBigBookExample>

<image Tank man standing in front of some tanks.>

\OurBigBookExample[[
Hello

World

``
Hello
``
{title=In OurBigBookExample}

\Image[Tank_man_standing_in_front_of_some_tanks.jpg]
{external}
{provider=github}
{titleFromSrc}
]]

\Comment[[
Hello

World
]]

== Black cat

== Black

== Black dog
{tag=Dog}
{tag=Black}

== My \i[Tag]

== My tagged
{tag=My Tag}

== Dollar
{{id=$}}

== Greater > than

== My scope
{scope}

=== h1

== Tank_man_standing_in_front_of_some_tanks.jpg
{file}

== Header with args
{id=tmp-2}
{c}
{wiki}

== Synonym main

= Synonym secondary
{synonym}