]> git.donarmstrong.com Git - lilypond.git/blobdiff - mf/parmesan-noteheads.mf
Issue 5167/6: Changes: show \markup xxx = ... \etc assignments
[lilypond.git] / mf / parmesan-noteheads.mf
index cadcbceb2d41175eaab1c50ec5901daf8a53ca53..00b8578cb403cce9130535aba551562e8f5b5a50 100644 (file)
@@ -1,15 +1,15 @@
 % Feta (not the Font-En-Tja) music font --  ancient note heads
 % This file is part of LilyPond, the GNU music typesetter.
 %
-% Copyright (C) 2001--2012 Juergen Reuter <reuter@ipd.uka.de>
+% Copyright (C) 2001--2015 Juergen Reuter <reuter@ipd.uka.de>
 %
 % Neo-mensural heads originally by
 % Christian Mondrup and Mats Bengtsson
 %
-% LilyPond is free software: you can redistribute it and/or modify
+% The LilyPond font is free software: you can redistribute it and/or modify
 % it under the terms of the GNU General Public License as published by
 % the Free Software Foundation, either version 3 of the License, or
-% (at your option) any later version.
+% (at your option) any later version, or under the SIL Open Font License.
 %
 % LilyPond is distributed in the hope that it will be useful,
 % but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -166,7 +166,7 @@ def draw_neomensural_longa (expr wid, holeheight, direction) =
 enddef;
 
 
-def draw_neomensural_black_head (expr width, height) =
+def draw_neomensural_black_head (expr width, height, concaveness) =
        save head_width, head_height, stem_width;
        save ne, nw, ne_dist, nw_dist;
        pair ne, nw, ne_dist, nw_dist;
@@ -197,25 +197,25 @@ def draw_neomensural_black_head (expr width, height) =
        ne_dist := (nw rotated -90) * blot_diameter / 2;
 
        fill lft z1
-            .. (z1 + nw_dist)
-            -- (z2 + nw_dist)
+            .. (z1 + nw_dist){ ne rotated -concaveness }
+            .. { ne rotated concaveness }(z2 + nw_dist)
             .. top z2
-            .. (z2 + ne_dist)
-            -- (z3 + ne_dist)
+            .. (z2 + ne_dist){ nw rotated (180 - concaveness) }
+            .. { nw rotated (180 + concaveness) }(z3 + ne_dist)
             .. rt z3
-            .. (z3 - nw_dist)
-            -- (z4 - nw_dist)
+            .. (z3 - nw_dist){ ne rotated (180 - concaveness) }
+            .. { ne rotated (180 + concaveness) }(z4 - nw_dist)
             .. bot z4
-            .. (z4 - ne_dist)
-            -- (z1 - ne_dist)
+            .. (z4 - ne_dist){ nw  rotated -concaveness }
+            .. { nw  rotated concaveness }(z1 - ne_dist)
             .. cycle;
 
        labels (1, 2, 3, 4);
 enddef;
 
 
-def draw_neomensural_open_head (expr width, height)=
-       draw_neomensural_black_head (width, height);
+def draw_neomensural_open_head (expr width, height, concaveness)=
+       draw_neomensural_black_head (width, height, concaveness);
 
        save headNW, headSW, stem_width;
 
@@ -317,15 +317,15 @@ save nm_height, nm_width;
 nm_height := noteheight#;
 nm_width := staff_space#;
 fet_beginchar ("Neo-mensural semibrevis head", "s0neomensural");
-       draw_neomensural_open_head (nm_width, nm_height);
+       draw_neomensural_open_head (nm_width, nm_height, 0);
 fet_endchar;
 
 fet_beginchar ("Neo-mensural minima head", "s1neomensural");
-       draw_neomensural_open_head (nm_width, nm_height);
+       draw_neomensural_open_head (nm_width, nm_height, 0);
 fet_endchar;
 
 fet_beginchar ("Neo-mensural semiminima head", "s2neomensural");
-       draw_neomensural_black_head (nm_width, nm_height);
+       draw_neomensural_black_head (nm_width, nm_height, 0);
 fet_endchar;
 
 %%%%%%%%
@@ -342,13 +342,13 @@ fet_endchar;
 %
 
 fet_beginchar ("Harmonic notehead (Neo-mensural open)", "s0harmonic");
