]> git.cameronkatri.com Git - mandoc.git/blobdiff - man_html.c
While the HTML standard allows multiple <h1> elements in the same
[mandoc.git] / man_html.c
index 1eeaadf22aeb294a888be1188901a474ae34aff5..6ad355787a2df20a8f216f30d06e3507e69e9cbe 100644 (file)
@@ -1,6 +1,6 @@
-/* $Id: man_html.c,v 1.181 2022/07/04 14:37:33 schwarze Exp $ */
+/* $Id: man_html.c,v 1.183 2022/07/06 14:34:59 schwarze Exp $ */
 /*
- * Copyright (c) 2013-2015, 2017-2020 Ingo Schwarze <schwarze@openbsd.org>
+ * Copyright (c) 2013-2015,2017-2020,2022 Ingo Schwarze <schwarze@openbsd.org>
  * Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
  *
  * Permission to use, copy, modify, and distribute this software for any
@@ -263,26 +263,26 @@ print_man_node(MAN_ARGS)
 static void
 man_root_pre(const struct roff_meta *man, struct html *h)
 {
-       struct tag      *t, *tt;
+       struct tag      *t;
        char            *title;
 
        assert(man->title);
        assert(man->msec);
        mandoc_asprintf(&title, "%s(%s)", man->title, man->msec);
 
-       t = print_otag(h, TAG_TABLE, "c", "head");
-       tt = print_otag(h, TAG_TR, "");
+       t = print_otag(h, TAG_DIV, "cr?", "head", "doc-pageheader",
+           "aria-label", "manual header line");
 
-       print_otag(h, TAG_TD, "c", "head-ltitle");
+       print_otag(h, TAG_SPAN, "c", "head-ltitle");
        print_text(h, title);
-       print_stagq(h, tt);
+       print_stagq(h, t);
 
-       print_otag(h, TAG_TD, "c", "head-vol");
+       print_otag(h, TAG_SPAN, "c", "head-vol");
        if (man->vol != NULL)
                print_text(h, man->vol);
-       print_stagq(h, tt);
+       print_stagq(h, t);
 
-       print_otag(h, TAG_TD, "c", "head-rtitle");
+       print_otag(h, TAG_SPAN, "c", "head-rtitle");
        print_text(h, title);
        print_tagq(h, t);
        free(title);
@@ -291,16 +291,19 @@ man_root_pre(const struct roff_meta *man, struct html *h)
 static void
 man_root_post(const struct roff_meta *man, struct html *h)
 {
-       struct tag      *t, *tt;
+       struct tag      *t;
 
-       t = print_otag(h, TAG_TABLE, "c", "foot");
-       tt = print_otag(h, TAG_TR, "");
+       t = print_otag(h, TAG_DIV, "cr?", "foot", "doc-pagefooter",
+           "aria-label", "manual footer line");
 
-       print_otag(h, TAG_TD, "c", "foot-date");
+       print_otag(h, TAG_SPAN, "c", "foot-left");
+       print_stagq(h, t);
+
+       print_otag(h, TAG_SPAN, "c", "foot-date");
        print_text(h, man->date);
-       print_stagq(h, tt);
+       print_stagq(h, t);
 
-       print_otag(h, TAG_TD, "c", "foot-os");
+       print_otag(h, TAG_SPAN, "c", "foot-os");
        if (man->os != NULL)
                print_text(h, man->os);
        print_tagq(h, t);
@@ -313,10 +316,10 @@ man_SH_pre(MAN_ARGS)
        enum htmltag     tag;
 
        if (n->tok == MAN_SH) {
-               tag = TAG_H1;
+               tag = TAG_H2;
                class = "Sh";
        } else {
-               tag = TAG_H2;
+               tag = TAG_H3;
                class = "Ss";
        }
        switch (n->type) {