=================================================================== RCS file: /cvs/mandoc/roff.h,v retrieving revision 1.46 retrieving revision 1.61 diff -u -p -r1.46 -r1.61 --- mandoc/roff.h 2017/05/05 15:17:32 1.46 +++ mandoc/roff.h 2018/08/18 02:08:27 1.61 @@ -1,7 +1,7 @@ -/* $Id: roff.h,v 1.46 2017/05/05 15:17:32 schwarze Exp $ */ +/* $Id: roff.h,v 1.61 2018/08/18 02:08:27 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons - * Copyright (c) 2013, 2014, 2015, 2017 Ingo Schwarze + * Copyright (c) 2013,2014,2015,2017,2018 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 @@ -61,15 +61,22 @@ enum roff_type { ROFFT_TAIL, ROFFT_ELEM, ROFFT_TEXT, + ROFFT_COMMENT, ROFFT_TBL, ROFFT_EQN }; enum roff_tok { ROFF_br = 0, + ROFF_ce, ROFF_ft, ROFF_ll, + ROFF_mc, + ROFF_po, + ROFF_rj, ROFF_sp, + ROFF_ta, + ROFF_ti, ROFF_MAX, ROFF_ab, ROFF_ad, @@ -98,7 +105,6 @@ enum roff_tok { ROFF_brpnl, ROFF_c2, ROFF_cc, - ROFF_ce, ROFF_cf, ROFF_cflags, ROFF_ch, @@ -204,7 +210,6 @@ enum roff_tok { ROFF_ls, ROFF_lsm, ROFF_lt, - ROFF_mc, ROFF_mediasize, ROFF_minss, ROFF_mk, @@ -236,7 +241,6 @@ enum roff_tok { ROFF_pm, ROFF_pn, ROFF_pnr, - ROFF_po, ROFF_ps, ROFF_psbb, ROFF_pshape, @@ -249,7 +253,6 @@ enum roff_tok { ROFF_return, ROFF_rfschar, ROFF_rhang, - ROFF_rj, ROFF_rm, ROFF_rn, ROFF_rnn, @@ -271,11 +274,9 @@ enum roff_tok { ROFF_sv, ROFF_sy, ROFF_T_, - ROFF_ta, ROFF_tc, ROFF_TE, ROFF_TH, - ROFF_ti, ROFF_tkf, ROFF_tl, ROFF_tm, @@ -309,6 +310,7 @@ enum roff_tok { ROFF_writem, ROFF_xflag, ROFF_cblock, + ROFF_RENAMED, ROFF_USERDEF, TOKEN_NONE, MDOC_Dd, @@ -436,6 +438,7 @@ enum roff_tok { MAN_SH, MAN_SS, MAN_TP, + MAN_TQ, MAN_LP, MAN_PP, MAN_P, @@ -461,11 +464,15 @@ enum roff_tok { MAN_PD, MAN_AT, MAN_in, + MAN_SY, + MAN_YS, MAN_OP, MAN_EX, MAN_EE, MAN_UR, MAN_UE, + MAN_MT, + MAN_ME, MAN_MAX }; @@ -496,7 +503,7 @@ struct roff_node { union mdoc_data *norm; /* Normalized arguments. */ char *string; /* TEXT */ const struct tbl_span *span; /* TBL */ - const struct eqn *eqn; /* EQN */ + struct eqn_box *eqn; /* EQN */ int line; /* Input file line number. */ int pos; /* Input file column number. */ int flags; @@ -527,6 +534,8 @@ struct roff_meta { char *name; /* Leading manual name. */ char *date; /* Normalized date. */ int hasbody; /* Document is not empty. */ + int rcsids; /* Bits indexed by enum mandoc_os. */ + enum mandoc_os os_e; /* Operating system. */ }; struct roff_man { @@ -535,7 +544,7 @@ struct roff_man { struct roff *roff; /* Roff parser state data. */ struct ohash *mdocmac; /* Mdoc macro lookup table. */ struct ohash *manmac; /* Man macro lookup table. */ - const char *defos; /* Default operating system. */ + const char *os_s; /* Default operating system. */ struct roff_node *first; /* The first node parsed. */ struct roff_node *last; /* The last node parsed. */ struct roff_node *last_es; /* The most recent Es node. */