]> git.donarmstrong.com Git - lilypond.git/blobdiff - mf/parmesan-heads.mf
Merge branch 'cvs-head' of http://lilypond.org/vc/lilypond into master-hanwen
[lilypond.git] / mf / parmesan-heads.mf
index de98f89d479c2665c30a55cec78395c1b10c3883..da64dbeb4b5a25a104f859a49bfb504dc5af3acc 100644 (file)
@@ -3,7 +3,7 @@
 % 
 % source file of LilyPond's pretty-but-neat music font
 % 
-% (c) 2001--2004 Juergen Reuter <reuter@ipd.uka.de>
+% (c) 2001--2006 Juergen Reuter <reuter@ipd.uka.de>
 % 
 % Neo-mensural heads originally by
 % Christian Mondrup and Mats Bengtsson
@@ -83,13 +83,13 @@ def draw_neomensural_brevis(expr brevwid) =
                -- z4l -- z4r -- z3r{left} .. z2r{up} -- cycle;
 
        addto currentpicture also currentpicture yscaled -1;
-       show z4r; show z4l;
        addto currentpicture also currentpicture 
                shifted (-x4r,0) xscaled -1 shifted (x4l,0);
 
 enddef;
 
 
+%%% This head does not seem to be used anywhere.  Junk me?  -- jr
 def draw_neomensural_left_stemmed_head (expr wid) =
        draw_neomensural_brevis(wid);
 
@@ -100,12 +100,13 @@ def draw_neomensural_left_stemmed_head (expr wid) =
        draw z6 .. z7;
 enddef;
 
