X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=ChangeLog;h=b14a0fa2752f0a6f301ff2056eb382a09e49f577;hb=3799b0e84d9a1db6ca332f06614e6fd1495c2752;hp=b2ed2eeff560f87b8d838bfe492036b64b970541;hpb=0806e54ba99b2a9ee1093c4946663371de49a337;p=lilypond.git diff --git a/ChangeLog b/ChangeLog index b2ed2eeff5..a3fa9961b9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,1322 @@ +2005-08-15 Jan Nieuwenhuizen + + * input/regression/slur-script.ly: Add example of reverting + inside-slur for fingering. + + * scm/define-grobs.scm (DynamicLineSpanner, Fingering, + TextScript): Explicitly set inside-slur #f, forcing these out of slur. + + * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke + outside_slur_callback if inside-slur == #f (as opposed to unset). + +2005-08-14 Jan Nieuwenhuizen + + * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup, + encoding files are already removed. + +2005-08-15 Mats Bengtsson + + * Documentation/user/advanced-notation.itely (Instrument names): + Document a workaround for instrument names that collide with + system start braces/brackets. + +2005-08-15 Han-Wen Nienhuys + + * lily/rest-collision.cc (do_shift): spello. + + * input/proportional.ly: use #'used property. Set break-overshoot property. + + * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge. + + * lily/paper-column.cc: add #'used property + + * lily/mark-engraver.cc (stop_translation_timestep): set grob + array for staves found. + + * lily/metronome-engraver.cc (stop_translation_timestep): set grob + array for stavesFound. + + * lily/staff-spacing.cc (next_note_correction): add fixed and + space to calling convention. This fixes spacing of accidentals + after barlines. + + * input/regression/spacing-accidental-stretch.ly: add barline - + accidental case. + + * scm/framework-ps.scm (page-header): add version number to + creator + (eps-header): idem. + + * mf/feta-bolletjes.mf: swap d0 and u0 fa heads. + +2005-08-13 Graham Percival + + * Documentation/user/global.itely: add "fit as much as + possible onto this page" example (Vertical spacing). + +2005-08-13 Jan Nieuwenhuizen + + * *: Nitpick run. + + * buildscripts/fixcc.py: Fixes. + +2005-08-12 Graham Percival + + * Documentation/user/advanced-notation.itely: add markup + example to Text spanners. + +2005-08-12 Mats Bengtsson + + * Documentation/user/basic-notation.itely (Ties): Add example of + tying a tremolo to a chord. Thanks to Steve Doonan. + + * lily/tie-engraver.cc: Add tieWaitForNote to the list of read + properties and move tieMelismaBusy to the list of written + properties. + +2005-08-12 Heikki Junes + + * po/TODO: suggest to use a dedicated tool like kbabel. + + * po/fi.po: update using kbabel. + +2005-08-12 Jan Nieuwenhuizen + + * *: Remove obsolete files. Nitpick run. + + * lily/lily-guile.cc (parse_symbol_list): Bugfix. + +2005-08-11 Jan Nieuwenhuizen + + * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa. Copy SVG + too. + + * Documentation/topdocs/NEWS.tely (Top): Add slur script feature. + + * lily/lily-guile.cc (parse_symbol_list): Rewrite. Grok multiple + whitespace as symbol separator. + + * lily/side-position-interface.cc: Add slur-padding. + + * input/regression/slur-script.ly: Fixed. Backportme? This is + quite a large fix, and it never worked in a stable release; so not + really a regression. + + * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver): + Update cut and paste code from Slur_engraver. + + * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface): + Add. + + * scm/define-grobs.scm (DynamicLineSpanner): Add + dynamic-line-spanner-interface. + (DynamicLineSpanner, TextScript, Fingering): Add slur-padding. + +2005-08-09 Jan Nieuwenhuizen + + * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use + to_boolean () so that non-set 'inside-slur means false. + + * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that + slur has control-points. Skip script without direction. Always + do_shift if script inside slur, even if slur not contained in + script y-extent. Increment k in loop. + +2005-08-11 Mats Bengtsson + + * scm/define-markup-commands.scm: Improved regexp to search for + EPS bounding boxes and corrected call to ly:warning. + +2005-08-10 Nicolas Sceaux + + * Documentation/user/programming-interface.itely (Displaying music + expressions): doc for \displayLilyMusic. Also some precisions in + "Markup construction in Scheme" + +2005-08-10 Mats Bengtsson + + * scm/define-markup-commands.scm (normal-text): Added 2 new + markup commands, \normal-text and \medium (the latter thanks to + Bruce Fairchild). + +2005-08-08 Graham Percival + + * Documentation/user/programming-interface.itely: fix @{ @}. + + * scm/define-markup-commands.scm: add linewidth info to + \justify and \wordwrap, add "upright is the opposite of italic". + + * Documentation/user/advanced-notation.itely: shaped->shape, + add (cons (markup "foo")) type of example to text markup, + reword multi-measure rests section. + + * lily/note-heads-engraver.cc: changed Shaped->Shape in a + comment. No actual code was touched. + + * Documentation/user/invoking.itely: add more info about + \include. Thanks, Bruce! + + * THANKS: add Bruce Fairchild, alphabetise. + + * Documentation/user/global.itely: document \score{\header{}} + behavior. + + * Documentation/user/basic-notation.itely: reword multi-measure + rest discussion in Rests. + +2005-08-08 Mats Bengtsson + + * Documentation/user/programming-interface.itely (Markup + construction in Scheme): Corrected example and tried to clarify + the implicit \line in the table. + +2005-08-07 Graham Percival + + * Documentation/user/instrument-notation.itely: moved + some bagpipe info back into the bagpipe section. Somehow + it ended up in the "other vocal issues" section?! :o_O + +2005-08-07 Jan Nieuwenhuizen + + * scm/framework-ps.scm (dir-join): Rename from path-join (joins + directories, not paths). + +2005-08-06 Jan Nieuwenhuizen + + * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only + plain emmentaler/aybabtu. Backportme. + + * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix: + missing dir correction. + +2005-08-05 Graham Percival + + * scm/define-markup-commands: fix reversed justify/wordwrap + doc strings. + +2005-08-05 Jürgen Reuter + + * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc, + lily/gregorian-ligature-engaver.cc, + lily/include/ligature-engraver.hh, + lily/include/coherent-ligature-engraver.hh, + lily/include/gregorian-ligature-engraver.hh: make these classes + truely abstract. This should fix some internal oddities such as + duplicate as well as dead translator/property declarations, and + also some dead code. + + * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc: + bugfix: avoid message "junking empty ligature" on ligature + brackets by collecting dummy grobs. + +2005-08-05 Han-Wen Nienhuys + + * lily/tuplet-bracket.cc (print): default right overshoot to 0.0 + + * input/proportional.ly (staffKind): bugfix. + (staffKind): updates by Trevor Baca. + + * scm/define-grobs.scm (all-grob-descriptions): remove arrows as + default layout. + + * lily/tuplet-bracket.cc (print): check whether edge-text is a + pair. + + * lily/beam.cc (rest_collision_callback): call position_beam() if + necessary. + + * VERSION: release 2.7.4 + + * input/regression/spacing-uniform-stretching.ly: new file. + + * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent(). + + * Documentation/topdocs/NEWS.tely (Top): add Nicolas as + contributor. + + * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally. + + * input/proportional.ly: new file. + + * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if + columns is empty + + * lily/tuplet-engraver.cc (finalize): new function. Reset right + bounds to currentCommandColumn for the last step. + (start_translation_timestep): if tupletFullLength is set, set + bound to Paper Column + + * input/regression/tuplet-full-length.ly (indent): new file. + + * lily/spacing-loose-columns.cc (set_loose_columns): space a whole + clique of loose columns, eg. a set of grace notes in strict + notespacing. + + * input/regression/spacing-strict-spacing-grace.ly: new file. + + * lily/key-signature-interface.cc: change property name to + alteration-alist + + * lily/key-engraver.cc (read_event): read keyAlterationOrder, not + keyAccidentalOrder + + * python/convertrules.py (conv): keyAccidentalOrder -> + keyAlterationOrder + + * lily/key-engraver.cc (create_key): always print a cancellation + for going to C-major/A-minor, regardless of printKeyCancellation. + (create_key): remove typecheck for visibility. This fixes key + signature not being printed. + + * lily/spacing-determine-loose-columns.cc: new file. + + * input/regression/spacing-strict-notespacing.ly: new file. + + * lily/spacing-spanner.cc (generate_springs): rename from + do_measure. + (generate_pair_spacing): new function. + (init, generate_pair_spacing): set between-cols for floating + nonmusical columns. + + * lily/spaceable-grob.cc (get_spring): new function. + + * lily/tuplet-bracket.cc (print): on the left, the overshoot is + relative to the right edge of the prefatory matter. + + * lily/beam.cc (print): read break-overshoot to determine where to + stop/start broken beams. + + * input/regression/spanner-break-overshoot.ly: new file. + +2005-08-04 Graham Percival + + * ly/bagpipe.ly: updated. + + * Documentat/user/instrument.itely: un-comment out bagpipe example. + +2005-08-04 Han-Wen Nienhuys + + * lily/dynamic-engraver.cc (acknowledge_slur): add slur to + support: now (de)crescs avoid slurs as well. + + * Documentation/user/instrument-notation.itely (Bagpipe example): + comment out non-functioning bagpipe example. + (Bagpipe definitions): idem. + + * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example. + (Top): add proportionalNotationDuration example. + + * input/regression/spacing-proportional.ly: new file. + + * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is + synched to a beam. + + * lily/beam.cc (shift_region_to_valid): divide by zero fix. This + fixes beams with a single stem (eg. beams across linebreaks.) + + * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER. + + * flower/rational.cc (operator +): prevent overflow. This fixes + heavily nested tuplets. + + * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We + have to protect even those unlikely to be corrupted data members. + +2005-08-04 Graham Percival + + * ly/bagpipe.ly: new file. + + * THANKS: added Sven Axelsson. + +2005-08-04 Han-Wen Nienhuys + + * lily/spacing-engraver.cc (stop_translation_timestep): directly + copy proportionalNotationDuration into currentMusicalColumn if + set. + + * lily/spacing-spanner.cc (musical_column_spacing): if + uniform-stretching set, fixed space is 0.0 + + * input/regression/spacing-multi-tuplet.ly: show + uniform-stretching property. + + * lily/spacing-spanner.cc (effective_shortest_duration): new function. + + * lily/include/spacing-spanner.hh (class Spacing_spanner): new file. + (struct Spacing_options): new struct. + + * lily/spacing-basic.cc: new file. + + * lily/spacing-spanner.cc (note_spacing): remove outdated code: + delta_t doesn't have to be smaller than shortest_playing_len + +2005-08-03 Han-Wen Nienhuys + + * input/regression/markup-arrows.ly: new file. + + * lily/tuplet-bracket.cc: document new behavior. + + * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets + with line breaks. + + * scm/define-markup-commands.scm (arrow-head): arrow-head markup command. + + * scm/define-grobs.scm (all-grob-descriptions): set arrows as + default + + * lily/tuplet-bracket.cc: add edge-text property. + add break-overshoot. + (print): read break-overshoot. + (print): read edge-text, add stencils. + + * mf/feta-arrow.mf: new file. + + * mf/feta-generic.mf: add feta-arrow. + +2005-08-03 Mats Bengtsson + + * Documentation/user/lilypond-book.itely (An example of a + musicological document): Added flag -o to dvips for people who use + the default setting in teTeX where output is sent to the printer. + + * Documentation/user/global.itely (Vertical spacing): Added + reference to the Axis_group_engraver which documents the *Extent + properties. + +2005-08-03 Han-Wen Nienhuys + + * Documentation/user/basic-notation.itely (Tuplets): add note + about nested tuplets. Remove BUG. + + * input/regression/tuplet-nest.ly: update: remove manual hack. + + * lily/tuplet-bracket.cc (print): use robust_scm2drul + (print): manually call print() for subtuplets. + (calc_position_and_height): add subtuplets to the + support. Vertically shift outer tuplet + + * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set + remove-first for Lyrics, ChordNames and FiguredBass + + * scm/define-grob-properties.scm (all-internal-grob-properties): + use ly:grob-array? iso. grob-list? + (all-internal-grob-properties): add tuplets grob-array. + + * lily/tuplet-bracket.cc (add_tuplet_bracket): + new function + +2005-08-03 Han-Wen Nienhuys + + * input/test/time-signature-staff.ly: new file. + + * ly/declarations-init.ly (center): escape to Scheme. Fixes + spurious # errors. Backportme. + +2005-08-03 Mats Bengtsson + + * Documentation/user/programming-interface.itely (Markup + construction in Scheme): Corrected markup syntax in the + translation table. + +2005-08-03 Graham Percival + + * Documentation/user/instrument-notation.itely: small update + to bagpipe notation docs; thanks Sven! + + * Documentation/user/basic-notation.itely: add link about trills. + +2005-08-02 Graham Percival + + * Documentation/user/music-glossary: remove accidentally committed + fink patch. + +2005-08-02 Yoshinobu Ishizaki + + * lily/lily-parser.cc (get_header): new function. Enable multiple + \header definitions. + + * lily/parser.yy (lilypond_header_body): use get_header. + + * ly/init.ly: + * scm/lily-library.scm (print-score-with-defaults): renamed + $globalheader to $defaultheader + + * Documentation/user/global.itely (Creating titles): added short + explanation that multiple headers are useable. + + +2005-08-01 Han-Wen Nienhuys + + * lily/module-scheme.cc (LY_DEFINE): new file. + + * Documentation/user/advanced-notation.itely (Font selection): add + doco for make-pango-font-tree. + +2005-07-31 Graham Percival + + * Documentation/user/music-glossary: more languages + for tenuto. + + * Docuemntation/user/instrument-notation.itely: minor + update for bagpipe example. + +2005-07-29 Han-Wen Nienhuys + + * input/regression/+.ly (TODO): add some text. + +2005-07-28 Graham Percival + + * Documentation/user/invoking.itely: \score begins with music. + + * Documentation/user/ basic-notation.itely, + instrument-notation.itely: minor changes. + + * Documentation/user/music-glossary.itely: began tenuto entry. + +2005-07-28 Han-Wen Nienhuys + + * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich + + * mf/feta-bolletjes.mf: swap up and down for aiken heads. + +2005-07-27 Graham Percival + + * Documentation/user/examples.itely: remove bagpipe template. + + * Documentation/user/instrument-notation.itely: add bagpipe + section, maybe fix quotes in lyrics. I hate text encoding. + Clarify chord durations, more bagpipe stuff. + +2005-07-27 Han-Wen Nienhuys + + * lily/accidental-engraver.cc: formatting fixes. + + * lily/spacing-spanner.cc (prune_loose_columns): right-items is a + grob-array. + + * lily/arpeggio.cc (print): suicide arpeggio for single notehead. + + * lily/note-column.cc (arpeggio): new function. + + * lily/note-spacing.cc (get_spacing): also take arpeggio into + account for spacing. + +2005-07-25 Jan Nieuwenhuizen + + * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define. + (setup_guile_env): Use it instead of nonstandard setenv. Fixes + mingw build. + +2005-07-25 Han-Wen Nienhuys + + * scm/lily.scm (lilypond-all): clear anonymous modules after + processing files. + +2005-07-24 Han-Wen Nienhuys + + * flower/include/guile-compatibility.hh (SCM_I_CONSP): add + SCM_I_CONSP + + * VERSION: 2.7.3 released + + * Documentation/user/invoking.itely (Invoking lilypond): add + LILYPOND_GC_YIELD documentation. + + * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for + scm_from_real / scm_make_real. + + * lily/main.cc (setup_guile_env): new function. Set GC min_yields + higher. This increases memory footprint, but provides overall + speedup of 15 to 20%. + + * lily/include/translator.hh (class Translator): remove + PRECOMPUTED_VIRTUAL everywhere. + + * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair. + + * lily/context.cc (now_mom): non-recursive now_mom() + + * lily/include/profile.hh: new file. + + * lily/profile.cc: new file. + + * lily/grob.cc (Grob::Grob): look properties up directly. + + * lily/open-type-font.cc (get_indexed_char): cache index -> bbox + lookups. + + * lily/include/box.hh (class Box): smob Box type. + + * lily/smobs.cc (protect_smob): O(1) GC (un)protection. + + * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods + protect() and unprotect(). Use throughout. + +2005-07-24 Nicolas Sceaux + + * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic + + * scm/define-music-display-methods.scm (markup->lily-string): + markup elements can also be strings (without simple-markup + appended) + +2005-07-24 Han-Wen Nienhuys + + * lily/context.cc (where_defined): also assign value in + where_defined(). + + * lily/bezier.cc (get_other_coordinate): use curve_coordinate + (curve_coordinate): new function + + * lily/simple-spacer.cc (add_columns): only add rods between + column i and begin/end if keep-inside-line is set (this repleces + allow-outside-line as default) + +2005-07-23 Han-Wen Nienhuys + + * lily/tuplet-engraver.cc (start_translation_timestep): only read + tupletSpannerDuration if applicable. + + * lily/font-size-engraver.cc (process_music): read fontSize only + once per timestep. + + * lily/engraver*cc: use throughout. + + * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro. + + * lily/translator.cc (add_acknowledger): new file. Directly jump + into an Engraver::acknowledge_xxx () method based on a grobs + interface-list. + + * lily/include/translator-dispatch-list.hh (class + Engraver_dispatch_list): new struct, new file. + + * scm/define-context-properties.scm + (all-internal-translation-properties): remove acceptHashTable, + acknowledgeHashTable + + * lily/translator-group.cc (mark_smob): idem for acceptHashTable. + + * lily/engraver-group-engraver.cc (Engraver_group_engraver): + change acknowledgeHashTable to C++ member. + + * lily/rest-collision.cc (do_shift): use extract_grob_set(). + +2005-07-22 Nicolas Sceaux + + * scm/display-lily.scm: new file. Define a `display-lily-music' + function, that displays the music expression given as an argument, + using LilyPond notation. + + * scm/define-music-display-methods.scm: new file. Implementation + of display methods for each music type. + + * ly/music-functions-init.ly (displayLilyMusic): new function for + displaying music with LilyPond notation. + + * input/regression/display-lily-tests.ly: new regression test file + for `display-lily-music'. + + * scm/markup.scm: remove obsolete debugging code (for printing + markups with LilyPond notation). + + * scm/define-music-types.scm (music-name-to-property-table): + * scm/clef.scm (supported-clefs): export, in order to be accessible + from the (scm display-lily) module. + +2005-07-22 Jan Nieuwenhuizen + + * Documentation/topdocs/NEWS.tely (Top): Typo. + +2005-07-22 Heikki Junes + + * Documentation/index.html.in, Documentation/texinfo.css, + stepmake/bin/text2html.py, buildscripts/mutopia-index.py, + Documentation/bibliography/index.html.in, + Documentation/bibliography/html-long.bst: revert css-width patch, + it does not work with IE6. + +2005-07-21 Han-Wen Nienhuys + + * Documentation/texinfo.css: revert 760px hack. + + * VERSION: release 2.7.2 + + * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck + + * Documentation/user/basic-notation.itely (Barnumber check): add + section. + + * scm/music-functions.scm (skip-to-last): new function. Show only + last showLastLength part of the \score. + + * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub + + * python/convertrules.py (conv): add ly:x-moment rule + + * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment -> ly:moment-X + + * Documentation/topdocs/NEWS.tely (Top): add new feature. + + * Documentation/user/instrument-notation.itely (Flexibility in + alignment): options in subsections. + + * lily/lyric-engraver.cc (process_music): don't typeset text for _ + syllable text. Instead, assume that the previous lyric text is a + melismated text. + + * Documentation/index.html.in: revert 800x600 change. + +2005-07-19 Jan Nieuwenhuizen + + * lily/main.cc (main): Remove invalid handle kludge. + + * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui. + (lambda): add gui define. + +2005-07-21 Han-Wen Nienhuys + + * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta. + + * Documentation/user/instrument-notation.itely (Musica ficta + accidentals): add section Musica ficta accidentals + + * lily/accidental-engraver.cc (make_suggested_accidental): new + function. + (make_standard_accidental): move into new function. + (create_accidental): new function. + + * scm/define-grobs.scm (all-grob-descriptions): new Grob + AccidentalSuggestion + + * lily/output-def-scheme.cc (LY_DEFINE): take default argument. + + * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if + undefined. + + * Documentation/user/global.itely (Page formatting): document + horizontalshift. + + * scm/page-layout.scm (default-page-music-height): + horizontalshift: new variable, shift all systems by + horizontalshift to the right, to make space for instrument names. + + * scm/paper.scm (set-paper-dimension-variables): add horizontalshift + + * lily/input-scheme.cc (LY_DEFINE): take format commands. + +2005-07-20 Han-Wen Nienhuys + + * lily/note-column.cc (dir): idem. + + * lily/spacing-spanner.cc (Module): idem. + + * lily/script-column.cc (before_line_breaking): use extract_grob_set() + + * lily/include/paper-column.hh (class Paper_column): add + non-static get_rank() member. + + * VERSION: release 2.7.1 + + * scm/framework-null.scm: new file, used for benchmarking. + +2005-07-20 Heikki Junes + + * Documentation/topdocs/INSTALL.texi, configure.in: fix + version dependencies for fontforge and gs. + + * Documentation/index.html.in, Documentation/texinfo.css, + stepmake/bin/text2html.py, buildscripts/mutopia-index.py, + Documentation/bibliography/index.html.in, + Documentation/bibliography/html-long.bst: optimize width of + html for a 800x600 screen (width:760), increases printability + when 'fit to page' is not set and readability in wide screens. + + * stepmake/bin/add-html-footer.py: add missing