-       draw_neomensural_open_head (1.3 staff_space#, 1.3 noteheight#);
+       draw_neomensural_open_head (1.3 staff_space#, 1.3 noteheight#, 5);
        charwx := head_width#;
        charwy := 0;
 fet_endchar;
 
 fet_beginchar ("Harmonic notehead (Neo-mensural black)", "s2harmonic");
-       draw_neomensural_black_head (1.3 staff_space#, 1.3 noteheight#);
+       draw_neomensural_black_head (1.3 staff_space#, 1.3 noteheight#, 5);
        charwx := head_width#;
        charwy := 0;
 fet_endchar;
@@ -737,15 +737,15 @@ petrucci_height := 1.4 noteheight#;
 petrucci_width := .72 petrucci_height;
 
 fet_beginchar ("Petrucci semibrevis head", "s0petrucci");
-       draw_neomensural_open_head (petrucci_width, petrucci_height);
+       draw_neomensural_open_head (petrucci_width, petrucci_height, 0);
 fet_endchar;
 
 fet_beginchar ("Petrucci minima head", "s1petrucci");
-       draw_neomensural_open_head (petrucci_width, petrucci_height);
+       draw_neomensural_open_head (petrucci_width, petrucci_height, 0);
 fet_endchar;
 
 fet_beginchar ("Petrucci semiminima head", "s2petrucci");
-       draw_neomensural_black_head (petrucci_width, petrucci_height);
+       draw_neomensural_black_head (petrucci_width, petrucci_height, 0);
 fet_endchar;
 
 
@@ -754,15 +754,15 @@ fet_endchar;
 %
 
 fet_beginchar ("Petrucci colored semibrevis head", "s0blackpetrucci");
-       draw_neomensural_black_head (petrucci_width, petrucci_height);
+       draw_neomensural_black_head (petrucci_width, petrucci_height, 0);
 fet_endchar;
 
 fet_beginchar ("Petrucci colored minima head", "s1blackpetrucci");
-       draw_neomensural_black_head (petrucci_width, petrucci_height);
+       draw_neomensural_black_head (petrucci_width, petrucci_height, 0);
 fet_endchar;
 
 fet_beginchar ("Petrucci colored semiminima head", "s2blackpetrucci");
-       draw_neomensural_black_head (petrucci_width, petrucci_height);
+       draw_neomensural_black_head (petrucci_width, petrucci_height, 0);
 fet_endchar;
 
 
@@ -1790,7 +1790,7 @@ fet_endchar;
 %%%%%%%%%%%%
 
 
-fet_beginchar ("kievan final note", "sM2kievan");
+fet_beginchar ("Kievan final note", "sM2kievan");
        % This draws the Final Note.
        % It is the last note of a piece of music
        % equivalent to having a whole note and fermata in CMN.
@@ -1807,8 +1807,9 @@ fet_beginchar ("kievan final note", "sM2kievan");
        path p;
        p := (0, blank_space)
             -- (0, staff_space - blank_space)
-            -- (note_width, staff_space - blank_space)
-            -- (note_width, blank_space)
+            -- (note_width + 0.5 vert_bar_thickness,
+                staff_space - blank_space)
+            -- (note_width + 0.5 vert_bar_thickness, blank_space)
             -- cycle;
        fill p;
        fill p reflectedabout ((0, 0), (1, 0));
@@ -1823,7 +1824,7 @@ fet_beginchar ("kievan final note", "sM2kievan");
 fet_endchar;
 
 
-fet_beginchar ("kievan recitative mark", "sM1kievan");
+fet_beginchar ("Kievan recitative mark", "sM1kievan");
        inner_width# := 4 * staff_space#;
        vert_bar_thickness# := 2 * stafflinethickness#;
        vert_bar_height# := staff_space# - stafflinethickness#;
@@ -1833,11 +1834,11 @@ fet_beginchar ("kievan recitative mark", "sM1kievan");
        define_blacker_pixels (vert_bar_thickness);
 
        path p;
-       p := (3 * vert_bar_thickness, blank_space)
-            -- (3 * vert_bar_thickness, vert_bar_height - blank_space)
-            -- (3 * vert_bar_thickness + inner_width,
+       p := (2.5 * vert_bar_thickness, blank_space)
+            -- (2.5 * vert_bar_thickness, vert_bar_height - blank_space)
+            -- (3.5 * vert_bar_thickness + inner_width,
                 vert_bar_height - blank_space)
-            -- (3 * vert_bar_thickness + inner_width, blank_space)
+            -- (3.5 * vert_bar_thickness + inner_width, blank_space)
             -- cycle;
        fill p;
        fill p reflectedabout ((0, 0), (1, 0));
@@ -1896,11 +1897,17 @@ fet_beginchar ("Kievan quarter note down", "d2kievan");
        fill z1{dir 8.6}
             .. z2
             .. z3
-            & z3 .. z4 .. z5
-            & z5 -- z6
-            & z6 .. z7 .. z8
-            & z8{left} .. z9
-            & z9 .. z10 ... {dir 75}cycle;
+            & z3
+            .. z4
+            .. z5
+            -- z6
+            .. z7
+            .. z8
+            & z8{left}
+            .. z9
+            & z9
+            .. z10
+            ... {dir 75}cycle;
 
        set_char_box (0, 1.02 staff_space#,
                      2.50 staff_space#, 0.40 staff_space#);
@@ -1922,11 +1929,17 @@ fet_beginchar ("Kievan quarter note up", "u2kievan");
        fill z1{dir -6.9}
             .. z2
             .. z3
-            & z3 .. z4 .. z5
-            & z5 -- z6
-            & z6 .. z7 .. z8
-            & z8{left} .. z9
-            & z9 .. z10 ... {dir -76.9}cycle;
+            & z3
+            .. z4
+            .. z5
+            -- z6
+            .. z7
+            .. z8
+            & z8{left}
+            .. z9
+            & z9
+            .. z10
+            ... {dir -76.9}cycle;
 
        set_char_box (0, 1.02 staff_space#,
                      0.40 staff_space#, 2.6 staff_space#);
@@ -1952,13 +1965,17 @@ fet_beginchar ("Kievan half note (line position)", "s1kievan");
        fill z1
             .. z2{down}
             .. z3
-            & z3 -- z4
-            & z4 .. z5{up} .. z6
-            & z6 .. z7{left} .. z8
-            & z8 -- z9
-            & z9 .. {right}z10
-            & z10{up} .. z11
-            & z11 -- cycle;
+            -- z4
+            .. z5{up}
+            .. z6
+            & z6
+            .. z7{left}
+            .. z8
+            -- z9
+            .. {right}z10
+            & z10{up}
+            .. z11
+            -- cycle;
 
        set_char_box (0, 1.06 staff_space#,
                      1.6 staff_space#, 1.0 staff_space#);
@@ -1985,13 +2002,18 @@ fet_beginchar ("Kievan half note (space position)", "sr1kievan");
        fill z1
             .. z2{down}
             .. z3
-            & z3 -- z4
-            & z4 .. z5{up} .. z6
-            & z6 .. z7{left} .. z8
-            & z8 -- z9
-            & z9 .. z10{right}
-            & z10 .. z11 .. z12
-            & z12 -- cycle;
+            -- z4
+            .. z5{up}
+            .. z6
+            & z6
+            .. z7{left}
+            .. z8
+            -- z9
+            .. z10{right}
+            & z10
+            .. z11
+            .. z12
+            -- cycle;
 
        set_char_box (0, 1.1 staff_space#,
                      1.0 staff_space#, 1.4 staff_space#);
@@ -2018,15 +2040,22 @@ fet_beginchar ("Kievan eighth note (down)", "d3kievan");
 
        fill z1{right}
             .. z2
-            & z2 -- z3
-            & z3{right} .. z4
-            & z4 .. z5{down} .. z6
-            & z6 -- z7
-            & z7 .. z8{up} .. z9
-            & z9 .. {left}z10
-            & z10{dir 78.7} .. z11
-            & z11 .. {left}z12
-            & z12{dir 78.7} .. {dir 62}cycle;
+            -- z3{right}
+            .. z4
+            & z4
+            .. z5{down}
+            .. z6
+            -- z7
+            .. z8{up}
+            .. z9
+            & z9
+            .. {left}z10
+            & z10{dir 78.7}
+            .. z11
+            & z11
+            .. {left}z12
+            & z12{dir 78.7}
+            .. {dir 62}cycle;
 
        set_char_box (0, 1.25 staff_space#,
                      3.0 staff_space#, 0.5 staff_space#);
@@ -2052,11 +2081,17 @@ fet_beginchar ("Kievan eighth note (up)", "u3kievan");
        fill z1{dir -6.9}
             .. z2
             .. z3
-            & z3 .. z4 .. z5
-            & z5 -- z6
-            & z6 .. z7 .. z8
-            & z8{left} .. z9
-            & z9 .. z10 ... {dir -76.9}cycle;
+            & z3
+            .. z4
+            .. z5
+            -- z6
+            .. z7
+            .. z8
+            & z8{left}
+            .. z9
+            & z9
+            .. z10
+            ... {dir -76.9}cycle;
 
        % now, draw the stem
        z11 = (0.033 staff_space, 2.823 staff_space);
@@ -2069,9 +2104,12 @@ fet_beginchar ("Kievan eighth note (up)", "u3kievan");
 
        fill z11
             -- z12
-            & z12 .. z13{down} .. z14
-            & z14 -- z15
-            & z15 .. z16 .. z17{up} .. cycle;
+            .. z13{down}
+            .. z14
+            -- z15
+            .. z16
+            .. z17{up}
+            .. cycle;
 
        set_char_box (0, 1.0 staff_space#,
                      0.4 staff_space#, 2.9 staff_space#);