Early stage markup for iced using pest
Note
Currently under heavy development, and will change frequently.
There is a viewer application in the snowcap-viewer repository.
Here's an example of how the test.iced file renders.
The grammar is specified in snowcap.pest and an example layout is in test.iced.
| Iced Element | Snowcap Syntax |
|---|---|
| Container | {<attr:val,...> ...} |
| Row | -<attr:val,...>[ element, ...] |
| Column | |<attr:val,...>[ element, ...] |
| Stack | ^<attr:val,...>[ element, ...] |
| Rule (horiz) | rule-horizontal<height:2>() |
| Rule (vert) | rule-vertical<width:2>() |
| Text | text<attr:val,...>("Content") |
| Button | button<attr:val,...>(element) |
| Toggler | toggler<attr:val,...>(element) |
| QRCode | qrcode<cell-size:10>(qr!("https://iced.rs")) |
| Markdown | markdown(file!("README.md")) |
| Image | image(file!("samples/ferris.png")) |
| Svg | svg(file!("samples/coder.svg")) |
For example, creating a container with a column would look like
{<width:fill, align-x:center>
|<align:center>[
text<size:19>("Hello"),
text<size:24>("Snowcap")
]
}