version 1.213, 2014/04/20 16:46:05 |
version 1.217, 2014/07/02 03:48:07 |
|
|
#include "libmdoc.h" |
#include "libmdoc.h" |
#include "libmandoc.h" |
#include "libmandoc.h" |
|
|
const char *const __mdoc_macronames[MDOC_MAX] = { |
const char *const __mdoc_macronames[MDOC_MAX + 1] = { |
"Ap", "Dd", "Dt", "Os", |
"Ap", "Dd", "Dt", "Os", |
"Sh", "Ss", "Pp", "D1", |
"Sh", "Ss", "Pp", "D1", |
"Dl", "Bd", "Ed", "Bl", |
"Dl", "Bd", "Ed", "Bl", |
Line 66 const char *const __mdoc_macronames[MDOC_MAX] = { |
|
Line 66 const char *const __mdoc_macronames[MDOC_MAX] = { |
|
"Lk", "Mt", "Brq", "Bro", |
"Lk", "Mt", "Brq", "Bro", |
"Brc", "%C", "Es", "En", |
"Brc", "%C", "Es", "En", |
"Dx", "%Q", "br", "sp", |
"Dx", "%Q", "br", "sp", |
"%U", "Ta", "ll", |
"%U", "Ta", "ll", "text", |
}; |
}; |
|
|
const char *const __mdoc_argnames[MDOC_ARG_MAX] = { |
const char *const __mdoc_argnames[MDOC_ARG_MAX] = { |
Line 305 mdoc_macro(MACRO_PROT_ARGS) |
|
Line 305 mdoc_macro(MACRO_PROT_ARGS) |
|
|
|
if (MDOC_PROLOGUE & mdoc_macros[tok].flags && |
if (MDOC_PROLOGUE & mdoc_macros[tok].flags && |
MDOC_PBODY & mdoc->flags) { |
MDOC_PBODY & mdoc->flags) { |
mdoc_pmsg(mdoc, line, ppos, MANDOCERR_BADBODY); |
mandoc_vmsg(MANDOCERR_PROLOG_ONLY, mdoc->parse, |
|
line, ppos, "%s", mdoc_macronames[tok]); |
return(1); |
return(1); |
} |
} |
|
|
Line 313 mdoc_macro(MACRO_PROT_ARGS) |
|
Line 314 mdoc_macro(MACRO_PROT_ARGS) |
|
|
|
if ( ! (MDOC_PROLOGUE & mdoc_macros[tok].flags) && |
if ( ! (MDOC_PROLOGUE & mdoc_macros[tok].flags) && |
! (MDOC_PBODY & mdoc->flags)) { |
! (MDOC_PBODY & mdoc->flags)) { |
mdoc_pmsg(mdoc, line, ppos, MANDOCERR_BADPROLOG); |
mandoc_vmsg(MANDOCERR_PROLOG_BAD, mdoc->parse, |
|
line, ppos, "%s", mdoc_macronames[tok]); |
if (NULL == mdoc->meta.msec) |
if (NULL == mdoc->meta.msec) |
mdoc->meta.msec = mandoc_strdup("1"); |
mdoc->meta.msec = mandoc_strdup("1"); |
if (NULL == mdoc->meta.title) |
if (NULL == mdoc->meta.title) |
Line 514 mdoc_block_alloc(struct mdoc *mdoc, int line, int pos, |
|
Line 516 mdoc_block_alloc(struct mdoc *mdoc, int line, int pos, |
|
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case MDOC_Bl: |
case MDOC_Bl: |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
|
case MDOC_En: |
|
/* FALLTHROUGH */ |
case MDOC_Rs: |
case MDOC_Rs: |
p->norm = mandoc_calloc(1, sizeof(union mdoc_data)); |
p->norm = mandoc_calloc(1, sizeof(union mdoc_data)); |
break; |
break; |
Line 865 mdoc_pmacro(struct mdoc *mdoc, int ln, char *buf, int |
|
Line 869 mdoc_pmacro(struct mdoc *mdoc, int ln, char *buf, int |
|
|
|
mac[i] = '\0'; |
mac[i] = '\0'; |
|
|
tok = (i > 1 || i < 4) ? mdoc_hash_find(mac) : MDOC_MAX; |
tok = (i > 1 && i < 4) ? mdoc_hash_find(mac) : MDOC_MAX; |
|
|
if (MDOC_MAX == tok) { |
if (MDOC_MAX == tok) { |
mandoc_vmsg(MANDOCERR_MACRO, mdoc->parse, |
mandoc_vmsg(MANDOCERR_MACRO, mdoc->parse, |