---
cgit.c | 2 ++
cgit.h | 1 +
cgitrc.5.txt | 6 ++++++
ui-commit.c | 8 ++++++++
4 files changed, 17 insertions(+)
diff --git a/cgit.c b/cgit.c
index eb7b45d..2cda554 100644
--- a/cgit.c
+++ b/cgit.c
@@ -90,6 +90,8 @@ void config_cb(const char *name, const char *value)
ctx.cfg.cache_static_ttl = atoi(value);
else if (!strcmp(name, "cache-dynamic-ttl"))
ctx.cfg.cache_dynamic_ttl = atoi(value);
+ else if (!strcmp(name, "commit-filter"))
+ ctx.cfg.commit_filter = new_filter(value, 0);
else if (!strcmp(name, "embedded"))
ctx.cfg.embedded = atoi(value);
else if (!strcmp(name, "max-message-length"))
diff --git a/cgit.h b/cgit.h
index f9cf0df..438301d 100644
--- a/cgit.h
+++ b/cgit.h
@@ -183,6 +183,7 @@ struct cgit_config {
int summary_branches;
int summary_log;
int summary_tags;
+ struct cgit_filter *commit_filter;
struct cgit_filter *source_filter;
};
diff --git a/cgitrc.5.txt b/cgitrc.5.txt
index d420ad4..2efd6aa 100644
--- a/cgitrc.5.txt
+++ b/cgitrc.5.txt
@@ -55,6 +55,12 @@ clone-prefix::
setting is only used if `repo.clone-url` is unspecified. Default value:
none.
+commit-filter::
+ Specifies a command which will be invoked to format commit messages.
+ The command will get the message on its STDIN, and the STDOUT from the
+ command will be included verbatim as the commit message, i.e. this can
+ be used to implement bugtracker integration. Default value: none.
+
css::
Url which specifies the css document to include in all cgit pages.
Default value: "/cgit.css".
diff --git a/ui-commit.c b/ui-commit.c
index 41ce70e..ee0e139 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -89,11 +89,19 @@ void cgit_print_commit(char *hex)
}
html("\n");
html("");
+ if (ctx.cfg.commit_filter)
+ cgit_open_filter(ctx.cfg.commit_filter);
html_txt(info->subject);
+ if (ctx.cfg.commit_filter)
+ cgit_close_filter(ctx.cfg.commit_filter);
show_commit_decorations(commit);
html("
");
html("");
+ if (ctx.cfg.commit_filter)
+ cgit_open_filter(ctx.cfg.commit_filter);
html_txt(info->msg);
+ if (ctx.cfg.commit_filter)
+ cgit_close_filter(ctx.cfg.commit_filter);
html("
");
if (parents < 3) {
if (parents)
--
cgit 1.4.1-21-gabe81