diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2017-01-26 18:28:18 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2017-01-26 18:28:18 +0000 |
commit | 94cd81895ea53a20400d13b0e9c2bcf756ed382b (patch) | |
tree | 50b3e1fee66e1d75b3a5657a0824cd0c83b8540c /html.c | |
parent | 5db55ac9e2491b9cdf973e2d4cb7ed9596b00566 (diff) | |
download | mandoc-94cd81895ea53a20400d13b0e9c2bcf756ed382b.tar.gz mandoc-94cd81895ea53a20400d13b0e9c2bcf756ed382b.tar.zst mandoc-94cd81895ea53a20400d13b0e9c2bcf756ed382b.zip |
Fix -man -Thtml formatting after .nf (which has nothing to do
with "literal", by the way, it means "no fill"):
* Use <pre> such that whitespace is preserved.
* Preserve lines breaks.
* For font alternating macros, avoid node recursion which required
scary juggling with the fill state. Instead, simply print the text
children directly.
Missing feature first noticed by kristaps@ in 2011,
the again reported by afresh1@ in 2016,
and finally reported here: https://github.com/Debian/debiman/issues/21 ,
which i only found because of Shane Kerr's comment here:
https://plus.google.com/110314300533310775053/posts/H1eaw9Yskoc
Diffstat (limited to 'html.c')
-rw-r--r-- | html.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -1,4 +1,4 @@ -/* $Id: html.c,v 1.201 2017/01/25 02:14:43 schwarze Exp $ */ +/* $Id: html.c,v 1.202 2017/01/26 18:28:18 schwarze Exp $ */ /* * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2011-2015, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -114,7 +114,6 @@ static const char *const roffscales[SCALE_MAX] = { static void a2width(const char *, struct roffsu *); static void print_byte(struct html *, char); -static void print_endline(struct html *); static void print_endword(struct html *); static void print_indent(struct html *); static void print_word(struct html *, const char *); @@ -812,7 +811,7 @@ print_byte(struct html *h, char c) * If something was printed on the current output line, end it. * Not to be called right after print_indent(). */ -static void +void print_endline(struct html *h) { if (h->col == 0) |