[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] ancient-font.ly, clefs
From: |
Juergen Reuter |
Subject: |
[PATCH] ancient-font.ly, clefs |
Date: |
Thu, 04 Jan 2001 01:28:32 +0100 |
Hi!
Below is a patch for 1.3.119 that updates input/test/ancient-font.ly
to reflect recent changes in lilypond since 1.3.88. The patch also
fixes the width of one of the mensural c clefs and the c0 value of a
mensural f clef. Finally, it includes two more mensural clef symbols;
one of them is a mensural G clef that has been asked for on this list
a while ago. In the meantime, I have seen various shapes for mensural
G clefs; the clef included in this patch is a kind of a compromise
between all that different, but still similar shapes.
I noticed a problem in ancient-font.ly with setting the line-count
property of the staff symbol: If I define "StaffSymbol \override
#'line-count = #4" in a \translator block within the \paper block,
this applies (of course) to all staff lines. But how can I apply
different line-count values for each staff line individually? Setting
the property within a staff context (e.g. for 1.3.119, "\property
Staff.StaffSymbol \override #'line-count = #4") used to work in
1.3.99, but does not work anymore for 1.3.119. ancient-font.ly should
show a score with a 4-line staff and a 5-line staff.
In 1.3.119, there seems to be no difference in the size of clef
symbols and clef change symbols. Is this a bug?
Finally, if you look at the bracket of ancient-font.ly that joins the
two staff lines on the left, you will see that its vertical size
regards the custos symbol. The custos symbol should be ignored.
Greetings,
Juergen
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--- ancient-font.ly.orig Sun Dec 17 18:54:31 2000
+++ ancient-font.ly Wed Jan 3 23:58:51 2001
@@ -8,77 +8,96 @@
\include "paper26.ly"
global = \notes {
- \property Score.timing = 1
- \property Staff.TimeSignature \override #'style = #"old"
- \time 2/2;
+ \property Score.timing = ##f
+% \property Staff.TimeSignature \override #'style = #'old
}
upperVoice = \context Staff = upperVoice <
\global
- \property Staff.numberOfStaffLines = 4
+ \property Staff.StaffSymbol \override #'line-count = #4
\notes \transpose c' {
- \property Staff.Custos \override #'style = #'"vaticana"
+ \property Voice.NoteHead \override #'style = #'mensural
+ \property Voice.Stem \override #'stem-centered = ##t
+ \property Staff.Custos \override #'style = #'vaticana
\clef "vaticana_fa2";
- c1 d e f g
+ c2 d e f g
+
+% \property Staff.clefGlyph = #"clefs-vaticana_do"
+% \property Staff.clefPosition = #1
+% \property Staff.clefOctavation = #0
\clef "vaticana_do2";
- a b c' \bar "|";
+
+ a b c'
b a g f
\clef "vaticana_fa1";
- e d c\breve \bar "|";
+ e d c1 \bar "|";
- \property Staff.Custos \override #'style = #"medicaea"
+ \property Staff.Custos \override #'style = #'medicaea
\clef "medicaea_fa2";
- c1 d e f g
+ c2 d e f g
\clef "medicaea_do2";
- a b c' \bar "|";
+ a b c'
b a g f
\clef "medicaea_fa1";
- e d c\breve \bar "|";
+ e d c1 \bar "|";
- \property Staff.Custos \override #'style = #'"hufnagel"
+ \property Staff.Custos \override #'style = #'hufnagel
\clef "hufnagel_fa2";
- c1 d e f g
+ c2 d e f g
\clef "hufnagel_do2";
- a b c' \bar "|";
+ a b c'
b a g f
\clef "hufnagel_fa1";
- e d c\breve \bar "||";
+ e d c1 \bar "||";
}
>
lowerVoice = \context Staff = lowerNotes <
\global
- \property Staff.numberOfStaffLines = 5
- \notes \transpose c'' {
- \property Staff.Custos \override #'style = #'"mensural"
+ \property Staff.StaffSymbol \override #'line-count = #5
+ \notes \transpose c' {
+ \property Voice.NoteHead \override #'style = #'mensural
+ \property Voice.Stem \override #'stem-centered = ##t
+ \property Staff.Custos \override #'style = #'mensural
\clef "mensural1_c2";
- c1 d e f g
+ c2 d e f g
\clef "mensural1_c2";
- a b c' \bar "|";
+ a b c'
b a g f
\clef "mensural2_c2";
- e d c\breve \bar "|";
+ e d c1 \bar "|";
\clef "mensural2_c2";
- c1 d e f g
+ c2 d e f g
\clef "mensural3_c2";
- a b c' \bar "|";
+ a b c'
b a g f
\clef "mensural3_c2";
- e d c\breve \bar "|";
+ e d c1 \bar "|";
- \clef "mensural_f";
- c1 d e f g
- \clef "mensural_f";
- a b c' \bar "|";
- b a g f
- \clef "mensural_f";
- e d c\breve \bar "|";
-
- \clef "hufnagel";
- c,1 d, e, f, g,
- \clef "hufnagel";
- a, b, c \bar "||";
+ \clef "mensural1_f";
+ c2 d e f g
+ \clef "mensural1_f";
+ a b c'
+ b a g f
+ \clef "mensural2_f";
+ e d c1 \bar "|";
+
+ \clef "mensural2_f";
+ c2 d e f g
+ \clef "mensural_g";
+ a' b' c''
+ b' a' g' f'
+ \clef "mensural_g";
+ e' d' c'1 \bar "|";
+
+ \clef "mensural_g";
+ c'2 d' e' f' g'
+ \clef "hufnagel_do_fa";
+ a b c'
+ b a g f
+ \clef "hufnagel_do_fa";
+ e d c1 \bar "||";
}
>
@@ -94,8 +113,10 @@
indent = 0.0;
\translator {
\StaffContext
- \consists "Custos_engraver";
-% custosStyle = "mensural";
+ \consists Custos_engraver;
+% Custos \override #'style = #'mensural;
+ \remove Time_signature_engraver;
+% StaffSymbol \override #'line-count = #4
}
}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--- engraver.ly.orig Fri Dec 8 12:56:01 2000
+++ engraver.ly Wed Jan 3 05:17:09 2001
@@ -386,7 +386,9 @@
("clefs-mensural1_c" . 0)
("clefs-mensural2_c" . 0)
("clefs-mensural3_c" . 0)
- ("clefs-mensural_f" . 0))
+ ("clefs-mensural1_f" . 4)
+ ("clefs-mensural2_f" . 4)
+ ("clefs-mensural_g" . -4))
clefGlyph = #"clefs-G"
clefPosition = #-2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--- clef.scm.orig Sun Dec 17 16:32:08 2000
+++ clef.scm Wed Jan 3 05:29:42 2001
@@ -36,7 +36,7 @@
("hufnagel_do3" . ("clefs-hufnagel_do" 3 0))
("hufnagel_fa1" . ("clefs-hufnagel_fa" -1 0))
("hufnagel_fa2" . ("clefs-hufnagel_fa" 1 0))
- ("hufnagel" . ("clefs-hufnagel_do_fa" 4 0))
+ ("hufnagel_do_fa" . ("clefs-hufnagel_do_fa" 4 0))
("mensural1_c1" . ("clefs-mensural1_c" -4 0))
("mensural1_c2" . ("clefs-mensural1_c" -2 0))
("mensural1_c3" . ("clefs-mensural1_c" 0 0))
@@ -50,7 +50,9 @@
("mensural3_c2" . ("clefs-mensural3_c" 0 0))
("mensural3_c3" . ("clefs-mensural3_c" 2 0))
("mensural3_c4" . ("clefs-mensural3_c" 4 0))
- ("mensural_f" . ("clefs-mensural_f" 2 0))
+ ("mensural1_f" . ("clefs-mensural1_f" 2 0))
+ ("mensural2_f" . ("clefs-mensural2_f" 2 0))
+ ("mensural_g" . ("clefs-mensural_g" -2 0))
)
)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--- feta-klef.mf.orig Mon Nov 6 14:42:48 2000
+++ feta-klef.mf Thu Jan 4 00:07:08 2001
@@ -5,7 +5,8 @@
% source file of the Feta (not the Font-En-Tja) music font
%
% (c) 1997--2000 Han-Wen Nienhuys <address@hidden>,
-% Jan Nieuwenhuizen <address@hidden>
+% Jan Nieuwenhuizen <address@hidden>,
+% Juergen Reuter <address@hidden>
fet_begingroup("clefs");
@@ -629,7 +630,7 @@
def draw_mensural_ii_c_clef(expr exact_center, reduction) =
- draw_brevis(exact_center, reduction, false, true);
+ draw_brevis(exact_center, reduction, true, true);
save reduced_il, reduced_slt;
save stem_width, interline;
@@ -727,7 +728,7 @@
cycle;
enddef;
-def draw_mensural_f_clef(expr exact_center, reduction) =
+def draw_mensural_i_f_clef(expr exact_center, reduction) =
%
% inspired by Gaspar van Weerbeke, "Virgo Maria" (1502), in:
% MGG, volume 9, col. 653 ("Motette"), fig. 3.; also by
@@ -782,15 +783,156 @@
enddef;
-fet_beginchar("mensural f clef", "mensural_f", "mensfclef")
+fet_beginchar("mensural f clef", "mensural1_f", "mens1fclef")
if test = 1:
draw_staff(-1,3, 0.0);
fi;
- draw_mensural_f_clef((0,0), 1.0);
+ draw_mensural_i_f_clef((0,0), 1.0);
fet_endchar;
-fet_beginchar("mensural f clef", "mensural_f_change", "cmensfclef")
- draw_mensural_f_clef((0,0), .8);
+fet_beginchar("mensural f clef", "mensural1_f_change", "cmens1fclef")
+ draw_mensural_i_f_clef((0,0), .8);
fet_endchar;
+
+
+def draw_mensural_ii_f_clef(expr exact_center, reduction) =
+ %
+ % inspired by Philippe le Duc, "Dite Signori" (1590), in: MGG,
+ % volume 3, col. 848 ("Duc"); also by John Dowland, "The First
+ % Booke of Songes" (1597), in: MGG, volume 3, col. 721
+ % ("Dowland"), fig. 3.
+
+ save reduced_slt, stem_width, reduced_nht, holeheight, beamheight;
+
+ reduced_slt# = stafflinethickness# * reduction;
+ stem_width# = 1.4 reduced_slt#;
+ reduced_nht# = noteheight# * reduction;
+ holeheight# = 3 reduced_slt#;
+ beamheight# = 0.4(reduced_nht# - holeheight#);
+
+ define_pixels(beamheight, stem_width, staff_space);
+
+ pickup pencircle
+ xscaled beamheight
+ yscaled stem_width
+ rotated 45;
+
+ draw
+ exact_center + (1.0 staff_space, 0.6 staff_space) --
+ exact_center + (1.25 staff_space, 0.4 staff_space);
+
+ draw
+ exact_center + (1.0 staff_space, -0.4 staff_space) --
+ exact_center + (1.25 staff_space, -0.6 staff_space);
+
+ draw halfcircle scaled 1.2 staff_space rotated -90
+ shifted (-exact_center + (+0.1 staff_space, 0));
+
+ set_char_box(0, 3staff_space#, 3staff_space#, 0);
+enddef;
+
+fet_beginchar("mensural f clef", "mensural2_f", "mens2fclef")
+ if test = 1:
+ draw_staff(-1,3, 0.0);
+ fi;
+ draw_mensural_ii_f_clef((0,0), 1.0);
+fet_endchar;
+fet_beginchar("mensural f clef", "mensural2_f_change", "cmens2fclef")
+ draw_mensural_ii_f_clef((0,0), .8);
+fet_endchar;
+
+
+def draw_mensural_g_clef(expr exact_center, reduction) =
+ %
+ % inspired by Francisco Guerrero, "Lib. 1. Missarum" (1566),
+ % in: MGG, volume 3, col. 858 ("Ducis"); also by Stefano
+ % Fabri, "Quam speciosa veteranis" (1611), in: MGG, volume 3,
+ % col. 1698 ("Fabri"); also by Philippus Dulichius,
+ % "Fasciculus novus ..." (1598), in: MGG, volume 3, col. 919
+ % ("Dulichius"), fig. 1; also by Noe Faignient, "Ic sal de
+ % Heer myn God gebenedye" (1568), in: MGG, volume 3, col. 1735
+ % ("Faignient").
+ %
+ % Metafont code partially inspired by Schwabacher 'G' of yswab
+ % font.
+
+ save reduced_il, stem_width, height, width, apex_o, hair;
+
+ reduced_il#=staff_space#*reduction;
+
+ set_char_box(0.5reduced_il#, 1.5reduced_il#,
+ 1.5reduced_il#, 1.5reduced_il#);
+
+ stem_width# = 0.17 reduced_il#;
+ height# = 1.5 reduced_il#;
+ width# = 1.13 reduced_il#;
+ apex_o# = 0.02 reduced_il#;
+ hair# = 3 stafflinethickness#;
+ define_pixels(reduced_il, stem_width, height, width, apex_o, hair);
+
+ penpos1(2 stem_width, -142);
+ z1l = (0.715 width, 0.742 height);
+ penpos1'(hair, -90);
+ z1'l = z1r;
+ penpos2(1.179 stem_width, -142);
+ z2l = (width, 0.466 height);
+ penpos3(hair, 77);
+ z3 = (0.764 width, 0.067 height);
+ z4 = (0.59 width, -apex_o);
+ penpos5(1.179 stem_width, 32);
+ z5l=(0, 0.457 height);
+ penpos6(hair, -56.5);
+ z7 = (x4 - 0.843 stem_width, height + apex_o);
+ z7 - z6l = whatever * dir33.5;
+ penpos8(1.286 stem_width, -130);
+ z8r = (0.715 width, 0.742 height) + (-apex_o, apex_o);
+ z6r - z8r = whatever * (z7 - z8l);
+ filldraw
+ z1'r{dir45} .. z2r{down} .. z3r{dir207} .. z5r{up} ..
+ z6r{z7-z6l} & z6r -- z8r -- z8l -- z7 --- z6l ...
+ z5l{down} .. z4{right} .. z3l{dir27} .. z2l{up} ..
+ z1l{1/3[z6l,z7]-z1l} & z1l -- z1r -- z1'r & cycle
+ shifted (-exact_center + (0, -0.75reduced_il));
+
+ penpos9(stem_width, 0);
+ x9r = x4; y9 = 0.3 height;
+
+ pickup pencircle
+ scaled stem_width
+ rotated 45;
+ draw z9 -- (z9 + (0, -0.4reduced_il))
+ shifted (-exact_center + (0, -0.75reduced_il));
+
+ pickup pencircle
+ xscaled stem_width
+ yscaled hair
+ rotated 30;
+
+ draw halfcircle
+ scaled 0.5 reduced_il
+ rotated -90
+ shifted z8
+ shifted (0, 0.25reduced_il)
+ shifted (-exact_center + (0, -0.75reduced_il));
+
+ draw halfcircle
+ scaled 0.4 reduced_il
+ rotated 90
+ shifted (z8 + (0, 0.45 reduced_il))
+ shifted (0, 0.25reduced_il)
+ shifted (-exact_center + (0, -0.75reduced_il));
+enddef;
+
+
+fet_beginchar("mensural g clef", "mensural_g", "mensgclef")
+ if test = 1:
+ draw_staff(-1,3, 0.0);
+ fi;
+ draw_mensural_g_clef((0,0), 1.0);
+fet_endchar;
+fet_beginchar("mensural g clef", "mensural_g_change", "cmensgclef")
+ draw_mensural_g_clef((0,0), .8);
+fet_endchar;
+
%%%%%%%%
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] ancient-font.ly, clefs,
Juergen Reuter <=