Previously we used our own homespun formatting. But this produces over-long lines that aren't ideal for diffs in tests. Easier to use something off-the-shelf and standard. Closes #7580. Performance is slower by about a factor of 10, but this isn't really a problem because native isn't suitable as a serialization format. (For serialization you should use json, because the reader is so much faster than native.)
51 lines
788 B
Markdown
51 lines
788 B
Markdown
```
|
|
% pandoc --shift-heading-level-by 1 -t native -s
|
|
---
|
|
title: My title
|
|
...
|
|
|
|
# First heading
|
|
|
|
## Second
|
|
^D
|
|
Pandoc
|
|
( Meta
|
|
{ unMeta = fromList
|
|
[ ( "title", MetaInlines [ Str "My", Space, Str "title" ] ) ]
|
|
}
|
|
)
|
|
[ Header 2
|
|
( "first-heading", [], [] )
|
|
[ Str "First", Space, Str "heading" ]
|
|
, Header 3
|
|
( "second", [], [] )
|
|
[ Str "Second" ]
|
|
]
|
|
```
|
|
|
|
```
|
|
% pandoc --shift-heading-level-by -1 -t native -s
|
|
---
|
|
title: Old title
|
|
...
|
|
|
|
# First heading
|
|
|
|
## Second
|
|
|
|
# Another top-level heading
|
|
^D
|
|
Pandoc
|
|
( Meta
|
|
{ unMeta = fromList
|
|
[ ( "title", MetaInlines [ Str "First", Space, Str "heading" ] ) ]
|
|
}
|
|
)
|
|
[ Header 1
|
|
( "second", [], [] )
|
|
[ Str "Second" ]
|
|
, Para
|
|
[ Str "Another", Space, Str "top-level", Space, Str "heading" ]
|
|
]
|
|
```
|
|
|