]> git.donarmstrong.com Git - lilypond.git/blobdiff - mf/feta-klef.mf
patch::: 1.3.26.jcn1
[lilypond.git] / mf / feta-klef.mf
index db42af1a36a1c9469870fe8000497c4de0f3d30a..579e555585d1b3d0aa8f82b1c2a816a15412cf05 100644 (file)
@@ -1,36 +1,30 @@
-% feta-klef.mf --  implement Clefs
+% feta-klef.mf --  implement Clefs -*-Fundamental-*-
 % 
 % part of LilyPond's pretty-but-neat music font
 %
 % source file of the Feta (not the Font-En-Tja) music font
 % 
-% (c) 1997, 1998 Han-Wen Nienhuys <hanwen@stack.nl>,
+% (c) 1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>,
 % Jan Nieuwenhuizen <janneke@gnu.org>
 
 
 fet_begingroup("clefs");
 
 %
-% [Ross] says that clefs take 1 interline space on the left and right
+% [Ross] says that clefs take 1 staff_space space on the left and right
 %
 def set_horizontal_spacing =
        save left_space ,right_space;
-       left_space# = reduced_il#;
-       right_space# = reduced_il#;
+       left_space# = 0;
+       right_space# = 0;
 enddef;
 
-def draw_staff(expr first, last)=
-       pickup pencircle scaled stafflinethickness;
-       for i:= first step 1 until last:
-               draw (- interline, i* interline) .. (4 interline, i* interline);
-       endfor
-       enddef;
 
 % [Wanske] says the bulbs should be positioned about 1/4 right of the
 % "arrow"
 def draw_c_clef (expr reduction) = 
        save hair, norm, reduced_il, right_edge;
-       reduced_il#=interline#*reduction;
+       reduced_il#=staff_space#*reduction;
        norm#:=2/3reduced_il#;
        hair#:=1/6norm#;
 
@@ -80,14 +74,14 @@ def draw_c_clef (expr reduction) =
        draw_flare(z7r,180,-90,hair,norm-1/2hair);
        enddef;
 
-fet_beginchar ("C clef", "alto", "altoclef")
+fet_beginchar ("C clef", "C", "altoclef")
        if test = 1:
                draw_staff (-2,2);
        fi;
        draw_c_clef (1.0);
 fet_endchar;
 
-fet_beginchar ("C clef", "alto_change", "caltoclef")
+fet_beginchar ("C clef", "C_change", "caltoclef")
        if test = 1:
                draw_staff (-2,2);
        fi;
@@ -105,9 +99,9 @@ fet_endchar;
 % [Wanske] says that the extreme x point should be exactly between 
 % the dots, but her picture shows that the extreme is ~ 0.2 ss lower
 
-def draw_bass_klef(expr exact_center, reduction) = 
+def draw_bass_clef(expr exact_center, reduction) = 
        save reduced_il, left_tilt, left_thick, ball_to_right;
-       reduced_il# = interline# * reduction;
+       reduced_il# = staff_space# * reduction;
        
        set_horizontal_spacing;
        ball_to_right# = 2.1 reduced_il#;
@@ -131,7 +125,7 @@ def draw_bass_klef(expr exact_center, reduction) =
        x3l - x1l =  ball_to_right;
        x2 = .5 [x1,x3];
        x3l - x3r = .48 reduced_il;
-       y3l = -0.05 interline;
+       y3l = -0.05 staff_space;
        x4 = x1l - stafflinethickness;
        y4 = -2.2  reduced_il;
        z5 = (x3l +  1/3 reduced_il, .5 reduced_il);
@@ -152,7 +146,7 @@ def draw_bass_klef(expr exact_center, reduction) =
        penlabels(1,2,3,4);
 
        save dot_diam;
-       2 dot_diam = reduction* (interline - stafflinethickness);
+       2 dot_diam = reduction* (staff_space - stafflinethickness);
        pickup pencircle scaled dot_diam;
        draw z5;
        draw z5 yscaled -1;
@@ -160,14 +154,14 @@ enddef;
 
 
 
-fet_beginchar("F clef ", "bass", "bassclef")
+fet_beginchar("F clef ", "F", "bassclef")
        if test = 1:
                draw_staff(-3,1);
        fi;
-       draw_bass_klef((.5 interline#, 0), 1.0);
+       draw_bass_clef((.5 staff_space#, 0), 1.0);
 fet_endchar;
-fet_beginchar("F clef (reduced)", "bass_change", "cbassclef")
-       draw_bass_klef((.4 interline#, 0),0.8);
+fet_beginchar("F clef (reduced)", "F_change", "cbassclef")
+       draw_bass_clef((.4 staff_space#, 0),0.8);
 fet_endchar;
 
 
@@ -188,11 +182,14 @@ fet_endchar;
 % Ikzelf heb bijvoorbeeld over mijn eerste gave G-sleutel
 % 35 kilobyte metafont, 12 patchlevels, 0 vriendinnen en 45 dagen gedaan
 %
+%  -- vrij naar Van Kooten & De Bie
+%
+
 def draw_gclef (expr exact_center, reduction)=
        save reduced_il, downstroke_dir, downstroke_angle, hair, center;
        save breapth_factor, inner_thick_end, thinness, thickness, thinnib;
        save inner_start_angle, thinness, thinpen;
-       reduced_il# = interline# * reduction;
+       reduced_il# = staff_space# * reduction;
        define_pixels(reduced_il);
        pair downstroke_dir, center;
 
@@ -301,14 +298,14 @@ def draw_gclef (expr exact_center, reduction)=
 enddef;
 
 
-fet_beginchar("G clef", "treble", "trebleclef")
+fet_beginchar("G clef", "G", "trebleclef")
        if test = 1:
                draw_staff(-1,3);
        fi;
-       draw_gclef((1.7 interline#,0), 1.0);
+       draw_gclef((1.7 staff_space#,0), 1.0);
 fet_endchar;
-fet_beginchar("G clef", "treble_change", "ctrebleclef")
-       draw_gclef((1.3 interline#,0), .8);
+fet_beginchar("G clef", "G_change", "ctrebleclef")
+       draw_gclef((1.3 staff_space#,0), .8);
 fet_endchar;
 
 fet_endgroup("clefs");