diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2011-04-04 10:53:15 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2011-04-04 10:53:15 +0000 |
commit | eb26063e6d14c60d65335fb8795468d2abaca26a (patch) | |
tree | 25bcf38f670759b41fcab6dcd06e7d8fcde2659b /mandoc-db.c | |
parent | c07df5d52d6de4f2da056e0e2bdc6d7065f07835 (diff) | |
download | mandoc-eb26063e6d14c60d65335fb8795468d2abaca26a.tar.gz |
Add manual page for mandoc-db (mostly to document the file format of
the generated index and keyword databases). Add some documentation
within mandoc-db.c.
Diffstat (limited to 'mandoc-db.c')
-rw-r--r-- | mandoc-db.c | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/mandoc-db.c b/mandoc-db.c index acc7bff9..1a3db9e8 100644 --- a/mandoc-db.c +++ b/mandoc-db.c @@ -61,7 +61,6 @@ static void dbt_append(DBT *, size_t *, const char *); static void dbt_appendb(DBT *, size_t *, const void *, size_t); static void dbt_init(DBT *, size_t *); -static void version(void); static void usage(void); static void pmdoc(DB *, const char *, DBT *, size_t *, DBT *, @@ -234,14 +233,11 @@ main(int argc, char *argv[]) dir = ""; - while (-1 != (c = getopt(argc, argv, "d:V"))) + while (-1 != (c = getopt(argc, argv, "d:"))) switch (c) { case ('d'): dir = optarg; break; - case ('V'): - version(); - return((int)MANDOCLEVEL_OK); default: usage(); return((int)MANDOCLEVEL_BADARG); @@ -329,8 +325,10 @@ main(int argc, char *argv[]) while (NULL != (fn = *argv++)) { mparse_reset(mp); - if (mparse_readfd(mp, -1, fn) >= MANDOCLEVEL_FATAL) + if (mparse_readfd(mp, -1, fn) >= MANDOCLEVEL_FATAL) { + fprintf(stderr, "%s: Parse failure\n", fn); continue; + } mparse_result(mp, &mdoc, NULL); if (NULL == mdoc) @@ -443,11 +441,22 @@ pmdoc_Fd(MDOC_ARGS) return; if (NULL == (n = n->child) || MDOC_TEXT != n->type) return; + + /* + * Only consider those `Fd' macro fields that begin with an + * "inclusion" token (versus, e.g., #define). + */ if (strcmp("#include", n->string)) return; + if (NULL == (n = n->next) || MDOC_TEXT != n->type) return; + /* + * Strip away the enclosing angle brackets and make sure we're + * not zero-length. + */ + start = n->string; if ('<' == *start) start++; @@ -501,7 +510,7 @@ pmdoc_Fn(MDOC_ARGS) if (NULL == cp) cp = n->child->string; - /* Ignore pointers. */ + /* Strip away pointer symbol. */ while ('*' == *cp) cp++; @@ -528,7 +537,7 @@ pmdoc_Vt(MDOC_ARGS) return; /* - * Strip away leading '*' and trailing ';'. + * Strip away leading pointer symbol '*' and trailing ';'. */ start = n->last->string; @@ -650,18 +659,10 @@ pmdoc(DB *db, const char *dbn, } static void -version(void) -{ - - printf("%s %s\n", progname, VERSION); -} - -static void usage(void) { fprintf(stderr, "usage: %s " - "[-V] " "[-d path] " "[file...]\n", progname); |