diff options
author | 2017-05-05 13:17:04 +0000 | |
---|---|---|
committer | 2017-05-05 13:17:04 +0000 | |
commit | 644b390b9489f095c08e2ee294f32b9461273182 (patch) | |
tree | 442fd84036dfe2370262754055d6d084379a1adc | |
parent | Remove /* FALLTHROUGH */ that isn't (and shouldn't). (diff) | |
download | wireguard-openbsd-644b390b9489f095c08e2ee294f32b9461273182.tar.xz wireguard-openbsd-644b390b9489f095c08e2ee294f32b9461273182.zip |
move .ll to the roff modules
-rw-r--r-- | usr.bin/mandoc/man_html.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/man_macro.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/man_term.c | 12 | ||||
-rw-r--r-- | usr.bin/mandoc/man_validate.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/mandocdb.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_argv.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_html.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_macro.c | 5 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_man.c | 50 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_markdown.c | 8 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_state.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_term.c | 25 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_validate.c | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/roff.c | 9 | ||||
-rw-r--r-- | usr.bin/mandoc/roff.h | 6 | ||||
-rw-r--r-- | usr.bin/mandoc/roff_term.c | 13 | ||||
-rw-r--r-- | usr.bin/mandoc/roff_validate.c | 3 |
17 files changed, 62 insertions, 93 deletions
diff --git a/usr.bin/mandoc/man_html.c b/usr.bin/mandoc/man_html.c index 7346cf2e7b6..fc6d9ed59bf 100644 --- a/usr.bin/mandoc/man_html.c +++ b/usr.bin/mandoc/man_html.c @@ -1,4 +1,4 @@ -/* $OpenBSD: man_html.c,v 1.92 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: man_html.c,v 1.93 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2013, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -105,7 +105,6 @@ static const struct htmlman __mans[MAN_MAX - MAN_TH] = { { NULL, NULL }, /* EE */ { man_UR_pre, NULL }, /* UR */ { NULL, NULL }, /* UE */ - { man_ign_pre, NULL }, /* ll */ }; static const struct htmlman *const mans = __mans - MAN_TH; diff --git a/usr.bin/mandoc/man_macro.c b/usr.bin/mandoc/man_macro.c index 6371e385cba..a1304c0f373 100644 --- a/usr.bin/mandoc/man_macro.c +++ b/usr.bin/mandoc/man_macro.c @@ -1,4 +1,4 @@ -/* $OpenBSD: man_macro.c,v 1.80 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: man_macro.c,v 1.81 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2012-2015, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -74,7 +74,6 @@ const struct man_macro __man_macros[MAN_MAX - MAN_TH] = { { in_line_eoln, MAN_BSCOPE }, /* EE */ { blk_exp, MAN_BSCOPE }, /* UR */ { blk_close, MAN_BSCOPE }, /* UE */ - { in_line_eoln, 0 }, /* ll */ }; const struct man_macro *const man_macros = __man_macros - MAN_TH; diff --git a/usr.bin/mandoc/man_term.c b/usr.bin/mandoc/man_term.c index e9bdd235f80..b57891320bb 100644 --- a/usr.bin/mandoc/man_term.c +++ b/usr.bin/mandoc/man_term.c @@ -1,4 +1,4 @@ -/* $OpenBSD: man_term.c,v 1.148 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: man_term.c,v 1.149 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010-2015, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -81,7 +81,6 @@ static int pre_alternate(DECL_ARGS); static int pre_ign(DECL_ARGS); static int pre_in(DECL_ARGS); static int pre_literal(DECL_ARGS); -static int pre_ll(DECL_ARGS); static int pre_sp(DECL_ARGS); static void post_IP(DECL_ARGS); @@ -128,7 +127,6 @@ static const struct termact __termacts[MAN_MAX - MAN_TH] = { { pre_literal, NULL, 0 }, /* EE */ { pre_UR, post_UR, 0 }, /* UR */ { NULL, NULL, 0 }, /* UE */ - { pre_ll, NULL, MAN_NOTEXT }, /* ll */ }; static const struct termact *termacts = __termacts - MAN_TH; @@ -215,14 +213,6 @@ pre_ign(DECL_ARGS) } static int -pre_ll(DECL_ARGS) -{ - - term_setwidth(p, n->child != NULL ? n->child->string : NULL); - return 0; -} - -static int pre_I(DECL_ARGS) { diff --git a/usr.bin/mandoc/man_validate.c b/usr.bin/mandoc/man_validate.c index c7310470c23..7fa8e9fbb8e 100644 --- a/usr.bin/mandoc/man_validate.c +++ b/usr.bin/mandoc/man_validate.c @@ -1,4 +1,4 @@ -/* $OpenBSD: man_validate.c,v 1.96 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: man_validate.c,v 1.97 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2012-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -87,7 +87,6 @@ static const v_check __man_valids[MAN_MAX - MAN_TH] = { NULL, /* EE */ post_UR, /* UR */ NULL, /* UE */ - NULL, /* ll */ }; static const v_check *man_valids = __man_valids - MAN_TH; diff --git a/usr.bin/mandoc/mandocdb.c b/usr.bin/mandoc/mandocdb.c index deb42744948..9bf8a78169f 100644 --- a/usr.bin/mandoc/mandocdb.c +++ b/usr.bin/mandoc/mandocdb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mandocdb.c,v 1.196 2017/05/04 17:48:24 schwarze Exp $ */ +/* $OpenBSD: mandocdb.c,v 1.197 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2011-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -290,7 +290,6 @@ static const struct mdoc_handler __mdocs[MDOC_MAX - MDOC_Dd] = { { NULL, 0, 0 }, /* sp */ { NULL, 0, 0 }, /* %U */ { NULL, 0, 0 }, /* Ta */ - { NULL, 0, 0 }, /* ll */ }; static const struct mdoc_handler *const mdocs = __mdocs - MDOC_Dd; diff --git a/usr.bin/mandoc/mdoc_argv.c b/usr.bin/mandoc/mdoc_argv.c index 9e6ef9c43d3..cdb21b63084 100644 --- a/usr.bin/mandoc/mdoc_argv.c +++ b/usr.bin/mandoc/mdoc_argv.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_argv.c,v 1.68 2017/05/04 17:48:24 schwarze Exp $ */ +/* $OpenBSD: mdoc_argv.c,v 1.69 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2012, 2014-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -264,7 +264,6 @@ static const struct mdocarg __mdocargs[MDOC_MAX - MDOC_Dd] = { { ARGSFL_NONE, NULL }, /* sp */ { ARGSFL_NONE, NULL }, /* %U */ { ARGSFL_NONE, NULL }, /* Ta */ - { ARGSFL_NONE, NULL }, /* ll */ }; static const struct mdocarg *const mdocargs = __mdocargs - MDOC_Dd; diff --git a/usr.bin/mandoc/mdoc_html.c b/usr.bin/mandoc/mdoc_html.c index c6445dcaf4a..f5d8f0da901 100644 --- a/usr.bin/mandoc/mdoc_html.c +++ b/usr.bin/mandoc/mdoc_html.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_html.c,v 1.158 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: mdoc_html.c,v 1.159 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -238,7 +238,6 @@ static const struct htmlmdoc __mdocs[MDOC_MAX - MDOC_Dd] = { {mdoc_sp_pre, NULL}, /* sp */ {mdoc__x_pre, mdoc__x_post}, /* %U */ {NULL, NULL}, /* Ta */ - {mdoc_skip_pre, NULL}, /* ll */ }; static const struct htmlmdoc *const mdocs = __mdocs - MDOC_Dd; diff --git a/usr.bin/mandoc/mdoc_macro.c b/usr.bin/mandoc/mdoc_macro.c index c3ee37d4d2c..9dfd8799eca 100644 --- a/usr.bin/mandoc/mdoc_macro.c +++ b/usr.bin/mandoc/mdoc_macro.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_macro.c,v 1.178 2017/05/04 17:48:24 schwarze Exp $ */ +/* $OpenBSD: mdoc_macro.c,v 1.179 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2012-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -198,7 +198,6 @@ const struct mdoc_macro __mdoc_macros[MDOC_MAX - MDOC_Dd] = { { in_line_eoln, 0 }, /* sp */ { in_line_eoln, 0 }, /* %U */ { phrase_ta, MDOC_CALLABLE | MDOC_PARSED | MDOC_JOIN }, /* Ta */ - { in_line_eoln, MDOC_PROLOGUE }, /* ll */ }; const struct mdoc_macro *const mdoc_macros = __mdoc_macros - MDOC_Dd; @@ -248,7 +247,7 @@ lookup(struct roff_man *mdoc, int from, int line, int ppos, const char *p) if (res != TOKEN_NONE) { if (mdoc_macros[res].flags & MDOC_CALLABLE) return res; - if (res != MDOC_sp && res != MDOC_ll) + if (res != MDOC_sp) mandoc_msg(MANDOCERR_MACRO_CALL, mdoc->parse, line, ppos, p); } diff --git a/usr.bin/mandoc/mdoc_man.c b/usr.bin/mandoc/mdoc_man.c index d182b0b0d94..2134b41336e 100644 --- a/usr.bin/mandoc/mdoc_man.c +++ b/usr.bin/mandoc/mdoc_man.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_man.c,v 1.109 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: mdoc_man.c,v 1.110 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2011-2017 Ingo Schwarze <schwarze@openbsd.org> * @@ -31,10 +31,13 @@ #define DECL_ARGS const struct roff_meta *meta, struct roff_node *n +typedef int (*int_fp)(DECL_ARGS); +typedef void (*void_fp)(DECL_ARGS); + struct manact { - int (*cond)(DECL_ARGS); /* DON'T run actions */ - int (*pre)(DECL_ARGS); /* pre-node action */ - void (*post)(DECL_ARGS); /* post-node action */ + int_fp cond; /* DON'T run actions */ + int_fp pre; /* pre-node action */ + void_fp post; /* post-node action */ const char *prefix; /* pre-node string constant */ const char *suffix; /* post-node string constant */ }; @@ -78,7 +81,7 @@ static int pre_bd(DECL_ARGS); static int pre_bf(DECL_ARGS); static int pre_bk(DECL_ARGS); static int pre_bl(DECL_ARGS); -static int pre_br(DECL_ARGS); +static void pre_br(DECL_ARGS); static int pre_dl(DECL_ARGS); static int pre_en(DECL_ARGS); static int pre_enc(DECL_ARGS); @@ -91,13 +94,13 @@ static int pre_fd(DECL_ARGS); static int pre_fl(DECL_ARGS); static int pre_fn(DECL_ARGS); static int pre_fo(DECL_ARGS); -static int pre_ft(DECL_ARGS); +static void pre_ft(DECL_ARGS); static int pre_Ft(DECL_ARGS); static int pre_in(DECL_ARGS); static int pre_it(DECL_ARGS); static int pre_lk(DECL_ARGS); static int pre_li(DECL_ARGS); -static int pre_ll(DECL_ARGS); +static void pre_ll(DECL_ARGS); static int pre_nm(DECL_ARGS); static int pre_no(DECL_ARGS); static int pre_ns(DECL_ARGS); @@ -119,6 +122,12 @@ static void print_width(const struct mdoc_bl *, static void print_count(int *); static void print_node(DECL_ARGS); +static const void_fp roff_manacts[ROFF_MAX] = { + pre_br, + pre_ft, + pre_ll, +}; + static const struct manact __manacts[MDOC_MAX - MDOC_Dd] = { { NULL, NULL, NULL, NULL, NULL }, /* Dd */ { NULL, NULL, NULL, NULL, NULL }, /* Dt */ @@ -241,7 +250,6 @@ static const struct manact __manacts[MDOC_MAX - MDOC_Dd] = { { NULL, pre_sp, post_sp, NULL, NULL }, /* sp */ { NULL, NULL, post_percent, NULL, NULL }, /* %U */ { NULL, NULL, NULL, NULL, NULL }, /* Ta */ - { NULL, pre_ll, post_sp, NULL, NULL }, /* ll */ }; static const struct manact *const manacts = __manacts - MDOC_Dd; @@ -651,16 +659,8 @@ print_node(DECL_ARGS) else if (outflags & MMAN_Sm) outflags |= MMAN_spc; } else if (n->tok < ROFF_MAX) { - switch (n->tok) { - case ROFF_br: - do_sub = pre_br(meta, n); - break; - case ROFF_ft: - do_sub = pre_ft(meta, n); - break; - default: - abort(); - } + (*roff_manacts[n->tok])(meta, n); + return; } else { assert(n->tok >= MDOC_Dd && n->tok < MDOC_MAX); /* @@ -1066,12 +1066,10 @@ post_bl(DECL_ARGS) } -static int +static void pre_br(DECL_ARGS) { - outflags |= MMAN_br; - return 0; } static int @@ -1324,13 +1322,12 @@ pre_Ft(DECL_ARGS) return 1; } -static int +static void pre_ft(DECL_ARGS) { print_line(".ft", 0); print_word(n->child->string); outflags |= MMAN_nl; - return 0; } static int @@ -1565,12 +1562,13 @@ pre_lk(DECL_ARGS) return 0; } -static int +static void pre_ll(DECL_ARGS) { - print_line(".ll", 0); - return 1; + if (n->child != NULL) + print_word(n->child->string); + outflags |= MMAN_nl; } static int diff --git a/usr.bin/mandoc/mdoc_markdown.c b/usr.bin/mandoc/mdoc_markdown.c index fb92cac0880..d2228bb1d80 100644 --- a/usr.bin/mandoc/mdoc_markdown.c +++ b/usr.bin/mandoc/mdoc_markdown.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_markdown.c,v 1.19 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: mdoc_markdown.c,v 1.20 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2017 Ingo Schwarze <schwarze@openbsd.org> * @@ -19,7 +19,6 @@ #include <assert.h> #include <ctype.h> #include <stdio.h> -#include <stdlib.h> #include <string.h> #include "mandoc_aux.h" @@ -226,7 +225,6 @@ static const struct md_act __md_acts[MDOC_MAX - MDOC_Dd] = { { NULL, md_pre_Pp, NULL, NULL, NULL }, /* sp */ { NULL, md_pre_Lk, md_post_pc, NULL, NULL }, /* %U */ { NULL, NULL, NULL, NULL, NULL }, /* Ta */ - { NULL, NULL, NULL, NULL, NULL }, /* ll */ }; static const struct md_act *const md_acts = __md_acts - MDOC_Dd; @@ -325,11 +323,9 @@ md_node(struct roff_node *n) case ROFF_br: process_children = md_pre_br(n); break; - case ROFF_ft: + default: process_children = 0; break; - default: - abort(); } } else { assert(n->tok >= MDOC_Dd && n->tok < MDOC_MAX); diff --git a/usr.bin/mandoc/mdoc_state.c b/usr.bin/mandoc/mdoc_state.c index 9a9ff17394a..280240ab707 100644 --- a/usr.bin/mandoc/mdoc_state.c +++ b/usr.bin/mandoc/mdoc_state.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_state.c,v 1.6 2017/05/04 17:48:24 schwarze Exp $ */ +/* $OpenBSD: mdoc_state.c,v 1.7 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org> * @@ -158,7 +158,6 @@ static const state_handler __state_handlers[MDOC_MAX - MDOC_Dd] = { NULL, /* sp */ NULL, /* %U */ NULL, /* Ta */ - NULL, /* ll */ }; static const state_handler *const state_handlers = __state_handlers - MDOC_Dd; diff --git a/usr.bin/mandoc/mdoc_term.c b/usr.bin/mandoc/mdoc_term.c index 076516515de..49142bbf7ee 100644 --- a/usr.bin/mandoc/mdoc_term.c +++ b/usr.bin/mandoc/mdoc_term.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_term.c,v 1.252 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: mdoc_term.c,v 1.253 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2012-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -104,7 +104,6 @@ static int termp_ft_pre(DECL_ARGS); static int termp_in_pre(DECL_ARGS); static int termp_it_pre(DECL_ARGS); static int termp_li_pre(DECL_ARGS); -static int termp_ll_pre(DECL_ARGS); static int termp_lk_pre(DECL_ARGS); static int termp_nd_pre(DECL_ARGS); static int termp_nm_pre(DECL_ARGS); @@ -245,7 +244,6 @@ static const struct termact __termacts[MDOC_MAX - MDOC_Dd] = { { termp_sp_pre, NULL }, /* sp */ { NULL, termp____post }, /* %U */ { NULL, NULL }, /* Ta */ - { termp_ll_pre, NULL }, /* ll */ }; static const struct termact *const termacts = __termacts - MDOC_Dd; @@ -364,8 +362,7 @@ print_mdoc_node(DECL_ARGS) default: if (n->tok < ROFF_MAX) { roff_term_pre(p, n); - chld = 0; - break; + return; } assert(n->tok >= MDOC_Dd && n->tok < MDOC_MAX); if (termacts[n->tok].pre != NULL && @@ -389,9 +386,7 @@ print_mdoc_node(DECL_ARGS) case ROFFT_EQN: break; default: - if (n->tok < ROFF_MAX || - termacts[n->tok].post == NULL || - n->flags & NODE_ENDED) + if (termacts[n->tok].post == NULL || n->flags & NODE_ENDED) break; (void)(*termacts[n->tok].post)(p, &npair, meta, n); @@ -408,10 +403,8 @@ print_mdoc_node(DECL_ARGS) if (NODE_EOS & n->flags) p->flags |= TERMP_SENTENCE; - if (MDOC_ll != n->tok) { - p->offset = offset; - p->rmargin = rmargin; - } + p->offset = offset; + p->rmargin = rmargin; } static void @@ -603,14 +596,6 @@ print_bvspace(struct termp *p, static int -termp_ll_pre(DECL_ARGS) -{ - - term_setwidth(p, n->child != NULL ? n->child->string : NULL); - return 0; -} - -static int termp_it_pre(DECL_ARGS) { struct roffsu su; diff --git a/usr.bin/mandoc/mdoc_validate.c b/usr.bin/mandoc/mdoc_validate.c index c61aed58431..50ebbdca2cb 100644 --- a/usr.bin/mandoc/mdoc_validate.c +++ b/usr.bin/mandoc/mdoc_validate.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_validate.c,v 1.240 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: mdoc_validate.c,v 1.241 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -228,7 +228,6 @@ static const v_post __mdoc_valids[MDOC_MAX - MDOC_Dd] = { post_par, /* sp */ NULL, /* %U */ NULL, /* Ta */ - NULL, /* ll */ }; static const v_post *const mdoc_valids = __mdoc_valids - MDOC_Dd; diff --git a/usr.bin/mandoc/roff.c b/usr.bin/mandoc/roff.c index c063e04828a..455cb4c365d 100644 --- a/usr.bin/mandoc/roff.c +++ b/usr.bin/mandoc/roff.c @@ -1,4 +1,4 @@ -/* $OpenBSD: roff.c,v 1.169 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: roff.c,v 1.170 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010-2015, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -209,7 +209,7 @@ static enum rofferr roff_userdef(ROFF_ARGS); #define ROFFNUM_WHITE (1 << 1) /* Skip whitespace in roff_evalnum(). */ const char *__roff_name[MAN_MAX + 1] = { - "br", "ft", NULL, + "br", "ft", "ll", NULL, "ab", "ad", "af", "aln", "als", "am", "am1", "ami", "ami1", "as", "as1", "asciify", @@ -300,7 +300,7 @@ const char *__roff_name[MAN_MAX + 1] = { "Lk", "Mt", "Brq", "Bro", "Brc", "%C", "Es", "En", "Dx", "%Q", "sp", - "%U", "Ta", "ll", NULL, + "%U", "Ta", NULL, "TH", "SH", "SS", "TP", "LP", "PP", "P", "IP", "HP", "SM", "SB", "BI", @@ -310,13 +310,14 @@ const char *__roff_name[MAN_MAX + 1] = { "RE", "RS", "DT", "UC", "PD", "AT", "in", "OP", "EX", "EE", "UR", - "UE", "ll", NULL + "UE", NULL }; const char *const *roff_name = __roff_name; static struct roffmac roffs[TOKEN_NONE] = { { roff_br, NULL, NULL, 0 }, /* br */ { roff_onearg, NULL, NULL, 0 }, /* ft */ + { roff_onearg, NULL, NULL, 0 }, /* ll */ { NULL, NULL, NULL, 0 }, /* ROFF_MAX */ { roff_unsupp, NULL, NULL, 0 }, /* ab */ { roff_line_ignore, NULL, NULL, 0 }, /* ad */ diff --git a/usr.bin/mandoc/roff.h b/usr.bin/mandoc/roff.h index d2042595a2a..faa0b4fa75e 100644 --- a/usr.bin/mandoc/roff.h +++ b/usr.bin/mandoc/roff.h @@ -1,4 +1,4 @@ -/* $OpenBSD: roff.h,v 1.26 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: roff.h,v 1.27 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2013, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org> @@ -68,6 +68,7 @@ enum roff_type { enum roff_tok { ROFF_br = 0, ROFF_ft, + ROFF_ll, ROFF_MAX, ROFF_ab, ROFF_ad, @@ -196,7 +197,6 @@ enum roff_tok { ROFF_lg, ROFF_lhang, ROFF_linetabs, - /* MAN_ll, MDOC_ll */ ROFF_lnr, ROFF_lnrf, ROFF_lpfx, @@ -432,7 +432,6 @@ enum roff_tok { MDOC_sp, MDOC__U, MDOC_Ta, - MDOC_ll, MDOC_MAX, MAN_TH, MAN_SH, @@ -469,7 +468,6 @@ enum roff_tok { MAN_EE, MAN_UR, MAN_UE, - MAN_ll, MAN_MAX }; diff --git a/usr.bin/mandoc/roff_term.c b/usr.bin/mandoc/roff_term.c index e91c8302499..22638b6de7e 100644 --- a/usr.bin/mandoc/roff_term.c +++ b/usr.bin/mandoc/roff_term.c @@ -1,6 +1,6 @@ -/* $OpenBSD: roff_term.c,v 1.2 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: roff_term.c,v 1.3 2017/05/05 13:17:04 schwarze Exp $ */ /* - * Copyright (c) 2010, 2017 Ingo Schwarze <schwarze@openbsd.org> + * Copyright (c) 2010, 2014, 2017 Ingo Schwarze <schwarze@openbsd.org> * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -17,6 +17,7 @@ #include <sys/types.h> #include <assert.h> +#include <stddef.h> #include "roff.h" #include "out.h" @@ -28,10 +29,12 @@ typedef void (*roff_term_pre_fp)(ROFF_TERM_ARGS); static void roff_term_pre_br(ROFF_TERM_ARGS); static void roff_term_pre_ft(ROFF_TERM_ARGS); +static void roff_term_pre_ll(ROFF_TERM_ARGS); static const roff_term_pre_fp roff_term_pre_acts[ROFF_MAX] = { roff_term_pre_br, /* br */ roff_term_pre_ft, /* ft */ + roff_term_pre_ll, /* ft */ }; @@ -78,3 +81,9 @@ roff_term_pre_ft(ROFF_TERM_ARGS) break; } } + +static void +roff_term_pre_ll(ROFF_TERM_ARGS) +{ + term_setwidth(p, n->child != NULL ? n->child->string : NULL); +} diff --git a/usr.bin/mandoc/roff_validate.c b/usr.bin/mandoc/roff_validate.c index c61850f8ebf..a08457f013a 100644 --- a/usr.bin/mandoc/roff_validate.c +++ b/usr.bin/mandoc/roff_validate.c @@ -1,4 +1,4 @@ -/* $OpenBSD: roff_validate.c,v 1.1 2017/05/05 02:06:17 schwarze Exp $ */ +/* $OpenBSD: roff_validate.c,v 1.2 2017/05/05 13:17:04 schwarze Exp $ */ /* * Copyright (c) 2010, 2017 Ingo Schwarze <schwarze@openbsd.org> * @@ -33,6 +33,7 @@ static void roff_valid_ft(ROFF_VALID_ARGS); static const roff_valid_fp roff_valids[ROFF_MAX] = { NULL, /* br */ roff_valid_ft, /* ft */ + NULL, /* ll */ }; |