diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/tengwarscript/tengwarscript.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/tengwarscript/tengwarscript.sty | 366 |
1 files changed, 366 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/tengwarscript/tengwarscript.sty b/Master/texmf-dist/tex/latex/tengwarscript/tengwarscript.sty new file mode 100644 index 00000000000..50350773394 --- /dev/null +++ b/Master/texmf-dist/tex/latex/tengwarscript/tengwarscript.sty @@ -0,0 +1,366 @@ +%% +%% This is file `tengwarscript.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% tengwarscript.dtx (with options: `tengwarscript.sty,package') +%% Copyright (C) 2006 Ignacio Fernández Galván, all rights reserved. +%% If you modify this file, you must change its name first. +%% You are NOT ALLOWED to distribute this file alone. You are NOT +%% ALLOWED to take money for the distribution or use of either this +%% file or a changed version, except for a nominal charge for copying +%% etc. +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{tengwarscript}[2006/01/03 v1.2 TengwarScript for LaTeX] + +\RequirePackage{fp-basic} +\RequirePackage{fp-snap} +\FPmessagesfalse + +\DeclareOption{parmaite}{\input{parmaite.cfg}\tengwarparmaite} +\DeclareOption{unicodeparmaite}{\input{unicodeparmaite.cfg}\tengwarunicodeparmaite} +\DeclareOption{elfica}{\input{elfica.cfg}\tengwarelfica} +\DeclareOption{formal}{\input{formal.cfg}\tengwarformal} +\DeclareOption{annatar}{\input{annatar.cfg}\tengwarannatar} +\DeclareOption{annatarbold}{\input{annatarbold.cfg}\tengwarannatarbold} +\DeclareOption{annataritalic}{\input{annataritalic.cfg}\tengwarannataritalic} +\DeclareOption{annatarbolditalic}{\input{annatarbolditalic.cfg}\tengwarannatarbolditalic} +\DeclareOption{quenya}{\input{quenya.cfg}\tengwarquenya} +\DeclareOption{quenyacapI}{\input{quenyacapI.cfg}\tengwarquenyacapI} +\DeclareOption{quenyacapII}{\input{quenyacapII.cfg}\tengwarquenyacapII} +\DeclareOption{sindarin}{\input{sindarin.cfg}\tengwarsindarin} +\DeclareOption{sindarincapI}{\input{sindarincapI.cfg}\tengwarsindarincapI} +\DeclareOption{sindarincapII}{\input{sindarincapII.cfg}\tengwarsindarincapII} +\DeclareOption{noldor}{\input{noldor.cfg}\tengwarnoldor} +\DeclareOption{noldorcapI}{\input{noldorcapI.cfg}\tengwarnoldorcapI} +\DeclareOption{noldorcapII}{\input{noldorcapII.cfg}\tengwarnoldorcapII} +\DeclareOption{teleri}{\input{teleri.cfg}\tengwarteleri} +\DeclareOption{all}{\ExecuteOptions{% + unicodeparmaite,elfica,formal,% + annatar,annatarbold,annataritalic,annatarbolditalic,% + quenya,quenyacapI,quenyacapII,% + sindarin,sindarincapI,sindarincapII,% + noldor,noldorcapI,noldorcapII,% + teleri,parmaite% +}} +\DeclareOption*{\PackageError{tengwar}{Unknown option `\CurrentOption'}} + +\def\teng@mag{1.0} +\def\teng@setfont{% + \if\teng@usefont0% + \font \teng@font=\fontname\font% + \else% + \def\teng@scaled{ scaled }% + \FPmul{\teng@usemag}{\teng@mag}{\teng@defaultmag}% + \FPround{\teng@usemag}{\teng@usemag}{0}% + \font \teng@font=\teng@usefont\teng@scaled\teng@usemag% + \fi% +} + +\newcommand{\teng@setkern}[7]{% + \FPset{\@kernt}{#1}\global\edef\teng@kernt{\@kernt}% kern for upper tehtar + \FPset{\@kernb}{#2}\global\edef\teng@kernb{\@kernb}% kern for lower tehtar + \FPset{\@lower}{#3}\global\edef\teng@lower{\@lower}% amount to raise upper tehtar + \FPset{\@raise}{#4}\global\edef\teng@raise{\@raise}% amount to lower lower tehtar + \FPset{\@kernhook}{#5}\global\edef\teng@kernhook{\@kernhook}% kern for righthook + \FPset{\@raisehook}{#6}\global\edef\teng@raisehook{\@raisehook}% amount to raise right hook + \global\edef\teng@hookselect{#7}% hook type selector +} +\newcommand{\teng@addkern}[6]{% + \FPadd{\@kernt}{\teng@kernt}{#1}\global\edef\teng@kernt{\@kernt}% + \FPadd{\@kernb}{\teng@kernb}{#2}\global\edef\teng@kernb{\@kernb}% + \FPadd{\@lower}{\teng@lower}{#3}\global\edef\teng@lower{\@lower}% + \FPadd{\@raise}{\teng@raise}{#4}\global\edef\teng@raise{\@raise}% + \FPadd{\@kernhook}{\teng@kernhook}{#5}\global\edef\teng@kernhook{\@kernhook}% + \FPadd{\@raisehook}{\teng@raisehook}{#6}\global\edef\teng@raisehook{\@raisehook}% +} + +\def\teng@place@tehta #1{\kern-\teng@kernt ex\makebox[0pt]{\raisebox{\teng@raise ex}{#1}}\kern\teng@kernt ex} +\def\teng@place@tehtabelow #1{\kern-\teng@kernb ex\makebox[0pt]{\raisebox{-\teng@lower ex}{#1}}\kern\teng@kernb ex} + +\def\teng@strutwidth{0.0pt} +\def\teng@strut{\teng@strutt\teng@strutb} + +\newcommand{\teng@type}[1]{\bgroup\teng@font#1\egroup} + +\newcommand{\tengmag}[1]{% + \def\teng@mag{#1}% + \teng@setfont% +} + +\newcommand{\tengwa}[1]{\bgroup\teng@font\teng@strut\char#1\egroup} + + % tengwar +\newcommand{\Tempty} {\teng@type{\teng@empty}} +\newcommand{\Ttinco} {\teng@type{\teng@tinco}} +\newcommand{\Tparma} {\teng@type{\teng@parma}} +\newcommand{\Tcalma} {\teng@type{\teng@calma}} +\newcommand{\Tquesse} {\teng@type{\teng@quesse}} +\newcommand{\Tando} {\teng@type{\teng@ando}} +\newcommand{\Tumbar} {\teng@type{\teng@umbar}} +\newcommand{\Tanga} {\teng@type{\teng@anga}} +\newcommand{\Tungwe} {\teng@type{\teng@ungwe}} +\newcommand{\Tthuule} {\teng@type{\teng@thuule}} +\newcommand{\Tformen} {\teng@type{\teng@formen}} +\newcommand{\Taha} {\teng@type{\teng@aha}} +\newcommand{\Thwesta} {\teng@type{\teng@hwesta}} +\newcommand{\Tanto} {\teng@type{\teng@anto}} +\newcommand{\Tampa} {\teng@type{\teng@ampa}} +\newcommand{\Tanca} {\teng@type{\teng@anca}} +\newcommand{\Tunque} {\teng@type{\teng@unque}} +\newcommand{\Tnuumen} {\teng@type{\teng@nuumen}} +\newcommand{\Tmalta} {\teng@type{\teng@malta}} +\newcommand{\Tnoldo} {\teng@type{\teng@noldo}} +\newcommand{\Tnwalme} {\teng@type{\teng@nwalme}} +\newcommand{\Toore} {\teng@type{\teng@oore}} +\newcommand{\Tvala} {\teng@type{\teng@vala}} +\newcommand{\Tanna} {\teng@type{\teng@anna}} +\newcommand{\Tvilya} {\teng@type{\teng@vilya}} +\newcommand{\Textendedtinco} {\teng@type{\teng@extendedtinco}} +\newcommand{\Textendedparma} {\teng@type{\teng@extendedparma}} +\newcommand{\Textendedcalma} {\teng@type{\teng@extendedcalma}} +\newcommand{\Textendedquesse} {\teng@type{\teng@extendedquesse}} +\newcommand{\Textendedando} {\teng@type{\teng@extendedando}} +\newcommand{\Textendedumbar} {\teng@type{\teng@extendedumbar}} +\newcommand{\Textendedanga} {\teng@type{\teng@extendedanga}} +\newcommand{\Textendedungwe} {\teng@type{\teng@extendedungwe}} +\newcommand{\Troomen} {\teng@type{\teng@roomen}} +\newcommand{\Tarda} {\teng@type{\teng@arda}} +\newcommand{\Tlambe} {\teng@type{\teng@lambe}} +\newcommand{\Talda} {\teng@type{\teng@alda}} +\newcommand{\Troomenalt} {\teng@type{\teng@roomenalt}} +\newcommand{\Tardaalt} {\teng@type{\teng@ardaalt}} +\newcommand{\Tlambealt} {\teng@type{\teng@lambealt}} +\newcommand{\Tsilme} {\teng@type{\teng@silme}} +\newcommand{\Tsilmenuquerna} {\teng@type{\teng@silmenuquerna}} +\newcommand{\Tesse} {\teng@type{\teng@esse}} +\newcommand{\Tessenuquerna} {\teng@type{\teng@essenuquerna}} +\newcommand{\Tsilmealt} {\teng@type{\teng@silmealt}} +\newcommand{\Tsilmenuquernaalt} {\teng@type{\teng@silmenuquernaalt}} +\newcommand{\Tessealt} {\teng@type{\teng@essealt}} +\newcommand{\Tessenuquernaalt} {\teng@type{\teng@essenuquernaalt}} +\newcommand{\Thyarmen} {\teng@type{\teng@hyarmen}} +\newcommand{\Thalla} {\teng@type{\teng@halla}} +\newcommand{\Thwestasindarinwa} {\teng@type{\teng@hwestasindarinwa}} +\newcommand{\Tyanta} {\teng@type{\teng@yanta}} +\newcommand{\Tuure} {\teng@type{\teng@uure}} +\newcommand{\Tosse} {\teng@type{\teng@osse}} +\newcommand{\Ttelco} {\teng@type{\teng@telco}} +\newcommand{\Taara} {\teng@type{\teng@aara}} +\newcommand{\Tlefthook} {\teng@type{\teng@lefthook}} +\newcommand{\Trighthook} {\teng@type{\csname teng@righthook\@Roman{\teng@hookselect}\endcsname}}% +\newcommand{\Tcurlyhook} {\teng@type{\csname teng@curlyhook\@Roman{\teng@hookselect}\endcsname}}% +\newcommand{\Tuphook} {\teng@type{\csname teng@uphook\@Roman{\teng@hookselect}\endcsname}}% + % tehtar +\newcommand{\TTdot} {\teng@type{\teng@tehta@dot}} +\newcommand{\TTacute} {\teng@type{\teng@tehta@acute}} +\newcommand{\TTthreedots} {\teng@type{\teng@tehta@threedots}} +\newcommand{\TTrightcurl} {\teng@type{\teng@tehta@rightcurl}} +\newcommand{\TTleftcurl} {\teng@type{\teng@tehta@leftcurl}} +\newcommand{\TTcaron} {\teng@type{\teng@tehta@caron}} +\newcommand{\TTdoubleacute} {\teng@type{\teng@tehta@doubleacute}} +\newcommand{\TTdoublerightcurl} {\teng@type{\teng@tehta@doublerightcurl}} +\newcommand{\TTdoubleleftcurl} {\teng@type{\teng@tehta@doubleleftcurl}} +\newcommand{\TTtwodots} {\teng@type{\teng@tehta@twodots}} +\newcommand{\TTtilde} {\teng@type{\teng@tehta@tilde}} +\newcommand{\TTlefttilde} {\teng@type{\teng@tehta@lefttilde}} +\newcommand{\TTnasalizer} {\teng@type{\teng@tehta@nasalizer}} +\newcommand{\TTdoubler} {\teng@type{\teng@tehta@doubler}} +\newcommand{\TTdotbelow} {\teng@type{\teng@tehta@dotbelow}} +\newcommand{\TTtwodotsbelow} {\teng@type{\teng@tehta@twodotsbelow}} +\newcommand{\TTthreedotsbelow} {\teng@type{\teng@tehta@threedotsbelow}} +\newcommand{\TTdoubleacutebelow} {\teng@type{\teng@tehta@doubleacutebelow}} +\newcommand{\TTrightcurlbelow} {\teng@type{\teng@tehta@rightcurlbelow}} +\newcommand{\TTleftcurlbelow} {\teng@type{\teng@tehta@leftcurlbelow}} +\newcommand{\TTverticalbarbelow} {\teng@type{\teng@tehta@verticalbarbelow}} + % numbers +\newcommand{\Tzero} {\teng@type{\teng@zero}} +\newcommand{\Tone} {\teng@type{\teng@one}} +\newcommand{\Ttwo} {\teng@type{\teng@two}} +\newcommand{\Tthree} {\teng@type{\teng@three}} +\newcommand{\Tfour} {\teng@type{\teng@four}} +\newcommand{\Tfive} {\teng@type{\teng@five}} +\newcommand{\Tsix} {\teng@type{\teng@six}} +\newcommand{\Tseven} {\teng@type{\teng@seven}} +\newcommand{\Teight} {\teng@type{\teng@eight}} +\newcommand{\Tnine} {\teng@type{\teng@nine}} +\newcommand{\Tten} {\teng@type{\teng@ten}} +\newcommand{\Televen} {\teng@type{\teng@eleven}} +\newcommand{\TTdecimal} {\teng@type{\teng@tehta@decimal}} +\newcommand{\TTduodecimal} {\teng@type{\teng@tehta@duodecimal}} +\newcommand{\TTleastsignificant} {\teng@type{\teng@tehta@leastsignificant}} + % punctuation +\newcommand{\Tcentereddot} {\teng@type{\teng@centereddot}} +\newcommand{\Tcolon} {\teng@type{\teng@colon}} +\newcommand{\Tthreeverticaldots} {\teng@type{\teng@threeverticaldots}} +\newcommand{\Tcenteredtilde} {\teng@type{\teng@centeredtilde}} +\newcommand{\Tcenteredlongtilde} {\teng@type{\teng@centeredlongtilde}} +\newcommand{\Texclamation} {\teng@type{\teng@exclamation}} +\newcommand{\Tquestion} {\teng@type{\teng@question}} +\newcommand{\Tparenthesis} {\teng@type{\teng@parenthesis}} +\newcommand{\Tromanquestion} {\teng@type{\teng@romanquestion}} +\newcommand{\Tromanexclamation} {\teng@type{\teng@romanexclamation}} +\newcommand{\Tromanperiod} {\teng@type{\teng@romanperiod}} +\newcommand{\Tromancomma} {\teng@type{\teng@romancomma}} +\newcommand{\Tromansemicolon} {\teng@type{\teng@romansemicolon}} +\newcommand{\Tromanquoteleft} {\teng@type{\teng@romanquoteleft}} +\newcommand{\Tromanquoteright} {\teng@type{\teng@romanquoteright}} +\newcommand{\Tromandblquoteleft} {\teng@type{\teng@romandblquoteleft}} +\newcommand{\Tromandblquoteright}{\teng@type{\teng@romandblquoteright}} +\newcommand{\Tromanparenleft} {\teng@type{\teng@romanparenleft}} +\newcommand{\Tromanparenright} {\teng@type{\teng@romanparenright}} + + % additional +\newcommand{\Ts} {\teng@type{\hspace{\teng@space ex}}} +\newcommand{\Tkern}[1] {\teng@type{\kern#1ex}} +\newcommand{\Tbox}[3][0] {\teng@type{\raisebox{#1ex}{\kern#2ex#3\kern-#2ex}}} + +\newenvironment{tengwar} +{\teng@font% + \hyphenchar\teng@font=-1\emergencystretch=2em + \renewcommand{\teng@type}[1]{##1}% +} +{} + +\def\teng@usefont{0} +\FPset{\teng@defaultmag}{1000}% +\def\teng@strutn{} +\def\teng@strutt{} +\def\teng@strutb{} +\def\teng@empty{[~]} +\def\teng@tinco{[tinco]} +\def\teng@parma{[parma]} +\def\teng@calma{[calma]} +\def\teng@quesse{[quesse]} +\def\teng@ando{[ando]} +\def\teng@umbar{[umbar]} +\def\teng@anga{[anga]} +\def\teng@ungwe{[ungwe]} +\def\teng@thuule{[th\'ule]} +\def\teng@formen{[formen]} +\def\teng@aha{[aha]} +\def\teng@hwesta{[hwesta]} +\def\teng@anto{[anto]} +\def\teng@ampa{[ampa]} +\def\teng@anca{[anca]} +\def\teng@unque{[unque]} +\def\teng@nuumen{[n\'umen]} +\def\teng@malta{[malta]} +\def\teng@noldo{[noldo]} +\def\teng@nwalme{[nwalme]} +\def\teng@oore{[\'ore]} +\def\teng@vala{[vala]} +\def\teng@anna{[anna]} +\def\teng@vilya{[vilya]} +\def\teng@extendedtinco{[extended~tinco]} +\def\teng@extendedparma{[extended~parma]} +\def\teng@extendedcalma{[extended~calma]} +\def\teng@extendedquesse{[extended~quesse]} +\def\teng@extendedando{[extended~ando]} +\def\teng@extendedumbar{[extended~umbar]} +\def\teng@extendedanga{[extended~anga]} +\def\teng@extendedungwe{[extended~ungwe]} +\def\teng@roomen{[r\'omen]} +\def\teng@arda{[arda]} +\def\teng@lambe{[lambe]} +\def\teng@alda{[alda]} +\def\teng@roomenalt{[alt.~r\'omen]} +\def\teng@ardaalt{[alt.~arda]} +\def\teng@lambealt{[alt.~lambe]} +\def\teng@silme{[silme]} +\def\teng@silmenuquerna{[silme~nuquerna]} +\def\teng@esse{[esse]} +\def\teng@essenuquerna{[esse~nuquerna]} +\def\teng@silmealt{[alt.~silme]} +\def\teng@silmenuquernaalt{[alt.~silme~nuquerna]} +\def\teng@essealt{[alt.~esse]} +\def\teng@essenuquernaalt{[alt.~esse~nuquerna]} +\def\teng@hyarmen{[hyarmen]} +\def\teng@halla{[halla]} +\def\teng@hwestasindarinwa{[hwesta~sindarinwa]} +\def\teng@yanta{[yanta]} +\def\teng@uure{[\'ure]} +\def\teng@osse{[osse]} +\def\teng@telco{[telco]} +\def\teng@aara{[\'ara]} +\def\teng@lefthook{[left~hook]} +\def\teng@righthook{[right~hook]} +\def\teng@curlyhook{[curly~hook]} +\def\teng@uphook{[up~hook]} +\def\teng@tehta@dot{[dot]} +\def\teng@tehta@acute{[acute]} +\def\teng@tehta@threedots{[three~dots]} +\def\teng@tehta@rightcurl{[right~curl]} +\def\teng@tehta@leftcurl{[left~curl]} +\def\teng@tehta@caron{[caron]} +\def\teng@tehta@doubleacute{[double~acute]} +\def\teng@tehta@doublerightcurl{[double~right~curl]} +\def\teng@tehta@doubleleftcurl{[double~left~curl]} +\def\teng@tehta@twodots{[two~dots]} +\def\teng@tehta@tilde{[tilde]} +\def\teng@tehta@lefttilde{[left~tilde]} +\def\teng@tehta@nasalizer{[nasalizer]} +\def\teng@tehta@doubler{[doubler]} +\def\teng@tehta@dotbelow{[dot~below]} +\def\teng@tehta@twodotsbelow{[two~dots~below]} +\def\teng@tehta@threedotsbelow{[three~dots~below]} +\def\teng@tehta@doubleacutebelow{[double~acute~below]} +\def\teng@tehta@rightcurlbelow{[right~curl~below]} +\def\teng@tehta@leftcurlbelow{[left~curl~below]} +\def\teng@tehta@verticalbarbelow{[vertical~bar~below]} +\def\teng@zero{[zero]} +\def\teng@one{[one]} +\def\teng@two{[two]} +\def\teng@three{[three]} +\def\teng@four{[four]} +\def\teng@five{[five]} +\def\teng@six{[six]} +\def\teng@seven{[seven]} +\def\teng@eight{[eight]} +\def\teng@nine{[nine]} +\def\teng@ten{[ten]} +\def\teng@eleven{[eleven]} +\def\teng@tehta@decimal{[decimal]} +\def\teng@tehta@duodecimal{[duodecimal]} +\def\teng@tehta@leastsignificant{[least~significant]} +\def\teng@centereddot{[centered~dot]} +\def\teng@colon{[colon]} +\def\teng@threeverticaldots{[three~vertical~dots]} +\def\teng@centeredtilde{[centered~tilde]} +\def\teng@centeredlongtilde{[centered~long~tilde]} +\def\teng@exclamation{[exclamation]} +\def\teng@question{[question]} +\def\teng@parenthesis{[parenthesis]} +\def\teng@romanquestion{[roman~question]} +\def\teng@romanexclamation{[roman~exclamation]} +\def\teng@romanperiod{[roman~period]} +\def\teng@romancomma{[roman~comma]} +\def\teng@romansemicolon{[roman~semicolon]} +\def\teng@romanquoteleft{[roman~left~quote]} +\def\teng@romanquoteright{[roman~right~quote]} +\def\teng@romandblquoteleft{[roman~left~double~quote]} +\def\teng@romandblquoteright{[roman~right~double~quote]} +\def\teng@romanparenleft{[roman~left~parenthesis]} +\def\teng@romanparenright{[roman~right~parenthesis]} +\ProcessOptions*\relax +\teng@setkern{0}{0}{0}{0}{0}{0}{0} +\tengmag{1.0} +\endinput +%% +%% End of file `tengwarscript.sty'. |