
% Macros for dealing with the output of dednat4 (TeXed deduction trees
% and diagxy diagrams)

% (find-doutfile "")
% (find-doutfile "defs-dnt.tex")
% (find-doutfile "defs-headfoot.tex")
% (find-doutfile "defs-sect.tex")
% (find-doutfile "defs-symbols.tex")
% (find-doutfile "defs.tex")

% «.proof»	(to "proof")
% «.diagxy»	(to "diagxy")
% «.defded»	(to "defded")
% «.ded»	(to "ded")
% «.defdiag»	(to "defdiag")
% «.diag»	(to "diag")





% «proof»  (to ".proof")
% (find-dednat4 "dednat41.lua")
% (find-dednat4 "dednat41.lua" "tree-out")
% (find-dednat4 "dednat41.lua" "tree-out" "tex_tree_function = tex_tree_tatsuta")
% (find-fline "proof.sty")
\usepackage{proof}
%
% \usepackage{proof.edrx}
% (find-ptfile "proofs/boxproof.tex")
% (find-es "tex" "bussproofs")
% \usepackage{bussproofs}
% \def\ScoreOverhang{0pt}




% «diagxy»  (to ".diagxy")
% (find-es "xypic" "diagxydemo0")
% (find-es "xypic" "two-and-three")
%
\input diagxy
\xyoption{curve}
% \xyoption{tips}
%
% rename diagxy's \to to \diagxyto
% (find-diagxypage 25 "Inline macros" "\\to")
% (find-diagxytext "   Inline macros" "\\to")
% (find-diagxyfile "diagxy.tex" "\\def\\to{\\ifnextchar/{\\toop}{\\toop/>/}}")
% (find-diagxyfile "")
%
\def\diagxyto{\ifnextchar/{\toop}{\toop/>/}}
\def\mon{\diagxyto/ >->/}
\def\epi{\diagxyto/->>/}
\def\toleft{\diagxyto/<-/}
\def\monleft{\diagxyto/<-< /}
\def\epileft{\diagxyto/<<-/}
\def\to{\rightarrow}


% \defded and \ded, for deduction trees
% «defded»  (to ".defded")
% «ded»  (to ".ded")
%
% (find-texbookfile "texbook.tex" "csname")
% (find-texbookfile "texbook.tex" "*|\\csname|")
%\def\ded#1{\csname ded-#1\endcsname}
\def\defded#1#2{\expandafter\def\csname ded-#1\endcsname{#2}}

% (find-texbookfile "texbook.tex" "|\\ifundefined#1|")
% (find-texbookfile "texbook.tex" "test if tokens agree")
% (find-texbookpage (+ 11 210)    "test if tokens agree")
% (find-texbooktext               "test if tokens agree")
% (find-texbookpage (+ 11 40)  "Exercise 7.7: define \\ifundefined")
% (find-texbookpage (+ 11 308) "Exercise 7.7: answer")
% (find-texbookpage (+ 11 210) "\\ifx: test if tokens agree")
%
\def\ifdedundefined#1{\expandafter\ifx\csname ded-#1\endcsname\relax}
\def\ded#1{\ifdedundefined{#1}
    \errmessage{UNDEFINED DEDUCTION: #1}
  \else
    \csname ded-#1\endcsname
  \fi
}
%
\def\undefded#1{\expandafter\def\csname ded-#1\endcsname{\text{#1 undef'd}}}


% \defdiag and \diag, for diagxy diagrams
% «defdiag»  (to ".defdiag")
% «diag»  (to ".diag")
%
\def\defdiag#1#2{\expandafter\def\csname diag-#1\endcsname{#2}}
\def\ifdiagundefined#1{\expandafter\ifx\csname diag-#1\endcsname\relax}
\def\diag#1{\ifdiagundefined{#1}
    \errmessage{UNDEFINED DIAGRAM: #1}
  \else
    \bfig\csname diag-#1\endcsname\efig
  \fi
}
%
\def\undefdiag#1{\expandafter\def\csname diag-#1\endcsname{\text{#1 undef'd}}}

% 2010apr21, for the new "BOX" trick in dednat4...
% These definitions override the previous ones.
\def\diagprep#1{}
\def\defprepareddiag#1#2#3{\expandafter\def\csname diag-#1\endcsname{#2\bfig#3\efig}}
\def\defdiag#1#2{\expandafter\def\csname diag-#1\endcsname{\bfig#2\efig}}
\def\ifdiagundefined#1{\expandafter\ifx\csname diag-#1\endcsname\relax}
\def\diag#1{\ifdiagundefined{#1}
    \errmessage{UNDEFINED DIAGRAM: #1}
  \else
    \csname diag-#1\endcsname
  \fi
}







% Local Variables:
% coding:               raw-text-unix
% ee-delimiter-percent: "\n%\n"
% ee-anchor-format:     "«%s»"
% End:
