The `abstract` metadata field holds blocks, so it must be rendered
with the block writer: previously it was flattened to inlines, which
produced bare character data (not valid as a child of `office:text`)
and dropped the `Abstract` style.
```
% pandoc -f markdown -t opendocument --template command/opendocument-abstract.opendocument
---
abstract: A one-line abstract.
---
Body.
^D
A one-line abstract.
```
A multi-paragraph abstract stays multi-paragraph:
```
% pandoc -f markdown -t opendocument --wrap=none --template command/opendocument-abstract.opendocument
---
abstract: |
First para.
Second para.
---
Body.
^D
First para.Second para.
```
A requested paragraph style must also be applied to `Plain` blocks, not
just to `Para`. The body of a caption-less figure is a `Plain`, so it
should still get the `Figure` style:
```
% pandoc -f native -t opendocument --template command/opendocument-body.opendocument
[Figure ("fig1",[],[]) (Caption Nothing []) [Plain [Str "placeholder"]]]
^D
placeholder
```
Column style names must remain valid NCNames past the 26th column;
incrementing a character code would run into `[`, `\`, etc.
```
% pandoc -f native -t opendocument --template command/opendocument-body.opendocument
[Table ("",[],[]) (Caption Nothing [])
[(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)
,(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)
,(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)
,(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)
,(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)
,(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)
,(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault),(AlignDefault,ColWidthDefault)]
(TableHead ("",[],[]) [])
[(TableBody ("",[],[]) (RowHeadColumns 0) [] [])]
(TableFoot ("",[],[]) [])]
^D
```
A note nested inside another note must not reuse the outer note's
`text:id`:
```
% pandoc -f markdown -t opendocument --wrap=none --template command/opendocument-body.opendocument
Text^[outer^[inner]]^[second]
^D
Text1outer2inner3second
```
Automatic text styles are declared in numerical order: sorting them by
name would put `T10` between `T1` and `T2`.
```
% pandoc -f native -t opendocument --wrap=none --template command/11301-styles.opendocument
[Para [SmallCaps [Str "a"]
,SmallCaps [Strikeout [Str "b"]]
,SmallCaps [Superscript [Str "c"]]
,SmallCaps [Subscript [Str "d"]]
,SmallCaps [Underline [Str "e"]]
,Strikeout [Superscript [Str "f"]]
,Strikeout [Subscript [Str "g"]]
,Strikeout [Underline [Str "h"]]
,Underline [Superscript [Str "i"]]
,Underline [Subscript [Str "j"]]]]
^D
abcdefghij
```