aboutsummaryrefslogtreecommitdiff
path: root/formatters/about-formatting.sh
diff options
context:
space:
mode:
authorMitchell Riedstra <mitch@riedstra.dev>2026-01-18 16:45:04 -0500
committerMitchell Riedstra <mitch@riedstra.dev>2026-01-18 16:45:44 -0500
commit037ddb4f29fc2af3ef16a9e51312bde85f635c9b (patch)
tree8e0d3f357d9440b9e740d92a0e53e4ad2a6f7e4e /formatters/about-formatting.sh
parentbae5e4768d6afe32659d803fe454ba49ee948031 (diff)
downloadalpine-cgit-master.tar.gz
alpine-cgit-master.tar.xz
Bump to Alpine 3.23HEADmaster
Switch markdown formatting to cmark which is far faster than the old python based setup. Also tweak cgitrc and Nginx configuration a bit for simplicity. Move webroot out of git root.
Diffstat (limited to 'formatters/about-formatting.sh')
-rwxr-xr-xformatters/about-formatting.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/formatters/about-formatting.sh b/formatters/about-formatting.sh
new file mode 100755
index 0000000..bca12c2
--- /dev/null
+++ b/formatters/about-formatting.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+# Overriding the one provided by cgit, since it uses slow python markdown
+# formatting. We're going to use cmark instead ( https://github.com/commonmark/cmark )
+
+# Also, removes support for rst and man pages.
+
+######################################################################
+
+# This may be used with the about-filter or repo.about-filter setting in cgitrc.
+# It passes formatting of about pages to differing programs, depending on the usage.
+
+# Markdown support requires python and markdown-python.
+# RestructuredText support requires python and docutils.
+# Man page support requires groff.
+
+# The following environment variables can be used to retrieve the configuration
+# of the repository for which this script is called:
+# CGIT_REPO_URL ( = repo.url setting )
+# CGIT_REPO_NAME ( = repo.name setting )
+# CGIT_REPO_PATH ( = repo.path setting )
+# CGIT_REPO_OWNER ( = repo.owner setting )
+# CGIT_REPO_DEFBRANCH ( = repo.defbranch setting )
+# CGIT_REPO_SECTION ( = section setting )
+# CGIT_REPO_CLONE_URL ( = repo.clone-url setting )
+
+cd "$(dirname $0)/html-converters/"
+case "$(printf '%s' "$1" | tr '[:upper:]' '[:lower:]')" in
+ *.markdown|*.mdown|*.md|*.mkd) exec cmark; ;;
+ *.htm|*.html) exec cat; ;;
+ *.txt|*) exec ./txt2html; ;;
+esac