From: fred Date: Wed, 27 Mar 2002 01:18:30 +0000 (+0000) Subject: lilypond-1.3.154 X-Git-Tag: release/1.5.59~650 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=7605954e4c4fce2b1f94a66a367d20d5f5c48cc0;p=lilypond.git lilypond-1.3.154 --- diff --git a/lily/tfm.cc b/lily/tfm.cc index 0a3e7362b5..6a8afd6e56 100644 --- a/lily/tfm.cc +++ b/lily/tfm.cc @@ -79,10 +79,19 @@ Tex_font_metric::find_ascii (int ascii, bool warn) const return &dummy_static_char_metric; } + +/* + UGH: glyphs need not be consecutive in TFM. + */ int Tex_font_metric::count () const { - return ascii_to_metric_idx_.size (); + for (int i = ascii_to_metric_idx_.size (); i--;) + { + if (ascii_to_metric_idx_[i] != -1) + return i + 1; + } + return 0; } Box diff --git a/mf/feta-braces7.mf b/mf/feta-braces7.mf new file mode 100644 index 0000000000..0cae71d6bd --- /dev/null +++ b/mf/feta-braces7.mf @@ -0,0 +1,11 @@ +% +% feta-braces6.mf -- next 256 braces +% +% source file of the Feta (Font-En-Tja) music font +% +% (c) 1997--2001 Han-Wen Nienhuys +% + +font_count := 7; +input feta-beugel; +end. diff --git a/mf/feta-braces8.mf b/mf/feta-braces8.mf new file mode 100644 index 0000000000..a1071c5ffc --- /dev/null +++ b/mf/feta-braces8.mf @@ -0,0 +1,11 @@ +% +% feta-braces6.mf -- next 256 braces +% +% source file of the Feta (Font-En-Tja) music font +% +% (c) 1997--2001 Han-Wen Nienhuys +% + +font_count := 8; +input feta-beugel; +end. diff --git a/scm/font.scm b/scm/font.scm index 9c7fb28461..39fcd09fbc 100644 --- a/scm/font.scm +++ b/scm/font.scm @@ -23,8 +23,12 @@ (else (ly-warning "unknown font field name")) ) )) - -;;;;;;;;; TODO TODO . (should not use filtering?) + + + +;; most of these routines have been reimplemented in C++ + +;; TODO TODO . (should not use filtering?) ;; this is bad, since we generate garbage every font-lookup. ;; otoh, if the qualifiers is narrow enough , we don't generate much garbage. @@ -36,12 +40,28 @@ font-descr-alist) ) -;; should really have name/pt size at the front of the list. +(define paper-style-sheet-alist + '( + ((8 * * braces feta-braces 8) . "feta-braces8") + ((7 * * braces feta-braces 7) . "feta-braces7") + ((6 * * braces feta-braces 6) . "feta-braces6") + ((5 * * braces feta-braces 5) . "feta-braces5") + ((4 * * braces feta-braces 4) . "feta-braces4") + ((3 * * braces feta-braces 3) . "feta-braces3") + ((2 * * braces feta-braces 2) . "feta-braces2") + ((1 * * braces feta-braces 1) . "feta-braces1") + ((0 * * braces feta-braces 0) . "feta-braces0") + )) + +;; FIXME: what about this comment?: +;; should really have name/pt size at the front of the list. +;; (also tried to vary the order of this list, with little effect) ;; -;; (also tried to vary the order of this list, with little effect) +;; (font-relative-size font-series font-shape font-family font-name +;; font-design-size) (define paper20-style-sheet-alist '( - ;; why are font-names strings, not symbols? + ;; why are font file names strings, not symbols? ((3 medium upright number feta-nummer 13) . "feta-nummer13") ((2 medium upright number feta-nummer 13) . "feta-nummer13") ((1 medium upright number feta-nummer 11) . "feta-nummer11") @@ -102,26 +122,6 @@ ((-2 medium caps roman cmcsc 7) . "cmcsc7") ((-3 medium caps roman cmcsc 7) . "cmcsc7") - ;; smallest needs 11 steps: -3 to +8, so - ;; biggest also needs 11 available steps: +2 to + 13 - ((13 * * braces feta-braces 6) . "feta-braces6") - ((12 * * braces feta-braces 6) . "feta-braces6") - ((11 * * braces feta-braces 6) . "feta-braces6") - ((10 * * braces feta-braces 6) . "feta-braces6") - ((9 * * braces feta-braces 6) . "feta-braces6") - ((8 * * braces feta-braces 6) . "feta-braces6") - ((7 * * braces feta-braces 5) . "feta-braces5") - ((6 * * braces feta-braces 4) . "feta-braces4") - ((5 * * braces feta-braces 3) . "feta-braces3") - ((4 * * braces feta-braces 2) . "feta-braces2") - ((3 * * braces feta-braces 1) . "feta-braces1") - ((2 * * braces feta-braces 0) . "feta-braces0") - ((1 * * braces feta-braces 0) . "feta-braces0") - ((0 * * braces feta-braces 0) . "feta-braces0") - ((-1 * * braces feta-braces 0) . "feta-braces0") - ((-2 * * braces feta-braces 0) . "feta-braces0") - ((-3 * * braces feta-braces 0) . "feta-braces0") - ((3 * * dynamic feta-din 19) . "feta-din19") ((2 * * dynamic feta-din 19) . "feta-din19") ((1 * * dynamic feta-din 17) . "feta-din17") @@ -191,7 +191,8 @@ (define (make-style-sheet sym) - `((fonts . ,(cdr (assoc sym font-list-alist))) + `((fonts . ,(append paper-style-sheet-alist + (cdr (assoc sym font-list-alist)))) (font-defaults . ((font-family . music) (font-relative-size . 0)