source@mandoc.bsd.lv
 help / color / mirror / Atom feed
* 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).