events/
events.rs

1use std::io::Read;
2
3use pulldown_cmark::{Event, Parser};
4
5/// Show all events from the text on stdin.
6fn main() {
7    let mut text = String::new();
8    std::io::stdin().read_to_string(&mut text).unwrap();
9
10    eprintln!("{text:?} -> [");
11    let mut width = 0;
12    for event in Parser::new(&text) {
13        if let Event::End(_) = event {
14            width -= 2;
15        }
16        eprintln!("  {:width$}{event:?}", "");
17        if let Event::Start(_) = event {
18            width += 2;
19        }
20    }
21    eprintln!("]");
22}