X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=examples%2Fcgit-commit-filter.lua;h=9857b3c9572a33a0a3e7723f96a0de5e753a6bba;hb=10e0e2052b2c2a4bb405cfbb4c2c72464671152d;hp=4b90125ff332669dcf2de635c95b3493856b6a8c;hpb=2998655db7fce5c7d9714a89f4a7cb54419bc757;p=public-inbox.git
diff --git a/examples/cgit-commit-filter.lua b/examples/cgit-commit-filter.lua
index 4b90125f..9857b3c9 100644
--- a/examples/cgit-commit-filter.lua
+++ b/examples/cgit-commit-filter.lua
@@ -1,5 +1,5 @@
--- Copyright (C) 2015 all contributors
--- License: GPLv2 or later (https://www.gnu.org/licenses/gpl-2.0.txt)
+-- Copyright (C) 2015-2021 all contributors
+-- License: GPLv2 or later
-- This commit filter maps a subject line to a search URL of a public-inbox
-- disclaimer: written by someone who does not know Lua.
--
@@ -8,31 +8,41 @@
--
-- commit-filter=lua:/path/to/this/script.lua
--
--- Example: http://bogomips.org/public-inbox.git/
+-- Example site: https://80x24.org/public-inbox.git/
local urls = {}
-urls['public-inbox.git'] = 'http://public-inbox.org/meta/'
+urls['public-inbox.git'] = 'https://public-inbox.org/meta/'
-- additional URLs here...
+-- TODO we should be able to auto-generate this based on "coderepo"
+-- directives in the public-inbox config file; but keep in mind
+-- the mapping is M:N between inboxes and coderepos
function filter_open(...)
lineno = 0
buffer = ""
- subject = ""
end
function filter_close()
+ -- cgit opens and closes this filter for the commit subject
+ -- and body separately, and we only generate the link based
+ -- on the commit subject:
if lineno == 1 and string.find(buffer, "\n") == nil then
u = urls[os.getenv('CGIT_REPO_URL')]
if u == nil then
html(buffer)
else
- html('')
+ html("')
html_txt(buffer)
- html('')
+ html('')
end
else
+ -- pass the body-through as-is
+ -- TODO: optionally use WwwHighlight for linkification like
+ -- cgit-wwwhighlight-filter.lua
html(buffer)
end
return 0