# Luma A parser for a semantic note taking markup language. The parser is written in Gleam. you can test it with gleam run. ## Public API ```gleam pub fn parse(input: String) -> definition.Line pub fn parse_to_json(input: String) -> String ``` ## JSON Output Format `parse_to_json` returns a JSON array of inline objects. Each object has: - `"type"`: string — one of `"text"`, `"marking"`, `"hirachy"`, `"truth"`, `"quote"`, `"pop"` - `"value"`: string | int ### Types | Type | Meaning | Prefix | |------|---------|--------| | `"text"` | Plain text content | — | | `"marking"` | Push(Marking(level)) | `!` | | `"hirachy"` | Push(Hirachy(level)) | `#` | | `"truth"` | Push(Truth(level)) | `@` | | `"quote"` | Push(Quote(level)) | `>` | | `"pop"` | Pop(mode) | suffix `-` (e.g. `!-`) | ### Example Input: `"!2 @3 important >1 quoted"` Output: ```json [ {"type":"marking","value":2}, {"type":"truth","value":3}, {"type":"text","value":"important"}, {"type":"hirachy","value":1}, {"type":"text","value":"quoted"} ] ```