. + +2005-07-19 Han-Wen Nienhuys + + * scm/define-markup-commands.scm (beam): use polygon in beam + command. + + * lily/grob-pq-engraver.cc (stop_translation_timestep): save up + all acknowledged grobs, and do potentially expensive merge and + write in one go. + + * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak. + + * configure.in (reloc_b): add --enable-static-gxx to statically + link to libstdc++ + + * lily/GNUmakefile (static-gxx-libs): new target + static-gxx-libs. Create symlink to libstdc++.a + + * lily/new-lyric-combine-music-iterator.cc: rename to + Lyric_combine_music_iterator + + * lily/lyric-combine-music-iterator.cc + (Old_lyric_combine_music_iterator): rename to + Old_lyric_combine_music_iterator + + * lily/*-engraver.cc (various): remove double use of + PRECOMPUTED_VIRTUAL function: only use + start_translation_timestep() and stop_translation_timestep(), not + both. + + * lily/break-substitution.cc (fast_substitute_grob_array): do + fast_substitute_grob_array for all unordered grob_arrays. + (substitute_grob): return Grob *. Saves packing/unpacking SCMs. + (substitute_grob_array): optimize. + + * lily/align-interface.cc (set_axis): set ordered_ for 'elements + + * lily/include/grob-array.hh (class Grob_array): ordered_ member. + + * lily/parser.yy: revert $globalheader patch. + + * lily/include/translator.icc + (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into + Translator methods, without _static helper. + + * lily/grob-smob.cc (derived_mark): rename from + do_derived_mark(). Return void. + + * scm/define-context-properties.scm + (all-internal-translation-properties): remove tweakCount/tweakRank. + + * scm/output-lib.scm (begin-of-line-invisible): use vectors for + predefined break-visibilities. + + * lily/item.cc (handle_prebroken_dependencies): use a vector of 3 + booleans for break-visibility. + + * Documentation/topdocs/NEWS.tely (Top): add note about engravers. + + * python/convertrules.py (conv): rule for Timing_translator. + + * lily/include/translator.icc: new file. + + * lily/paper-column-engraver.cc (process_music): new + file. Separate Paper_column factory from Score_engraver. + + * lily/vertically-spaced-context-engraver.cc: administer + spaceable-staves property of System. + + * lily/translator-group-ctors.cc: new file. + + * lily/context-property.cc (make_grob_from_properties): construct + the right Grob class programmatically, looking at the class entry + for the meta property. + + * lily/break-align-engraver.cc (stop_translation_timestep): call + Break_align_interface::add_element() directly. + + * lily/context.cc (measure_position): measure_position() is now a + normal function. + + * lily/include/translator.hh (class Translator): rename + process_acknowledged_grobs() to process_acknowledged() and move to + Translator. + + * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta + field for each grob description. + + * lily/include/translator-group.hh (class Translator_group): + change to base class. Separate class from Translator. This gets + rid of virtual inheritance for Engravers/Performers. + + * lily/staff-performer.cc (class Staff_performer): derive + Staff_performer from Performer, not Performer_group_performer + + * Lily/translator-group.cc (precomputed_recurse_over_translators): + new function. + (precompute_method_bindings): new function. Precompute lists of + Translators, so we only call methods (process_music, + start_translation_timestep, etc.) for Translators needing + it. Also: dispose of pointer-to-member-function calls. + + * lily/engraver-group-engraver.cc: remove engraver_each, + recurse_down_engravers () + + * lily/note-head.cc (internal_print): only call + glyph-name-procedure if style != default. + +2005-07-16 Graham Percival + + * ly/titling-init.ly: add printallheaders option. + + * Documentation/user/global.itely: document printallheaders. + +2005-07-16 Han-Wen Nienhuys + + * lily/system.cc (do_derived_mark): don't mark from object_alist_ + anymore, but do it centrally. + + * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove + hammer hack. + + * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object + + * scm/output-lib.scm: remove hammer-print-function. + + * lily/include/pointer-group-interface.hh (extract_grob_set): new + macro. Declare a Link_array and fill it from a grob. + (extract_item_set): idem for item. + + * lily/break-substitution.cc: add header. + (fast_substitute_grob_array): rewrite for Grob_arrays. + (substitute_grob_array): idem. + + * lily/group-interface.cc (add_thing): remove file. + + * flower/include/parray.hh (class Link_array): slice() is const. + + * lily/include/grob-array.hh: new file. + + * lily/grob-array.cc (spanner): new file. + + * lily/beam-quanting.cc (fill): read details property from beam. + + * lily/beam.cc: support details property. + + * total speedups below: approx 10%. + + * lily/include/beam.hh: new struct, softcode beam quanting parameters + + * lily/include/grob.hh (class Grob): add interfaces_ member. + + * lily/bezier.cc (init_polynomial_cache): new function: cache + binom(3,j) t^j (1-t)^{3-j} + (curve_point): opps, actually use the cache for t^j , (1-t)^j! + + * lily/*.cc: substitution throughout. + + * lily/grob-property.cc (internal_get_object): new routine. + (internal_set_object): idem. Store grob refrences in separate + alist. This saves processing time, since properties aren't + break-substituted, and the per grob namespace is smaller, both for + grobs and non-grob properties. + + * scm/define-grob-properties.scm (all-internal-grob-properties): + remove center-element. + + * lily/grob.cc: remove tweak-count, tweak-rank. + +2005-07-15 Graham Percival + + * Documentation/user/lilypond-book.itely: fixes example. + +2005-07-15 Nicolas Sceaux + + * Documentation/user/global.itely (Creating titles): + * Documentation/user/examples.itely (All headers): change the + place of \header in \score blocks (after music block) to make + examples compile (cf. changes on parser.yy on 2005-07-10) + +2005-07-13 Graham Percival + + * python/convertrules.py: add exc -> ecc rule. + + * scripts/convert-ly.py: add location of convertrules.py + in a comment. + + * Documentation/user/changing-defaults.itely: fix language. + +2005-07-12 Jan Nieuwenhuizen + + * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix. + +2005-07-13 Han-Wen Nienhuys + + * scm/output-socket.scm (grob-bbox): don't use inf? + + * flower/include/rational.hh: add operator bool() + + * scm/define-music-types.scm (music-descriptions): remove + internal-class-name properties. + + * lily/include/event.hh: remove file. + + * lily/include/music-constructor.hh: remove file. + + * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event + in 'types property. + + * lily/music.cc (duration_length_callback): new function. + + * lily/event.cc: remove file. + + * lily/music-constructor.cc: remove file. + + * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music + + * lily/context.cc (get_grob_key): nop if use_object_keys not set. + (get_context_key): idem. + + * scm/lily.scm (lambda): new option object-keys (default to #f) + + * scm/output-svg.scm (utf-8-string): rename from utf8-string. + + * scm/output-gnome.scm: remove beam routine. + + * scm/output-ps.scm (scm): idem. + + * scm/output-svg.scm: remove beam. + + * ps/music-drawing-routines.ps: remove draw_beam. + + * lily/lookup.cc (beam): use round_filled_polygon() for beam. + + * flower/include/guile-compatibility.hh (scm_from_locale_string): + add scm_from_locale_string compatibility glue. + +2005-07-13 Yoshinobu Ishizaki + + * scripts/lilypond-book.py: Prevent occuring error when + 'lilypond-book --output=foo/ somefile.ly' is executed multiple + times and target file shoud be overwritten. (Error message said + 'input file and output file is same'.) + +2005-07-13 Graham Percival + + * input/regression/slur-extreme.ly, + input/regression/slur-scoring.ly, lily/slur-configuration.cc, + lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf, + mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change + "excentricity" to "eccentricity". + + * Documentation/user/converters.itely: fix URL for Noteedit and + Rosegarden. + + * THANKS: added Yoshinobu Ishizaki. + +2005-07-12 Han-Wen Nienhuys + + * scm/define-markup-commands.scm (justify-field): add. + + * scm/define-grobs.scm (all-grob-descriptions): decrease font size. + +2005-07-11 Han-Wen Nienhuys + + * lily/lookup.cc (filled_box): express filled_box with + round_filled_box + + * scm/midi.scm (paper-book-write-midis): new function. Write all + performances in numbered MIDI files. + + * lily/performance-scheme.cc (LY_DEFINE): new file. + (LY_DEFINE): new function ly:performance-write. + + * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name: + new function. + (LY_DEFINE): change name ly:parser-define -> ly:parser-define! + + * scm/framework-*.scm: use port arguments throughout. + + * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X + + * lily/paper-outputter.cc (Paper_outputter): take port argument. + + * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument. + + * scm/framework-texstr.scm (output-framework): + + * input/regression/repeat-fold.ly (texidoc): remove TeX strings. + + * scm/output-lib.scm (tablature-stem-attachment-function): + tablature stem attachment fix. + +2005-07-10 Han-Wen Nienhuys + + * lily/bezier.cc: hardcode binomial coefficients of order 3. + + * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype. + + * scm/define-music-types.scm (music-descriptions): don't use + Music_wrapper type. + + * lily/paper-column.cc (print): print moment too. + + * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue. + remove compatibility cruft. + + * lily/parser.yy (score_body): \score can only begin with Music. + + * lily/score-scheme.cc (LY_DEFINE): rename scorify to + make-score. Take music argument only. Move parser interaction to + Scheme. + + * scm/lily-library.scm (scorify-music): new function. + + * python/lilylib.py (datadir): remove 2.1 compat kludge. + (datadir): remove resource import. + (print_environment): remove get_bbox() + (cp_to_dir): remove pre 1.5.2 compat glue. + +2005-07-09 Han-Wen Nienhuys + + * lily/include/simple-spacer.hh (Module): idem. + + * lily/include/spring.hh (struct Spring): store inverse + strength. This prevents division by zero. + + * VERSION: release 2.7.0 + + * lily/include/music.hh (class Music): remove Music::duration_log() + + * lily/stem-engraver.cc (make_stem): take duration log from event. + + * lily/chord-tremolo-engraver.cc: don't ack note-head-interface. + +2005-07-08 Han-Wen Nienhuys + + * scm/lily.scm (ly:load): load autochange.scm + + * Documentation/user/tutorial.itely (Running LilyPond for the + first time): remove reference to DVI/TeX + + * scm/define-markup-commands.scm (text): add \text markup command. + + * configure.in (reloc_b): bump requirement to Python 2.2. + + * lily/include/dots.hh (class Dots): make has_interface() static. + + * python/convertrules.py (conv): add rule for ly:grob-default-font + + * scm/define-grobs.scm (all-grob-descriptions): reorganize in + alphabetical order. + + * input/regression/trill-spanner-pitched.ly: new file. + + * lily/font-interface-scheme.cc (LY_DEFINE): function + ly:grob-default-font (changed from get-default-font). + + * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file. + + * lily/note-head.cc (internal_print): if style is not a symbol, + set style to 'default. + (internal_print): no style suffix if glyph-name-procedure not + set. Default to quarter head. + + * scm/define-grobs.scm (Module): new grob TrillPitchHead. + + * scm/define-music-properties.scm (all-music-properties): add trill-pitch. + + * ly/music-functions-init.ly: \pitchedTrill + + * lily/pitched-trill-engraver.cc (acknowledge_grob): new file. + + * ly/Welcome_to_LilyPond.ly: update to 2.6.0 + + * lily/trill-spanner-engraver.cc (finalize): rename req -> event + + * scm/define-markup-commands.scm (pad-markup): pad-markup command. + + * po/fr.po: update + + * po/de.po: update. + +2005-07-06 Graham Percival + + * Documentation/user/changing-defaults.itely: add link + to grob-iterface. + + * Documentation/user/advanced-notation.itely: add material + to Setting automatic beam behaviour. Thanks, Joe! + + * Documentation/user/lilypond.itely: change encoding to utf-8. + +2005-07-01 Mats Bengtsson + + * Documentation/user/advanced-notation.itely (Setting automatic + beam behavior): Correct the documentation of + revert-auto-beam-setting (backportme) + +2005-07-01 Han-Wen Nienhuys + + * lily/ly-module.cc (ly_make_anonymous_module): define + %module-public-interface of module. + + * lily/lily-parser.cc (print_smob): allow printing of parser smob + without lexer. + +2005-07-01 Han-Wen Nienhuys + + * input/regression/fret-diagrams.ly: stretch example. + +2005-06-30 Jan Nieuwenhuizen + + * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan + Fodor). + +2005-06-30 Graham Percival + + * Documentation/topdocs/AUTHORS.texi: update personal web address. + + * Documentation/user/examples.itely, lilypond-book.itely: + change \RequirePackage to \usepackage. + + * Documentation/user/global.itely: document copyright and tagline. + +2005-06-30 Han-Wen Nienhuys + + * Documentation/user/basic-notation.itely (Transpose): remove link + to nonexistent UntransposableMusic. + + * scm/output-svg.scm: remove old definitions. + + * scripts/lilypond-book.py (do_file): search for kpsewhich before + invoking. + + * python/lilylib.py (search_exe_path): new function. + +2005-06-29 Han-Wen Nienhuys + + * python/lilylib.py (mkdir_p): remove setup_environment() + (backportme) + + * buildscripts/mutopia-index.py (headertext): trim text. + + * Documentation/topdocs/NEWS.tely (Top): refresh. + + * scm/define-markup-commands.scm (wordwrap-string): new function: + split string in paras and words. + (wordwrap-markups): new function. + (wordwrap-stencils): new function. + (justify): use it. + (wordwrap): use it. + (wordwrap-string): use it + (justify-string): use it. + + * scm/lily-library.scm (regexp-split): new function. + + * scm/define-markup-commands.scm: remove encoded-simple. + remove font-markup. + (fontsize): remove old version of fontsize. + (wordwrap): new markup function. Wrap into paragraphs. + + * VERSION: Branch lilypond_2_6 + (MINOR_VERSION): go to 2.7.0 + +2005-06-28 Han-Wen Nienhuys + + * po/zh_TW.po: update from translation project. + +2005-06-28 Graham Percival + + * scm/midi.scm: compile fix. + +2005-06-28 Mats Bengtsson + + * scripts/lilypond-book.py : Fix embarrassing bug in my previous + patch. Now, the tempfile module is loaded too, not only used. + +2005-06-28 Stephen Charles McCarthy + + * scm/midi.scm: changed midi volumes in absolute-volume-alist from + 0.05 - 1.00 to 0.25 - 1.00 + + * scm/midi.scm: moved the default-instrument-equalizer procedure + to just under the insturment-equalizer-alist it takes as an + argument. + +2005-06-28 Han-Wen Nienhuys + + * Documentation/user/advanced-notation.itely (Font selection): + remove CMR note. + + * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn + +2005-06-28 Jan Nieuwenhuizen + + * THANKS: Add UTF-8 marker. + + * Documentation/user/point-and-click.itely (http): Update: use + lilypond-invoke-editor. Fix: instruct to use user.js. + +2005-06-27 Graham Percival + + * ly/titling-init.ly: implements printpagenumber, increases + space between dedication and title (to avoid collisions with + "g" and "q" in dedication), and nicer logic about copyright + and instrument fields being printed on the first page. + Thanks Vincent! + + * Documentation/user/global.itely: document printpagenumber. + +2005-06-27 Jan Nieuwenhuizen + + * Documentation/topdocs/NEWS.tely: Update to 2.6. + +2005-06-27 Han-Wen Nienhuys + + * THANKS: update to 2.6 + + * VERSION: 2.6.0 released. + +2005-06-27 Jan Nieuwenhuizen + + * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script + rule, errorneously removed probably because of misleading comment. + +2005-06-27 Han-Wen Nienhuys + + * python/lilylib.py (datadir): py2exe comments. + + * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement. + + * configure.in (reloc_b): make fontconfig REQUIRED. + +2005-06-27 Heikki Junes + + * po/fi.po: add latest translations. + +2005-06-27 Han-Wen Nienhuys + + * ChangeLog: recode utf-8 + + * Documentation/pictures/lilypond.xpm (Module): edited photo as + logo. + + * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0 + + * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. + + * python/convertrules.py (do_conversion): don't print program_name + from within a module + + * configure.in (reloc_b): bump fontforge requirement to 20050624. + + * python/convertrules.py (conv): add 2.6.0 dummy rule. + +2005-06-23 Graham Percival + + * Documentation/user/lilypond-book.itely, + Documentation/user/examples.itely: add \RequirePackage{graphics}. + + * ly/titling.ly: checks printfirstpagenumber, adds meter, and + fixes baseline-skip. Thanks Vincent! + + * Documentation/user/advanced-notation.itely, global.itely: + moved "Selecting font sizes" to global, since it deals with + notation font size, not text fonts. + +2005-06-23 Han-Wen Nienhuys + + * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice + to fonts. + +2005-06-23 Mats Bengtsson + + * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly + workaround since /dev/stdin doesn't work on Cygwin. Using a + temporary file in the current directory since latex doesn't + understand the path name to the default TMP in Cygwin (at least on + win XP). + + * Documentation/user/global.itely (Creating titles): Correct + misprint in example. Thanks to Rob Vlasaty. + 2005-06-22 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): release 2.5.32 @@ -1268,7 +2587,7 @@ * scm/backend-library.scm (postscript->pdf): Invoke gs instead of going through ps2pdf wrappers. -2005-05-09 Jürgen Reuter +2005-05-09 Jürgen Reuter * Documentation/user/instrument-notation.itely: petrucci note heads: updated docu @@ -1663,11 +2982,11 @@ * lily/mensural-ligature.cc (brew_flexa): apply thickness property only on vertical lines of flexa shape, and use a constant thickness value for horizontal lines (patch slightly modified by - Jürgen Reuter) + Jürgen Reuter) * lily/include/mensural-ligature.hh: make 2 comments clearer -2005-04-28 Jürgen Reuter +2005-04-28 Jürgen Reuter * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed to need_extra_horizontal_space; bugfix: use class scope to avoid @@ -2932,7 +4251,7 @@ * Documentation/user/global.itely (Page layout): remove printpagenumber. -2005-03-13 Jürgen Reuter +2005-03-13 Jürgen Reuter * input/regression/mensural-ligatures.ly: new file (with examples compiled by Pal Benko). @@ -3668,7 +4987,7 @@ * Documentation/user/notation.itely: small but urgent fix. -2005-02-21 Jürgen Reuter +2005-02-21 Jürgen Reuter * lily/duration-scheme.cc: bugfix: correct parameters to SCM_ASSERT_TYPE. @@ -3758,7 +5077,7 @@ * configure.in: add endian test. -2005-02-19 Jürgen Reuter +2005-02-19 Jürgen Reuter * Documentation/user/examples.itely: small simplification/beautification @@ -6911,7 +8230,7 @@ * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex (\lilypondexperimentalfeatures): Removed. -2004-10-20 Jürgen Reuter +2004-10-20 Jürgen Reuter * Documentation/user/notation.itely: fixed 2 typos