the repository which powers this website
Diffstat (limited to 'themed/tree.html')
-rw-r--r--themed/tree.html26
1 files changed, 26 insertions, 0 deletions
diff --git a/themed/tree.html b/themed/tree.html
index 8b00a96f..1a5bd8fa 100644
--- a/themed/tree.html
+++ b/themed/tree.html
@@ -1,4 +1,21 @@
{! #include "../ui-tree.h" !}
+{!
+
+static int match_extension(const char *filename, const char *ext)
+{
+ int prefixlen = strlen(filename) - strlen(ext);
+
+ /*
+ * We need 1 character for the '.', and 1 character to ensure that the
+ * prefix is non-empty (k.e., we don't match .tar.gz with no actual
+ * filename).
+ */
+ if (prefixlen < 2 || filename[prefixlen - 1] != '.')
+ return 0;
+ return !strcmp(filename + prefixlen, ext);
+}
+!}
+
{% block repo_navigation_breadcrumbs %}
<div class="px-3">
@@ -48,6 +65,15 @@
<div class="text-[#F07178]">
blob size ({{ size / 1024|%ld }}KB) exceeds display size limit ({{ ctx.cfg.max_blob_size|%d }}KB).
</div>
+ {% elif match_extension(basename, "md") %}
+ <div class="rendered-file p-1 border border-[#333A45] text-[#CCCAC2] rounded-md">
+ {!
+ cgit_open_filter(ctx.repo->about_filter, xstrdup(basename));
+ html_raw(buf, size);
+ cgit_close_filter(ctx.repo->about_filter);
+ free(buf);
+ !}
+ </div>
{% else %}
<div class="rendered-blob overflow-x-auto border border-[#333A45] rounded-md">
{!