the repository which powers this website
Diffstat (limited to 'filters/syntax-highlight-hljs.sh')
-rw-r--r--filters/syntax-highlight-hljs.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/filters/syntax-highlight-hljs.sh b/filters/syntax-highlight-hljs.sh
new file mode 100644
index 00000000..3f8c84d2
--- /dev/null
+++ b/filters/syntax-highlight-hljs.sh
@@ -0,0 +1,25 @@
+BASENAME="$1"
+EXTENSION="${BASENAME##*.}"
+
+[ "${BASENAME}" = "${EXTENSION}" ] && EXTENSION=txt
+[ -z "${EXTENSION}" ] && EXTENSION=txt
+
+# map Makefile and Makefile.* to .mk
+[ "${BASENAME%%.*}" = "Makefile" ] && EXTENSION=mk
+
+
+cat << EOF
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/styles/default.min.css">
+<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/highlight.min.js"></script>
+
+<!-- and it's easy to individually load additional languages -->
+<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/languages/go.min.js"></script>
+<pre><code class="language-$EXTENSION">
+EOF
+
+cat
+
+cat << EOF
+</code></pre>
+<script>hljs.highlightAll();</script>
+EOF \ No newline at end of file