version 1.30, 2015/02/23 11:44:30 |
version 1.32, 2015/02/23 12:28:20 |
Line 151 static const struct texitok __texitoks[TEXICMD__MAX] = |
|
Line 151 static const struct texitok __texitoks[TEXICMD__MAX] = |
|
{ doinline, "file", 4 }, /* TEXICMD_FILE */ |
{ doinline, "file", 4 }, /* TEXICMD_FILE */ |
{ doignline, "finalout", 8 }, /* TEXICMD_FINALOUT */ |
{ doignline, "finalout", 8 }, /* TEXICMD_FINALOUT */ |
{ doignline, "findex", 6 }, /* TEXICMD_FINDEX */ |
{ doignline, "findex", 6 }, /* TEXICMD_FINDEX */ |
|
{ doignbracket, "footnote", 8 }, /* TEXICMD_FOOTNOTE */ |
{ dotable, "ftable", 6 }, /* TEXICMD_FTABLE */ |
{ dotable, "ftable", 6 }, /* TEXICMD_FTABLE */ |
{ dodisplay, "format", 6 }, /* TEXICMD_FORMAT */ |
{ dodisplay, "format", 6 }, /* TEXICMD_FORMAT */ |
{ doaccent, "`", 1 }, /* TEXICMD_GRAVE */ |
{ doaccent, "`", 1 }, /* TEXICMD_GRAVE */ |
Line 455 domacro(struct texi *p, enum texicmd cmd, |
|
Line 456 domacro(struct texi *p, enum texicmd cmd, |
|
memcpy(m.key, &buf[start], end - start); |
memcpy(m.key, &buf[start], end - start); |
m.key[end - start] = '\0'; |
m.key[end - start] = '\0'; |
|
|
m.args = argparse(p, buf, sz, pos, &m.argsz); |
m.args = argparse(p, buf, sz, pos, &m.argsz, 0); |
advanceeoln(p, buf, sz, pos, 0); |
advanceeoln(p, buf, sz, pos, 0); |
|
|
start = *pos; |
start = *pos; |
Line 1077 dovalue(struct texi *p, enum texicmd cmd, |
|
Line 1078 dovalue(struct texi *p, enum texicmd cmd, |
|
if (64 == p->valstackpos) |
if (64 == p->valstackpos) |
texierr(p, "too many nested values"); |
texierr(p, "too many nested values"); |
p->valstack[p->valstackpos++] = cp; |
p->valstack[p->valstackpos++] = cp; |
parseeof(p, cp, strlen(cp)); |
parsemembuf(p, cp, strlen(cp)); |
p->valstackpos--; |
p->valstackpos--; |
} else |
} else |
texiputchars(p, "{No value}"); |
texiputchars(p, "{No value}"); |
Line 1351 domultitable(struct texi *p, enum texicmd cmd, |
|
Line 1352 domultitable(struct texi *p, enum texicmd cmd, |
|
const char *buf, size_t sz, size_t *pos) |
const char *buf, size_t sz, size_t *pos) |
{ |
{ |
enum texilist sv = p->list; |
enum texilist sv = p->list; |
|
int svliteral = p->literal; |
enum texicmd type; |
enum texicmd type; |
size_t i, end, columns; |
size_t i, end, columns; |
|
|
p->list = TEXILIST_TABLE; |
p->list = TEXILIST_TABLE; |
|
/* |
|
* TS/TE blocks aren't "in mdoc(7)", so we can disregard the |
|
* fact that we're in literal mode right now. |
|
*/ |
|
p->literal = 0; |
teximacro(p, "TS"); |
teximacro(p, "TS"); |
columns = 0; |
columns = 0; |
|
|
Line 1407 domultitable(struct texi *p, enum texicmd cmd, |
|
Line 1414 domultitable(struct texi *p, enum texicmd cmd, |
|
parseto(p, buf, sz, pos, texitoks[cmd].tok); |
parseto(p, buf, sz, pos, texitoks[cmd].tok); |
p->outmacro--; |
p->outmacro--; |
teximacro(p, "TE"); |
teximacro(p, "TE"); |
|
p->literal = svliteral; |
p->list = sv; |
p->list = sv; |
} |
} |
|
|