aboutsummaryrefslogtreecommitdiffstats
path: root/src/acit/util.py
diff options
context:
space:
mode:
authorVosjedev <vosje@vosjedev.net>2025-11-09 09:07:01 +0100
committerVosjedev <vosje@vosjedev.net>2025-11-09 09:07:01 +0100
commit4ef1b675284980e4e9de8d3fbcc34e5a74dd6466 (patch)
tree18068d545a2dbf2ce780e857bc75376855927ec2 /src/acit/util.py
parent4ba83d1a51ffab43909028b389fc65d8045d1955 (diff)
downloadacit-4ef1b675284980e4e9de8d3fbcc34e5a74dd6466.tar.gz
acit-4ef1b675284980e4e9de8d3fbcc34e5a74dd6466.tar.bz2
acit-4ef1b675284980e4e9de8d3fbcc34e5a74dd6466.tar.xz
Highlight patch emails
Diffstat (limited to 'src/acit/util.py')
-rw-r--r--src/acit/util.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/acit/util.py b/src/acit/util.py
index 343fbc1..65c0816 100644
--- a/src/acit/util.py
+++ b/src/acit/util.py
@@ -17,11 +17,24 @@ def lookahead(iterable): # https://stackoverflow.com/a/1630350
# Report the last value.
yield last, True
-def email2html(mailtext:str,extraclasses=""):
+def email2html(mailtext:str,extraclasses="",ispatch=False):
#print(mailtext)
from html import escape
+ if ispatch:
+ from pygments import highlight
+ from pygments.lexers import DiffLexer
+ from pygments.formatters import HtmlFormatter
+ extraclasses+=" highlight"
+
res='<article class="email %s"><p>'%extraclasses
- mail=escape(mailtext).replace("\n\n","</p><p>").replace("\n","<br>")
+ mail=escape(mailtext)
+
+ if ispatch:
+ mail=highlight(mail,lexer=DiffLexer(),formatter=HtmlFormatter(style="monokai"))
+ else:
+ mail=mail.replace("\n\n","</p><p>").replace("\n","<br>")
+
+
res+=mail
res+="</p></article>"
return res