aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mdoc_html.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2017-05-04 22:16:09 +0000
committerIngo Schwarze <schwarze@openbsd.org>2017-05-04 22:16:09 +0000
commitd4309408b94eb36fcea040582e8579967cb7878b (patch)
tree44fea1faa208f7aa8d912a43b25ee25ae1c50375 /mdoc_html.c
parent6cff4f9d35431af8274477e9e1cd8dbb193f159a (diff)
downloadmandoc-d4309408b94eb36fcea040582e8579967cb7878b.tar.gz
mandoc-d4309408b94eb36fcea040582e8579967cb7878b.tar.zst
mandoc-d4309408b94eb36fcea040582e8579967cb7878b.zip
Start roff formatter modules for HTML and termininal output,
used by both the mdoc and man formatters, with the ultimate goal of reducing code duplication between the two macro formatters. Made possible by the parser unification. Add the first formatting function (for the .br request).
Diffstat (limited to 'mdoc_html.c')
-rw-r--r--mdoc_html.c26
1 files changed, 8 insertions, 18 deletions
diff --git a/mdoc_html.c b/mdoc_html.c
index ea51b385..38660bac 100644
--- a/mdoc_html.c
+++ b/mdoc_html.c
@@ -1,4 +1,4 @@
-/* $Id: mdoc_html.c,v 1.281 2017/05/04 17:48:29 schwarze Exp $ */
+/* $Id: mdoc_html.c,v 1.282 2017/05/04 22:16:09 schwarze Exp $ */
/*
* Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze <schwarze@openbsd.org>
@@ -394,13 +394,7 @@ print_mdoc_node(MDOC_ARGS)
}
assert(h->tblt == NULL);
if (n->tok < ROFF_MAX) {
- switch(n->tok) {
- case ROFF_br:
- mdoc_sp_pre(meta, n, h);
- break;
- default:
- abort();
- }
+ roff_html_pre(h, n);
break;
}
assert(n->tok >= MDOC_Dd && n->tok < MDOC_MAX);
@@ -1337,16 +1331,12 @@ mdoc_sp_pre(MDOC_ARGS)
struct roffsu su;
SCALE_VS_INIT(&su, 1);
-
- if (MDOC_sp == n->tok) {
- if (NULL != (n = n->child)) {
- if ( ! a2roffsu(n->string, &su, SCALE_VS))
- su.scale = 1.0;
- else if (su.scale < 0.0)
- su.scale = 0.0;
- }
- } else
- su.scale = 0.0;
+ if (NULL != (n = n->child)) {
+ if ( ! a2roffsu(n->string, &su, SCALE_VS))
+ su.scale = 1.0;
+ else if (su.scale < 0.0)
+ su.scale = 0.0;
+ }
print_otag(h, TAG_DIV, "suh", &su);