About This Document
Owen’s Markup Language (
owml from now on) is a lightweight markup language. You can find the design specifications here.
In this document, we will briefly go over how to build from source and setup this parser in various enviroments.
owml-parser is a parser for omwl. It is made in Rust using the nom library. This project aims to be no-std, meaning that it does not ship with a standard library, making it lighter weight and poetntially avalible on embedded devices.
This respository (https://gitlab.com/scOwez/owml-parser) could be considered the main “hub” of Owen’s Markup Language, containing documentation for Owen’s Markup Language itself alongside the core, standardized parser for owml itself.
In this section, we will be going over how to install this parser.
The stable, field-tested builds of owml-parser come out on it’s Crates.io page.
Simply add the most recent version, displayed prominently on the site into your
Cargo.toml file and you should be all set!
To get these “artifacts”, please visit the Pipelines page for owml and find the most recent passing build. It should have an icon similar to:
If a job has an icon like this, please view to the right of it where it should have the following button:
Please press the dropdown button and select
Download img-build artifacts.
Once you have downloaded the file, please unzip it and extract the
libowml-parser.rlibfile that should be located inside of the
Congratulations! You have sucsessfully downloaded the cutting-edge owml release!
Building From Source
To build from source, please first clone the git repository.
git clone https://gitlab.com/scOwez/owml-parser
After installing Rust, please
owml-parser/and execute the following command to build owml
cargo build --release
This will build a release version of owml. It is reccomended to use the nightly version of Rust as it is guaranteed to work compared to Rust stable.
Once the build has completed, you can use the
owml-parserlibrary. The .rlib file (by default) is stored in the newly-created
target/release/directory and should be called something similarly to