-/* $Id: libmdoc.h,v 1.25 2009/08/20 08:59:12 kristaps Exp $ */
+/* $Id: libmdoc.h,v 1.26 2009/08/20 09:07:24 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se>
*
int *, char *, int, char **);
int mdoc_zargs(struct mdoc *, int,
int *, char *, int, char **);
-#define ARGS_DELIM (1 << 1)
-#define ARGS_TABSEP (1 << 2)
-#define ARGS_NOWARN (1 << 3)
+#define ARGS_DELIM (1 << 1) /* See args(). */
+#define ARGS_TABSEP (1 << 2) /* See args(). */
+#define ARGS_NOWARN (1 << 3) /* See args(). */
#define ARGS_ERROR (-1)
#define ARGS_EOLN (0)
#define ARGS_WORD (1)
-/* $Id: mdoc_argv.c,v 1.23 2009/08/20 08:59:12 kristaps Exp $ */
+/* $Id: mdoc_argv.c,v 1.24 2009/08/20 09:07:24 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se>
*
int i;
char *p, *pp;
+ /*
+ * Parse out the terms (like `val' in `.Xx -arg val' or simply
+ * `.Xx val'), which can have all sorts of properties:
+ *
+ * ARGS_DELIM: use special handling if encountering trailing
+ * delimiters in the form of [[::delim::][ ]+]+.
+ *
+ * ARGS_NOWARN: don't post warnings. This is only used when
+ * re-parsing delimiters, as the warnings have already been
+ * posted.
+ *
+ * ARGS_TABSEP: use special handling for tab/`Ta' separated
+ * phrases like in `Bl -column'.
+ */
+
assert(*pos);
assert(' ' != buf[*pos]);