%%% Package File poetica.sty \newcount\poetic \newcount\poetbound \poetbound=4 \newcount\poetceiling \poetceiling=8 \newcount\poetfloor \poetfloor=0 \def\wordbounds{\def\fancyshape{F}} \def\nowordbounds{\def\fancyshape{f}}\nowordbounds % default \def\parsefontshape#1#2{\poetic=-1% for `non-text' fonts \if f#1\poetic=\poetbound \advance\poetic by#2 \fi \if n#1\poetic=\poetfloor \advance\poetic by#2 \fi } \def\setshape{% input is the value of \poetic \ifnum\poetic<0 \else \ifnum\poetic<\poetbound \edef\fshape{n\the\poetic}% \else\advance\poetic by-\poetbound \edef\fshape{\fancyshape\the\poetic}% \fi \fi } \newcommand{\Fontshape}[1]{\parsefontshape#1% \fontshape{#1}\selectfont} \newenvironment{Poetica}{% \begingroup\fontencoding{OT1}\fontfamily{poet}\fontsize{18}{22} \fontseries{m}\Fontshape{n3}\poetic=3 \setshape}{\endgroup} \let\dhyph=\- \let\mytabs=\+ % save discretionary hyphen, tab command \let\oldhat=^ \let\oldsub=_ \let\oldvert=| \catcode`\^\active \catcode`\_\active \catcode`\|\active \def\|{\oldvert} \let|=\noboundary \newcount\INC \INC 1 % an increment register \def^{\bgroup \let\compare=-\let\bump=\bumpdown \INC-1 \poetic=\poetceiling \afterassignment\getnextchar \global\let\nexttok= } \def_{\bgroup \let\compare=+\let\bump=\bumpup \INC 1 \poetic=\poetfloor \afterassignment\getnextchar \global\let\nexttok= } \def\-{\bgroup \let\compare=-\let\bump=\bumpdown \INC-1 \bump \afterassignment\getnextchar \global\let\nexttok= } \def\+{\bgroup \let\compare=+\let\bump=\bumpup \INC 1 \bump \afterassignment\getnextchar \global\let\nexttok= } \def\getnextchar{% \if\compare\nexttok % fancy sign? if so, bump the right way \bump \let\nextact\grabchar \else \edef\nextact{\noexpand\typeset\noexpand\nexttok}% default behavior \fi \nextact } \def\grabchar{\afterassignment\getnextchar \let\nexttok} \def\bumpdown{\advance\poetic \INC \ifnum\poetic<\poetfloor \poetic\poetfloor \fi} \def\bumpup{\advance\poetic \INC \ifnum\poetic>\poetceiling \poetic\poetceiling \fi} \def\typeset#1{\setshape\fontshape{\fshape}\selectfont #1\egroup} %% ornaments and ampersands \newcommand{\orn}[1]{{\fontshape{orn}\selectfont\symbol{#1}}} \newcommand{\amp}[1]{{\fontshape{amp}\selectfont\symbol{#1}}} \endinput