summaryrefslogtreecommitdiff
path: root/usr.bin/mandoc/mdoc_term.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/mandoc/mdoc_term.c')
-rw-r--r--usr.bin/mandoc/mdoc_term.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/usr.bin/mandoc/mdoc_term.c b/usr.bin/mandoc/mdoc_term.c
index a41ce181264..ca3cfe56912 100644
--- a/usr.bin/mandoc/mdoc_term.c
+++ b/usr.bin/mandoc/mdoc_term.c
@@ -1,4 +1,4 @@
-/* $Id: mdoc_term.c,v 1.143 2012/07/09 23:52:47 schwarze Exp $ */
+/* $Id: mdoc_term.c,v 1.144 2012/07/10 14:35:57 schwarze Exp $ */
/*
* Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010, 2012 Ingo Schwarze <schwarze@openbsd.org>
@@ -723,12 +723,10 @@ termp_it_pre(DECL_ARGS)
case (LIST_dash):
/* FALLTHROUGH */
case (LIST_hyphen):
- if (width < term_len(p, 4))
- width = term_len(p, 4);
- break;
+ /* FALLTHROUGH */
case (LIST_enum):
- if (width < term_len(p, 5))
- width = term_len(p, 5);
+ if (width < term_len(p, 2))
+ width = term_len(p, 2);
break;
case (LIST_hang):
if (0 == width)
@@ -783,12 +781,18 @@ termp_it_pre(DECL_ARGS)
*/
switch (type) {
+ case (LIST_enum):
+ /*
+ * Weird special case.
+ * Very narrow enum lists actually hang.
+ */
+ if (width == term_len(p, 2))
+ p->flags |= TERMP_HANG;
+ /* FALLTHROUGH */
case (LIST_bullet):
/* FALLTHROUGH */
case (LIST_dash):
/* FALLTHROUGH */
- case (LIST_enum):
- /* FALLTHROUGH */
case (LIST_hyphen):
if (MDOC_HEAD == n->type)
p->flags |= TERMP_NOBREAK;