version 1.360, 2017/06/04 18:50:35 |
version 1.361, 2017/06/04 22:44:15 |
Line 1413 termp_fa_pre(DECL_ARGS) |
|
Line 1413 termp_fa_pre(DECL_ARGS) |
|
static int |
static int |
termp_bd_pre(DECL_ARGS) |
termp_bd_pre(DECL_ARGS) |
{ |
{ |
size_t lm, len, rm, rmax; |
size_t lm, len; |
struct roff_node *nn; |
struct roff_node *nn; |
int offset; |
int offset; |
|
|
Line 1460 termp_bd_pre(DECL_ARGS) |
|
Line 1460 termp_bd_pre(DECL_ARGS) |
|
} |
} |
|
|
lm = p->offset; |
lm = p->offset; |
rm = p->rmargin; |
p->flags |= TERMP_BRNEVER; |
rmax = p->maxrmargin; |
|
p->rmargin = p->maxrmargin = TERM_MAXMARGIN; |
|
|
|
for (nn = n->child; nn; nn = nn->next) { |
for (nn = n->child; nn; nn = nn->next) { |
if (DISP_centered == n->norm->Bd.type) { |
if (DISP_centered == n->norm->Bd.type) { |
if (nn->type == ROFFT_TEXT) { |
if (nn->type == ROFFT_TEXT) { |
len = term_strlen(p, nn->string); |
len = term_strlen(p, nn->string); |
p->offset = len >= rm ? 0 : |
p->offset = len >= p->rmargin ? 0 : |
lm + len >= rm ? rm - len : |
lm + len >= p->rmargin ? p->rmargin - len : |
(lm + rm - len) / 2; |
(lm + p->rmargin - len) / 2; |
} else |
} else |
p->offset = lm; |
p->offset = lm; |
} |
} |
Line 1500 termp_bd_pre(DECL_ARGS) |
|
Line 1497 termp_bd_pre(DECL_ARGS) |
|
term_flushln(p); |
term_flushln(p); |
p->flags |= TERMP_NOSPACE; |
p->flags |= TERMP_NOSPACE; |
} |
} |
|
p->flags &= ~TERMP_BRNEVER; |
p->rmargin = rm; |
|
p->maxrmargin = rmax; |
|
return 0; |
return 0; |
} |
} |
|
|
static void |
static void |
termp_bd_post(DECL_ARGS) |
termp_bd_post(DECL_ARGS) |
{ |
{ |
size_t rm, rmax; |
|
|
|
if (n->type != ROFFT_BODY) |
if (n->type != ROFFT_BODY) |
return; |
return; |
|
|
rm = p->rmargin; |
|
rmax = p->maxrmargin; |
|
|
|
if (DISP_literal == n->norm->Bd.type || |
if (DISP_literal == n->norm->Bd.type || |
DISP_unfilled == n->norm->Bd.type) |
DISP_unfilled == n->norm->Bd.type) |
p->rmargin = p->maxrmargin = TERM_MAXMARGIN; |
p->flags |= TERMP_BRNEVER; |
|
|
p->flags |= TERMP_NOSPACE; |
p->flags |= TERMP_NOSPACE; |
term_newln(p); |
term_newln(p); |
|
p->flags &= ~TERMP_BRNEVER; |
p->rmargin = rm; |
|
p->maxrmargin = rmax; |
|
} |
} |
|
|
static int |
static int |