version 1.76, 2013/12/31 18:07:06 |
version 1.77, 2014/01/22 20:58:35 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2010, 2011, 2012, 2013 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2010-2014 Ingo Schwarze <schwarze@openbsd.org> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
* purpose with or without fee is hereby granted, provided that the above |
* purpose with or without fee is hereby granted, provided that the above |
|
|
/* Regular word. */ |
/* Regular word. */ |
/* Break at the hyphen point if we overrun. */ |
/* Break at the hyphen point if we overrun. */ |
if (vend > vis && vend < bp && |
if (vend > vis && vend < bp && |
ASCII_HYPH == p->buf[j]) |
(ASCII_HYPH == p->buf[j] || |
|
ASCII_BREAK == p->buf[j])) |
jhy = j; |
jhy = j; |
|
|
vend += (*p->width)(p, p->buf[j]); |
vend += (*p->width)(p, p->buf[j]); |
|
|
vbl += (*p->width)(p, ' '); |
vbl += (*p->width)(p, ' '); |
continue; |
continue; |
} |
} |
|
if (ASCII_BREAK == p->buf[i]) |
|
continue; |
|
|
/* |
/* |
* Now we definitely know there will be |
* Now we definitely know there will be |
|
|
int ssz, skip, c; |
int ssz, skip, c; |
const char *seq, *rhs; |
const char *seq, *rhs; |
enum mandoc_esc esc; |
enum mandoc_esc esc; |
static const char rej[] = { '\\', ASCII_HYPH, ASCII_NBRSP, '\0' }; |
static const char rej[] = { '\\', ASCII_NBRSP, ASCII_HYPH, |
|
ASCII_BREAK, '\0' }; |
|
|
/* |
/* |
* Account for escaped sequences within string length |
* Account for escaped sequences within string length |
|
|
case (ASCII_HYPH): |
case (ASCII_HYPH): |
sz += cond_width(p, '-', &skip); |
sz += cond_width(p, '-', &skip); |
cp++; |
cp++; |
|
/* FALLTHROUGH */ |
|
case (ASCII_BREAK): |
break; |
break; |
default: |
default: |
break; |
break; |