tin the diffstat prefix the type of change, allow CSS styling - stagit - static… | |
git clone git://src.adamsgaard.dk/stagit | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 3a151527e1d72aa75d9461ee9918bda3bd08bcb1 | |
parent 608593b0f875012875f13d28fbccd533d1266fd2 | |
Author: Hiltjo Posthuma <[email protected]> | |
Date: Sun, 18 Nov 2018 18:08:20 +0100 | |
in the diffstat prefix the type of change, allow CSS styling | |
Diffstat: | |
M stagit.c | 17 ++++++++++++++++- | |
M style.css | 2 ++ | |
2 files changed, 18 insertions(+), 1 deletion(-) | |
--- | |
diff --git a/stagit.c b/stagit.c | |
t@@ -461,6 +461,7 @@ printshowfile(FILE *fp, struct commitinfo *ci) | |
git_patch *patch; | |
size_t nhunks, nhunklines, changed, add, del, total, i, j, k; | |
char linestr[80]; | |
+ int c; | |
printcommit(fp, ci); | |
t@@ -480,7 +481,21 @@ printshowfile(FILE *fp, struct commitinfo *ci) | |
for (i = 0; i < ci->ndeltas; i++) { | |
delta = git_patch_get_delta(ci->deltas[i]->patch); | |
- fprintf(fp, "<tr><td><a href=\"#h%zu\">", i); | |
+ switch (delta->status) { | |
+ case GIT_DELTA_ADDED: c = 'A'; break; | |
+ case GIT_DELTA_COPIED: c = 'C'; break; | |
+ case GIT_DELTA_DELETED: c = 'D'; break; | |
+ case GIT_DELTA_MODIFIED: c = 'M'; break; | |
+ case GIT_DELTA_RENAMED: c = 'R'; break; | |
+ case GIT_DELTA_TYPECHANGE: c = 'T'; break; | |
+ default: c = ' '; break; | |
+ } | |
+ if (c == ' ') | |
+ fprintf(fp, "<tr><td>%c", c); | |
+ else | |
+ fprintf(fp, "<tr><td class=\"%c\">%c", c, c); | |
+ | |
+ fprintf(fp, "</td><td><a href=\"#h%zu\">", i); | |
xmlencode(fp, delta->old_file.path, strlen(delta->old_file.pat… | |
if (strcmp(delta->old_file.path, delta->new_file.path)) { | |
fputs(" -> ", fp); | |
diff --git a/style.css b/style.css | |
t@@ -84,11 +84,13 @@ pre a.h { | |
color: #00a; | |
} | |
+.A, | |
span.i, | |
pre a.i { | |
color: #070; | |
} | |
+.D, | |
span.d, | |
pre a.d { | |
color: #e00; |