hamlrs 0.2.0

A Rust library and CLI tool for parsing [Haml](http://haml.info) templates
Documentation

Haml-rs

Travis CI Build Status AppVeyor Build status

This is a library and CLI for parsing Haml templates. You are able to get Haml-rs on Crates.io. The aim for this is to produce identical HTML to what the Ruby Haml gem produces.

Usage

To include haml-rs in your project add the following to your Cargo.toml:

[dependencies]
hamlrs = "0.2.0"

Then add the following to your code:

extern crate haml;

Example

Library

extern crate haml;

use haml::Haml;

fn main() {
    let test_haml = "%span";
    let html = Haml::to_html(&test_haml);
}

CLI

hamlrs input.haml output.html

Stability

This software is in its early stages and as such there may be issues with stability. While the public interface is unlikely to change from the library perspective (Haml::to_html(&str) is pretty straightforward) there will be changes behind the scenes.

If you find any bugs please don't hesitate to open an issue on github or, if you want, you can reach out directly to me at jon@dontbreakthebuild.com

Integration tests

There are currently a few integration tests (and more to come). If you are going to contribute to an integration test please make sure that the HTML file that is generated by the Ruby Haml gem so that we can ensure that we are producing the same output as the reference implementation.

Current limitations

There are a few limitations in this version of haml-rs.

  • No variable support
  • Must use HTML syntax for attributes rather than Ruby syntax (so "()" instead of "{}")

Roadmap

These are things that are on the roadmap for this project:

  • Documentation
  • Add variable support
  • Support ruby attributes
  • Add more tests
  • Improve performance (there are areas that are copying when they may not need to)

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Haml-rs by you, shall be licensed as MIT, without any additional terms or conditions.

If you have any questions you can reach me via email at jon@dontbreakthebuild.com