Etch v0.4
Not just a text formatter, don't mark it down, etch it.
Syntax
Not too dissimilar from Markdown, simpler yet also more powerful:
# My Document
This is what etch text looks like!
[a]
You can tag entire blocks of text with a tag prefix, individual words[b]
with a tag suffix, or [entire spans of text][b] using square brackets.
#[a: .myClass]
#[b: @alt surprise alt text!]
#[c: @https://example.com]
And lastly, tags can be declared when you first reference them[d: .nice]
and the tag name is optional[.cool].
Documents can import other documents:
#import[my-document.etch]
Or other files as preformatted text:
[css]
#import[my-css-example.css]
Documents can contain custom metadata such as a title or description:
#meta[title: My Document]
Plugin API allows for transforming documents or injecting custom parsers.
use Etch;
use *;
let word_count = new;
let etch = default
.with_plugin
.with_document;
println!;
Code syntax highlighting provided by the Syntect plugin.
Enable the syntect-plugin feature:
[]
= { = "...", = ["syntect-plugin"] }
And attach the plugin:
use Etch;
use *;
let etch = default
.with_plugin
.with_document;
Usage
use Etch;
use *;