aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--mdoc_term.c8
-rw-r--r--term.c13
2 files changed, 12 insertions, 9 deletions
diff --git a/mdoc_term.c b/mdoc_term.c
index e3d0f1dc..ad4e0640 100644
--- a/mdoc_term.c
+++ b/mdoc_term.c
@@ -1,4 +1,4 @@
-/* $Id: mdoc_term.c,v 1.92 2009/10/18 19:03:37 kristaps Exp $ */
+/* $Id: mdoc_term.c,v 1.93 2009/10/19 15:18:30 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se>
*
@@ -494,13 +494,13 @@ arg2width(const struct mdoc_argv *arg, int pos)
assert(arg->value[pos]);
if ( ! a2roffsu(arg->value[pos], &su, SCALE_MAX))
- SCALE_HS_INIT(&su, strlen(arg->value[pos]) + 2);
+ SCALE_HS_INIT(&su, strlen(arg->value[pos]));
- return(term_hspan(&su));
+ /* XXX: pachemu? */
+ return(term_hspan(&su) + 2);
}
-/* FIXME: put in utility file for front-ends. */
static int
arg_listtype(const struct mdoc_node *n)
{
diff --git a/term.c b/term.c
index b04f8db3..b125d4b0 100644
--- a/term.c
+++ b/term.c
@@ -1,4 +1,4 @@
-/* $Id: term.c,v 1.107 2009/10/18 19:03:37 kristaps Exp $ */
+/* $Id: term.c,v 1.108 2009/10/19 15:18:30 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se>
*
@@ -602,18 +602,21 @@ term_hspan(const struct roffsu *su)
{
double r;
+ /* XXX: CM, IN, and PT are approximations. */
+
switch (su->unit) {
case (SCALE_CM):
- r = (4 * su->scale) + 2; /* FIXME: double-check. */
+ r = 4 * su->scale;
break;
case (SCALE_IN):
- r = (10 * su->scale) + 2; /* FIXME: double-check. */
+ /* XXX: this is an approximation. */
+ r = 10 * su->scale;
break;
case (SCALE_PC):
- r = (10 * su->scale) / 6; /* FIXME: double-check. */
+ r = (10 * su->scale) / 6;
break;
case (SCALE_PT):
- r = (10 * su->scale) / 72; /* FIXME: double-check. */
+ r = (10 * su->scale) / 72;
break;
case (SCALE_MM):
r = su->scale / 1000; /* FIXME: double-check. */