commit 7c291b98d1231a7a87237787e46351eefa536b52
parent 012e5fc960c924aca8d52c8b3a0e56ae618a2676
Author: maydayv7 <maydayv7@gmail.com>
Date: Sat, 3 Jan 2026 00:00:46 +0530
feat: Wrap in `container`
Diffstat:
3 files changed, 29 insertions(+), 19 deletions(-)
diff --git a/README.md b/README.md
@@ -8,7 +8,7 @@ It generates static HTML pages for a git repository.
This is my personal fork of `stagit`
-- Modified header
+- Modified styling
- Added `-n` flag to set `sitename` for header button
- Pages are now styled by the `style.css` present at root
- Added [md4c](https://github.com/mity/md4c) to parse Markdown files
diff --git a/stagit-index.c b/stagit-index.c
@@ -110,7 +110,7 @@ void writeheader(FILE *fp) {
relpath);
fputs("<link rel=\"stylesheet\" type=\"text/css\" href=\"/style.css\" />\n",
fp);
- fputs("</head>\n<body>\n", fp);
+ fputs("</head>\n<body>\n<div class=\"container\">\n", fp);
fputs("<header class=\"header\">\n", fp);
fputs("<div class=\"header-inner\">\n", fp);
@@ -130,7 +130,7 @@ void writeheader(FILE *fp) {
}
void writefooter(FILE *fp) {
- fputs("</tbody>\n</table>\n</div>\n</body>\n</html>\n", fp);
+ fputs("</tbody>\n</table>\n</div>\n</div>\n</body>\n</html>\n", fp);
}
int writelog(FILE *fp) {
diff --git a/stagit.c b/stagit.c
@@ -521,7 +521,7 @@ void writeheader(FILE *fp, const char *title) {
fprintf(fp, " Atom Feed (tags)\" href=\"%stags.xml\" />\n", relpath);
fputs("<link rel=\"stylesheet\" type=\"text/css\" href=\"/style.css\" />\n",
fp);
- fputs("</head>\n<body>\n", fp);
+ fputs("</head>\n<body>\n<div class=\"container\">\n", fp);
fputs("<header class=\"header\">\n", fp);
fputs("<div class=\"header-inner\">\n", fp);
@@ -532,6 +532,25 @@ void writeheader(FILE *fp, const char *title) {
relpath, sitename);
fputs("</div>\n", fp);
fputs("</div>\n", fp);
+
+ fputs("<nav class=\"menu-desktop\">\n", fp);
+ fputs("<ul class=\"menu-inner\">\n", fp);
+
+ fprintf(fp, "<li><a href=\"%slog.html\">Log</a></li>", relpath);
+ fprintf(fp, "<li><a href=\"%sfiles.html\">Files</a></li>", relpath);
+ fprintf(fp, "<li><a href=\"%srefs.html\">Refs</a></li>", relpath);
+
+ if (submodules)
+ fprintf(fp, "<li><a href=\"%sfile/%s.html\">Submodules</a></li>", relpath,
+ submodules);
+ if (readme)
+ fprintf(fp, "<li><a href=\"%sfile/%s.html\">README</a></li>", relpath,
+ readme);
+ if (license)
+ fprintf(fp, "<li><a href=\"%sfile/%s.html\">LICENSE</a></li>", relpath,
+ license);
+
+ fputs("</ul>\n</nav>\n", fp);
fputs("</header>\n", fp);
fputs("<div id=\"repo-header\">\n", fp);
@@ -549,23 +568,14 @@ void writeheader(FILE *fp, const char *title) {
fputs("</a></td></tr>", fp);
}
- fputs("<div id=\"nav\">\n", fp);
- fprintf(fp, "<a href=\"%slog.html\">Log</a> | ", relpath);
- fprintf(fp, "<a href=\"%sfiles.html\">Files</a> | ", relpath);
- fprintf(fp, "<a href=\"%srefs.html\">Refs</a>", relpath);
- if (submodules)
- fprintf(fp, " | <a href=\"%sfile/%s.html\">Submodules</a>", relpath,
- submodules);
- if (readme)
- fprintf(fp, " | <a href=\"%sfile/%s.html\">README</a>", relpath, readme);
- if (license)
- fprintf(fp, " | <a href=\"%sfile/%s.html\">LICENSE</a>", relpath, license);
- fputs("\n</div>\n", fp);
-
fputs("<hr/>\n<div id=\"content\">\n", fp);
}
-void writefooter(FILE *fp) { fputs("</div>\n</body>\n</html>\n", fp); }
+void writefooter(FILE *fp) {
+ fputs("</div>\n", fp);
+ fputs("</div>\n", fp);
+ fputs("</body>\n</html>\n", fp);
+}
const char *get_ext(const char *filename) {
const char *dot = strrchr(filename, '.');
@@ -710,7 +720,7 @@ void printshowfile(FILE *fp, struct commitinfo *ci) {
}
/* diff stat */
- fputs("<b>Diffstat:</b>\n<table>", fp);
+ fputs("<b>Diffstat:</b>\n<table id=\"diffstat\">", fp);
for (i = 0; i < ci->ndeltas; i++) {
delta = git_patch_get_delta(ci->deltas[i]->patch);