in the diffstat prefix the type of change, allow CSS styling - stagit - static git page generator
 (HTM) git clone git://git.codemadness.org/stagit
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 3a151527e1d72aa75d9461ee9918bda3bd08bcb1
 (DIR) parent 608593b0f875012875f13d28fbccd533d1266fd2
 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
       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(-)
       ---
 (DIR) diff --git a/stagit.c b/stagit.c
       @@ -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);
        
       @@ -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.path));
                        if (strcmp(delta->old_file.path, delta->new_file.path)) {
                                fputs(" -&gt; ", fp);
 (DIR) diff --git a/style.css b/style.css
       @@ -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;