=================================================================== RCS file: /cvs/docbook2mdoc/reorg.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -p -r1.5 -r1.6 --- docbook2mdoc/reorg.c 2019/05/01 09:02:25 1.5 +++ docbook2mdoc/reorg.c 2019/05/01 11:03:31 1.6 @@ -1,4 +1,4 @@ -/* $Id: reorg.c,v 1.5 2019/05/01 09:02:25 schwarze Exp $ */ +/* $Id: reorg.c,v 1.6 2019/05/01 11:03:31 schwarze Exp $ */ /* * Copyright (c) 2019 Ingo Schwarze * @@ -211,6 +211,20 @@ default_title(struct pnode *n, const char *title) } static void +reorg_function(struct pnode *n) +{ + struct pnode *nc; + size_t sz; + + if ((nc = TAILQ_FIRST(&n->childq)) != NULL && + nc->node == NODE_TEXT && + TAILQ_NEXT(nc, child) == NULL && + (sz = strlen(nc->b)) > 2 && + nc->b[sz - 2] == '(' && nc->b[sz - 1] == ')') + nc->b[sz - 2] = '\0'; +} + +static void reorg_recurse(struct pnode *n) { struct pnode *nc; @@ -231,6 +245,9 @@ reorg_recurse(struct pnode *n) case NODE_CAUTION: default_title(n, "Caution"); n->node = NODE_NOTE; + break; + case NODE_FUNCTION: + reorg_function(n); break; case NODE_LEGALNOTICE: default_title(n, "Legal Notice");