]> git.donarmstrong.com Git - lilypond.git/blobdiff - ChangeLog
2003 -> 2004
[lilypond.git] / ChangeLog
index 6258d86f2fda4e1de2b1cc8926ed71ac66a3b302..e554c4d39f47d4e836b0128003a4f2a035d9349a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,524 @@
+2004-02-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * Grand 2003 -> 2004 search replace. 
+
+       * lily/parser.yy (chord_body_element): add DRUM_PITCH to chords
+       (i.e. < > )
+
+       * ly/performer-init.ly: add DrumStaff
+
+       * lily/axis-group-engraver.cc (acknowledge_grob): also take
+       lyric-interface; this prevents lines with only extender lines from
+       being junked.
+       * scm/define-grob-interfaces.scm (lyric-interface): new interface
+
+       * lily/lyric-extender.cc (brew_molecule): get line breaking and
+       extenders right, for once and for all (hopefully).
+       
+       * lily/break-substitution.cc (substitute_one_mutable_property):
+       clear old 'all-elements for System grobs.
+
+       * lily/new-lyric-combine-music-iterator.cc (find_voice): make sure
+       that associatedVoiceContext is always assigned when music & lyrics
+       are found. 
+
+       * ly/engraver-init.ly: remove Lyrics context.
+       (TabVoice): add noteheads engraver
+
+       * input/test/improv.ly: update: do not use Thread switching. 
+
+       * lily/pitch-squash-engraver.cc (acknowledge_grob): only squash if
+       squashedPosition is a number  
+
+       * Documentation/user/refman.itely (Automatic note splitting):
+       remove Thread references.
+
+       * input/no-notation/pc-direction.ly: remove file.
+
+       * ly/engraver-init.ly: remove Thread
+
+       * input/regression/tie-chord-partial.ly: remove file.
+
+       * scripts/convert-ly.py (conv): \harmonic rule
+
+       * lily/new-fingering-engraver.cc (acknowledge_grob): add new
+       notation for harmonic notes: <c' g''\harmonic>
+
+       * lily/lily-guile.cc (alist_to_hashq): new function
+
+       * scm/lily.scm (alist->hash-table): new function.
+
+       * Documentation/user/refman.itely (Percussion staves): update doco.
+
+       * input/regression/drums.ly (timb): updates
+
+       * lily/note-performer.cc (create_audio_elements): robustness fix.
+
+       * ly/engraver-init.ly: add DrumStaff and DrumVoice contexts
+
+2004-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py (find_toplevel_snippets): Do not
+       discard valid matches.
+
+2004-02-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * lily/drum-note-engraver.cc: new file.
+
+       * ly/drumpitch-init.ly: move drum definitions
+
+       * scm/drums.scm: remove file.
+
+       * lily/*.cc: remove abort-event everywhere.
+
+       * lily/note-heads-engraver.cc (process_music): robustification.
+
+       * lily/accidental-engraver.cc (process_acknowledged_grobs): robustification.
+
+       * lily/parser.yy (simple_element): add \drums mode.
+       (simple_element): remove \pitchnames , \chordmodifiers. Use
+       variables to store this. 
+
+       * lily/lexer.ll (My_lily_lexer): remove support for \PITCHNAME
+       outside \notes.
+
+       * VERSION: release 2.1.18.
+       
+       * input/test: remove octave-duplicate.ly
+
+2004-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Speed-up and clean-ups.
+
+2004-02-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * lily/simultaneous-music-iterator.cc: remove clone() and copy
+       constructor from Music_iterator. Changes throughout.
+
+       * lily/include/music-iterator.hh (class Music_iterator): remove
+       Music_iterator::skip and Music_iterator::get_pending_events from
+       interface. Rename report_to -> get_outlet 
+
+       * lily/auto-change-iterator.cc: move contents from
+       new-auto-change-iterator.cc from
+
+       * scm/part-combiner.scm: determine split-list from Scheme. 
+
+       * lily/new-auto-change-iterator.cc (process): new file.
+
+       * lily/parser.yy (part_combined_music): remove old PC cruft.
+
+       * ly/engraver-init.ly: remove old
+       PC cruft.
+
+       * Documentation/user/refman.itely (The Lyrics context): note about
+       extender lines.
+
+       * lily/multi-measure-rest-engraver.cc (process_music): extra check
+       to allow 0-length mmrest events.
+
+       * scm/part-combiner.scm (determine-split-list): many bugfixes.
+
+       * lily/new-part-combine-iterator.cc (kill_mmrest): new function.
+
+       * lily/spacing-engraver.cc (finalize): robustifications.
+
+       * input/regression/new-part-combine-solo-global.ly: new file.
+
+       * scm/part-combiner.scm: rewrite.
+
+2004-02-03  Juergen Reuter  <reuter@ipd.uka.de>
+
+       * Documentation/user/refman.itely, input/puer-fragment.ly,
+       input/test/vaticana.ly, ly/engraver-init.ly: ancient examples
+       updated for proper use of lyricsto; replaced "(" and ")" ->
+       "\melisma" and "\melismaEnd"
+
+       * input/test/ancient-font.ly: small updates to reduce compile
+       warnings (TODO: junk this file)
+
+       * input/test/gregorian-scripts.ly: added comment about bug
+
+       * lily/gregorian-ligature-engraver.cc, lily/ligature-engraver.cc:
+       tiny robustness fix
+
+       * mf/parmesan-clefs.mf: exact_center fixes (this broke due to
+       recent changes in the feta code); temporarily mapped mensural g
+       clef to a copy of petrucci g clef until mensural g clef will have
+       been rewritten
+
+       * mf/parmesan-heads.mf: bugfix: solved character name clashing
+       between mensural and neo-mensural heads (this broke quite a while
+       ago)
+
+       * mf/parmesan-rests.mf: still more tiny set_char_box() fixes
+
+2004-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Handle @include.  Add progress
+       indication.  Fixes for verbatim, multi line comments.
+
+2004-02-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * input/regression/new-part-combine-solo.ly: more cases.
+
+       * lily/slur.cc (height): robustness fix.
+
+       * lily/new-part-combine-iterator.cc (process): add apart-spanner. 
+
+       * input/mutopia/F.Schubert/morgenlied.ly (melody): revert
+       stemUp/stemDown.
+
+       * scm/music-functions.scm (determine-split-list): further analysis.
+
+       * lily/script-engraver.cc (try_music): discard duplicate
+       articulations.
+
+       * input/regression/new-part-combine-solo.ly: new file
+
+       * input/regression/new-part-combine-a2.ly: new file.
+
+       * ly/performer-init.ly: add Devnull
+
+       * scripts/convert-ly.py (FatalConversionError.sub_acc): add rule
+       for \musicglyph #"accidental-*"
+       (conv): \newpartcombine rule.
+
+2004-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Handle @lilypondfile, bugfixes.
+
+2004-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Handle verbatim, latex
+       textwidth, --output.
+
+2004-02-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * scm/new-markup.scm (doubleflat): add accidental markups.
+
+       * VERSION: release 2.1.17
+       
+       * Documentation/user/refman.itely (Automatic part combining):
+       revise documentation of the part-combiner.
+
+       * input/regression/pc-switch-slur.ly (texidoc): remove file.
+       
+       * input/test/part-combine-{moment,staff}.ly: remove file.
+
+       * input/regression/pc-mmrest.ly (two): remove file.
+
+       * scm/define-music-types.scm (music-descriptions): add
+       Solo{One,Two}Event and UnisonoEvent
+
+       * lily/new-part-combine-iterator.cc (unisono): add state_
+       variable, signal changes with part-combine-event.
+
+       * input/regression/new-part-combine-text.ly: new file.
+
+       * lily/part-combine-engraver.cc: new file.
+
+2004-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Handle snippet options.
+
+2004-02-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * scm/music-functions.scm (determine-split-list): detect solo1/2
+       and unisono.
+
+       * lily/new-lyric-combine-music-iterator.cc (construct_children):
+       revert fix, document why.
+
+       * lily/tie-performer.cc (process_music): new function. Set melisma
+       property.
+
+       * lily/tuplet-bracket.cc (make_bracket): make sure that gap is
+       always smaller than bracket size.
+       (make_bracket): oops. Size of the gap was off by factor 2
+
+       * input/test/text-rotate.ly: new file.
+
+       * scm/new-markup.scm (markup): a macro that provides a
+       LilyPond-like syntax in scheme for building markups, in order to
+       help markup command definition. (Nicolas Sceaux)
+
+       * input/test/lyrics-skip-notes.ly: new example.
+
+       * lily/parser.yy (post_event): make HYPHEN into postfix event.
+
+       * lily/new-lyric-combine-music-iterator.cc (find_context_below):
+       use is_alias() iso. == . This fixes lyrics on
+       GregorianTranscriptions. 
+
+2004-02-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * scripts/lilypond.py (ly_paper_to_latexpaper): Add newline before 
+       \thispagestyle{lastpage} to avoid that it's printed on the second
+       last page when there's only a single score line on the last page.
+       (The page breaking mechanism in TeX played some ugly tricks to us.)
+
+2004-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Further development.
+
+       * input/regression/collision-dots-move.ly: New test.
+
+       * lily/note-collision.cc (check_meshing_chords): Move dots on left
+       hand side note head of non-merged collision to the right.
+
+       * lily/new-lyric-combine-music-iterator.cc (start_new_syllable):
+       Construct children before accessing property from emtpy
+       lyrics_context_.
+       (construct_children): Find thread before finding LyricsVoice.
+       Create LyricsVoice one if none found, fixes crash (thanks Erik
+       Sandberg).
+
+2004-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * cygwin/: Forward port.
+
+2003-10-01  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * buildscripts/install-info-html.sh: Use Bash.
+
+       * cygwin/mknetrel: Patch from Bert.
+
+2003-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * cygwin/lily-wins.py: Check whether to run ly2dvi or lilypond.
+
+       * stepmake/stepmake/topdocs-targets.make (copy-to-top): Do not
+       try to copy *png, index.html (Bertalan Fodor).
+
+       * cygwin/mknetrel (preinstall): Set webdir (Bertalan Fodor).
+
+2003-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * lily/note-collision.cc (check_meshing_chords): Do not remove
+       dots (from down head) when merging similar heads (thanks Matthias
+       Kilian).  Simplify merge_possible tests and other cleanups
+
+       * input/regression/collision-merge-differently-dotted.ly: Add test
+       for disappearing dots on similar heads for both voices.
+
+2004-01-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * Documentation/user/invoking.itexi (Invoking lilypond): Document
+       that tagline overrides copyright for single page scores. Correct
+       the default tagline value.
+
+2004-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * Documentation/topdocs/NEWS.texi: Compile fix (thanks Mats).
+
+2004-01-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * buildscripts/lilypond-login.sh: Avoid warning about undefined
+       TEXMF if it's previously unset.
+
+2004-01-29  Heikki Junes <hjunes@cc.hut.fi>
+
+       * scm/chord-name.scm (german-markup): bugfix: use SEMI-TONE.
+
+       * input/test/trills.ly: fix the unfolding of lineprall.
+
+       * input/test/figured-bass-alternative.ly: fix accidental.
+
+2004-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * Documentation/topdocs/NEWS.texi: Add note about safe mode.
+       
+       * input/no-notation/dos-guile.ly: 
+       * input/no-notation/dos-ps.ly: 
+       * input/no-notation/dos-tex.ly: New file.  These tests still FAIL.
+       
+       * input/no-notation/safe-include.ly:
+       * input/no-notation/safe-guile.ly:
+       * input/no-notation/safe-ps.ly: 
+       * input/no-notation/safe-tex.ly: New file.
+
+       * scripts/lilypond.py (global_latex_preamble): Add \nofiles for
+       safe mode Add -s,--safe-mode option.  Use -S,--set for setting
+       options now.
+       (run_lilypond): When in --safe-mode, pass option to lilypond-bin.
+       When in --safe-mode, set environment openout_any=p[aranoid].
+
+       * tex/ltest.tex: 
+       * tex/lilyponddefs.tex: Add \nofiles.
+
+       * python/lilylib.py (get_bbox, make_ps_images): Add -dSAFER to gs
+       options.
+
+       * mf/GNUmakefile (FETA_LIST_FILES): Install feta*list.lys too.
+       This allows building the user manual using a binary installation
+       and a matching unpacked source tree.
+
+       * scm/lily.scm (safe-module): New variable. 
+
+       * lily/includable-lexer.cc (new_input): Fix error messages.
+
+       * lily/parse-scm.cc (internal_ly_parse_scm): Add parameter SAFE.
+       If SAFE, evaluate in safe-module.  Change callers.
+
+       * lily/main.cc (Long_option_init): Reinstate safe-mode.
+
+       * lily/lexer.ll (embedded_scm): While processing main-input,
+       invoke ly_parse_scm with safe mode if running in safe-mode.
+       (<<EOF>>): Reset main_input_b_, fixes old-relative chech
+       in init.ly for safe-mode.
+
+2004-01-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * scripts/lilypond.py (ly_paper_to_latexpaper): Regain
+       compatibility with old versions of geometry.sty (compat2
+       already implied includehead).
+       Change the page layout slightly so bottom + footskip = top +
+       headheight + headsep = 16mm, the remaining paperheight-32mm
+       are used for the music. Increase footskip to 5mm, so the top of
+       the footer text doesn't touch the music.
+
+2004-01-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * VERSION: release 2.1.16
+       
+       * scm/music-functions.scm (determine-split-list): bugfix: only use
+       new-active for both voices if both indexes advance. This fixes the
+       biggest outstanding problem with new-pc. 
+
+       * lily/new-part-combine-iterator.cc (construct_children): set more
+       directions.
+
+2004-01-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * scripts/convert-ly.py (conv): add instrument rule.
+
+       * lily/instrument-name-engraver.cc: add Vocal_name_engraver.
+
+       * lily/side-position-interface.cc: remove add_staff_support ()
+       Change all callers to use staff-padding.
+
+       * lily/auto-beam-engraver.cc (create_beam): opps. Don't use
+       make_spanner().
+
+       * lily/a2-engraver.cc (process_acknowledged_grobs): 
+
+       * lily/text-engraver.cc: remove scriptHorizontal property.
+
+       * lily/beam.cc (least_squares): also set least-squares-dy for
+       special case of slanted 2-stem beam to center.
+
+       * lily/side-position-interface.cc (out_of_staff): move contents of
+       out_of_staff into aligned_side.
+       remove out_of_staff().
+
+       * input/regression/measure-grouping.ly: fix warning.
+
+       * lily/side-position-interface.cc: add staff-padding support to
+       Side_position_interface::aligned_side.
+
+       * lily/system-start-delimiter-engraver.cc (process_music): whoops,
+       one get_property too many.
+
+       * flower/include/drul-array.hh (linear_combination): new function
+       (scale_drul): new function
+
+       * lily/beam.cc: use Drul_array<Real> iso. interval, because *=
+       operations on empty intervals are silly.
+
+2004-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * lily/note-heads-engraver.cc (process_music): use robust_scm2int
+       (iso gh_scm2int), fixes crash in new part-combiner.
+
+       * configure.in: Up mftrace to 1.0.27.
+
+2004-01-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * VERSION: release 2.1.15
+       
+       * lily/lyric-phrasing-engraver.cc (stop_translation_timestep):
+       align all stanza numbers.
+
+2004-01-26  Heikki Junes <hjunes@cc.hut.fi>
+
+       * Documentation/user/{introduction.itely,refman.itely,
+       converters.itely}: fix some text inside parentheses; text should
+       be readable (even) if parentheses are either replaced with commas 
+       or dropped out.
+
+2004-01-25  Werner Lemberg  <wl@gnu.org>
+
+       * buildscripts/lilypond.words.py, input/puer-fragment.ly,
+       input/test/vaticana.ly, input/test/ancient-font.ly,
+       input/test/mensural-ligatures.ly, input/test/gregorian-scripts.ly,
+       lily/include/staff-symbol.hh, lily/breathing-sign.cc,
+       ly/params-as-init.ly, scm/define-grobs.scm,
+       scm/define-grob-properties.scm: s/stafflinethickness/linethickness/.
+
+       * ly/params-as-init.ly: Removed.  Obsolete.
+       * buildscripts/lilypond.words.py: Updated.
+
+2004-01-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * mf/parmesan-clefs.mf: switch off mensural G clefs.
+
+       * mf/feta-din{4,5,7,9}.mf: remove.
+       
+       * lily/engraver.cc (internal_make_item): centralize item/spanner
+       factory.
+
+       * scripts/convert-ly.py (FatalConversionError.sub_durs): bugfix:
+       do correct chord conversion for ^"sim."  (backportme)
+       (FatalConversionError.sub_articulations): substitute ^"foo" in
+       chords too. (backportme)
+
+       * scm/define-grobs.scm (all-grob-descriptions): use staff-padding
+       for Fingering.
+
+       * lily/side-position-interface.cc (out_of_staff): don't do
+       anything if staff-padding not defined. 
+
+       * mf/feta-params.mf (stafflines): introduce linethickness as
+       general blackness of the font.
+
+       * lily/stem.cc (position_noteheads): rounding error robustness.
+
+       * input/regression/rest-collision-beam.ly: move beam/rest stuff
+       from beam-collision.ly 
+
+       * lily/beam.cc (rest_collision_callback): remove direction.
+
+       * scm/define-grobs.scm (all-grob-descriptions): remove
+       enclose-bounds in OttavaBracket and PianoPedalBracket
+
+       * scm/new-markup.scm (def-markup-command) new macro, which takes
+       care of defining the COMMAND-markup and make-COMMAND-markup
+       procedures, setting markup-signature and keyword-signature object
+       properties, and pushing the markup command in
+       markup-function-list.
+
+       All markup commands are defined thanks to it.  Users may also use
+       it to define their own markup commands. (Nicolas Sceaux)
+
+       * scm/new-markup.scm: Scheme style clean-up: there should be no
+       parenthesis alone on a line; LET* should not be used where LET is
+       enough. (Nicolas Sceaux)
+
+2004-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scripts/filter-lilypond-book.py: Add script.
+
 2004-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
 
        * ly/engraver-init.ly: Set enclose_bounds to #1 (was: ##t).
 
 2004-01-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
+       * Documentation/user/refman.itely (Fingering instructions): add
+       single note chords. 
+
        * lily/multi-measure-rest-engraver.cc: use a single
        MultiMeasureEvent for mm rests. This prevents problems with the
        new part combiner.