Ok, I tried to fix ancient-font.ly.  Thereby I detected that when
splitting the feta font into feta and parmesan, a couple of mistakes were
introduced; e.g. some characters were thrown away (e.g. some grace
ornaments), while other characters were duplicated.  I tried to fix these
errors, too.  The division into feta and parmesan is still not perfect;
currently, some of the neo mensural characters are still in feta, while
others are in parmesan.  We might want to change this as well.  (Though,
this is really a point of discussion, as neo mensural characters are
typically heavily intermixed with characters of the feta font; maybe neo
mensural should be moved completely into the feta font).

Greetings,
Juergen
diff -Nau lilypond-1.5.30/mf/GNUmakefile lilypond-1.5.30.NEW/mf/GNUmakefile
--- lilypond-1.5.30/mf/GNUmakefile      Sun Nov 18 01:08:12 2001
+++ lilypond-1.5.30.NEW/mf/GNUmakefile  Tue Feb 19 00:27:04 2002
@@ -8,12 +8,13 @@
 
 AF_FILES = $(wildcard *.af) 
 
-EXTRA_DIST_FILES += README feta.tex
+EXTRA_DIST_FILES += README feta.tex parmesan.tex
 
 # don't try to make fonts from test files
 TEST_FILES = $(wildcard *test*.mf)
 FET_FILES = $(filter-out $(TEST_FILES),$(wildcard feta[0-9]*.mf))
-FONT_FILES = $(filter-out $(TEST_FILES),$(wildcard feta*[0-9].mf))
+PARMESAN_FILES = $(filter-out $(TEST_FILES),$(wildcard parmesan[0-9]*.mf))
+FONT_FILES = $(filter-out $(TEST_FILES),$(wildcard feta*[0-9].mf) $(wildcard 
+parmesan*[0-9].mf))
 
 XPM_FONTS = feta20 feta-nummer10 feta-braces20
 #CM_AFM_FILES = cmr10
@@ -22,9 +23,9 @@
        -$(GUILE) $(buildscript-dir)/tfm2oafm.scm `kpsewhich cmr10.tfm`
        -mv $(@F) $@
 
-LOG_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.log))
-TEXTABLES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.tex))
-AFM_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.afm) $(AF_FILES:.af=.afm) 
$(addsuffix .afm, $(CM_AFM_FILES)))
+LOG_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.log) $(PARMESAN_FILES:.mf=.log))
+TEXTABLES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.tex) $(PARMESAN_FILES:.mf=.tex))
+AFM_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.afm) $(PARMESAN_FILES:.mf=.afm) 
+$(AF_FILES:.af=.afm) $(addsuffix .afm, $(CM_AFM_FILES)))
 TFM_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.tfm))
 PFA_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.pfa))
 PFB_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.pfb))
diff -Nau lilypond-1.5.30/mf/feta-banier.mf lilypond-1.5.30.NEW/mf/feta-banier.mf
--- lilypond-1.5.30/mf/feta-banier.mf   Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/feta-banier.mf       Tue Feb 19 01:55:15 2002
@@ -294,6 +294,32 @@
          (w, h);
 fet_endchar;
 
