diff options
author | Lars Wirzenius <liw@liw.fi> | 2022-08-05 19:22:55 +0000 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2022-08-05 19:22:55 +0000 |
commit | 97b2307e4ae2223fb2f9020bfa49e0e8924a268f (patch) | |
tree | 202fc70866b842a17fa40c47ba1357e3c2b3e3d9 | |
parent | aacb704f8cc7e227b9a301a74d879957f4af766a (diff) | |
parent | a9a011c072fbba890dc81f381c94cd17d06ff5f6 (diff) | |
download | riki-97b2307e4ae2223fb2f9020bfa49e0e8924a268f.tar.gz |
Merge branch 'parsing-improvements' into 'main'
feat: handle Bang, PageName tokens
See merge request larswirzenius/riki!36
-rw-r--r-- | src/parser.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/parser.rs b/src/parser.rs index ed205e4..662ffd0 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -150,10 +150,24 @@ impl WikitextParser { self.tokens.drain(..1); Snippet::Markdown("=".into()) } + [Token::Bang, ..] => { + self.tokens.drain(..1); + Snippet::Markdown("!".into()) + } [Token::Pipe, ..] => { self.tokens.drain(..1); Snippet::Markdown("|".into()) } + [Token::PageName(s), ..] => { + let snippet = Snippet::Markdown(s.to_string()); + self.tokens.drain(..1); + snippet + } + [Token::QuotedValue(s), ..] => { + let snippet = Snippet::Markdown(format!("\"{}\"", s)); + self.tokens.drain(..1); + snippet + } [Token::OpenParens, ..] => { self.tokens.drain(..1); Snippet::Markdown("(".into()) |