]> git.cameronkatri.com Git - mandoc.git/blobdiff - roff.h
implement the GNU man-ext .TQ macro in man(7),
[mandoc.git] / roff.h
diff --git a/roff.h b/roff.h
index 7cc4ad272f44522b4b96384c297dd87138af212d..161c9a60a5cf6018ae1a9c57273072145dde33f4 100644 (file)
--- a/roff.h
+++ b/roff.h
@@ -1,4 +1,4 @@
-/*     $Id: roff.h,v 1.53 2017/06/14 13:00:31 schwarze Exp $   */
+/*     $Id: roff.h,v 1.60 2018/08/16 23:43:37 schwarze Exp $   */
 /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2013, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
@@ -26,12 +26,6 @@ enum roff_macroset {
        MACROSET_MAN
 };
 
-enum   mdoc_os {
-       MDOC_OS_OTHER = 0,
-       MDOC_OS_NETBSD,
-       MDOC_OS_OPENBSD
-};
-
 enum   roff_sec {
        SEC_NONE = 0,
        SEC_NAME,
@@ -67,6 +61,7 @@ enum  roff_type {
        ROFFT_TAIL,
        ROFFT_ELEM,
        ROFFT_TEXT,
+       ROFFT_COMMENT,
        ROFFT_TBL,
        ROFFT_EQN
 };
@@ -77,6 +72,7 @@ enum  roff_tok {
        ROFF_ft,
        ROFF_ll,
        ROFF_mc,
+       ROFF_po,
        ROFF_rj,
        ROFF_sp,
        ROFF_ta,
@@ -245,7 +241,6 @@ enum        roff_tok {
        ROFF_pm,
        ROFF_pn,
        ROFF_pnr,
-       ROFF_po,
        ROFF_ps,
        ROFF_psbb,
        ROFF_pshape,
@@ -443,6 +438,7 @@ enum        roff_tok {
        MAN_SH,
        MAN_SS,
        MAN_TP,
+       MAN_TQ,
        MAN_LP,
        MAN_PP,
        MAN_P,
@@ -473,6 +469,8 @@ enum        roff_tok {
        MAN_EE,
        MAN_UR,
        MAN_UE,
+       MAN_MT,
+       MAN_ME,
        MAN_MAX
 };
 
@@ -503,7 +501,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;
@@ -534,7 +532,8 @@ struct      roff_meta {
        char             *name;    /* Leading manual name. */
        char             *date;    /* Normalized date. */
        int               hasbody; /* Document is not empty. */
-       enum mdoc_os      os_e;    /* Operating system. */
+       int               rcsids;  /* Bits indexed by enum mandoc_os. */
+       enum mandoc_os    os_e;    /* Operating system. */
 };
 
 struct roff_man {
@@ -543,7 +542,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. */