ctucx.git: stagit

ctucx' stagit fork

commit c6e8f9fd809cc16960022c344b42be77229a70c6
parent 543582034eed3faf6120de321354f36ec8a2c0b4
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 May 2016 11:49:25 +0200

make diffstat files an anchor (jump to delta)
1 file changed, 4 insertions(+), 4 deletions(-)
M
stagit.c
|
8
++++----
diff --git a/stagit.c b/stagit.c
@@ -462,7 +462,7 @@ printshowfile(FILE *fp, struct commitinfo *ci)
 	fputs("<b>Diffstat:</b>\n<table>", fp);
 	for (i = 0; i < ci->ndeltas; i++) {
 		delta = git_patch_get_delta(ci->deltas[i]->patch);
-		fputs("<tr><td>", fp);
+		fprintf(fp, "<tr><td><a href=\"#h%zu\">", i);
 		xmlencode(fp, delta->old_file.path, strlen(delta->old_file.path));
 		if (strcmp(delta->old_file.path, delta->new_file.path)) {
 			fputs(" -&gt; ", fp);

@@ -482,7 +482,7 @@ printshowfile(FILE *fp, struct commitinfo *ci)
 		memset(&linestr, '+', add);
 		memset(&linestr[add], '-', del);
 
-		fprintf(fp, "</td><td> | </td><td class=\"num\">%zu</td><td><span class=\"i\">",
+		fprintf(fp, "</a></td><td> | </td><td class=\"num\">%zu</td><td><span class=\"i\">",
 		        ci->deltas[i]->addcount + ci->deltas[i]->delcount);
 		fwrite(&linestr, 1, add, fp);
 		fputs("</span><span class=\"d\">", fp);

@@ -499,8 +499,8 @@ printshowfile(FILE *fp, struct commitinfo *ci)
 	for (i = 0; i < ci->ndeltas; i++) {
 		patch = ci->deltas[i]->patch;
 		delta = git_patch_get_delta(patch);
-		fprintf(fp, "<b>diff --git a/<a href=\"%sfile/%s.html\">%s</a> b/<a href=\"%sfile/%s.html\">%s</a></b>\n",
-			relpath, delta->old_file.path, delta->old_file.path,
+		fprintf(fp, "<b>diff --git a/<a id=\"h%zu\" href=\"%sfile/%s.html\">%s</a> b/<a href=\"%sfile/%s.html\">%s</a></b>\n",
+			i, relpath, delta->old_file.path, delta->old_file.path,
 			relpath, delta->new_file.path, delta->new_file.path);
 
 		/* check binary data */