SEAM

Symbolic Expressions As Markup.

Why

Because all markup is terrible, especially XML/SGML and derivatives.

But mainly, for easier static markup code generation, such as with macros, code includes and such.

Try it out

This may be used as a library, such as from within a server, generating HTML (or any other supported markup) before it is served to the client. Personally, I am currently just using the seam binary to statically generate some personal and project websites.

Read the USAGE.md file for code examples and documentation.

Current Formats

Installation

You may clone the repo, then build and install sh git clone git://git.knutsen.co/seam cd seam cargo build --release cargo install --path .

Or install it from crates.io sh cargo install seam

Either way, you'll need the Rust (nightly) compiler and along with it, comes cargo.

Using The Binary

You may use it by doing sh seam test.sex --html > test.html

test.sex contains your symbolic-expressions, which is used to generate HTML, saved in test.html.

Likewise, you may read from STDIN ```sh seam --html < example.sex > example.html

Which is the same as

cat example.sex | seam --html > example.html You may also very well use here-strings and here-docs, if your shell supports it. sh seam --html <<< "(p Hello World)"

stdout:

Hello World

sh seam --xml <<< '(para Today is a day in (%date "%B, year %Y").)'

stdout:

Today is a day in November, year 2020.

```

TODO