diff options
| author | sigoden <sigoden@gmail.com> | 2023-10-29 12:52:04 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-29 12:52:04 +0800 |
| commit | 10b1d4b4de521a48747c73d29e9fe3f06db48a32 (patch) | |
| tree | 5ed5364501eceef197e12d1377b24c61b2b0d18f /src/render/markdown.rs | |
| parent | 33a9aacf39ea105e311f032e5d15c62cbeaa93e0 (diff) | |
| download | aichat-10b1d4b4de521a48747c73d29e9fe3f06db48a32.tar.gz | |
fix: unexpcted duplicate lines in kitty (#167)
Diffstat (limited to 'src/render/markdown.rs')
| -rw-r--r-- | src/render/markdown.rs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/render/markdown.rs b/src/render/markdown.rs index 75904af..66bb601 100644 --- a/src/render/markdown.rs +++ b/src/render/markdown.rs @@ -53,14 +53,17 @@ impl MarkdownRender { } } - pub fn render(&mut self, src: &str) -> String { + pub fn render_block(&mut self, src: &str) -> String { src.split('\n') - .map(|line| self.render_line(line).unwrap_or_else(|| line.to_string())) + .map(|line| { + self.render_line_impl(line) + .unwrap_or_else(|| line.to_string()) + }) .collect::<Vec<String>>() .join("\n") } - pub fn render_line_stateless(&self, line: &str) -> String { + pub fn render_line(&self, line: &str) -> String { let output = if self.is_code_block() && detect_code_block(line).is_none() { self.render_code_line(line) } else { @@ -76,7 +79,7 @@ impl MarkdownRender { ) } - fn render_line(&mut self, line: &str) -> Option<String> { + fn render_line_impl(&mut self, line: &str) -> Option<String> { if let Some(lang) = detect_code_block(line) { match self.prev_line_type { LineType::Normal | LineType::CodeEnd => { |
