]> git.cameronkatri.com Git - mandoc.git/blobdiff - roff.h
undocumented options -O outfilename and -O tagfilename
[mandoc.git] / roff.h
diff --git a/roff.h b/roff.h
index a65e5508558fa2c3e5fa49009010ba85c3c40ccd..2933eb9c0bf83eb88fd4f2501185e01e98ed70e2 100644 (file)
--- a/roff.h
+++ b/roff.h
@@ -1,7 +1,7 @@
-/*     $Id: roff.h,v 1.68 2018/12/31 08:18:12 schwarze Exp $   */
+/* $Id: roff.h,v 1.74 2020/04/08 11:56:03 schwarze Exp $       */
 /*
+ * Copyright (c) 2013-2015, 2017-2020 Ingo Schwarze <schwarze@openbsd.org>
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
- * Copyright (c) 2013,2014,2015,2017,2018 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
@@ -437,6 +437,7 @@ enum        roff_tok {
        MDOC__Q,
        MDOC__U,
        MDOC_Ta,
+       MDOC_Tg,
        MDOC_MAX,
        MAN_TH,
        MAN_SH,
@@ -505,6 +506,7 @@ struct      roff_node {
        struct mdoc_arg  *args;    /* BLOCK/ELEM */
        union mdoc_data  *norm;    /* Normalized arguments. */
        char             *string;  /* TEXT */
+       char             *tag;     /* For less(1) :t and HTML id=. */
        struct tbl_span  *span;    /* TBL */
        struct eqn_box   *eqn;     /* EQN */
        int               line;    /* Input file line number. */
@@ -521,6 +523,8 @@ struct      roff_node {
 #define        NODE_NOFILL      (1 << 8)  /* Fill mode switched off. */
 #define        NODE_NOSRC       (1 << 9)  /* Generated node, not in input file. */
 #define        NODE_NOPRT       (1 << 10) /* Shall not print anything. */
+#define        NODE_ID          (1 << 11) /* Target for deep linking. */
+#define        NODE_HREF        (1 << 12) /* Link to another place in this page. */
        int               prev_font; /* Before entering this node. */
        int               aux;     /* Decoded node data, type-dependent. */
        enum roff_tok     tok;     /* Request or macro ID. */
@@ -548,4 +552,10 @@ struct     roff_meta {
 extern const char *const *roff_name;
 
 
-void            deroff(char **, const struct roff_node *);
+int              arch_valid(const char *, enum mandoc_os);
+void             deroff(char **, const struct roff_node *);
+struct roff_node *roff_node_child(struct roff_node *);
+struct roff_node *roff_node_next(struct roff_node *);
+struct roff_node *roff_node_prev(struct roff_node *);
+int              roff_node_transparent(struct roff_node *);
+int              roff_tok_transparent(enum roff_tok);