From 2edc3082d3883565521c4113a7f148f3656b89e9 Mon Sep 17 00:00:00 2001
From: Thomas Gideon
Date: Tue, 9 Apr 2024 15:24:19 -0400
Subject: [PATCH] Format fixes
---
src/format.rs | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/format.rs b/src/format.rs
index e6c46dc..b0c3d2b 100644
--- a/src/format.rs
+++ b/src/format.rs
@@ -97,14 +97,19 @@ fn format_attachments(depth: usize, attachments: &[Attachment]) -> String {
// line, breaking the desired formatting
fn apply_block_quote>(depth: usize, content: S) -> String {
let prefix = quote_prefix(depth);
+ // TODO use OnceLock
let empty = Regex::new("\n\\s").expect("Failed to compiled regex for nested empty lines!");
let non_empty =
Regex::new("\n(?P[^>\\s])").expect("Failed to compile regex for nested lines!");
+ // TODO break into separate function
// parsing some multiline content adds paragraph tags, convert those back to new lines to apply
// the block quote level to each line
let content = content.as_ref().replace("
", "\n\n");
let content = content.replace("
", "");
let content = content.replace("
", "");
+ // TODO refactor into separate function
+ let content = content.replace("\\*", "*");
+ let content = content.replace(":totoro:", "\\:totoro\\:");
// replace separately to avoid trailing spaces when replacing empty lines with the prefix
let content = empty.replace_all(content.as_ref(), format!("\n{}\n", prefix.trim()));
let content = non_empty.replace_all(&content, |c: &Captures| {