aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Skec <skec@protonmail.ch>2021-03-07 10:59:08 +1100
committerFelix Queißner <felix@ib-queissner.de>2021-03-07 03:42:34 +0100
commit86827739da2bbace3cd2fd92765fb6451a7edaae (patch)
tree7dc451c22e6a282c0a9c7543aacdb6aea4c9d2e9 /src
parenteca5fcc3b70e09052a2ad3087affac30954c0943 (diff)
downloadkristall-86827739da2bbace3cd2fd92765fb6451a7edaae.tar.gz
GeminiRenderer: basis for ansi rendering in gemtext added
Only applied to preformatted text currently. Does not work across multiple lines. No preference just yet
Diffstat (limited to 'src')
-rw-r--r--src/renderers/geminirenderer.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/renderers/geminirenderer.cpp b/src/renderers/geminirenderer.cpp
index f81b12a..b1edfc2 100644
--- a/src/renderers/geminirenderer.cpp
+++ b/src/renderers/geminirenderer.cpp
@@ -82,8 +82,19 @@ std::unique_ptr<GeminiDocument> GeminiRenderer::render(
else
{
cursor.setBlockFormat(text_style.preformatted_format);
- cursor.setCharFormat(text_style.preformatted);
- cursor.insertText(line + "\n");
+
+ // TODO: make this a preference
+ const bool RENDER_ESCAPES = true;
+
+ if (RENDER_ESCAPES)
+ {
+ renderhelpers::renderEscapeCodes(line, text_style.preformatted, cursor);
+ cursor.insertText("\n", text_style.preformatted);
+ }
+ else
+ {
+ cursor.insertText(line + "\n", text_style.preformatted);
+ }
}
continue;