=================================================================== RCS file: /cvs/docbook2mdoc/Attic/rules.c,v retrieving revision 1.15 retrieving revision 1.19 diff -u -p -r1.15 -r1.19 --- docbook2mdoc/Attic/rules.c 2014/04/02 10:27:29 1.15 +++ docbook2mdoc/Attic/rules.c 2014/04/30 09:26:10 1.19 @@ -87,6 +87,9 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_ANCHOR): + /* We'll ignore this. */ + return(1); case (NODE_APPLICATION): switch (parent) { case (NODE_EMPHASIS): @@ -121,6 +124,28 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_CAUTION): + switch (parent) { + case (NODE_CAUTION): + case (NODE_ENTRY): + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_NOTE): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): + case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): + case (NODE_VARIABLELIST): + case (NODE_WARNING): + return(1); + default: + break; + } + return(0); case (NODE_CITEREFENTRY): switch (parent) { case (NODE_EMPHASIS): @@ -146,15 +171,21 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_CMDSYNOPSIS): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -209,11 +240,44 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_CONSTANT): + switch (parent) { + case (NODE_EMPHASIS): + case (NODE_ENTRY): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_LINK): + case (NODE_ULINK): + case (NODE_PARA): + case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): + case (NODE_REFDESCRIPTOR): + case (NODE_REFENTRYTITLE): + case (NODE_REFNAME): + case (NODE_REFPURPOSE): + case (NODE_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_USERINPUT): + return(1); + default: + break; + } + return(0); + case (NODE_COPYRIGHT): + switch (parent) { + case (NODE_INFO): + return(1); + default: + break; + } + return(0); case (NODE_DATE): switch (parent) { case (NODE_EMPHASIS): case (NODE_ENTRY): case (NODE_FUNCSYNOPSISINFO): + case (NODE_INFO): case (NODE_LINK): case (NODE_PARA): case (NODE_PROGRAMLISTING): @@ -311,15 +375,21 @@ isparent(enum nodeid node, enum nodeid parent) return(NODE_FUNCSYNOPSIS == parent); case (NODE_FUNCSYNOPSIS): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -352,26 +422,68 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); - case (NODE_ITEMIZEDLIST): + case (NODE_GROUP): switch (parent) { - case (NODE_ENTRY): + case (NODE_ARG): + case (NODE_CMDSYNOPSIS): + case (NODE_GROUP): + return(1); + default: + break; + } + return(0); + case (NODE_HOLDER): + switch (parent) { + case (NODE_COPYRIGHT): + return(1); + default: + break; + } + return(0); + case (NODE_INFO): + switch (parent) { + case (NODE_CAUTION): + case (NODE_CMDSYNOPSIS): + case (NODE_FUNCSYNOPSIS): + case (NODE_FUNCSYNOPSISINFO): case (NODE_ITEMIZEDLIST): - case (NODE_LISTITEM): + case (NODE_NOTE): case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_PROGRAMLISTING): + case (NODE_REFENTRY): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TABLE): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; } return(0); - case (NODE_GROUP): + case (NODE_ITEMIZEDLIST): switch (parent) { - case (NODE_ARG): - case (NODE_CMDSYNOPSIS): - case (NODE_GROUP): + case (NODE_CAUTION): + case (NODE_ENTRY): + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_NOTE): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): + case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): + case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -385,6 +497,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): + case (NODE_CONSTANT): case (NODE_EMPHASIS): case (NODE_ENTRY): case (NODE_ENVAR): @@ -392,6 +505,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_FUNCDEF): case (NODE_FUNCSYNOPSISINFO): case (NODE_FUNCTION): + case (NODE_HOLDER): case (NODE_LINK): case (NODE_LITERAL): case (NODE_MANVOLNUM): @@ -410,9 +524,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): + case (NODE_TRADEMARK): case (NODE_ULINK): case (NODE_USERINPUT): case (NODE_VARNAME): + case (NODE_WORDASWORD): + case (NODE_YEAR): return(1); default: break; @@ -461,6 +578,28 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_NOTE): + switch (parent) { + case (NODE_CAUTION): + case (NODE_ENTRY): + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_NOTE): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): + case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): + case (NODE_VARIABLELIST): + case (NODE_WARNING): + return(1); + default: + break; + } + return(0); case (NODE_OPTION): switch (parent) { case (NODE_ARG): @@ -489,15 +628,21 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_ORDEREDLIST): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -505,14 +650,20 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_PARA): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_NOTE): case (NODE_ORDEREDLIST): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -547,15 +698,21 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_PROGRAMLISTING): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -608,7 +765,6 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); - case (NODE_REFCLASS): return(parent == NODE_REFNAMEDIV); case (NODE_REFDESCRIPTOR): @@ -646,6 +802,18 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_REFSECT3): + return(parent == NODE_REFSECT2); + case (NODE_REFSECTION): + switch (parent) { + case (NODE_REFENTRY): + case (NODE_REFSECTION): + case (NODE_REFSYNOPSISDIV): + return(1); + default: + break; + } + return(0); case (NODE_REFSYNOPSISDIV): return(parent == NODE_REFENTRY); case (NODE_REPLACEABLE): @@ -655,6 +823,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): + case (NODE_CONSTANT): case (NODE_EMPHASIS): case (NODE_ENTRY): case (NODE_ENVAR): @@ -663,6 +832,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_FUNCSYNOPSISINFO): case (NODE_FUNCTION): case (NODE_GROUP): + case (NODE_HOLDER): case (NODE_LINK): case (NODE_LITERAL): case (NODE_MANVOLNUM): @@ -680,12 +850,16 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFPURPOSE): case (NODE_REPLACEABLE): case (NODE_SCREEN): + case (NODE_SGMLTAG): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): + case (NODE_TRADEMARK): case (NODE_ULINK): case (NODE_USERINPUT): case (NODE_VARNAME): + case (NODE_WORDASWORD): + case (NODE_YEAR): default: return(1); } @@ -712,20 +886,57 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_SCREEN): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; } return(0); + case (NODE_SGMLTAG): + switch (parent) { + case (NODE_APPLICATION): + case (NODE_CODE): + case (NODE_COMMAND): + case (NODE_EMPHASIS): + case (NODE_ENTRY): + case (NODE_FILENAME): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_FUNCTION): + case (NODE_LINK): + case (NODE_LITERAL): + case (NODE_OPTION): + case (NODE_PARA): + case (NODE_PARAMETER): + case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): + case (NODE_REFDESCRIPTOR): + case (NODE_REFENTRYTITLE): + case (NODE_REFNAME): + case (NODE_REFPURPOSE): + case (NODE_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_USERINPUT): + return(1); + default: + break; + } + return(0); case (NODE_STRUCTNAME): switch (parent) { case (NODE_CODE): @@ -748,13 +959,20 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_SYNOPSIS): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): + case (NODE_PARA): case (NODE_REFSYNOPSISDIV): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): + case (NODE_TIP): + case (NODE_WARNING): return(1); default: break; @@ -762,14 +980,21 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_TABLE): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -785,11 +1010,14 @@ isparent(enum nodeid node, enum nodeid parent) return(NODE_TGROUP == parent); case (NODE_TITLE): switch (parent) { + case (NODE_INFO): case (NODE_ITEMIZEDLIST): case (NODE_ORDEREDLIST): case (NODE_REFENTRYINFO): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): case (NODE_TABLE): case (NODE_VARIABLELIST): @@ -802,6 +1030,52 @@ isparent(enum nodeid node, enum nodeid parent) return(NODE_VARLISTENTRY == parent); case (NODE_TEXT): return(1); + case (NODE_TIP): + switch (parent) { + case (NODE_CAUTION): + case (NODE_ENTRY): + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_NOTE): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): + case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): + case (NODE_VARIABLELIST): + case (NODE_WARNING): + return(1); + default: + break; + } + return(0); + case (NODE_TRADEMARK): + switch (parent) { + case (NODE_ACRONYM): + case (NODE_EMPHASIS): + case (NODE_ENTRY): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_LINK): + case (NODE_ULINK): + case (NODE_PARA): + case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): + case (NODE_REFDESCRIPTOR): + case (NODE_REFENTRYTITLE): + case (NODE_REFNAME): + case (NODE_REFPURPOSE): + case (NODE_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + return(1); + default: + break; + } + return(0); case (NODE_USERINPUT): switch (parent) { case (NODE_EMPHASIS): @@ -828,14 +1102,20 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_VARIABLELIST): switch (parent) { + case (NODE_CAUTION): case (NODE_ENTRY): case (NODE_ITEMIZEDLIST): case (NODE_ORDEREDLIST): + case (NODE_NOTE): case (NODE_PARA): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): case (NODE_VARIABLELIST): + case (NODE_WARNING): return(1); default: break; @@ -867,6 +1147,59 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_VARLISTENTRY): return (NODE_VARIABLELIST == parent); + case (NODE_WARNING): + switch (parent) { + case (NODE_CAUTION): + case (NODE_ENTRY): + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_NOTE): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): + case (NODE_REFSYNOPSISDIV): + case (NODE_TIP): + case (NODE_VARIABLELIST): + case (NODE_WARNING): + return(1); + default: + break; + } + return(0); + case (NODE_WORDASWORD): + switch (parent) { + case (NODE_EMPHASIS): + case (NODE_ENTRY): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_LINK): + case (NODE_PARA): + case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): + case (NODE_REFDESCRIPTOR): + case (NODE_REFENTRYTITLE): + case (NODE_REFNAME): + case (NODE_REFPURPOSE): + case (NODE_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + return(1); + default: + break; + } + return(0); + case (NODE_YEAR): + switch (parent) { + case (NODE_COPYRIGHT): + return(1); + default: + break; + } + return(0); case (NODE__MAX): break; }