3 releases (stable)
1.0.1 | Dec 28, 2022 |
---|---|
0.1.0 | Dec 28, 2022 |
#2963 in Parser implementations
8KB
92 lines
VMML
Very Minimal Markup Language (VMML) is a lightweight markup language that supports nested elements that each contain an attribute.
The purpose of VMML is giving the developer the ability to define how the attribute syntax is. Other things like escaping and capturing elements is done by the parser for the developer.
An example of a VMML document looks as follows:
The [quick](bold) brown [fox](orange) jumps [over the [lazy](bold) dog](italic).
quick
is an element with an attributebold
.fox
is an elment with an attributeorange
.over the lazy dog
is an element with an attributeitalic
.- Inside the above element is another element
lazy
with an attribute bold. It is a child of the elementover the lazy dog
.
An XML version of this could be the following:
The <bold>quick</bold> brown <orange>fox</orange> jumps <italic>over the <bold>lazy</bold> dog</italic>.
VMML has no built-in support to translate files into other markup languages sich as XML.
The file extension for VMML files is .vmml
.
Usage
[dependencies]
vmml = "1.0.0"
extern crate vmml;
fn main() {
let document = "Hello, [World](bold)!";
let tree = vmml::parse(&document);
println!("{:#?}", tree);
}
Links
Dependencies
~2.3–3MB
~63K SLoC