=================================================================== RCS file: /cvs/docbook2mdoc/Attic/rules.c,v retrieving revision 1.3 retrieving revision 1.7 diff -u -p -r1.3 -r1.7 --- docbook2mdoc/Attic/rules.c 2014/03/30 15:08:03 1.3 +++ docbook2mdoc/Attic/rules.c 2014/03/30 16:57:06 1.7 @@ -83,9 +83,11 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_CMDSYNOPSIS): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -174,15 +176,37 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_FILENAME): + switch (parent) { + case (NODE_EMPHASIS): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_LINK): + case (NODE_PARA): + case (NODE_PROGRAMLISTING): + case (NODE_REFDESCRIPTOR): + case (NODE_REFENTRYTITLE): + case (NODE_REFNAME): + case (NODE_REFPURPOSE): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + return(1); + default: + break; + } + return(0); case (NODE_FUNCDEF): return(NODE_FUNCPROTOTYPE == parent); case (NODE_FUNCPROTOTYPE): return(NODE_FUNCSYNOPSIS == parent); case (NODE_FUNCSYNOPSIS): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -214,17 +238,32 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_ITEMIZEDLIST): + switch (parent) { + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSYNOPSISDIV): + case (NODE_VARIABLELIST): + return(1); + default: + break; + } + return(0); case (NODE_LINK): - case (NODE_ULINK): /* Synonyms? */ + case (NODE_ULINK): /* Synonyms. */ switch (parent) { case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): case (NODE_EMPHASIS): + case (NODE_FILENAME): case (NODE_FUNCDEF): case (NODE_FUNCSYNOPSISINFO): case (NODE_FUNCTION): case (NODE_LINK): + case (NODE_LITERAL): case (NODE_MANVOLNUM): case (NODE_OPTION): case (NODE_PARA): @@ -245,7 +284,34 @@ isparent(enum nodeid node, enum nodeid parent) } return(0); case (NODE_LISTITEM): - return(NODE_VARLISTENTRY == parent); + switch (parent) { + case (NODE_ITEMIZEDLIST): + case (NODE_VARLISTENTRY): + return(1); + default: + break; + } + return(0); + case (NODE_LITERAL): + switch (parent) { + case (NODE_EMPHASIS): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_LINK): + case (NODE_PARA): + case (NODE_PROGRAMLISTING): + case (NODE_REFDESCRIPTOR): + case (NODE_REFENTRYTITLE): + case (NODE_REFNAME): + case (NODE_REFPURPOSE): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + return(1); + default: + break; + } + return(0); case (NODE_MANVOLNUM): switch (parent) { case (NODE_CITEREFENTRY): @@ -278,8 +344,10 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_PARA): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -312,9 +380,11 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_PROGRAMLISTING): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): return(1); default: @@ -349,6 +419,15 @@ isparent(enum nodeid node, enum nodeid parent) return(parent == NODE_REFNAMEDIV); case (NODE_REFSECT1): return(parent == NODE_REFENTRY); + case (NODE_REFSECT2): + switch (parent) { + case (NODE_REFSYNOPSISDIV): + case (NODE_REFSECT1): + return(1); + default: + break; + } + return(0); case (NODE_REFSYNOPSISDIV): return(parent == NODE_REFENTRY); case (NODE_REPLACEABLE): @@ -357,10 +436,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_CODE): case (NODE_COMMAND): case (NODE_EMPHASIS): + case (NODE_FILENAME): case (NODE_FUNCDEF): case (NODE_FUNCSYNOPSISINFO): case (NODE_FUNCTION): case (NODE_LINK): + case (NODE_LITERAL): case (NODE_MANVOLNUM): case (NODE_OPTION): case (NODE_PARA): @@ -381,6 +462,15 @@ isparent(enum nodeid node, enum nodeid parent) return(1); } return(0); + case (NODE_SBR): + switch (parent) { + case (NODE_ARG): + case (NODE_CMDSYNOPSIS): + return(1); + default: + break; + } + return(0); case (NODE_STRUCTNAME): switch (parent) { case (NODE_CODE): @@ -403,9 +493,11 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_SYNOPSIS): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): case (NODE_REFSYNOPSISDIV): case (NODE_REFSECT1): + case (NODE_REFSECT2): return(1); default: break; @@ -413,8 +505,10 @@ isparent(enum nodeid node, enum nodeid parent) return(0); case (NODE_TITLE): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_REFENTRYINFO): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -428,8 +522,10 @@ isparent(enum nodeid node, enum nodeid parent) return(1); case (NODE_VARIABLELIST): switch (parent) { + case (NODE_ITEMIZEDLIST): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1);