=================================================================== RCS file: /cvs/mandoc/man.c,v retrieving revision 1.160 retrieving revision 1.163 diff -u -p -r1.160 -r1.163 --- mandoc/man.c 2015/04/19 14:25:41 1.160 +++ mandoc/man.c 2015/04/23 16:17:44 1.163 @@ -1,4 +1,4 @@ -/* $Id: man.c,v 1.160 2015/04/19 14:25:41 schwarze Exp $ */ +/* $Id: man.c,v 1.163 2015/04/23 16:17:44 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2013, 2014, 2015 Ingo Schwarze @@ -55,13 +55,6 @@ static int man_ptext(struct roff_man *, int, char *, static int man_pmacro(struct roff_man *, int, char *, int); -void -man_endparse(struct roff_man *man) -{ - - man_macroend(man); -} - int man_parseln(struct roff_man *man, int ln, char *buf, int offs) { @@ -74,26 +67,6 @@ man_parseln(struct roff_man *man, int ln, char *buf, i man_ptext(man, ln, buf, offs)); } -void -man_elem_alloc(struct roff_man *man, int line, int pos, int tok) -{ - struct roff_node *p; - - p = roff_node_alloc(man, line, pos, ROFFT_ELEM, tok); - roff_node_append(man, p); - man->next = ROFF_NEXT_CHILD; -} - -void -man_block_alloc(struct roff_man *man, int line, int pos, int tok) -{ - struct roff_node *p; - - p = roff_node_alloc(man, line, pos, ROFFT_BLOCK, tok); - roff_node_append(man, p); - man->next = ROFF_NEXT_CHILD; -} - static void man_descope(struct roff_man *man, int line, int offs) { @@ -139,7 +112,7 @@ man_ptext(struct roff_man *man, int line, char *buf, i /* Allocate a blank entry. */ if (man->last->tok != MAN_SH && man->last->tok != MAN_SS) { - man_elem_alloc(man, line, offs, MAN_sp); + roff_elem_alloc(man, line, offs, MAN_sp); man->next = ROFF_NEXT_SIBLING; } return(1); @@ -344,50 +317,4 @@ man_mparse(const struct roff_man *man) assert(man && man->parse); return(man->parse); -} - -void -man_deroff(char **dest, const struct roff_node *n) -{ - char *cp; - size_t sz; - - if (n->type != ROFFT_TEXT) { - for (n = n->child; n; n = n->next) - man_deroff(dest, n); - return; - } - - /* Skip leading whitespace and escape sequences. */ - - cp = n->string; - while ('\0' != *cp) { - if ('\\' == *cp) { - cp++; - mandoc_escape((const char **)&cp, NULL, NULL); - } else if (isspace((unsigned char)*cp)) - cp++; - else - break; - } - - /* Skip trailing whitespace. */ - - for (sz = strlen(cp); sz; sz--) - if (0 == isspace((unsigned char)cp[sz-1])) - break; - - /* Skip empty strings. */ - - if (0 == sz) - return; - - if (NULL == *dest) { - *dest = mandoc_strndup(cp, sz); - return; - } - - mandoc_asprintf(&cp, "%s %*s", *dest, (int)sz, cp); - free(*dest); - *dest = cp; }