* mandoc: In HTML output, for lists that have an -indent argument, just
@ 2018-06-10 16:16 schwarze
0 siblings, 0 replies; only message in thread
From: schwarze @ 2018-06-10 16:16 UTC (permalink / raw)
To: source
Log Message:
-----------
In HTML output, for lists that have an -indent argument, just use
a uniform indentation in CSS adapted to the viewport width and
ignore the value of the argument taken from mdoc(7). While
author-specified widths somewhat work as a micro-optimization in
terminal and typeset output, they are nothing but harmful in HTML
style= attributes because they break responsive design, whereas
using a reasonable default indent almost never results in ugly
output. Admittedly, the author-specified width might occasionally
look even better, but only slightly so, and only for some viewport
sizes.
Based on guidance provided by John Gardner.
Modified Files:
--------------
mandoc:
mandoc.css
mdoc_html.c
Revision Data
-------------
Index: mandoc.css
===================================================================
RCS file: /home/cvs/mandoc/mandoc/mandoc.css,v
retrieving revision 1.32
retrieving revision 1.33
diff -Lmandoc.css -Lmandoc.css -u -p -r1.32 -r1.33
--- mandoc.css
+++ mandoc.css
@@ -68,7 +68,7 @@ div.manual-text {
/* Displays and lists. */
.Bd { }
-.D1 { margin-left: 3.8em; }
+.Bd-indent { margin-left: 3.8em; }
ul.Bl-bullet { list-style-type: disc;
padding-left: 1em; }
@@ -239,7 +239,7 @@ a.In { }
div.manual-text {
margin-left: 0.5em; }
.Sh, .Ss { margin-left: 0em; }
-.D1 { margin-left: 2em; }
+.Bd-indent { margin-left: 2em; }
dl.Bl-hang > dd {
margin-left: 2em; }
dl.Bl-tag { margin-left: 2em; }
Index: mdoc_html.c
===================================================================
RCS file: /home/cvs/mandoc/mandoc/mdoc_html.c,v
retrieving revision 1.305
retrieving revision 1.306
diff -Lmdoc_html.c -Lmdoc_html.c -u -p -r1.305 -r1.306
--- mdoc_html.c
+++ mdoc_html.c
@@ -749,7 +749,7 @@ mdoc_it_pre(MDOC_ARGS)
static int
mdoc_bl_pre(MDOC_ARGS)
{
- char cattr[21];
+ char cattr[28];
struct tag *t;
struct mdoc_bl *bl;
size_t i;
@@ -819,7 +819,7 @@ mdoc_bl_pre(MDOC_ARGS)
break;
case LIST_tag:
if (bl->offs)
- print_otag(h, TAG_DIV, "cswl", "Bl-tag", bl->offs);
+ print_otag(h, TAG_DIV, "c", "Bd-indent");
print_otag(h, TAG_DL, "c", bl->comp ?
"Bl-tag Bl-compact" : "Bl-tag");
return 1;
@@ -830,9 +830,11 @@ mdoc_bl_pre(MDOC_ARGS)
default:
abort();
}
+ if (bl->offs != NULL)
+ (void)strlcat(cattr, " Bd-indent", sizeof(cattr));
if (bl->comp)
(void)strlcat(cattr, " Bl-compact", sizeof(cattr));
- print_otag(h, elemtype, "cswl", cattr, bl->offs);
+ print_otag(h, elemtype, "c", cattr);
return 1;
}
@@ -864,7 +866,7 @@ mdoc_d1_pre(MDOC_ARGS)
if (n->type != ROFFT_BLOCK)
return 1;
- print_otag(h, TAG_DIV, "c", "D1");
+ print_otag(h, TAG_DIV, "c", "Bd Bd-indent");
if (n->tok == MDOC_Dl)
print_otag(h, TAG_CODE, "c", "Li");
@@ -886,7 +888,7 @@ mdoc_sx_pre(MDOC_ARGS)
static int
mdoc_bd_pre(MDOC_ARGS)
{
- int comp, offs, sv;
+ int comp, sv;
struct roff_node *nn;
if (n->type == ROFFT_HEAD)
@@ -911,18 +913,9 @@ mdoc_bd_pre(MDOC_ARGS)
if (n->norm->Bd.offs == NULL ||
! strcmp(n->norm->Bd.offs, "left"))
- offs = 0;
- else if ( ! strcmp(n->norm->Bd.offs, "indent"))
- offs = INDENT;
- else if ( ! strcmp(n->norm->Bd.offs, "indent-two"))
- offs = INDENT * 2;
+ print_otag(h, TAG_DIV, "c", "Bd");
else
- offs = -1;
-
- if (offs == -1)
- print_otag(h, TAG_DIV, "cswl", "Bd", n->norm->Bd.offs);
- else
- print_otag(h, TAG_DIV, "cshl", "Bd", offs);
+ print_otag(h, TAG_DIV, "c", "Bd Bd-indent");
if (n->norm->Bd.type != DISP_unfilled &&
n->norm->Bd.type != DISP_literal)
--
To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2018-06-10 16:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-10 16:16 mandoc: In HTML output, for lists that have an -indent argument, just schwarze
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).