=================================================================== RCS file: /cvs/docbook2mdoc/Attic/rules.c,v retrieving revision 1.4 retrieving revision 1.10 diff -u -p -r1.4 -r1.10 --- docbook2mdoc/Attic/rules.c 2014/03/30 16:25:26 1.4 +++ docbook2mdoc/Attic/rules.c 2014/03/30 17:46:17 1.10 @@ -52,6 +52,24 @@ isparent(enum nodeid node, enum nodeid parent) switch (node) { case (NODE_ROOT): return(0); + case (NODE_ACRONYM): + switch (parent) { + case (NODE_EMPHASIS): + case (NODE_FUNCSYNOPSISINFO): + case (NODE_PROGRAMLISTING): + 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_ARG): switch (parent) { case (NODE_ARG): @@ -72,6 +90,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): @@ -85,8 +104,10 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -105,10 +126,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): case (NODE_ULINK): + case (NODE_USERINPUT): return(1); default: break; @@ -126,10 +149,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): case (NODE_ULINK): + case (NODE_USERINPUT): return(1); default: break; @@ -147,6 +172,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TITLE): case (NODE_ULINK): @@ -166,6 +192,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): @@ -175,6 +202,50 @@ isparent(enum nodeid node, enum nodeid parent) break; } return(0); + case (NODE_ENVAR): + 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_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + case (NODE_USERINPUT): + return(1); + default: + 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_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + case (NODE_USERINPUT): + return(1); + default: + break; + } + return(0); case (NODE_FUNCDEF): return(NODE_FUNCPROTOTYPE == parent); case (NODE_FUNCPROTOTYPE): @@ -183,8 +254,10 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -207,6 +280,7 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): @@ -220,7 +294,9 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -231,28 +307,35 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_LINK): case (NODE_ULINK): /* Synonyms. */ switch (parent) { + case (NODE_ACRONYM): case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): case (NODE_EMPHASIS): + case (NODE_ENVAR): + 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): case (NODE_PARAMDEF): case (NODE_PARAMETER): case (NODE_PROGRAMLISTING): + case (NODE_PROMPT): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFMISCINFO): case (NODE_REFNAME): case (NODE_REPLACEABLE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_ULINK): + case (NODE_USERINPUT): return(1); default: break; @@ -261,12 +344,35 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_LISTITEM): switch (parent) { case (NODE_ITEMIZEDLIST): + case (NODE_ORDEREDLIST): 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_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + case (NODE_USERINPUT): + return(1); + default: + break; + } + return(0); case (NODE_MANVOLNUM): switch (parent) { case (NODE_CITEREFENTRY): @@ -288,20 +394,39 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): case (NODE_ULINK): + case (NODE_USERINPUT): return(1); default: break; } return(0); + case (NODE_ORDEREDLIST): + switch (parent) { + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSYNOPSISDIV): + case (NODE_VARIABLELIST): + return(1); + default: + break; + } + return(0); case (NODE_PARA): switch (parent) { case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -323,10 +448,12 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_REFENTRYTITLE): case (NODE_REFNAME): case (NODE_REFPURPOSE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): case (NODE_ULINK): + case (NODE_USERINPUT): return(1); default: break; @@ -336,14 +463,39 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): + case (NODE_VARIABLELIST): return(1); default: break; } return(0); + case (NODE_PROMPT): + 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_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + case (NODE_USERINPUT): + return(1); + default: + break; + } + return(0); case (NODE_REFCLASS): return(parent == NODE_REFNAMEDIV); case (NODE_REFDESCRIPTOR): @@ -372,38 +524,78 @@ 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): switch (parent) { + case (NODE_ACRONYM): case (NODE_ARG): case (NODE_CODE): case (NODE_COMMAND): case (NODE_EMPHASIS): + case (NODE_ENVAR): + 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): case (NODE_PARAMDEF): case (NODE_PARAMETER): case (NODE_PROGRAMLISTING): + case (NODE_PROMPT): case (NODE_REFDESCRIPTOR): case (NODE_REFENTRYTITLE): case (NODE_REFMISCINFO): case (NODE_REFNAME): case (NODE_REFPURPOSE): case (NODE_REPLACEABLE): + case (NODE_SCREEN): case (NODE_SYNOPSIS): case (NODE_TERM): case (NODE_TITLE): case (NODE_ULINK): + case (NODE_USERINPUT): default: return(1); } return(0); + case (NODE_SBR): + switch (parent) { + case (NODE_ARG): + case (NODE_CMDSYNOPSIS): + return(1); + default: + break; + } + return(0); + case (NODE_SCREEN): + switch (parent) { + case (NODE_ITEMIZEDLIST): + case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): + case (NODE_PARA): + case (NODE_REFSECT1): + case (NODE_REFSECT2): + case (NODE_REFSYNOPSISDIV): + case (NODE_VARIABLELIST): + return(1); + default: + break; + } + return(0); case (NODE_STRUCTNAME): switch (parent) { case (NODE_CODE): @@ -428,8 +620,10 @@ isparent(enum nodeid node, enum nodeid parent) switch (parent) { case (NODE_ITEMIZEDLIST): case (NODE_LISTITEM): + case (NODE_ORDEREDLIST): case (NODE_REFSYNOPSISDIV): case (NODE_REFSECT1): + case (NODE_REFSECT2): return(1); default: break; @@ -438,8 +632,10 @@ isparent(enum nodeid node, enum nodeid parent) case (NODE_TITLE): switch (parent) { case (NODE_ITEMIZEDLIST): + case (NODE_ORDEREDLIST): case (NODE_REFENTRYINFO): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1); @@ -451,11 +647,35 @@ isparent(enum nodeid node, enum nodeid parent) return(NODE_VARLISTENTRY == parent); case (NODE_TEXT): return(1); + case (NODE_USERINPUT): + 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_SCREEN): + case (NODE_SYNOPSIS): + case (NODE_TERM): + case (NODE_TITLE): + case (NODE_ULINK): + case (NODE_USERINPUT): + return(1); + default: + break; + } + return(0); case (NODE_VARIABLELIST): switch (parent) { case (NODE_ITEMIZEDLIST): + case (NODE_ORDEREDLIST): case (NODE_PARA): case (NODE_REFSECT1): + case (NODE_REFSECT2): case (NODE_REFSYNOPSISDIV): case (NODE_VARIABLELIST): return(1);