-fet_beginchar("Left stemmed notehead", "lneomensural");
+%%% This head does not seem to be used anywhere.  Junk me?  -- jr
+fet_beginchar("Left stemmed notehead", "slneomensural");
        draw_neomensural_left_stemmed_head (2 staff_space#);
 fet_endchar;
 
 %
-% Some sources (eg Musix/OpusTeX think that the appendage should be on
+% Some sources (eg. Musix/OpusTeX) think that the appendage should be on
 % the left, some say right. Right wins democratically.
 %
 def draw_neomensural_longa (expr wid) =
@@ -181,38 +182,34 @@ def draw_neomensural_open_head (expr wid, height)=
        unfill z5 -- z6 -- z7 -- z8 --cycle;
 enddef;
 
-fet_beginchar("Neo-mensural open head","s0neomensural")
-      draw_neomensural_open_head (staff_space#, noteheight#);
-fet_endchar;
-
 %
 % WL says the thin lines should be thinner.
 %
-
 fet_beginchar("Harmonic notehead (Neo-mensural open)",
-               "0harmonic")
-
+             "s0harmonic")
        draw_neomensural_open_head (1.3 staff_space#, 1.3 noteheight#);
        charwx := head_width#;
        charwy := 0;
 fet_endchar;
 
+fet_beginchar("Neo-mensural semibrevis head","s0neomensural")
+      draw_neomensural_open_head (staff_space#, noteheight#);
+fet_endchar;
 
-fet_beginchar("Neo-mensural open head","s1neomensural")
+fet_beginchar("Neo-mensural minima head","s1neomensural")
       draw_neomensural_open_head (staff_space#, noteheight#);
 fet_endchar;
 
-fet_beginchar("Neo-mensural black head","s2neomensural")
+fet_beginchar("Neo-mensural semiminima head","s2neomensural")
       draw_neomensural_black_head (staff_space#, noteheight#);
 fet_endchar;
 
-
-
 def draw_mensural_brevis (expr wid) =
        % TODO.  For the moment, fall back to draw_neomensural_brevis.
        draw_neomensural_brevis(wid);
 enddef;
 
+%%% This head does not seem to be used anywhere.  Junk me?  -- jr
 def draw_mensural_left_stemmed_head (expr wid) =
        draw_mensural_brevis(wid);
        x6 = x7 = stem_width/2;
@@ -231,6 +228,7 @@ def draw_mensural_longa (expr wid) =
        draw z6 .. z7;
 enddef;
 
+%%% This head does not seem to be used anywhere.  Junk me?  -- jr
 fet_beginchar("Mensural left stemmed notehead", "slmensural");
        draw_mensural_left_stemmed_head (staff_space#)
 fet_endchar;
@@ -288,18 +286,33 @@ def draw_diamond_head (expr head_h, pen_w, pen_h, angle, open) =
 enddef;
 
 
-fet_beginchar("Mensural open head","s0mensural")
+fet_beginchar("Mensural semibrevis head","s0mensural")
        draw_diamond_head (staff_space#, 0.15, 0.30, 30, true);
 fet_endchar;
 
-fet_beginchar("Mensural open head","s1mensural")
+fet_beginchar("Mensural minima head","s1mensural")
        draw_diamond_head (staff_space#, 0.15, 0.30, 30, true);
 fet_endchar;
 
-fet_beginchar("Mensural black head","s2mensural")
+fet_beginchar("Mensural semiminima head","s2mensural")
        draw_diamond_head (staff_space#, 0.15, 0.30, 30, false);
 fet_endchar;
 
+fet_beginchar("Petrucci semibrevis head","s0petrucci")
+%      draw_diamond_head (1.8 staff_space#, 0.15, 0.40, 30, true);
+       draw_neomensural_open_head (staff_space#, 1.8 staff_space#);
+fet_endchar;
+
+fet_beginchar("Petrucci minima head","s1petrucci")
+%      draw_diamond_head (1.8 staff_space#, 0.15, 0.40, 30, true);
+       draw_neomensural_open_head (staff_space#, 1.8 staff_space#);
+fet_endchar;
+
+fet_beginchar("Petrucci semiminima head","s2petrucci")
+%      draw_diamond_head (1.8 staff_space#, 0.15, 0.40, 30, false);
+       draw_neomensural_black_head (staff_space#, 1.8 staff_space#);
+fet_endchar;
+
 
 %%%%%%%%
 %
@@ -313,9 +326,10 @@ fet_endchar;
 % parameterized punctum
 def punctum_char (expr verbose_name, internal_name,
                  left_stem, right_stem, linea, cavum,
-                 straight, auctum, direction_up, excentric, up_shift, down_shift, mag) =
+                 straight, auctum, rev_auctum, direction_up,
+                 excentric, up_shift, down_shift, mag) =
 
-       fet_beginchar(verbose_name, internal_name)
+       fet_beginchar(verbose_name, "s" & internal_name)
                save b_h, a_w;
                a_b := 1.54; % b_h*a_b/a_w = wd/ht
                b_h := 0.85;
@@ -339,21 +353,24 @@ def punctum_char (expr verbose_name, internal_name,
                        direction_sign# = -1;
                fi;
 
-               % convexity and excentricity
-               save u_convexity, u_excentricity;
+               % convexity and eccentricity
+               save u_convexity, u_eccentricity;
                if straight:
                        u_convexity# = -0.01ht#;
-                       u_excentricity# = 0.0ht#; % dummy
+                       u_eccentricity# = 0.0ht#; % dummy
                elseif auctum:
                        u_convexity# = -0.03ht#;
-                       u_excentricity# = +0.25ht#;
+                       u_eccentricity# = +0.25ht#;
+               elseif rev_auctum:
+                       u_convexity# = -0.10ht#;
+                       u_eccentricity# = -0.12ht#;
                else:
                        u_convexity# = -0.05ht#;
-                       u_excentricity# = 0.0ht#; % dummy
+                       u_eccentricity# = 0.0ht#; % dummy
                fi;
-               save convexity, excentricity;
+               save convexity, eccentricity;
                convexity# = direction_sign# * u_convexity#;
-               excentricity# = direction_sign# * u_excentricity#;
+               eccentricity# = direction_sign# * u_eccentricity#;
 
                % y shift offset
                save yoffs;
@@ -365,7 +382,7 @@ def punctum_char (expr verbose_name, internal_name,
                        yoffs# = 0.00ht#;
                fi
 
-               define_pixels(convexity, excentricity, yoffs, ht, wd);
+               define_pixels(convexity, eccentricity, yoffs, ht, wd);
                pickup pencircle scaled linethickness;
 
                path p;
@@ -382,15 +399,15 @@ def punctum_char (expr verbose_name, internal_name,
 
                save box_top, box_bt;
 
-               if auctum:
+               if auctum or rev_auctum:
                        z1a = (0.00wd + linethickness/2, yoffs_bt);
                        z2a = (0.21wd, yoffs_bt + 1.0*convexity);
                        z3a = (0.42wd - linethickness/2,
-                              yoffs_bt + 1.0*excentricity);
+                              yoffs_bt + 1.0*eccentricity);
                        box_top# = height# + yoffs_bt# +
-                               max(0, 1.0*convexity#, 1.0*excentricity#);
+                               max(0, 1.0*convexity#, 1.0*eccentricity#);
                        box_bt# = yoffs_bt# +
-                               min(0, 1.0*convexity#, 1.0*excentricity#);
+                               min(0, 1.0*convexity#, 1.0*eccentricity#);
                        p = z1a .. {right}z2a .. {direction}z3a --
                            z3b{-direction} .. z2b{left} .. z1b -- cycle;
                elseif excentric:
@@ -472,7 +489,7 @@ enddef;
 def inclinatum_char(expr verbose_name, internal_name,
                    small, stropha, auctum) =
 
-       fet_beginchar(verbose_name, internal_name)
+       fet_beginchar(verbose_name, "s"&internal_name)
                save ht, alpha;
                alpha# = 35;
                if small:
@@ -510,43 +527,43 @@ def inclinatum_char(expr verbose_name, internal_name,
 enddef;
 
 % punctum
-punctum_char("Ed. Vat. punctum", "vaticana-punctum",
+punctum_char("Ed. Vat. punctum", "vaticana.punctum",
             false, false, false, false, false,
-            false, false, false, false, false, 1.0);
+            false, false, false, false, false, false, 1.0);
 
 % punctum cavum (for OpusTeX compatibility)
-punctum_char("Ed. Vat. punctum cavum", "vaticana-punctum-cavum",
+punctum_char("Ed. Vat. punctum cavum", "vaticana.punctum.cavum",
             false, false, false, true, false,
-            false, false, false, false, false, 1.0);
+            false, false, false, false, false, false, 1.0);
 
 % linea punctum (for OpusTeX compatibility)
-punctum_char("Ed. Vat. linea punctum", "vaticana-linea-punctum",
+punctum_char("Ed. Vat. linea punctum", "vaticana.linea.punctum",
             false, false, true, false, false,
-            false, false, false, false, false, 1.0);
+            false, false, false, false, false, false, 1.0);
 
 % linea punctum cavum (for OpusTeX compatibility)
-punctum_char("Ed. Vat. linea punctum cavum", "vaticana-linea-punctum-cavum",
+punctum_char("Ed. Vat. linea punctum cavum", "vaticana.linea.punctum.cavum",
             false, false, true, true, false,
-            false, false, false, false, false, 1.0);
+            false, false, false, false, false, false, 1.0);
 
 % punctum inclinatum
-inclinatum_char("Ed. Vat. inclinatum", "vaticana-inclinatum",
+inclinatum_char("Ed. Vat. inclinatum", "vaticana.inclinatum",
                false, false, false);
 
 % pes lower punctum
-punctum_char("Ed. Vat. pes lower punctum", "vaticana-lpes",
+punctum_char("Ed. Vat. pes lower punctum", "vaticana.lpes",
             false, false, false, false, true,
-            false, true, false, false, false, 1.0);
+            false, false, true, false, false, false, 1.0);
 
 % pes lower punctum
-punctum_char("Ed. Vat. pes var lower punctum", "vaticana-vlpes",
+punctum_char("Ed. Vat. pes var lower punctum", "vaticana.vlpes",
             false, false, false, false, true,
-            false, true, false, false, true, 1.0);
+            false, false, true, false, false, true, 1.0);
 
 % pes upper punctum
-punctum_char("Ed. Vat. pes upper punctum", "vaticana-upes", 
+punctum_char("Ed. Vat. pes upper punctum", "vaticana.upes", 
             false, false, false, false, true,
-            false, false, false, false, false, 1.0);
+            false, false, false, false, false, false, 1.0);
 
 % pes upper punctum (shifted variation)
 %
@@ -554,19 +571,24 @@ punctum_char("Ed. Vat. pes upper punctum", "vaticana-upes",
 % avoid collision with the lower punctum note of the pes when the upper
 % punctum sits directly on top of the lower punctum.
 %
-punctum_char("Ed. Vat. var pes upper punctum", "vaticana-vupes",
+punctum_char("Ed. Vat. var pes upper punctum", "vaticana.vupes",
             false, false, false, false, true,
-            false, false, false, true, false, 1.0);
+            false, false, false, false, true, false, 1.0);
 
 % small punctum as used in epiphonus
-punctum_char("Ed. Vat. plica", "vaticana-plica", 
+punctum_char("Ed. Vat. plica", "vaticana.plica", 
             false, false, false, false, false,
-            false, false, false, false, false, 0.6);
+            false, false, false, false, false, false, 0.6);
+
+% small punctum as used in epiphonus
+punctum_char("Ed. Vat. var plica", "vaticana.vplica", 
+            false, false, false, false, false,
+            false, true, false, false, false, true, 0.6);
 
 % excentric punctum as used in epiphonus
-punctum_char("Ed. Vat. epiphonus", "vaticana-epiphonus", 
+punctum_char("Ed. Vat. epiphonus", "vaticana.epiphonus", 
             false, false, false, false, false,
-            false, true, true, false, false, 1.0);
+            false, false, true, true, false, false, 1.0);
 
 % excentric punctum as used in epiphonus (shifted variation)
 %
@@ -574,27 +596,32 @@ punctum_char("Ed. Vat. epiphonus", "vaticana-epiphonus",
 % avoid collision with the plica head when the plica sits directly on
 % top of the lower head.
 %
-punctum_char("Ed. Vat. var epiphonus", "vaticana-vepiphonus",
+punctum_char("Ed. Vat. var epiphonus", "vaticana.vepiphonus",
+            false, false, false, false, false,
+            false, false, true, true, false, true, 1.0);
+
+% small punctum as used in cephalicus
+punctum_char("Ed. Vat. rev. plica", "vaticana.reverse.plica",
             false, false, false, false, false,
-            false, true, true, false, true, 1.0);
+            false, false, true, false, false, false, 0.6);
 
 % small punctum as used in cephalicus
-punctum_char("Ed. Vat. rev. plica", "vaticana-reverse-plica",
+punctum_char("Ed. Vat. rev. var plica", "vaticana.reverse.vplica",
             false, false, false, false, false,
-            false, true, false, false, false, 0.6);
+            false, true, true, false, false, true, 0.6);
 
 % excentric punctum as used in cephalicus; without left stem
-punctum_char("Ed. Vat. cephalicus", "vaticana-inner-cephalicus",
+punctum_char("Ed. Vat. cephalicus", "vaticana.inner.cephalicus",
             false, false, false, false, false,
-            false, false, true, false, false, 1.0);
+            false, false, false, true, false, false, 1.0);
 
 % excentric punctum as used in cephalicus; with left stem
-punctum_char("Ed. Vat. cephalicus", "vaticana-cephalicus",
+punctum_char("Ed. Vat. cephalicus", "vaticana.cephalicus",
             true, false, false, false, false,
-            false, false, true, false, false, 1.0);
+            false, false, false, true, false, false, 1.0);
 
 % quilisma
-fet_beginchar("Ed. Vat. quilisma", "vaticana-quilisma")
+fet_beginchar("Ed. Vat. quilisma", "svaticana.quilisma")
        save b_h,a_w;
        a_b:=1.54; % b_h*a_b/a_w = wd/ht
        b_h:=0.85;
@@ -621,33 +648,33 @@ fet_beginchar("Ed. Vat. quilisma", "vaticana-quilisma")
 fet_endchar;
 
 % solesmes punctum inclinatum parvum
-inclinatum_char("Solesmes punctum inclinatum parvum", "solesmes-incl-parvum",
+inclinatum_char("Solesmes punctum inclinatum parvum", "solesmes.incl.parvum",
                true, false, false);
 
 % solesmes punctum auctum ascendens
-punctum_char("Solesmes punctum auctum ascendens", "solesmes-auct-asc",
+punctum_char("Solesmes punctum auctum ascendens", "solesmes.auct.asc",
             false, false, false, false, false,
-            true, true, false, false, false, 1.0);
+            true, false, true, false, false, false, 1.0);
 
 % solesmes punctum auctum descendens
-punctum_char("Solesmes punctum auctum descendens", "solesmes-auct-desc",
+punctum_char("Solesmes punctum auctum descendens", "solesmes.auct.desc",
             false, false, false, false, false,
-            true, false, false, false, false, 1.0);
+            true, false, false, false, false, false, 1.0);
 
 % solesmes punctum inclinatum auctum
-inclinatum_char("Solesmes punctum incl. auctum", "solesmes-incl-auctum",
+inclinatum_char("Solesmes punctum incl. auctum", "solesmes.incl.auctum",
                false, false, true);
 
 % solesmes stropha
-inclinatum_char("Solesmes stropha", "solesmes-stropha",
+inclinatum_char("Solesmes stropha", "solesmes.stropha",
                false, true, false);
 
 % solesmes stropha aucta
-inclinatum_char("Solesmes stropha aucta", "solesmes-stropha-aucta",
+inclinatum_char("Solesmes stropha aucta", "solesmes.stropha.aucta",
                false, true, true);
 
 % solesmes oriscus
-fet_beginchar("Solesmes oriscus", "solesmes-oriscus")
+fet_beginchar("Solesmes oriscus", "ssolesmes.oriscus")
        save b_h, a_w;
        a_b := 1.54; % b_h*a_b/a_w = wd/ht
        b_h := 0.85;
@@ -684,7 +711,7 @@ fet_endchar;
 %
 
 % inclinatum
-fet_beginchar("Ed. Med. inclinatum", "medicaea-inclinatum")
+fet_beginchar("Ed. Med. inclinatum", "smedicaea.inclinatum")
        draw_diamond_head (1.2staff_space#, 0, 0, 35, false);
 fet_endchar;
 
@@ -692,7 +719,7 @@ fet_endchar;
 def punctum_char (expr verbose_name, internal_name,
        left_up_stem, left_down_stem) =
 
-       fet_beginchar(verbose_name, internal_name)
+       fet_beginchar(verbose_name, "s"&internal_name)
 
                save a, beta, ht, wd;
                ht# = 2 staff_space#;
@@ -729,15 +756,15 @@ def punctum_char (expr verbose_name, internal_name,
 enddef;
 
 % punctum
-punctum_char("Ed. Med. punctum", "medicaea-punctum", 
+punctum_char("Ed. Med. punctum", "medicaea.punctum", 
        false, false);
 
 % left up-stemmed punctum
-punctum_char("Ed. Med. reverse virga", "medicaea-rvirga",
+punctum_char("Ed. Med. reverse virga", "medicaea.rvirga",
        true, false);
 
 % virga (i.e. left down-stemmed punctum)
-punctum_char("Ed. Med. virga", "medicaea-virga", 
+punctum_char("Ed. Med. virga", "medicaea.virga", 
        false, true);
 
 %%%%%%%%
@@ -753,7 +780,7 @@ punctum_char("Ed. Med. virga", "medicaea-virga",
 % parametrized punctum
 def punctum_char (expr verbose_name, internal_name,
        down_stem) =
-       fet_beginchar(verbose_name, internal_name)
+       fet_beginchar(verbose_name, "s" & internal_name)
                save alpha;
                alpha# = 55;
                draw_diamond_head (staff_space#, 0, 0, alpha#, false);
@@ -773,13 +800,13 @@ def punctum_char (expr verbose_name, internal_name,
 enddef;
 
 % punctum
-punctum_char("Hufnagel punctum", "hufnagel-punctum", false)
+punctum_char("Hufnagel punctum", "hufnagel.punctum", false)
 
 % virga
-punctum_char("Hufnagel virga", "hufnagel-virga",  true)
+punctum_char("Hufnagel virga", "hufnagel.virga",  true)
 
 % pes lower punctum
-fet_beginchar("Hufnagel pes lower punctum", "hufnagel-lpes")
+fet_beginchar("Hufnagel pes lower punctum", "shufnagel.lpes")
        save width, height, alpha;
        width# = 2*staff_space#;
        height# = 0.7*staff_space#;