From: fred Date: Tue, 26 Mar 2002 23:21:32 +0000 (+0000) Subject: lilypond-1.3.48 X-Git-Tag: release/1.5.59~1647 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=8d6a3d8ac95cfac8119ae942502418443b51a403;p=lilypond.git lilypond-1.3.48 --- diff --git a/CHANGES b/CHANGES index ba1a1e5bdb..f9de694dfb 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,31 @@ +1.3.47.mb2 +=========== + +* Corrected glossary.tely + +* Corrected \mark font handling. feta-nummer font only of the + string is all numeric. + +* Implemented noteHeadStyle lookup in Guile. Reintroduced the style + "harmonic" and added "baroque" (normal note shapes except for + brevis and longa which are square). + +1.3.47.mb1 +=========== + +* Simplified ly2dvi using the power of the geometry package. + +* Improved heuristic size calculation of TeX macros. Handles e.g. + "\\u{a}", "\\"{o}" and "\\^{u}" correctly. + +1.3.47.hwn1 +=========== + +* Bugfix: don't hang on zero-duration. + +1.3.47 +====== + 1.3.46.jcn2 =========== @@ -9,7 +37,7 @@ * Added Bar_number_engraver to standard Score context * Construct octavation scripts in the clef-engraver; this fixes the -hara + clef8 problem +hara-kiri + clef8 problem 1.3.46 ====== diff --git a/input/test/incipit.ly b/input/test/incipit.ly index b2cf14733f..d0f5b7f030 100644 --- a/input/test/incipit.ly +++ b/input/test/incipit.ly @@ -15,6 +15,7 @@ incipit = \notes\relative c'{ violin = \notes\relative c''{ \specialkey \keysignature f' fis'' g' gis''; \time 2/2; + \clef "treble"; \key; a4. b8 c4 fis | diff --git a/input/test/mark.ly b/input/test/mark.ly index da4369262a..2a46b75f39 100644 --- a/input/test/mark.ly +++ b/input/test/mark.ly @@ -4,11 +4,12 @@ global = \notes { s1 | \mark "A"; s1 | \mark ; s1 | \mark "12"; + s1 | \mark "A2"; s1 } one = \notes \relative c { - c''1 c c c + c''1 c c c c } diff --git a/input/test/noteheadstyle.ly b/input/test/noteheadstyle.ly index 813b396418..9ff6337dcf 100644 --- a/input/test/noteheadstyle.ly +++ b/input/test/noteheadstyle.ly @@ -1,13 +1,17 @@ \score { \notes \relative c{ -c''4 c2 c8 c16 c16 c1 +c''4 c2 c8 c16 c16 c1 c\breve \property Voice.noteHeadStyle = "diamond" -c4 c2 c8 c16 c16 c1 +c4 c2 c8 c16 c16 c1 c\breve \property Voice.noteHeadStyle = "transparent" -c4 c2 c8 c16 c16 c1 +c4 c2 c8 c16 c16 c1 c\breve \property Voice.noteHeadStyle = "cross" -c4 c2 c8 c16 c16 c1 +c4 c2 c8 c16 c16 c1 c\breve \property Voice.noteHeadStyle = "mensural" -c4 c2 c8 c16 c16 c1 +c4 c2 c8 c16 c16 c1 c\breve c\longa +\property Voice.noteHeadStyle = "harmonic" +c4 c2 c8 c16 c16 c1 c\breve +\property Voice.noteHeadStyle = "baroque" +c4 c2 c8 c16 c16 c1 c\breve c\longa \context Voice < \context Thread = TA diff --git a/lily/mark-engraver.cc b/lily/mark-engraver.cc index 0c2b543d46..3cc91cdbbf 100644 --- a/lily/mark-engraver.cc +++ b/lily/mark-engraver.cc @@ -21,7 +21,7 @@ #include "staff-symbol-referencer.hh" #include "staff-symbol.hh" #include "text-item.hh" - +#include /** put stuff over or next to bars. Examples: bar numbers, marginal notes, rehearsal marks. @@ -206,8 +206,17 @@ Mark_engraver::do_process_music () text_p_->set_elt_property ("text", ly_str02scm ( t.ch_C())); - SCM st = ly_str02scm ((t.index_any_i ("0123456789") >= 0 ) - ? "mark" : "large"); + + String style = "mark"; + for (int i=0; i < t.length_i(); i++) + { + if (!isdigit(t[i])) + { + style = "large"; + break; + } + } + SCM st = ly_str02scm (style.ch_C()); text_p_->set_elt_property ("style", st); } } diff --git a/lily/note-head.cc b/lily/note-head.cc index ea39db1104..a89dee5aa0 100644 --- a/lily/note-head.cc +++ b/lily/note-head.cc @@ -56,15 +56,8 @@ void Note_head::before_line_breaking () { // 8 ball looks the same as 4 ball: - String type; - SCM style = get_elt_property ("style"); - if (gh_string_p (style)) - { - type = ly_scm2string (style); - } - - if (balltype_i () > 2 || type == "harmonic" || type == "cross") + if (balltype_i () > 2) set_elt_property ("duration-log", gh_int2scm (2)); if (Dots *d = dots_l ()) @@ -91,14 +84,17 @@ Note_head::do_brew_molecule() const ? 0 : (abs((int)p) - sz) /2; - String type; SCM style = get_elt_property ("style"); - if (gh_string_p (style)) + if (style == SCM_UNDEFINED) { - type = ly_scm2string (style); + style = ly_str02scm(""); } - Molecule out = lookup_l()->afm_find (String ("noteheads-") + to_str (balltype_i ()) + type); + Molecule out = lookup_l()->afm_find (String ("noteheads-") + + ly_scm2string (scm_eval (gh_list (ly_symbol2scm("noteheadsymbol"), + gh_int2scm(balltype_i ()), + style, + SCM_UNDEFINED)))); Box ledgerless = out.dim_; diff --git a/ly/property.ly b/ly/property.ly index 0599e32c31..b3fd74191a 100644 --- a/ly/property.ly +++ b/ly/property.ly @@ -114,7 +114,7 @@ specialkey = { endincipit = \notes{ \partial 16; s16 % Hack to handle e.g. \bar ".|"; \endincipit \property Staff.clefStyle = #"fullSizeChanges" - \nobreak \bar ""; + \bar ""; } autoBeamOff = \property Voice.noAutoBeaming = ##t diff --git a/scm/lily.scm b/scm/lily.scm index 677c0e44e7..ab6d5ff38e 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -146,6 +146,16 @@ '(minimum-space 0.0))))) +(define (noteheadsymbol duration style) + (cond + ((equal? style "cross") "2cross") + ((equal? style "harmonic") "0mensural") + ((equal? style "baroque") + (string-append (number->string duration) + (if (< duration 0) "mensural" ""))) + (else + (string-append (number->string duration) style)))) + ;;;;;;;; TeX diff --git a/tex/fetdefs.tex b/tex/fetdefs.tex index 076cee8885..54afa936fb 100644 --- a/tex/fetdefs.tex +++ b/tex/fetdefs.tex @@ -6,10 +6,12 @@ \def#1{\hbox{\char#2}}} \fetdef\sharp{16} +\fetdef\natural{17} \fetdef\flat{18} \font\fetasixteenfont=feta16 \def\fetafont{\fetasixteenfont} \def\textflat{{\fetafont\raise 1ex\hbox{\flat}}} +\def\textnatural{{\fetafont\raise 1ex\hbox{\natural}}} \def\textsharp{{\fetafont\raise1ex\hbox{\sharp}}} \endinput