Pandoc JSON
Format for integrating with the Pandoc
Introduction
Pandoc is a document converter that allows you to translate content between a wide range of markup formats, including Markdown, HTML, LaTeX. It is widely used in academic and technical publishing.
Pandoc JSON is a JSON representation of Pandoc's internal document element types.
Stencila delegates conversion to/from several formats (e.g. DOCX) via Pandoc JSON.
Usage
You are unlikely to want to use Pandoc JSON format directly, but if you do (e.g. for debugging), use the .pandoc
file extension, or the --to pandoc
or --from pandoc
options e.g.
stencila convert doc.smd doc.pandoc
Implementation
Stencila support bi-directional conversion between Stencila documents and Pandoc JSON powered by the pandoc_types
Rust crate.
Support
Stencila supports these operations for Pandoc AST:
- decoding from a file
- decoding from a string
- encoding to a file
- encoding to a string
Support and degree of loss by node type:
Node type | Encoding | Decoding | Notes |
---|---|---|---|
Works | |||
Article | 🔷 Low loss | 🔷 Low loss | |
AudioObject | 🔷 Low loss | 🔷 Low loss | |
AuthorRole | 🔷 Low loss | 🔷 Low loss | |
Chat | 🔷 Low loss | 🔷 Low loss | |
ChatMessage | 🔷 Low loss | 🔷 Low loss | |
ChatMessageGroup | 🔷 Low loss | 🔷 Low loss | |
Claim | 🔷 Low loss | 🔷 Low loss | |
Collection | 🔷 Low loss | 🔷 Low loss | |
Comment | 🔷 Low loss | 🔷 Low loss | |
CreativeWork | 🔷 Low loss | 🔷 Low loss | |
Directory | 🔷 Low loss | 🔷 Low loss | |
Figure | 🔷 Low loss | 🔷 Low loss | |
File | 🔷 Low loss | 🔷 Low loss | |
ImageObject | 🔷 Low loss | 🔷 Low loss | |
MediaObject | 🔷 Low loss | 🔷 Low loss | |
Periodical | 🔷 Low loss | 🔷 Low loss | |
Prompt | 🔷 Low loss | 🔷 Low loss | |
PublicationIssue | 🔷 Low loss | 🔷 Low loss | |
PublicationVolume | 🔷 Low loss | 🔷 Low loss | |
Review | 🔷 Low loss | 🔷 Low loss | |
SoftwareApplication | 🔷 Low loss | 🔷 Low loss | |
SoftwareSourceCode | 🔷 Low loss | 🔷 Low loss | |
Table | 🔷 Low loss | 🔷 Low loss | |
TableCell | 🔷 Low loss | 🔷 Low loss | |
TableRow | 🔷 Low loss | 🔷 Low loss | |
VideoObject | 🔷 Low loss | 🔷 Low loss | |
Prose | |||
Admonition | 🔷 Low loss | 🔷 Low loss | |
Annotation | 🔷 Low loss | 🔷 Low loss | |
Cite | 🔷 Low loss | 🔷 Low loss | |
CiteGroup | 🔷 Low loss | 🔷 Low loss | |
DefinedTerm | 🔷 Low loss | 🔷 Low loss | |
Emphasis | 🔷 Low loss | 🔷 Low loss | |
Heading | 🔷 Low loss | 🔷 Low loss | |
Link | 🔷 Low loss | 🔷 Low loss | |
List | 🔷 Low loss | 🔷 Low loss | |
ListItem | 🔷 Low loss | 🔷 Low loss | |
Note | 🔷 Low loss | 🔷 Low loss | |
Paragraph | 🔷 Low loss | 🔷 Low loss | |
QuoteBlock | 🔷 Low loss | 🔷 Low loss | |
QuoteInline | 🔷 Low loss | 🔷 Low loss | |
Section | 🔷 Low loss | 🔷 Low loss | |
Strikeout | 🔷 Low loss | 🔷 Low loss | |
Strong | 🔷 Low loss | 🔷 Low loss | |
Subscript | 🔷 Low loss | 🔷 Low loss | |
Superscript | 🔷 Low loss | 🔷 Low loss | |
Text | 🔷 Low loss | 🔷 Low loss | |
ThematicBreak | 🔷 Low loss | 🔷 Low loss | |
Underline | 🔷 Low loss | 🔷 Low loss | |
Math | |||
MathBlock | 🔷 Low loss | 🔷 Low loss | |
MathInline | 🔷 Low loss | 🔷 Low loss | |
Code | |||
CodeBlock | 🔷 Low loss | 🔷 Low loss | |
CodeChunk | 🔷 Low loss | 🔷 Low loss | |
CodeExpression | 🔷 Low loss | 🔷 Low loss | |
CodeInline | 🔷 Low loss | 🔷 Low loss | |
CompilationMessage | 🔷 Low loss | 🔷 Low loss | |
ExecutionMessage | 🔷 Low loss | 🔷 Low loss | |
Data | |||
Array | 🔷 Low loss | 🔷 Low loss | |
ArrayHint | 🔷 Low loss | 🔷 Low loss | |
ArrayValidator | 🔷 Low loss | 🔷 Low loss | |
Boolean | 🔷 Low loss | 🔷 Low loss | |
BooleanValidator | 🔷 Low loss | 🔷 Low loss | |
ConstantValidator | 🔷 Low loss | 🔷 Low loss | |
Cord | 🔷 Low loss | 🔷 Low loss | |
Datatable | 🔷 Low loss | 🔷 Low loss | |
DatatableColumn | 🔷 Low loss | 🔷 Low loss | |
DatatableColumnHint | 🔷 Low loss | 🔷 Low loss | |
DatatableHint | 🔷 Low loss | 🔷 Low loss | |
Date | 🔷 Low loss | 🔷 Low loss | |
DateTime | 🔷 Low loss | 🔷 Low loss | |
DateTimeValidator | 🔷 Low loss | 🔷 Low loss | |
DateValidator | 🔷 Low loss | 🔷 Low loss | |
Duration | 🔷 Low loss | 🔷 Low loss | |
DurationValidator | 🔷 Low loss | 🔷 Low loss | |
EnumValidator | 🔷 Low loss | 🔷 Low loss | |
Integer | 🔷 Low loss | 🔷 Low loss | |
IntegerValidator | 🔷 Low loss | 🔷 Low loss | |
Null | 🔷 Low loss | 🔷 Low loss | |
Number | 🔷 Low loss | 🔷 Low loss | |
NumberValidator | 🔷 Low loss | 🔷 Low loss | |
Object | 🔷 Low loss | 🔷 Low loss | |
ObjectHint | 🔷 Low loss | 🔷 Low loss | |
String | 🔷 Low loss | 🔷 Low loss | |
StringHint | 🔷 Low loss | 🔷 Low loss | |
StringValidator | 🔷 Low loss | 🔷 Low loss | |
Time | 🔷 Low loss | 🔷 Low loss | |
TimeValidator | 🔷 Low loss | 🔷 Low loss | |
Timestamp | 🔷 Low loss | 🔷 Low loss | |
TimestampValidator | 🔷 Low loss | 🔷 Low loss | |
TupleValidator | 🔷 Low loss | 🔷 Low loss | |
Unknown | 🔷 Low loss | 🔷 Low loss | |
UnsignedInteger | 🔷 Low loss | 🔷 Low loss | |
Flow | |||
Button | 🔷 Low loss | 🔷 Low loss | |
CallArgument | 🔷 Low loss | 🔷 Low loss | |
CallBlock | 🔷 Low loss | 🔷 Low loss | |
CodeLocation | 🔷 Low loss | 🔷 Low loss | |
CompilationDigest | 🔷 Low loss | 🔷 Low loss | |
ExecutionDependant | 🔷 Low loss | 🔷 Low loss | |
ExecutionDependency | 🔷 Low loss | 🔷 Low loss | |
ExecutionTag | 🔷 Low loss | 🔷 Low loss | |
ForBlock | 🔷 Low loss | 🔷 Low loss | |
Form | 🔷 Low loss | 🔷 Low loss | |
Function | 🔷 Low loss | 🔷 Low loss | |
IfBlock | 🔷 Low loss | 🔷 Low loss | |
IfBlockClause | 🔷 Low loss | 🔷 Low loss | |
IncludeBlock | 🔷 Low loss | 🔷 Low loss | |
Parameter | 🔷 Low loss | 🔷 Low loss | |
Variable | 🔷 Low loss | 🔷 Low loss | |
Walkthrough | 🔷 Low loss | 🔷 Low loss | |
WalkthroughStep | 🔷 Low loss | 🔷 Low loss | |
Style | |||
StyledBlock | 🔷 Low loss | 🔷 Low loss | |
StyledInline | 🔷 Low loss | 🔷 Low loss | |
Edits | |||
InstructionBlock | 🔷 Low loss | 🔷 Low loss | |
InstructionInline | 🔷 Low loss | 🔷 Low loss | |
InstructionMessage | 🔷 Low loss | 🔷 Low loss | |
PromptBlock | 🔷 Low loss | 🔷 Low loss | |
SuggestionBlock | 🔷 Low loss | 🔷 Low loss | |
SuggestionInline | 🔷 Low loss | 🔷 Low loss | |
Config | |||
Config | 🔷 Low loss | 🔷 Low loss | |
Other | |||
Brand | 🔷 Low loss | 🔷 Low loss | |
ContactPoint | 🔷 Low loss | 🔷 Low loss | |
Enumeration | 🔷 Low loss | 🔷 Low loss | |
Grant | 🔷 Low loss | 🔷 Low loss | |
ModelParameters | 🔷 Low loss | 🔷 Low loss | |
MonetaryGrant | 🔷 Low loss | 🔷 Low loss | |
Organization | 🔷 Low loss | 🔷 Low loss | |
Person | 🔷 Low loss | 🔷 Low loss | |
PostalAddress | 🔷 Low loss | 🔷 Low loss | |
Product | 🔷 Low loss | 🔷 Low loss | |
PropertyValue | 🔷 Low loss | 🔷 Low loss | |
ProvenanceCount | 🔷 Low loss | 🔷 Low loss | |
RawBlock | 🔷 Low loss | 🔷 Low loss | |
Thing | 🔷 Low loss | 🔷 Low loss |
See the Rust crate codec-pandoc
for more details.