Hi!
Actually, this patch mainly fixes "Symbol not found" problems on neumes
note heads rather than on clefs, but maybe this reduces the number of
misleading errors so that your clef problem exposes clearer.
I also updated ancient-font.ly to various recent changes in the code.
Greetings,
Juergen
diff -Naur lilypond-1.6.0/ChangeLog lilypond-1.6.0.NEW/ChangeLog
--- lilypond-1.6.0/ChangeLog Mon Aug 19 15:38:45 2002
+++ lilypond-1.6.0.NEW/ChangeLog Thu Aug 29 00:54:21 2002
@@ -1,3 +1,9 @@
+2002-08-29 Juergen Reuter <[EMAIL PROTECTED]>
+
+ * input/test/ancient-font.ly, mf/parmesan-heads.mf,
+ scm/output-lib.scm, lily/note-head.cc: bugfix: make neume note
+ heads accessible
+
2002-08-19 Han-Wen Nienhuys <[EMAIL PROTECTED]>
* VERSION: release 1.6.0
diff -Naur lilypond-1.6.0/input/test/ancient-font.ly
lilypond-1.6.0.NEW/input/test/ancient-font.ly
--- lilypond-1.6.0/input/test/ancient-font.ly Sun Aug 18 03:11:16 2002
+++ lilypond-1.6.0.NEW/input/test/ancient-font.ly Thu Aug 29 00:47:49 2002
@@ -1,23 +1,16 @@
\version "1.5.68"
\header {
title = "ancient font test"
- date = "2000"
+ date = "2002"
}
-
-
\include "paper26.ly"
-global = \notes {
+upperStaff = \context GregorianStaff = upperStaff <
+ \context GregorianVoice <
\property Score.timing = ##f
-% \property Score.forceAccidental = ##t
- \property Staff.TimeSignature \set #'font-family = #'ancient
-% \property Staff.TimeSignature \override #'style = #'mensural
-}
+% \property Score.forceAccidental = ##t %%%%%%%% FIXME: what happened to this
+property?
-upperVoice = \context Staff = upperVoice <
- \global
-
% this is broken until further notice -- see refman
% \property Staff.StaffSymbol \override #'line-count = #4
\context Staff \outputproperty #(make-type-checker 'staff-symbol-interface)
@@ -29,32 +22,19 @@
\property Staff.KeySignature \override #'style = #'vaticana
\property Staff.Accidental \set #'font-family = #'ancient
\property Staff.Accidental \override #'style = #'vaticana
- \property Staff.Custos \set #'font-family = #'ancient
- \property Staff.Custos \override #'style = #'vaticana
- \property Staff.Custos \override #'neutral-position = #4
- \property Staff.Custos \override #'neutral-direction = #-1
- \property Staff.Custos \override #'adjust-if-on-staffline = ##t
\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
- \property Voice.Porrectus \override #'add-stem = ##t
- \property Voice.Porrectus \override #'direction = #-1
- \property Voice.Porrectus \override #'thickness = #0.5
\key es \major
\clef "vaticana_fa2"
c!1 des! e! f! ges!
-% \property Staff.clefGlyph = #"clefs-vaticana_do"
-% \property Staff.clefPosition = #1
-% \property Staff.clefOctavation = #0
- \clef "vaticana_do2"
-
\property Voice.NoteHead \override #'style = #'vaticana_inclinatum
- a! b!
+ a! b! ces'
\property Staff.BarLine \override #'bar-size = #3.0 \bar "|"
+% \break % 1 (8*1)
+
\property Voice.NoteHead \override #'style = #'vaticana_virga
- ces' b! des'! \~ ges! \~ fes!
+ b! des'! ges! fes!
\breathe
\clef "vaticana_fa1"
\property Voice.NoteHead \override #'style = #'vaticana_quilisma
@@ -62,6 +42,8 @@
\property Voice.NoteHead \override #'style = #'vaticana_rvirga
c d
\property Staff.BarLine \override #'bar-size = #3.0 \bar "|"
+% \break %2 (8*1)
+
\property Voice.NoteHead \override #'style = #'vaticana_rvirga
es f
\property Voice.NoteHead \override #'style = #'vaticana_lpes
@@ -72,6 +54,8 @@
g f
\property Voice.NoteHead \override #'style = #'vaticana_plica
\property Staff.BarLine \override #'bar-size = #2.0 \bar "|"
+% \break % 3 (8*1)
+
es d
\property Voice.NoteHead \override #'style = #'vaticana_epiphonus
c d
@@ -85,13 +69,17 @@
\clef "medicaea_fa2"
ces! des!
\property Staff.BarLine \override #'bar-size = #3.0 \bar "|"
+% \break % 4 (8*1)
+
e! f! ges!
\clef "medicaea_do2"
- \property Voice.NoteHead \override #'style = #'medicaea_subbipunctum
+ \property Voice.NoteHead \override #'style = #'medicaea_inclinatum
a! b! ces'!
\property Voice.NoteHead \override #'style = #'medicaea_virga
b! a!
\property Staff.BarLine \override #'bar-size = #3.0 \bar "|"
+% \break % 5 (8*1)
+
ges! fes!
\clef "medicaea_fa1"
\property Voice.NoteHead \override #'style = #'medicaea_rvirga
@@ -104,6 +92,8 @@
\clef "hufnagel_fa2"
ces! des! es!
\property Staff.BarLine \override #'bar-size = #3.0 \bar "|"
+% \break % 6 (8*1)
+
fes! ges!
\clef "hufnagel_do2"
\property Voice.NoteHead \override #'style = #'hufnagel_lpes
@@ -111,16 +101,23 @@
\property Voice.NoteHead \override #'style = #'hufnagel_virga
bes! as!
\property Staff.BarLine \override #'bar-size = #3.0 \bar "|"
+% \break % 7 (8*1)
+
ges! fes!
\clef "hufnagel_do_fa"
\property Voice.NoteHead \override #'style = #'hufnagel_punctum
es! des! ces! des! es! fes!
\bar "||"
+% \break % 8 (8*1)
+
+ s32*1
+% \break % 12 (32*1)
}
+ >
>
-lowerVoice = \context Staff = lowerNotes <
- \global
+lowerStaff = \context MensuralStaff = lowerStaff <
+ \context MensuralVoice <
% this is broken until further notice -- see refman
% \property Staff.StaffSymbol \override #'line-count = #5
@@ -128,131 +125,190 @@
#'line-count = #5
\notes \transpose c' {
- \property Voice.autoBeaming = ##f
\property Staff.Clef \set #'font-family = #'ancient
- \property Staff.KeySignature \set #'font-family = #'ancient
- \property Staff.KeySignature \override #'style = #'mensural
- \property Staff.Accidental \set #'font-family = #'ancient
- \property Staff.Accidental \override #'style = #'mensural
- \property Staff.Custos \set #'font-family = #'ancient
- \property Staff.Custos \override #'style = #'mensural
- \property Staff.Custos \override #'neutral-position = #3
- \property Staff.Custos \override #'neutral-direction = #-1
- \property Staff.Custos \override #'adjust-if-on-staffline = ##t
+ \property Voice.autoBeaming = ##f
\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
- \property Voice.Porrectus \override #'add-stem = ##t
- \property Voice.Porrectus \override #'thickness = #0.7
-% \property Voice.Porrectus \override #'auto-properties = ##t
-% \property Voice.Porrectus \override #'width = #3.0
\key a \major
- % IMPORTANT NOTE:
- %
- % The porrectus syntax is definitely subject to change. For
- % proper use, it may eventually change into something like this:
- %
- % \startLigature e \~ c \endLigature
- %
- % The reason is that there needs to be some enclosing instance
- % for correct handling of line breaking, alignment with
- % adjacent note heads, and placement of accidentals.
+% FIXME: lily crashes on some (invalid?) ligatures with:
+% ERROR: In procedure gh_scm2int:
+% ERROR: Wrong type argument in position 1: ()
- \clef "neo_mensural_c2"
- cis' e' \~ d' gis' \~ e'
+% FIXME: lily emits "Programming error: Infinity or NaN encountered"
+% on many ligatures such as BB.
+
+ cis'1 d'\breve gis'\breve e'\breve \[ e'\longa fis'\longa \]
\property Staff.forceClef = ##t
\clef "neo_mensural_c2"
+ cis1
+ \bar "|"
+% \break % 2 (16*1)
- fis' \~ b cis''
- b \~ a a \~ fis
+ \[ g\breve dis''\longa \]
+ b\breve \[ a\longa d\longa \]
\clef "petrucci_c2"
- cis \~ fis ces1 % \bar "|"
+% \break % 4 (16*1)
+ fis1 ces1
\clef "petrucci_c2"
r\longa
\property Staff.forceClef = ##t
\clef "mensural_c2"
- r\breve r1 r2
- \clef "mensural_g"
- r4 r8 r16 r16 \bar "|"
+ r\breve
+ \bar "|"
+% \break % 5 (8*1)
+ r2
+ \clef "mensural_g"
+ r4 r8 r16 r16
\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,
- d8 e d16 e d32 e d64 e d e
+ c8 b, c16 b, c32 b, c64 b, c64 b,
+ d8 e d16 e d32 e d64 e d64 e
r\longa
\property Staff.forceClef = ##t
\clef "petrucci_f"
- r\breve r1 % \bar "|"
- \clef "mensural_f"
+ r\breve
+ \bar "|"
+% \break % 6 (8*1)
+ r\breve
+ \clef "mensural_f"
% FIXME: must set Voice.Stem style to #'neo_mensural to avoid
% segmentation fault on r8/r16/r32. (Strange: what has
% Voice.Stem style to do with mensural rests?)
\property Voice.Stem \override #'style = #'neo_mensural
r2 r4 r8 r16 r32 r32
\property Voice.Stem \override #'style = #'mensural
-
\property Staff.forceClef = ##t
\clef "mensural_f"
- e2 f g
+ e\breve f g a1
\clef "mensural_g"
+% \break % 7 (8*1)
- bes'! \~ as'! \~ cis''!
- bes'! \~ fis'! as'! \~ ges'!
+ \[ bes'!\longa a'!\longa c''!\longa \]
+ e'1 d' c' d' \bar "|"
+ \bar "|"
+% \break % 9 (16*1)
+
+ bes'!\longa fis'!1 as'!1 ges'!\longa % lig
\property Staff.forceClef = ##t
\clef "mensural_g"
- e' d' c'1 \bar "|"
+ e'2 d' c' \bar "|"
+% \break % 11 (16*1)
\property Staff.forceClef = ##t
\clef "petrucci_g"
- c'2 d' e' f' g'
+ c'2 d' e' f'
\clef "petrucci_g"
- as'! bes'! cis''!
+ g' as'! bes'! cis''!
bes'! as'! gis'! fis'!
\property Staff.forceClef = ##t
\clef "mensural_g"
es'! des'! cis'!1 \bar "||"
+% \break % 12 (8*1)
}
+ >
>
\score {
- \context ChoirStaff <
- \upperVoice
- \lowerVoice
+ \context Score <
+ \upperStaff
+ \lowerStaff
>
\paper {
-% \paperTwentysix
linewidth = 17.25\cm
textheight = 26.0\cm
stafflinethickness = \staffspace / 5.0
indent = 0.0
\translator {
+ \ScoreContext
+ \accepts MensuralStaff
+ \accepts GregorianStaff
+% timing = ##f %%%%%%%% FIXME: this has no effect
+ }
+ \translator {
+ \VoiceContext
+ \name MensuralVoice
+ \alias Voice
+ \remove Ligature_bracket_engraver
+ \consists Mensural_ligature_engraver
+ NoteHead \set #'font-family = #'ancient
+ NoteHead \set #'style = #'mensural
+ Stem \set #'font-family = #'ancient
+% Stem \set #'style = #'mensural %%%%%%%% FIXME: this core dumps
+ Stem \set #'thickness = #1.0
+ Rest \set #'font-family = #'music
+ Rest \set #'style = #'mensural
+ autoBeaming = ##f
+ }
+ \translator {
+ \VoiceContext
+ \name GregorianVoice
+ \alias Voice
+ \remove Ligature_bracket_engraver
+% \consists Gregorian_ligature_engraver %%%%%%%% TODO: not yet implemented
+ NoteHead \set #'font-family = #'ancient
+ NoteHead \set #'style = #'vaticana_punctum
+ autoBeaming = ##f
+ }
+ \translator {
\StaffContext
+ \name MensuralStaff
+ \alias Staff
+ \accepts MensuralVoice
\consists Custos_engraver
-% Custos \override #'style = #'mensural
- \remove Time_signature_engraver
-% StaffSymbol \override #'thickness = #2.0
-% StaffSymbol \override #'line-count = #4
+ TimeSignature \set #'font-family = #'ancient
+ TimeSignature \set #'style = #'mensural
+ KeySignature \set #'font-family = #'ancient
+ KeySignature \set #'style = #'mensural
+ Accidental \set #'font-family = #'ancient
+ Accidental \set #'style = #'mensural
+ Custos \set #'font-family = #'ancient
+ Custos \set #'style = #'mensural
+ Custos \set #'neutral-position = #3
+ Custos \set #'neutral-direction = #-1
+ Custos \set #'adjust-if-on-staffline = ##t
+ Clef \set #'font-family = #'ancient
+ clefGlyph = #"clefs-petrucci_c2"
+ clefPosition = #-2
+ clefOctavation = #0
}
\translator {
- \ScoreContext
-% \remove System_start_delimiter_engraver
-% systemStartDelimiter \override #'glyph = #'brace
+ \StaffContext
+ \name GregorianStaff
+ \alias Staff
+ \accepts GregorianVoice
+ \consists Custos_engraver
+ \remove Time_signature_engraver
+ StaffSymbol \set #'thickness = #2.0
+ StaffSymbol \set #'line-count = #4
+ KeySignature \set #'font-family = #'ancient
+ KeySignature \set #'style = #'vaticana
+ Accidental \set #'font-family = #'ancient
+ Accidental \set #'style = #'vaticana
+ Custos \set #'font-family = #'ancient
+ Custos \set #'style = #'vaticana
+ Custos \set #'neutral-position = #4
+ Custos \set #'neutral-direction = #-1
+ Custos \set #'adjust-if-on-staffline = ##t
+ Clef \set #'font-family = #'ancient
+ clefGlyph = #"clefs-vaticana_do"
+ clefPosition = #1
+ clefOctavation = #0
}
\translator {
- \ChoirStaffContext
- \remove System_start_delimiter_engraver
-% systemStartDelimiter \override #'glyph = #'empty
- }
+ \HaraKiriStaffContext
+ \accepts MensuralVoice
+ \accepts GregorianVoice
+ }
}
}
diff -Naur lilypond-1.6.0/lily/note-head.cc lilypond-1.6.0.NEW/lily/note-head.cc
--- lilypond-1.6.0/lily/note-head.cc Mon Aug 5 11:37:21 2002
+++ lilypond-1.6.0.NEW/lily/note-head.cc Wed Aug 28 20:31:07 2002
@@ -125,15 +125,15 @@
SCM scm_font_family = ly_cdr (scm_pair);
String font_char = "noteheads-" + ly_scm2string (scm_font_char);
String font_family = ly_scm2string (scm_font_family);
-
- me->set_grob_property("font-family", ly_symbol2scm (font_family.to_str0 ()));
- Molecule out =
- Font_interface::get_default_font (me)->find_by_name (font_char);
- if (out.empty_b())
- {
- warning (_f("Symbol not found, ", font_char.to_str0()));
+
+ me->set_grob_property("font-family", ly_symbol2scm (font_family.to_str0 ()));
+ Molecule out =
+ Font_interface::get_default_font (me)->find_by_name (font_char);
+ if (out.empty_b())
+ {
+ me->warning (_f ("Symbol `%s' not found in family `%s'",
+ font_char.to_str0 (), font_family.to_str0 ()));
}
-
int interspaces = Staff_symbol_referencer::line_count (me)-1;
int pos = (int)rint (Staff_symbol_referencer::get_position (me));
if (abs (pos) - interspaces > 1)
diff -Naur lilypond-1.6.0/mf/parmesan-heads.mf lilypond-1.6.0.NEW/mf/parmesan-heads.mf
--- lilypond-1.6.0/mf/parmesan-heads.mf Sun May 19 02:14:07 2002
+++ lilypond-1.6.0.NEW/mf/parmesan-heads.mf Wed Aug 28 20:39:41 2002
@@ -486,50 +486,50 @@
enddef;
% punctum
-punctum_char("Ed. Vat. punctum", "0vaticana_punctum", "vatpunctumhead",
+punctum_char("Ed. Vat. punctum", "vaticana_punctum", "vatpunctumhead",
false, false, false, false, false,
false, false, false, false, 1.0);
% punctum cavum (for OpusTeX compatibility)
-punctum_char("Ed. Vat. punctum cavum", "0vaticana_punctum_cavum",
+punctum_char("Ed. Vat. punctum cavum", "vaticana_punctum_cavum",
"vatpunctumcavumhead",
false, false, false, true, false,
false, false, false, false, 1.0);
% linea punctum (for OpusTeX compatibility)
-punctum_char("Ed. Vat. linea punctum", "0vaticana_linea_punctum",
+punctum_char("Ed. Vat. linea punctum", "vaticana_linea_punctum",
"vatlineapunctumhead",
false, false, true, false, false,
false, false, false, false, 1.0);
% linea punctum cavum (for OpusTeX compatibility)
-punctum_char("Ed. Vat. linea punctum cavum", "0vaticana_linea_punctum_cavum",
+punctum_char("Ed. Vat. linea punctum cavum", "vaticana_linea_punctum_cavum",
"vatlineapunctumcavumhead",
false, false, true, true, false,
false, false, false, false, 1.0);
% punctum inclinatum
-inclinatum_char("Ed. Vat. inclinatum", "0vaticana_inclinatum",
+inclinatum_char("Ed. Vat. inclinatum", "vaticana_inclinatum",
"vatinclinatumhead",
false, false, false);
% virga (i.e. right stemmed punctum)
-punctum_char("Ed. Vat. virga", "0vaticana_virga", "vatvirgahead",
+punctum_char("Ed. Vat. virga", "vaticana_virga", "vatvirgahead",
false, true, false, false, false,
false, false, false, false, 1.0);
% left stemmed punctum as used in clivis (flexa) ligature
-punctum_char("Ed. Vat. reverse virga", "0vaticana_rvirga", "vatrvirgahead",
+punctum_char("Ed. Vat. reverse virga", "vaticana_rvirga", "vatrvirgahead",
true, false, false, false, false,
false, false, false, false, 1.0);
% pes lower punctum
-punctum_char("Ed. Vat. pes lower punctum", "0vaticana_lpes", "vatlpeshead",
+punctum_char("Ed. Vat. pes lower punctum", "vaticana_lpes", "vatlpeshead",
false, false, false, false, true,
false, true, false, false, 1.0);
% pes upper punctum
-punctum_char("Ed. Vat. pes upper punctum", "0vaticana_upes", "vatupeshead",
+punctum_char("Ed. Vat. pes upper punctum", "vaticana_upes", "vatupeshead",
false, false, false, false, true,
false, false, false, false, 1.0);
@@ -539,29 +539,29 @@
% punctum to 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", "0vaticana_vupes",
+punctum_char("Ed. Vat. var pes upper punctum", "vaticana_vupes",
"vatvupeshead",
false, false, false, false, true,
false, false, false, true, 1.0);
% small punctum as used in epiphonus/cephalicus
-punctum_char("Ed. Vat. plica", "0vaticana_plica", "vatplicahead",
+punctum_char("Ed. Vat. plica", "vaticana_plica", "vatplicahead",
false, false, false, false, true,
false, false, false, false, 0.5);
% excentric punctum as used in epiphonus
-punctum_char("Ed. Vat. epiphonus", "0vaticana_epiphonus", "vatepiphonushead",
+punctum_char("Ed. Vat. epiphonus", "vaticana_epiphonus", "vatepiphonushead",
false, false, false, false, false,
false, true, true, false, 1.0);
% excentric punctum as used in cephalicus
-punctum_char("Ed. Vat. cephalicus", "0vaticana_cephalicus",
+punctum_char("Ed. Vat. cephalicus", "vaticana_cephalicus",
"vatcephalicushead",
false, false, false, false, false,
false, false, true, false, 1.0);
% quilisma
-fet_beginchar("Ed. Vat. quilisma", "0vaticana_quilisma", "vatquilismahead")
+fet_beginchar("Ed. Vat. quilisma", "vaticana_quilisma", "vatquilismahead")
save b_h,a_w;
a_b:=1.54; % b_h*a_b/a_w = wd/ht
b_h:=0.85;
@@ -589,39 +589,39 @@
fet_endchar;
% solesmes punctum inclinatum parvum
-inclinatum_char("Solesmes punctum inclinatum parvum", "0solesmes_incl_parvum",
+inclinatum_char("Solesmes punctum inclinatum parvum", "solesmes_incl_parvum",
"solinclparvumhead",
true, false, false);
% solesmes punctum auctum ascendens
-punctum_char("Solesmes punctum auctum ascendens", "0solesmes_auct_asc",
+punctum_char("Solesmes punctum auctum ascendens", "solesmes_auct_asc",
"solauctaschead",
false, false, false, false, false,
true, true, false, false, 1.0);
% solesmes punctum auctum descendens
-punctum_char("Solesmes punctum auctum descendens", "0solesmes_auct_desc",
+punctum_char("Solesmes punctum auctum descendens", "solesmes_auct_desc",
"solauctdeschead",
false, false, false, false, false,
true, false, false, false, 1.0);
% solesmes punctum inclinatum auctum
-inclinatum_char("Solesmes punctum incl. auctum", "0solesmes_incl_auctum",
+inclinatum_char("Solesmes punctum incl. auctum", "solesmes_incl_auctum",
"solpunctuminclinatumauctumhead",
false, false, true);
% solesmes stropha
-inclinatum_char("Solesmes stropha", "0solesmes_stropha",
+inclinatum_char("Solesmes stropha", "solesmes_stropha",
"solstrophahead",
false, true, false);
% solesmes stropha aucta
-inclinatum_char("Solesmes stropha aucta", "0solesmes_stropha_aucta",
+inclinatum_char("Solesmes stropha aucta", "solesmes_stropha_aucta",
"solstrophaauctahead",
false, true, true);
% solesmes oriscus
-fet_beginchar("Solesmes oriscus", "0solesmes_oriscus",
+fet_beginchar("Solesmes oriscus", "solesmes_oriscus",
"soloriscushead")
save b_h, a_w;
a_b := 1.54; % b_h*a_b/a_w = wd/ht
@@ -658,7 +658,7 @@
%
% inclinatum
-fet_beginchar("Ed. Med. inclinatum", "0medicaea_inclinatum",
+fet_beginchar("Ed. Med. inclinatum", "medicaea_inclinatum",
"medinclinatumhead")
save b_h, a_w;
a_b := 1.54; % b_h*a_b/a_w = wd/ht
@@ -724,15 +724,15 @@
enddef;
% punctum
-punctum_char("Ed. Med. punctum", "0medicaea_punctum", "medpunctumhead",
+punctum_char("Ed. Med. punctum", "medicaea_punctum", "medpunctumhead",
false, false);
% left up-stemmed punctum
-punctum_char("Ed. Med. reverse virga", "0medicaea_rvirga", "medrvirgahead",
+punctum_char("Ed. Med. reverse virga", "medicaea_rvirga", "medrvirgahead",
true, false);
% virga (i.e. left down-stemmed punctum)
-punctum_char("Ed. Med. virga", "0medicaea_virga", "medvirgahead",
+punctum_char("Ed. Med. virga", "medicaea_virga", "medvirgahead",
false, true);
%%%%%%%%
@@ -783,13 +783,13 @@
enddef;
% punctum
-punctum_char("Hufnagel punctum", "0hufnagel_punctum", "hufpunctumhead", false)
+punctum_char("Hufnagel punctum", "hufnagel_punctum", "hufpunctumhead", false)
% virga
-punctum_char("Hufnagel virga", "0hufnagel_virga", "hufvirgahead", true)
+punctum_char("Hufnagel virga", "hufnagel_virga", "hufvirgahead", true)
% pes lower punctum
-fet_beginchar("Hufnagel pes lower punctum", "0hufnagel_lpes", "huflpeshead")
+fet_beginchar("Hufnagel pes lower punctum", "hufnagel_lpes", "huflpeshead")
save b_h, a_w;
a_b := 1.54; % b_h*a_b/a_w = wd/ht
b_h := 0.85;
diff -Naur lilypond-1.6.0/scm/output-lib.scm lilypond-1.6.0.NEW/scm/output-lib.scm
--- lilypond-1.6.0/scm/output-lib.scm Wed Aug 14 14:38:06 2002
+++ lilypond-1.6.0.NEW/scm/output-lib.scm Wed Aug 28 21:27:14 2002
@@ -154,8 +154,11 @@
(cons (string-append (number->string duration) "neo_mensural") "ancient")
(cons (number->string duration) "music")))
(else
- (cons (string-append (number->string (max 0 duration)) (symbol->string style))
- "music"))))
+ (if (string-match "vaticana*|hufnagel*|medicaea*" style)
+ (cons (symbol->string style) "ancient")
+ (cons (string-append (number->string (max 0 duration))
+ (symbol->string style))
+ "music")))))
(define (note-head-style->attachment-coordinates style duration)