=================================================================== RCS file: /cvs/docbook2mdoc/Attic/rules.c,v retrieving revision 1.11 retrieving revision 1.16 diff -u -p -r1.11 -r1.16 --- docbook2mdoc/Attic/rules.c 2014/03/30 18:15:55 1.11 +++ docbook2mdoc/Attic/rules.c 2014/04/02 10:59:07 1.16 @@ -69,8 +69,11 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_ACRONYM): switch (parent) { case (NODE_EMPHASIS): + case (NODE_ENTRY): case (NODE_FUNCSYNOPSISINFO): + case (NODE_PARA): case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFNAME): @@ -84,6 +87,30 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_APPLICATION): + 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_REFCLASS): + 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_ARG): switch (parent) { case (NODE_ARG): @@ -94,13 +121,37 @@ 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): + 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): @@ -117,14 +168,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; @@ -133,10 +191,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_CODE): 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): @@ -156,10 +216,12 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_CMDSYNOPSIS): 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): @@ -178,10 +240,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_DATE): 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_REFENTRYINFO): case (NODE_REFENTRYTITLE): @@ -199,10 +263,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_EMPHASIS): 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): @@ -217,13 +283,17 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_ENTRY): + return(NODE_ROW == parent); case (NODE_ENVAR): 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): @@ -242,10 +312,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_FILENAME): 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): @@ -267,14 +339,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; @@ -286,11 +365,13 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_CODE): case (NODE_EMPHASIS): + case (NODE_ENTRY): case (NODE_FUNCDEF): case (NODE_FUNCSYNOPSISINFO): case (NODE_LINK): case (NODE_PARA): case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFNAME): @@ -307,13 +388,21 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_ITEMIZEDLIST): 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; @@ -333,10 +422,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_ULINK): /* Synonyms. */ switch (parent) { case (NODE_ACRONYM): + case (NODE_APPLICATION): case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): case (NODE_EMPHASIS): + case (NODE_ENTRY): case (NODE_ENVAR): case (NODE_FILENAME): case (NODE_FUNCDEF): @@ -351,6 +442,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_PARAMETER): case (NODE_PROGRAMLISTING): case (NODE_PROMPT): + case (NODE_QUOTE): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFMISCINFO): @@ -361,6 +453,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_TERM): case (NODE_ULINK): case (NODE_USERINPUT): + case (NODE_VARNAME): return(1); default: break; @@ -379,10 +472,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_LITERAL): 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): @@ -407,15 +502,39 @@ 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): case (NODE_EMPHASIS): + case (NODE_ENTRY): case (NODE_FUNCSYNOPSISINFO): case (NODE_GROUP): case (NODE_LINK): case (NODE_PARA): case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFNAME): @@ -433,14 +552,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; @@ -448,13 +574,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; @@ -465,11 +598,13 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_PARAMETER): switch (parent) { case (NODE_CODE): + case (NODE_ENTRY): case (NODE_FUNCSYNOPSISINFO): case (NODE_LINK): case (NODE_PARA): case (NODE_PARAMDEF): case (NODE_PROGRAMLISTING): + case (NODE_QUOTE): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFNAME): @@ -487,14 +622,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; @@ -503,10 +645,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_PROMPT): 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): @@ -522,6 +666,30 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_QUOTE): + 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_REFCLASS): return(parent == NODE_REFNAMEDIV); case (NODE_REFDESCRIPTOR): @@ -559,15 +727,29 @@ 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): switch (parent) { case (NODE_ACRONYM): + case (NODE_APPLICATION): case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): case (NODE_EMPHASIS): + case (NODE_ENTRY): case (NODE_ENVAR): case (NODE_FILENAME): case (NODE_FUNCDEF): @@ -583,6 +765,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_PARAMETER): case (NODE_PROGRAMLISTING): case (NODE_PROMPT): + case (NODE_QUOTE): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFMISCINFO): @@ -595,10 +778,21 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_TITLE): case (NODE_ULINK): case (NODE_USERINPUT): + case (NODE_VARNAME): default: return(1); } return(0); + case (NODE_ROW): + switch (parent) { + case (NODE_TBODY): + case (NODE_TFOOT): + case (NODE_THEAD): + return(1); + default: + break; + } + return(0); case (NODE_SBR): switch (parent) { case (NODE_ARG): @@ -611,14 +805,21 @@ 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; @@ -646,17 +847,55 @@ 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; } 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; + } + return(0); + case (NODE_TBODY): + return(NODE_TGROUP == parent); + case (NODE_TFOOT): + return(NODE_TGROUP == parent); + case (NODE_TGROUP): + return(NODE_TABLE == parent); + case (NODE_THEAD): + return(NODE_TGROUP == parent); case (NODE_TITLE): switch (parent) { case (NODE_ITEMIZEDLIST): @@ -664,7 +903,10 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYINFO): case (NODE_REFSECT1): case (NODE_REFSECT2): + case (NODE_REFSECT3): + case (NODE_REFSECTION): case (NODE_REFSYNOPSISDIV): + case (NODE_TABLE): case (NODE_VARIABLELIST): return(1); default: @@ -675,13 +917,37 @@ 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_USERINPUT): 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): @@ -699,20 +965,73 @@ 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; } return(0); + case (NODE_VARNAME): + switch (parent) { + case (NODE_CODE): + 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_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__MAX): break; }