% Version 1.0 dated 31/01/90
% macros for tengwar in Quenya and Sindarin
\font\teng=teng10
\def\qac#1#2{\accent`#2#1}
\def\sac{\accent`}
\catcode`\^^I=12 % want to get at tab
{\catcode`\^=13%
% Because we define various things that conflict with plain TeX
% macros, we do all definitions inside the tengwar section, though
% this is of course expensive
\gdef\quenya{\teng\catcode`\^=13\let^=\qac\dotengdefs}
\gdef\sindarin{\teng\catcode`\^=13\let^=\sac\dotengdefs}}
\def\dotengdefs{%
\def\lap##1##2{\ooalign{##2\crcr\hidewidth##1\hidewidth}}%
\def\raisedlap##1##2{\ooalign{##2\crcr\hidewidth\raise0.35ex\hbox{##1}\hidewidth}}%
\def\lowlap##1##2{\ooalign{##2\crcr\hidewidth\vbox{\vskip0.2ex%
\hbox{##1}\vskip-.2ex}\hidewidth}}%
\def\verylowlap##1##2{\ooalign{##2\crcr\hidewidth\lower0.3ex%
\hbox{##1}\hidewidth}}%
\def\ssy{\verylowlap^^Zz}%
\def\ldot{\raisedlap^^El}%
\def\S{\kern-0.15em^^S}%
\def\s{\kern-0.15em^^T}%
%%%%\def\ll{\raisedlap^^Bl}%
\def\ll{\lap^^Cl}%
\def\,{\lap^^E}%
\def\y{\lap^^Y}\def\z{\lap^^Z}\def\Y{\lap"}\def\b{\lap^^B}\def\c{\lap^^C}%
\def\N{\lap^^N}\def\.{\accent`i}\def\\{\accent`e}\def\U{\accent`^^V}%
% control sequences for the extended tengwar
\chardef\xT=12\chardef\xf=16\chardef\xC=27\chardef\xK=11%
\chardef\xD=4\chardef\xv=18\chardef\xJ=10\chardef\xG=7%
} % end \dotengdefs
