]> git.cameronkatri.com Git - mandoc.git/commitdiff
Added line numbering.
authorKristaps Dzonsons <kristaps@bsd.lv>
Wed, 7 Jan 2009 15:57:14 +0000 (15:57 +0000)
committerKristaps Dzonsons <kristaps@bsd.lv>
Wed, 7 Jan 2009 15:57:14 +0000 (15:57 +0000)
macro.c
mdoc.c
private.h
prologue.c

diff --git a/macro.c b/macro.c
index 6cc2895347b89e8c0b8aae5960b453c94ccc20b9..f7395c8b09af7ff62ed9537c0f8c5af5b47af652 100644 (file)
--- a/macro.c
+++ b/macro.c
@@ -1,4 +1,4 @@
-/* $Id: macro.c,v 1.25 2009/01/07 15:53:00 kristaps Exp $ */
+/* $Id: macro.c,v 1.26 2009/01/07 15:57:14 kristaps Exp $ */
 /*
  * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
  *
@@ -314,7 +314,7 @@ macro_close_explicit(MACRO_PROT_ARGS)
                                        return(0);
                                flushed = 1;
                        }
-                       if ( ! mdoc_macro(mdoc, c, lastarg, pos, buf))
+                       if ( ! mdoc_macro(mdoc, c, line, lastarg, pos, buf))
                                return(0);
                        break;
                }
@@ -405,7 +405,7 @@ macro_text(MACRO_PROT_ARGS)
                                return(0);
                        }
                        mdoc_argv_free(argc, argv);
-                       if ( ! mdoc_macro(mdoc, c, lastarg, pos, buf))
+                       if ( ! mdoc_macro(mdoc, c, line, lastarg, pos, buf))
                                return(0);
                        if (ppos > 1)
                                return(1);
@@ -504,7 +504,7 @@ macro_scoped(MACRO_PROT_ARGS)
                        continue;
                }
 
-               if ( ! mdoc_macro(mdoc, c, lastarg, pos, buf))
+               if ( ! mdoc_macro(mdoc, c, line, lastarg, pos, buf))
                        return(0);
                break;
        }
@@ -565,7 +565,7 @@ macro_scoped_line(MACRO_PROT_ARGS)
                        continue;
                }
 
-               if ( ! mdoc_macro(mdoc, c, lastarg, pos, buf))
+               if ( ! mdoc_macro(mdoc, c, line, lastarg, pos, buf))
                        return(0);
                break;
        }
@@ -645,7 +645,7 @@ macro_constant_scoped(MACRO_PROT_ARGS)
                                mdoc_body_alloc(mdoc, ppos, tok);
                                mdoc->next = MDOC_NEXT_CHILD;
                        }
-                       if ( ! mdoc_macro(mdoc, c, lastarg, pos, buf))
+                       if ( ! mdoc_macro(mdoc, c, line, lastarg, pos, buf))
                                return(0);
                        break;
                }
@@ -751,7 +751,7 @@ macro_constant_delimited(MACRO_PROT_ARGS)
                        if ( ! flushed && ! rewind_elem(mdoc, ppos, tok))
                                return(0);
                        flushed = 1;
-                       if ( ! mdoc_macro(mdoc, c, lastarg, pos, buf))
+                       if ( ! mdoc_macro(mdoc, c, line, lastarg, pos, buf))
                                return(0);
                        break;
                }
diff --git a/mdoc.c b/mdoc.c
index b97908ac7b9f8fe394ee10435572fc5eeb38e1c8..fc6d8afc5dd1c29527820c38b90a2568d5e1520d 100644 (file)
--- a/mdoc.c
+++ b/mdoc.c
@@ -1,4 +1,4 @@
-/* $Id: mdoc.c,v 1.20 2009/01/07 15:53:00 kristaps Exp $ */
+/* $Id: mdoc.c,v 1.21 2009/01/07 15:57:14 kristaps Exp $ */
 /*
  * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
  *
@@ -312,7 +312,7 @@ mdoc_parseln(struct mdoc *mdoc, int line, char *buf)
        while (buf[i] && isspace(buf[i]))
                i++;
 
-       if ( ! mdoc_macro(mdoc, c, 1, &i, buf)) {
+       if ( ! mdoc_macro(mdoc, c, line, 1, &i, buf)) {
                mdoc->flags |= MDOC_HALT;
                return(0);
        }
@@ -358,7 +358,8 @@ mdoc_warn(struct mdoc *mdoc, int tok, int pos, enum mdoc_warn type)
 
 
 int
-mdoc_macro(struct mdoc *mdoc, int tok, int ppos, int *pos, char *buf)
+mdoc_macro(struct mdoc *mdoc, int tok, 
+               int line, int ppos, int *pos, char *buf)
 {
 
        if ( ! (MDOC_PROLOGUE & mdoc_macros[tok].flags) &&
@@ -375,7 +376,7 @@ mdoc_macro(struct mdoc *mdoc, int tok, int ppos, int *pos, char *buf)
                return(0);
        }
 
-       return((*mdoc_macros[tok].fp)(mdoc, tok, ppos, pos, buf));
+       return((*mdoc_macros[tok].fp)(mdoc, tok, line, ppos, pos, buf));
 }
 
 
index 910e6f1c0d051375eb9fbc74de7899d2bde269d6..9a441f0acfae8285323f6b506ba1b7db4d548b93 100644 (file)
--- a/private.h
+++ b/private.h
@@ -1,4 +1,4 @@
-/* $Id: private.h,v 1.57 2009/01/07 15:53:00 kristaps Exp $ */
+/* $Id: private.h,v 1.58 2009/01/07 15:57:14 kristaps Exp $ */
 /*
  * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
  *
@@ -40,8 +40,12 @@ struct       mdoc {
        enum mdoc_sec     sec_last;
 };
 
+
+#define        MACRO_PROT_ARGS struct mdoc *mdoc, int tok, int line, \
+                       int ppos, int *pos, char *buf
+
 struct mdoc_macro {
-       int     (*fp)(struct mdoc *, int, int, int *, char *);
+       int     (*fp)(MACRO_PROT_ARGS);
        int       flags;
 #define        MDOC_CALLABLE   (1 << 0)
 #define        MDOC_PARSED     (1 << 1)
@@ -53,15 +57,12 @@ struct      mdoc_macro {
 
 extern const struct mdoc_macro *const mdoc_macros;
 
-#define        MACRO_PROT_ARGS struct mdoc *mdoc, int tok, \
-                       int ppos, int *pos, char *buf
-
 __BEGIN_DECLS
 
 int              mdoc_err(struct mdoc *, int, int, enum mdoc_err);
 int              mdoc_warn(struct mdoc *, int, int, enum mdoc_warn);
 void             mdoc_msg(struct mdoc *, int, const char *, ...);
-int              mdoc_macro(struct mdoc *, int, int, int *, char *);
+int              mdoc_macro(MACRO_PROT_ARGS);
 int              mdoc_find(const struct mdoc *, const char *);
 void             mdoc_word_alloc(struct mdoc *, int, const char *);
 void             mdoc_elem_alloc(struct mdoc *, int, int, 
index b9dac28a67fe3032689f87196c1c2e935b7dee85..8fd053c75272480fb27f6bffc8b8e48bb7a0b60d 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: prologue.c,v 1.4 2009/01/05 17:57:08 kristaps Exp $ */
+/* $Id: prologue.c,v 1.5 2009/01/07 15:57:14 kristaps Exp $ */
 /*
  * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
  *
@@ -178,7 +178,7 @@ again:
                return(0);
        
        if (0 == j) {
-               if (xstrcmp("$Mdocdate: January 5 2009 $", args[j])) {
+               if (xstrcmp("$Mdocdate: January 7 2009 $", args[j])) {
                        mdoc->meta.date = time(NULL);
                        goto again;
                } else if (xstrcmp("$Mdocdate:", args[j])) 
@@ -203,11 +203,11 @@ macro_prologue(MACRO_PROT_ARGS)
 
        switch (tok) {
        case (MDOC_Dt):
-               return(prologue_dt(mdoc, tok, ppos, pos, buf));
+               return(prologue_dt(mdoc, tok, line, ppos, pos, buf));
        case (MDOC_Dd):
-               return(prologue_dd(mdoc, tok, ppos, pos, buf));
+               return(prologue_dd(mdoc, tok, line, ppos, pos, buf));
        case (MDOC_Os):
-               return(prologue_os(mdoc, tok, ppos, pos, buf));
+               return(prologue_os(mdoc, tok, line, ppos, pos, buf));
        default:
                break;
        }