From 3f6a596c60833741991c23766d8710154bd82dfd Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Sun, 3 Jul 2022 14:29:44 +0000 Subject: Instead of the custom
, use the standard HTML
element. The benefit is that it has the ARIA landmark role "main" by default. To ease the transition for people using their own CSS file instead of mandoc.css, retain the custom class for now. I had this idea in a discussion with Anna Vyalkova . Patch from Anna, slightly tweaked by me. --- html.c | 2 ++ html.h | 1 + man_html.c | 2 +- mandoc.css | 6 ++---- mdoc_html.c | 2 +- 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/html.c b/html.c index 0199edb0..7b92f006 100644 --- a/html.c +++ b/html.c @@ -2,6 +2,7 @@ /* * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons * Copyright (c) 2011-2015, 2017-2021 Ingo Schwarze + * Copyright (c) 2022 Anna Vyalkova * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -67,6 +68,7 @@ static const struct htmldata htmltags[TAG_MAX] = { {"style", HTML_NLALL | HTML_INDENT}, {"title", HTML_NLAROUND}, {"body", HTML_NLALL}, + {"main", HTML_NLALL}, {"div", HTML_NLAROUND}, {"section", HTML_NLALL}, {"nav", HTML_NLALL}, diff --git a/html.h b/html.h index 32742461..38391c26 100644 --- a/html.h +++ b/html.h @@ -27,6 +27,7 @@ enum htmltag { TAG_STYLE, TAG_TITLE, TAG_BODY, + TAG_MAIN, TAG_DIV, TAG_SECTION, TAG_NAV, diff --git a/man_html.c b/man_html.c index 5f715cf0..cd442a35 100644 --- a/man_html.c +++ b/man_html.c @@ -132,7 +132,7 @@ html_man(void *arg, const struct roff_meta *man) } man_root_pre(man, h); - t = print_otag(h, TAG_DIV, "c", "manual-text"); + t = print_otag(h, TAG_MAIN, "c", "manual-text"); print_man_nodelist(man, n, h); print_tagq(h, t); man_root_post(man, h); diff --git a/mandoc.css b/mandoc.css index 73f5c668..d2d55cec 100644 --- a/mandoc.css +++ b/mandoc.css @@ -69,8 +69,7 @@ td.foot-os { text-align: right; } /* Sections and paragraphs. */ -.manual-text { - margin-left: 3.8em; } +main { margin-left: 3.8em; } .Nd { } section.Sh { } h1.Sh { margin-top: 1.2em; @@ -338,8 +337,7 @@ h1.Sh::before, h2.Ss::before, .St::before, .Sx::before, .Sy::before, /* Overrides to avoid excessive margins on small devices. */ @media (max-width: 37.5em) { -.manual-text { - margin-left: 0.5em; } +main { margin-left: 0.5em; } h1.Sh, h2.Ss { margin-left: 0em; } .Bd-indent { margin-left: 2em; } .Bl-hang > dd { diff --git a/mdoc_html.c b/mdoc_html.c index a0e29c72..16b72e00 100644 --- a/mdoc_html.c +++ b/mdoc_html.c @@ -302,7 +302,7 @@ html_mdoc(void *arg, const struct roff_meta *mdoc) } mdoc_root_pre(mdoc, h); - t = print_otag(h, TAG_DIV, "c", "manual-text"); + t = print_otag(h, TAG_MAIN, "c", "manual-text"); print_mdoc_nodelist(mdoc, n, h); print_tagq(h, t); mdoc_root_post(mdoc, h); -- cgit