aboutsummaryrefslogtreecommitdiff
path: root/tools/src/markdown.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2022-08-29 16:10:49 +0200
committermetamuffin <metamuffin@disroot.org>2022-08-29 16:10:49 +0200
commit18f53568b43380665686dc9e7785790f9921ce8f (patch)
tree8b32f2bfda532c77601fcd22fca2fce8761035ea /tools/src/markdown.rs
parent9ca6cc8c0acdd68d2c79f1f990c9dd81dd9fef4b (diff)
downloadmetamuffin-blog-18f53568b43380665686dc9e7785790f9921ce8f.tar
metamuffin-blog-18f53568b43380665686dc9e7785790f9921ce8f.tar.bz2
metamuffin-blog-18f53568b43380665686dc9e7785790f9921ce8f.tar.zst
a
Diffstat (limited to 'tools/src/markdown.rs')
-rw-r--r--tools/src/markdown.rs54
1 files changed, 0 insertions, 54 deletions
diff --git a/tools/src/markdown.rs b/tools/src/markdown.rs
deleted file mode 100644
index af3798e..0000000
--- a/tools/src/markdown.rs
+++ /dev/null
@@ -1,54 +0,0 @@
-pub struct Markdown(Vec<MdElement>);
-
-pub enum MdElement {
- Heading(u8, Vec<RichText>),
- Paragraph(Vec<RichText>),
- Code { syntax: String, content: String },
-}
-
-pub enum RichText {
- Text(String),
- Bold(Box<RichText>),
- Strike(Box<RichText>),
- Italic(Box<RichText>),
- Code(Box<RichText>),
- Link(String, Vec<RichText>),
-}
-
-impl Markdown {
- pub fn parse(s: &str) -> anyhow::Result<Self> {
- let mut c = vec![];
- let mut lines = s.lines();
- while let Some(line) = lines.next() {
- if line.starts_with("#") {
- let (hashes, h) = line.split_once(' ').unwrap();
- c.push(MdElement::Heading(hashes.len() as u8, RichText::parse(h)?));
- } else if line.starts_with("```") {
- todo!()
- } else {
- let mut block = line.to_string();
- while let Some(line) = lines.next() {
- if line == "" {
- break;
- }
- block += line;
- }
- c.push(MdElement::Paragraph(RichText::parse(&block)?))
- }
- }
- Ok(Markdown(c))
- }
-}
-impl RichText {
- pub fn parse(s: &str) -> anyhow::Result<Vec<Self>> {
- let mut before = String::new();
- let mut after = String::new();
- let mut after_el = false;
- for c in s.chars() {
- match c {
- _ => {}
- }
- }
- Ok(segs)
- }
-}