]> git.donarmstrong.com Git - lilypond.git/blobdiff - ChangeLog
* lily/tie-engraver.cc (struct Head_event_tuple): store both
[lilypond.git] / ChangeLog
index 7b3d20beac8f3c33958d4e061484a0a24c7d2d4d..b4d55b11fdc9ca573e9d428769ba449e847079ef 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,338 @@
+2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * lily/tie-engraver.cc (struct Head_event_tuple): store both
+       stream events and music events.
+       (stop_translation_timestep): search acknowledged heads for
+       tie-event.
+
+       * input/regression/tie-chord-partial.ly: new file.
+
+       * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
+       for \char markup command.
+
+       * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
+
+       * scm/define-music-types.scm (music-descriptions): consistency:
+       Use solo-{one,two}-event iso. solo-[12]-event.
+
+       * lily/part-combine-engraver.cc (process_music):
+       Use solo-{one,two}-event iso. solo-[12]-event.
+
+       * ly/declarations-init.ly (partCombineListener): add Timing as
+       alias
+
+       * flower/std-string.cc (string_copy): use copy ()
+
+       * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
+
+2006-08-24  Graham Percival  <gpermus@gmail.com>
+
+       * Documentation/user/changing-defaults.itely, global.itely,
+       lilypond-book.itely, page.itely: minor changes from mailist.
+
+2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * buildscripts/mutopia-index.py (allfiles):  filter  lily-XXX and
+       snippet-map
+
+       * scm/define-context-properties.scm
+       (translator-property-description): robustness: detect type errors
+       in property definitions.
+
+       * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
+       after getting it from SCM. 
+
+       * lily/smobs.cc (protect_smob): switch off fancy smob protection
+       for now. 
+
+       * lily/include/performer.hh (class Performer): strip get_tempo() method.
+
+       * lily/midi-def.cc: strip file.
+
+       * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
+
+       * lily/include/context-def.hh (struct Context_def): use
+       VIRTUAL_COPY_CONSTRUCTOR().
+
+       * lily/source-file.cc: smobification.
+
+       * lily/include/source-file.hh (class Source_file): smobify
+       Source_file. Trim redundant members.
+
+       * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
+       clones after creation. This plugs a huge memory leak.
+
+       * python/convertrules.py (FatalConversionError.sub_tempo):
+       complete rule for \midi{ \tempo }
+
+       * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
+
+       * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
+
+2006-08-23  Joe Neeman  <joeneeman@gmail.com>
+
+       * input/regression/optimal-page-breaking-hstretch.ly: test for
+       ragged-last-bottom also
+
+       * lily/paper-column-engraver.cc (finalize): make the end of a score
+       breakable by default. This is to balance out a change in behaviour
+       of the page-turn-breaker which no longer makes the end of a score
+       breakable.
+
+       * lily/paper-book.cc (pages): set the systems_ once the pages are
+       broken
+
+       * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
+       Page_breaking interface.
+
+       * lily/page-breaking.cc (class Page_breaking): make the interface
+       more consistent and provide abstractions for dealing with
+       Line_divisions.
+
+       * lily/optimal-page-breaking.cc (solve): use a more straightforward
+       algorithm. Use the new interface to Page_breaking.
+
+       * lily/page-spacing.cc: better support for ragged-bottom and
+       ragged-last-bottom
+
+2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * python/convertrules.py (conv): warning on \tempo{}
+
+       * ly/performer-init.ly: set tempoWholesPerMinute.
+
+       * ly/midi-init.ly: remove \midi
+
+       * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
+       MIDI tempo.
+
+       * lily/metronome-engraver.cc (process_music): use tempoUnitCount
+       tempoUnitDuration for determining what to print.
+
+       * lily/lyric-extender.cc: typo.
+
+       * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
+
+       * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
+       function.
+
+       * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
+
+       * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
+       eps-pad-boxes is set.
+
+       * scripts/lilypond-book.py (main): use -deps-pad-boxes.
+
+       * THANKS: update sponsors.
+
+       * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
+
+       * Documentation/topdocs/NEWS.tely (Top): doc new feature.
+
+       * input/regression/tie-chord-untied.ly: new file.
+
+       * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
+
+       * scm/define-music-properties.scm (all-music-properties): add
+       'untied property.
+
+       * buildscripts/mutopia-index.py (allfiles): look for .ly rather
+       than .ly.txt.
+       (headertext_nopics): sanitize no-examples text.
+
+       * scm/page.scm (make-page-stencil): don't rely on extents of
+       page-stencil. This fixes spurious space around .EPS files produced
+       with the EPS backend.
+
+2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
+
+       * lily/hara-kiri-engraver.cc (process_music): remember
+       keepAliveInterfaces after processing \set
+
+       * lily/lyric-extender.cc (print): support left/right-padding for
+       extenders.
+
+       * scm/documentation-generate.scm (string-append): revert lilypond/
+       path, doc why.
+
+2006-08-20  Graham Percival  <gpermus@gmail.com>
+
+       * Documentation/user/lilypond.tely: clarification to
+       license presentation (not to actual license).
+
+       * Documentation/user/basic-notation.itely,
+       instrument-notation.itely: minor changes.
+
+       * input/ {regression, test}/+.ly: clarification to
+       text (you can click on examples).  Thanks, Mats!
+
+       * input/manual/bar-lines.ly: adds ||: repeats.
+
+2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
+
+       * scm/documentation-lib.scm (texi-file-head): category LilyPond.
+
+       * Documentation/user/lilypond.tely: strip lilypond/ from info
+       links, rename to category LilyPond
+
+       * lily/pango-font.cc (description_string): new function.
+
+       * VERSION: release 2.9.15
+
+       * lily/spacing-engraver.cc (stop_translation_timestep): use
+       Dscho's fix for spacing spanner. 
+
+       * scm/define-music-types.scm (music-descriptions): use
+       apply-output-event for ApplyOutputEvent
+
+       * lily/output-property-engraver.cc (listen_apply_output): rename
+       from listen_layout_instruction.
+
+       * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
+       function protect()
+
+2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * scm/lily.scm (lilypond-all): option read-file-list: substitute
+       commandline args with contains, split by \n.
+
+       * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
+       write snippet-names file, call with -dread-file-list. Fixes
+       command limitations on 64-bit systems.
+
+       * input/regression/stencil-color-rotation.ly: new file.
+
+       * lily/include/translator.hh (struct Acknowledge_information):
+       revert: don't use Protected_scm in global objects, as GUILE can't
+       handle gc_unprotect from automated destructors on MacOS X.
+       * lily/grob.cc (get_print_stencil): use retval.expr() as base for
+       color, not the original stencil. Fixes combinations of
+       color/transparency/rotation. Backportme.
+
+       * scripts/lilypond-book.py (main): add --formats=eps for
+       texinfo/latex.
+
+       * lily/spacing-engraver.cc (stop_translation_timestep): don't
+       crash if spacing_ is nonexistent.
+
+2006-08-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * scripts/lilypond-book.py (output): Remove obsolete(!?)
+       \catcode`\@=12 in the LaTeX output.
+
+2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * scm/define-music-types.scm (music-descriptions):
+       use sustain-event iso. sustain-pedal-event.
+
+2006-08-11  Joe Neeman  <joeneeman@gmail.com>
+
+       * scripts/convert-ly.py: honour the -n command-line switch
+
+2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
+       break specification.
+
+2006-08-10  Joe Neeman  <joeneeman@gmail.com>
+
+       * Documentation/user: convert-ly the user manual
+
+2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * stepmake/aclocal.m4: version check patch (thanks MWD)
+
+       * ly/music-functions-init.ly: robustness. Don't crash if
+       currentBarNumber is not a number.
+
+       * VERSION (PATCH_LEVEL): bump.
+
+2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * stepmake/aclocal.m4: better version check; handle fooX.Y
+       binaries too.
+
+       * ly/performer-init.ly: instrument name fixup.
+
+       * input/manual/chord-names-jazz.ly (banterProperties):
+       instrumentName update
+
+       * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
+
+       * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
+
+       * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
+       function. Use hash tables to check membership.
+
+       * lily/general-scheme.cc (LY_DEFINE): new function.
+
+       * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
+
+       * lily/include/translator.hh (struct Acknowledge_information): add
+       Protected_scm
+
+       * ly/music-functions-init.ly: change name to BreathingEvent
+
+       * input/regression/*.ly: apply it.
+
+       * python/convertrules.py (conv): better instrumentName conversion
+       rule.
+
+       * scm/define-music-types.scm (music-descriptions): add
+       line-break-event to LineBreakEvent music
+
+       * lily/music.cc (to_event): don't crash if music type not set.
+
+       * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
+       spacing not set.
+
+       * lily/spacing-engraver.cc (stop_translation_timestep): set
+       spacing for proportional notation too.
+
+       * scm/translation-functions.scm (format-bass-figure): inspect
+       stream-event.
+
+       * scripts/lilypond-book.py (bindir): add bindir to $PATH.
+
+2006-08-08  Joe Neeman  <joeneeman@gmail.com>
+
+       * lily/include/constrained-breaking.hh: add Line_details (Prob*)
+
+       * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
+
+       * scm/layout-page-layout.scm (make-page-from-systems): new function
+       (optimal-page-breaks): use the new page-breaking calling convention
+
+       * scm/define-context-properties.scm (all-user-translation-properties):
+       add revokePageTurns
+
+       * lily/paper-column-engraver.cc (stop_translation_timestep): add
+       revokePageTurns  functionality. If there is a special barline within
+       the breakable region, break there instead of at the end of the region.
+
+       * lily/paper-book.cc (pages): use the new page-breaking calling
+       convention
+
+2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
+
+       * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
+
+       * scripts/lilypond-book.py: insert \sourcefileline command in
+       output, so lilypond error messages refer to the spot in the
+       original .lytex / .itely sourcefile.
+
 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
 
 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
 
+       * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
+       space to next column for distance to fixed col.
+
+       * VERSION (PACKAGE_NAME): release 2.9.14
+
        * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
        if no accidental.
 
        * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
        if no accidental.
 
        conversion of files older than 1.3.117.
        Fix escape error in the description for 2.9.6.
 
        conversion of files older than 1.3.117.
        Fix escape error in the description for 2.9.6.
 
-2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
+2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
+
+       * lily/*-engraver.cc: convert all try_music functions to listen_*
+       functions.
+
+       * lily/piano-pedal-engraver.cc: some additional cleanups: use
+       enums to represent pedal types, and calculate more data statically.
 
 
-       * lily/*-engraver.cc: convert all try_music functions in
-       *-engraver.cc. (Patch by Erik S.; please elaborate)
+       * scm/part-combiner.scm (recording-group-emulate): create a
+       softcoded substitute for recording-group-engraver.cc.
+
+       * lily/music.cc: make a common transpose function for events and
+       music
+
+       * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
+       ManualMelismaEvent, and obsoletes Melisma_translator.
+
+2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
 
        * input/test/instrument-name-align.ly: update version.
 
 
        * input/test/instrument-name-align.ly: update version.