From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from localhost (fantadrom.bsd.lv [local]) by fantadrom.bsd.lv (OpenSMTPD) with ESMTPA id 220a7f42 for ; Thu, 3 Jan 2019 22:25:04 -0500 (EST) Date: Thu, 3 Jan 2019 22:25:04 -0500 (EST) X-Mailinglist: mandoc-source Reply-To: source@mandoc.bsd.lv MIME-Version: 1.0 From: schwarze@mandoc.bsd.lv To: source@mandoc.bsd.lv Subject: mandoc: Simplify the roff(7) .ce and .rj terminal formatter by using the X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Message-ID: <05f9520ee5a97982@fantadrom.bsd.lv> Log Message: ----------- Simplify the roff(7) .ce and .rj terminal formatter by using the new TERMP_CENTER and TERMP_RIGHT flags. No functional change. Modified Files: -------------- mandoc: roff_term.c Revision Data ------------- Index: roff_term.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/roff_term.c,v retrieving revision 1.18 retrieving revision 1.19 diff -Lroff_term.c -Lroff_term.c -u -p -r1.18 -r1.19 --- roff_term.c +++ roff_term.c @@ -1,6 +1,6 @@ /* $Id$ */ /* - * Copyright (c) 2010,2014,2015,2017,2018 Ingo Schwarze + * Copyright (c) 2010,2014,2015,2017-2019 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -79,27 +79,16 @@ static void roff_term_pre_ce(ROFF_TERM_ARGS) { const struct roff_node *nc1, *nc2; - size_t len, lm; roff_term_pre_br(p, n); - lm = p->tcol->offset; + p->flags |= n->tok == ROFF_ce ? TERMP_CENTER : TERMP_RIGHT; nc1 = n->child->next; while (nc1 != NULL) { nc2 = nc1; - len = 0; do { - if (nc2->type == ROFFT_TEXT) { - if (len) - len++; - len += term_strlen(p, nc2->string); - } nc2 = nc2->next; } while (nc2 != NULL && (nc2->type != ROFFT_TEXT || (nc2->flags & NODE_LINE) == 0)); - p->tcol->offset = len >= p->tcol->rmargin ? 0 : - lm + len >= p->tcol->rmargin ? p->tcol->rmargin - len : - n->tok == ROFF_rj ? p->tcol->rmargin - len : - (lm + p->tcol->rmargin - len) / 2; while (nc1 != nc2) { if (nc1->type == ROFFT_TEXT) term_word(p, nc1->string); @@ -110,7 +99,7 @@ roff_term_pre_ce(ROFF_TERM_ARGS) p->flags |= TERMP_NOSPACE; term_flushln(p); } - p->tcol->offset = lm; + p->flags &= ~(TERMP_CENTER | TERMP_RIGHT); } static void -- To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv