]> git.cameronkatri.com Git - mandoc.git/blobdiff - mdoc_state.c
According to the tbl(7) manual, if a data cell contains only the
[mandoc.git] / mdoc_state.c
index 22a3d268d6eae2b92ce0bb841820fb7ecbd1ede4..d696ff27e06c40075b8f8805c3d2a9515ef2ee4d 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: mdoc_state.c,v 1.11 2018/12/14 01:18:26 schwarze Exp $ */
+/* $Id: mdoc_state.c,v 1.17 2020/06/22 19:20:40 schwarze Exp $ */
 /*
  * Copyright (c) 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
  *
@@ -14,6 +14,8 @@
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
+#include "config.h"
+
 #include <sys/types.h>
 
 #include <assert.h>
 #include "roff.h"
 #include "mdoc.h"
 #include "libmandoc.h"
+#include "roff_int.h"
 #include "libmdoc.h"
 
 #define STATE_ARGS  struct roff_man *mdoc, struct roff_node *n
 
 typedef        void    (*state_handler)(STATE_ARGS);
 
-static void     state_bd(STATE_ARGS);
 static void     state_bl(STATE_ARGS);
-static void     state_dl(STATE_ARGS);
 static void     state_sh(STATE_ARGS);
 static void     state_sm(STATE_ARGS);
 
@@ -45,8 +46,8 @@ static        const state_handler state_handlers[MDOC_MAX - MDOC_Dd] = {
        NULL,           /* Ss */
        NULL,           /* Pp */
        NULL,           /* D1 */
-       state_dl,       /* Dl */
-       state_bd,       /* Bd */
+       NULL,           /* Dl */
+       NULL,           /* Bd */
        NULL,           /* Ed */
        state_bl,       /* Bl */
        NULL,           /* El */
@@ -158,6 +159,7 @@ static      const state_handler state_handlers[MDOC_MAX - MDOC_Dd] = {
        NULL,           /* %Q */
        NULL,           /* %U */
        NULL,           /* Ta */
+       NULL,           /* Tg */
 };
 
 
@@ -178,33 +180,6 @@ mdoc_state(struct roff_man *mdoc, struct roff_node *n)
                (*handler)(mdoc, n);
 }
 
-void
-mdoc_state_reset(struct roff_man *mdoc)
-{
-
-       roff_setreg(mdoc->roff, "nS", 0, '=');
-       mdoc->flags = 0;
-}
-
-static void
-state_bd(STATE_ARGS)
-{
-       enum mdocargt arg;
-
-       if (n->type != ROFFT_HEAD &&
-           (n->type != ROFFT_BODY || n->end != ENDBODY_NOT))
-               return;
-
-       if (n->parent->args == NULL)
-               return;
-
-       arg = n->parent->args->argv[0].arg;
-       if (arg != MDOC_Literal && arg != MDOC_Unfilled)
-               return;
-
-       state_dl(mdoc, n);
-}
-
 static void
 state_bl(STATE_ARGS)
 {
@@ -229,22 +204,6 @@ state_bl(STATE_ARGS)
        }
 }
 
-static void
-state_dl(STATE_ARGS)
-{
-
-       switch (n->type) {
-       case ROFFT_HEAD:
-               mdoc->flags |= MDOC_LITERAL;
-               break;
-       case ROFFT_BODY:
-               mdoc->flags &= ~MDOC_LITERAL;
-               break;
-       default:
-               break;
-       }
-}
-
 static void
 state_sh(STATE_ARGS)
 {