version 1.41, 2009/01/12 16:39:57 |
version 1.42, 2009/01/14 11:58:24 |
Line 192 print_node(const struct mdoc_node *n, int indent) |
|
Line 192 print_node(const struct mdoc_node *n, int indent) |
|
params = NULL; |
params = NULL; |
sz = 0; |
sz = 0; |
|
|
/* FIXME: put parts of this in util.c. */ |
t = mdoc_type2a(n->type); |
|
|
switch (n->type) { |
switch (n->type) { |
case (MDOC_TEXT): |
case (MDOC_TEXT): |
assert(NULL == n->child); |
assert(NULL == n->child); |
p = n->data.text.string; |
p = n->data.text.string; |
t = "text"; |
|
break; |
break; |
case (MDOC_BODY): |
case (MDOC_BODY): |
p = mdoc_macronames[n->tok]; |
p = mdoc_macronames[n->tok]; |
t = "block-body"; |
|
break; |
break; |
case (MDOC_HEAD): |
case (MDOC_HEAD): |
p = mdoc_macronames[n->tok]; |
p = mdoc_macronames[n->tok]; |
t = "block-head"; |
|
break; |
break; |
case (MDOC_TAIL): |
case (MDOC_TAIL): |
p = mdoc_macronames[n->tok]; |
p = mdoc_macronames[n->tok]; |
t = "block-tail"; |
|
break; |
break; |
case (MDOC_ELEM): |
case (MDOC_ELEM): |
p = mdoc_macronames[n->tok]; |
p = mdoc_macronames[n->tok]; |
t = "element"; |
|
argv = n->data.elem.argv; |
argv = n->data.elem.argv; |
argc = n->data.elem.argc; |
argc = n->data.elem.argc; |
break; |
break; |
case (MDOC_BLOCK): |
case (MDOC_BLOCK): |
p = mdoc_macronames[n->tok]; |
p = mdoc_macronames[n->tok]; |
t = "block"; |
|
argv = n->data.block.argv; |
argv = n->data.block.argv; |
argc = n->data.block.argc; |
argc = n->data.block.argc; |
break; |
break; |
case (MDOC_ROOT): |
case (MDOC_ROOT): |
p = "root"; |
p = "root"; |
t = "root"; |
|
break; |
break; |
default: |
default: |
abort(); |
abort(); |
Line 238 print_node(const struct mdoc_node *n, int indent) |
|
Line 232 print_node(const struct mdoc_node *n, int indent) |
|
|
|
for (i = 0; i < (int)argc; i++) { |
for (i = 0; i < (int)argc; i++) { |
(void)printf(" -%s", mdoc_argnames[argv[i].arg]); |
(void)printf(" -%s", mdoc_argnames[argv[i].arg]); |
if (j > 0) |
if (argv[i].sz > 0) |
(void)printf(" ["); |
(void)printf(" ["); |
for (j = 0; j < (int)argv[i].sz; j++) |
for (j = 0; j < (int)argv[i].sz; j++) |
(void)printf(" [%s]", argv[i].value[j]); |
(void)printf(" [%s]", argv[i].value[j]); |
if (j > 0) |
if (argv[i].sz > 0) |
(void)printf(" ]"); |
(void)printf(" ]"); |
} |
} |
|
|
Line 361 msg_err(void *arg, int line, int col, enum mdoc_err ty |
|
Line 355 msg_err(void *arg, int line, int col, enum mdoc_err ty |
|
lit = "syntax: unknown argument for macro"; |
lit = "syntax: unknown argument for macro"; |
break; |
break; |
case (ERR_SCOPE_BREAK): |
case (ERR_SCOPE_BREAK): |
/* Which scope is broken? */ |
lit = "scope: macro breaks prior scope"; |
lit = "scope: macro breaks prior explicit scope"; |
|
break; |
break; |
case (ERR_SCOPE_NOCTX): |
case (ERR_SCOPE_NOCTX): |
lit = "scope: closure macro has no context"; |
lit = "scope: closure macro has no context"; |