summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--mf/feta-bolletjes.mf71
-rw-r--r--scm/output-lib.scm14
3 files changed, 79 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 92448e5811..680ceb6ac9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -23,6 +23,10 @@
* mf/parmesan-heads.mf: Fix typo in comment.
+ * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
+ adding longa head to feta font and removing obsolete default
+ mapping scheme code.
+
2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
* scm/output-lib.scm (fingering::calc-text): use origin
diff --git a/mf/feta-bolletjes.mf b/mf/feta-bolletjes.mf
index 48eb3649c3..36abfcf1a8 100644
--- a/mf/feta-bolletjes.mf
+++ b/mf/feta-bolletjes.mf
@@ -148,6 +148,77 @@ enddef;
%
% dimensions aren't entirely right.
%
+def draw_longa (expr up) =
+ save stemthick, fudge;
+
+ stemthick# = 2 stafflinethickness#;
+ define_whole_blacker_pixels (stemthick);
+
+ fudge = hround (blot_diameter / 2);
+
+ draw_outside_ellipse (1.80, 0, 0.707, 0);
+ undraw_inside_ellipse (1.30, 125, 0.68, 2 stafflinethickness#);
+
+ pickup pencircle scaled stemthick;
+
+ if up:
+ bot y1 = -d;
+ y2 = h;
+ rt x1 - fudge = 0;
+ x1 = x2;
+
+ fudge + lft x3 = w;
+ x4 = x3;
+ top y4 = h + 3.0 staff_space;
+ y3 = y1;
+ else:
+ bot y1 = -d - 3.0 staff_space;
+ top y2 = h;
+ rt x1 - fudge = 0;
+ x1 = x2;
+
+ fudge + lft x3 = w;
+ x4 = x3;
+ y4 = y2;
+ bot y3 = -d;
+ fi;
+
+ draw_gridline (z1, z2, stemthick);
+ draw_gridline (z3, z4, stemthick);
+enddef;
+
+
+fet_beginchar ("Longa notehead", "u-2");
+ draw_longa (true);
+
+ draw_staff (-2, 2, 0);
+fet_endchar;
+
+fet_beginchar ("Longa notehead", "d-2");
+ draw_longa (false);
+
+ draw_staff (-2, 2, 0);
+fet_endchar;
+
+
+if test > 0:
+ fet_beginchar ("Longa notehead", "u-2");
+ draw_longa (true);
+
+ draw_staff (-2, 2, 0.5);
+ fet_endchar;
+
+ fet_beginchar ("Longa notehead", "d-2");
+ draw_longa (false);
+
+ draw_staff (-2, 2, 0.5);
+ fet_endchar;
+fi;
+
+
+%
+% dimensions aren't entirely right.
+%
def draw_brevis =
save stemthick, fudge;
diff --git a/scm/output-lib.scm b/scm/output-lib.scm
index 7c7f64811c..1558e76118 100644
--- a/scm/output-lib.scm
+++ b/scm/output-lib.scm
@@ -119,6 +119,10 @@
(log (min 2 (ly:grob-property grob 'duration-log))))
(case style
+ ;; "default" style is directly handled in note-head.cc as a
+ ;; special case (HW says, mainly for performance reasons).
+ ;; Therefore, style "default" does not appear in this case
+ ;; statement. -- jr
((xcircle) "2xcircle")
((harmonic) "0harmonic")
((baroque)
@@ -137,16 +141,6 @@
(string-append (number->string log) (symbol->string style))))
((neomensural)
(string-append (number->string log) (symbol->string style)))
- ((default)
- ;; The default font in mf/feta-bolletjes.mf defines a brevis, but
- ;; neither a longa nor a maxima. Hence let us, for the moment,
- ;; take these from the neo-mensural font. TODO: mf/feta-bolletjes
- ;; should define at least a longa for the default font. The longa
- ;; should look exactly like the brevis of the default font, but
- ;; with a stem exactly like that of the quarter note. -- jr
- (if (< log -1)
- (string-append (number->string log) "neomensural")
- (number->string log)))
(else
(if (string-match "vaticana*|hufnagel*|medicaea*" (symbol->string style))
(symbol->string style)