]> git.donarmstrong.com Git - lilypond.git/blobdiff - tex/fetdefs.tex
release: 1.0.8
[lilypond.git] / tex / fetdefs.tex
index ef2c5d39650cc3b203ebaa9143614f9a2ad8da71..1f1f6d9b74ebd907988582da796188d3e5fab413 100644 (file)
 % fetdefs.tex
-% encapsulating tex backend for auto-generated font-en-tja definitions
-
-\def\fetsixteendefs{
-        \font\fontentja=feta16
-        \font\vetfont=feta-beams16
-        \font\fetanummer=feta-nummer8
-        \font\dynfont=feta-din10 scaled \magstep1
-        \font\bracefont=feta-braces16
-        \font\fingerfont=feta-nummer5
-}
-\def\fettwentydefs{
-        \font\fontentja=feta20
-        \font\vetfont=feta-beams20
-        \font\fetanummer=feta-nummer10
-        \font\dynfont=feta-din10 scaled \magstep2
-        \font\bracefont=feta-braces20
-        \font\fingerfont=feta-nummer6
-}
+% encapsulating tex backend for auto-generated feta definitions
 
-\def\fetdef#1#2{\def#1{%
-        \hbox{\fetchar{#2}}}}
+\def\placebox#1#2#3{%
+        \botalign{\hbox{\raise #1\leftalign{\kern #2{}#3}}}}%
 
-\def\fetchar#1{\fontentja\char#1}
 
-%\input feta16
-\input feta20
-
-\def\beamslope#1#2{{\count0=#2\advance\count0 by#1
-        \advance\count0by128
-        {\vetfont\char\count0}}}
+\def\fetsixteendefs{%
+  \font\fetasixteen = feta16
+  \font\fetanummersixteen = feta-nummer8
+  \font\dynfontsixteen = feta-din10 scaled \magstep 1
+  \font\bracefontsixteen = feta-braces16
+  \font\fingerfontsixteen = feta-nummer4
+  \font\markfontsixteen = feta-nummer10
+\def\currentsize{sixteen}
+}
 
-% stacked numbers; overrules def in lilyponddefs
-% widest num should be .40 balkheight
-% oeps: \meter 12/8;
-\def\generalmeter#1#2{%
-        \vbox to 0pt{\vss%
-        \hbox to0.45\balkheight{\hss\fetanummer #1\hss}%
-        \nointerlineskip%
-        \hbox to0.45\balkheight{\hss\fetanummer #2\hss}%
-        \vss}}
+\def\fettwentydefs{%
+  \font\fetatwenty = feta20
+  \font\fetanummertwenty = feta-nummer10
+  \font\dynfonttwenty = feta-din10 scaled \magstep 2
+  \font\bracefonttwenty = feta-braces20
+  \font\fingerfonttwenty = feta-nummer5
+  \font\markfonttwenty = feta-nummer12
+\def\currentsize{twenty}
+}
 
-\def\pianobrace#1{{\bracefont\char #1}}
+\def\fettwentysixdefs{%
+  \font\fetatwentysix = feta26
+  \font\fetanummertwentysix = feta-nummer12
+  \font\dynfonttwentysix = feta-din10 scaled \magstep 3
+  \font\bracefonttwentysix = feta-braces16
+  \font\fingerfonttwenty = feta-nummer7
+  \font\markfonttwentysix = feta-nummer14
+\def\currentsize{twentysix}
+}
 
-\newcount\embedcount\embedcount=0
-\newwrite\checkexists
-\newwrite\embedfile
-\def\inputifexists#1{%
-        \openin\checkexists #1
-        \ifeof\checkexists
-                 \closein\checkexists
-        \else
-                \closein\checkexists
-                \input #1
-        \fi
+\def\fetthirteendefs{%
+  \font\fetathirteen = feta13
+  \font\fetanummerthirteen = feta-nummer5
+  \font\dynfontthirteen = feta-din10 scaled \magstep 0
+  \font\bracefontthirteen = feta-braces16
+  \font\fingerfontthirteen = feta-nummer3
+  \font\markfonttwentysix = feta-nummer8
+\def\currentsize{thirteen}
 }
-\def\embedcountid{feta-embed}
-\inputifexists{\embedcountid.aux}
-%
-% let's not overwrite -- and be sure to create new
-\def\storeembedcount{%
-        \immediate\openout\embedfile=\embedcountid.aux
-        \immediate\write\embedfile{\embedcount=\the\embedcount}
-        \immediate\closeout\embedfile
+
+\def\fetelevendefs{%
+  \font\fetaeleven = feta11
+  \font\fetanummereleven = feta-nummer5
+  \font\dynfonteleven = feta-din10        % scaled \magstep-1
+  \font\bracefonteleven = feta-braces16
+  \font\fingerfonteleven = feta-nummer3
+  \font\markfonttwentysix = feta-nummer7
+  \def\currentsize{eleven}
 }
 
+\def\sixteenfonts{\fetsixteendefs\cmrsixteen}
+\def\twentyfonts{\fettwentydefs\cmrtwenty}
+\def\twentysixfonts{\fettwentysixdefs\cmrtwenty}
+\def\elevenfonts{\fetelevendefs\cmreleven}
+\def\thirteenfonts{\fetthirteendefs\cmrthirteen}
 
+\def\bracefont{\csname bracefont\currentsize\endcsname}
+\def\fetanummer{\csname fetanummer\currentsize\endcsname}
+\def\dynfont{\csname dynfont\currentsize\endcsname}
+\def\fingerfont{\csname fingerfont\currentsize\endcsname}
+\def\markfont{\csname markfont\currentsize\endcsname}
 
+%\sixteenfonts
+%\twentysixfonts
+%\twentyfonts
+%\elevenfonts
+%\thirteenfonts
 
-%
-% WARNING: don't leave blank lines in the PS-code; they are
-% transformed into \par 
-%
+\def\switchfont#1{\def\currentsize{#1}\csname feta\currentsize\endcsname}
 
+\def\fetdef#1#2{%
+  \def#1{\hbox{\fetchar{#2}}}}
+\def\fetchar#1{\char#1}
 
-\def\turnOnPostScript{
-\def\embeddedps##1{
-        %
-        % This sets CTM so that you get to the currentpoint
-        % by executing a 0 0 moveto
-        \special{ps: @beginspecial @setspecial ##1 @endspecial}       
-}
-\special{ps:
-/draw_decresc
-        {
-                /ht exch def
-                /wd exch def
-%
-                0 ht moveto
-                wd ht neg rlineto
-                wd neg ht neg rlineto 
-                stroke
-        }
-        def
-        /draw_cresc
-        {
-                /ht exch def
-                /wd exch def
-%
-                0 0 moveto
-                wd ht rmoveto
-                wd neg ht neg rlineto 
-                wd ht neg rlineto
-                stroke
-        }
-        def
-}
-}
+%\input feta16
+%\input feta20
 
-\def\turnOnExperimentalFeatures{
-% draw a slur in embedded postscript
-\special{ps:
-/xbow 1 3 div def
-/ybow 1 4 div def
-/thin 0.2 def
-/thick thin 5 mul def
-/draw_slur { 
-        % up or down?
-        /dir exch def
-%       
-%       for mo*tex shift
-%       exch
-%       1 copy /dx exch def
-%       exch
-%
-        % calc angle alpha
-        2 copy exch atan /alpha exch def
-        % calc len(gth)
-        2 exp exch 2 exp add sqrt /len exch def
-%
-        % add and calc z2, z3
-        len xbow mul
-        len ybow mul dir mul
-        1 xbow sub len mul
-        len ybow mul dir mul
-%       
-        % add z4, z1
-        len 0 
-        0 0
-%
-        % add and calc z5..z8 
-        8 copy
-        thin dir mul sub
-        8 2 roll
-        thin dir mul sub
-        8 2 roll
-        thick dir mul sub
-        8 2 roll
-        thick dir mul sub
-%
-        % reverse order, must be cycle
-        8 6 roll
-        6 2 roll
-        4 2 roll
-        8 6 roll
-%       
-        % set z1..z4
-        16 8 roll
+% stacked numbers; overrules def in lilyponddefs
+% widest num should be .40 balkheight
+% oeps: \meter 12/8;
 %
-        alpha rotate
-%       silly mo*tex convention
-%       dx 2 div -1 mul 0 translate
-        % draw z1..z4
-        moveto curveto
-        % draw z5..z8
-        lineto curveto
-        % cycle
-        0 0 lineto
-        fill
-} def }
-}
-
-\def\embeddedtex#1{#1}
+% \allabreve, \threetwometer etc. have zero as the second parameter.
 
-\def\embeddedmf#1{
-        \edef\embedid{feta-sleur-\number\embedcount}
-        \immediate\openout\embedfile=\embedid.mf
-        \global\advance\embedcount by 1
+\def\generalmeter#1#2{%
+  \ifnum #2 = 0\relax
+    \ifcase #1
+    \or\or
+      % 2
+      \allabreve
+    \or
+      % 3
+      \threetwometer    % tempus perfectum cum prolatione imperfecta
+    \or
+      % 4
+      \fourfourmeter    % tempus imperfectum cum prolatione imperfecta
+    \or\or
+      % 6
+      \sixfourmeter     % tempus imperfectum cum prolatione perfecta
+    \or\or\or
+      % 9
+      \ninefourmeter    % tempus perfectum cum prolatione perfecta
+    \fi
+  \else
+    \vbox to 0pt{%
+      \vss
+      \hbox to 0.45\staffheight{\hss \fetanummer #1\hss}%
+      \nointerlineskip
+      \hbox to 0.45\staffheight{\hss \fetanummer #2\hss}%
+      \vss}%
+  \fi}
 
-% should write ``automatically generated.''
-%        \immediate\write\embedfile{\def\
-%       
-%      }
+\def\pianobrace#1{{\bracefont\char #1}}
+\def\staffbracket#1{{\centeralign{\bracketfont\char #1}}}
 
-        \immediate\write\embedfile{#1}
+\def\embeddedtex#1{}
+\def\embeddedps#1{}
+\def\embeddedmf#1#2{}
+\def\embedclose{}
 
-        \immediate\closeout\embedfile
-        \font\expandafter\embedid\expandafter=\embedid
-        \embedid\char0
-}
+\input lily-ps-defs
 
-\def\notex{\def\embeddedtex##1{}}
-\def\nopostscript{\def\embeddedps##1{}}
-\def\nometafont{\def\embeddedmf##1{}}
-
-% dat heb je handig gedaan, lieverd!
-\nometafont
-%\nopostscript
-%\notex
+% uncomment to use runtime MF
+%
+% \input lily-mf-defs
 
-\def\EndLilyPondOutput{
-        \storeembedcount
-        \csname bye\endcsname
+\def\EndLilyPondOutput{%
+  \embedclose
+  \csname bye\endcsname
 }
 
-
-
+\endinput