]> git.cameronkatri.com Git - mandoc.git/blobdiff - mdoc.h
correctly handle scaling units after .PD
[mandoc.git] / mdoc.h
diff --git a/mdoc.h b/mdoc.h
index ac8bed8d507733b2c7be76415e607b80b5871c8d..05e23992f8724fddde70652fb2989b431d63334e 100644 (file)
--- a/mdoc.h
+++ b/mdoc.h
@@ -1,4 +1,4 @@
-/*     $Id: mdoc.h,v 1.127 2014/03/30 19:47:48 schwarze Exp $ */
+/*     $Id: mdoc.h,v 1.133 2014/12/18 03:10:11 schwarze Exp $ */
 /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  *
@@ -14,8 +14,6 @@
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
-#ifndef MDOC_H
-#define MDOC_H
 
 enum   mdoct {
        MDOC_Ap = 0,
@@ -187,7 +185,7 @@ enum        mdoc_type {
        MDOC_ROOT
 };
 
-/* 
+/*
  * Section (named/unnamed) of `Sh'.   Note that these appear in the
  * conventional order imposed by mdoc.7.  In the case of SEC_NONE, no
  * section has been invoked (this shouldn't happen).  SEC_CUSTOM refers
@@ -199,6 +197,7 @@ enum        mdoc_sec {
        SEC_LIBRARY, /* LIBRARY */
        SEC_SYNOPSIS, /* SYNOPSIS */
        SEC_DESCRIPTION, /* DESCRIPTION */
+       SEC_CONTEXT, /* CONTEXT */
        SEC_IMPLEMENTATION, /* IMPLEMENTATION NOTES */
        SEC_RETURN_VALUES, /* RETURN VALUES */
        SEC_ENVIRONMENT,  /* ENVIRONMENT */
@@ -215,7 +214,7 @@ enum        mdoc_sec {
        SEC_CAVEATS, /* CAVEATS */
        SEC_BUGS, /* BUGS */
        SEC_SECURITY, /* SECURITY */
-       SEC_CUSTOM, 
+       SEC_CUSTOM,
        SEC__MAX
 };
 
@@ -229,11 +228,11 @@ struct    mdoc_meta {
        char             *name; /* leading `Nm' name */
 };
 
-/* 
- * An argument to a macro (multiple values = `-column xxx yyy'). 
+/*
+ * An argument to a macro (multiple values = `-column xxx yyy').
  */
 struct mdoc_argv {
-       enum mdocargt     arg; /* type of argument */
+       enum mdocargt     arg; /* type of argument */
        int               line;
        int               pos;
        size_t            sz; /* elements in "value" */
@@ -245,7 +244,7 @@ struct      mdoc_argv {
  * blocks have multiple instances of the same arguments spread across
  * the HEAD, BODY, TAIL, and BLOCK node types.
  */
-struct         mdoc_arg {
+struct mdoc_arg {
        size_t            argc;
        struct mdoc_argv *argv;
        unsigned int      refcnt;
@@ -279,7 +278,7 @@ enum        mdoc_list {
 
 enum   mdoc_disp {
        DISP__NONE = 0,
-       DISP_centred, /* -centered */
+       DISP_centered, /* -centered */
        DISP_ragged, /* -ragged */
        DISP_unfilled, /* -unfilled */
        DISP_filled, /* -filled */
@@ -333,15 +332,16 @@ struct    mdoc_rs {
  * provided, etc.
  */
 union  mdoc_data {
-       struct mdoc_an    An;
+       struct mdoc_an    An;
        struct mdoc_bd    Bd;
        struct mdoc_bf    Bf;
        struct mdoc_bl    Bl;
+       struct mdoc_node *Es;
        struct mdoc_rs    Rs;
 };
 
-/* 
- * Single node in tree-linked AST. 
+/*
+ * Single node in tree-linked AST.
  */
 struct mdoc_node {
        struct mdoc_node *parent; /* parent AST node */
@@ -356,6 +356,7 @@ struct      mdoc_node {
        enum mdoct        tok; /* tok or MDOC__MAX if none */
        int               flags;
 #define        MDOC_VALID       (1 << 0) /* has been validated */
+#define        MDOC_BREAK       (1 << 1) /* has broken another block */
 #define        MDOC_EOS         (1 << 2) /* at sentence boundary */
 #define        MDOC_LINE        (1 << 3) /* first macro/text on line */
 #define        MDOC_SYNPRETTY   (1 << 4) /* SYNOPSIS-style formatting */
@@ -393,5 +394,3 @@ const struct mdoc_meta *mdoc_meta(const struct mdoc *);
 void mdoc_deroff(char **, const struct mdoc_node *);
 
 __END_DECLS
-
-#endif /*!MDOC_H*/