aboutsummaryrefslogtreecommitdiff
path: root/render/escape.go
diff options
context:
space:
mode:
authorRunxi Yu <me@runxiyu.org>2025-04-05 18:26:51 +0800
committerRunxi Yu <me@runxiyu.org>2025-04-05 18:26:51 +0800
commit4f4f6a25be2625b4bb2cb10e3520f52c4a35c243 (patch)
tree5458da1ee5efa5e46e831c34c1f39ebc67fb71b0 /render/escape.go
parentRemove renderReadmeAtTree (diff)
downloadforge-4f4f6a25be2625b4bb2cb10e3520f52c4a35c243.tar.gz
forge-4f4f6a25be2625b4bb2cb10e3520f52c4a35c243.tar.zst
forge-4f4f6a25be2625b4bb2cb10e3520f52c4a35c243.zip
Separate code/README rendering and unsafe to their own packages
Diffstat (limited to '')
-rw-r--r--render/escape.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/render/escape.go b/render/escape.go
new file mode 100644
index 0000000..44c56f3
--- /dev/null
+++ b/render/escape.go
@@ -0,0 +1,11 @@
+package render
+
+import (
+ "html"
+ "html/template"
+)
+
+// EscapeHTML just escapes a string and wraps it in [template.HTML].
+func EscapeHTML(s string) template.HTML {
+ return template.HTML(html.EscapeString(s)) //#nosec G203
+}