X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=mf%2Fparmesan-scripts.mf;h=ee2b56b715c34f4eb5c96dd8db00ab5399eebe21;hb=HEAD;hp=1aebbe5c57e24fe23117fafaa9addffb395682d6;hpb=d4ba37c298813e0f7008ef8388e126c34d8f8dd3;p=lilypond.git diff --git a/mf/parmesan-scripts.mf b/mf/parmesan-scripts.mf index 1aebbe5c57..ee2b56b715 100644 --- a/mf/parmesan-scripts.mf +++ b/mf/parmesan-scripts.mf @@ -1,10 +1,21 @@ -% -%-Fundamental-%- -*-Metafont-*- -% parmesan-scripts.mf -- implement ancient script symbols -% -% source file of LilyPond's pretty-but-neat music font -% -% (c) 2002--2007 Juergen Reuter +% Feta (not the Font-En-Tja) music font -- ancient script symbols +% This file is part of LilyPond, the GNU music typesetter. +% +% Copyright (C) 2002--2015 Juergen Reuter % +% +% 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, 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 +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with LilyPond. If not, see . fet_begingroup ("scripts"); @@ -228,4 +239,62 @@ fet_beginchar ("signum congruentiae down", "dsignumcongruentiae"); fet_endchar; +%%%%%%%%%%%%% +%%%% +%%%% Code for Kievan Notation +%%%% +%%%%%%%%%%%%% + + +fet_beginchar ("Kievan end of piece (slash)", "barline.kievan"); + % This draws the end of piece figure. + % This figure is placed at the end of the musical piece, + % after the staff. + + save hair_thickness, thick_thickness, width, depth, height, padding; + hair# = 1.9 linethickness#; + thick# = 6.0 linethickness#; + width# = 1.0 staff_space#; + height# + depth# = 4 staff_space#; + depth# = height# + hair#; + padding# = .2 staff_space#; + + set_char_box (0, width# + 3 padding#, depth#, height# + staff_space#); + define_pixels (hair, thick, width, padding, depth, height); + + x7r - x2l = width; + y1 - y3r = depth + height + linethickness / 2; + z3 = z2; + z4 = .5 [z1, z2] + = (width / 2 + padding, hair / 8); + z5 = (x2 - .17 staff_space, 9/10 [y2, y1]); + z7 - z6 = (.5 staff_space, -.2 staff_space); + .4 [z6, z7] = 7/6 [z2, z1]; + + penpos1 (hair, 0); + penpos2 (hair, 0); + penpos3 (hair, -90); + penpos4 (thick, 10); + penpos5 (thick, 35); + penpos6 (hair, -90); + penpos7 (.5 thick, -120); + + penlabels (1, 2, 3, 4, 5, 6, 7); + + penstroke z1e + -- z2e; + + fill z3l + -- z2l{z2 - z1} + .. z3r{right} + .. z4r + .. z5r + .. z6r + .. simple_serif (z7r, z7l, 80) + .. {left}z6l + .. z5l + .. z4l + .. {left}cycle; +fet_endchar; + fet_endgroup ("scripts");