Markdown
A parser for Markdown text. Instances of this class may be passed directly to the Parser
or Transformer
APIs:
val document = MarkupParser.of(Markdown).build.parse(inputString)
Transformer.from(Markdown).to(HTML).build.transform(inputString)
Since this library is not solely focused on producing HTML output, parsing verbatim HTML elements like defined by the official Markdown syntax description is an optional feature, as some types of renderers would not know what to do with HTML nodes in the document tree. It must be enabled explicitly:
val parser = MarkupParser.of(Markdown).withRawContent.build
To switch off all custom extensions like directives, configuration sections at the start of the document or automatic id generation for headers, you can run the parser in strict mode:
val transformer = Transformer.from(Markdown).to(HTML).strict
Attributes
- Graph
-
- Supertypes
-
trait Singletontrait Producttrait Mirrortrait Serializabletrait Producttrait Equalstrait MarkupFormattrait Formatclass Objecttrait Matchableclass AnyShow all
- Self type
-
Markdown.type
Members list
Type members
Inherited types
The names of the product elements
The names of the product elements
Attributes
- Inherited from:
- Singleton
Attributes
- Inherited from:
- Singleton
The name of the type
The name of the type
Attributes
- Inherited from:
- Mirror
The mirrored *-type
The mirrored *-type
Attributes
- Inherited from:
- Singleton
Attributes
- Inherited from:
- Singleton
Value members
Concrete methods
Creates the parser for a sequence of blocks based on the parser for a single block.
Creates the parser for a sequence of blocks based on the parser for a single block.
The parser for a single block is already the result of merging all block parsers defined within this instance with all extension parsers defined by the user.
The default implementation simply applies this parser repeatedly while skipping blank lines between the parsed blocks. This method can get overridden for special requirements, for example when the previous result has an influence on which parser to pick for the subsequent block.
Attributes
- Definition Classes
Inherited methods
Short string describing the markup or output format for tooling and logging.
Short string describing the markup or output format for tooling and logging.
Attributes
- Inherited from:
- Format
Create a new instance of type T
with elements taken from product p
.
Create a new instance of type T
with elements taken from product p
.
Attributes
- Inherited from:
- Singleton
Attributes
- Inherited from:
- Product
Attributes
- Inherited from:
- Product
Concrete fields
All block parsers for the markup language this parser processes.
All block parsers for the markup language this parser processes.
Attributes
Parses the character after the one that started the escape sequence (usually a backslash).
Parses the character after the one that started the escape sequence (usually a backslash).
The default implementation parses any character as is, this can be overridden in case the host language has more specific rules for escape sequences.
Attributes
The parser-specific extensions that need to be installed for each transformation that involves this parser.
The parser-specific extensions that need to be installed for each transformation that involves this parser.
One scenario where a parser needs to provide a bundle is when it produces tree elements that are unknown to the built-in rewrite rules and renderers.
Attributes
The file suffixes recognized by this parser. When transforming entire directories only files with names ending in one of the specified suffixes will be considered.
The file suffixes recognized by this parser. When transforming entire directories only files with names ending in one of the specified suffixes will be considered.
It is recommended not to support txt
or similarly common suffixes as this might interfere with other installed formats.
Attributes
All span parsers for the markup language this parser processes.
All span parsers for the markup language this parser processes.