+fet_beginchar("grace dash (down)", "dgrace", "dgracedash")
+       save flare, hip_depth_ratio, hip_width, foot_depth;
+       save flagspace, total_depth, flag_count;
+       
+       flag_count = 1;
+       flare# = .99 staff_space#;
+       flagspace# = .9 staff_space#;   
+       hip_depth_ratio = .72 ;
+       hip_width# = downflag_width# - hip_thickness#/2;
+       total_depth# = 2.85 staff_space#;
+       (flag_count-1) * flagspace# + foot_depth# = total_depth#;
+
+       foot_width_ratio = .8;
+
+       define_pixels(flare, hip_width, hip_thickness,
+               flagspace, foot_depth);
+
+       set_char_box(hip_width# * hip_depth_ratio,
+         hip_width# + stemthickness#/2 + right_downflag_space#,
+         foot_depth# * hip_depth_ratio, -flare#)
+
+       pickup pencircle scaled 1.5 stemthickness;
+       draw (-b, -d) .. (w,h);
+       y_mirror_char;
+fet_endchar;
+
 fet_beginchar("16th (down)", "d4", "dsixteenthflag")
        save flare, 
                hip_depth_ratio, hip_width,
diff -Nau lilypond-1.5.30/mf/feta-eindelijk.mf 
lilypond-1.5.30.NEW/mf/feta-eindelijk.mf
--- lilypond-1.5.30/mf/feta-eindelijk.mf        Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/feta-eindelijk.mf    Tue Feb 19 01:45:03 2002
@@ -404,5 +404,57 @@
        neomens_half_block_rest;
 fet_endchar;
 
+neomensrestsize# = .8staff_space#;
+
+fet_beginchar("Neo-mensural 4th rest","2neo_mensural","neomenssemiminimarest")
+       set_char_box(0,neomensrestsize#,0,neomensrestsize#);
+        pickup pencircle scaled 2 stafflinethickness;
+       lft x1 = 0;
+       bot y1 = 0;
+       lft x2 = 0;
+       top y2 = h;
+       rt x3 = w;
+       bot y3 = h/2;
+       draw z1 .. z2;
+       draw z2 .. z3;
+fet_endchar
+
+fet_beginchar("Neo-mensural 8th rest","3neo_mensural","neomensfusarest")
+       set_char_box(0,neomensrestsize#,0,neomensrestsize#);
+        pickup pencircle scaled 2 stafflinethickness;
+       rt x1 = w;
+       bot y1 = 0;
+       rt x2 = w;
+       top y2 = h;
+       lft x3 = 0;
+       bot y3 = h/2;
+       draw z1 .. z2;
+       draw z2 .. z3;
+fet_endchar
+
+fet_beginchar("Neo-mensural 16th rest","4neo_mensural","neomenssemifusarest")
+       set_char_box(0,neomensrestsize#,0,staff_space#);
+        pickup pencircle scaled 2 stafflinethickness;
+       rt x1 = w;
+       bot y1 = 0;
+       rt x2 = w;
+       top y2 = h;
+
+       draw z1 .. z2;
+
+        pickup pencircle scaled 2 stafflinethickness;
+       rt x3 = w;
+       top y3 = h;
+       lft x4 = 0;
+       bot y4 = h/2;
+       rt x5 = w;
+       top y5 = 5/8h;
+       lft x6 = 0;
+       bot y6 = h/8;
+
+       draw z3 .. z4;
+       draw z5 .. z6;
+fet_endchar
+
 
 fet_endgroup("rests")
diff -Nau lilypond-1.5.30/mf/parmesan-accidentals.mf 
lilypond-1.5.30.NEW/mf/parmesan-accidentals.mf
--- lilypond-1.5.30/mf/parmesan-accidentals.mf  Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-accidentals.mf      Tue Feb 19 02:14:31 2002
@@ -0,0 +1,176 @@
+% -*-Fundamental-*-
+% parmesan-accidentals.mf -- implement ancient accidentals
+% 
+% source file of LilyPond's pretty-but-neat music font
+% 
+% (c) 2001--2002 Juergen Reuter <[EMAIL PROTECTED]>
+% 
+
+fet_begingroup ("accidentals")
+
+
+%%%%%%%%
+%
+%
+%
+% EDITIO MEDICAEA
+%
+%
+%
+fet_beginchar("Ed. Med. Flat" , "medicaea-1", "medicaeaflat");
+       set_char_box(0, 0.8 staff_space#, 0.6 staff_space#, 
+         2.0 staff_space#);
+
+       pickup pencircle
+               xscaled 0.50 stafflinethickness
+               yscaled 0.22 staff_space;
+
+       save za, zb;
+       pair za, zb;
+
+       za = (0.00 staff_space, +0.90 staff_space);
+       zb = (0.00 staff_space, -0.50 staff_space);
+       draw za -- zb;
+
+       pickup pencircle
+               xscaled 0.50 stafflinethickness
+               yscaled 0.22 staff_space
+               rotated -63;
+
+       save zc, zd, ze;
+       pair zc, zd, ze;
+
+       zc = (0.10 staff_space, -0.50 staff_space);
+       zd = (0.40 staff_space, +0.40 staff_space);
+       ze = (0.10 staff_space, +0.40 staff_space);
+
+       draw zc{(1,2)} .. zd .. ze{(-1,-1)};
+
+       fet_endchar;
+
+%%%%%%%%
+%
+%
+%
+% EDITIO VATICANA
+%
+%
+%
+fet_beginchar("Ed. Vat. Flat" , "vaticana-1", "vaticanaflat");
+        set_char_box(0, 0.7 staff_space#, 0.6 staff_space#, 
+                2.0 staff_space#);
+        define_pixels (stafflinethickness, staff_space);
+
+        save za, zb, zc, zd, ze, zf, zg;
+        pair za, zb, zc, zd, ze, zf, zg;
+        za = (0.00 staff_space, +0.80 staff_space);
+        zb = (0.00 staff_space, -0.03 staff_space);
+        zc = (0.25 staff_space, -0.23 staff_space);
+        zd = (0.50 staff_space, -0.23 staff_space);
+        ze = (0.50 staff_space, +0.00 staff_space);
+        zf = (0.25 staff_space, +0.20 staff_space);
+        zg = (0.15 staff_space, +0.26 staff_space);
+
+        pickup pencircle
+                xscaled 0.50 stafflinethickness
+                yscaled 0.22 staff_space;
+        draw za{down} .. {down}zb .. zc .. zd{up} .. {up}ze .. zf .. zg;
+        fet_endchar;
+
+fet_beginchar("Ed. Vat. Natural" , "vaticana0", "vaticananatural");
+       set_char_box(0, 0.6 staff_space#, 0.6 staff_space#, 
+               2.0 staff_space#);
+       define_pixels (stafflinethickness, staff_space);
+
+       save za, zb, zc, zd;
+       pair za, zb, zc, zd;
+       pickup pencircle
+               xscaled 0.80 stafflinethickness
+               yscaled 0.22 staff_space;
+       za = (0.00 staff_space, +0.65 staff_space);
+       zb = (0.00 staff_space, -0.35 staff_space);
+       zc = (0.00 staff_space, -0.30 staff_space);
+       zd = (0.40 staff_space, -0.08 staff_space);
+       draw za -- zb;
+       draw zc -- zd;
+
+       addto currentpicture also currentpicture
+               xscaled -1
+               yscaled -1
+               shifted (0.40 staff_space, 0.0 staff_space);
+
+       fet_endchar;
+
+%%%%%%%%
+%
+%
+%
+% MENSURAL NOTATION
+%
+%
+%
+fet_beginchar("Mensural Sharp" , "mensural1", "mensuralsharp");
+       set_char_box(0.4 staff_space#, 0.6 staff_space#, 0.5 staff_space#, 
+               0.5 staff_space#);
+       save stemthick;
+       define_pixels (stemthick, staff_space);
+       stemthick# = stafflinethickness#;
+
+       save za, zb;
+       pair za, zb;
+       pickup pencircle scaled 0.8 stemthick;
+       za = 0.4 * staff_space * (0.8, 1);
+       za = -zb;
+       draw za .. zb;
+
+       addto currentpicture also currentpicture xscaled -1;
+       addto currentpicture also currentpicture shifted (0.20 staff_space, 0);
+
+       fet_endchar;
+
+fet_beginchar("Mensural Flat" , "mensural-1", "mensuralflat");
+       set_char_box(0.1 staff_space#, 0.7 staff_space#, 0.4 staff_space#, 
+               1.8 staff_space#);
+       save stemthick;
+       define_pixels (stemthick, staff_space);
+       stemthick# = stafflinethickness#;
+
+       save za, zb, zc, zd, ze;
+       pair za, zb, zc, zd, ze;
+       pickup pencircle
+               xscaled 1.4 stemthick
+               yscaled 0.6 stemthick
+               rotated 45;
+
+       za = (0.00 staff_space, +1.80 staff_space);
+       zb = (0.00 staff_space, -0.25 staff_space);
+       zc = (0.35 staff_space, -0.25 staff_space);
+       zd = (0.35 staff_space, +0.25 staff_space);
+       ze = (0.00 staff_space, +0.25 staff_space);
+       draw za -- zb .. zc .. zd .. ze;
+       fet_endchar;
+
+fet_beginchar("Hufnagel Flat" , "hufnagel-1", "hufnagelflat");
+       set_char_box(0.5 staff_space#, 0.7 staff_space#, 0.4 staff_space#, 
+               1.8 staff_space#);
+       save stemthick;
+       define_pixels (stemthick, staff_space);
+       stemthick# = stafflinethickness#;
+
+       save za, zb, zc, zd, ze, zf;
+       pair za, zb, zc, zd, ze, zf;
+       pickup pencircle
+               xscaled 2.4 stemthick
+               yscaled 0.4 stemthick
+               rotated 45;
+
+       za = (0.00 staff_space, +1.80 staff_space);
+       zb = (0.00 staff_space, -0.15 staff_space);
+       zc = (0.25 staff_space, -0.30 staff_space);
+       zd = (0.50 staff_space, +0.00 staff_space);
+       ze = (0.30 staff_space, +0.30 staff_space);
+       zf = (0.00 staff_space, +0.15 staff_space);
+       draw za -- zb -- zc .. zd .. ze -- zf;
+       fet_endchar;
+
+fet_endgroup ("accidentals")
diff -Nau lilypond-1.5.30/mf/parmesan-clefs.mf 
lilypond-1.5.30.NEW/mf/parmesan-clefs.mf
--- lilypond-1.5.30/mf/parmesan-clefs.mf        Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-clefs.mf    Tue Feb 19 02:14:45 2002
@@ -1,15 +1,13 @@
-% feta-klef.mf --  implement Clefs -*-Fundamental-*-
+% -*-Fundamental-*-
+% parmesan-clefs.mf -- implement ancient clefs
 % 
-% part of LilyPond's pretty-but-neat music font
+% source file of LilyPond's pretty-but-neat music font
+%
+% (c) 2001--2002 Juergen Reuter <[EMAIL PROTECTED]>
 %
-% source file of the Feta (not the Font-En-Tja) music font
-% 
-% (c) 1997--2002 Han-Wen Nienhuys <[EMAIL PROTECTED]>,
-% Jan Nieuwenhuizen <[EMAIL PROTECTED]>,
-% Juergen Reuter <[EMAIL PROTECTED]>
 
+fet_begingroup ("clefs")
 
-fet_begingroup("clefs");
 
 %%%%%%%%
 %
@@ -825,4 +823,4 @@
 fet_endchar;
 
 
-fet_endgroup("clefs");
+fet_endgroup ("clefs")
diff -Nau lilypond-1.5.30/mf/parmesan-custodes.mf 
lilypond-1.5.30.NEW/mf/parmesan-custodes.mf
--- lilypond-1.5.30/mf/parmesan-custodes.mf     Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-custodes.mf Tue Feb 19 02:15:01 2002
@@ -1,15 +1,15 @@
 % -*-Fundamental-*-
-% feta-custodes.mf --  implement custos symbols
+% parmesan-custodes.mf -- implement ancient custodes
 % 
 % source file of LilyPond's pretty-but-neat music font
 % 
-% (C) 2000, 2002 Juergen Reuter <[EMAIL PROTECTED]>
+% (c) 2000--2002 Juergen Reuter <[EMAIL PROTECTED]>
 % 
 
 save black_notehead_width;
 numeric black_notehead_width;
 
-fet_begingroup("custodes");
+fet_begingroup ("custodes")
 
 noteheight#:=staff_space#+ (1 + overdone_heads) *stafflinethickness#;
 define_pixels(noteheight);
@@ -17,8 +17,10 @@
 
 %%%%%%%%
 %
+%
 % Hufnagel style
 %
+%
 
 % stem up
 fet_beginchar("Custos Hufnagel", "hufnagel", "hufnagel")
@@ -270,6 +272,4 @@
        draw z1 -- z2 -- z3 -- z4 -- z5 -- z6;
 fet_endchar;
 
-fet_endgroup("custodes");
-define_pixels(black_notehead_width);
-
+fet_endgroup ("custodes")
diff -Nau lilypond-1.5.30/mf/parmesan-flags.mf 
lilypond-1.5.30.NEW/mf/parmesan-flags.mf
--- lilypond-1.5.30/mf/parmesan-flags.mf        Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-flags.mf    Tue Feb 19 02:15:16 2002
@@ -1,31 +1,13 @@
-% flags 
-%
-
-
-fet_begingroup("flags")
-save outer_path;
-path outer_path;
-% Flags pointing down overlap with  the notehead (in x-direction), so 
-% the down-flag can be bigger
-upflag_width# = .750 black_notehead_width# + stemthickness#/2;
-downflag_width# = .833 black_notehead_width# + stemthickness#/2;
-
-right_upflag_space# = .2 upflag_width#;
-right_downflag_space# = .2 downflag_width#;
-
-%
-% Flags pointing down cannot overlap with the notehead in y-direction,
-% so they have less slant.
+% -*-Fundamental-*-
+% parmesan-flags.mf -- implement ancient flags
+% 
+% source file of LilyPond's pretty-but-neat music font
+% 
+% (c) 2001--2002 Juergen Reuter <[EMAIL PROTECTED]>
+% 
 
-% Because of optical illusion, the utmost flag (bottom for
-% down-pointing, top for up-pointing) should be smaller than the other
-% flags.  Adobe Sonata doesn't do this correctly.  (Instead they have
-% an extension flag, which looks less elegant)
-%
+fet_begingroup ("flags")
 
-save hip_thickness, foot_thickness;
-hip_thickness# = 1.3 stemthickness#;
-foot_thickness# =  hip_thickness#;
 
 %%%%%%%%
 %
@@ -389,83 +371,4 @@
        currentpicture := currentpicture xscaled -1 yscaled -1;
 fet_endchar;
 
-%%%%%%%%
-%
-%
-%
-% Single Stroke for Short Appogiatura
-%
-%
-%
-
-fet_beginchar("grace dash (up)", "ugrace", "gracedash")
-       save flare, 
-               hip_depth_ratio, hip_width,
-               foot_depth;
-
-       flare# = 1.0 staff_space#;
-       hip_depth_ratio = .72; 
-       hip_width# = upflag_width# - hip_thickness#/2;
-
-       foot_depth# =  3 staff_space#;
-
-       define_pixels(flare, hip_width, hip_thickness,
-               foot_depth, foot_thickness);
-
-       set_char_box(hip_width# * hip_depth_ratio,
-         hip_width# + stemthickness#/2 + right_upflag_space#, 
-         foot_depth# * hip_depth_ratio, -flare#)
-
-       pickup pencircle scaled 1.5 stemthickness;
-       draw (-b ,-d) ..
-         (w, h);
-fet_endchar;
-
-fet_beginchar("grace dash (down)", "dgrace", "dgracedash")
-       save flare, hip_depth_ratio, hip_width, foot_depth;
-       save flagspace, total_depth, flag_count;
-       
-       flag_count = 1;
-       flare# = .99 staff_space#;
-       flagspace# = .9 staff_space#;   
-       hip_depth_ratio = .72 ;
-       hip_width# = downflag_width# - hip_thickness#/2;
-       total_depth# = 2.85 staff_space#;
-       (flag_count-1) * flagspace# + foot_depth# = total_depth#;
-
-       foot_width_ratio = .8;
-
-       define_pixels(flare, hip_width, hip_thickness,
-               flagspace, foot_depth);
-
-       set_char_box(hip_width# * hip_depth_ratio,
-         hip_width# + stemthickness#/2 + right_downflag_space#,
-         foot_depth# * hip_depth_ratio, -flare#)
-
-       pickup pencircle scaled 1.5 stemthickness;
-       draw (-b, -d) .. (w,h);
-       y_mirror_char;
-fet_endchar;
-
-% ustem?
-%
-%
-% Stem characters so we can compose metronome markings with Feta
-% entirely.
-%
-
-fet_beginchar("stem (up)", "stem", "stem")
-       set_char_box(stemthickness#/2, stemthickness#/2, 0, 3.5staff_space#);
-       pickup pencircle scaled stemthickness;
-       draw (0, 0.2staff_space) .. (0, 3.5staff_space);
-fet_endchar;
-
-% do we want this?
-fet_beginchar("stem (down)", "dstem", "dstem")
-       set_char_box(stemthickness#/2, stemthickness#/2, 3.5staff_space#, 0);
-       pickup pencircle scaled stemthickness;
-       draw (0, -0.2staff_space) .. (0, -3.5staff_space);
-fet_endchar;
-
-
-fet_endgroup("flags");
+fet_endgroup ("flags")
diff -Nau lilypond-1.5.30/mf/parmesan-heads.mf 
lilypond-1.5.30.NEW/mf/parmesan-heads.mf
--- lilypond-1.5.30/mf/parmesan-heads.mf        Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-heads.mf    Tue Feb 19 02:15:34 2002
@@ -1,23 +1,15 @@
-%  -*-Fundamental-*-
-% feta-bolletjes.mf --  implement noteheads
+% -*-Fundamental-*-
+% parmesan-heads.mf -- implement ancient note heads
 % 
 % source file of LilyPond's pretty-but-neat music font
 % 
-% (c) 1997--2002 Jan Nieuwenhuizen <[EMAIL PROTECTED]>
-% & Han-Wen Nienhuys <[EMAIL PROTECTED]>
-% & Juergen Reuter <[EMAIL PROTECTED]>
+% (c) 2001--2002 Juergen Reuter <[EMAIL PROTECTED]>
 % 
 
-
-% most beautiful noteheads are pronounced, not circular, 
-% and not even symmetric.
-% These examples are inspired by [Wanske], see literature list
-
-
 save black_notehead_width;
 numeric black_notehead_width;
 
-fet_begingroup("noteheads");
+fet_begingroup ("noteheads")
 
 noteheight#:=staff_space#+ (1 + overdone_heads) *stafflinethickness#;
 define_pixels(noteheight);
@@ -764,5 +756,4 @@
        draw -za .. za;
 fet_endchar;
 
-fet_endgroup("noteheads");
-define_pixels(black_notehead_width);
+fet_endgroup ("noteheads")
diff -Nau lilypond-1.5.30/mf/parmesan-rests.mf 
lilypond-1.5.30.NEW/mf/parmesan-rests.mf
--- lilypond-1.5.30/mf/parmesan-rests.mf        Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-rests.mf    Tue Feb 19 02:16:01 2002
@@ -1,177 +1,118 @@
+% -*-Fundamental-*-
+% parmesan-rests.mf -- implement ancient rests
 % 
-% feta-toevallig.mf --  implement Accidentals
+% source file of LilyPond's pretty-but-neat music font
 % 
-% source file of the Feta (Font-En-Tja) music font
+% (c) 2001--2002 Juergen Reuter <[EMAIL PROTECTED]>
 % 
-% (c) 1997--2002 Han-Wen Nienhuys <[EMAIL PROTECTED]>
-% 
-
-fet_begingroup("accidentals");
 
+fet_begingroup("rests")
 
 
 %%%%%%%%
 %
 %
 %
-% EDITIO MEDICAEA
+% MENSURAL NOTATION
 %
 %
 %
-fet_beginchar("Ed. Med. Flat" , "medicaea-1", "medicaeaflat");
-       set_char_box(0, 0.8 staff_space#, 0.6 staff_space#, 
-         2.0 staff_space#);
 
+pen_width# = 2/5 staff_space#;
+pen_height# = 0;
+pen_rotation = 30;
+slight_pen_rotation = 15;
+
+mens_block_rest_y# = 1/1 staff_space#;
+mens_half_block_rest_y# = 5/8 staff_space#;
+
+define_pixels(mens_block_rest_y, mens_half_block_rest_y,
+             pen_width, pen_height);
+
+fet_beginchar("Mensural longa rest", "-2mensural", "menslongarest");
+       set_char_box(pen_width#/2, pen_width#/2,
+                    mens_block_rest_y#, mens_block_rest_y#);
        pickup pencircle
-               xscaled 0.50 stafflinethickness
-               yscaled 0.22 staff_space;
-
-       save za, zb;
-       pair za, zb;
-
-       za = (0.00 staff_space, +0.90 staff_space);
-       zb = (0.00 staff_space, -0.50 staff_space);
-       draw za -- zb;
-
+               xscaled pen_width
+               yscaled pen_height
+               rotated slight_pen_rotation;
+       draw (0, -mens_block_rest_y) -- (0, mens_block_rest_y);
+fet_endchar;
+
+fet_beginchar("Mensural breve rest", "-1mensural", "mensbreverest");
+       set_char_box(pen_width#/2, pen_width#/2,
+                    0, mens_block_rest_y#);
        pickup pencircle
-               xscaled 0.50 stafflinethickness
-               yscaled 0.22 staff_space
-               rotated -63;
-
-       save zc, zd, ze;
-       pair zc, zd, ze;
-
-       zc = (0.10 staff_space, -0.50 staff_space);
-       zd = (0.40 staff_space, +0.40 staff_space);
-       ze = (0.10 staff_space, +0.40 staff_space);
-
-       draw zc{(1,2)} .. zd .. ze{(-1,-1)};
+               xscaled pen_width
+               yscaled pen_height
+               rotated slight_pen_rotation;
+       draw (0, 0) -- (0, mens_block_rest_y);
+fet_endchar;
+
+fet_beginchar("Mensural whole rest", "0mensural", "menssemibrevisrest");
+       set_char_box(pen_width#/2, pen_width#/2,
+                    mens_half_block_rest_y#, 0);
+       pickup pencircle
+               xscaled pen_width
+               yscaled pen_height
+               rotated slight_pen_rotation;
+       draw (0, 0) -- (0, -mens_half_block_rest_y);
+fet_endchar;
+
+fet_beginchar("Mensural half rest", "1mensural", "mensminimahalfrest");
+       set_char_box(pen_width#/2, pen_width#/2,
+                    0, mens_half_block_rest_y#);
+       pickup pencircle
+               xscaled pen_width
+               yscaled pen_height
+               rotated slight_pen_rotation;
+       draw (0, 0) -- (0, mens_half_block_rest_y);
+fet_endchar;
 
-       fet_endchar;
+mensrestsize# = .8staff_space#;
 
-%%%%%%%%
-%
-%
-%
-% EDITIO VATICANA
-%
-%
-%
-fet_beginchar("Ed. Vat. Flat" , "vaticana-1", "vaticanaflat");
-        set_char_box(0, 0.7 staff_space#, 0.6 staff_space#, 
-                2.0 staff_space#);
-        define_pixels (stafflinethickness, staff_space);
-
-        save za, zb, zc, zd, ze, zf, zg;
-        pair za, zb, zc, zd, ze, zf, zg;
-        za = (0.00 staff_space, +0.80 staff_space);
-        zb = (0.00 staff_space, -0.03 staff_space);
-        zc = (0.25 staff_space, -0.23 staff_space);
-        zd = (0.50 staff_space, -0.23 staff_space);
-        ze = (0.50 staff_space, +0.00 staff_space);
-        zf = (0.25 staff_space, +0.20 staff_space);
-        zg = (0.15 staff_space, +0.26 staff_space);
-
-        pickup pencircle
-                xscaled 0.50 stafflinethickness
-                yscaled 0.22 staff_space;
-        draw za{down} .. {down}zb .. zc .. zd{up} .. {up}ze .. zf .. zg;
-        fet_endchar;
-
-fet_beginchar("Ed. Vat. Natural" , "vaticana0", "vaticananatural");
-       set_char_box(0, 0.6 staff_space#, 0.6 staff_space#, 
-               2.0 staff_space#);
-       define_pixels (stafflinethickness, staff_space);
-
-       save za, zb, zc, zd;
-       pair za, zb, zc, zd;
-       pickup pencircle
-               xscaled 0.80 stafflinethickness
-               yscaled 0.22 staff_space;
-       za = (0.00 staff_space, +0.65 staff_space);
-       zb = (0.00 staff_space, -0.35 staff_space);
-       zc = (0.00 staff_space, -0.30 staff_space);
-       zd = (0.40 staff_space, -0.08 staff_space);
-       draw za -- zb;
-       draw zc -- zd;
-
-       addto currentpicture also currentpicture
-               xscaled -1
-               yscaled -1
-               shifted (0.40 staff_space, 0.0 staff_space);
+fet_beginchar("Mensural 4th rest","2mensural","menssemiminimarest")
+       set_char_box(0,mensrestsize#,0,mensrestsize#);
+       pickup pencircle
+               xscaled pen_width
+               yscaled pen_height
+               rotated pen_rotation;
+       lft x1 =      0;     y1 = 0;
+       lft x2 =      0; top y2 = 5/8 h;
+       rt  x3 =  4/8 w; bot y3 = 6/8 h;
+       rt  x4 = 10/8 w; bot y4 = 4/8 h;
+       draw z1 -- z2 -- z3 -- z4;
+fet_endchar
 
-       fet_endchar;
+fet_beginchar("Mensural 8th rest","3mensural","mensfusarest")
+       set_char_box(0,mensrestsize#,0,mensrestsize#);
+       pickup pencircle
+               xscaled pen_width
+               yscaled pen_height
+               rotated pen_rotation;
+       rt  x1 = 10/8 w;     y1 = 0;
+       rt  x2 = 10/8 w; top y2 = 5/8 h;
+       lft x3 =  2/8 w; bot y3 = 6/8 h;
+       lft x4 =      0; bot y4 = 4/8 h;
+       draw z1 -- z2 -- z3 -- z4;
+fet_endchar
 
-%%%%%%%%
-%
-%
-%
-% MENSURAL NOTATION
-%
-%
-%
-fet_beginchar("Mensural Sharp" , "mensural1", "mensuralsharp");
-       set_char_box(0.4 staff_space#, 0.6 staff_space#, 0.5 staff_space#, 
-               0.5 staff_space#);
-       save stemthick;
-       define_pixels (stemthick, staff_space);
-       stemthick# = stafflinethickness#;
-
-       save za, zb;
-       pair za, zb;
-       pickup pencircle scaled 0.8 stemthick;
-       za = 0.4 * staff_space * (0.8, 1);
-       za = -zb;
-       draw za .. zb;
-
-       addto currentpicture also currentpicture xscaled -1;
-       addto currentpicture also currentpicture shifted (0.20 staff_space, 0);
-
-       fet_endchar;
-
-fet_beginchar("Mensural Flat" , "mensural-1", "mensuralflat");
-       set_char_box(0.1 staff_space#, 0.7 staff_space#, 0.4 staff_space#, 
-               1.8 staff_space#);
-       save stemthick;
-       define_pixels (stemthick, staff_space);
-       stemthick# = stafflinethickness#;
-
-       save za, zb, zc, zd, ze;
-       pair za, zb, zc, zd, ze;
-       pickup pencircle
-               xscaled 1.4 stemthick
-               yscaled 0.6 stemthick
-               rotated 45;
-
-       za = (0.00 staff_space, +1.80 staff_space);
-       zb = (0.00 staff_space, -0.25 staff_space);
-       zc = (0.35 staff_space, -0.25 staff_space);
-       zd = (0.35 staff_space, +0.25 staff_space);
-       ze = (0.00 staff_space, +0.25 staff_space);
-       draw za -- zb .. zc .. zd .. ze;
-       fet_endchar;
-
-fet_beginchar("Hufnagel Flat" , "hufnagel-1", "hufnagelflat");
-       set_char_box(0.5 staff_space#, 0.7 staff_space#, 0.4 staff_space#, 
-               1.8 staff_space#);
-       save stemthick;
-       define_pixels (stemthick, staff_space);
-       stemthick# = stafflinethickness#;
-
-       save za, zb, zc, zd, ze, zf;
-       pair za, zb, zc, zd, ze, zf;
-       pickup pencircle
-               xscaled 2.4 stemthick
-               yscaled 0.4 stemthick
-               rotated 45;
-
-       za = (0.00 staff_space, +1.80 staff_space);
-       zb = (0.00 staff_space, -0.15 staff_space);
-       zc = (0.25 staff_space, -0.30 staff_space);
-       zd = (0.50 staff_space, +0.00 staff_space);
-       ze = (0.30 staff_space, +0.30 staff_space);
-       zf = (0.00 staff_space, +0.15 staff_space);
-       draw za -- zb -- zc .. zd .. ze -- zf;
-       fet_endchar;
+fet_beginchar("Mensural 16th rest","4mensural","menssemifusarest")
+       set_char_box(0,mensrestsize#,0,staff_space#);
+       pickup pencircle
+               xscaled pen_width
+               yscaled pen_height
+               rotated pen_rotation;
+
+       rt  x1 = 10/8 w;     y1 = 0;
+       rt  x2 = 10/8 w; top y2 = 5.5/8 h;
+       lft x3 =  2/8 w; bot y3 = 6.5/8 h;
+       lft x4 =      0; bot y4 = 4.5/8 h;
+       rt  x5 = 10/8 w; top y5 = 2.5/8 h;
+       lft x6 =  2/8 w; bot y6 = 3.5/8 h;
+       lft x7 =      0; bot y7 = 1.5/8 h;
+       draw z1 -- z2 -- z3 -- z4;
+       draw z5 -- z6 -- z7;
+fet_endchar
 
-fet_endgroup ("accidentals")
+fet_endgroup ("rests")
diff -Nau lilypond-1.5.30/mf/parmesan-timesig.mf 
lilypond-1.5.30.NEW/mf/parmesan-timesig.mf
--- lilypond-1.5.30/mf/parmesan-timesig.mf      Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan-timesig.mf  Tue Feb 19 02:16:27 2002
@@ -1,12 +1,12 @@
+% -*-Fundamental-*-
+% parmesan-timesig.mf -- implement ancient time signatures
 % 
-% feta-timesig.mf --  implement Time Signatures
-% 
-% source file of the Feta (not an abbreviation of Font-En-Tja) music font
+% source file of LilyPond's pretty-but-neat music font
 % 
 % (c) 1998--2002 Mats Bengtsson <[EMAIL PROTECTED]>,
 %               Christian Mondrup <[EMAIL PROTECTED]>
 
-fet_begingroup("timesig");
+fet_begingroup ("timesig")
 
 path threequartercircle;
 threequartercircle = halfcircle & quartercircle rotated 180;
@@ -16,6 +16,16 @@
 Cthickness# := 2 stafflinethickness#;
 define_pixels(Cdiameter,Cthickness);
 
+
+%%%%%%%%
+%
+%
+%
+% MENSURAL NOTATION
+%
+%
+%
+
 %% tempus imperfectum cum prolatione imperfecta
 fet_beginchar ("Mensural 4/4 meter", "old4/4", "oldfourfourmeter")
        set_char_box(.5 Cdiameter# + staff_space#, .5 Cdiameter# + staff_space#, 
@@ -130,4 +140,4 @@
        draw_block((-Cthickness, -d), (0, h));
 fet_endchar;
 
-fet_endgroup("timesig");
+fet_endgroup ("timesig")
diff -Nau lilypond-1.5.30/mf/parmesan.tex lilypond-1.5.30.NEW/mf/parmesan.tex
--- lilypond-1.5.30/mf/parmesan.tex     Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan.tex Tue Feb 19 00:17:06 2002
@@ -0,0 +1,61 @@
+% display all parmesan chars in a pretty picture
+% GNU LilyPond
+% (c) 2002 Juergen Reuter (actually almost copied from feta.tex)
+%
+% urg: fool ls-latex
+\def\urg{
+\title{The Parmesan font}
+\author{JCN}
+\begin{document}
+}
+
+
+\parindent0pt
+\nopagenumbers
+\newcount\n
+\newcount\i
+
+\font\parmesantwenty = parmesan20
+\font\titlefont = cmbx12 scaled \magstep 4
+\font\subtitle = cmr9
+
+\def\lilyfooter{Lily was here}
+\def\setchar#1#2{\hbox to\charwidth{\hss{#1\char#2}\hss}}
+
+\def\charsperline{6}
+\def\charheight{55pt}
+\def\charwidth{60pt}
+
+\def\listfont#1#2#3{
+        \n=#2
+        \advance\n by-1
+        \advance\n by-\charsperline
+        \loop\ifnum\n<#3
+        \advance\n by\charsperline
+        \i=0
+        {\vbox to\charheight{\vss\centerline{
+        {\loop\ifnum\i<\charsperline
+        \advance\i by1
+        \advance\n by1
+        {\setchar{#1}{\number\n}}
+        \repeat}}}}\repeat}
+
+\def\title#1{\centerline{\titlefont #1}}
+\def\author#1{\centerline{#1}}
+
+\title{PARMESAN}
+
+\centerline{\subtitle (definitely not an abbreviation for Font-En-Tja)}
+
+\author{Han-Wen Nienhuys and Jan Nieuwenhuizen}
+
+
+\vskip5mm
+
+\listfont{\parmesantwenty}{0}{105}
+% urg
+\vskip-\charheight
+
+\lilyfooter
+
+\bye
diff -Nau lilypond-1.5.30/mf/parmesan11.mf lilypond-1.5.30.NEW/mf/parmesan11.mf
--- lilypond-1.5.30/mf/parmesan11.mf    Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan11.mf        Tue Feb 19 02:17:12 2002
@@ -0,0 +1,16 @@
+% parmesan11.mf
+% part of LilyPond's pretty-but-neat music font
+
+staffsize#:=11pt#;
+
+input feta-autometric;
+fet_beginfont("parmesan", 11);
+
+test := 0;
+
+input parmesan-generic;
+
+fet_endfont("parmesan");
+
+end.
+
diff -Nau lilypond-1.5.30/mf/parmesan13.mf lilypond-1.5.30.NEW/mf/parmesan13.mf
--- lilypond-1.5.30/mf/parmesan13.mf    Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan13.mf        Tue Feb 19 00:39:23 2002
@@ -0,0 +1,16 @@
+% parmesan13.mf
+% part of LilyPond's pretty-but-neat music font
+
+staffsize#:=13pt#;
+
+input feta-autometric;
+fet_beginfont("parmesan", 13);
+
+test := 0;
+
+input parmesan-generic;
+
+fet_endfont("parmesan");
+
+end.
+
diff -Nau lilypond-1.5.30/mf/parmesan16.mf lilypond-1.5.30.NEW/mf/parmesan16.mf
--- lilypond-1.5.30/mf/parmesan16.mf    Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan16.mf        Tue Feb 19 00:39:36 2002
@@ -0,0 +1,16 @@
+% parmesan16.mf
+% part of LilyPond's pretty-but-neat music font
+
+staffsize#:=16pt#;
+
+input feta-autometric;
+fet_beginfont("parmesan", 16);
+
+test := 0;
+
+input parmesan-generic;
+
+fet_endfont("parmesan");
+
+end.
+
diff -Nau lilypond-1.5.30/mf/parmesan19.mf lilypond-1.5.30.NEW/mf/parmesan19.mf
--- lilypond-1.5.30/mf/parmesan19.mf    Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan19.mf        Tue Feb 19 00:39:49 2002
@@ -0,0 +1,16 @@
+% parmesan19.mf
+% part of LilyPond's pretty-but-neat music font
+
+staffsize#:=19pt#;
+
+input feta-autometric;
+fet_beginfont("parmesan", 19);
+
+test := 0;
+
+input parmesan-generic;
+
+fet_endfont("parmesan");
+
+end.
+
diff -Nau lilypond-1.5.30/mf/parmesan20.mf lilypond-1.5.30.NEW/mf/parmesan20.mf
--- lilypond-1.5.30/mf/parmesan20.mf    Fri Feb  1 19:20:59 2002
+++ lilypond-1.5.30.NEW/mf/parmesan20.mf        Tue Feb 19 00:40:22 2002
@@ -1,17 +1,16 @@
-% feta20.mf
+% parmesan20.mf
 % part of LilyPond's pretty-but-neat music font
 
 staffsize#:=20pt#;
 
 input feta-autometric;
-fet_beginfont("feta", 20);
+fet_beginfont("parmesan", 20);
 
-% AFBLIJVEN! Gebruik feta-test16/20, anders verneuk je de distributie.
 test := 0;
 
 input parmesan-generic;
 
-fet_endfont("feta");
+fet_endfont("parmesan");
 
 end.
 
diff -Nau lilypond-1.5.30/mf/parmesan23.mf lilypond-1.5.30.NEW/mf/parmesan23.mf
--- lilypond-1.5.30/mf/parmesan23.mf    Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan23.mf        Tue Feb 19 00:40:01 2002
@@ -0,0 +1,16 @@
+% parmesan23.mf
+% part of LilyPond's pretty-but-neat music font
+
+staffsize#:=23pt#;
+
+input feta-autometric;
+fet_beginfont("parmesan", 23);
+
+test := 0;
+
+input parmesan-generic;
+
+fet_endfont("parmesan");
+
+end.
+
diff -Nau lilypond-1.5.30/mf/parmesan26.mf lilypond-1.5.30.NEW/mf/parmesan26.mf
--- lilypond-1.5.30/mf/parmesan26.mf    Thu Jan  1 01:00:00 1970
+++ lilypond-1.5.30.NEW/mf/parmesan26.mf        Tue Feb 19 00:40:12 2002
@@ -0,0 +1,16 @@
+% parmesan26.mf
+% part of LilyPond's pretty-but-neat music font
+
+staffsize#:=26pt#;
+
+input feta-autometric;
+fet_beginfont("parmesan", 26);
+
+test := 0;
+
+input parmesan-generic;
+
+fet_endfont("parmesan");
+
+end.
+
diff -Nau lilypond-1.5.30/scm/font.scm lilypond-1.5.30.NEW/scm/font.scm
--- lilypond-1.5.30/scm/font.scm        Mon Dec 24 14:09:42 2001
+++ lilypond-1.5.30.NEW/scm/font.scm    Tue Feb 19 00:41:22 2002
@@ -141,6 +141,15 @@
     ((-3 * * music feta 11) . "feta11")
     ((-4 * * music feta 11) . "feta11")
 
+    ((2 * * ancient parmesan 26) . "parmesan26")
+    ((1 * * ancient parmesan 23) . "parmesan23")
+    ((0 * * ancient parmesan 20) . "parmesan20")
+    ((-0.5 * * ancient parmesan 20) . "parmesan19")    
+    ((-1 * * ancient parmesan 16) . "parmesan16")
+    ((-2 * * ancient parmesan 13) . "parmesan13")
+    ((-3 * * ancient parmesan 11) . "parmesan11")
+    ((-4 * * ancient parmesan 11) . "parmesan11")
+
     ((0 * * math msam 10) . "msam10")
     ((-1 * * math msam 10) . "msam10")
     ((-2 * * math msam 10) . "msam10")
diff -Nau lilypond-1.5.30/scm/grob-description.scm 
lilypond-1.5.30.NEW/scm/grob-description.scm
--- lilypond-1.5.30/scm/grob-description.scm    Mon Feb  4 00:12:07 2002
+++ lilypond-1.5.30.NEW/scm/grob-description.scm        Tue Feb 19 02:33:25 2002
@@ -168,6 +168,7 @@
                (visibility-lambda . ,end-of-line-visible)
               (style .  vaticana)
               (Y-offset-callbacks . (,Staff_symbol_referencer::callback))
+              (font-family . music)
                (meta . ,(grob-description custos-interface 
staff-symbol-referencer-interface break-aligned-interface) )
        ))
        
@@ -620,6 +621,7 @@
                (X-offset-callbacks . (,Stem::off_callback))
                (X-extent-callback . ,Stem::dim_callback)       
                (Y-extent-callback . ,Stem::height)
+               (font-family . music)      
                (meta . ,(grob-description stem-interface  font-interface))
        ))
 
diff -Nau lilypond-1.5.30/input/test/ancient-font.ly 
lilypond-1.5.30.NEW/input/test/ancient-font.ly
--- lilypond-1.5.30/input/test/ancient-font.ly  Fri Feb  1 17:57:19 2002
+++ lilypond-1.5.30.NEW/input/test/ancient-font.ly      Tue Feb 19 02:36:21 2002
@@ -11,7 +11,8 @@
 global =  \notes {
     \property Score.timing = ##f
 %   \property Score.forceAccidental = ##t
-%   \property Staff.TimeSignature \override #'style = #'old
+    \property Staff.TimeSignature \set #'font-family = #'ancient
+%   \property Staff.TimeSignature \override #'style = #'mensural
 }
 
 upperVoice =  \context Staff = upperVoice <
@@ -23,9 +24,12 @@
       #'line-count = #4
 
     \notes \transpose c' {
+       \property Staff.Clef \set #'font-family = #'ancient
        \property Staff.KeySignature \override #'style = #'vaticana
        \property Staff.Accidentals \override #'style = #'vaticana
+       \property Staff.Custos \set #'font-family = #'ancient
        \property Staff.Custos \override #'style = #'vaticana
+       \property Voice.NoteHead \set #'font-family = #'ancient
        \property Voice.NoteHead \override #'style = #'vaticana_punctum
        \property Voice.Porrectus \override #'style = #'vaticana
        \property Voice.Porrectus \override #'solid = ##t
@@ -120,10 +124,15 @@
 
     \notes \transpose c' {
        \property Voice.noAutoBeaming = ##t
+       \property Staff.Clef \set #'font-family = #'ancient
        \property Staff.KeySignature \override #'style = #'mensural
        \property Staff.Accidentals \override #'style = #'mensural
+       \property Staff.Custos \set #'font-family = #'ancient
        \property Staff.Custos \override #'style = #'mensural
+       \property Voice.NoteHead \set #'font-family = #'ancient
        \property Voice.NoteHead \override #'style = #'neo_mensural
+       \property Voice.Stem \set #'font-family = #'ancient % ancient flags
+       \property Voice.Rest \set #'font-family = #'music
        \property Voice.Rest \override #'style = #'neo_mensural
        \property Voice.Porrectus \override #'style = #'mensural
        \property Voice.Porrectus \override #'solid = ##f
@@ -161,11 +170,12 @@
        \clef "mensural_c2"
        r\breve r1 r2
        \clef "mensural_g"
-       r4 r8 r16 r32 r32 \bar "|"
+       r4 r8 r16 r16 \bar "|"
 
        \property Voice.NoteHead \override #'style = #'mensural
        \property Voice.Stem \override #'style = #'mensural
        \property Voice.Stem \override #'thickness = #1.0
+       \property Voice.Rest \set #'font-family = #'ancient
        \property Voice.Rest \override #'style = #'mensural
        \clef "petrucci_f"
        c8 b, c16 b, c32 b, c64 b, c b,

Reply via email to