]> git.donarmstrong.com Git - lilypond.git/commitdiff
diff --git a/ChangeLog b/ChangeLog
authorJan Nieuwenhuizen <janneke@gnu.org>
Mon, 30 Oct 2006 14:43:31 +0000 (15:43 +0100)
committerJan Nieuwenhuizen <janneke@gnu.org>
Mon, 30 Oct 2006 14:43:31 +0000 (15:43 +0100)
index 890350d..65b9d97 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,307 @@
+2006-10-30  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+ * stepmake/stepmake/po-vars.make: Resolve.
+
 2006-10-29  Jan Nieuwenhuizen  <janneke@gnu.org>

  * stepmake/stepmake/po-vars.make: test change for GIT gateway.

+2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * buildscripts/git-update-changelog.py (main): write .msg and cvs command.
+
+ * scm/define-grobs.scm:
+ separation-items have width
+
+ * VERSION:
+ bump version
+
+ * .gitignore:
+ * Documentation/topdocs/NEWS.tely:
+ * lily/separating-group-spanner.cc:
+ * lily/slur-engraver.cc:
+ * lily/slur-scoring.cc:
+ * scm/define-grobs.scm:
+ * input/regression/slur-clef.ly:
+ add breakableSeparationItem to extra encompass for slurs. This
+ fixes slur/clef slur/key collisions etc. Should fix #49
+
+ * lily/include/slur-scoring.hh:
+ * lily/slur-scoring.cc:
+ Use X of separation item as slur start. Fixes #120
+
+2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * buildscripts/git-update-changelog.py (changelog_body): don't
+ write committishes.
+
+ * lily/grob.cc: add avoid-slur
+
+2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * emacsclient.patch:
+ * server.el.patch:
+ move server/emacsclient to elisp/
+
+ * buildscripts/git-update-changelog.py (Commit.note_del_file):
+ apply patches too
+
+ * elisp/server.el.patch:
+ move emacs patches.
+
+ * elisp/emacsclient.patch:
+ emacsclient too.
+
+ * buildscripts/git-update-changelog.py:
+ ignore ChangeLog
+
+ * .gitignore:
+ update
+
+ * ChangeLog:
+ * buildscripts/git-update-changelog.py:
+ script to update ChangeLog with Git messages.
+
+ * lily/beam-engraver.cc:
+ * input/regression/rest-pitched-beam.ly:
+ don't set callback if staff-position set. Fixes #126.
+
+ * lily/bar-number-engraver.cc:
+ * lily/beam.cc:
+ * lily/fingering-engraver.cc:
+ * lily/grob-property.cc:
+ * lily/grob.cc:
+ * lily/include/grob.hh:
+ * lily/include/lily-guile-macros.hh:
+ * lily/mark-engraver.cc:
+ * lily/melody-engraver.cc:
+ * lily/script-column.cc:
+ * lily/tie-formatting-problem.cc:
+ * lily/tie.cc:
+ internal_get_property_data() using ly_symbol2scm()
+
+ * stepmake/stepmake/generic-targets.make:
+ create .gitignore in outdir.
+
+ * .gitignore:
+ new file.
+
+2006-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+ * input/test/vertical-extent.ly:
+ * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
+
+2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * stepmake/bin/add-html-footer.py (compose): remove setgcos
+
+2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * GNUmakefile.in (install-help2man): install-help2man target.
+
+2006-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+ * SConstruct (configure): Do not check for /bin/sh.
+
+2006-10-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
+ files.
+
+ * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
+
+ * input/regression/fret-boards.ly: new file.
+
+ * po/de.po: new po courtesy translation team.
+
+ * scripts/lilypond-book.py (get_option_parser): add newline to doc
+ string.
+
+2006-10-27  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+ * ly/gregorian-init.ly (neumeDemoLayout): update
+ minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
+
+ * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
+ obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
+
+2006-10-27  Erlend Aasland  <erlenda@gmail.com>
+
+ * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
+ Yet another build fix.
+
+2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * SConstruct (lilypondprefix): use sorted() for list_sort()
+ indent 4
+
+2006-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+ * flower/SConscript: Unit test rules.
+
+ * flower/test-std.cc: Compile fix.
+
+2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * python/midi.c (pymidi_parse_track): warning fixes.
+
+ * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
+ include dot-column.hh
+
+2006-10-26  Graham Percival  <gpermus@gmail.com>
+
+ * Documentation/user/{basic-, global}: minor changes from mailist.
+
+2006-10-26  Erlend Aasland  <erlenda@gmail.com>
+
+ * scm/define-grobs.scm: trivial beautification
+
+ * lily/tie-performer.cc: no need to #include "pqueue.hh"
+
+ * lily/source-file.cc: put multibyte var inside #if clause
+
+ * scm/define-grob-interfaces.scm:
+ * scm/define-grob-properties.scm:
+ Build fix (string-fret-finger-combinations)
+
+ * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
+ lexer-gcc-3.1.sh
+
+ * Documentation/user/lilypond-book.itely: Build fix.
+
+2006-10-26  Joe Neeman  <joeneeman@gmail.com>
+
+ * lily/system.cc (get_paper_system):
+ * lily/paper-book.cc (systems):
+ move most of the backwards compatibility stuff into
+ Paper_book::systems
+
+ * Documentation/topdocs/NEWS.tely: add 2 entries for the
+ page breaking stuff
+
+ * Documentation/user/page.itely: remove time-scaled-music
+ bug for the Page_turn_engraver
+
+ * lily/paper-book.cc (set_system_penalty): backwards
+ compatibility (breakbefore) for the old page breaker
+
+2006-10-25  Graham Percival  <gpermus@gmail.com>
+
+ * Diocumentation/user/instrument-notation.itely: added more
+ info about stanzas; thanks Geoff!
+
+ * Documentation/user/ {basic, advanced}: small fixes from
+ mailist.
+
+ * THANKS: add some bug reporters.
+
+2006-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+ * scm/define-context-properties.scm (all-user-translation-properties):
+ noteToFretFunction: Add.
+
+ * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
+ fret-diagram-interface (WAS: fret-board-interface).  Fixes build.
+
+2006-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+ * flower/file-name.cc (dos_to_posix): Help std::string.copy with
+ trailing zero.
+
+ * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
+ Remove bashism in delete.
+
+2006-10-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
+
+ * scm/translation-functions.scm (determine-frets-mf): flatten let*
+
+ * scm/define-context-properties.scm
+ (all-user-translation-properties): add maximumFretStretch property.
+
+ * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
+
+ * lily/source-file.cc (get_counts): use multibyte variable.
+
+ * scm/translation-functions.scm (determine-frets-mf): new
+ function: compute fret numbers.
+
+ * scm/output-lib.scm (string-frets->description) new function.
+ (fret-board::calc-stencil): new function
+
+ * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
+
+ * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
+
+ * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
+
+ * lily/tab-note-heads-engraver.cc: cleanups.
+
+ * lily/fretboard-engraver.cc: new file
+
+ * ly/engraver-init.ly: add FretBoards context
+
+2006-10-24  Joe Neeman  <joeneeman@gmail.com>
+
+ * lily/grob.cc (pure_relative_y_coordinate)
+ (pure_height): use the new call_pure_function stuff
+
+ * lily/grob-property.cc (call_pure_function): wrapper for the scheme
+ call-pure-function
+
+ * lily/side-position-interface.cc (pure_y_aligned_side): add an
+ optarg
+
+ * lily/simple-closure.cc (ly_eval_simple_closure): make
+ simple-closure evaluatable from scheme
+ (evaluate_with_simple_closure): make simple-closures pure-
+ evaluatable
+
+ * lily/slur.cc (pure_outside_slur_callback): new function
+
+ * ly/paper-defaults.ly: change default blank-page-force to 2 (this
+ fits in with previous changes that made the page forces much
+ smaller)
+
+ * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
+ and pure-Y-extent into this new function.
+ (pure-conversions-alist): add outside-slur-callback
+
+2006-10-24  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+ * Documentation/user/advanced-notation.itely (Instrument names):
+ Remove obsolete bug workaround for instrument names on piano
+ staff.
+
+2006-10-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * Documentation/user/lilypond-book.itely (Integrating DocBook and
+ music): patch by Bertalan Fodor for docbook.
+
+ * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
+ of $(LILYPOND). Prevents lilypond run for .txt files.
+
+ * INSTALL.txt: gitness.
+
+ * .cvsignore: update to force gitness.
+
+2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
+ detect suicide in nested tuplets.
+
+2006-10-23  Werner Lemberg  <wl@gnu.org>
+
+ * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
+ typo in argument to FT_Get_X11_Font_Format.
+
+2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+ * stepmake/stepmake/po-vars.make: more gitness.
+
+ * flower/polynomial.cc (check_sol): no empty if bodies.
+
 2006-10-22  Han-Wen Nienhuys  <hanwen@lilypond.org>

  * stepmake/stepmake/po-vars.make: test change for GIT gateway.
@@ -5649,7 +5949,6 @@
  * flower/include/std-vector.hh
  * flower/include/array.hh (concat): Globally change to insert ().

-
  * flower/include/std-vector.hh
  * flower/include/parray.hh
  * flower/include/array.hh (elem, elem_ref): Globally replace by
@@ -8594,7 +8893,6 @@
  * lily/staff-performer.cc (initialize): add tempo/name to
  audio_staff_

-
 2005-08-26  Graham Percival  <gpermus@gmail.com>

  * Documentation/user/advanced.itely: add text-only example.
@@ -8901,8071 +9199,4 @@
  time sigs and related stuff.

  * scm/define-grob-properties.scm (all-user-grob-properties): add
- @code{} tags to property description.
-
- * lily/include/line-group-group-engraver.hh (Module): remove file.
-
- * python/convertrules.py (conv): add rule for
- Engraver_group_engraver -> Engraver_group.
-
- * lily/include/performer-group-performer.hh: analogous.
-
- * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
-
- * lily/context-def.cc (instantiate): check for
- Engraver_group_engraver and Performer_group_performer not
- Engraver/Performer. Fixes crashes when doing \with { \consists .. }
-
-2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * input/les-nereides.ly: Remove three fingering tweaks, update
- remaining one.
-
- * input/regression/slur-script-inside.ly: Update, fix doc.
-
- * scm/script.scm: Update to avoid-slur.
-
- * scm/define-grob-properties.scm (avoid-slur): New property.
-
- * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
- * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
- outside_slur_callback if avoid-slur != #'inside.
-
- * scm/define-grobs.scm (Fingering, Textscript): No
- inside-slur/outside-slur preference.
- (DynamicLineSpanner): Always outside slur.
-
- * input/regression/slur-script.ly: More tests.
-
-2005-08-17  Graham Percival  <gpermus@gmail.com>
-
- * Documentation/user/lilypond-book: fix notime entry.
-
- * Documentation/user/advanced-notation.itely: add info on
- getting an I rehearsal mark.
-
- * Documentation/user/putting.itely: reinstate "I", re-enforce
- the fact that \override numbers are the result of
- experimentation and personal taste.
-
- * Documentation/user/invoking.itely: update convert-ly bugs.
-
-2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
- to #t.
-
- * lily/timing-translator.cc (initialize): don't initialize timing.
-
- * input/regression/stem-spacing.ly (Module): remove file.
-
- * input/regression/spacing-stick-out.ly: specify Score context for
- \override
-
- * input/regression/clefs.ly: remove spurious {}s
-
-2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
-
- * Documentation/topdocs/NEWS.tely,
- input/regression/repeat-percent-count.ly: clarify a bit.
-
-2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * input/no-notation/display-lily-tests.ly: delete
- display-lily-init call.
-
- * ly/music-functions-init.ly (displayLilyMusic): move
- display-lily-init call at top level, so that the user should not
- have to call it.
-
- * scm/define-music-display-methods.scm (note-name->lily-string):
- retrieve note names directly from pitchnames using new function `rassoc'.
- (display-lily-init): note names list construction removed.
-
-2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * THANKS: spello.
-
- * lily/lily-parser.cc (get_header): copy module, instead of
- returning it.
-
- * Documentation/topdocs/NEWS.tely (Top): add entry for percent
- counters.
-
- * Documentation/user/basic-notation.itely (Measure repeats): add
- links to Counter grobs.
-
- * scm/define-grobs.scm (all-grob-descriptions): add
- DoublePercentRepeatCounter
- (all-grob-descriptions): add PercentRepeatCounter
-
- * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
- also create counter grobs.
-
- * lily/separation-item.cc (extremal_break_aligned_grob): don't
- return grob without space-alist.
-
- * input/proportional.ly: tune staff-padding.
-
- * input/regression/repeat-percent-count.ly: new file.
-
-2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * input/no-notation/display-lily-tests.ly: moved from
- input/regression/ to input/no-notation. Be sure to call
- `display-lily-init' before trying to use the display function.
-
-2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
-
- * scripts/lilypond-book.py (option_definitions): Don't localize
- the empty string. Fixes bug when --psfonts was used with
- non-English locale.
-
-2005-08-15  Graham Percival  <gpermus@gmail.com>
-
- * lily/tuplet-bracket.cc: simple build fix.
-
- * Documentation/user/putting.itely: use "we" instead of "I".
-
- * Documentation/user/basic-notation.itely: cautionary accidentals
- work with naturals, too.
-
-2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/tuplet-bracket.cc (calc_position_and_height): add
- staff-padding support.
-
- * input/proportional.ly: set staff-padding.
-
- * VERSION (PATCH_LEVEL): release 2.7.5
-
- * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
- fixes. Remove tweaks.
-
- * input/regression/tuplet-slope.ly: add a test case.
-
- * lily/tuplet-bracket.cc (calc_position_and_height): revert
- erroneous fix. Add spanner bounds to offset array with relative X
- positions.
-
- * ly/engraver-init.ly: add Rest_engraver only once.
-
- * scm/define-music-display-methods.scm (KeyChangeEvent): only do
- (*parser*) lookup if (*parser*) != #f.
-
-2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
- Cut-and paste update.
-
- * 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  <janneke@gnu.org>
-
- * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
- encoding files are already removed.
-
-2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <gpermus@gmail.com>
-
- * Documentation/user/global.itely: add "fit as much as
- possible onto this page" example (Vertical spacing).
-
-2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * *: Nitpick run.
-
- * buildscripts/fixcc.py: Fixes.
-
-2005-08-12  Graham Percival  <gpermus@gmail.com>
-
- * Documentation/user/advanced-notation.itely: add markup
- example to Text spanners.
-
-2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
-
- * 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  <hjunes@cc.hut.fi>
-
- * po/TODO: suggest to use a dedicated tool like kbabel.
-
- * po/fi.po: update using kbabel.
-
-2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * *: Remove obsolete files.  Nitpick run.
-
- * lily/lily-guile.cc (parse_symbol_list): Bugfix.
-
-2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * 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  <janneke@gnu.org>
-
- * 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  <mabe@s3.kth.se>
-
- * scm/define-markup-commands.scm: Improved regexp to search for
- EPS bounding boxes and corrected call to ly:warning.
-
-2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * Documentation/user/programming-interface.itely (Displaying music
- expressions): doc for \displayLilyMusic. Also some precisions in
- "Markup construction in Scheme"
-
-2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
-
- * 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  <gpermus@gmail.com>
-
- * 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  <mabe@s3.kth.se>
-
- * 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  <gpermus@gmail.com>
-
- * 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  <janneke@gnu.org>
-
- * scm/framework-ps.scm (dir-join): Rename from path-join (joins
- directories, not paths).
-
-2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * 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  <gperlist@shaw.ca>
-
- * scm/define-markup-commands: fix reversed justify/wordwrap
- doc strings.
-
-2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * ly/bagpipe.ly: updated.
-
- * Documentat/user/instrument.itely: un-comment out bagpipe example.
-
-2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * ly/bagpipe.ly: new file.
-
- * THANKS: added Sven Axelsson.
-
-2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <mabe@s3.kth.se>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * input/test/time-signature-staff.ly: new file.
-
- * ly/declarations-init.ly (center): escape to Scheme. Fixes
- spurious #<Music FingerEvent> errors. Backportme.
-
-2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
-
- * Documentation/user/programming-interface.itely (Markup
- construction in Scheme): Corrected markup syntax in the
- translation table.
-
-2005-08-03  Graham Percival  <gperlist@shaw.ca>
-
- * 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  <gperlist@shaw.ca>
-
- * Documentation/user/music-glossary: remove accidentally committed
- fink patch.
-
-2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * Documentation/user/music-glossary: more languages
- for tenuto.
-
- * Docuemntation/user/instrument-notation.itely: minor
- update for bagpipe example.
-
-2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * input/regression/+.ly (TODO): add some text.
-
-2005-07-28  Graham Percival  <gperlist@shaw.ca>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <janneke@gnu.org>
-
- * 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  <hanwen@xs4all.nl>
-
- * scm/lily.scm (lilypond-all): clear anonymous modules after
- processing files.
-
-2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <nicolas.sceaux@free.fr>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <nicolas.sceaux@free.fr>
-
- * 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  <janneke@gnu.org>
-
- * Documentation/topdocs/NEWS.tely (Top): Typo.
-
-2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <janneke@gnu.org>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hjunes@cc.hut.fi>
-
- * 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 </p>.
-
-2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * ly/titling-init.ly: add printallheaders option.
-
- * Documentation/user/global.itely: document printallheaders.
-
-2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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<Grob> 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  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond-book.itely: fixes example.
-
-2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * 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  <gperlist@shaw.ca>
-
- * 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  <janneke@gnu.org>
-
- * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
-
-2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <isizaki@mte.biglobe.ne.jp>
-
- * 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  <gperlist@shaw.ca>
-
- * 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  <hanwen@xs4all.nl>
-
- * scm/define-markup-commands.scm (justify-field): add.
-
- * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
-
-2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * 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  <mabe@s3.kth.se>
-
- * Documentation/user/advanced-notation.itely (Setting automatic
- beam behavior): Correct the documentation of
- revert-auto-beam-setting (backportme)
-
-2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * input/regression/fret-diagrams.ly: stretch example.
-
-2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
- Fodor).
-
-2005-06-30  Graham Percival  <gperlist@shaw.ca>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <hanwen@xs4all.nl>
-
- * po/zh_TW.po: update from translation project.
-
-2005-06-28  Graham Percival  <gperlist@shaw.ca>
-
- * scm/midi.scm: compile fix.
-
-2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
-
- * 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  <stecmccarthy@hotpop.com>
-
- * 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  <hanwen@xs4all.nl>
-
- * 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  <janneke@gnu.org>
-
- * 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  <gperlist@shaw.ca>
-
- * 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  <janneke@gnu.org>
-
- * Documentation/topdocs/NEWS.tely: Update to 2.6.
-
-2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * THANKS: update to 2.6
-
- * VERSION: 2.6.0 released.
-
-2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
- rule, errorneously removed probably because of misleading comment.
-
-2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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 <hjunes@cc.hut.fi>
-
- * po/fi.po: add latest translations.
-
-2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * 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  <gperlist@shaw.ca>
-
- * 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  <hanwen@xs4all.nl>
-
- * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
- to fonts.
-
-2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
-
- * 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  <hanwen@xs4all.nl>
-
- * VERSION (PATCH_LEVEL): release 2.5.32
-
- * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
- variable in lily module
-
- * scm/framework-ps.scm (output-classic-framework): error message
- regarding the classic framework.
-
- * Documentation/user/henle-flat-gray.png (Module): new file.
-
- * Documentation/user/baer-flat-gray.png (Module): new file.
-
- * scm/output-lib.scm (fret-number-tablature-format): vcenter and
- whiteout for markups.
-
- * buildscripts/substitute-encoding.py (note_glyph): include _ in
- regex too. This fixes change clef appearance in PDF.
-
- * ttftool/include/*: remove.
-
- * configure.in (reloc_b): remove TTFTOOL_ENDIAN
-
- * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
-
- * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
-
- * ttftool/*: remove ttftool subdirectory.
-
- * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
-
- * lily/ttf.cc (print_header): new file. Convert to type42, using
- FreeType to parse the TTF.
-
- * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
- and post table may differ. Pass around post_nglyphs as well.
-
-2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/music-functions-init.ly (musicMap): new music function
- musicMap.
-
-2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/mutopia-rules.make: anti-alias-factor = 2
-
- * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
- page switch.
-
- * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
- anti-alias-factor for lilypond-book runs.
-
- * scm/ps-to-png.scm (scale-down-image): new function.
- (my-system): new function.
- (make-ps-images): blow up GS resolution by anti-alias-factor,
- scale down image by anti-alias-factor.  This improves appearance
- of bitmaps
- (make-ps-images): remove showpage. Fixes spurious empty png at
- end.
-
- * scm/framework-ps.scm (write-preamble): downcase filename before
- string-matching. Should fix .TTF files (as opposed to ttf files)
-
- * Documentation/user/tutorial.itely (Running LilyPond for the
- first time): separate subsections for windows, macos and unix.
-
- * Documentation/user/invoking.itely (Updating files with
- convert-ly): add MacOS X note.
-
-2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/introduction.itely (Engraving): don't include
- file optical-spacing, add directly.
-
- * lily/paper-outputter.cc (file): open file in binary mode. This
- fixes OTF embedding on windows.
-
-2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (write-preamble): remove debugging output.
-
- * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
-
- * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
- outdir.
- (install-fc-cache): install font cache in installation directories.
-
-2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/editor.scm (editor-command-template-alist): Use char iso
- column, except for Emacs.
- (get-editor-command): Substitute char too (Bertalan Fodor).
-
-2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
- quoted ~s.  This should fix PNG output on Windows; single quotes
- are regular characters on Windows.
-
-2005-06-16  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/basic-notation.itely: include ChoirStaff
- in System start delimiters.
-
- * Documentation/user/putting.itely: new doc section on
- fixing overlapping notation.
-
-2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/global.itely (Paper size): \paper is in
- \book, not \score.
-
- * make/mutopia-rules.make: -ddelete-intermediate-files
-
- * ly/engraver-init.ly: make Staff default child of ChoirStaff.
-
-2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * ChangeLog: Recode utf-8.
-
- * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
- datadir with .py modules.
-
-2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
-
- * Documentation/user/basic-notation.itely (Ties): add tieDashed.
-
-2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
-
- * scm/framework-ps.scm (write-preamble): remove status check.
-
- * Documentation/user/invoking.itely (Updating files with
- convert-ly): remove -o option.
-
- * VERSION (PACKAGE_NAME): release 2.5.31
-
- * scm/framework-ps.scm (write-preamble): use ly:system.
- (write-preamble): verbosity.
-
- * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
-
- * python/convertrules.py: new file. Store conversion rules
- separately.
-
-2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/backend-library.scm (postprocess-output): remove debugging gobs.
-
-2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
-
- * Documentation/topdocs/NEWS.tely (Top): Corrected name of
- \musicDisplay
-
- * Documentation/user/instrument-notation.itely (More stanzas): Add
- reference to StanzaNumber.
-
-2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * THANKS: separate section for website translators.
-
-2005-06-14  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/topdocs/INSTALL.texi: update vim info;
- thanks Simon Bailey!
-
- * Documentation/user/advanced-notation.itely: included
- color names.
-
- * Documentation/user/advanced-notation.itely,
- Documentation/usr/notation-appendices.itely: moved
- color names into an appendix.
-
-2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
-
- * scm/lily.scm (lambda): initialize program options from here.
-
- * scm/framework-*.scm: add header info.
-
- * lily/main.cc (parse_argv): only set output format to pdf if no
- other format specified.
-
- * scm/backend-library.scm (postprocess-output): process
- 'delete-intermediate-files after running convert-to-*. This fixes
- PNG generation when 'delete-intermediate-files is set.
-
-2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
- links on website.
-
-2005-06-13  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/topdocs/INSTALL.texi,
- Documentation/user/lilypond-book.itely: typos.
-
-2005-06-12  Pal Benko  <benkop@freestart.hu>
-
- * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
- added between program name and switch; -b changed to -f not
- to generate pdf
-
-2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
- (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
-
- * input/sakura-sakura.ly: add \midi.
-
- * buildscripts/mutopia-index.py (find): use /usr/bin/find
- iso. python find.
-
- * ttftool/test.c (main): cosmetics.
-
- * ttftool/util.c (surely_lseek): use stdio FILE's for I/O
-
- * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
- create a ttf2ps binary.
-
- * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
-
- * scm/backend-library.scm (postscript->png): set rename-page-1 to
- true.
-
-2005-06-11  Graham Percival <gperlist@shaw.ca>
-
- * Documentation/user/lilypond-book.itely: add warning about
- the font warnings in dvips.
-
-2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * THANKS: typo
-
- * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
-
- * GNUmakefile.in: remove links for .map, .enc
- don't fail if out/ doesn't exist yet.
-
-2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ttftool/util.c (surely_read): return nbytes
-
- * stepmake/bin/text2html.py (txt2html): add utf-8 marker.
-
- * VERSION (PACKAGE_NAME): release 2.5.30
-
- * flower/string-convert.cc (precision_string): >? fix.
-
- * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
- (make-ps-images): add verbose -q too.
-
- * lily/default-actions.cc (Module): new file. default
- {book,score}-print functions.
-
- * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
- pass results via parseStringResult, lookup via ly:parser-lookup.
-
- * lily/lily-parser.cc (Lily_parser): only clone lexer in
- constructors.
- (parse_file): encapsulate do_yyparse() in scm_set_current_module()
- (parse_string): idem.
-
- * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
-
- * lily/main.cc (main_with_guile): copy be_verbose_global into
- ly_set_option()
-
-2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/backend-library.scm (postscript->pdf):
- * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
- verbose mode.  Search for several names of gs executable.
-
-2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/ly-module.cc (ly_make_anonymous_module): call make-module
- directly. This fixes a massive memory leak, provided you use CVS
- GUILE.
-
-2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
-
- * ly/property-init.ly: Added tieDashed.
-
- * THANKS: Added some bughunters for 2.5.
-
-2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/program-option.cc: add debug-gc option.
-
- * lily/include/lily-guile-macros.hh: don't protect exported module
- objects.
-
- * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
-
- * scm/backend-library.scm (postscript->pdf): use
- delete-intermediate-files iso. running-from-gui?
-
- * ttftool/util.c (surely_read): robustness. Allow read() to return
- less bytes than requested, as per posix standards.
-
- * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
- program option.
-
- * ttftool/include/ttftool.h ("C"): rename verbosity to
- ttf_verbosity. Add to public interface.
-
- * scm/music-functions.scm (unfold-repeats): remove debugging display.
-
- * lily/program-option.cc: rename from scm-option.cc
-
- * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
- (get_help_string): Print pretty help string.
-
- * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
- to snippet preamble.
-
- * lily/scm-option.cc: remove command-line-settings option. Fold
- all command-line options plus default settings in a generic
- interface.
-
- * flower/getopt-long.cc (table_string): indent 2nd lines of help
- texts too.
-
-2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
- or EXT_ components non-empty.
-
-2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/lily.scm (running-from-gui?): Export.
-
- * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
- output in .ly source directory.
-
-2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ttftool/util.c (surely_lseek): more verbosity.
-
- * lily/include/lily-proto.hh: add Context_def. This fixes FC4
- compile.
-
- * lily/parser.yy (Repeated_music): remove >?
-
- * scm/backend-library.scm (postscript->pdf): Support for
- -dgs-font-load=1
-
- * scm/framework-ps.scm (write-preamble): make font loading
- switchable to GS via --define-default gs-font-load=1
-
-2005-06-09  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/global.itely: added \layout docs.
-
-2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/lily-parser-scheme.cc: add unistd.h
-
-2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/editor.scm: add char argument.
-
- * scripts/lilypond-invoke-editor.scm (dissect-uri): add char.
-
- * ttftool/util.c (syserror): use errno for better error reporting.
-
- * lily/source-file.cc (get_counts): new function. Calc column,
- line and char count in one go.
-
- * lily/binary-source-file.cc (quote_input): rename to quote_input
-
- * lily/input.cc (set): new function.
-
-2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/file-path.cc (find): Bugfix.  Append rather than prepend
- directory part of file name to search directory.
-
- * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
- search path and chdir to DIR if --outname=DIR used.
-
- * lily/main.cc (prepend_env_path): Bugfix: Check directory
- existence before appending original path.
-
-2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
- file" massage.
-
- * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
- texinfo.tex is always used.
-
-2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * flower/include/axis.hh: rename from axes.hh
-
- * lily/include/text-interface.hh (Module): rename from text-item.hh
-
- * VERSION (PATCH_LEVEL): release 2.5.29
-
- * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
-
- * scm/framework-ps.scm (font-file-as-ps-string): new function.
- (handle-macfont): new function. Call fondu for Native mac fonts.
-
- * scm/define-markup-commands.scm (fill-line): handle text-widths =
- '() case.
-
-2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
- multi-page.  Fix .eps regular expression.
-
-2005-06-07  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/putting.itely: add info on modifying templates.
-
- * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
- misc small changes.
-
-2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
-
- * scripts/lilypond-ps2png.scm
-
- * VERSION (PACKAGE_NAME): release 2.5.28
-
-2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc (prepend_env_path): Do not append /, that does not
- work.  Localedir lives in datadir, not in prefix.
-
- * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
- hack for windows.
-
- * flower/include/file-cookie.hh: Compile fix.
-
-2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup.
-
- * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
- system primitives.
- (gulp-port): using read-string!/partial. We don't want to read an
- entire PS file  (GUILE 1.6 limits strings to 16M)
-
- * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
- properties. Add font-interface.
-
- * scm/define-grob-properties.scm (all-user-grob-properties):
- remove old bracket properties.
-
- * scm/x11-color.scm: reformat.
-
- * lily/ledger-line-engraver.cc (acknowledge_grob): create new
- LedgerLineSpanner if new StaffSymbol is found.
-
- * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
- staff-symbol for finishing staff.
-
- * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
-
- * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
- change black to currentColor everywhere. This fixes color support
- in SVG.
-
-2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
-
- * input/regression/fret-diagrams.ly: new file to test fret diagram
- capability
-
- * scm/output-tex.scm: remove white-dot and white-text
-
- * scm/output-ps.scm: remove white-dot and white-text
-
- * scm/fret-diagrams.scm (sans-serif-stencil-white): removed --
- using ly:stencil-in-color instead
- (draw-dots) : remove call to white-dot
-
-2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
- support.
-
- * ttftool/ttfps.c: use lily_cookie functions everywhere.
-
- * flower/include/file-cookie.hh: new file. lily_cookie extension
-
- * flower/file-cookie.cc: new file. lily_cookie extension.
-
-2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/editor.scm (editor-command-template-alist): Add syn
- editor (Jaap [de Vos]).
-
-2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scripts/lilypond-ps2png.scm:
- * scm/ps-to-png.scm: New file.
-
- * scm/backend-library.scm (postscript->png): Use it.
-
- * scripts/lilypond-ps-to-png.py: Remove file.
-
- * python/lilylib.py (get_bbox, make_ps_images): Remove.
-
-2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
-
- * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
- start on grace moment. Fixes autobeam-grace.ly.
-
- * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
- process anything unless we're at the end of a pending beam. Fixes
- syncopated 8ths beamed across a beat.
-
-2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/editor.scm (editor-command-template-alist): Start emacs if
- emacslient fails.
-
- * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
-
- * flower/file-path.cc (is_file, is_dir): Export.
-
- * lily/main.cc (prepend_env_path, set_env_file): Use them.
-
-2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
-
- * lily/easy-notation.cc: Added include cctype to correct
- compilation error.
-
-2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/backend-library.scm (postscript->pdf): set resolution to
- 1200, so bitmap fonts aren't that ugly.
-
- * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
-
- * lily/dynamic-engraver.cc (acknowledge_grob): only center on
- parent if we have a notehead. Fixes incorrect offsets when
- Paper_column is very wide in the X direction.
-
- * input/regression/font-family-override.ly (Module): new file.
-
- * scm/font.scm (make-pango-font-tree): new function.
-
- * lily/beam.cc (before_line_breaking): remove warning about less
- than 2 visible stems. We still get a warning when there is only
- one stem.
-
-2005-06-01  Werner Lemberg  <wl@gnu.org>
-
- * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
- correctly.
-
-2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/slur-scoring.cc (generate_avoid_offsets): new
- function. Generate avoid offsets once per slur.
-
- * lily/slur.cc (add_extra_encompass): add dependency to
- extra-encompass object. This fixes bugs/c-phrasing-slur.ly
-
- * lily/stencil.cc (is_empty): check dim_ field for is_empty()
- too. Fixes inf error with added bass notes.
-
- * scripts/lilypond-book.py (do_options): --psfonts doesn't take
- argument anymore.
-
- * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
-
- * input/tutorial/lbook-latex-test.tex: add line length test.
-
- * scripts/lilypond-book.py (set_default_options): new
- function. Call this before dissecting snippets, so linewidth
- settings reach the snippets.
-
-2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
-
-2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
-
-2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: More autopackage friendliness.
-
-2005-05-31  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/index.html.in: remove link to LSR.
-
- * Documentation/user/global.itely: remove duplicate
- "dedication" \header{} section.
-
-2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.27.
-
- * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
- too. Plugs memory leak.
-
- * make/lilypond.fedora.spec.in (Group): remove
- lilypond-pdfpc-helper.
-
- * scripts/GNUmakefile (SEXECUTABLES): remove
- lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
-
- * scm/font.scm (make-century-schoolbook-tree): add Mono as
- 'typewriter family.
-
- * lily/score.cc (Score): unprotect copy of Output_def. Plugs
- memory leak.
-
- * lily/parser.yy (score_body): don't clone Score, that's done in
- Lily_lexer::try_special_identifiers(). This fixes a memory leak.
-
- * lily/score-engraver.cc (derived_mark): new function.
- (initialize): unprotect Paper_score. This fixes a memory leak.
-
- * lily/score-performer.cc (derived_mark): new function.
-
- * lily/score-translator.cc (get_output): use SCM for get_output() call.
-
- * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
- spurious warning.
-
- * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
- serif.
-
-2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * configure.in (reloc_b): Add --enable-relocation.
-
-2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/pfb.cc (LY_DEFINE): show file name when loading PFB.
-
- * input/regression/alignment-order.ly: add Staff example.
-
-2005-05-31  John Mandereau   <john.mandereau@free.fr>
-
- * po/fr.po: update.
-
-2005-05-31  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/index.html.in: add link to LSR.
-
-2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-stencil-commands.scm (Module): new file. Register all
- allowed stencil expression heads in a central place.
-
- * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
- ly:make-stencil
-
- * lily/stencil-expression.cc (all_stencil_heads): registering
- stencil expressions.
-
- * lily/stencil-interpret.cc: new file. Stencil expression
- interpreting.
-
- * input/xiao-haizi-guai-guai.ly: move file back.
-
-2005-05-30  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/advanced.itely, converters.itely,
- instrument-notation.itely, lilypond-book.itely: misc small
- changes.
-
-2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/lexer.ll: Skip UTF-8 BOM at BOF.
-
- * make/lilypond.fedora.spec.in: Fix source url.
-
- * cygwin: Update from mingw patches.
-
- * scm/editor.scm (editor-command-template-alist): Use jedit
- -reuseview (Bertalan), add uedit (Patrick Huberts).
-
- * input/xiao-hai-zi-guai-guai.ly: Rename from
- xiao-haizi-guai-guai.ly.
-
- * input/*: Reindent, do not use TAB.
-
- * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
- white background.
-
-2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
- numerical overflow error.
-
-2005-05-29 Laura Conrad <lconrad@laymusic.org>
-
- * abc2ly.py: fix to syntax error in multi-part output.
-
-2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/span-bar.cc (print): sort bar line extents. Fixes problem
- with disappearing span bars when alignAboveContext is active
-
- * lily/property-iterator.cc (check_grob): use is-grob?
- object-property. Fixes crash-key-sig-font-size.ly.
-
-2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/bar-line.cc (print): don't round barlines; this produces
- odd aliasing effects in Acroread.
-
- * lily/timing-engraver.cc (process_music): robustness fix.
-
- * lily/context-def.cc (filter_engravers): bugfix.
-
-2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/lilypond.rc.in: Add ly-icon.
-
- * lily/GNUmakefile:
- * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
- rules.
-
-2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
-
- * ps/music-drawing-routines.ps:
-
- * scm/output-ps.scm: remove draw ez_ball.
-
- * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
- EasyNotation context definition.
-
- * lily/easy-notation.cc (brew_ez_stencil): new file. Use
- Text_interface and color for making easy note heads.
-
- * lily/stencil.cc (with_color): new function.
-
- * ps/music-drawing-routines.ps: remove draw_zigzag_line
-
- * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
- output routine. Zigzag now works in SVG too.
-
- * scm/output-tex.scm (filledbox): idem.
-
- * scm/output-svg.scm (filledbox): idem.
-
- * scm/output-ps.scm (lily-def): remove horizontal-line.
-
- * lily/lookup.cc (horizontal_line): use draw-line.
-
- * lily/system-start-delimiter.cc: remove old staff bracket code.
-
- * mf/feta-haak.mf: further tweaks.
-
- * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
-
- * mf/feta-generic.mf: include feta-haak.
-
- * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips
-
- * scm/framework-ps.scm (write-preamble): only load fonts if their
- filename is a string.
-
-2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-svg.scm (circle): support circle.
- (bracket): stub for bracket.
-
- * scripts/lilypond-book.py (main): make sure --psfonts warning is
- correct.
-
-2005-05-26  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond.tely, advanced-notation.itely,
- basic-notation.itely, instrument-notation.itely, global.itely,
- introduction.itely, tutorial.itely: rearranging, editing,
- clean-up.
-
- * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
- for compiling on FreeBSD.
-
-2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
- otf files.
-
- * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
- bugfixes.
-
- * VERSION: 2.5.26 released.
-
- * scm/titling.scm (marked-up-headfoot): revert Pedro's patch.
-
-2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
- if printpagenumber is false.
-
-2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/font-config.cc (init_fontconfig): comment out FontConfig
- cache warning.
-
- * lily/tie.cc (print): support dotted ties.
-
-2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-grobs.scm (all-grob-descriptions): switch off
- debugging
- (all-grob-descriptions): Arpeggio has Y-extent.
-
- * scm/define-music-properties.scm (all-music-properties): document
- length-callback and start-callback as "read-only".
-
- * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
- length-callback after creation.
-
- * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
- compressmusic -> compressMusic.
-
- * ly/music-functions-init.ly (oldaddlyrics): idem.
-
- * lily/parser.yy: NewLyricCombineMusic ->
- LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
-
-2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * ly/Welcome_to_LilyPond.ly: typo.
-
-2005-05-24  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond.tely: move changing-defaults to be
- before global issues.
-
- * Documentation/user/basic-notation.itely: move Transpose section
- here from advanced/Other.
-
- * Documentation/user/changing-defaults.itely,
- advanced-notation.itely: move Fonts to advanced, edit.
-
-2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/parser.yy (bare_int): remove rule.  From now on, we require
- # before negative integers.
-
-2005-05-23  Graham Percival  <gperlist@shaw.ca>
-
- * ly/property.ly: Update tieDotted to have the same form as slurDotted.
-
- * Documentation/user/lilypond.tely: change Unified index to
- LilyPond index.
-
- * Documentation/user/advanced-notation.itely,
- instrument-notation.itely: editing.
-
-2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/lily.scm (lilypond-all): Bugfix: return failed.
-
- * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
-
-2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/general-scheme.cc (ly:stderr-redirect): Rename from
- ly:port-move.  Needs to be stderr-specific on mingw.
-  Run fixcc.
-
-2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/general-scheme.cc (ly:port-move): Remove.
-
- * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
- windows.
-
- * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
- variables.  This eliminates the need for a gs.bat wrapper, which
- opens a console.
-
- * scripts/lilypond-invoke-editor.scm (running-from-gui?):
- * scm/lily.scm (running-from-gui?):
- * lily/main.cc[MINGW]: Remove isatty inversion, this is an
- artifact of not compiling with -mwindows.
-
- * scm/editor.scm: Define PLATFORM.
-
-2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
- can start to cut & paste lilypond-book fragments.
-
- * scm/define-music-types.scm (music-descriptions): remove
- UntransposableMusic
-
-2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (glyph-string): remove / before CIDs.
-
-2005-05-20  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/instrument-notation.itely: remove *Engraver.
-
- * Documentation/user/advanced-notation.itely: edit, rearrange.
-
-2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (glyph-string): take cid? argument. Use
- findresource iso. findfont for CID CFF fonts.
-
- * VERSION (PACKAGE_NAME): release 2.5.25
-
- * ly/Welcome_to_LilyPond.ly: add  \version
-
-2005-05-20  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/programming-interface.itely: move
- \displayMusic into its own section.
-
- * Documentation/user/basic-notation.itely: finish editing.
-
-2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * flower/file-path.cc (find): don't throw away file_name.dir, but
- append to it. Fixes \include with directories.
-
- * flower/include/file-path.hh (class File_path): don't derive from
- Array<String>.
-
- * flower/include/file-name.hh (class File_name): remove to_str0()
-
- * lily/hara-kiri-engraver.cc (acknowledge_grob): split
- Hara_kiri_engraver in separate file.
-
- * lily/slur-configuration.cc (score_encompass): oops, <? to min()
- translation went wrong. Fixes vertically translated slurs.
-
-2005-05-19  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/basic-notaton.itely: editing.
-
-2005-05-18  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/macros.itexi, basic-notation.itely:
- add @commonprop (commonly used properties) macro.
-
-2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
-
- * scripts/lilypond-book.py (invokes_lilypond): new function
- (main): only run fontextract if invokes_lilypond() is true.
-
- * lily/function-documentation.cc (ly_add_function_documentation):
- duh, use !=
-
- * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
-
- * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
-
- * scm/lily.scm (running-from-gui?): lowercase Darwin.
-
- * lily/function-documentation.cc (ly_add_function_documentation):
- use scm_hash_table_p() for checking.
-
-2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/advanced-notation.itely (Text scripts):
- Change nonexisting @internalsref{Text markup} to @ref{Text
- markup}.  Change @internalsref{Text script} to
- @internalsref{TextScript}.
-
- * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
-
-2005-05-17  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/tutorial.itely, basic-notation.itely,
- changing-defaults.itely: remove duplicate cindex entries
- that appear on the same page.
-
- * scm/define-grobs.scm: change default padding for TextSpanner.
-
- * Documentation/topdocs/AUTHORS.texi: update email address.
-
- * Documentation/user/global.itely: add info about \include.
-
-2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
- when running-from-gui.
-
- * scm/editor.scm (get-editor): Add platform defaults.
-
- * scm/backend-library.scm (postscript->pdf): Typo.
-
-2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
-
- * lily/font-config.cc (init_fontconfig): add warning about cache.
-
-2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
-
-2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
-
- * lily/horizontal-bracket.cc (print): Take care of the direction
- property so brackets above the stave point downwards.
-
- * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
- for HorizontalBracket so it doesn't end up within the stave.
-
-2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/GNUmakefile (default): Typo.
-
- * scm/lily.scm (PLATFORM): Export.
-
- * scm/framework-ps.scm (write-preamble)[MINGW]: Use
- load-font-via-GS, ttftool or fopencookie is broken on windows.
-
- * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
- -dSAFER, that is broken on windows.
-
-2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
- for FlexLexer.h
-
- * scripts/lilypond-invoke-editor.scm: remove stray -
-
-2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
- Fixes deprecation warning.
-
- * flower/include/string.icc (to_string): Only inline if
- -DSTRING_UTILS_INLINED.
-
- * lily/pango-font.cc (pango_item_string_stencil): Normalize file
- name.  Remove windows comment.
-
- * scm/editor.scm (slashify): New function.
- (get-editor-command): Use it.
- (get-command-template): Do not alter editor command if
- environment value includes `%(file)s' magic.
-
- * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
- (dissect-uri): Use it.
- (unquote-uri): Bugfix.
-
-2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (write-preamble): add TTF rule.
-
- * Documentation/topdocs/README.texi (Top): remove note about
- xdelta.
-
- * Documentation/topdocs/INSTALL.texi (Top): remove Flex
- requirement.
-
- * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
- function. Figure out where FlexLexer.h lives
-
- * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
-
-2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
- with Windows root in file name.
-
- * scm/backend-library.scm (ly:system): Only redirect output (using
- system and shell, ugh) if /dev/null is writable.
-
- * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
- windows icon.
-
- * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
- on Mingw.
-
- * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
- click.
-
- * flower/file-path.cc (is_dir, is_file): New function.  Actually
- use result of stat when available.
-
- * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
- absolute file name and root.
-
- * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
-
- * scm/editor.scm (get-editor-command): Typo: do not apply editor.
-
- * flower/file-name.cc (slashify): Bugfix, do substitute if no
- slashes in file name.
-
-2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/preface.itely (Preface): Run
- texinfo-all-menus-update.
-
- * scm/editor.scm (get-editor-command): Bugfix: allow full
- LYEDITOR setting, partial XEDITOR setting.  With typo fix.
-
- * Documentation/pictures/lilypond-48.xpm: New file.
-
- * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
-
- * ly/Welcome_to_LilyPond.ly: New file.
-
- * lily/main.cc (main): Only identify if we have a terminal.
-
- * scm/backend-library.scm (postscript->png)
- (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
- non-/bin/sh).
-
-2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
-
- * Documentation/topdocs/AUTHORS.texi: polish, update.
-
-2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/preface.itely (Notes for version 2.6): new
- notes for 2.6
-
- * lily/dynamic-engraver.cc (stop_translation_timestep): first set
- finished_span_, then call typeset_all(). Fixes spurious "Hairpin
- is not fully contained" warnings.
-
- * lily/slur-scoring.cc (get_bound_info): remove warning.
-
- * lily/staff-symbol-engraver.cc (process_music): start initial
- spanner in process_music(). This fixes overrides of StaffSymbol
- properties.
-
- * scm/framework-pdf.scm (Module): remove.
-
- * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
-
- * lily/ambitus-engraver.cc: formatting cleanups.
-
- * mf/feta-solfa.mf (Module): remove.
-
- * ChangeLog: more details about contributions.
-
-2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/align-interface.cc (align_elements_to_extents): warn if
- called too early. Fixes: disappearing-staff-lines.ly
-
- * VERSION (PACKAGE_NAME): release 2.5.24
-
-2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: Typo.
-
- * flower/string.cc (substitute): Take two strings or two
- characters.  Update callers.
-
-2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/file-name.cc (File_name): Slashify.
-
- * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
-
- * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
-
- * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
-
- * configure.in (gui_b): Use it.
-
- * lily/lilypond.rc.in: New file.
-
- * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
-
-2005-05-12  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/advanced-notation.itely: edit of Text
- section; clarify text scripts vs. text markup.
-
-2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/multi-measure-rest-engraver.cc
- (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
- separation items on start. Fixes mm rests in start of score.
-
- * lily/slur-scoring.cc (move_away_from_staffline): robustness,
- don't access StaffSymbol if not there.
- Fixes: crash-staff-symbol-engraver.ly.
-
- * lily/instrument-name-engraver.cc (class
- Instrument_name_engraver): data member first_. Create
- InstrumentName on start.
-
-2005-05-12  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/instrument-notation.itely: add guitar
- position.
-
- * Documentation/user/introduction.itely,
- Documentation/user/lilypond.tely,
- Documentation/user/tutorial.itely: begin pruning
- unused (duplicated) cindex entries and misc cleanup.
-
-2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
-
- * input/test/volta-chord-names.ly: Bring the explanation up to
- date.
-
-2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
-
- * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
- Specify `@documentencoding utf-8' for html, ignore warnings.
-
-2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
-
- * THANKS: Added bughunters.
-
-2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
-
- * lily/main.cc: update help string for `lilypond -H'.
-
- * po/fi.po: update.
-
-2005-05-10  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/advanced-notation.itely: minor fixes.
-
-2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/editor.scm: New module.
-
- * scm/lily.scm (gui-main): Use it.
-
- * scm/framework-gnome.scm (spawn-editor): Use it.
-
- * scripts/lilypond-invoke-editor.scm: Use it in new script.
-
-2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (load-font-via-GS):  new function.
-
- * lily/pango-font.cc (pango_item_string_stencil): add support for
- CID keyed font.
-
- * scm/output-ps.scm (glyph-string): add support for CID keyed font.
-
-2005-05-10  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/basic-notation.itely: add @ref.
-
- * Documentation/user/advanced-notation.itely: add example
- of 5/8 beaming.
-
-2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
-
- * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
- going through ps2pdf wrappers.
-
-2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
-
- * Documentation/user/instrument-notation.itely: petrucci note
- heads: updated docu
-
- * input/regression/note-head-style.ly: updated regression test;
- indentation fixes
-
- * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
- heads as default
-
- * mf/parmesan-heads.mf: minor editing; use musicological names
- (rather than optical description) as note head names
-
- * scm/output-lib.scm: complete petrucci heads
-
-2005-05-09  Pal Benko  <benkop@freestart.hu>
-
- * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
- heads, but bigger)
-
-2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc (main_with_guile): Remove no files check.
-
- * lily/main.cc (ly:usage): Export to Scheme.
-
- * scm/lily.scm (no-files-handler): New function.
-
- * scm/lily.scm (lilypond-main): Use it.
-
- * configure.in (gui_b): Add mbrtowc checking.
- Resurrect [utf8/]wchar.h checking.
-
-2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
-
- * Documentation/user/advanced-notation.itely (Metronome marks):
- Add link to the program reference for MetronomeMark
-
- * Documentation/user/lilypond-book.itely (An example of a
- musicological document): Correct the example using psfonts
-
-2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
-
- * po/fi.po: update after a lesson how to update entries against
- source.
-
- * po/TODO: document the lesson.
-
-2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * configure.in (gui_b): remove wcrtomb checking.
-
- * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
- bits. Patch by Matthias Neeracher. <neeracher@mac.com>
-
-2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
-
- * scripts/convert-ly.py: In the conversion to version 1.9.0,
- keep Scheme expressions and strings unmodified when doing the
- conversion to postfix notation for slurs and beams. Should
- hopefully solve most related conversion problems.
-
- * Documentation/user/lilypond-book.itely : Clarify and correct how
- to call dvips with -h psfonts.
-
-2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/instrument-notation.itely (Entering lyrics):
- Typo.  Fixes build.
-
-2005-05-09  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond-book.itely: document PSFONTS file.
-
- * Documentation/user/lilypond.tely, lilypond-book.itely,
- tutorial.itely: change references to 2.5.x to 2.6.x.
-
- * Documentation/user/instrument-notation.itely: clarified \addlyrics
- vs \lyricmode.
-
- * Documentation/user/invoking.itely: remove old info about
- lilypond-profile.
-
- * Documentation/topdocs/INSTALL.texi: remove old info about
- lilypond-profile, add warning about needing international fonts
- to build docs.
-
-2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/grob-info.hh (class Grob_info): make data member
- private. Changes throughout.
-
- * input/regression/alignment-order.ly: new file.
-
- * lily/vertical-align-engraver.cc (acknowledge_grob): read
- alignAboveContext and alignBelowContext
-
-2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/pfb.cc (LY_DEFINE): add cast.
-
- * scm/framework-ps.scm (write-preamble): embed CFFs if file name
- matches .otf
- (write-preamble): warn about unknown fonts.
-
- * lily/pfb.cc (Module): new function ly:otf->cff
-
- * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
- (get_otf_table): new function.
-
-2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/backend-library.scm (postscript->png): call lilypond-ps2png
- iso. ps2png.
-
-2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
-
- * po/fi.po: apply second round of update.
-
-2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/x11-color.scm (make-x11-color-handler): don't use
- #\sp. Apparently doesn't work on all platforms.
-
-2005-05-06  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/advanced-notation.itely, putting.itely,
- tutorial.itely, global.itely, introduction.itely: really minor fixes.
-
-2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.23
-
-2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
- convert to utf-8.
-
- * THANKS: Add translators for this release, convert to utf-8.
-
- * mf/GNUmakefile (MFTRACE_FLAGS):
- * buildscripts/substitute-encoding.py (outdir): Build fix: pass
- outdir as option (WAS: hardcoded).
-
-2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
- finished_span_
-
- * THANKS: add Hans Forbrich.
-
- * Documentation/topdocs/NEWS.tely (Top): document new feature.
-
- * Documentation/user/basic-notation.itely (Staff symbol): document
- start/stop staff. Reference to ossia.ly
-
- * input/test/ossia.ly: new example using stop and startStaff.
-
- * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
- in other words, don't create "|" barline at start of the score.
- (start_translation_timestep): don't set whichBar for start of score.
-
- * input/regression/staff-halfway.ly: use new functionality.
-
- * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
- start and stop staff based on events.
-
- * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
-
- * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
-
-2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/programming-interface.itely (How markups work
- internally ): remove \encoding reference.
-
-2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
-
- * scripts/convert-ly.py: Attempt to do a smarter update of
- text markups from versions < 1.9.0 with arbitrary nesting.
-
-2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
-
- * po/fi.po: convert to utf-8, and update.
-
-2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/lilypond.suse.spec.in: update from suse 2.4 package.
-
- * lily/*.cc: more <? >? to min/max changes
-
- * lily/include/interpretation-context-handle.hh: rename
- Interpretation_context_handle to Context_handle.
-
-2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
-
- * input/regression/GNUmakefile (local_delete): use `find` together
- with `xargs` to avoid too long argument-lists in cmd line.
-
-2005-05-04  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/introduction.itely: updates "About this manual".
-
- * Documentation/user/advanced-notation.itely,
- invoking.itely: minor fixes.
-
-2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * COPYING: add font exception. Update FSF address.
-
- * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
- should be taken without child context.
-
- * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
-
- * scm/define-markup-commands.scm (triangle): new command, as
- robust replacement for unicode Delta/Triangle.
-
-2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ps/music-drawing-routines.ps: add fillp argument.
-
- * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
-
- * lily/font-config.cc (init_fontconfig): don't add cff/
-
- * VERSION (PACKAGE_NAME): release 2.5.22
-
- * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
-
- * lily/grace-engraver.cc (consider_change_grace_settings): use
- is_alias(). Fixes problem with CueVoice grace notes.
-
- * lily/simultaneous-music-iterator.cc (construct_children): call
- Music_iterator::quit() for iterators that start out invalid. This
- fixes indefinitely continuing contexts.
-
- * buildscripts/substitute-encoding.py: new file
-
- * Documentation/user/basic-notation.itely (Basic polyphony): fix
- missing @end
-
- * scripts/lilypond-book.py (write_if_updated): print file name.
-
- * Documentation/user/basic-notation.itely (Explicitly
- instantiating voices): idem.
-
- * Documentation/user/advanced-notation.itely (Text spanners):
- remove stray { }
-
- * lily/context.cc (default_child_context_name): the default child
- is now first in accepts_list_.
-
- * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
- \defaultchild to all relevant contexts.  This fixes:
- drums-pitch.ly.
-
- (Probably also fixes similar problems with ancient
- transcriptions getting CueVoices instead of the desired voices.)
-
- * lily/context-def.cc (get_default_child): new function.
- (get_accepted): place default child in front of list.
-
- * lily/parser.yy (FIXME): add DEFAULTCHILD token.
-
- * lily/include/context-def.hh (struct Context_def): add
- default_accept_
-
-2005-05-03  Graham Percival  <gperlist@shaw.ca>
-
- * scm/define-grobs.scm: remove "remove-first" line, since
- the absent property is set to #f anyway.
-
- * Documentation/user/basic-notation.itely,
- advanced-notation.itely, instrument-notation.itely: minor
- fixes.
-
- * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
-
- * Documentation/user/advanced-notation.itely,
- changing-defaults.itely: consolidate Text stuff in
- advanced notation.
-
- * Documentation/user/global.itely: better docs for \header.
-
- * Documentation/user/putting.itely: new chapter; placeholder
- for future expansion.
-
- * Documentation/user/examples.itely: moved "suggestions for
- writing LP files" section into putting.itely.
-
- * Documentation/user/lilypond.itely: added new chapter,
- fixed the short table of contents.
-
-2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/beam-quanting.cc (quanting): robustness fix, don't produce
- infinity for unfeasible beams.
-
- * make/lilypond.fedora.spec.in (Group): idem.
-
- * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
-
- * mf/GNUmakefile (ALL_GEN_FILES): remove .map
-
- * scm/framework-ps.scm (write-preamble): extract CFF from OTF
- fonts directly.
-
- * buildscripts/gen-emmentaler-scripts.py (i): idem.
-
- * mf/GNUmakefile: remove all CFF rules.
-
- * scm/framework-ps.scm (ps-embed-cff): reinstate.
-
- * lily/open-type-font-scheme.cc (LY_DEFINE):
- new function ly:otf-font-table-data.
- (LY_DEFINE): new function otf-font?
-
-2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
- ($(outdir)/Fontmap.lily): idem.
-
- * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
- for PFAEmmentaler-XXX.pfa.
-
- * Documentation/user/music-glossary.tely (accidental): NL
- translation of accidental.
-
-2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/include/international.hh: Bugfix: include "string.hh".
-
- * lily/include/mingw-compatibility.hh: New file.
-
- * flower/include/libc-extension.hh (memrev): Rename from strrev.
-
- * configure.in: Search for mingw wcrtomb library.
-
-2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
-
- * scripts/convert-ly.py: Bug fix
-
- * Documentation/user/changing-defaults.itely (Common tweaks):
- Added example where the context has to be specified explicitly
- (MetronomeMark).
-
-2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/lilypond-book.py (ly_options): set timing to #f for
- notime option.
-
- * scripts/convert-ly.py (conv): typo.
-
- * flower/*.cc: remove <? and >?
-
- * lily/*.cc: remove <? and >?
-
- * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
- that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
- editor.
-
-2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/part-combine-engraver.cc: add space to variable list.
-
-2005-04-30  Graham Percival  <gperlist@shaw.ca>
-
- * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
- remove-first to false (matches docs)
-
- * Documentation/user/advanced-notation.itely: corrected docs
- concerning remove-first.
-
-2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
-
- * lily/part-combine-engraver.cc: make sure that the relevant
- properties are included in the documentation.
-
-2005-04-28  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond-book.itely: Bernard's docs
- for \betweenLilyPondSystem.
-
-2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
- remarks.
-
-2005-04-28  Pal Benko  <benkop@freestart.hu>
-
- * 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)
-
- * lily/include/mensural-ligature.hh: make 2 comments clearer
-
-2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
-
- * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
- to need_extra_horizontal_space; bugfix: use class scope to avoid
- global namespace pollution
-
- * Documentation/user/instrument-notation.itely (ligatures): added
- comment on possible future syntax change and how to work around
-
- * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
- (epiphonus, cephalicus): fine-tune shape of plica head for narrow
- intervals (fixes agnus dei example)
-
- * Documentation/user/instrument-notation.itely (white mensural
- ligatures): selected a more illustrative example
-
-2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
-
- * Documentation/index.html.in: specify utf-8 charset in meta content.
-
-2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * python/lilylib.py (make_ps_images): bugfixes; GS can produce
- empty 2nd page for single page.
-
- * scm/lily.scm: remove p&c definitions.
-
- * po/zh_TW.po (Module): new translation.
-
- * lily/lily-guile.cc (ly_chain_assoc): remove.
-
- * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
- (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
-
-2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/beaming-info.cc: remove infinity_i
-
- * scripts/abc2ly.py (out_filename): fix thinko with \version.
-
-2005-04-26  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/basic-notation.itely,
- instrument-notation.itely, advanced-notation.itely,
- changing-defaults.itely: minor fixes.  Added docs
- for colors to advanced-notation.itely.
-
- * Documentation/user/advanced-notation.itely: fixed compile
- problem and added Bernard's x11-color doc patch.
-
-2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
- alright this time round.
-
-2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/topdocs/INSTALL.texi (Top): idem.
-
- * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
-
- * VERSION (MAJOR_VERSION): release 2.5.21
-
- * scm/output-ps.scm (grob-cause): bugfix.
-
-2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * cygwin/*: Update.
-
- * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
- stuff.
-
- * scm/output-ps.scm (grob-cause): Bugfix.
-
- * scm/lily.scm (ly:load): Remove x11-color.
-
- * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
- quote executable, fixes getting version from program --with
- --options.
- (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
- $ac_exeect.
-
- * Documentation/user/GNUmakefile: Only build music-glossary with
- rendered lilypond snippets during web.
-
-2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * po/de.po: update.
-
- * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
-
-2005-04-22  Laura Conrad <lconrad@laymusic.org>
-
- * scripts/abc2ly:
- second title line append with punctuation dash character;
- encode abc2ly python strings in utf-8
-
-2005-04-21  Laura Conrad <lconrad@laymusic.org>
-
- * scripts/abc2ly fix chords (again)
-
-2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
-
- * scm/x11-color.scm: new file
- All x11 color names can be accessed with:
- #(x11-color 'ColorName),
- #(x11-color "ColorName") or:
- #(x11-color "color name")
- If the x11 color name is not recognised then it defaults
- to black
-
- * scm/lily.scm: amended to call scm/x11-color.scm
-
-2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/invoking.itely (Reporting bugs): comment out
- reference to online PNG bug repository.
-
-2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/translator-scheme.cc (ly:translator-property): Remove.
- Update callers.
-
- * lily/context-scheme.cc (ly:context-now): Move from translator.
- Update callers.
-
-2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * input/regression/grid-lines.ly (skips): refine example.
-
- * scm/define-context-properties.scm
- (all-user-translation-properties): doc autoBeamCheck
-
- * input/regression/grid-lines.ly (Module): new file.
-
- * lily/grid-point-engraver.cc (Module): new file.
-
- * lily/grid-line.cc (Module): new file.
-
- * lily/grid-line-span-engraver.cc (Module): new file.
-
- * lily/grid-line-interface.cc (Module): new file.
-
-2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
- missing parameter, actualy cdr through list.  Actually return a
- list with ENTRY removed (was '()).
-
- * scripts/convert-ly.py: Update.  Print warning if file cannot be
- opened.
- (do_conversion): Fix printing of continuation comma.
-
- * Documentation/user/advanced-notation.itely (Beam formatting):
- Remove refbugs about compound time and mixed duration.
-
- * scm/auto-beam.scm (default-auto-beam-settings): Write out all
- modulo moments explicitely.
-
- * lily/moment.cc (operator %): New function.
-
- * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
-
- * lily/translator-scheme.cc (ly:translator-now,
- ly:translator-property): New function.
-
- * scm/auto-beam.scm (default-auto-beam-check): New function.
-
- * lily/auto-beam-engraver.cc (test_moment): Use it.
-
- * flower/rational.cc (operator %): Bugfix.
-
-2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
-
- * scripts/abc2ly: Bugfix
-
-2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * python/fontextract.py (write_extracted_fonts): bugfix, too many
- %'s on EndFont comment.
-
- * lily/ledger-line-spanner.cc: some more words of explanation.
-
-2005-04-20  John Williams <williams@tni.com>
-
- * scripts/lilypond-book.py: htmlquote bugfix.
- Allow snippets to be given distinct filenames.
- Allow the default alt text to be overridden.
-
-2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
-
- * ly/performer-init.ly: Bugfix
-
- * THANKS: Added bughunters.
-
-2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
-
- * lily/auto-beam-engraver.cc (test_moment): Test exact measure
- position (was: use modulo measure length).
-
- * configure.in (no gui_b): Remove optional gtk+ requirement.
-
-2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/basic-notation.itely (Pitches): add
- LedgerLineSpanner.
-
- * lily/dynamic-engraver.cc (process_music): set right bound to
- script if present. Else, do not set.
- (acknowledge_grob): only set right bound of finished spanner to
- note column if no other bound is set.
-
- * python/lilylib.py (make_ps_images): switch back to png16m.
-
-2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scripts/lilypond-book.py (write_if_updated): Bugfix for not
- writing up to date file.  Add dvips usage suggestion.
-
- * scripts/convert-ly.py: Fix error message.
- Print usage if no files on command line.
- (usage): Add example usage.
-
- * input/test/compound-time.ly: New file.
-
- * input/test/circle.ly: New file.
-
- * Documentation/topdocs/NEWS.tely: Use them.
-
- * input/test/boxed-stencil.ly: Remove \score.
-
- * buildscripts/mf-to-table.py (base): Add .log dependency.
-
- * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
- pfa's.  Add .log dependency
-
- * scm/define-markup-commands.scm (lower): New command.
-
- * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
- make it default.
-
-2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
- also to finished cresc as right bound. This fixes:
- skip-string-decresc.ly
-
- * lily/slur-scoring.cc (get_bound_info): robustness: substitute
- relative_coordinate if extent is empty.
-
- * lily/stem.cc (width_callback): determine correct extent if flag
- is not there. This fixes slur-no-flag.ly
-
- * lily/grace-engraver.cc (consider_change_grace_settings): new
- function.
- (initialize): also consider_change_grace_settings() on
- initialization. Fixes large grace notes at start of score.
-
- * lily/break-align-interface.cc (do_alignment): don't translate if
- total_extent is empty.
-
- * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (grob-cause): don't add cwd if path starts
- with slash.
-
-2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: Remove tfm_path.
-
-2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/music-functions.scm (markup-expression->make-markup): fix
- bug with cons arguments of markup commands.
- (music->make-music): fix music expression property list building
-
-2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * aclocal.m4: Massage package names.
-
- * SCons updates.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.20
-
- * lily/stem.cc (calc_stem_info): add minimum Y extent of
- stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
-
- * lily/percent-repeat-engraver.cc (try_music): add measure before
- next_moment to future processing moment. Fixes:
- percent-repeat-mm-rest.ly
- (process_music): don't add moment for 2nd time.
-
- * input/regression/repeat-percent.ly: add mmrests as extra test.
-
- * lily/axis-group-engraver.cc (acknowledge_grob): read
- keepAliveInterfaces to decide what to kill.
-
- * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
- percent-repeat-interface to keepAliveInterfaces. This fixes
- percent-repeat-harakiri.
-
-2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * SCons updates.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
-
- * aclocal.m4: remove --enable-tfm-path configure option
-
- * input/test/ancient-font.ly (lowerStaff): clef name errors.
-
- * scm/backend-library.scm (postscript->png): newline after
- finishing command.
-
- * lily/paper-score-scheme.cc (LY_DEFINE): new file.
- (LY_DEFINE): ly:paper-score-paper-systems: new function
-
- * lily/score-scheme.cc (LY_DEFINE): require music argument.
-
- * lily/score.cc (default_rendering): use Music_output too.
-
- * input/test/chord-names-languages.ly (Module): rename file.
-
- * lily/text-spanner.cc: add bound-padding.
-
- * lily/paper-book.cc (systems): accept Paper_score
- iso. Paper_system vector.
-
- * input/regression/line-arrows.ly: new file.
-
- * lily/paper-score.cc (process): run get_paper_systems() only once.
-
- * lily/line-spanner.cc (line_stencil): add arrows.
-
-2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
-
- * lily/line-interface.cc (make_arrow): new function.
- (arrows): idem.
-
-2005-04-18  Mathieu Giraud  <magiraud@free.fr>
-
- * input/test/chord-names-german.ly: update for italian/french
- chords.
-
- * Documentation/user/instrument-notation.itely (Printing chord
- names): update.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/paper-score.hh (class Paper_score): remove unused
- prototypes.
-
- * lily/book.cc (process): add -COUNT to midi output.
-
- * lily/score.cc (book_rendering): remove outname argument
- (book_rendering): return list of Music_outputs.
-
- * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
-
- * lily/book.cc (process): loop over Music_outputs returned from
- Score::book_rendering().
-
- * lily/*.cc (width_callback): remove spurious "unused" warnings
- for assert (axis==[XY]_AXIS);
-
- * lily/include/music-output.hh (class Music_output): smobify class.
-
- * lily/include/paper-score.hh (class Paper_score): make members
- private.
-
- * lily/performance.cc (process): return #f iso. #<undefined>. This
- prevents #<undefined> leaking into GUILE-userspace.
-
-2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
-
-2005-04-17  Mathieu Giraud  <magiraud@free.fr>
-
- * scm/chord-name.scm : support for italian and french
- chords names.
-
- * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
- a space defined by chordPrefixSpacer when the root name is
- direclty followed by a prefix.
-
- * ly/engraver-init.ly : chordPrefixSpacer
- * scm/define-context-properties.scm : chordPrefixSpacer
- * ly/property-init.ly : italianChords, frenchChords
-
-2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/feta-din.mf: Remove.
-
- * mf/GNUmakefile (fontdir): Bugfix.
-
- * mf/SConstruct: Some updates.
-
- * SConstruct: Require pkg-config.
- (test_program): Bugfix for double digit version compares, use
- integer (not string-) compare.
- Optionally require gs 8.14.
-
- * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
-
- * lily/*: s/ifdef HAVE_*/if have/.
-
- * SConstruct (test_lib): New function.  Update pkg-config and some
- other requirements.
-
- * configure.in: Require pkg-config.  Enforce REQUIRE and version for
- freetype, pangof2t.
-
-2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * po/lilypond.pot, ...: Update using bison-CVS.
-
- * python/lilylib.py (make_ps_images): Fixo.
-
-2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * python/lilylib.py (make_ps_images): typo.
-
- * configure.in (gui_b): make bison optional.
-
- * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
-
-2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
-
- * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
- with one parameter can be defined in a LaTeX file when processed
- by lilypond-book this will be evaluated between the systems of
- a multi-system score. The parameter is the number of systems processed.
-
-2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * python/lilylib.py (make_ps_images): Escape newline.
-
- * Documentation/user/music-glossary.tely: Run
- texinfo-all-menus-update.
-
-2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/lily-library.scm (old-relative-not-used-message)
- (version-not-seen-message): Add input-file-name-location to message.
-
- * lily/parser.yy (lilypond): Add token aliases.
-
- * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
- not confuse with alteration.
- (alteration): Add.
-
-2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * python/lilylib.py (make_ps_images): use -dEPSCrop
-
- * VERSION (PACKAGE_NAME): release 2.5.19
-
- * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
- only put xrefs in info documentation.
-
- * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
- .pdf rule to tex-rules.make.
-
- * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
- from -systems.* output.
-
- * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
- directly, remove -$(PAGESIZE) target.
-
- * input/test/embedded-postscript.ly: update.
-
-2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
-
- * Documentation/user/changing-defaults.itely (Font selection):
- document font-name.
-
- * input/regression/font-name.ly: show Pango fonts for
- font-name. Update example.
-
- * lily/pango-select.cc (properties_to_pango_description): don't
- convert symbol font-size to number, but use to lookup.
-
- * python/fontextract.py (write_extracted_fonts): add VMusage 0.
-
- * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
- (NAME . FILE-NAME) tuples for font descriptions.
- (write-preamble): display BeginFont DSC comments.
-
- * python/fontextract.py (write_extracted_fonts): new file. Extract
- font resources from a PS file.
-
- * scripts/lilypond-book.py (option_definitions): --psfonts option.
- (Compile_error.process_include): do_file returns chunks.
-
- * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
-
- * make/lysdoc-targets.make: .texi is .PRECIOUS
-
- * scripts/lilypond-book.py (write_if_updated): new function.
-
-2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
-
-2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
-
- * input/regression/markup-syntax.ly: remove \score.
-
- * scm/define-markup-commands.scm (draw-circle): add fill argument
-
- * scm/stencil.scm (make-circle-stencil): add fill argument
-
- * ps/music-drawing-routines.ps: add fill argument.
-
- * ly/performer-init.ly: add CueVoice to MIDI too.
-
- * ps/music-drawing-routines.ps: new routine BeginEPSF /
- EndEPSF.
-
- * input/regression/markup-eps.ly: new file.
-
- * scm/framework-ps.scm (write-preamble): change order: vars should
- be inited before procedures.
-
- * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
- for EPS files.
-
- * scm/define-markup-commands.scm (epsfile): add epsfile command.
-
-2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * configure.in (gui_b): add check for ghostscript 8.15
-
-2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
- start of line. Fixes cresc-after-newline.ly
-
- * lily/source-file.cc (file_line_column_string): use get_column().
-
-2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/source-file.cc (get_column): utf-8 support for column numbers.
-
-2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/*: use message () iso progress_indication () for messages.
- Revise/uniformise user messages.
-
- * flower/warn.cc (progress_indication): New function.
- (message): Use it.  Fixes newline problems.
-
- * config.make.in (webdir): Sort out install dirs.
-
- * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
-
- * python/lilylib.py (command_name): Bugfix.
- (make_ps_images):
-
-2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * lily/main.cc: --help says what types of backends are availabe
-
-2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- Fix ./VERSION dependency, and without need to reconfigure.
-
- * lily/main.cc (setup_paths): Update.
-
- * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
-
- * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
-
- * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
- Add \line for some simplistic cases.
-
- * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
-
-2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
- to compile LY files (useful for adding eg. "-I" args)
- (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
- 2Gnome command for gnome backend.
- (LilyPond-command-formatgnome): call the 2Gnome command. key
- binding: C-c C-g
-
-2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
- depend on all PNG images.
-
-2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in: Bugfix: also link .map files.
-
-2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/music-functions.scm (music->make-music): generate
- a (make-music ...) sexpr from a music expression.
- (display-scheme-music): use guile pretty printer to display the
- make-music sexpr.
-
-2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/engraver-init.ly: reindent.
- Add CueVoice.
-
- * scm/music-functions.scm (music-pretty-string): handle moments
- too.
- (music-pretty-string): only print non-empty lists.
- (cue-substitute): create CueVoice context, which has smaller type.
-
- * lily/moment-scheme.cc (LY_DEFINE): new methods
- ly:moment-grace-{numerator,denominator}
-
- * lily/context-handle.cc: remove quit() method.
-
- * lily/font-config.cc (init_fontconfig): be verbose about font path.
- (init_fontconfig): success is 0, not !0
-
-2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/feta-nummer-code.mf (code): add plus glyph.
-
- * lily/tie.cc (print): idem.
-
- * lily/slur.cc (print): don't use thickness property for
- slur shape-thickness.
-
- * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
- while adding stencils.
-
- * scm/define-markup-commands.scm (with-color): with-color markup
- command.
- (whiteout): new markup command
- (filled-box): new markup command
-
-2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
- test for PDF docs.
-
- * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
- PFAAybabtu-Regular.  Fixes feta font in PDFs.
-
- Notes for tetex-3.0 make web:
-    psclean.map: s/uhv8a/uhvr8a/
-    config.ps add:
- p +psfonts_t1.map
- p +psclean.map
- p +typeface.map
-
-2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/music-functions.scm (music-pretty-string): fix bug with
- string argument.
-
-2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
-
- * stepmake/bin/add-html-footer.py (i18n): Bugfix.
-
-2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/lilypond-book.py (Lilypond_snippet.__init__):
- only process options if they're there.
- (write_file_map): add version-seen? to snippet-map.ly
-
-2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
-
- * scripts/lilypond-book.py (split_options): Bugfix.  Small code
- formatting cleanups.
-
- * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
- Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
-
-2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (ps-font-command): don't hash, just use
- name directly.
-
- * lily/main.cc (setup_paths): either add mf/out to search path or
- fonts/{otf,type1,etc}
-
- * lily/font-config.cc (init_fontconfig): either add mf/out to
- FontConfig or fonts/{otf,type1,etc}
-
- * GNUmakefile.in: don't put mf/ link in share/ dir.
-
- * lily/staff-spacing.cc: move same-direction-correction to
- note-spacing-interface
-
- * scm/lily.scm (lilypond-main): use variable argument count for
- exception handler.
-
- * lily/font-config.cc (init_fontconfig): add operator pacification
- message.
-
- * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
-
- * buildscripts/gen-emmentaler-scripts.py (i): generate
- PFAEmmentaler as well.
-
- * scm/framework-ps.scm (munge-lily-font-name): new function
- (write-preamble): hack: insert PFA equivalent of CFF into
- .PS. This makes LilyPond output printable on normal PS printers
- again.
-
- * buildscripts/gen-emmentaler-scripts.py (i): generate
- PFAEmmentaler.pfa aswell.
-
-2005-04-06  John Williams <williams@tni.com>
-
- * scripts/lilypond-book.py: refactor the compose_ly procedure.
-
-2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/page-layout.scm (default-page-make-stencil): always combine
- the header stencil, even if empty. This prevents the body text to
- reach up to the margins.
-
- * po/rw.po (Module): new file, for Kinyarwanda.
-
- * input/test/spacing-optical.ly (Module): new file.
-
- * lily/staff-spacing.cc: add same-direction-correction
-
-2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/introduction.itely (Engraving): Comment-out
- non-existent file.
-
-2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-grob-properties.scm (all-user-grob-properties): add
- same-direction-correction
-
- * VERSION: release 2.5.18
-
-2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/grob.cc (mark_smob): Check pscore->layout_ before
- dereferencing.  Fixes make web.
-
- * lily/midi-stream.cc: Handle unwritable midi file.  Include
- errno.h.
-
- * Documentation/user/: Fix links.
-
-2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/text-interface.cc (Module): rename from text-item.cc
-
- * input/regression/apply-output.ly (texidoc): function naming fix.
-
- * lily/time-signature-performer.cc (derived_mark): new function.
-
- * lily/lily-parser-scheme.cc:  print mapped file name for progress
-
- * scripts/lilypond-book.py (find_linestarts): new function.
- (find_toplevel_snippets): keep track of line numbers.
-
- * lily/key-performer.cc (try_music): remove FIXME warning, gobble
- all key changes.
-
- * ly/declarations-init.ly (partCombineListener): use
- ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
-
- * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
-
-2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/text-item.cc: Fix link.
-
- * Documentation/user/changing-defaults.itely (Changing defaults):
- Fix programs reference links.
-
- * Documentation/user/music-glossary.tely: Convert to utf-8.
-
-2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/lilypond-vars.make: remove TEXMF from variables.
- remove DEB_BUILD pk font variables.
- remove GUILE_LOAD_PATH
- remove TeX memory vars.
-
-2005-04-04  Werner Lemberg  <wl@gnu.org>
-
- * lilypond/scm-option.cc (ly_option_usage): Add final newline.
-
-2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ps/lilyponddefs.ps: remove reencode-font
-
- * lily/simple-spacer.cc (add_columns): also compare
- directly. Column rank doesn't distinguish between broken and
- unbroken columns. This fixes large spaces before time sig changes.
-
- * Documentation/user/point-and-click.itely: document ly:set-option.
-
- * lily/grob.cc (get_uncached_stencil): only set grob-cause if
- point_and_click_global is set.
-
- * lily/scm-option.cc (LY_DEFINE): add point-and-click
- ly:set-option argument.
-
-2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in: Include symlinks in webball.
-
- * Documentation/user/GNUmakefile (source-links): Add symlinks to
- source dir for split and non-split manuals.
-
- * Documentation/user/*y: Fix @uref/@inputfile links for
- split/non-split HTML documents.
-
- * Documentation/user/GNUmakefile (local-WWW): Do not generate
- .ps.gz.
-
-2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in: Add newline.
-
-2005-04-01  Erlend Aasland  <erlenda@gmail.com>
-
- * tex/lilyponddefs.tex: use color instead of xcolor
- * scm/output-tex.scm: minor editing
-
-2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/music-functions.scm (display-scheme-music): pretty printer
- for music expressions.
-
-2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * buildscripts/install-info-html.sh (index_file): Fix link.
-
-2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
-
- * Documentation/index.html.in: Add size estimates with some big pages.
-
- * Documentation/user/tutorial.itely (Running LilyPond for the
- first time): Add/replace some @rglos links.  TODO: add more
- @rglos links in tutorial, test non-intrusiveness (.css).
-
- * stepmake/bin/add-html-footer.py (do_file): Remove info's
- annoying's indication of referencing external document.
-
- * Documentation/user/GNUmakefile: Split version of glossary too.
- * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
- links, not only for html.
-
- * Documentation/user/introduction.itely: Fix some links for other
- than html, do not use `here' as link name.
-
-2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/documentation-generate.scm (string-append): Fix @usermanref,
- @glossaryref.
-
-2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/page-layout.scm (default-page-make-stencil): only add header
- if existing and not empty. Fixes spurious programming error.
-
- * lily/span-bar.cc (print): don't make rounded edges for spanbars.
-
-2005-03-31  Erlend Aasland  <erlenda@gmail.com>
-
- * scm/output-tex.scm: implement {re,}setcolor
- * tex/lilyponddefs.tex: use color package
-
-2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
- additions to website.
-
- * Documentation/user/lilypond.tely: Remove reference to ps.gz.
-
- * Documentation/user/macros.itexi: Fix @usermanref html links in
- split documents: use @inforef.
-
-2005-03-30  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/programming-interface.itely: minor fix.
-
- * Documentation/user/advanced-notation.itely: added info to
- Metronome markings.
-
-2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
- use box-stencil.  Remove y-padding argument.
- (make-stencil-circler): New function.
-
- * buildscripts/lilypond-words.py (F):
- * elisp/SConscript (a):
- * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
- * vim/SConscript (a):
- * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
-
- * lily/general-scheme.cc: Build fix.
-
- * scm/markup.scm:
- * input/regression/markup-scheme.ly:
- * input/regression/markup-syntax.ly: Drop 'new-' from name.
-
- * scm/stencil.scm (make-circle-stencil): New function.
-
- * scm/define-markup-commands.scm (draw-circle): Use it.  New
- name (was cicle).  Update callers.
- (circle): New markup command, similar to box.
-
- * scm/stencil.scm (circle-stencil): New function.
-
-2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
-
- * configure.in: Detect libutf8/wchar.h variant.
-
- * stepmake/aclocal.m4: Modify shared size test.
-
-2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
-
-2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
-
- * VERSION (PACKAGE_NAME):  release 2.5.17
-
-2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/backend-library.scm (postscript->png): Fix comment and png
- message.
-
- * GNUmakefile.in (link-tree): Fix locales.
-
-2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/stencil-scheme.cc (LY_DEFINE): change to
- ly:stencil-aligned-to, non mutating.
-
- * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
-
- * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
-
- * lily/quote-iterator.cc (derived_mark): call
- Music_wrapper_iterator::derived_mark() too.
-
- * lily/grace-engraver.cc (derived_mark): change signature, add
- const.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * SConstruct (symlink):
- * GNUmakefile.in (link-tree): Add scripts to prefix.
-
- * lily/general-scheme.cc (ly:effective-prefix): New function.
-
- * scm/backend-library.scm (postscript->png): Use it.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/paper-score.cc (process): don't delete grobs after
- producing stencils.
-
- * scm/part-combiner.scm (determine-split-list): switch off
- debugging info.
-
- * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
- if available.
-
- * scm/define-context-properties.scm
- (all-user-translation-properties): add stringNumberOrientations.
-
- * lily/new-fingering-engraver.cc (position_scripts): make generic,
- so fingering and string-numbers are separately controlled.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
- not use debugging.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
-
- * config.hh.in: add HAVE_FONTCONFIG.
-
- * Documentation/user/instrument-notation.itely (String number
- indications): new node.
-
- * input/regression/new-markup-syntax.ly (texidoc): add circle.
-
- * lily/new-fingering-engraver.cc (add_string): new function.
- (acknowledge_grob): accept string-number-event as well.
-
- * scm/define-markup-commands.scm (circle): new markup command.
-
- * scm/output-lib.scm (print-circled-text-callback): new function.
-
- * lily/GNUmakefile: move ifeq after include stepmake.make.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * config.make.in (HAVE_LIBKPATHSEA_SO):
- * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
-
- * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
- add KPATHSEA_LIBS.
-
- * debian/watch:
- * debian/control: Update.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * input/test/title-markup.ly (spaceTest): remove.
-
- * input/test/embedded-tex.ly (Module): remove.
-
- * input/test/music-box.ly: use 'name property, not ly:music-name.
-
- * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
-
- * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/INSTALL.texi (Top): Remove information
- about xdeltas.  Add information about CVS.
-
- * scm/lily.scm (lilypond-main): Fix invocation of handler,
- gracefully handle failed files.
-
- * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
-
- * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
- small fixes.
-
- * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
- No unnecessarily specific i18n messages.  Remove stray `1'.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/lys-to-tely.py (strip_extension): add utf-8
- documentencoding
-
- * scm/documentation-lib.scm (texi-file-head): set utf-8
- documentencoding.
-
- * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
- Delta, not the Symbol one.
-
- * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
- for the .map file.
-
- * Documentation/topdocs/INSTALL.texi (Top): add running
- requirement as compilation requirement.
-
-2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/mutopia-index.py (headertext): add h1 header and
- utf-8 charset meta field.
-
- * input/GNUmakefile: prune example list.
-
- * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
- options.
-
- * lily/slur-scoring.cc (get_base_attachments): only look at stem
- extent for visible stems.
-
- * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
-
-2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/INSTALL.texi (Top): Updates.
-
- * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
-
-2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
- pass inf/nan into slur scoring.
-
- * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
- page.
-
- * scripts/abc2ly.py (dump_voices): use alphabet().
-
-2005-03-27  Jeff Smith <whydoubt@yahoo.com>
-
- * mf/GNUmakefile (depth): use $(FONTFORGE).
-
-2005-03-27 Matthias Neeracher <neeracher@mac.com>
-
- * flower/include/virtual-methods.hh: simplify. Patch by
-
-2005-03-25  John Williams <williams@tni.com>
-
- * scripts/lilypond-book.py (main): add png for HTML too, guess
- only if necessary.
-
-2005-03-25  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/topdocs/INSTALL.texi: now recommends
- lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
-
- * Documentation/user/basic-notation.itely,
- Documentation/user/tutoria.itely: warn about
- only one (phrasing) slur at once.
-
-2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
-
-2005-03-23  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/basic-notation.itely: fixed info about
- ending a (de)cresc.
-
- * Documentation/user/lilypond-book.itely: fixed
- lilypond-book filter example and warned about not doing
- --filter and --process at the same time.
-
-2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
-
- * lily/parser.yy (bass_number),
- Documentation/user/instrument-notation.itely (Figured bass):
- Add the possibility to use text markup in figured bass.
-
-2005-03-19  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/global.itely: added info about naming
- identifiers and breakbefore.
-
- * Documentation/user/invoking.itely: added info about batch
- processing files with convert-ly, removed references to TeX
- in the jail section.
-
- * Documentation/user/examples.itely: possibly fixed piano
- dynamics.
-
- * Documentation/user/advanced-notation.itely: added info
- about removing other types of Staff.
-
- * Documentation/user/instrument-notation.itely: possibly
- fixed piano staff line switch.
-
- * Documentation/user/changing-defaults.itely: added info
- about using normal font in titles.
-
-2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PATCH_LEVEL): release 2.5.16
-
- * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
- explicitly.
-
-2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
- whitespace.
-
- * python/lilylib.py (make_ps_images):
- * scm/backend-library.scm (postscript->pdf, postscript->png):
- Quote file name.  Use format rather than string-append juggling.
-
-2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * python/lilylib.py (make_ps_images): add x to -g argument.
-
- * lily/key-performer.cc (create_audio_elements): don't use
- scm_eval_string. Check for minor 3rd directly.
-
- * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
- (sarabandeCelloGlobal): key is D minor, not F major.
-
-2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- Fix truncated --png output (Peter Danenberg).
-
- * python/lilylib.py (make_ps_images):
- * scripts/ps2png.py (copyright): Grok --papersize option.
-
- * scm/backend-library.scm (postscript->png): Add parameter
- PAPERSIZE.  Update callers.
-
- * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
- Fixes symbol placement.
-
- * lily/spanner.cc:
- * lily/stencil.cc: Use "libc-extension.hh" (WAS:
- <libc-extension.hh>).
-
-2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Nitpick run.
-
- * buildscripts/fixcc.py: Update.
-
- Builddir run fixes.
-
- * HACKING (datadir): Add VERSION.
-
- * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
- higher up.
-
-2005-03-15  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
- diagonal stem doesn't become thinner.
-
-2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * buildscripts/fixcc.py: Fixes (Werner).
-
-2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
- Emmentaler/Aybabtu.
-
- * GNUmakefile.in: fix lilypond-words path.
-
- * po/tr.po: update to 2.3.21
-
- * lily/new-fingering-engraver.cc (position_scripts): take priority
- from head position.
-
- * input/regression/finger-chords-order.ly (texidoc): new file.
-
-2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * make/ly-rules.make:
- * stepmake/aclocal.m4:
- * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
-
- * buildscripts/fixcc.py (rules): Leave space after operator.
-
-2005-03-14  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
- top of the glyph with smooth curve.
-
-2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/global.itely (Page layout): remove
- printpagenumber.
-
-2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
-
- * input/regression/mensural-ligatures.ly: new file (with examples
- compiled by Pal Benko).
-
- * Documentation/user/instrument-notation.itely: Bugfix: yet some
- other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
- musicglyph access.  Many small beautifications in ancient
- examples.
-
- * input/test/divisiones.ly: fixed indentation; small
- beautifications
-
- * ly/engraver-init.ly: added FIXME comment
-
- * scripts/lilypond-book.py,
- Documentation/user/lilypond-book.itely: added music fragment
- option "packed" to lilypond-book
-
- * Documentation/user/instrument-notation.itely: Bugfix: added
- missing LedgerLineSpanner color setting in several places.  Added
- music fragment option "packed" to VaticanaContext example.
-
-2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-grobs.scm (all-grob-descriptions): switch off
- Hyphen_spanner::set_spacing_rods
-
- * lily/lyric-hyphen.cc (print): add padding between syllable and
- hyphen.
- (print): shorten hyphen in tight situations (determine using
- minimum-length)
-
- * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
- 0.4pt.
-
-2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * ly/titling-init.ly (bookTitleMarkup): Refinements.
-
- * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
- header/footer markings for regression-test.
-
- * scm/backend-library.scm (output-scopes, header-to-file): Move
- from framework-tex.scm.
-
- * scm/framework-ps.scm (output-framework)
- (output-preview-framework):
- * scm/framework-eps.scm (output-classic-framework)
- (output-framework): Use it.  Fixes collated files.
-
-2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * input/sakura-sakura.ly:
- * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
-
- * buildscripts/guile-gnome.sh: Update.
-
- * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
-
- * mf/aybabtu.pe.in: Capitalize Aybabtu.
-
-2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
- culprit: always exit the loop if we find a rod, even if it has
- distance < 0.
-
- * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
- algorithm.
-
- * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
- $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
-
- * scm/output-svg.scm (dashed-line): new  function body.
-
- * GNUmakefile.in: create .htaccess.
-
-2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/NEWS.tely (Top): Fix text example.
-
-2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.15
-
- * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
-
- * scm/framework-svg.scm (output-framework): put scaling in
- document header. Apply scaling only once.
- (output-framework): dump page size in px, not mm.
-
- * scm/lily-library.scm (modified-font-metric-font-scaling): rename
- from font-size.
-
- * lily/paper-outputter-scheme.cc (LY_DEFINE):
- ly:outputter-output-scheme, new function.
-
- * scm/output-svg.scm (pango-description-to-svg-font): new function
-
-2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
- target.
-
- * input/typography-demo.ly: new file.
-
-2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/global.itely (File structure): Add markup blocks
- to toplevel expressions.
- (Multiple movements, Creating titles): Add markup blocks.
-
- * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
- <libc-extension.hh>).
-
- * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
-
- * flower
- * lily
- * kpath-guile: Nitpick run: buildscripts/fixcc.py.
-
-2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/accidental.cc: special bboxes for natural.
-
- * mf/feta-toevallig.mf: make stems heavier.
-
- * lily/dynamic-text-spanner.cc (print): add bound padding for edge
- texts as well.
-
- * mf/feta-klef.mf: revise.
-
- * mf/feta-schrift.mf: make thinning of accent less pronounced.
-
- * mf/feta-klef.mf: add rounded curve at top.
- make thinnib a little heavier.
-
-2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/parser.yy (book_body): Oops, allow \markup in \book too.
-
- * buildscripts/fixcc.py: New file.
-
- * input/regression/utf8.ly: Update Debian font description.
-
-2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: Fix test.
-
-2005-03-09  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/invoking.itely: added Sebastino Vigna's
- docs for the --jail option.
-
-2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/stem.cc (print): only produce stemlets if there are no
- noteheads on this stem.
-
- * lily/note-spacing.cc (stem_dir_correction): robustness fix:
- don't crash on stemlet (visible stem without heads).
-
- * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
- unbroken situations.
-
- * scm/output-lib.scm (center-invisible): new function.
-
- * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
- wishes to determine loose column space.
-
- * lily/font-config.cc (init_fontconfig): add
- fonts/{otf,type1,cff}  to path.
-
- * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
-
- * mf/GNUmakefile (Module): install all fonts under otf/
-
- * scm/framework-ps.scm (Module): read fonts from fonts/extension,
- replace /fonts/otf/ by /ps/
-
-
-2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
-
- * lily/book.cc (process): Oops, add score_.header_.
-
- * lily/paper-book.cc: Fold hearders, score and texts into scores_.
-
- * lily/parser.yy: Handle toplevel and book texts as score.
-
- * scm/page-layout.scm (default-page-make-stencil):
- Bugfix: (page-properties rename.
-
- * scm/backend-library.scm (ly:system): Typo.
-
-2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * stepmake/stepmake/executable-targets.make (installexe): don't
- strip installed executables
-
- * lily/font-select.cc (get_font_by_design_size): revert
- pango_description_string as well.
-
- * lily/system.cc (set_loose_columns): put loose column just left
- of next column.
-
- * lily/include/group-interface.hh (extract_grob_array): rename
- from Pointer_group_interface__extract_grobs
-
- * input/regression/ledger-line-minimum.ly (texidoc): new file.
-
- * lily/ledger-line-spanner.cc (set_spacing_rods): new
- function. Keep ledgered note heads at a minimum distance.
- Introduce minimum-length-fraction
- (print): introduce length-fraction property.
-
-2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * tex/GNUmakefile: remove latin1.enc rules.
-
-2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/titling.scm: Typo.
-
- * input/regression/score-text.ly: Really add.
-
- * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
-
-2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/open-type-font-scheme.cc:  new file.
-
-2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/titling.scm (layout-extract-page-properties): Rename from
- page-properties.  Update callers.
-
- * lily/lexer.ll (Lily_lexer):
- * lily/parser.yy: Junk lyric_markup state.
-
- * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
-
- * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
- Add texts parameter.
-
-2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/lexer.ll (lyric_markup): New mode.
- (Lily_lexer::push_lyric_markup_state): New method.
- (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
-
- * lily/parser.yy (book_body):
- (toplevel_expression): Grok \markup texts.
-
- * lily/score-scheme.cc (ly:music-scorify):
- * scm/lily-library.scm (collect-music-for-book): Take texts
- parameter.
-
- * lily/score.cc (texts_): New member.
-
- * lily/paper-book.cc (systems): Format score texts.
-
- * score-text.ly: New file.
-
- * ttftool/SConscript:
- * kpath-guile/SConscript: New file.
-
- * lily/SConscript:
- * SConstruct: Update.
-
-2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.14
-
-2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc: Add dummy xgettext markers.
-
-2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
- requirements
-
- * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
- executable is < 40k
-
- * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
- hack.
-
-2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/libc-extension.cc:
- * flower/include/libc-extension.hh: [Open]BSD simply cast
- cookie/funopen declarations.
-
- * stepmake/aclocal.m4: Check for libkpathsea.so.
-
- * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
- dl_kpse_find_file.
-
-2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
- (open_library): alternative for static library.
-
-2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
-
- * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
-
- Drop run-time dependency on teTeX.
-
- * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
-
- * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
- KPATHSEA_LIBS in LIBS.
- (STEPMAKE_DLOPEN): New function.
-
- * lily/font-config.cc (init_fontconfig): Use dir for directory,
- not path.
-
- * flower/file-path.cc (directories): Rename from paths, as this
- return an array of directories (a single path).
-
-2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
-
- * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
- new ly:kpathsea-find-file
-
- * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
-
- * kpath-guile/GNUmakefile: new file
-
- * buildscripts/gen-emmentaler-scripts.py (i): generate
- emmentaler-X.fontname as well.
-
- * buildscripts/ps-embed-cff.py: new script
-
- * scm/lily-library.scm: remove ps-embed-cff.
-
- * scm/framework-ps.scm (write-preamble): don't use kpathsea for
- font loading.
-
- * scm/font.scm (add-music-fonts): load dynamics/numbers through
- fontconfig as well.
-
- * lily/font-config.cc (init_fontconfig): add cff/ too.
-
- * ly/generate-embedded-cff.ly: capitalize.
-
- * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
- so as to register the pango font.
-
- * lily/font-config.cc (init_fontconfig): add
- prefix/{otf,type1,mf/out} to fontconfig path.
-
- * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
- overrides all.
-
- * configure.in (gui_b): remove ec mftrace check
-
- * config.hh.in: use lilypond-Major.Minor as data directory.
-
- * scm/framework-ps.scm (dump-page): use output-units for landscape.
-
- * buildscripts/gen-emmentaler-scripts.py (i): lower case file
- name.
-
-2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
- error messages.
-
- * flower/libc-extension.cc:
- * flower/include/libc-extension.hh: [Open]BSD fixes for
- cookie/funopen declarations.
-
-2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
- emmentaler.
-
- * lily/score-engraver.cc (initialize): remove check for ecrm10 /
- lcrm10.
-
- * scm/define-markup-commands.scm (fontsize): new markup
- command. Also set baseline-skip
-
-2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
-
- * lily/main.cc (do_chroot_jail): paranoia security for webserver
- use.
-
-2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
-
- * lily/pdf.cc: remove PDF related files
-
-2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
- <hamamatsu@gmx.de>
-
-2005-03-05  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/advanced-notation.itely: first draft
- of reorg done.
-
- * Documentation/user/global.itely: fixed (sub)section
- bits of MIDI.
-
-2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * cygwin/mknetrel (extras): Bufix (Bertalan).
-
- * Documentation/user/basic-notation.itely (Chords): @ref fix.
- * Documentation/user/instrument-notation.itely (Introducing chord
- names): Compile fix: must have unique name.
-
-2005-03-02  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/instrument-notation.itely: reorg.
-
-2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm:
- * scm/output-svg.scm: Fix font scaling.
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
- what link to use best.
-
- * Documentation/user/instrument-notation.itely (Ancient accidentals):
- * Documentation/user/tutorial.itely (Automatic and manual beams):
- Fix @ref.
-
- * lily/tweak-registration.cc (replace_grob_tweak): New function.
- * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
- * scm/framework-gnome.scm (tweak): Use it.
-
-2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
-
- * scm/output-ps.scm (white-text): reinstate white-text
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-ps.scm (offset-add): Remove.
-
- * scm/lily-library.scm (offset-flip-y): New function.
- * scm/framework-gnome.scm (tweak): Use it.
-
- * scm/output-gnome.scm (grob-cause): Add parameter.
-
- * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
- * scm/output-ps.scm (url-link): Move.
- (white-text): Warn user about brokenness.
-
- * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
- wrt ghostscript.
-
-2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/slash-repeat-engraver.cc (try_music): always make slashes
- if body length smaller than measure length.
-
- * scm/define-markup-commands.scm (with-url): oops. use Y extent
- for Y.
-
- * ly/titling-init.ly (tagline): put default tagline in \paper
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/kpath.cc:
- * lily/pdf.cc (Pdf_file): Use more generic error messages.
-
- * scm/lily-library.scm (version-not-seen-message): New function.
- * ly/init.ly: Use it.
-
- * scm/page-layout.scm (ly:optimal-page-breaks): Display page
- breaks as progess.
-
- * scripts/lilypond-book.py (do_process_cmd): Do not lump
- whitespace with l10n message.
-
- * scm/framework-tex.scm (convert-to-ps):
- (convert-to-dvi): Do not use overly specific l10n messages.
-
- * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
-
- * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
- merge stderr with stdout.
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/libc-extension.cc: Tested BSD compile fix (Matthias
- Neeracher).
-
-2005-02-29  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/instrument-notation.teily: moved
- \arpeggio to Basic.
-
- * Documentation/user/advanced-notation.itely: Articulation to
- Basic, a bunch of stuff from Basic moved to Advanced.
-
- * Documentation/user/basic.itely: swapped various sections,
- reorganized Basic.
-
-2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * flower/memory-stream.cc:
- * flower/libc-extension.cc: Remove obsolete #undefs.
-
- * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
- more carefully.
-
-2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
- dependency.
-
- * VERSION (PACKAGE_NAME): release 2.5.13
-
- * GNUmakefile.in (web-ext): don't ship ps.gz
-
- * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
- stdout
-
-2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
- without libintl.  Now it compiles too.
-
-2005-02-28  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/basic-notation.itely,
- instument-notation.itely, advanced-notation.itely:
- split up contents of notation.itely.
-
- * Documentation/user/notation.itely: file removed.
-
- * Documentation/user/invoking.itely, converters.itely:
- moved convert-ly info to invoking.itely.
-
- * Documentation/user/global.itely, changing-defaults.itely,
- sound-output.itexi: moved global settings, file layout, and
- sound into global.itely.
-
- * Documentation/user/sound-output.itexi: file removed.
-
- * Documentation/user/lilypond.tely: removed links to
- notation.itely and sound.itely.
-
-2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
-
- * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
-
- * THANKS: add sponsor.
-
- * scm/define-markup-commands.scm (with-url): new markup command.
-
- * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
- tagline.
-
- * scm/output-tex.scm (url-link): stub.
-
- * scm/output-ps.scm (url-link): new function.
-
- * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
- ly:set-point-and-click
-
-2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * ps/music-drawing-routines.ps (mark_file_line): Switch Action
- based on pdf-viewer setting.
-
- * scm/framework-ps.scm (write-preamble): Find and set preferred
- pdf-viewer.
-
-2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/point-and-click.itely: update for PDF point &
- click.
-
- * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
- editors based on EDITOR setting.
-
-2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/*: Oops, more grand 2005 replace bits.
-
-2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ps/music-drawing-routines.ps: new routine: insert PDF mark
-
- * scm/output-ps.scm (grob-cause): point & click support for
- PostScript
-
-2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/input-scheme.cc (LY_DEFINE): rename to
- ly:input-file-line-column
-
-2005-02-26  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/examples.itely: small fix from Steve Doonan.
-
- * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
-
- * THANKS: added Yuval Harel.
-
- * Documentation/user/{various}: inserted two spaces after a period.
-
- * Documentation/user/lilypond.tely: added framework for reorg.
-
- * Documentation/user/basic-notation.itely, instrument-notation.itely,
- advanced-notation.itely, global.itely: new files, placeholder for
- future reorg.
-
-2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
-
- * Documentation/user/notation.itely: revamped Polyphony section
-
-2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/lilypond-book.itely (Music fragment options):
- doc fontload.
-
- * Documentation/user/changing-defaults.itely (Text encoding): add
- fontload option to utf8 include
-
- * scripts/lilypond-book.py (compose_ly): add fontload option
-
- * scm/framework-eps.scm (dump-stencils-as-EPSes): add
- force-eps-font-include option.
-
- * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
- black triangle
-
- * Documentation/user/invoking.itely (Editor support): remove
- lilypond-latex section.
-
- * scripts/lilypond-latex.py (Module): remove script.
-
- * cygwin/lily-wins.py (stat): write to .lylog, so as not to
- overwrite .log.
-
- * lily/main.cc: remove -m, --no-layout
-
- * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
- to define. We don't want to override fprintf everywhere.
-
-2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * cygwin/lilypond.hint:
- * cygwin/README.in: Update dependencies.
-
- * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
- Bugfix: do not pollute CPPFLAGS, LIBS.
-
- * cygwin/mknetrel (extras): Cross compile fixes.
-
- * ttftool/util.c:
- * ttftool/ttfps.c:
- * ttftool/ps.c: #include libc-extension.hh
-
- * flower/include/libc-extension.hh:
- * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
- wrapper using funopen.
- (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
- handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
-
- * config.hh.in:
- * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
- (AC_CHECK_HEADERS): Add libio.h
-
- * scripts/convert-ly.py: Uniformize, internationalize.
- (2.5.2): Remove fatal encoding rule.
- (2.5.13): Handle latin1 encoding gracefully.
-
-2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * HACKING: Fix line breaks.
-
-2005-02-23  Werner Lemberg  <wl@gnu.org>
-
- * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
- contains those two files.
-
-2005-02-21  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
- to improve overlap removal process.
-
- * mf/feta-slag.mf (draw_trillelement): Add parameter to control
- left and right ending.  This ensures better overlapping.
- Update all callers.
- ("lineprall"): Don't use draw_gridline to get better overlapping.
-
-2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
-
- * Documentation/topdocs/NEWS.tely (Top): oops.
-
-2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * HACKING: new file.
-
- * input/regression/utf8.ly (portuguese): added a portuguese example
- to show latin1 accents.
-
-2005-02-21  Pal Benko  <benkop@freestart.hu>
-
- * lily/mensural-ligature-engraver.cc:
- * lily/mensural-ligature.cc:
- * lily/include/mensural-ligature.hh: new algorithm implemented
-
- * scm/define-grob-properties.scm: join-left killed (add-join may
- be used); join-left-amount changed to join-right-amount
-
-2005-02-21  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: small but urgent fix.
-
-2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
-
- * lily/duration-scheme.cc: bugfix: correct parameters to
- SCM_ASSERT_TYPE.
-
- * THANKS: added Pal.
-
- * Documentation/user/notation.itely: bugfix: unTeXified
- $\\backslash$.  Bugfix: yet another glyph renaming victim:
- "timesig.*x/y" -> "timesig.*xy".
-
-2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.12
-
-2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/engraver-init.ly: set tieWaitForNote to #t by default
-
- * configure.in (gui_b): bump GUILE requirement to 1.6.5
-
- * Documentation/topdocs/NEWS.tely: add inputfileref macro.
-
- * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
-
-2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
- latin1..utf-8.
-
- * input/regression/stanza-number.ly:
- * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
-
- * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
-
-2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
- NEWS. Refer to website for older news.
-
- * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
- .HTML. This should be done for specific servers only.
-
- * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
- .ly image examples.
-
- * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
- in layer 0 too.
-
- * scm/define-context-properties.scm
- (all-user-translation-properties): add tieWaitForNote
-
- * scm/define-grobs.scm (all-grob-descriptions): add
- Tie_column::before_line_breaking
-
- * lily/tie.cc (get_column_rank): new function
-
- * lily/tie-column.cc (before_line_breaking): new function.
- (werner_directions): take into account ties that start on
- different columns.
-
- * lily/score-engraver.cc (set_columns): move add_column() so we
- have column rank available.
-
- * lily/tie.cc (get_column_rank): new function.
-
- * input/regression/utf8.ly (japanese): add japanese lyrics.
-
- * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
-
- * THANKS: add Steve D
-
- * ttftool/*.c: add TTF -> Type42 conversion library. Based on
- Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
-
-2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
-
- * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
- to show harmonic notes
- * scm/define-markup-commands.scm: in \markup-by-number
- "dots-dot" -> "dots.dot" to show dotted notes
-
-2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * flower/include/memory-stream.hh (class Memory_out_stream): new file.
-
- * flower/memory-stream.cc (writer): new file.
-
- * configure.in: add endian test.
-
-2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
-
- * Documentation/user/examples.itely: small
- simplification/beautification
-
- * Documentation/user/notation.ietly: bugfix: fixed many artefacts
- from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
- notation manual.
-
- * lily/mensural-ligature.cc: bugfix: another few victims of the
- "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
-
- * ly/gregorian-init.ly: commit some experimental code for hi-level
- ligature input language lying around here for several months.
-
- * lily/mensural-ligature-engraver.cc: bugfix: another victim of
- the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
-
- * lily/vaticana-ligature-engraver.cc: bugfix: another few
- "x-y-z"->"x.y.s-z" fixes.
-
-2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-pdf.scm (scm): new file
-
- * lily/include/pdf.hh (class Pdf_file): new file.
-
- * lily/pdf.cc (write_trailer): new file.
-
-2005-02-18  Erlend Aasland  <erlenda@gmail.com>
-
- * input/regression/color.ly: new file
-
- * lily/stencil.cc (interpret_stencil_expression):
- when a color expression is encountered: save current color,
- process the rest of the expression, and restore previous color.
-
- * lily/system.cc (get_line): check all grobs for color property and
- prepare the stencil scheme expressions for further processing.
- Fix layer-loop.
-
- * scm/define-grob-properties.scm: introduce the color property.
-
- * scm/output-lib.scm: color helper functions.
-
- * scm/output-ps.scm: introduce setcolor/resetcolor.
-
-2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
-
- * ly/*.ly, input/regression/*.ly: Added missing \version
- statements in some files.
-
-2005-02-15  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: minor editing.
-
- * Documentation/user/converters.itely: updated convert-ly bugs.
-
- * Documentation/user/lilypond-book.itely: add info about using
- feta characters in latex.
-
-2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
-
-2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-grob-properties.scm (all-user-grob-properties):
- removed 'dashed property.
-
-2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/lily.scm (define-safe-public): new macro for defining
- variables that can be used in --safe mode. Use it in *.scm
- instead of manually setting safe-objects in safe-lily.scm.
-
-2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/slur.cc: Slur-dash patch by Bertalan.
-
- * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
-
- * stepmake/bin/add-html-footer.py (do_file): do i18n only once.
-
-2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
-
-2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/GNUmakefile: teTeX-3.0 install fix.
-
- * Cygwin patch from Bertalan.
-
- * stepmake/stepmake/metafont-rules.make: Remove bashism.
-
-2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in:
- * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
-
- * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
- 2.0.x compatibility.
-
-2005-02-08  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-din-code.mf: Format; clean up code.
- Replace `---' with `--' plus explicit path directions.
- (linethickness#, stafflinethickness#): Remove.
- ("dynamic f"): Replace `draw' with `draw_rounded_block'.
- ("dynamic s"): Improve shape.
- ("dynamic p"): Improve shape.
- Replace `draw' with better outline approximation.
- ("dynamic r"): Improve shape.
- Don't call `fill' and `draw' at the same time.
-
-2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * SConstruct (symlink):
- * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
- build fix: add enc symlink.
-
- * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
-
- Support for DESTDIR besides prefix=/foo
-
- * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
-
- * stepmake/stepmake/*.make:
- * */GNUmakefile:
- * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
-
- * config.make.in (prefix): Remove broken $(DESTDIR) hack.
-
- * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
- mawk in fontforge (date) test.
-
-2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/font.scm (make-century-schoolbook-tree): add NCS as
- font-family=roman. Add Luxi Sans as sans
-
-2005-02-07  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: add warning about
- percent repeats and Voice contexts.
-
- * Documentation/user/lilypond-book.itely: clarified the
- necessity of dvips -u arguments.
-
-2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
-
- * THANKS: Added a bunch of bug hunters.
-
-2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (output-preview-framework): bugfix.
-
- * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
- o/ for chord modifier..
-
- * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
-
- * lily/drum-note-performer.cc:  remove unused (thanks Michael
- Welsh Duggan).
-
-2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
-
- * ly/titling-init.ly: Do not also print intstrument in header on
- first page.  Do not print page number on first and only page.
-
-2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * input/regression/*.ly: remove old-relative everywhere
-
- * lily/music-sequence.cc (simultaneous_relative_callback): do
- what-if analysis on copy, not on original. Fixes old-relative
- compatibility.
-
- * scm/backend-library.scm (postscript->png): space before
- --verbose.
-
-2005-02-05  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
- is defined.
-
- * mf/feta-alphabet.mf: Define `staffsize#'.
- Include `feta-params.mf'.
- s/staffheight/design_size/.
-
- * mf/feta-alphabet??.mf: s/staffheight/design_size/.
-
- * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
-
- * mf/feta-nummer-code.mf: Reformatted.
- (draw_six): Use outline intersection to avoid a self-intersecting
- path.
- ("Numeral comma"): Fix serious outline glitches.  This slightly
- changes the glyph shape.
- ("Numeral dash"): Use `draw_rounded_block'.
- ("Numeral dot"): Use `drawdot'.
- ("Numeral 1"): Assure identical tangent directions for the
- intersection points of paths.  The glyph shape improvement is only
- visible at very high magnifications.
- ("Numeral 2"): Use `solve' macro to make the lower right part of
- the glyph outline touch the x axis exactly.  This changes the
- glyph shape.
- Minor fixes for better overlap removal support.
- ("Numeral 4"): Make lefter corner `rounder'.
- ("Numeral 5"): Assure identical tangent directions for the
- intersection points of paths.  This improves the glyph shape at
- high magnifications.
- ("Numeral 7"): Use `solve' macro to make the upper right part of
- the glyph outline touch the metrics box exactly.  This changes the
- glyph shape.
- Avoid corner in the upper left part of the glyph (causing a minor
- shape change).
-
- * mf/feta-ital-*.mf: Removed.  Unused.
-
-2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PATCH_LEVEL): release 2.5.11
-
- * input/regression/fill-line-test.ly: new file.
-
- * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
- emmentaler name, eg. emmentaler-23.
-
-2005-02-04  Christian Hitz  <chhitz@gmx.net>
-
- * scm/scm/define-markup-commands.scm (fill-line): rework for better
- alignment with centered texts
-
- * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
- list of paddings
-
-2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
-
- * lily/note-column.cc (translate_rests): call flush_extent_cache()
- of parents when translating rests. Fixes: c-chord-rest.ly
-
- * lily/include/dimension-cache.hh (struct Dimension_cache): add
- dimension_callback_ member.
-
- * lily/grob.cc (flush_extent_cache): new function. Force recompute
- of extents.
-
-2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * all but lily/*: The grand 2004/2005 replace.
-
-2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/*: add space after ,
-
- * scm/music-functions.scm (has-request-chord): don't use
- ly:music-name anywhere. Fixes <<\\>> notation.
-
- * scm/define-markup-commands.scm (box): use font-size for
- padding. Fixes boxed-rehearsal-marks.ly
-
- * lily/parser.yy (assignment_id): allow LYRICS_STRING as
- identifier definition too, so foo = \lyrics { ...   } bar = #1
- doesn't complain about "bar" being LYRICS_STRING.
-
- * lily/paper-def.cc (find_pango_font): new routine; Store
- pango_fonts in hash tab too. This is necessary for retrieving
- Pango_fonts::physical_font_tab() later on.
-
- * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
- crash if psname is null.
-
- * lily/lily-guile.cc (ly_hash2alist): new function
-
- * Documentation/user/changing-defaults.itely (Text encoding):
- rewrite.
-
- * lily/pango-font.cc (physical_font_tab): new member. Store PSname
- -> font_filename mapping.
-
- * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
- ly_pango_font_physical_fonts
-
- * scm/framework-ps.scm (supplies-or-needs): extract names from
- physical Pango_fonts.
-
- * utf8.ly: new file.
-
-2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/user/changing-defaults.itely (Page layout): add
- doco about systemSeparatorMarkup.
-
- * scm/page-layout.scm (default-page-make-stencil): add-to-page
- function.
- (default-page-make-stencil): insert system separators.
-
- * scm/define-markup-commands.scm (hcenter): add
- (beam): add.
-
-2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (ez-ball): reinstate ez notation.
-
-2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc: Spell backend consistently.  Sort options.
-
-2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scripts/lilypond-book.py (Module): revert @include.
-
-2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
- Bugfix: @include .tex (not .texi).  Small cleanups.
-
- * stepmake/bin/add-html-footer.py (i18n): New function.
-
-2005-01-31  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-nummer.mf: Removed.  Unused.
-
-2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/ : 2004 -> 2005 s&r
-
- * scm/file-cache.scm (cached-file-contents): add file. Read each
- file only once.
-
- * scm/font.scm (add-pango-fonts): change order. Medium weight is
- now default.
-
- * VERSION: release 2.5.10
-
- * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
-
- * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
-
- * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
- that both X and Y extents of bbox are non-nil.
-
-2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/chord-name.scm (alteration->text-accidental-markup): change
- - to .
-
- * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
-
- * scm/framework-ps.scm (dump-stencil-as-EPS): new function
-
- * Documentation/user/invoking.itely (Invoking lilypond): add note
- about EPS backend.
-
- * scm/framework-eps.scm: new file: create per-system/per-page EPS
- files for inclusion in lilypond-book document.
-
- * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
-
- * input/tutorial/lbook-texi-test.texi: new file.
-
- * scm/safe-lily.scm (safe-objects): add
- {begin,end}-of-line-(in)?visible as safe.
-
-2005-01-30  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/changing-defaults.itely: fixed example
- of (dynamics).
-
-2005-01-29  Graham Percival  <gperlist@shaw.ca>
-
- * lily/main.cc: fix info about -o=FILE.
-
-2005-01-29  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-toevallig.mf ("Natural"): Completely changed the
- construction to assure smooth transition from straight to curved
- lines.
-
-2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/stencil.cc (moved_to_edge): don't halt on adding empty
- stencils.
-
- * ps/lilyponddefs.ps: add start-page, start-system doesn't
- translate to top of page. Fixes alignment problems of
- lilypond-generated EPS files.
-
-2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/part-combiner.scm (analyse-spanner-states): trigger on
- crescendo-end as well, since Decrescendo maybe ended with Stop
- Crescendo.). Fixes: partcombine-diminuendo.ly
-
- * scm/script.scm (default-script-alist): swap portato symbols.
-
- * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
-
- * lily/paper-outputter-scheme.cc (LY_DEFINE):
- ly:outputter-port. New function.
-
- * scm/framework-ps.scm (output-classic-framework): dump a
- -systems.texi too
- (output-classic-framework): dump multiple systems on an "infinite"
- page EPS including fonts.
-
- * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
- .eps files for both texi and tex formats. Use PNG coming from
- lilypond.
-
-2005-01-28  Graham Percival  <gperlist@shaw.ca>
-
- * Docuemntation/user/invoking.itely: fix info about -o=FILE.
-
- * scripts/lilypond-latex.py: fix info about -o=FILE.
-
-2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * ly/generate-embedded-cff.ly: write .cff.ps files.
-
- * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
-
- * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
- $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
-
-2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
-
-2005-01-28  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
- macros.
- (draw_bulb): Improved.
-
- * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
- metapost bug.
- (draw_pedal_P): Use soft_end_penstroke.
- (draw_pedal_d): Use soft_start_penstroke.
-
- * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
- path.
- ("Varied Coda"): Move some points to avoid fontforge warnings.  This
- doesn't change the glyph shape.
-
- * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
- changing the shape) to avoid fontforge warnings.
-
- * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
- soft_end_penstroke and fix glyph shape.
-
-2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/*.cc: Scheme deprecation of SCM_VECTOR_*
-
-2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-markup-commands.scm (line): filter out empty stencils
- from line command.
-
- * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
- amount.
-
-2005-01-27  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: added info about what
- \voiceFoo does.  Also rewrote warning about marks at
- a line break.
-
- * Documentation/user/changing-defaults.itely: added info
- about putting dynamics in parenthesis and brackets.
-
-2005-01-27  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
-
-2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/feta-schrift.mf: reverse u and d portato. Fixes:
- portato-direction.ly
-
- * lily/beam.cc (consider_auto_knees): add beam height to
- threshold. Fixes: knee-multiple-beam.ly
-
- * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
- pedal line spanners. Fixes: instrument-center-pedal.ly
-
- * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
- if encountering barline. Fixes: auto-beam-repeat.ly
-
-2005-01-26  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
- overlapping.
-
- * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
- with inflections for the 1/2 sharp glyph.
-
- * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
- connection between `t' and `r'.
- Unify bulb with the rest of `r' to avoid grazing outlines which
- confuses the overlap removal algorithm of fontforge.
-
- * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
- inflections.
- (draw_cross): Fix shape to have uniform thickness in corners.
-
- * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
- to avoid an uneven number of self-intersections; this confuses
- fontforge.
- Fix a slight bug in the shape at left bottom (which is visible only
- at high magnifications).
- `Center' the stem horizontally to avoid overlapping.
-
-2005-01-24  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
- to `asis'.
- (fet_begingroup): Save group name in string `feta_group'.
- (fet_endgroup): Updated.
- (fet_beginchar): Emit `glyph_name' special for mf2pt1.
-
- * mf/feta-bolletjes.mf: s/p/pat/ for paths.
-
- * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
- in metapost.
-
-2005-01-24  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: really minor editing.
-
-2005-01-22  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/examples.itely: minor editing.
-
- * Documentation/user/changing-defaults.itely: minor editing.
-
- * Documentation/user/notation.itely: clarified info on polyphony
- and \addlyrics.
-
-2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm:
- * scm/output-svg.scm:
- * scm/lily-library.scm (font-name-style): Update font name
- kludging for fontconfig use.
-
-2005-01-20  Erlend Aasland  <erlenda@gmail.com>
-
- * scm/define-markup-commands.scm: Document right-align and
- larger markup commands. Remove "TODO" from the topmost comment
- "each markup function should have a doc string." More consistent
- use of new-lines.
-
-2005-01-22  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/changing-defaults: removed info about
- copyright symbol, since it's likely to change soon.
- Added info about betweensystemspace.
-
- * Documentation/user/notation.itely: minor fixes.
-
- * Documentation/user/lilypond.tely,
- Documentation/user/music-glossary.tely: changed copyright
- date to 2005 instead of 2004.
-
- * input/test/volta-chord-names.ly: added old example back.
-
-2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/feta-beugel.mf: use design size 20 (not 15).
-
- * mf/aybabtu.pe.in: scale brace fonts to design sizes.
- change name to aybabtu completely
-
-2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/gen-emmentaler-scripts.py (outdir): add
- design_size to fontname
-
-2005-01-19  Werner Lemberg  <wl@gnu.org>
-
- * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
- mf/feta-schrift.mf: s/p/pat/ if a path variable.
-
- * mf/feta-autometric.mf (set_char_box): Add code which emits
- specials for mf2pt1 if run with metapost.
- (to_bp): New macro for mf2pt1.
-
-2005-01-18  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/changing-defaults: added info on
- creating a copyright symbol.
-
-2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION: release 2.5.9
-
-2005-01-18  Erlend Aasland  <erlenda@gmail.com>
-
- * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
-
- * Documentation/user/notation.itely: Document
- score-override-auto-beam-setting Fix documentation for
- revert-auto-beam-setting.
-
-2005-01-18  Werner Lemberg  <wl@gnu.org>
-
- * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
- (procset): New function to define a procset resource.
- (ps-embed-pfa): New function to define a font resource.
- (setup): New function to define a `Setup' environment.
- (preamble): Use new functions.
-
- * ps/lilypond.defs (init-lilypond-parameters): New function to
- get rid of directly executed PS code.  Used in scm/framework-ps.scm.
-
-2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
-
-2005-01-17  Erlend Aasland  <erlenda@gmail.com>
-
- * scm/define-markup-commands.scm: Change number->markletter-string
- to take two arguments (vector number). Add number->mark-alphabet-vector
- and markalphabet markup command.
-
- * scm/translation-functions.scm: Add format-mark-box-alphabet,
- format-mark-alphabet, format-mark-box-barnumbers and
- format-mark-barnumbers. Fix bug in format-mark-box-numbers.
-
-2005-01-17  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/examples.itely: add SATB automatic piano
- reduction template.
-
- * Documentation/user/notation.itely: added info about changing
- partcombine texts.  Also adds examples of alternate lyrics.
-
- * Documentation/user/changing-defaults.itely: added warning
- about \RemoveEmptyStaffContext overriding previous changes.
-
-2005-01-17  Werner Lemberg  <wl@gnu.org>
-
- * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
- feta-alphabet*.
-
-2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * python/lilylib.py (make_ps_images): don't do final showpage for
- multi-page documents.
-
- * VERSION (MY_PATCH_LEVEL): release 2.5.8
-
-2005-01-16  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond.tely: changed order of appendices;
- unified index should be last.
-
- * Documentation/user/notation.itely: add example of key signatures
- and info about Staff.printKeyCancellation.
-
-2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/repeated-music.hh (class Repeated_music): change
- into "namespace" class.
-
- * lily/event.cc: remove Key_change_event.
-
- * lily/include/transposed-music.hh (class Transposed_music): remove.
-
- * lily/transposed-music.cc: remove
-
- * lily/include/relative-music.hh: remove.
-
- * lily/include/music-sequence.hh (struct Music_sequence): change
- into "namespace" class.
-
- * lily/untransposable-music.cc (Module): remove
-
- * lily/include/un-relativable-music.hh (Module): remove
-
- * lily/include/untransposable-music.hh (Module): remove
-
- * lily/include/music-list.hh (Module): remove file
-
- * lily/un-relativable-music.cc: remove file.
-
-2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/parser.yy: Compile fix.
-
-2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/music.hh (class Music): unvirtualize transpose().
-
- * lily/sequential-music.cc: remove file.
-
- * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
-
- * lily/slur-scoring.cc (get_best_curve): only switch on
- DEBUG_SLUR_SCORING for non NDEBUG builds.
-
- * lily/include/music.hh (class Music): replace Music::start_mom()
- by start-callback property
-
- * lily/include/grace-music.hh: remove file.
-
- * lily/stem.cc (height): robustness fix.
-
- * lily/time-scaled-music.cc: remove file.
-
- * lily/include/music.hh (class Music): include SCM init argument.
- (class Music): replace Music::get_length() virtual by
- length-callback property everywhere.
-
- * scripts/convert-ly.py (conv): add  # to \property scalar value.
-
- * mf/GNUmakefile: don't install *list.ly
-
-2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
-
-2005-01-12  Werner Lemberg  <wl@gnu.org>
-
- This patch addresses the following problems in the feta sources
- files which contribute to the fetaXX fonts.
-
- . Many fixes for rasterization at low resolutions (consistent use of
-   `vround' and `hround', integer shift values for paths, applying
-   `eps' for mirrored paths, use of `define_whole_pixels' and
-   friends, etc.) -- while this probably looks like a waste of time
-   it has revealed deficiencies in some glyph shapes.  See comment at
-   the end of feta-params.mf how vertical symmetry is achieved.
-
- . The `---' operator has been replaced everywhere with `--'; this
-   both improves and considerably reduces the font size after
-   conversion with mf2pt1.
-
- These change aren't explicitly mentioned below since virtually all
- glyphs are affected.
-
- Other notable differences:
-
- . Glyphs from feta-accordion.mf now have charboxes around the
-   outline.
-
- . Fixed incorrect charbox for `accDot'.
-
- . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
-
- . Fixed position of the bow in the `upprall' glyph and its siblings.
-
- . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
-   dependent on the staff line thickness to avoid touching the middle
-   staff line at smaller sizes.
-
- . Largely extended output for feta-testXX: Where useful, glyphs
- are shown both between and on staff lines.
-
-
- * mf/feta-params.mf (staff_space_rounded,
- stafflinethickness_rounded, linethickness_rounded,
- ledgerlinethickness_rounded, stemthickness_rounded): New variables.
- Update all code which uses them where appropriate.
- (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
- New variables used to control rasterization at low resolutions.  Set
- to zero if feta code is processed with metapost.
-
- * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
- (draw_rounded_block, draw_square_block): Updated to use `--' only.
- (flare_path): Updated.
- Make it work with `filldraw' (but only circular pens).
- (hfloor, vfloor, hceiling, vceiling): New macros.
-
- * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
- Use `draw' again in mf mode to have good pixel dropout control.
- Fix intersection points of horizontal lines with circle.
- ("accDot"): Fix parameters for set_char_box.
- ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
- control.
-
- * mf/feta-banier.mf: Updated.
-
- * mf/feta-bolletjes.mf (remember_pic): New variable, used for
- testing.
- (undraw_inside_ellipse): Remove `center' argument.  Update all
- callers.
- (draw_brevis): New macro, called by "Brevis notehead".
- (draw_whole_triangle_head): New macro, called by "Whole
- trianglehead".
- (draw_small_triangle_head): Use `filldraw'.
-
- * mf/feta-eindelijk.mf: Remove useless global group.
- Updated.
-
- * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
- `filldraw'.
-
- * mf/feta-pendaal.mf: Updated.
-
- * mf/feta-puntje.mf: Updated.
-
- * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
- less points.
- ("Flageolet"): Use `draw' again in mf mode to have good pixel
- dropout control.
- ("Varied Coda"): Use `draw_block'.
- (draw_comma): Fix typo.
- (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
- pixel dropout control.
-
- * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
- position of bow.
-
- * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
- sizes.
-
- * mf/feta-toevallig.mf (remember_pic): New variable, used for
- testing.
- (draw_meta_sharp): Much simplified.
- ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
-
- * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
-
-2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
-
- * Documentation/user/notation.itely (Ancient rests): Fix typo
- (thanks Anthony)
-
-2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
-
- * lily/main.cc (setup_paths): Add cff.
-
- * mf/GNUmakefile (foe): Include actual target %.cff.
- (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
-
-2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
- suffix for main_input_b_.
-
- * scm/music-functions.scm (toplevel-music-functions):
- precompute music lengths for music expressions.
-
-2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * lily/include/input.hh (class Input): new `end_' slot for end of
- input. Renamed defined_str0_ to start_.
-
- * lily/input.cc (Input): Add Input::Input (Input const &) and
- remove Input::Input (Source_file*, char const *). Use the new
- slots.
- (set_location): method used by bison to propagate input
- locations (YYLLOC_DEFAULT).
- (end_line_number, end_column_number, step_forward): new methods
-
- * lily/input-scheme.cc (ly:input-both-locations): new function,
- similar to ly:input-location, but also return the end line and
- column.
-
- * lily/include/includable-lexer.hh:
- * lily/includable-lexer.cc:
- * lily/include/lily-lexer.hh (class Lily_lexer):
- * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
- Includable_lexer to Lily_lexer, in order to update lexloc (the
- yylloc), a new slot of Lily_lexer.
- (here_input, LexerError): simplify by using the lexloc slot (aka
- yylloc)
-
- * lily/lexer.ll: #define yylloc to use input locations (it may
- be useless here?). Fixed the #embedded_scm rule (step the location
- forward in order to skip the sharp sign before parsing the scheme
- expression)
-
- * lily/include/lily-parser.hh (class Lily_parser):
- * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
- here_input()
- (parser_error): overload for more precise locations of errors.
-
- * lily/parser.yy (YYLTYPE): set location type to Input
- (YYLLOC_DEFAULT): use Input::set_location()
- (yylex): add the YYLTYPE* location parameter.
- Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
- Give an Input parameter to THIS->parser-error() for more accurate
- messages.
-
-2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
-
- * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
- on BEAMQUANTING for non-NDEBUG builds.
-
- * lily/stem.cc (head_count): performance: avoid String::String()
- inside oft called function.
-
-2005-01-09  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/examles.itely: attempted fix for broken
- string quartet template.
-
- * Documentation/user/notation.itely: remove unnecessary broken
- link.
-
-2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PACKAGE_NAME): release 2.5.7
-
-2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * config.make.in (METAFONT): Append -progname=mf, fixes use with
- mf-nowin for teTeX-3.0.  Backportme.
-
- * scm/output-svg.scm (utf8-string): New function.
-
- * scm/output-gnome.scm (utf8-string): New function.
- (otf-name-mangling): Remove.
-
- * lily/pango-font.cc (Pango_font): Use font string iso font
- filename for utf8-text.
-
- * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
- name.
-
-2005-01-08  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: add info about
- Staff.extraNatural = ##f in Pitches section.  Also
- fixed some minor issues in the Vocal music section.
-
-2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (white-text): comment out Helvetica font,
- which is broken for my GS install.
-
- * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
- which provides a tighter bbox.
-
- * scm/define-grobs.scm (all-grob-descriptions): remove all
- extra-offsets from definitions.
-
-2005-01-08  Erlend Aasland  <erlenda@gmail.com>
-
- * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
- add tuning for 4-string bass and some common 4/5-string banjo
- tunings.  New function (four-string-banjo) turns a 5-string tuning
- into a 4-string tuning.  New function
- (fret-number-tablature-format-banjo) computes correct fret numbers
- on 5-string banjos.
-
- * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
- Add beam correction to TabVoice.
-
- * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
- using bold font; makes tabs more readable.
-
-2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/font-select.cc (get_font_by_design_size): don't make
- Modified_font_metric; this causes trouble, since we don't know the
- font magnification from inside Pango_font::text_stencil()
-
- * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
-
- * Documentation/user/notation.itely (The Lyrics context): comment out
- broken {Small ensembles} link.
-
- * scm/framework-svg.scm (output-framework): change calling convention.
-
- * lily/object-key-dumper-scheme.cc: new file.
-
- * lily/object-key-undumper-scheme.cc: new file.
-
- * lily/tweak-registration-scheme.cc: new file.
-
- * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
-
- * Documentation/user/examples.itely (String quartet): uncomment
- broken example.
-
- * lily/font-config.cc: new file.
-
-2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-svg.scm:
- * scm/output-gnome.scm: s/bigcheese/emmentaler.
-
- * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
-
-2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
- Add headers.
-
- * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
-
-2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
-
- * lily/include/main.hh: lose _b hungarian suffixes for global
- variables.
-
- * lily/include/lily-guile-macros.hh: new file.
-
- * lily/pango-select-scheme.cc (LY_DEFINE): new file.
-
- * lily/general-scheme.cc: new file.
-
- * lily/font-select.cc (get_font_by_design_size): retrieve
- PangoFont for (designsize . "pango-descr") entries.
-
- * lily/lily-parser-scheme.cc: new file.
-
- * lily/output-def-scheme.cc: new file.
-
- * lily/paper-book-scheme.cc: new file.
-
- * lily/duration-scheme.cc (LY_DEFINE): new file.
-
- * lily/pitch-scheme.cc:  new file.
-
- * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
-
-2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
-
-2005-01-06  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: minor editing.
-
- * Documentation/user/changing-defaults: minor editing.
-
- * Documentation/user/examples.itely: add template for
- string quartet part extraction; demonstrates tag.
-
-2005-01-06  Erlend Aasland  <erlenda@gmail.com>
-
- * Documentation/user/notation.itely: documents
- format-mark-box-letters and format-mark-box-numbers
-
- * scm/define-context-properties.scm: change comment.
-
-2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (output-classic-framework): new function:
- dump systems as separate .eps files (without fonts) and write a
- single collecting .tex file.
-
-2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
-
- * Documentation/user/notation.itely (Setting simple songs):
- Correct several errors in the equivalent formulation of
- \addlyrics.
- (The Lyrics context): Corrected link to the SATB example.
-
-2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/lily.scm (completize-formats): new function
- (postprocess-output): new function
-
- * lily/paper-book.cc (classic_output): change calling
- convention. Give basename as first argument.
- remove Paper_book::post_processing().
-
- * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
-
-2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/paper-outputter.cc (LY_DEFINE): new function
- ly:outputter-close.
-
- * lily/main.cc: change --format,-f to --backend,-b
-
- * lily/include/main.hh: rename format to backend.
-
- * scm/translation-functions.scm (format-mark-box-numbers): add.
- patch by Erlend Aasland
-
-2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/pango-font.cc (text_stencil): dump string as
- (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
-
-2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * configure.in (gui_b): Remove handy developer-only
- PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
- CVS source installations (but break other non-default but correct
- PKG_CONFIG_PATH setups), as this is no longer developer-only.
-
- * SConstruct:
- * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
- compatibility (backportme).
-
- * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
-
-2005-01-03  Werner Lemberg  <wl@gnu.org>
-
- Prepare glyph shapes for mf2pt1 conversion.
-
- * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
- (accDiscant, accFreebase, accStdbase): Replace `draw' with
- `penstroke'.
- (accDot): Use `drawdot'.
- (accBayanbase): Replace `draw' with `draw_gridline'.
- (print_penpos): Moved to feta-macros.mf.
- (accOldEE): Replace `filldraw' with `penstroke'.
- Replace `draw' with `penstroke' and `drawdot'.
-
- * mf/feta-banier.mf: Code clean-up.
- ("grace dash (up)", "grace dash (down)"): Replace `draw' with
- `fill'.
-
- * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
-
- * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
- paremeter to control drawing of labels.  Update all callers.
-
- * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
- (new_bulb): Return a bulb as a single path.  To do that, it now
- takes some more parameters.  Updated all callers.
- (draw_gclef): Major clean-up.  `draw' has been replaced with
- `penstroke', unnecessary outlines have been removed.
- Remove (unused) gnome-canvas code.
-
- * mf/feta-macros.mf (print_penpos): New macro (from
- feta-accordion.mf).
- Other minor fixes.
-
- * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
- ("Pedal dot"): Use `drawdot'.
- (draw_pedal_P): Add parameter to control drawing of labels.  Update
- all callers.
- Fix shape at top.
- (draw_pedal_e): Add parameter to control drawing of labels.  Update
- all callers.
- (draw_pedal_d): Add parameter to control drawing of labels.  Update
- all callers.
- Revert drawing direction.
-
- * mf/feta-schrift.mf (draw_fermata): Use single path.
- (draw_short_fermata): Replace `filldraw' with `fill'.
- (draw_long_fermata, draw_very_long_fermata): Replace calls to
- `draw_rounded_block' with a single path.
- ("Thumb"): Draw full circle instead of mirroring segments.
- (draw_accent): New macro.
- ("> accent", "espr"): Use it.
- (draw_marcato): Replace `filldraw' and `draw' with `fill'.
- ("open (unstopped)"): Draw full circle instead of mirroring
- segments.
- (draw_vee): Removed.
- ("Upbow"): Use `draw_accent' instead of `draw_vee'.
- ("Downbow"): Replace calls to `draw_rounded_block' with a single
- path.
- ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
- partial pieces drawn with `fill' -- these do still overlap with the
- stem of the `t' but just once, not multiple times so that fontforge
- can handle it gracefully.
- Change other parts of the glyph so that fontforge's overlapping
- algorithm reliably works.
- (draw_heel): Replace `draw' with `fill'.
- (draw_toe): Use `draw_accent' instead of `draw_vee'.
- ("Flageolet"): Replace `draw' with `penstroke'.
- ("Segno"): Replace `filldraw' with `penstroke'.
- Replace `draw' with `drawdot'.
- ("Coda"): Replace `fill' with `penstroke', using a single path.
- ("Varied Coda"): Use less overlapping paths.
- (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
- single path.
-
- * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
- group to better control the `labels' command.
- Rename argument to `offset' and use it actually.  Update all
- callers.
- Replace `filldraw' with `fill'.
- ("mordent", "prallmordent", "upmordent", "downmordent",
- "lineprall"): Replace `draw' with `draw_gridline'.
- ("upprall", "downprall"): Replace `draw' with `fill'.
-
- * mf/feta-timesig.mf: Formatting.
-
- * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
- to...
- ("Flat"): Here.
- (draw_paren): Move code to draw labels to...
- ("Right Parenthesis"): Here.
-
-2005-01-02  Graham Percival <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: add example of \setTextDecresc
- and \setTextDim.
-
-2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
-
- * scm/define-markup-commands.scm :  fix glyph-strings of
- accidentals and \note-by-number
-
-2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION: 2.5.6 released.
-
- * ps/lilyponddefs.ps: put mm -> pt scaling in here.
-
- * input/regression/new-markup-scheme.ly: oops. font-family=music
- -> font-encoding fetaMusic.
-
- * lily/main.cc: put default to PS.
-
- * lily/tfm.cc: idem.
-
- * lily/afm.cc: idem.
-
- * lily/include/modified-font-metric.hh (struct
- Modified_font_metric): remove coding_scheme() method.
-
- * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
-
- * scripts/convert-ly.py (conv): crash on encountering \encoding.
-
- * input/les-nereides.ly: convert to utf8
-
- * lily/modified-font-metric.cc (text_dimension): idem.
-
- * lily/parser.yy (TODO): idem.
-
- * lily/include/lily-lexer.hh (class Lily_lexer): idem.
-
- * lily/lexer.ll: remove encoding
-
- * scm/framework-ps.scm (output-variables): separately scale the
- page to mm
-
- * lily/pango-font.cc (Pango_font): fix scaling.
-
- * lily/font-metric.cc (design_size): design_size returns a
- dimension now as well.
-
-2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
- brace generation.
-
- * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
-
-2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
- install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
-
-2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
- in first run as well.
-
- * scm/paper.scm (layout-set-staff-size): use text-font-size in
- dimension less points (ie. 12 = 12 point)
-
- * lily/pango-select.cc (select_pango_font): use find_scaled_font().
-
- * lily/all-font-metrics.cc (find_pango_font): set description_
-
- * lily/pango-font.cc (text_stencil): export size as well.
- (text_stencil): fix scaling and extents box.
-
-2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * Documentation/topdocs/NEWS.texi (Top): add -f texstr
-
- * Documentation/user/invoking.itely (Invoking lilypond): document
- texstr
-
- * scripts/convert-ly.py (conv): add ancient rules.
-
- * scm/clef.scm (c0-pitch-alist): replace - with .
-
- * scripts/lilypond-book.py (process_snippets): add texstr support.
-
- * scm/framework-texstr.scm (header): change extension to .textmetrics
-
- * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
- -f tex.
-
- * lily/text-metrics.cc: new file.
- (try_load_text_metrics): new function
-
- * lily/include/text-metrics.hh: new file.
-
-2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/lily-guile.hh (ly_lily_module_constant): rename
- ly_scheme_function to ly_lily_module_constant.
-
- * lily/modified-font-metric.cc (text_dimension): try
- lookup_tex_text_dimension() first.
-
- * lily/tfm.cc: new function ly:load-text-dimensions
-
-2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-texstr.scm (text): use \lilygetmetrics
-
- * scm/framework-texstr.scm (header): dump in new format.
-
- * tex/lilypond-tex-metrics: new file.
-
-2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
- mapping.
- (index_to_charcode): New method.
-
- * scm/output-ps.scm (glyph-string):
- * scm/output-gnome.scm (glyph-string): Add FONT parameter.
-
-2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
- implement fully, need FONT to get to charcode.
-
- * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
-
- * scm: Cleanups.
-
- * Documentation/user/changing-defaults.itely: Fix internalsrefs
- {Tunable context properties},
- {All layout objects},
- {Music definitions}.
-
-2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION: release 2.5.5
-
- * lily/main.cc: use TeX as default output format.
-
- * flower/file-path.cc (find): try to open directly as well, so we
- find absolute path files.
-
- * lily/pango-select.cc: new file.
-
- * scm/framework-ps.scm: remove all encoding code.
- load pfb/pfa for PangoFont too.
-
- * lily/lily-guile.cc (ly_chain_assoc_get): new function.
-
-2004-12-22  Werner Lemberg  <wl@gnu.org>
-
- Prepare glyph shapes for mf2pt1 conversion.
-
- * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
-
- * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
- (define_triangle_shape): Use it to replace `draw' with `fill' and
- `unfill'.  Update all callers.
- (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
- (draw_cross): Ditto.
- ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
- Use penrazor for better conversion with mf2pt1.
- (generic_draw_solfa_note_shape, draw_solfa_note_shape,
- draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
- (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
- draw_la_head, draw_ti_head): Replace `filldraw' with
- `fill'.  Update all callers.
-
-2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/paper-book.cc (output): revert: only allow a single output
- format.
-
- * lily/include/pango-font.hh: new file.
-
- * lily/pango-font.cc: new file.
-
- * lily/font-metric.cc (text_stencil): new routine
-
- * lily/all-font-metrics.cc (find_pango_font): new routine.
-
- * lily/include/font-metric.hh (struct Font_metric): add
- text_stencil()
-
- * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
-
-2004-12-22  Werner Lemberg  <wl@gnu.org>
-
- Prepare glyph shapes for mf2pt1 conversion.
-
- * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
-
- * mf/feta-toevallig.mf: Formatting.
- (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
- ("Natural"): Fix paths to allow better postprocessing.
- (draw_meta_flat): Use `z3l' as additional point in path to get
- better conversion with mf2pt1.
- Other minor cleanups.
- ("3/4 Flat"): Add auxiliary points and modify path to replace
- `draw' with `fill'.
- ("Double Sharp"): Mirror path segments instead of picture elements
- to get a single outline.
- Modify path to replace `filldraw' with `fill'.
-
-2004-12-22  Graham Percival  <gperlist@shaw.ca>
-
- * input/test/unfold-all-repeats.ly: added file back.
-
- * Documentation/user/notation.itely,
- Documentation/user/programming-interface.itely
- Documentation/user/changing-defaults.itely: fixed misc broken
- links to input/test/ files.
-
-2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * tex/texinfo.tex: Update.  We should not be distributing this,
- but since we do, use latest version.
-
- * Documentation/user/macros.itexi: Comment-out \fetaflat,
- \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
- macros for feta glyphs.
-
-2004-12-22  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/changing-defaults.itely: fix index for set.
-
- * Documentation/user/converters.itely: added convert-ly bugs list
- from CVS.
-
-2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
- to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
- gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
- resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
-
- * mf/GNUmakefile (pfa_warning): Use less broken check.
-
- * python/lilylib.py (setup_environment): Remove cruft from
- GS_FONTPATH.
-
- * configure.in: Bump mftrace requirement to 1.1.1.
-
-2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-svg.scm (beam): Use polygon.
-
- * scm/lily-library.scm: Bugfix.
-
- * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
-
- * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
-
-2004-12-19  Werner Lemberg  <wl@gnu.org>
-
- Prepare glyph shapes for mf2pt1 conversion.
-
- * mf/feta-eindelijk: Some formatting.
- (multi_rest_x, multi_beam_height): Removed.  Unused.
- ("Quarter rest"): Use `intersectiontimes' to create a single
- outline.
- (rest_crook): Removed.  Unused.
- (draw_rest_bulb): Return path (without filling).  Update callers.
- Simplified.
- (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
- "128th rest"): Simplify `pat'.
- Create single outline.
-
-2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/GNUmakefile (ALL_GEN_FILES):
- (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
-
- * scm/output-svg.scm (polygon, draw-line, dashed-line): New
- function.
-
-2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-texstr.scm (placebox): add routine
-
- * VERSION (PACKAGE_NAME): release 2.5.4
-
- * scm/framework-texstr.scm (output-framework): new file.
-
- * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
- processing.
-
- * Documentation/user/invoking.itely (Invoking lilypond): add SVG
-
- * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
- rule.
-
- * configure.in (gui_b): bump mftrace requirement to 1.1.0
-
- * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
-
- * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
-
-2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/framework-svg.scm (dump-page): Implement landscape.
-
-2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/main.cc (setup_paths): Add svg to search path.
-
- * scm/output-svg.scm:
- * scm/framework-svg.scm: Add pageSet.  Update.
- (dump-fonts): New function.
- (output-framework): Use it.
-
- * mf/GNUmakefile:
- * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
-
-2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * tex/lilyponddefs.tex: comment out new ifpdf code.
-
-2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in:
- * SConstruct (symlink): Replace afm by otf.
-
- * scm/framework-gnome.scm (gnome-main): Remove invocation of
- ly:pango-add-afm-decoder.
-
- * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
-
-2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-ps.scm (new-text): don't access t glyph for getting
- space dimension.
-
- * ly/init.ly: warn about \version
-
- * lily/lexer.ll: set version-seen?
-
-2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-svg.scm (string->entities): Update.
-
-2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/main.cc (setup_paths): replace afm by otf for path.
-
- * lily/pangofc-afm-decoder.cc: remove.
-
- * lily/include/pangofc-afm-decoder.hh: remove.
-
- * scm/framework-scm.scm (output-framework): new file.
-
- * mf/GNUmakefile: remove SAUTER_FONTS.
- remove SVG/sodipodi hacks.
-
- * scm/lily-library.scm (stderr): move stderr.
-
- * mf/GNUmakefile: remove AFM support.
-
- * buildscripts/mf-to-table.py (base): remove AFM support.
-
- * lily/open-type-font.cc (design_size): use design_size
-
-2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
-
-2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/GNUmakefile: Generate combined aybabtu info.
- * mf/aybabtu.pe.in (i): Load it.
-
- * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
- are not symbols.
-
- * lily/include/open-type-font.hh (count): New method.
-
- * mf/aybabtu.pe.in: Typo.
-
- * Documentation/user/out/lilypond-internals.nexi (Scheme
- functions): Typo.
-
- * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
-
-2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
- subfonts.
-
- * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
-
- * scm/framework-tex.scm (otf-font-load-command): load subfonts.
- (tex-font-command-raw): new function.
-
- * lily/include/virtual-font-metric.hh (Module): remove file
-
- * lily/virtual-font-metric.cc (Module): remove file.
-
-
- * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
- (get_indexed_char): read bbox from lily table if present.
-
-2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
- aybabtu.subfonts
-
- * mf/feta-beugel.mf (y): don't number consecutively, instead, use
- global glyphname. Enables more than 64 glyphs in the OTF.
-
-2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
- braces.
-
- * lily/open-type-font.cc (design_size): Use 12 as default for
- design size.
-
- * mf/aybabtu.pe.in: New file.  Merge all our braces.
-
- * mf/GNUmakefile: Generate aybabtu.
-
- * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
-
-2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/lily-library.scm (char->unicode-index): Remove.
-
- * scm/output-gnome.scm (text): Bugfix for plain string input.
- Updates.
-
- * scm/output-svg.scm (svg-font): Add weight to font selection.
-
-2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
-
- * Documentation/topdocs/INSTALL.texi (Top): Point to
- buildscripts/out/clean-fonts instead of
- buildscripts/clean-fonts.sh.
-
-2004-12-13  Graham Percival  <gperlist@shaw.ca>
-
- * input/regression/figured-bass.ly: attempt to clarify text.
-
- * Documentation/user/notation.tely: add cindex for tag, attempt to
- add figured bass example.
-
- * Documentation/user/changing-defaults: basic editing.
-
-2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table.
-
- * lily/open-type-font.cc (LY_DEFINE): new function
- ly:font-sub-fonts
-
- * lily/include/font-metric.hh (struct Font_metric): new method
- sub_fonts()
-
- * lily/vaticana-ligature-engraver.cc (transform_heads): replace
- . with - in add.stem.
-
-2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
- and fetaDynamic.
-
- * lily/rest.cc (glyph_name): Change - to . .
-
- * scm/output-gnome.scm (text): Hello world, again.
-
- * scm/output-svg.scm (named-glyph): New function.  Hello world!
-
- * lily/modified-font-metric.cc (index_to_charcode): New method.
-
- * lily/include/font-metric.hh (index_to_charcode): New function.
-
- * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
- new function.
- (ly:font-glyph-to-index): Remove.
-
-2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/open-type-font.cc (make_index_to_charcode_map): new method.
-
- * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
-
- * lily/open-type-font.cc (load_scheme_table): new function
-
- * lily/dots.cc (print): replace -
-
- * lily/open-type-font.cc (attachment_point): new function.
- (load_table): read LILC table
-
- * buildscripts/gen-bigcheese-scripts.py (Module): new
- file. Generate FF scripts.
-
- * mf/feta-din10.mf: idem.
-
- * mf/feta-nummer10.mf: remove mf files.
-
- * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
-
-2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/lily-guile.cc: Use scm_from_locale_stringn.
-
- * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
- compatibility.
-
-2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/open-type-font.cc (get_indexed_char): scale metrics by
- design-size and units_per_EM.
-
- * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
-
-2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
- does not crash fontforge.
-
- * scm/lily-library.scm (char->unicode-index): Hack to map onto
- PUA.
-
-2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/framework-ps.scm (ps-embed-cff): new function.
-
- * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
-
-2004-12-12  Werner Lemberg  <wl@gnu.org>
-
- * mf/bigcheese.pe.in: Add PUA mapping.
- Don't create Type 42 but bare CFF font.
-
-2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
- within canvas boundaries.
-
- * mf/merge.pe.in: Set font names, version, license GPL.
-
- * make/substitute.make: Add FONTFORGE.
-
- * config.make.in (FONTFORGE): Add.
-
- * configure.in (gui_b): Use PATH_PROG for fontforge.
-
-2004-12-11  Graham Percival  <gperlist@shaw.ca>
-
- * scm/define-markup-commands.scm: add baseline-skip to info
- about \column.
-
-2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/font-metric.cc (ly:font-get-glyph-index): New function.
-
- * scm/output-gnome.scm (named-glyph): Use it.
-
- * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
-
- * flower/string.cc (substitute_char): Rename, rewrite, modify this.
- (upper_string, lower_string, reverse_string): Remove.
-
- * configure.in (fontforge): Reinstate version check.
-
- * ly/engraver-init.ly: Fix clef glyph names.
-
- * lily/time-signature.cc (special_time_signature): Fix fraction
- glyph names.
-
-2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/merge.pe: new file.
-
- * lily/freetype.cc: new file.
-
- * lily/include/open-type-font.hh (class Open_type_font): new file.
-
- * lily/include/freetype.hh: new file.
-
- * lily/open-type-font.cc: new file.
-
- * lily/all-font-metrics.cc (find_otf): new function.
-
-2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/time-signature.cc (special_time_signature): Fix.
-
- * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
- GTK2 before checking for pango.  Fixes -fgnome.
-
- * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
- Scheme name.
-
- * scm/define-markup-commands.scm:
- * scm/safe-lily.scm: Bugfix: ly:font-by-name.
-
- * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
-
- * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
- date versions.  Fixes configure.
- (STEPMAKE_CHECK_VERSION): Support optional actual program version
- argument.
-
-2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/mf-to-table.py (write_ps_encoding): write real
- names in .enc
-
- * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
-
-2004-12-09  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/changing-defaults.itely: add info about
- make-dynamic-script
-
- * Documentation/user/notation.itely: add link in dynamics to
- section about make-dynamic-script.
-
-2004-12-09  Christian hitz  <chhitz@gmx.net>
-
- * lily/lily-guile.cc: change MACOS_X to __APPLE__
-
-2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * buildscripts/mf-to-table.py (parse_logfile): use . for
- concatting name and group.
- (parse_logfile): use M for Minus (negative.)
-
- * lily/include/type-swallow-translator.hh
- (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
-
- * lily/*.cc: cosmetics around = sign.
-
- * lily/paper-column.cc (Paper_column): copy rank_. This fixes
- lyric spacing on the penultimate column.
-
-2004-12-05  Christian Hitz  <chhitz@gmx.net>
-
- * configure.in:
- * lily/accidental-placement.cc:
- * lily/bar-line.cc:
- * lily/beam-concave.cc:
- * lily/beam-quanting.cc:
- * lily/beam.cc:
- * lily/bezier-bow.cc:
- * lily/bezier.cc:
- * lily/break-align-interface.cc:
- * lily/custos.cc:
- * lily/dimension-cache.cc:
- * lily/dot-column.cc:
- * lily/font-metric.cc:
- * lily/font-select.cc:
- * lily/gourlay-breaking.cc:
- * lily/grob-property.cc:
- * lily/grob.cc:
- * lily/lily-guile.cc:
- * lily/line-spanner.cc:
- * lily/lookup.cc:
- * lily/lyric-extender.cc:
- * lily/lyric-hyphen.cc:
- * lily/mensural-ligature.cc:
- * lily/midi-def.cc:
- * lily/misc.cc:
- * lily/note-collision.cc:
- * lily/note-column.cc:
- * lily/note-head.cc:
- * lily/paper-outputter.cc:
- * lily/percent-repeat-item.cc:
- * lily/rest-collision.cc:
- * lily/side-position-interface.cc:
- * lily/simple-spacer.cc:
- * lily/slur-configuration.cc:
- * lily/slur-scoring.cc:
- * lily/slur.cc:
- * lily/spaceable-grob.cc:
- * lily/spacing-spanner.cc:
- * lily/spanner.cc:
- * lily/staff-symbol-referencer.cc:
- * lily/stem.cc:
- * lily/stencil.cc:
- * lily/system-start-delimiter.cc:
- * lily/system.cc:
- * lily/text-item.cc:
- * lily/tie.cc:
- * lily/tuplet-bracket.cc:
- * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
- <cmath> beacause isinf/isnan is undefined in <cmath>
-
-2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
-
- * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
-
-2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION: release 2.5.3
-
-2004-11-29  Arno Waschk <arno@arnowaschk.de>
-
- * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
-
-2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/music-functions.scm (cue-substitute): voice counts start at 0.
-
- * lily/note-head.cc (internal_print): always try the "s" head if
- u/d not found.
-
- * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
-
-2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/parmesan-heads.mf (overdone_heads): typos.
-
-2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * lily/parser.yy (markup): in markups, { .. } without command
- before are also flattened, ie \line must be explicitely used.
-
- * Documentation/user/changing-defaults.itely:
- * Documentation/user/notation.itely:
- * input/wilhelmus.ly:
- * input/regression/instrument-name-markup.ly:
- * input/regression/markup-score.ly:
- * input/regression/new-markup-scheme.ly:
- * input/regression/new-markup-syntax.ly:
- * input/test/coriolan-margin.ly: use \line in markups where
- appropriate
-
-2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/new-markup.scm (map-markup-command-list): helper function
- used in parser.yy to map markup commands on a markup list.
-
- * lily/parser.yy: get rid off < > in markups by treating { } as
- real lists.
-
- * lily/lexer.ll: remove < > from markup lexer mode.
-
- * scripts/convert-ly.py (conv): add rule for converting
- \markup < > to \markup { }
-
- * ly/titling-init.ly:
- * input/test/coriolan-margin.ly:
- * input/regression/new-markup-syntax.ly:
- * input/regression/new-markup-scheme.ly:
- * input/regression/multi-measure-rest-text.ly:
- * input/regression/markup-stack.ly:
- * input/regression/markup-score.ly:
- * input/regression/instrument-name-markup.ly:
- * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
- * input/mutopia/R.Schumann/romanze-op28-2.ly:
- * input/mutopia/J.S.Bach/wtk1-fugue2.ly:
- * input/wilhelmus.ly:
- * Documentation/user/notation.itely:
- * Documentation/user/music-glossary.tely:
- * Documentation/user/changing-defaults.itely: change < > to { } in
- markups
-
-2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/accidental-placement.cc (position_accidentals): shortcut if
- no accidentals to place.
-
-2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
- * scm/define-grob-properties.scm (all-user-grob-properties): fixed
- typo s/ly:dimension ?/ly:dimension?/
-
- * input/regression/lily-in-scheme.ly:
- * input/regression/music-function.ly:
- * ly/spanners-init.ly (assertBeamSlope):
- * scm/music-functions.scm (def-grace-function): add the paper
- argument to music function definitions.
-
-2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/moment.cc (LY_DEFINE):
- ly:moment-main-{denominator,numberator}, new function.
-
- * lily/score-engraver.cc (typeset_all): assign to column on basis
- of axis-group-parent-X setting.
-
- * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
- add_element() on basis of axis-group-parent-Y setting.
-
- * lily/grob.cc: add axis-group-parent-{XY} properties.
-
- * input/regression/spacing-stick-out.ly: new file.
-
- * lily/simple-spacer.cc (add_columns): use binary search for
- setting column rods. Changes O(n^2) to O(n log(n)) for
- constructing spacing problem from columns.
- (add_columns): read allow-outside-line to make sure no texts stick
- out.
- (solve): Simple_spacer::is_active() only determines
- satisfies_constraints_ for non-ragged typesetting.
-
- * lily/simultaneous-music.cc (to_relative_octave): only set
- old_relative_used if return pitch actually changed.
-
- * scm/define-context-properties.scm
- (all-user-translation-properties): change to match implementation.
-
- * python/lilylib.py: Replace re.match by re.search and adds "-c
- showpage" to the gs command line (Johannes Schindelin)
-
- * scm/framework-ps.scm (output-preview-framework): sanitize bbox
- before processing. Prevents crash when inf is in the extent.
-
- * scm/define-markup-commands.scm (note-by-number): add "s" to
- "noteheads-" glyphname.
-
- * lily/parser.yy (Generic_prefix_music): supply parser argument to
- music function as well.
-
-2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION: release 2.5.2
-
- * Documentation/user/changing-defaults.itely (Creating titles):
- add breakbefore variable.
-
- * lily/paper-book.cc (set_system_penalty): new function. Set
- penalty_ based on breakBefore setting
-
- * lily/context-specced-music-iterator.cc (construct_children):
- interpret special context id $uniqueContextId
-
- * lily/context.cc (create_unique_context): new method. Move
- creation of unique (\new) contexts into interpreting phase. This
- makes
-
-   foo= \new Staff ..
-   << \foo \foo >>
-
- produce 2 staves.
-
-
- * scm/define-music-properties.scm (all-music-properties): add
- quoted-voice-direction
-
- * ly/music-functions-init.ly: killCues function.
-
- * scm/music-functions.scm (cue-substitute): move creation of voice
- contexts further to the back.
-
-2004-11-25  Werner Lemberg  <wl@gnu.org>
-
- * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
- `/hyphen' in encoding vector to get correct glyph name for EC fonts.
-
-2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
-
- * buildscripts/guile-gnome.sh: Fixed typo.
-
-2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/lexer.ll: add < >  to markup lexer mode (backportme)
-
- * scripts/abc2ly.py (dump_slyrics): add ord().
-
- * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
- to regular engraver.
-
-2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
-
-2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/define-markup-commands.scm (fill-line): Typo.
-
- * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
- and newer.
-
-2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
-
- * ly/dynamic-scripts-init.ly: Fixed typo.
-
-2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
- note-head, to have different attachment points for up and down.
-
- * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
-
- * mf/feta-generic.mf (else): remove solfa.
-
- * mf/feta-bolletjes.mf (tishape): remove unicode test.
-
- * scm/define-context-properties.scm
- (all-user-translation-properties): add shapeNoteStyles property.
-
- * lily/shape-note-heads-engraver.cc (process_music): new file.
-
- * lily/event.cc (transpose): call Event::transpose() for
- transposing the tonic.
-
-2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm: Save some pointers about pango/fontconfig
- Unicode/OpenType and AFM.
-
- * lily/include/guile-compatibility.hh (scm_from_bool): Add.
-
-2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/grob.cc (Grob): idem. Plugs mem leaks.
-
- * lily/context.cc (Context): unprotect key from ctor.
-
- * scm/stencil.scm (stack-lines): return empty-stencil if argument
- is '()
- (stack-stencils): idem.
-
- * Documentation/user/changing-defaults.itely (Creating titles):
- document new title layout options.
-
- * lily/parser.yy (lilypond_header_body): copy previous
- $globalheader if present.
-
- * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
- ly:module-copy
-
- * scm/page-layout.scm (marked-up-headfoot): remove old functions.
-
- * scm/titling.scm: remove old titling functions
-
- * lily/stencil.cc (translate): remove absolute dimension.
-
- * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
- via markup.
-
- * scm/page-layout.scm (marked-up-headfoot): create header/footer
- field from user-supplied markup
-
- * scm/define-markup-commands.scm (on-the-fly): new markup
- command. Enter SCM markup procedure directly in Scheme.
- (fromproperty): new markup command. Read markup from props argument.
-
- * scm/titling.scm (marked-up-title): create title via
- user-specified markup.
-
- * scm/define-markup-commands.scm (column): remove empty stencils
- from column.
-
- * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
- not have side-effect of creating variable stub.
-
- * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
-
-2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/encoding.scm (coding-alist):
- * scm/font.scm (add-ec-fonts):
- * ly/paper-defaults.ly: Use actual name for EC fontencoding:
- Extended-TeX-Font-Encoding---Latin.
-
- * lily/side-position-interface.cc (general_side_position): Add
- actual offset to error message (avoid constant error messages).
-
- * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
- block.
-
- * lily/font-select.cc (select_encoded_font)
- (get_font_by_mag_step, get_font_by_design_size):
- * lily/modified-font-metric.cc (Modified_font_metric):
- * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
-
- * scm/encoding.scm (coding-alist): Add fetaDynamic.
- (read-encoding-file): Bugfix: do not require space after bracket.
-
- * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
- these do not exist.
-
-2004-11-20  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/notation.itely: added info about typesetting
- boxed bar numbers.
-
-2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * flower/interval.cc (T_to_string): gcc4 fixes.
-
- * scm/define-markup-commands.scm (fill-line): use
- stack-stencils. This fixes problems with putting already centered
- stencils in a line.
-
- * VERSION: release 2.5.1
-
- * lily/bar-line.cc (get_staff_bar_size): add line thickness.
-
-2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * input/example-[1-3].ly: simplify.
-
- * lily/cluster-engraver.cc (try_music): react to busy-playing-event
-
- * scm/output-ps.scm (new-text): new function. Use glyphshow to
- show glyphs.
-
- * scm/encoding.scm (decode-byte-string): new function.
-
- * scripts/convert-ly.py (conv): add warning about
- set-global-staff-size.
-
- * Doxyfile: add.
-
- * scripts/convert-ly.py (conv): add raggedlastbottom rule
- (conv): warn for TextSpanner split.
- (conv): warn for textheight.
-
-2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * GNUmakefile.in (install-WWW): Invoke install-info, so that when
- building the documentation, info with images are installed.
- (final-install): Fix description.  Mention sourcing of login
- scripts (instead of running).
-
-2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Debian lmodern support.  Note that LilyPond will issue warnings
-
-     no such encoding: "FontSpecific"
-
-   The font selection mechanism wants to get the encoding from the
-   font itself, but the idea of lmodern is that it is usable with
-   different encodings, ie, Lily should get the encoding from the
-   font tree, rather than the font itself.  This would require some
-   more work.
-
- * configure.in: Test for and accept lmodern if EC fonts not found.
-
- * scm/framework-tex.scm (font-load-command): TeX font name
- mangling for latin1 encoded cork-lm fonts.
- (convert-to-ps): Load lm.map if available.
-
- * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
- available.
-
- * scm/encoding.scm (coding-alist): Add cork-lm encoding.
-
- * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
- available.
-
- * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
- path for absolute file name, that is silly.
-
- * lily/score-engraver.cc (initialize):
-
- * Documentation/user/GNUmakefile (local-install-info): Invoke
- install-info --remove first.
-
- * #include cleanup (Andreas Scherer).
-
-2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
-
- * input/test/script-abbreviations.ly: fix typos.
-
-2004-11-17  Werner Lemberg  <wl@gnu.org>
-
- * python/lilylib.py (options_help_str): Support pretty-printing of
- newlines in fourth element of option description.
-
- * scripts/lilypond-book.py (option_definitions): Use new lilylib
- feature.
- Sort options.
-
- * Documentation/user/lilypond-book.itely: Finish update.
-
-2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/user/macros.itexi: Add comment about \command.
-
- * Documentation/user/lilypond.tely:
- * Documentation/user/lilypond-book.itely: Fix names of lilypond
- and lilypond-book nodes, so that `info lilypond' visits the manual
- at top level, and `info lilypond-book' visits the lilypond-book
- section.
-
- * Documentation/user/GNUmakefile (local-install-info): Fix rules
- and packager messages.
-
- * lily/pangofc-afm-decoder.cc: Update test.
-
-2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/lily-library.scm (char->unicode-index): New function.
-
- * scm/output-gnome.scm:
- * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
-
- * Proper naming of file name throughout; s/filename/file[-_]name/.
-
- * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
-
- * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
-
-2004-11-16  Werner Lemberg  <wl@gnu.org>
-
- * scripts/lilypond-book.py: The Lord has commanded me to use only
- tabs for indentation.  Your humble servant obeys.
-
-2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
- including font, if LilyPond-feta font is only feta font in path.
-
- * scm/output-gnome.scm (text): Revert to file name of font if font
- has no name.  Fixes ec font selection.
- (char): Bugfix: do not utf8 twice.  Fixes clefs.
-
- * scm/framework-svg.scm:
- * scm/output-svg.scm: New file.  TODO: figure out how to
- do character by index in font.
-
- * scm/output-sodipodi.scm: Remove.
-
- * scm/output-ps.scm (stem): Remove.
-
-2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm (beam): New function.
- (slur): Round corners.
- (round-filled-box): Round corners.
-
-2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/output-gnome.scm (beam): add function.
- (draw-line): new routine.
- (dashed-line): stub; call draw-line
- (polygon): new routine.
-
-2004-11-15  Werner Lemberg  <wl@gnu.org>
-
- * Documentation/user/lilypond-book.itely: Revise section on
- lilypond-book options.
- Other minor fixes.
-
- * scripts/lilypond-book.py: Change indentation to 4.
- Minor formatting.
-
-2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/system.cc (apply_tweaks): new function. Run tweaks on all
- grobs that have tweaks specced.
-
-2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
-
- * Documentation/user/sound-output.itexi: add code snippets for MIDI.
-
-2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
- actual char #, not 0 based index.
-
- * lily/system-start-delimiter.cc (staff_brace): Start at 65.
-
- * mf/feta-beugel.mf: Actually start at char #65.  Add header.
- Warning: do make -C mf clean.
-
- * lily/context-property.cc: Compile fix.
-
- * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
- Grok ec-fonts, braces and dynamics.
-
- * scm/framework-gnome.scm (gnome-main): Register braces with pango.
-
-2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/include/tweak-registration.hh: new file.
-
- * lily/tweak-registration.cc: new file.
-
- * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
- saving tweaks.
-
- * scm/output-gnome.scm (text): comment dribble.
-
-2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
-
- * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
- path-def before using.  Fixes muchtomany slurs in wrong places
- bug.
-
-2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
-
- * lily/include/object-key-undumper.hh (Module): new file.
-
- * lily/object-key-undumper.cc (Module): New file. Deserialize
- keys. SCM bindings
-
- * lily/object-key-dumper.cc (Object_key_dumper): idem.
- Provide SCM bindings.
-
- * lily/include/object-key-dumper.hh (class Object_key_dumper):
- new file. Serialize object keys.
-
- * lily/object-key.cc (dump): new function.
- (as_scheme): new virtual function
- (undump): new function
- (undumpers): new table.
-
- * lily/include/global-context.hh (Context): take \score key upon init.
-
- * lily/object-key-dumper.cc (serialize_key): new file.
-
- * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
-
- * lily/lily-lexer.cc: remove \quote.
-
- * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
-
- * lily/context.cc (Context): take key argument in ctor.
- (create_context): new function
-
- * lily/grob.cc (Grob): take key argument in ctor.
-
- * lily/lilypond-key.cc (do_compare): new file.
-
- * lily/object-key.cc (Object_key): new file.
-
- * lily/include/object-key.hh (class Object_key): new file.
-
- * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
-
-2004-11-13  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond-book.itely: add small warning about
- noindent default in lilypond-book.
-
- * Documentation/user/converters.itely: add examples for convert-ly.
-
- * Documentation/user/examples.itely: change version string in templates
- to 2.4.0.
-
-2004-11-12  Karl Hammar  <karl@aspodata.se>
-
- * GNUmakefile.in (local-WWW-post): `find ...` overflows the
- cmdline, use xargs instead (backportme)
-
-2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
-
- * Documentation/user/: Numerous fixes in the user manual.
-
-2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/parser.yy (re_rhythmed_music): search music expression for
- context-id, surround by \new Voice if not found. Fixes:
- addlyrics-second-staff.ly
-
- * VERSION: 2.5.0 released.
-
-2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/index.html.in: Fix url to one big page.  (backportme)
-
- * Documentation/user/GNUmakefile: Separate rules for split and
- unsplit html documents.  Remove perl massaging.  (backportme)
-
-2004-11-11  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/lilypond-book.itely: add short warning about
- \lilypond{} in LaTeX docs.
-
-2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
- found.  (backportme)
-
- * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
- version requirement.  (backportme)
-
- * configure.in: Be explicit about old versions of
- ec-fonts-mtraced.  (backportme)
-
- * lily/context-selector.cc (set_tweaks): New function.
- * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
- web with -DTWEAK.
-
- * Documentation/user/introduction.itely (Automated engraving):
- Remove fragment option.  Fixes web.
-
- * lily/context-property.cc (make_item_from_properties):
- * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
- #ifdef.
-
- * scm/define-context-properties.scm
- (all-internal-translation-properties): Add tweakRank and tweakCount.
-
- * lily/grob.cc:
- * scm/define-grob-properties.scm (all-internal-grob-properties):
- Add tweak-rank and tweak-count.
-
-2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
- New function.
- (text): Use them.
-
- * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
- animated/opaque grob dragging tweaks.
-
- * buildscripts/guile-gnome.sh: Update.
-
-2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
-
- * scm/define-grobs.scm (all-grob-descriptions): Added
- line-interface to the LigatureBracket object.
-
-2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/framework-gnome.scm (item-event): Support non-animated mouse
- dragging tweaks.
-
- * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
-
- * lily/context-selector.cc (store_context): New function.
-
- * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
- (store_grob): New function.
- (identify_grob): Add Moment parameter.
-
- * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
- exists.
-
- * scm/framework-gnome.scm (save-tweaks): Write as alist.
-
-2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * scm/framework-gnome.scm (item-event): Print grob id.
- (save-tweaks): New function.
- (tweak): New funtion.
- (item-event): Use it, bound to arrow keys.
-
- * lily/context-property.cc (make_item_from_properties): Register grob.
- * lily/context.cc (add_context): Register context.
-
- * lily/include/context-selector.hh:
- * lily/include/grob-selector.hh:
- * lily/context-selector.cc:
- * lily/grob-selector.cc: New file.
-
-2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/slur.cc: add 'positions to interface
-
- * lily/main.cc: reinstate PS as standard output format.
-
- * scm/framework-tex.scm (output-preview-framework): print systems
- up to first non title system.
-
- * lily/grace-engraver.cc (start_translation_timestep): split
- scm_cadddr
-
-2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/quote-iterator.cc (Module): remove old quote-iterator
-
- * scm/define-music-types.scm (music-descriptions): move
- NewQuoteMusic over QuoteMusic
-
- * Documentation/user/notation.itely (Formatting cue notes): use
- \cueDuring.
-
- * lily/new-quote-iterator.cc (quote_ok): new function.
-
- * input/regression/quote-cue-during.ly: new file.
-
- * input/regression/quote-grace.ly: new file.
-
- * scm/define-context-properties.scm (Module): change definition of
- graceSettings
-
- * lily/context-property.cc (Module): rename from
- translator-property.cc
-
- * lily/context.cc (context_name_symbol): new function
-
- * lily/grace-engraver.cc: new file. Set properties for grobs based
- on the grace-ness of now_moment().
-
- * scm/music-functions.scm (add-grace-property): use list
- iso. vector for graceSettings
- remove set-{start,stop}-grace-properties.
-
- * lily/new-quote-iterator.cc (construct_children): set
- quote_outlet_ if no quoted-context-{id,type} specified.
-
- * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
-
- * lily/parser.yy (command_element): remove \quote.
-
- * ly/music-functions-init.ly (location): add quoteDuring music
- function.
-
- * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
- optional semicolon. (backportme)
-
-2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
- need to link to GUILE et al.
-
-2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/define-music-properties.scm (all-music-properties): add
- quoted-context-type, quoted-context-id.
-
- * scm/lily.scm (type-check-list): new function.
-
- * scm/lily-library.scm: new file. Generic library routines.
-
- * lily/parser.yy (Generic_prefix_music): move typechecking out of
- parser.
-
- * ly/music-functions-init.ly: add quoteDuring function.
-
- * lily/include/music-iterator.hh (class Music_iterator): rename
- set_translator -> set_context
-
- * lily/parser.yy (Generic_prefix_music_scm): add
- MUSIC_FUNCTION_SCM_SCM_MUSIC
-
- * scm/lily.scm (sanitize-command-option): new function. (backportme)
-
- * scm/framework-tex.scm (header): sanitize TeX paper size.
- (backportme)
-
-2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
-
- * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
-
- * scm/framework-tex.scm (font-load-command): Use T1 if no
- font-encoding set.  (backportme)
-
- * scm/lily.scm (postscript->pdf): Remove .pdf file if it
- exists before converting.  (backportme)
-
- * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
- exists before converting.  (backportme)
- (convert-to-ps): Remove .ps file if it exists before
- converting.  (backportme)
-
- * lily/lexer.ll: Remove extra progress newline, use present tense.
-
- * scm/paper.scm (paper-alist): public.
- * scm/framework-tex.scm (convert-to-ps):
- * scm/lily.scm (postscript->pdf): Do not leak papersizename into
- command line.
-
-2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
-
- * lily/recording-group-engraver.cc (derived_mark): mark
- now_events_. (backportme)
-
-2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
-
- * scm/framework-tex.scm (convert-to-dvi): use ly:system for
- invoking latex. (backportme.)
-
- * lily/stem.cc (off_callback): center stems for all rest stems.
-
-2004-11-05  Werner Lemberg  <wl@gnu.org>
-
- * Documentation/user/lilypond.tely: Add more guidelines for writing
- lilypond texinfo documents.
-
-2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
-
- * Documentation/index.html.in: remove <hr>.
-
- * THANKS: change 2.3 to 2.4.
-
-2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
-
- * scm/output-gnome.scm: More fontconfig comment.
-
-2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
-
- * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
- <package> directory in $(builddir)/share according with
- PACKAGE_NAME defined in the VERSION file.
-
-2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * lily/beam.cc (rest_collision_callback): use local beam
- multiplicity.
-
- * input/regression/stem-stemlet.ly: new file.
-
- * lily/stem.cc (add_head): store rests as well.
-
- * scm/define-grob-properties.scm (all-user-grob-properties): add
- stemlet-length
-
- * lily/stem.cc: store rests as well.
-
- * input/regression/new-slur.ly: mention forcing.
-
-2004-11-04  Werner Lemberg  <wl@gnu.org>
-
- * Documentation/user/*: A new round of layout fixes and document
- structure cleanup.
-
-2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
-
- * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
-
-2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
-
-2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
- * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
-
- * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
-
- * lily/main.cc (main): Invoke identify.
-
- * scm/lily.scm (postscript->pdf): Remove progress newline.
- Write progress to stderr.
-
- * lily/paper-book.cc (output): Remove progress newline.
-
- * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
- gettext on user messages, and remove whitespace.
-
- * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
-
- * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
- argv[0] (Thomas Scharkowski).
-
- * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
- call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
- for ec-fonts-mtraced.
-
- * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
- --srcdir build (Bertalan).
-
- * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
- headers and library too (Laura Conrad).
-
- * Documentation/topdocs/INSTALL.texi (Top): Mention development
- package for guile too (Laura Conrad).
-
- * lily/main.cc (usage): Typo.
-
-2004-11-02  Werner Lemberg  <wl@gnu.org>
-
- * Documentation/user/notation.ly: More fixes to improve appearance.
-
- * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
- better output for multicolumn tables.
-
-2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
-
- * lily/main.cc (dir_info): Fixed typo in the printouts.
-
-2004-11-01  Werner Lemberg  <wl@gnu.org>
-
- * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
- of output.
- Set `per_line' to 2; replace hard-coded value with it.
-
- * Documentation/user/*: Many fixes to improve appearance of
- printed manual.
-
-2004-11-01  Werner Lemberg  <wl@gnu.org>
-
- * Documentation/user/changing-defaults.itely,
- Documentation/user/notation.ly,
- Documentation/user/programming-interface.itely: Use @/.
- Fix formatting of some lilypond snippets and tables.
-
- * scripts/lilypond-book.py (compose_ly): Provide useful default
- for LINEWIDTH in `override'.
-
-2004-10-31  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/invoking.itely: change "3.0" -> "2.4"
-
-2004-10-31  Werner Lemberg  <wl@gnu.org>
-
- Resetting @exampleindent to `5' gives ugly results with texinfo's
- DVI output.  Use `@format @exampleindent 0 ... @end format' instead
- (if not quoting) to change @exampleindent only locally.
-
- * scripts/lilypond-book.py (NOQUOTE): New variable.
- (output) [LATEX]: Remove AFTER and BEFORE.
- [TEXINFO]: Remove AFTER and BEFORE.
- Fix QUOTE and VERBATIM pattern.
- Add NOQUOTE pattern.
- (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
- and BEFORE.
- [output_texinfo]: Use NOQUOTE.
-
-2004-10-31  Graham Percival  <gperlist@shaw.ca>
-
- * Documentation/user/changing-defaults.itely: clarify paper
- size commands with correct info.
-
- * Documentation/user/lilypond-book.itely: add more docs for
- filename extensions.
-
-2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
- * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
- (PATCH_LEVEL): start 2.5.0.
-
-#Local variables:
-#coding: utf-8
-#End:
-
+ @c

89 files changed:
.cvsignore
.gitignore [new file with mode: 0644]
ChangeLog
Documentation/topdocs/GNUmakefile
Documentation/topdocs/INSTALL.texi
Documentation/topdocs/NEWS.tely
Documentation/user/advanced-notation.itely
Documentation/user/basic-notation.itely
Documentation/user/global.itely
Documentation/user/instrument-notation.itely
Documentation/user/lilypond-book.itely
Documentation/user/page.itely
GNUmakefile.in
INSTALL.txt [deleted file]
README.txt [deleted file]
SConstruct
THANKS
VERSION
buildscripts/git-update-changelog.py [new file with mode: 0644]
elisp/emacsclient.patch [new file with mode: 0644]
elisp/server.el.patch [new file with mode: 0644]
emacsclient.patch [deleted file]
flower/SConscript
flower/include/GNUmakefile [new file with mode: 0644]
flower/polynomial.cc
flower/test-std.cc
input/regression/fret-boards.ly [new file with mode: 0644]
input/regression/rest-pitched-beam.ly [new file with mode: 0644]
input/regression/slur-clef.ly [new file with mode: 0644]
input/test/vertical-extent.ly
lily/axis-group-engraver.cc
lily/bar-number-engraver.cc
lily/beam-engraver.cc
lily/beam.cc
lily/dot-column.cc
lily/fingering-engraver.cc
lily/fretboard-engraver.cc [new file with mode: 0644]
lily/grob-closure.cc
lily/grob-property.cc
lily/grob.cc
lily/include/GNUmakefile [new file with mode: 0644]
lily/include/grob.hh
lily/include/lily-guile-macros.hh
lily/include/lily-guile.hh
lily/include/side-position-interface.hh
lily/include/simple-closure.hh
lily/include/slur-scoring.hh
lily/include/slur.hh
lily/mark-engraver.cc
lily/melody-engraver.cc
lily/pango-font.cc
lily/paper-book.cc
lily/script-column.cc
lily/semi-tie.cc
lily/separating-group-spanner.cc
lily/side-position-interface.cc
lily/simple-closure.cc
lily/slur-engraver.cc
lily/slur-scoring.cc
lily/slur.cc
lily/source-file.cc
lily/system.cc
lily/tab-note-heads-engraver.cc
lily/tie-formatting-problem.cc
lily/tie-performer.cc
lily/tie.cc
lily/tuplet-bracket.cc
ly/engraver-init.ly
ly/gregorian-init.ly
ly/paper-defaults.ly
mf/GNUmakefile
mf/SConscript
po/de.po
python/GNUmakefile
python/convertrules.py
python/midi.c
scm/define-context-properties.scm
scm/define-grob-interfaces.scm
scm/define-grob-properties.scm
scm/define-grobs.scm
scm/fret-diagrams.scm
scm/output-lib.scm
scm/translation-functions.scm
scripts/lilypond-book.py
server.el.patch [deleted file]
stepmake/aclocal.m4
stepmake/bin/add-html-footer.py
stepmake/stepmake/generic-targets.make
stepmake/stepmake/po-vars.make

index 0d81d2bede9a516f61ed424f2b51a98921f441df..c46b9a92cad3aea758057782c1404250aa3e70ad 100644 (file)
@@ -1,4 +1,3 @@
-#*
 *.abc
 *.aux
 *.dvi
@@ -21,7 +20,6 @@
 *.twy
 *.txt
 */out/*
-*[0-9]pk
 *configure
 *~
 .gdbinit
diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..6a3858d
--- /dev/null
@@ -0,0 +1,17 @@
+config.hh
+config.make
+config.status
+config.log
+*~
+GNUmakefile
+aclocal.m4
+autom4te.cache
+configure
+*.ps
+*.eps
+*.pdf
+TAGS
+tags
+.gdbinit
+?.ly
+*.midi
index 890350d9ed973c5dc2be85b9f685f8cc2bf5bc81..65b9d978c5495cd421d5118f67da7ba5488a47a8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,307 @@
+2006-10-30  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * stepmake/stepmake/po-vars.make: Resolve.
+
 2006-10-29  Jan Nieuwenhuizen  <janneke@gnu.org>
 
        * stepmake/stepmake/po-vars.make: test change for GIT gateway.
 
+2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * buildscripts/git-update-changelog.py (main): write .msg and cvs command.
+
+       * scm/define-grobs.scm: 
+       separation-items have width
+       
+       * VERSION: 
+       bump version
+       
+       * .gitignore: 
+       * Documentation/topdocs/NEWS.tely: 
+       * lily/separating-group-spanner.cc: 
+       * lily/slur-engraver.cc: 
+       * lily/slur-scoring.cc: 
+       * scm/define-grobs.scm: 
+       * input/regression/slur-clef.ly:
+       add breakableSeparationItem to extra encompass for slurs. This
+       fixes slur/clef slur/key collisions etc. Should fix #49
+       
+       * lily/include/slur-scoring.hh: 
+       * lily/slur-scoring.cc: 
+       Use X of separation item as slur start. Fixes #120
+
+2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * buildscripts/git-update-changelog.py (changelog_body): don't
+       write committishes.
+
+       * lily/grob.cc: add avoid-slur
+
+2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * emacsclient.patch: 
+       * server.el.patch: 
+       move server/emacsclient to elisp/
+
+       * buildscripts/git-update-changelog.py (Commit.note_del_file):
+       apply patches too
+
+       * elisp/server.el.patch: 
+       move emacs patches.
+
+       * elisp/emacsclient.patch: 
+       emacsclient too.
+
+       * buildscripts/git-update-changelog.py: 
+       ignore ChangeLog
+
+       * .gitignore: 
+       update
+
+       * ChangeLog: 
+       * buildscripts/git-update-changelog.py: 
+       script to update ChangeLog with Git messages.
+
+       * lily/beam-engraver.cc: 
+       * input/regression/rest-pitched-beam.ly: 
+       don't set callback if staff-position set. Fixes #126.
+
+       * lily/bar-number-engraver.cc: 
+       * lily/beam.cc: 
+       * lily/fingering-engraver.cc: 
+       * lily/grob-property.cc: 
+       * lily/grob.cc: 
+       * lily/include/grob.hh: 
+       * lily/include/lily-guile-macros.hh: 
+       * lily/mark-engraver.cc: 
+       * lily/melody-engraver.cc: 
+       * lily/script-column.cc: 
+       * lily/tie-formatting-problem.cc: 
+       * lily/tie.cc: 
+       internal_get_property_data() using ly_symbol2scm()
+
+       * stepmake/stepmake/generic-targets.make: 
+       create .gitignore in outdir.
+
+       * .gitignore: 
+       new file.
+
+2006-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * input/test/vertical-extent.ly: 
+       * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
+
+2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * stepmake/bin/add-html-footer.py (compose): remove setgcos
+
+2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * GNUmakefile.in (install-help2man): install-help2man target. 
+
+2006-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * SConstruct (configure): Do not check for /bin/sh.
+
+2006-10-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
+       files.
+
+       * Documentation/topdocs/NEWS.tely (Top): add FretBoards example. 
+
+       * input/regression/fret-boards.ly: new file.
+
+       * po/de.po: new po courtesy translation team.
+
+       * scripts/lilypond-book.py (get_option_parser): add newline to doc
+       string.
+
+2006-10-27  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * ly/gregorian-init.ly (neumeDemoLayout): update
+       minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent 
+
+       * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
+       obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
+
+2006-10-27  Erlend Aasland  <erlenda@gmail.com>
+
+       * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
+       Yet another build fix.
+
+2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * SConstruct (lilypondprefix): use sorted() for list_sort()
+       indent 4
+
+2006-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * flower/SConscript: Unit test rules.
+
+       * flower/test-std.cc: Compile fix.
+
+2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * python/midi.c (pymidi_parse_track): warning fixes.
+
+       * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
+       include dot-column.hh
+
+2006-10-26  Graham Percival  <gpermus@gmail.com>
+
+       * Documentation/user/{basic-, global}: minor changes from mailist.
+
+2006-10-26  Erlend Aasland  <erlenda@gmail.com>
+
+       * scm/define-grobs.scm: trivial beautification
+
+       * lily/tie-performer.cc: no need to #include "pqueue.hh"
+
+       * lily/source-file.cc: put multibyte var inside #if clause
+
+       * scm/define-grob-interfaces.scm:
+       * scm/define-grob-properties.scm:
+       Build fix (string-fret-finger-combinations)
+
+       * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
+       lexer-gcc-3.1.sh
+
+       * Documentation/user/lilypond-book.itely: Build fix.
+
+2006-10-26  Joe Neeman  <joeneeman@gmail.com>
+
+       * lily/system.cc (get_paper_system): 
+       * lily/paper-book.cc (systems): 
+       move most of the backwards compatibility stuff into
+       Paper_book::systems
+
+       * Documentation/topdocs/NEWS.tely: add 2 entries for the
+       page breaking stuff
+
+       * Documentation/user/page.itely: remove time-scaled-music
+       bug for the Page_turn_engraver
+
+       * lily/paper-book.cc (set_system_penalty): backwards
+       compatibility (breakbefore) for the old page breaker
+
+2006-10-25  Graham Percival  <gpermus@gmail.com>
+
+       * Diocumentation/user/instrument-notation.itely: added more
+       info about stanzas; thanks Geoff!
+
+       * Documentation/user/ {basic, advanced}: small fixes from
+       mailist.
+
+       * THANKS: add some bug reporters.
+
+2006-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * scm/define-context-properties.scm (all-user-translation-properties):
+       noteToFretFunction: Add.
+
+       * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
+       fret-diagram-interface (WAS: fret-board-interface).  Fixes build.
+
+2006-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * flower/file-name.cc (dos_to_posix): Help std::string.copy with
+       trailing zero.
+
+       * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
+       Remove bashism in delete.
+
+2006-10-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
+
+       * scm/translation-functions.scm (determine-frets-mf): flatten let*
+
+       * scm/define-context-properties.scm
+       (all-user-translation-properties): add maximumFretStretch property.
+
+       * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
+
+       * lily/source-file.cc (get_counts): use multibyte variable.
+
+       * scm/translation-functions.scm (determine-frets-mf): new
+       function: compute fret numbers. 
+
+       * scm/output-lib.scm (string-frets->description) new function.
+       (fret-board::calc-stencil): new function
+
+       * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
+
+       * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob. 
+
+       * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
+
+       * lily/tab-note-heads-engraver.cc: cleanups.
+
+       * lily/fretboard-engraver.cc: new file
+
+       * ly/engraver-init.ly: add FretBoards context
+
+2006-10-24  Joe Neeman  <joeneeman@gmail.com>
+
+       * lily/grob.cc (pure_relative_y_coordinate)
+       (pure_height): use the new call_pure_function stuff
+
+       * lily/grob-property.cc (call_pure_function): wrapper for the scheme
+       call-pure-function
+
+       * lily/side-position-interface.cc (pure_y_aligned_side): add an
+       optarg
+
+       * lily/simple-closure.cc (ly_eval_simple_closure): make
+       simple-closure evaluatable from scheme
+       (evaluate_with_simple_closure): make simple-closures pure-
+       evaluatable
+
+       * lily/slur.cc (pure_outside_slur_callback): new function
+
+       * ly/paper-defaults.ly: change default blank-page-force to 2 (this
+       fits in with previous changes that made the page forces much
+       smaller)
+
+       * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
+       and pure-Y-extent into this new function.
+       (pure-conversions-alist): add outside-slur-callback
+
+2006-10-24  Mats Bengtsson  <mabe@drongo.s3.kth.se>
+
+       * Documentation/user/advanced-notation.itely (Instrument names):
+       Remove obsolete bug workaround for instrument names on piano
+       staff. 
+
+2006-10-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * Documentation/user/lilypond-book.itely (Integrating DocBook and
+       music): patch by Bertalan Fodor for docbook.
+
+       * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
+       of $(LILYPOND). Prevents lilypond run for .txt files.
+
+       * INSTALL.txt: gitness.
+
+       * .cvsignore: update to force gitness. 
+
+2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
+       detect suicide in nested tuplets.
+
+2006-10-23  Werner Lemberg  <wl@gnu.org>
+
+       * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
+       typo in argument to FT_Get_X11_Font_Format.
+
+2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
+
+       * stepmake/stepmake/po-vars.make: more gitness.
+
+       * flower/polynomial.cc (check_sol): no empty if bodies. 
+
 2006-10-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
 
        * stepmake/stepmake/po-vars.make: test change for GIT gateway.
        * flower/include/std-vector.hh
        * flower/include/array.hh (concat): Globally change to insert ().
 
-       
        * flower/include/std-vector.hh
        * flower/include/parray.hh
        * flower/include/array.hh (elem, elem_ref): Globally replace by
        * lily/staff-performer.cc (initialize): add tempo/name to
        audio_staff_
 
-
 2005-08-26  Graham Percival  <gpermus@gmail.com>
 
        * Documentation/user/advanced.itely: add text-only example.
        time sigs and related stuff.
 
        * scm/define-grob-properties.scm (all-user-grob-properties): add
-       @code{} tags to property description.
-
-       * lily/include/line-group-group-engraver.hh (Module): remove file.
-
-       * python/convertrules.py (conv): add rule for
-       Engraver_group_engraver -> Engraver_group.
-
-       * lily/include/performer-group-performer.hh: analogous.
-
-       * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
-
-       * lily/context-def.cc (instantiate): check for
-       Engraver_group_engraver and Performer_group_performer not
-       Engraver/Performer. Fixes crashes when doing \with { \consists .. }
-2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * input/les-nereides.ly: Remove three fingering tweaks, update
-       remaining one.
-
-       * input/regression/slur-script-inside.ly: Update, fix doc.
-
-       * scm/script.scm: Update to avoid-slur.
-
-       * scm/define-grob-properties.scm (avoid-slur): New property.
-
-       * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
-       * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
-       outside_slur_callback if avoid-slur != #'inside.
-
-       * scm/define-grobs.scm (Fingering, Textscript): No
-       inside-slur/outside-slur preference.
-       (DynamicLineSpanner): Always outside slur.
-
-       * input/regression/slur-script.ly: More tests.
-
-2005-08-17  Graham Percival  <gpermus@gmail.com>
-
-       * Documentation/user/lilypond-book: fix notime entry.
-
-       * Documentation/user/advanced-notation.itely: add info on
-       getting an I rehearsal mark.
-
-       * Documentation/user/putting.itely: reinstate "I", re-enforce
-       the fact that \override numbers are the result of
-       experimentation and personal taste.
-
-       * Documentation/user/invoking.itely: update convert-ly bugs.
-
-2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
-       to #t.
-
-       * lily/timing-translator.cc (initialize): don't initialize timing.
-
-       * input/regression/stem-spacing.ly (Module): remove file.
-
-       * input/regression/spacing-stick-out.ly: specify Score context for
-       \override
-
-       * input/regression/clefs.ly: remove spurious {}s 
-
-2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * Documentation/topdocs/NEWS.tely,
-       input/regression/repeat-percent-count.ly: clarify a bit.
-
-2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * input/no-notation/display-lily-tests.ly: delete
-       display-lily-init call.
-
-       * ly/music-functions-init.ly (displayLilyMusic): move
-       display-lily-init call at top level, so that the user should not
-       have to call it.
-
-       * scm/define-music-display-methods.scm (note-name->lily-string):
-       retrieve note names directly from pitchnames using new function `rassoc'.
-       (display-lily-init): note names list construction removed.
-
-2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * THANKS: spello.
-
-       * lily/lily-parser.cc (get_header): copy module, instead of
-       returning it.
-
-       * Documentation/topdocs/NEWS.tely (Top): add entry for percent
-       counters.
-
-       * Documentation/user/basic-notation.itely (Measure repeats): add
-       links to Counter grobs.
-
-       * scm/define-grobs.scm (all-grob-descriptions): add
-       DoublePercentRepeatCounter
-       (all-grob-descriptions): add PercentRepeatCounter
-
-       * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
-       also create counter grobs.
-
-       * lily/separation-item.cc (extremal_break_aligned_grob): don't
-       return grob without space-alist.
-
-       * input/proportional.ly: tune staff-padding.
-
-       * input/regression/repeat-percent-count.ly: new file. 
-
-2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * input/no-notation/display-lily-tests.ly: moved from
-       input/regression/ to input/no-notation. Be sure to call
-       `display-lily-init' before trying to use the display function.
-
-2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * scripts/lilypond-book.py (option_definitions): Don't localize
-       the empty string. Fixes bug when --psfonts was used with
-       non-English locale.
-
-2005-08-15  Graham Percival  <gpermus@gmail.com>
-
-       * lily/tuplet-bracket.cc: simple build fix.
-
-       * Documentation/user/putting.itely: use "we" instead of "I".
-
-       * Documentation/user/basic-notation.itely: cautionary accidentals
-       work with naturals, too.
-
-2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/tuplet-bracket.cc (calc_position_and_height): add
-       staff-padding support.
-
-       * input/proportional.ly: set staff-padding.
-       
-       * VERSION (PATCH_LEVEL): release 2.7.5
-
-       * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
-       fixes. Remove tweaks.
-
-       * input/regression/tuplet-slope.ly: add a test case.
-
-       * lily/tuplet-bracket.cc (calc_position_and_height): revert
-       erroneous fix. Add spanner bounds to offset array with relative X
-       positions.
-
-       * ly/engraver-init.ly: add Rest_engraver only once.
-
-       * scm/define-music-display-methods.scm (KeyChangeEvent): only do
-       (*parser*) lookup if (*parser*) != #f.
-
-2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
-       Cut-and paste update.
-
-       * 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  <janneke@gnu.org>
-
-       * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
-       encoding files are already removed.
-
-2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <gpermus@gmail.com>
-
-       * Documentation/user/global.itely: add "fit as much as
-       possible onto this page" example (Vertical spacing).
-
-2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * *: Nitpick run.
-
-       * buildscripts/fixcc.py: Fixes.
-
-2005-08-12  Graham Percival  <gpermus@gmail.com>
-
-       * Documentation/user/advanced-notation.itely: add markup
-       example to Text spanners.
-
-2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * 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  <hjunes@cc.hut.fi>
-
-       * po/TODO: suggest to use a dedicated tool like kbabel.
-
-       * po/fi.po: update using kbabel.
-
-2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * *: Remove obsolete files.  Nitpick run.
-
-       * lily/lily-guile.cc (parse_symbol_list): Bugfix.
-
-2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * 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  <janneke@gnu.org>
-
-       * 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  <mabe@s3.kth.se>
-
-       * scm/define-markup-commands.scm: Improved regexp to search for
-       EPS bounding boxes and corrected call to ly:warning.
-
-2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * Documentation/user/programming-interface.itely (Displaying music
-       expressions): doc for \displayLilyMusic. Also some precisions in
-       "Markup construction in Scheme"
-
-2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * 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  <gpermus@gmail.com>
-
-       * 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  <mabe@s3.kth.se>
-
-       * 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  <gpermus@gmail.com>
-
-       * 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  <janneke@gnu.org>
-
-       * scm/framework-ps.scm (dir-join): Rename from path-join (joins
-       directories, not paths).
-
-2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * 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  <gperlist@shaw.ca>
-
-       * scm/define-markup-commands: fix reversed justify/wordwrap
-       doc strings.
-
-2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * ly/bagpipe.ly: updated.
-
-       * Documentat/user/instrument.itely: un-comment out bagpipe example.
-
-2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * ly/bagpipe.ly: new file.
-
-       * THANKS: added Sven Axelsson.
-
-2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <mabe@s3.kth.se>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * input/test/time-signature-staff.ly: new file.
-
-       * ly/declarations-init.ly (center): escape to Scheme. Fixes
-       spurious #<Music FingerEvent> errors. Backportme.
-
-2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * Documentation/user/programming-interface.itely (Markup
-       construction in Scheme): Corrected markup syntax in the
-       translation table.
-
-2005-08-03  Graham Percival  <gperlist@shaw.ca>
-
-       * 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  <gperlist@shaw.ca>
-
-       * Documentation/user/music-glossary: remove accidentally committed
-       fink patch.
-
-2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * Documentation/user/music-glossary: more languages
-       for tenuto.
-
-       * Docuemntation/user/instrument-notation.itely: minor
-       update for bagpipe example.
-
-2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * input/regression/+.ly (TODO): add some text.
-
-2005-07-28  Graham Percival  <gperlist@shaw.ca>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * 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  <hanwen@xs4all.nl>
-       * 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  <janneke@gnu.org>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * scm/lily.scm (lilypond-all): clear anonymous modules after
-       processing files.
-
-2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <nicolas.sceaux@free.fr>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <nicolas.sceaux@free.fr>
-
-       * 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  <janneke@gnu.org>
-
-       * Documentation/topdocs/NEWS.tely (Top): Typo.
-
-2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <janneke@gnu.org>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hjunes@cc.hut.fi>
-
-       * 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 </p>.
-
-2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * ly/titling-init.ly: add printallheaders option.
-
-       * Documentation/user/global.itely: document printallheaders.
-
-2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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<Grob> 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  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond-book.itely: fixes example.
-
-2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * 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  <gperlist@shaw.ca>
-
-       * 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  <janneke@gnu.org>
-
-       * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
-
-2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <isizaki@mte.biglobe.ne.jp>
-
-       * 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  <gperlist@shaw.ca>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * scm/define-markup-commands.scm (justify-field): add. 
-
-       * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
-
-2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * 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  <mabe@s3.kth.se>
-
-       * Documentation/user/advanced-notation.itely (Setting automatic
-       beam behavior): Correct the documentation of
-       revert-auto-beam-setting (backportme)
-
-2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * input/regression/fret-diagrams.ly: stretch example.
-
-2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
-       Fodor).
-
-2005-06-30  Graham Percival  <gperlist@shaw.ca>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * po/zh_TW.po: update from translation project.
-
-2005-06-28  Graham Percival  <gperlist@shaw.ca>
-
-       * scm/midi.scm: compile fix.
-
-2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * 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  <stecmccarthy@hotpop.com>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * 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  <janneke@gnu.org>
-
-       * 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  <gperlist@shaw.ca>
-
-       * 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  <janneke@gnu.org>
-
-       * Documentation/topdocs/NEWS.tely: Update to 2.6.
-
-2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * THANKS: update to 2.6
-
-       * VERSION: 2.6.0 released.
-
-2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
-       rule, errorneously removed probably because of misleading comment.
-
-2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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 <hjunes@cc.hut.fi>
-
-       * po/fi.po: add latest translations.
-
-2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * 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  <gperlist@shaw.ca>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
-       to fonts.
-
-2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * 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  <hanwen@xs4all.nl>
-
-       * VERSION (PATCH_LEVEL): release 2.5.32
-
-       * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
-       variable in lily module
-
-       * scm/framework-ps.scm (output-classic-framework): error message
-       regarding the classic framework.
-
-       * Documentation/user/henle-flat-gray.png (Module): new file.
-
-       * Documentation/user/baer-flat-gray.png (Module): new file.
-
-       * scm/output-lib.scm (fret-number-tablature-format): vcenter and
-       whiteout for markups.
-
-       * buildscripts/substitute-encoding.py (note_glyph): include _ in
-       regex too. This fixes change clef appearance in PDF. 
-
-       * ttftool/include/*: remove.
-
-       * configure.in (reloc_b): remove TTFTOOL_ENDIAN
-
-       * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
-
-       * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
-
-       * ttftool/*: remove ttftool subdirectory.
-
-       * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
-
-       * lily/ttf.cc (print_header): new file. Convert to type42, using
-       FreeType to parse the TTF. 
-
-       * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
-       and post table may differ. Pass around post_nglyphs as well.
-
-2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/music-functions-init.ly (musicMap): new music function
-       musicMap. 
-       
-2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/mutopia-rules.make: anti-alias-factor = 2
-
-       * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
-       page switch.
-
-       * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
-       anti-alias-factor for lilypond-book runs.
-
-       * scm/ps-to-png.scm (scale-down-image): new function.
-       (my-system): new function.
-       (make-ps-images): blow up GS resolution by anti-alias-factor,
-       scale down image by anti-alias-factor.  This improves appearance
-       of bitmaps
-       (make-ps-images): remove showpage. Fixes spurious empty png at
-       end.
-
-       * scm/framework-ps.scm (write-preamble): downcase filename before
-       string-matching. Should fix .TTF files (as opposed to ttf files)  
-
-       * Documentation/user/tutorial.itely (Running LilyPond for the
-       first time): separate subsections for windows, macos and unix.  
-
-       * Documentation/user/invoking.itely (Updating files with
-       convert-ly): add MacOS X note.
-
-2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/introduction.itely (Engraving): don't include
-       file optical-spacing, add directly.
-
-       * lily/paper-outputter.cc (file): open file in binary mode. This
-       fixes OTF embedding on windows.
-
-2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (write-preamble): remove debugging output.
-
-       * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
-
-       * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
-       outdir.
-       (install-fc-cache): install font cache in installation directories.
-
-2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/editor.scm (editor-command-template-alist): Use char iso
-       column, except for Emacs.
-       (get-editor-command): Substitute char too (Bertalan Fodor).
-
-2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
-       quoted ~s.  This should fix PNG output on Windows; single quotes
-       are regular characters on Windows.
-
-2005-06-16  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/basic-notation.itely: include ChoirStaff
-       in System start delimiters.
-
-       * Documentation/user/putting.itely: new doc section on
-       fixing overlapping notation.
-
-2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/global.itely (Paper size): \paper is in
-       \book, not \score.
-
-       * make/mutopia-rules.make: -ddelete-intermediate-files
-
-       * ly/engraver-init.ly: make Staff default child of ChoirStaff.
-
-2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * ChangeLog: Recode utf-8.
-
-       * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
-       datadir with .py modules.
-
-2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * Documentation/user/basic-notation.itely (Ties): add tieDashed.
-
-2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
-       
-       * scm/framework-ps.scm (write-preamble): remove status check.
-
-       * Documentation/user/invoking.itely (Updating files with
-       convert-ly): remove -o option.
-
-       * VERSION (PACKAGE_NAME): release 2.5.31
-
-       * scm/framework-ps.scm (write-preamble): use ly:system.
-       (write-preamble): verbosity.
-
-       * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
-
-       * python/convertrules.py: new file. Store conversion rules
-       separately.
-
-2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/backend-library.scm (postprocess-output): remove debugging gobs.
-
-2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * Documentation/topdocs/NEWS.tely (Top): Corrected name of
-       \musicDisplay 
-
-       * Documentation/user/instrument-notation.itely (More stanzas): Add
-       reference to StanzaNumber.
-
-2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * THANKS: separate section for website translators.
-
-2005-06-14  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/topdocs/INSTALL.texi: update vim info;
-       thanks Simon Bailey!
-
-       * Documentation/user/advanced-notation.itely: included
-       color names.
-
-       * Documentation/user/advanced-notation.itely,
-       Documentation/usr/notation-appendices.itely: moved
-       color names into an appendix.
-
-2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-       
-       * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
-
-       * scm/lily.scm (lambda): initialize program options from here.
-
-       * scm/framework-*.scm: add header info.
-
-       * lily/main.cc (parse_argv): only set output format to pdf if no
-       other format specified.
-
-       * scm/backend-library.scm (postprocess-output): process
-       'delete-intermediate-files after running convert-to-*. This fixes
-       PNG generation when 'delete-intermediate-files is set.
-       
-2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
-       links on website. 
-
-2005-06-13  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/topdocs/INSTALL.texi,
-       Documentation/user/lilypond-book.itely: typos.
-
-2005-06-12  Pal Benko  <benkop@freestart.hu>
-
-       * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
-       added between program name and switch; -b changed to -f not
-       to generate pdf
-
-2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
-       (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
-
-       * input/sakura-sakura.ly: add \midi.
-
-       * buildscripts/mutopia-index.py (find): use /usr/bin/find
-       iso. python find. 
-
-       * ttftool/test.c (main): cosmetics.
-
-       * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
-
-       * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
-       create a ttf2ps binary.
-
-       * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
-
-       * scm/backend-library.scm (postscript->png): set rename-page-1 to
-       true.
-
-2005-06-11  Graham Percival <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond-book.itely: add warning about
-       the font warnings in dvips.
-
-2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * THANKS: typo
-
-       * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
-
-       * GNUmakefile.in: remove links for .map, .enc
-       don't fail if out/ doesn't exist yet.
-
-2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ttftool/util.c (surely_read): return nbytes
-
-       * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
-
-       * VERSION (PACKAGE_NAME): release 2.5.30
-
-       * flower/string-convert.cc (precision_string): >? fix.
-
-       * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
-       (make-ps-images): add verbose -q too.
-
-       * lily/default-actions.cc (Module): new file. default
-       {book,score}-print functions.
-
-       * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
-       pass results via parseStringResult, lookup via ly:parser-lookup.  
-
-       * lily/lily-parser.cc (Lily_parser): only clone lexer in
-       constructors.
-       (parse_file): encapsulate do_yyparse() in scm_set_current_module()
-       (parse_string): idem.
-
-       * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
-
-       * lily/main.cc (main_with_guile): copy be_verbose_global into
-       ly_set_option()
-
-2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/backend-library.scm (postscript->pdf):
-       * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
-       verbose mode.  Search for several names of gs executable.
-
-2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/ly-module.cc (ly_make_anonymous_module): call make-module
-       directly. This fixes a massive memory leak, provided you use CVS
-       GUILE.
-
-2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * ly/property-init.ly: Added tieDashed.
-
-       * THANKS: Added some bughunters for 2.5.
-
-2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/program-option.cc: add debug-gc option.
-
-       * lily/include/lily-guile-macros.hh: don't protect exported module
-       objects.
-
-       * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
-
-       * scm/backend-library.scm (postscript->pdf): use
-       delete-intermediate-files iso. running-from-gui? 
-
-       * ttftool/util.c (surely_read): robustness. Allow read() to return
-       less bytes than requested, as per posix standards.
-
-       * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
-       program option.
-
-       * ttftool/include/ttftool.h ("C"): rename verbosity to
-       ttf_verbosity. Add to public interface.
-
-       * scm/music-functions.scm (unfold-repeats): remove debugging display.
-
-       * lily/program-option.cc: rename from scm-option.cc
-
-       * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
-       (get_help_string): Print pretty help string.
-
-       * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
-       to snippet preamble.
-
-       * lily/scm-option.cc: remove command-line-settings option. Fold
-       all command-line options plus default settings in a generic
-       interface. 
-
-       * flower/getopt-long.cc (table_string): indent 2nd lines of help
-       texts too.
-
-2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
-       or EXT_ components non-empty.
-
-2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/lily.scm (running-from-gui?): Export.
-
-       * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
-       output in .ly source directory.
-
-2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ttftool/util.c (surely_lseek): more verbosity.
-
-       * lily/include/lily-proto.hh: add Context_def. This fixes FC4
-       compile.
-
-       * lily/parser.yy (Repeated_music): remove >? 
-
-       * scm/backend-library.scm (postscript->pdf): Support for
-       -dgs-font-load=1
-
-       * scm/framework-ps.scm (write-preamble): make font loading
-       switchable to GS via --define-default gs-font-load=1
-
-2005-06-09  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/global.itely: added \layout docs.
-
-2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/lily-parser-scheme.cc: add unistd.h
-
-2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/editor.scm: add char argument.
-
-       * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
-
-       * ttftool/util.c (syserror): use errno for better error reporting.
-
-       * lily/source-file.cc (get_counts): new function. Calc column,
-       line and char count in one go.
-
-       * lily/binary-source-file.cc (quote_input): rename to quote_input
-
-       * lily/input.cc (set): new function.
-
-2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/file-path.cc (find): Bugfix.  Append rather than prepend
-       directory part of file name to search directory.
-
-       * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
-       search path and chdir to DIR if --outname=DIR used.
-
-       * lily/main.cc (prepend_env_path): Bugfix: Check directory
-       existence before appending original path.
-
-2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
-       file" massage.
-
-       * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
-       texinfo.tex is always used.
-       
-2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * flower/include/axis.hh: rename from axes.hh
-
-       * lily/include/text-interface.hh (Module): rename from text-item.hh
-
-       * VERSION (PATCH_LEVEL): release 2.5.29
-
-       * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
-
-       * scm/framework-ps.scm (font-file-as-ps-string): new function.
-       (handle-macfont): new function. Call fondu for Native mac fonts.
-
-       * scm/define-markup-commands.scm (fill-line): handle text-widths =
-       '() case.
-
-2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
-       multi-page.  Fix .eps regular expression.
-
-2005-06-07  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/putting.itely: add info on modifying templates.
-
-       * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
-       misc small changes.
-
-2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
-
-       * scripts/lilypond-ps2png.scm
-
-       * VERSION (PACKAGE_NAME): release 2.5.28
-
-2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc (prepend_env_path): Do not append /, that does not
-       work.  Localedir lives in datadir, not in prefix.
-
-       * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
-       hack for windows.
-
-       * flower/include/file-cookie.hh: Compile fix.
-
-2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
-
-       * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
-       system primitives.
-       (gulp-port): using read-string!/partial. We don't want to read an
-       entire PS file  (GUILE 1.6 limits strings to 16M) 
-
-       * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
-       properties. Add font-interface. 
-
-       * scm/define-grob-properties.scm (all-user-grob-properties):
-       remove old bracket properties.
-
-       * scm/x11-color.scm: reformat. 
-
-       * lily/ledger-line-engraver.cc (acknowledge_grob): create new
-       LedgerLineSpanner if new StaffSymbol is found. 
-
-       * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
-       staff-symbol for finishing staff. 
-
-       * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
-
-       * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
-       change black to currentColor everywhere. This fixes color support
-       in SVG.
-
-2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
-
-       * input/regression/fret-diagrams.ly: new file to test fret diagram
-       capability
-
-       * scm/output-tex.scm: remove white-dot and white-text
-
-       * scm/output-ps.scm: remove white-dot and white-text
-
-       * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
-       using ly:stencil-in-color instead
-       (draw-dots) : remove call to white-dot
-
-2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
-       support.
-
-       * ttftool/ttfps.c: use lily_cookie functions everywhere. 
-
-       * flower/include/file-cookie.hh: new file. lily_cookie extension 
-
-       * flower/file-cookie.cc: new file. lily_cookie extension.
-       
-2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/editor.scm (editor-command-template-alist): Add syn
-       editor (Jaap [de Vos]).
-
-2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scripts/lilypond-ps2png.scm:
-       * scm/ps-to-png.scm: New file.
-
-       * scm/backend-library.scm (postscript->png): Use it.
-
-       * scripts/lilypond-ps-to-png.py: Remove file.
-
-       * python/lilylib.py (get_bbox, make_ps_images): Remove.
-
-2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
-
-       * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
-       start on grace moment. Fixes autobeam-grace.ly.
-
-       * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
-       process anything unless we're at the end of a pending beam. Fixes
-       syncopated 8ths beamed across a beat.
-
-2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/editor.scm (editor-command-template-alist): Start emacs if
-       emacslient fails.
-
-       * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
-
-       * flower/file-path.cc (is_file, is_dir): Export.
-
-       * lily/main.cc (prepend_env_path, set_env_file): Use them.
-
-2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * lily/easy-notation.cc: Added include cctype to correct
-       compilation error.
-
-2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/backend-library.scm (postscript->pdf): set resolution to
-       1200, so bitmap fonts aren't that ugly. 
-
-       * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
-
-       * lily/dynamic-engraver.cc (acknowledge_grob): only center on
-       parent if we have a notehead. Fixes incorrect offsets when
-       Paper_column is very wide in the X direction.
-
-       * input/regression/font-family-override.ly (Module): new file.
-
-       * scm/font.scm (make-pango-font-tree): new function.
-
-       * lily/beam.cc (before_line_breaking): remove warning about less
-       than 2 visible stems. We still get a warning when there is only
-       one stem.
-
-2005-06-01  Werner Lemberg  <wl@gnu.org>
-
-       * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
-       correctly.
-
-2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/slur-scoring.cc (generate_avoid_offsets): new
-       function. Generate avoid offsets once per slur.
-
-       * lily/slur.cc (add_extra_encompass): add dependency to
-       extra-encompass object. This fixes bugs/c-phrasing-slur.ly
-
-       * lily/stencil.cc (is_empty): check dim_ field for is_empty()
-       too. Fixes inf error with added bass notes.
-
-       * scripts/lilypond-book.py (do_options): --psfonts doesn't take
-       argument anymore.
-
-       * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
-
-       * input/tutorial/lbook-latex-test.tex: add line length test.
-
-       * scripts/lilypond-book.py (set_default_options): new
-       function. Call this before dissecting snippets, so linewidth
-       settings reach the snippets.
-
-2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
-
-2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
-
-2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: More autopackage friendliness.
-
-2005-05-31  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/index.html.in: remove link to LSR.
-
-       * Documentation/user/global.itely: remove duplicate
-       "dedication" \header{} section.
-
-2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PACKAGE_NAME): release 2.5.27.
-
-       * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
-       too. Plugs memory leak.
-
-       * make/lilypond.fedora.spec.in (Group): remove
-       lilypond-pdfpc-helper.
-
-       * scripts/GNUmakefile (SEXECUTABLES): remove
-       lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
-
-       * scm/font.scm (make-century-schoolbook-tree): add Mono as
-       'typewriter family.
-
-       * lily/score.cc (Score): unprotect copy of Output_def. Plugs
-       memory leak.
-
-       * lily/parser.yy (score_body): don't clone Score, that's done in
-       Lily_lexer::try_special_identifiers(). This fixes a memory leak.
-
-       * lily/score-engraver.cc (derived_mark): new function.
-       (initialize): unprotect Paper_score. This fixes a memory leak.
-
-       * lily/score-performer.cc (derived_mark): new function.
-
-       * lily/score-translator.cc (get_output): use SCM for get_output() call.
-
-       * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
-       spurious warning.
-
-       * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
-       serif.
-
-2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * configure.in (reloc_b): Add --enable-relocation.
-
-2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
-
-       * input/regression/alignment-order.ly: add Staff example.
-
-2005-05-31  John Mandereau   <john.mandereau@free.fr>
-
-       * po/fr.po: update.
-
-2005-05-31  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/index.html.in: add link to LSR.
-
-2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-stencil-commands.scm (Module): new file. Register all
-       allowed stencil expression heads in a central place.
-
-       * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
-       ly:make-stencil
-
-       * lily/stencil-expression.cc (all_stencil_heads): registering
-       stencil expressions.
-
-       * lily/stencil-interpret.cc: new file. Stencil expression
-       interpreting.
-
-       * input/xiao-haizi-guai-guai.ly: move file back.
-
-2005-05-30  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/advanced.itely, converters.itely,
-       instrument-notation.itely, lilypond-book.itely: misc small
-       changes.
-
-2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/lexer.ll: Skip UTF-8 BOM at BOF.
-
-       * make/lilypond.fedora.spec.in: Fix source url.
-
-       * cygwin: Update from mingw patches.
-
-       * scm/editor.scm (editor-command-template-alist): Use jedit
-       -reuseview (Bertalan), add uedit (Patrick Huberts).
-
-       * input/xiao-hai-zi-guai-guai.ly: Rename from
-       xiao-haizi-guai-guai.ly.
-
-       * input/*: Reindent, do not use TAB.
-
-       * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
-       white background.
-
-2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
-       numerical overflow error.
-
-2005-05-29 Laura Conrad <lconrad@laymusic.org>
-       
-       * abc2ly.py: fix to syntax error in multi-part output.
-
-2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/span-bar.cc (print): sort bar line extents. Fixes problem
-       with disappearing span bars when alignAboveContext is active
-
-       * lily/property-iterator.cc (check_grob): use is-grob?
-       object-property. Fixes crash-key-sig-font-size.ly. 
-
-2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/bar-line.cc (print): don't round barlines; this produces
-       odd aliasing effects in Acroread.
-
-       * lily/timing-engraver.cc (process_music): robustness fix.
-
-       * lily/context-def.cc (filter_engravers): bugfix.
-
-2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/lilypond.rc.in: Add ly-icon.
-
-       * lily/GNUmakefile: 
-       * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
-       rules.
-
-2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
-
-       * ps/music-drawing-routines.ps: 
-
-       * scm/output-ps.scm: remove draw ez_ball.
-
-       * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
-       EasyNotation context definition.
-
-       * lily/easy-notation.cc (brew_ez_stencil): new file. Use
-       Text_interface and color for making easy note heads.
-
-       * lily/stencil.cc (with_color): new function.
-
-       * ps/music-drawing-routines.ps: remove draw_zigzag_line
-
-       * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
-       output routine. Zigzag now works in SVG too.
-
-       * scm/output-tex.scm (filledbox): idem.
-
-       * scm/output-svg.scm (filledbox): idem.
-
-       * scm/output-ps.scm (lily-def): remove horizontal-line. 
-
-       * lily/lookup.cc (horizontal_line): use draw-line. 
-
-       * lily/system-start-delimiter.cc: remove old staff bracket code.
-
-       * mf/feta-haak.mf: further tweaks.
-
-       * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
-
-       * mf/feta-generic.mf: include feta-haak.
-
-       * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
-
-       * scm/framework-ps.scm (write-preamble): only load fonts if their
-       filename is a string. 
-
-2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-svg.scm (circle): support circle.
-       (bracket): stub for bracket.
-
-       * scripts/lilypond-book.py (main): make sure --psfonts warning is
-       correct.
-
-2005-05-26  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond.tely, advanced-notation.itely,
-       basic-notation.itely, instrument-notation.itely, global.itely,
-       introduction.itely, tutorial.itely: rearranging, editing,
-       clean-up.
-
-       * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
-       for compiling on FreeBSD.
-
-2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
-       otf files.
-
-       * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
-       bugfixes.
-
-       * VERSION: 2.5.26 released.
-
-       * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
-
-2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
-       if printpagenumber is false.
-
-2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/font-config.cc (init_fontconfig): comment out FontConfig
-       cache warning.
-
-       * lily/tie.cc (print): support dotted ties.
-       
-2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-grobs.scm (all-grob-descriptions): switch off
-       debugging
-       (all-grob-descriptions): Arpeggio has Y-extent.
-
-       * scm/define-music-properties.scm (all-music-properties): document
-       length-callback and start-callback as "read-only".
-
-       * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
-       length-callback after creation. 
-
-       * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
-       compressmusic -> compressMusic.
-
-       * ly/music-functions-init.ly (oldaddlyrics): idem.
-
-       * lily/parser.yy: NewLyricCombineMusic ->
-       LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
-
-2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * ly/Welcome_to_LilyPond.ly: typo.
-
-2005-05-24  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond.tely: move changing-defaults to be
-       before global issues.
-
-       * Documentation/user/basic-notation.itely: move Transpose section
-       here from advanced/Other.
-
-       * Documentation/user/changing-defaults.itely,
-       advanced-notation.itely: move Fonts to advanced, edit.
-
-2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/parser.yy (bare_int): remove rule.  From now on, we require
-       # before negative integers.
-
-2005-05-23  Graham Percival  <gperlist@shaw.ca>
-
-       * ly/property.ly: Update tieDotted to have the same form as slurDotted.
-
-       * Documentation/user/lilypond.tely: change Unified index to
-       LilyPond index.
-
-       * Documentation/user/advanced-notation.itely,
-       instrument-notation.itely: editing.
-
-2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/lily.scm (lilypond-all): Bugfix: return failed.
-
-       * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
-
-2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/general-scheme.cc (ly:stderr-redirect): Rename from
-       ly:port-move.  Needs to be stderr-specific on mingw.
-       Run fixcc.
-
-2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/general-scheme.cc (ly:port-move): Remove.
-
-       * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
-       windows.
-
-       * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
-       variables.  This eliminates the need for a gs.bat wrapper, which
-       opens a console.
-
-       * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
-       * scm/lily.scm (running-from-gui?): 
-       * lily/main.cc[MINGW]: Remove isatty inversion, this is an
-       artifact of not compiling with -mwindows.
-
-       * scm/editor.scm: Define PLATFORM.
-
-2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
-       can start to cut & paste lilypond-book fragments.  
-
-       * scm/define-music-types.scm (music-descriptions): remove
-       UntransposableMusic
-
-2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (glyph-string): remove / before CIDs.
-
-2005-05-20  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/instrument-notation.itely: remove *Engraver.
-
-       * Documentation/user/advanced-notation.itely: edit, rearrange.
-
-2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (glyph-string): take cid? argument. Use
-       findresource iso. findfont for CID CFF fonts.
-
-       * VERSION (PACKAGE_NAME): release 2.5.25
-
-       * ly/Welcome_to_LilyPond.ly: add  \version
-
-2005-05-20  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/programming-interface.itely: move
-       \displayMusic into its own section.
-
-       * Documentation/user/basic-notation.itely: finish editing.
-
-2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * flower/file-path.cc (find): don't throw away file_name.dir, but
-       append to it. Fixes \include with directories.
-
-       * flower/include/file-path.hh (class File_path): don't derive from
-       Array<String>.
-
-       * flower/include/file-name.hh (class File_name): remove to_str0()
-
-       * lily/hara-kiri-engraver.cc (acknowledge_grob): split
-       Hara_kiri_engraver in separate file.
-
-       * lily/slur-configuration.cc (score_encompass): oops, <? to min()
-       translation went wrong. Fixes vertically translated slurs.
-
-2005-05-19  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/basic-notaton.itely: editing.
-
-2005-05-18  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/macros.itexi, basic-notation.itely:
-       add @commonprop (commonly used properties) macro.
-
-2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
-
-       * scripts/lilypond-book.py (invokes_lilypond): new function
-       (main): only run fontextract if invokes_lilypond() is true.
-
-       * lily/function-documentation.cc (ly_add_function_documentation):
-       duh, use !=
-
-       * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
-
-       * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
-
-       * scm/lily.scm (running-from-gui?): lowercase Darwin.
-
-       * lily/function-documentation.cc (ly_add_function_documentation):
-       use scm_hash_table_p() for checking.
-
-2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/advanced-notation.itely (Text scripts):
-       Change nonexisting @internalsref{Text markup} to @ref{Text
-       markup}.  Change @internalsref{Text script} to
-       @internalsref{TextScript}.
-
-       * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
-
-2005-05-17  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/tutorial.itely, basic-notation.itely,
-       changing-defaults.itely: remove duplicate cindex entries
-       that appear on the same page.
-
-       * scm/define-grobs.scm: change default padding for TextSpanner.
-
-       * Documentation/topdocs/AUTHORS.texi: update email address.
-
-       * Documentation/user/global.itely: add info about \include.
-
-2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
-       when running-from-gui.
-
-       * scm/editor.scm (get-editor): Add platform defaults.
-
-       * scm/backend-library.scm (postscript->pdf): Typo.
-
-2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
-
-       * lily/font-config.cc (init_fontconfig): add warning about cache.
-
-2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
-
-2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * lily/horizontal-bracket.cc (print): Take care of the direction
-       property so brackets above the stave point downwards. 
-
-       * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
-       for HorizontalBracket so it doesn't end up within the stave.
-
-2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/GNUmakefile (default): Typo.
-
-       * scm/lily.scm (PLATFORM): Export.
-
-       * scm/framework-ps.scm (write-preamble)[MINGW]: Use
-       load-font-via-GS, ttftool or fopencookie is broken on windows.
-       
-       * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
-       -dSAFER, that is broken on windows.
-
-2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
-       for FlexLexer.h
-
-       * scripts/lilypond-invoke-editor.scm: remove stray -
-
-2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
-       Fixes deprecation warning.
-
-       * flower/include/string.icc (to_string): Only inline if
-       -DSTRING_UTILS_INLINED.
-
-       * lily/pango-font.cc (pango_item_string_stencil): Normalize file
-       name.  Remove windows comment.
-
-       * scm/editor.scm (slashify): New function.
-       (get-editor-command): Use it.
-       (get-command-template): Do not alter editor command if
-       environment value includes `%(file)s' magic.
-
-       * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
-       (dissect-uri): Use it.
-       (unquote-uri): Bugfix.
-
-2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (write-preamble): add TTF rule.
-
-       * Documentation/topdocs/README.texi (Top): remove note about
-       xdelta.
-
-       * Documentation/topdocs/INSTALL.texi (Top): remove Flex
-       requirement.
-
-       * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
-       function. Figure out where FlexLexer.h lives
-
-       * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
-       
-2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
-       with Windows root in file name.
-
-       * scm/backend-library.scm (ly:system): Only redirect output (using
-       system and shell, ugh) if /dev/null is writable.
-
-       * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
-       windows icon.
-
-       * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
-       on Mingw.
-
-       * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
-       click.
-
-       * flower/file-path.cc (is_dir, is_file): New function.  Actually
-       use result of stat when available.
-
-       * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
-       absolute file name and root.
-
-       * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
-
-       * scm/editor.scm (get-editor-command): Typo: do not apply editor.
-
-       * flower/file-name.cc (slashify): Bugfix, do substitute if no
-       slashes in file name.
-
-2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/preface.itely (Preface): Run
-       texinfo-all-menus-update.
-
-       * scm/editor.scm (get-editor-command): Bugfix: allow full
-       LYEDITOR setting, partial XEDITOR setting.  With typo fix.
-
-       * Documentation/pictures/lilypond-48.xpm: New file.
-
-       * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
-
-       * ly/Welcome_to_LilyPond.ly: New file.
-
-       * lily/main.cc (main): Only identify if we have a terminal.
-
-       * scm/backend-library.scm (postscript->png)
-       (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
-       non-/bin/sh).
-
-2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * Documentation/topdocs/AUTHORS.texi: polish, update.
-
-2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/preface.itely (Notes for version 2.6): new
-       notes for 2.6
-
-       * lily/dynamic-engraver.cc (stop_translation_timestep): first set
-       finished_span_, then call typeset_all(). Fixes spurious "Hairpin
-       is not fully contained" warnings.
-
-       * lily/slur-scoring.cc (get_bound_info): remove warning.
-
-       * lily/staff-symbol-engraver.cc (process_music): start initial
-       spanner in process_music(). This fixes overrides of StaffSymbol
-       properties.
-
-       * scm/framework-pdf.scm (Module): remove.
-
-       * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
-
-       * lily/ambitus-engraver.cc: formatting cleanups.
-
-       * mf/feta-solfa.mf (Module): remove.
-
-       * ChangeLog: more details about contributions.
-
-2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/align-interface.cc (align_elements_to_extents): warn if
-       called too early. Fixes: disappearing-staff-lines.ly
-
-       * VERSION (PACKAGE_NAME): release 2.5.24
-
-2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: Typo.
-
-       * flower/string.cc (substitute): Take two strings or two
-       characters.  Update callers.
-
-2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/file-name.cc (File_name): Slashify.
-
-       * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
-
-       * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
-
-       * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
-
-       * configure.in (gui_b): Use it.
-
-       * lily/lilypond.rc.in: New file.
-
-       * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
-
-2005-05-12  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/advanced-notation.itely: edit of Text
-       section; clarify text scripts vs. text markup.
-
-2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/multi-measure-rest-engraver.cc
-       (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
-       separation items on start. Fixes mm rests in start of score.
-
-       * lily/slur-scoring.cc (move_away_from_staffline): robustness,
-       don't access StaffSymbol if not there.
-       Fixes: crash-staff-symbol-engraver.ly.
-
-       * lily/instrument-name-engraver.cc (class
-       Instrument_name_engraver): data member first_. Create
-       InstrumentName on start. 
-
-2005-05-12  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/instrument-notation.itely: add guitar
-       position.
-
-       * Documentation/user/introduction.itely,
-       Documentation/user/lilypond.tely,
-       Documentation/user/tutorial.itely: begin pruning
-       unused (duplicated) cindex entries and misc cleanup.
-
-2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * input/test/volta-chord-names.ly: Bring the explanation up to
-       date.
-
-2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
-       Specify `@documentencoding utf-8' for html, ignore warnings.
-
-2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * THANKS: Added bughunters.
-
-2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * lily/main.cc: update help string for `lilypond -H'.
-
-       * po/fi.po: update.
-       
-2005-05-10  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/advanced-notation.itely: minor fixes.
-
-2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/editor.scm: New module.
-
-       * scm/lily.scm (gui-main): Use it.
-
-       * scm/framework-gnome.scm (spawn-editor): Use it.
-
-       * scripts/lilypond-invoke-editor.scm: Use it in new script.
-
-2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (load-font-via-GS):  new function.
-
-       * lily/pango-font.cc (pango_item_string_stencil): add support for
-       CID keyed font.
-
-       * scm/output-ps.scm (glyph-string): add support for CID keyed font.
-
-2005-05-10  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/basic-notation.itely: add @ref.
-
-       * Documentation/user/advanced-notation.itely: add example
-       of 5/8 beaming.
-
-2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
-
-       * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
-       going through ps2pdf wrappers.
-
-2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
-
-       * Documentation/user/instrument-notation.itely: petrucci note
-       heads: updated docu
-
-       * input/regression/note-head-style.ly: updated regression test;
-       indentation fixes
-
-       * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
-       heads as default
-
-       * mf/parmesan-heads.mf: minor editing; use musicological names
-       (rather than optical description) as note head names
-
-       * scm/output-lib.scm: complete petrucci heads
-
-2005-05-09  Pal Benko  <benkop@freestart.hu>
-
-       * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
-       heads, but bigger)
-
-2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc (main_with_guile): Remove no files check.
-
-       * lily/main.cc (ly:usage): Export to Scheme.
-
-       * scm/lily.scm (no-files-handler): New function.
-
-       * scm/lily.scm (lilypond-main): Use it.
-
-       * configure.in (gui_b): Add mbrtowc checking.
-       Resurrect [utf8/]wchar.h checking.
-
-2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * Documentation/user/advanced-notation.itely (Metronome marks):
-       Add link to the program reference for MetronomeMark
-
-       * Documentation/user/lilypond-book.itely (An example of a
-       musicological document): Correct the example using psfonts 
-
-2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * po/fi.po: update after a lesson how to update entries against
-       source.
-       
-       * po/TODO: document the lesson.
-
-2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * configure.in (gui_b): remove wcrtomb checking.
-
-       * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
-       bits. Patch by Matthias Neeracher. <neeracher@mac.com>
-
-2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * scripts/convert-ly.py: In the conversion to version 1.9.0, 
-       keep Scheme expressions and strings unmodified when doing the
-       conversion to postfix notation for slurs and beams. Should
-       hopefully solve most related conversion problems. 
-
-       * Documentation/user/lilypond-book.itely : Clarify and correct how
-       to call dvips with -h psfonts.
-
-2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/instrument-notation.itely (Entering lyrics):
-       Typo.  Fixes build.
-
-2005-05-09  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond-book.itely: document PSFONTS file.
-
-       * Documentation/user/lilypond.tely, lilypond-book.itely,
-       tutorial.itely: change references to 2.5.x to 2.6.x.
-
-       * Documentation/user/instrument-notation.itely: clarified \addlyrics
-       vs \lyricmode.
-
-       * Documentation/user/invoking.itely: remove old info about
-       lilypond-profile.
-
-       * Documentation/topdocs/INSTALL.texi: remove old info about
-       lilypond-profile, add warning about needing international fonts
-       to build docs.
-
-2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/grob-info.hh (class Grob_info): make data member
-       private. Changes throughout.
-
-       * input/regression/alignment-order.ly: new file. 
-
-       * lily/vertical-align-engraver.cc (acknowledge_grob): read
-       alignAboveContext and alignBelowContext
-
-2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/pfb.cc (LY_DEFINE): add cast.
-
-       * scm/framework-ps.scm (write-preamble): embed CFFs if file name
-       matches .otf
-       (write-preamble): warn about unknown fonts.
-
-       * lily/pfb.cc (Module): new function ly:otf->cff
-
-       * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
-       (get_otf_table): new function.
-
-2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/backend-library.scm (postscript->png): call lilypond-ps2png
-       iso. ps2png.
-
-2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * po/fi.po: apply second round of update.
-
-2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/x11-color.scm (make-x11-color-handler): don't use
-       #\sp. Apparently doesn't work on all platforms. 
-
-2005-05-06  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/advanced-notation.itely, putting.itely,
-       tutorial.itely, global.itely, introduction.itely: really minor fixes.
-
-2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PACKAGE_NAME): release 2.5.23
-
-2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
-       convert to utf-8.
-
-       * THANKS: Add translators for this release, convert to utf-8.
-
-       * mf/GNUmakefile (MFTRACE_FLAGS):
-       * buildscripts/substitute-encoding.py (outdir): Build fix: pass
-       outdir as option (WAS: hardcoded).
-
-2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
-       finished_span_
-
-       * THANKS: add Hans Forbrich.
-
-       * Documentation/topdocs/NEWS.tely (Top): document new feature.
-
-       * Documentation/user/basic-notation.itely (Staff symbol): document
-       start/stop staff. Reference to ossia.ly
-
-       * input/test/ossia.ly: new example using stop and startStaff.
-
-       * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
-       in other words, don't create "|" barline at start of the score.
-       (start_translation_timestep): don't set whichBar for start of score.
-
-       * input/regression/staff-halfway.ly: use new functionality.
-
-       * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
-       start and stop staff based on events.
-
-       * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
-
-       * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
-
-2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/programming-interface.itely (How markups work
-       internally ): remove \encoding reference.
-
-2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * scripts/convert-ly.py: Attempt to do a smarter update of 
-       text markups from versions < 1.9.0 with arbitrary nesting.
-
-2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * po/fi.po: convert to utf-8, and update.
-
-2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/lilypond.suse.spec.in: update from suse 2.4 package.
-
-       * lily/*.cc: more <? >? to min/max changes
-
-       * lily/include/interpretation-context-handle.hh: rename
-       Interpretation_context_handle to Context_handle.
-
-2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * input/regression/GNUmakefile (local_delete): use `find` together 
-       with `xargs` to avoid too long argument-lists in cmd line.
-
-2005-05-04  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/introduction.itely: updates "About this manual".
-
-       * Documentation/user/advanced-notation.itely,
-       invoking.itely: minor fixes.
-
-2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * COPYING: add font exception. Update FSF address. 
-
-       * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
-       should be taken without child context.
-
-       * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
-
-       * scm/define-markup-commands.scm (triangle): new command, as
-       robust replacement for unicode Delta/Triangle.
-
-2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ps/music-drawing-routines.ps: add fillp argument.
-
-       * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
-
-       * lily/font-config.cc (init_fontconfig): don't add cff/
-
-       * VERSION (PACKAGE_NAME): release 2.5.22
-
-       * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
-
-       * lily/grace-engraver.cc (consider_change_grace_settings): use
-       is_alias(). Fixes problem with CueVoice grace notes. 
-
-       * lily/simultaneous-music-iterator.cc (construct_children): call
-       Music_iterator::quit() for iterators that start out invalid. This
-       fixes indefinitely continuing contexts.
-
-       * buildscripts/substitute-encoding.py: new file
-
-       * Documentation/user/basic-notation.itely (Basic polyphony): fix
-       missing @end 
-
-       * scripts/lilypond-book.py (write_if_updated): print file name.
-
-       * Documentation/user/basic-notation.itely (Explicitly
-       instantiating voices): idem.
-
-       * Documentation/user/advanced-notation.itely (Text spanners):
-       remove stray { } 
-
-       * lily/context.cc (default_child_context_name): the default child
-       is now first in accepts_list_.
-
-       * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
-       \defaultchild to all relevant contexts.  This fixes:
-       drums-pitch.ly.
-
-       (Probably also fixes similar problems with ancient
-       transcriptions getting CueVoices instead of the desired voices.)
-       * lily/context-def.cc (get_default_child): new function.
-       (get_accepted): place default child in front of list.
-
-       * lily/parser.yy (FIXME): add DEFAULTCHILD token.
-
-       * lily/include/context-def.hh (struct Context_def): add
-       default_accept_
-
-2005-05-03  Graham Percival  <gperlist@shaw.ca>
-
-       * scm/define-grobs.scm: remove "remove-first" line, since
-       the absent property is set to #f anyway.
-
-       * Documentation/user/basic-notation.itely,
-       advanced-notation.itely, instrument-notation.itely: minor
-       fixes.
-
-       * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
-
-       * Documentation/user/advanced-notation.itely,
-       changing-defaults.itely: consolidate Text stuff in
-       advanced notation.
-
-       * Documentation/user/global.itely: better docs for \header.
-
-       * Documentation/user/putting.itely: new chapter; placeholder
-       for future expansion.
-
-       * Documentation/user/examples.itely: moved "suggestions for
-       writing LP files" section into putting.itely.
-
-       * Documentation/user/lilypond.itely: added new chapter,
-       fixed the short table of contents.
-
-2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/beam-quanting.cc (quanting): robustness fix, don't produce
-       infinity for unfeasible beams.
-
-       * make/lilypond.fedora.spec.in (Group): idem.
-
-       * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
-
-       * mf/GNUmakefile (ALL_GEN_FILES): remove .map
-
-       * scm/framework-ps.scm (write-preamble): extract CFF from OTF
-       fonts directly.
-
-       * buildscripts/gen-emmentaler-scripts.py (i): idem.
-
-       * mf/GNUmakefile: remove all CFF rules.
-
-       * scm/framework-ps.scm (ps-embed-cff): reinstate.
-
-       * lily/open-type-font-scheme.cc (LY_DEFINE):
-       new function ly:otf-font-table-data.
-       (LY_DEFINE): new function otf-font?
-
-2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
-       ($(outdir)/Fontmap.lily): idem.
-
-       * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
-       for PFAEmmentaler-XXX.pfa. 
-
-       * Documentation/user/music-glossary.tely (accidental): NL
-       translation of accidental.
-
-2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/include/international.hh: Bugfix: include "string.hh".
-
-       * lily/include/mingw-compatibility.hh: New file.
-
-       * flower/include/libc-extension.hh (memrev): Rename from strrev.
-
-       * configure.in: Search for mingw wcrtomb library.
-
-2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * scripts/convert-ly.py: Bug fix
-
-       * Documentation/user/changing-defaults.itely (Common tweaks):
-       Added example where the context has to be specified explicitly
-       (MetronomeMark). 
-
-2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/lilypond-book.py (ly_options): set timing to #f for
-       notime option.
-
-       * scripts/convert-ly.py (conv): typo.
-
-       * flower/*.cc: remove <? and >?
-       
-       * lily/*.cc: remove <? and >?
-
-       * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
-       that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
-       editor.
-
-2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/part-combine-engraver.cc: add space to variable list.
-
-2005-04-30  Graham Percival  <gperlist@shaw.ca>
-
-       * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
-       remove-first to false (matches docs)
-
-       * Documentation/user/advanced-notation.itely: corrected docs
-       concerning remove-first.
-
-2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * lily/part-combine-engraver.cc: make sure that the relevant
-       properties are included in the documentation.
-
-2005-04-28  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond-book.itely: Bernard's docs
-       for \betweenLilyPondSystem.
-
-2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
-       remarks.
-
-2005-04-28  Pal Benko  <benkop@freestart.hu>
-
-       * 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)
-
-       * lily/include/mensural-ligature.hh: make 2 comments clearer
-
-2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
-
-       * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
-       to need_extra_horizontal_space; bugfix: use class scope to avoid
-       global namespace pollution
-
-       * Documentation/user/instrument-notation.itely (ligatures): added
-       comment on possible future syntax change and how to work around
-
-       * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
-       (epiphonus, cephalicus): fine-tune shape of plica head for narrow
-       intervals (fixes agnus dei example)
-
-       * Documentation/user/instrument-notation.itely (white mensural
-       ligatures): selected a more illustrative example
-
-2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
-
-       * Documentation/index.html.in: specify utf-8 charset in meta content.
-
-2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * python/lilylib.py (make_ps_images): bugfixes; GS can produce
-       empty 2nd page for single page.
-
-       * scm/lily.scm: remove p&c definitions.
-
-       * po/zh_TW.po (Module): new translation.
-
-       * lily/lily-guile.cc (ly_chain_assoc): remove.
-
-       * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
-       (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
-
-2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/beaming-info.cc: remove infinity_i
-
-       * scripts/abc2ly.py (out_filename): fix thinko with \version.
-
-2005-04-26  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/basic-notation.itely,
-       instrument-notation.itely, advanced-notation.itely,
-       changing-defaults.itely: minor fixes.  Added docs
-       for colors to advanced-notation.itely.
-
-       * Documentation/user/advanced-notation.itely: fixed compile
-       problem and added Bernard's x11-color doc patch.
-
-2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
-       alright this time round.
-
-2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/topdocs/INSTALL.texi (Top): idem.
-
-       * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
-
-       * VERSION (MAJOR_VERSION): release 2.5.21
-
-       * scm/output-ps.scm (grob-cause): bugfix.
-
-2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * cygwin/*: Update.
-
-       * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
-       stuff.
-
-       * scm/output-ps.scm (grob-cause): Bugfix.
-
-       * scm/lily.scm (ly:load): Remove x11-color.
-
-       * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
-       quote executable, fixes getting version from program --with
-       --options.
-       (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
-       $ac_exeect.
-
-       * Documentation/user/GNUmakefile: Only build music-glossary with
-       rendered lilypond snippets during web.
-
-2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * po/de.po: update.
-
-       * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
-
-2005-04-22  Laura Conrad <lconrad@laymusic.org>
-       * scripts/abc2ly:
-       second title line append with punctuation dash character;
-       encode abc2ly python strings in utf-8
-       
-2005-04-21  Laura Conrad <lconrad@laymusic.org>
-
-       * scripts/abc2ly fix chords (again)
-2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
-
-       * scm/x11-color.scm: new file
-       All x11 color names can be accessed with:
-       #(x11-color 'ColorName),
-       #(x11-color "ColorName") or:
-       #(x11-color "color name")
-       If the x11 color name is not recognised then it defaults
-       to black
-
-       * scm/lily.scm: amended to call scm/x11-color.scm
-
-2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/invoking.itely (Reporting bugs): comment out
-       reference to online PNG bug repository.
-
-2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/translator-scheme.cc (ly:translator-property): Remove.
-       Update callers.
-
-       * lily/context-scheme.cc (ly:context-now): Move from translator.
-       Update callers.
-
-2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * input/regression/grid-lines.ly (skips): refine example.
-
-       * scm/define-context-properties.scm
-       (all-user-translation-properties): doc autoBeamCheck
-
-       * input/regression/grid-lines.ly (Module): new file.
-
-       * lily/grid-point-engraver.cc (Module): new file.
-
-       * lily/grid-line.cc (Module): new file.
-
-       * lily/grid-line-span-engraver.cc (Module): new file.
-
-       * lily/grid-line-interface.cc (Module): new file.
-
-2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
-       missing parameter, actualy cdr through list.  Actually return a
-       list with ENTRY removed (was '()).
-
-       * scripts/convert-ly.py: Update.  Print warning if file cannot be
-       opened.
-       (do_conversion): Fix printing of continuation comma.
-
-       * Documentation/user/advanced-notation.itely (Beam formatting):
-       Remove refbugs about compound time and mixed duration.
-
-       * scm/auto-beam.scm (default-auto-beam-settings): Write out all
-       modulo moments explicitely.
-
-       * lily/moment.cc (operator %): New function.
-
-       * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
-
-       * lily/translator-scheme.cc (ly:translator-now,
-       ly:translator-property): New function.
-
-       * scm/auto-beam.scm (default-auto-beam-check): New function.
-
-       * lily/auto-beam-engraver.cc (test_moment): Use it.
-
-       * flower/rational.cc (operator %): Bugfix.
-
-2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * scripts/abc2ly: Bugfix
-
-2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * python/fontextract.py (write_extracted_fonts): bugfix, too many
-       %'s on EndFont comment.
-
-       * lily/ledger-line-spanner.cc: some more words of explanation.
-
-2005-04-20  John Williams <williams@tni.com>  
-       
-       * scripts/lilypond-book.py: htmlquote bugfix.
-       Allow snippets to be given distinct filenames.
-       Allow the default alt text to be overridden.
-
-2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * ly/performer-init.ly: Bugfix
-
-       * THANKS: Added bughunters.
-
-2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
-
-       * lily/auto-beam-engraver.cc (test_moment): Test exact measure
-       position (was: use modulo measure length).
-
-       * configure.in (no gui_b): Remove optional gtk+ requirement.
-
-2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/basic-notation.itely (Pitches): add
-       LedgerLineSpanner.
-
-       * lily/dynamic-engraver.cc (process_music): set right bound to
-       script if present. Else, do not set.
-       (acknowledge_grob): only set right bound of finished spanner to
-       note column if no other bound is set.
-
-       * python/lilylib.py (make_ps_images): switch back to png16m.
-       
-2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scripts/lilypond-book.py (write_if_updated): Bugfix for not
-       writing up to date file.  Add dvips usage suggestion.
-
-       * scripts/convert-ly.py: Fix error message.
-       Print usage if no files on command line.
-       (usage): Add example usage.
-
-       * input/test/compound-time.ly: New file.
-
-       * input/test/circle.ly: New file.
-
-       * Documentation/topdocs/NEWS.tely: Use them.
-
-       * input/test/boxed-stencil.ly: Remove \score.
-
-       * buildscripts/mf-to-table.py (base): Add .log dependency.
-
-       * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
-       pfa's.  Add .log dependency
-
-       * scm/define-markup-commands.scm (lower): New command.
-
-       * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
-       make it default.
-
-2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
-       also to finished cresc as right bound. This fixes:
-       skip-string-decresc.ly
-
-       * lily/slur-scoring.cc (get_bound_info): robustness: substitute
-       relative_coordinate if extent is empty.
-
-       * lily/stem.cc (width_callback): determine correct extent if flag
-       is not there. This fixes slur-no-flag.ly
-
-       * lily/grace-engraver.cc (consider_change_grace_settings): new
-       function.
-       (initialize): also consider_change_grace_settings() on
-       initialization. Fixes large grace notes at start of score.
-
-       * lily/break-align-interface.cc (do_alignment): don't translate if
-       total_extent is empty.
-
-       * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (grob-cause): don't add cwd if path starts
-       with slash.
-
-2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: Remove tfm_path.
-
-2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/music-functions.scm (markup-expression->make-markup): fix
-       bug with cons arguments of markup commands.
-       (music->make-music): fix music expression property list building
-
-2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * aclocal.m4: Massage package names.
-
-       * SCons updates.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PACKAGE_NAME): release 2.5.20
-
-       * lily/stem.cc (calc_stem_info): add minimum Y extent of
-       stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
-
-       * lily/percent-repeat-engraver.cc (try_music): add measure before
-       next_moment to future processing moment. Fixes:
-       percent-repeat-mm-rest.ly
-       (process_music): don't add moment for 2nd time.
-
-       * input/regression/repeat-percent.ly: add mmrests as extra test.
-
-       * lily/axis-group-engraver.cc (acknowledge_grob): read
-       keepAliveInterfaces to decide what to kill.
-
-       * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
-       percent-repeat-interface to keepAliveInterfaces. This fixes
-       percent-repeat-harakiri.
-
-2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * SCons updates.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
-
-       * aclocal.m4: remove --enable-tfm-path configure option
-
-       * input/test/ancient-font.ly (lowerStaff): clef name errors.
-
-       * scm/backend-library.scm (postscript->png): newline after
-       finishing command.
-
-       * lily/paper-score-scheme.cc (LY_DEFINE): new file.
-       (LY_DEFINE): ly:paper-score-paper-systems: new function 
-
-       * lily/score-scheme.cc (LY_DEFINE): require music argument. 
-
-       * lily/score.cc (default_rendering): use Music_output too.
-
-       * input/test/chord-names-languages.ly (Module): rename file.
-
-       * lily/text-spanner.cc: add bound-padding.
-
-       * lily/paper-book.cc (systems): accept Paper_score
-       iso. Paper_system vector. 
-
-       * input/regression/line-arrows.ly: new file.
-
-       * lily/paper-score.cc (process): run get_paper_systems() only once.
-
-       * lily/line-spanner.cc (line_stencil): add arrows.
-
-2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
-
-       * lily/line-interface.cc (make_arrow): new function. 
-       (arrows): idem.
-
-2005-04-18  Mathieu Giraud  <magiraud@free.fr>
-
-       * input/test/chord-names-german.ly: update for italian/french
-       chords.
-       
-       * Documentation/user/instrument-notation.itely (Printing chord
-       names): update.
-
-2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/paper-score.hh (class Paper_score): remove unused
-       prototypes.
-
-       * lily/book.cc (process): add -COUNT to midi output.
-
-       * lily/score.cc (book_rendering): remove outname argument
-       (book_rendering): return list of Music_outputs. 
-
-       * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
-
-       * lily/book.cc (process): loop over Music_outputs returned from
-       Score::book_rendering().
-
-       * lily/*.cc (width_callback): remove spurious "unused" warnings
-       for assert (axis==[XY]_AXIS); 
-
-       * lily/include/music-output.hh (class Music_output): smobify class.
-
-       * lily/include/paper-score.hh (class Paper_score): make members
-       private.
-
-       * lily/performance.cc (process): return #f iso. #<undefined>. This
-       prevents #<undefined> leaking into GUILE-userspace.
-
-2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
-
-2005-04-17  Mathieu Giraud  <magiraud@free.fr>
-
-       * scm/chord-name.scm : support for italian and french
-       chords names.
-
-       * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
-       a space defined by chordPrefixSpacer when the root name is
-       direclty followed by a prefix.
-
-       * ly/engraver-init.ly : chordPrefixSpacer       
-       * scm/define-context-properties.scm : chordPrefixSpacer
-       * ly/property-init.ly : italianChords, frenchChords 
-
-2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/feta-din.mf: Remove.
-
-       * mf/GNUmakefile (fontdir): Bugfix.
-
-       * mf/SConstruct: Some updates.
-
-       * SConstruct: Require pkg-config.
-       (test_program): Bugfix for double digit version compares, use
-       integer (not string-) compare.
-       Optionally require gs 8.14.
-
-       * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
-
-       * lily/*: s/ifdef HAVE_*/if have/.
-
-       * SConstruct (test_lib): New function.  Update pkg-config and some
-       other requirements.
-
-       * configure.in: Require pkg-config.  Enforce REQUIRE and version for
-       freetype, pangof2t.
-
-2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * po/lilypond.pot, ...: Update using bison-CVS.
-
-       * python/lilylib.py (make_ps_images): Fixo.
-
-2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * python/lilylib.py (make_ps_images): typo.
-
-       * configure.in (gui_b): make bison optional.
-
-       * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
-
-2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
-
-       * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
-       with one parameter can be defined in a LaTeX file when processed
-       by lilypond-book this will be evaluated between the systems of
-       a multi-system score. The parameter is the number of systems processed.
-
-2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * python/lilylib.py (make_ps_images): Escape newline.
-
-       * Documentation/user/music-glossary.tely: Run
-       texinfo-all-menus-update.
-
-2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/lily-library.scm (old-relative-not-used-message)
-       (version-not-seen-message): Add input-file-name-location to message.
-
-       * lily/parser.yy (lilypond): Add token aliases.
-
-       * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
-       not confuse with alteration.
-       (alteration): Add.
-
-2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * python/lilylib.py (make_ps_images): use -dEPSCrop
-
-       * VERSION (PACKAGE_NAME): release 2.5.19 
-
-       * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
-       only put xrefs in info documentation.
-
-       * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
-       .pdf rule to tex-rules.make.
-
-       * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
-       from -systems.* output.
-
-       * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
-       directly, remove -$(PAGESIZE) target.
-
-       * input/test/embedded-postscript.ly: update.
-
-2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
-
-       * Documentation/user/changing-defaults.itely (Font selection):
-       document font-name.
-
-       * input/regression/font-name.ly: show Pango fonts for
-       font-name. Update example. 
-
-       * lily/pango-select.cc (properties_to_pango_description): don't
-       convert symbol font-size to number, but use to lookup.
-
-       * python/fontextract.py (write_extracted_fonts): add VMusage 0.
-
-       * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
-       (NAME . FILE-NAME) tuples for font descriptions. 
-       (write-preamble): display BeginFont DSC comments.
-
-       * python/fontextract.py (write_extracted_fonts): new file. Extract
-       font resources from a PS file.
-
-       * scripts/lilypond-book.py (option_definitions): --psfonts option.
-       (Compile_error.process_include): do_file returns chunks.
-
-       * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
-
-       * make/lysdoc-targets.make: .texi is .PRECIOUS
-
-       * scripts/lilypond-book.py (write_if_updated): new function.
-
-2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
-
-2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
-
-       * input/regression/markup-syntax.ly: remove \score.
-
-       * scm/define-markup-commands.scm (draw-circle): add fill argument
-
-       * scm/stencil.scm (make-circle-stencil): add fill argument
-
-       * ps/music-drawing-routines.ps: add fill argument.
-
-       * ly/performer-init.ly: add CueVoice to MIDI too.
-
-       * ps/music-drawing-routines.ps: new routine BeginEPSF /
-       EndEPSF.
-
-       * input/regression/markup-eps.ly: new file.
-
-       * scm/framework-ps.scm (write-preamble): change order: vars should
-       be inited before procedures.
-
-       * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
-       for EPS files.
-
-       * scm/define-markup-commands.scm (epsfile): add epsfile command.
-
-2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * configure.in (gui_b): add check for ghostscript 8.15
-
-2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
-       start of line. Fixes cresc-after-newline.ly
-
-       * lily/source-file.cc (file_line_column_string): use get_column().
-
-2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/source-file.cc (get_column): utf-8 support for column numbers.
-
-2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/*: use message () iso progress_indication () for messages.
-       Revise/uniformise user messages.
-
-       * flower/warn.cc (progress_indication): New function.
-       (message): Use it.  Fixes newline problems.
-
-       * config.make.in (webdir): Sort out install dirs.
-
-       * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
-
-       * python/lilylib.py (command_name): Bugfix.
-       (make_ps_images):
-
-2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * lily/main.cc: --help says what types of backends are availabe
-
-2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       Fix ./VERSION dependency, and without need to reconfigure.
-
-       * lily/main.cc (setup_paths): Update.
-
-       * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
-
-       * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
-
-       * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
-       Add \line for some simplistic cases.
-
-       * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
-
-2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
-       to compile LY files (useful for adding eg. "-I" args)
-       (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
-       2Gnome command for gnome backend.
-       (LilyPond-command-formatgnome): call the 2Gnome command. key
-       binding: C-c C-g
-
-2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
-       depend on all PNG images.
-
-2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in: Bugfix: also link .map files.
-
-2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/music-functions.scm (music->make-music): generate 
-       a (make-music ...) sexpr from a music expression.
-       (display-scheme-music): use guile pretty printer to display the
-       make-music sexpr.
-
-2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/engraver-init.ly: reindent.
-       Add CueVoice.
-
-       * scm/music-functions.scm (music-pretty-string): handle moments
-       too.
-       (music-pretty-string): only print non-empty lists.
-       (cue-substitute): create CueVoice context, which has smaller type.
-
-       * lily/moment-scheme.cc (LY_DEFINE): new methods
-       ly:moment-grace-{numerator,denominator}
-
-       * lily/context-handle.cc: remove quit() method. 
-
-       * lily/font-config.cc (init_fontconfig): be verbose about font path.
-       (init_fontconfig): success is 0, not !0
-
-2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/feta-nummer-code.mf (code): add plus glyph.
-
-       * lily/tie.cc (print): idem.
-
-       * lily/slur.cc (print): don't use thickness property for
-       slur shape-thickness.
-
-       * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
-       while adding stencils.
-
-       * scm/define-markup-commands.scm (with-color): with-color markup
-       command.
-       (whiteout): new markup command 
-       (filled-box): new markup command
-
-2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
-       test for PDF docs.
-
-       * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
-       PFAAybabtu-Regular.  Fixes feta font in PDFs.
-       
-       Notes for tetex-3.0 make web:
-          psclean.map: s/uhv8a/uhvr8a/
-          config.ps add:
-               p +psfonts_t1.map
-               p +psclean.map
-               p +typeface.map
-
-2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/music-functions.scm (music-pretty-string): fix bug with
-       string argument.
-
-2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
-
-       * stepmake/bin/add-html-footer.py (i18n): Bugfix.
-
-2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
-       only process options if they're there.
-       (write_file_map): add version-seen? to snippet-map.ly
-
-2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
-
-       * scripts/lilypond-book.py (split_options): Bugfix.  Small code
-       formatting cleanups.
-
-       * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
-       Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
-
-2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (ps-font-command): don't hash, just use
-       name directly.
-
-       * lily/main.cc (setup_paths): either add mf/out to search path or 
-       fonts/{otf,type1,etc}
-       
-       * lily/font-config.cc (init_fontconfig): either add mf/out to
-       FontConfig or fonts/{otf,type1,etc}
-
-       * GNUmakefile.in: don't put mf/ link in share/ dir.
-
-       * lily/staff-spacing.cc: move same-direction-correction to
-       note-spacing-interface
-
-       * scm/lily.scm (lilypond-main): use variable argument count for
-       exception handler.
-
-       * lily/font-config.cc (init_fontconfig): add operator pacification
-       message.
-
-       * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
-
-       * buildscripts/gen-emmentaler-scripts.py (i): generate
-       PFAEmmentaler as well.
-
-       * scm/framework-ps.scm (munge-lily-font-name): new function
-       (write-preamble): hack: insert PFA equivalent of CFF into
-       .PS. This makes LilyPond output printable on normal PS printers
-       again.
-
-       * buildscripts/gen-emmentaler-scripts.py (i): generate
-       PFAEmmentaler.pfa aswell.
-
-2005-04-06  John Williams <williams@tni.com>  
-       
-       * scripts/lilypond-book.py: refactor the compose_ly procedure.
-       
-2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/page-layout.scm (default-page-make-stencil): always combine
-       the header stencil, even if empty. This prevents the body text to
-       reach up to the margins.
-
-       * po/rw.po (Module): new file, for Kinyarwanda.
-
-       * input/test/spacing-optical.ly (Module): new file.
-
-       * lily/staff-spacing.cc: add same-direction-correction
-
-2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/introduction.itely (Engraving): Comment-out
-       non-existent file.
-
-2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-grob-properties.scm (all-user-grob-properties): add
-       same-direction-correction
-
-       * VERSION: release 2.5.18
-
-2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/grob.cc (mark_smob): Check pscore->layout_ before
-       dereferencing.  Fixes make web.
-
-       * lily/midi-stream.cc: Handle unwritable midi file.  Include
-       errno.h.
-
-       * Documentation/user/: Fix links.
-
-2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/text-interface.cc (Module): rename from text-item.cc
-
-       * input/regression/apply-output.ly (texidoc): function naming fix.
-
-       * lily/time-signature-performer.cc (derived_mark): new function.
-
-       * lily/lily-parser-scheme.cc:  print mapped file name for progress
-
-       * scripts/lilypond-book.py (find_linestarts): new function.
-       (find_toplevel_snippets): keep track of line numbers.
-
-       * lily/key-performer.cc (try_music): remove FIXME warning, gobble
-       all key changes.
-
-       * ly/declarations-init.ly (partCombineListener): use
-       ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
-
-       * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
-
-2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/text-item.cc: Fix link.
-
-       * Documentation/user/changing-defaults.itely (Changing defaults):
-       Fix programs reference links.
-
-       * Documentation/user/music-glossary.tely: Convert to utf-8.
-
-2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/lilypond-vars.make: remove TEXMF from variables.
-       remove DEB_BUILD pk font variables.
-       remove GUILE_LOAD_PATH
-       remove TeX memory vars.
-
-2005-04-04  Werner Lemberg  <wl@gnu.org>
-
-       * lilypond/scm-option.cc (ly_option_usage): Add final newline.
-
-2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ps/lilyponddefs.ps: remove reencode-font
-
-       * lily/simple-spacer.cc (add_columns): also compare
-       directly. Column rank doesn't distinguish between broken and
-       unbroken columns. This fixes large spaces before time sig changes.
-
-       * Documentation/user/point-and-click.itely: document ly:set-option.
-
-       * lily/grob.cc (get_uncached_stencil): only set grob-cause if
-       point_and_click_global is set.
-
-       * lily/scm-option.cc (LY_DEFINE): add point-and-click
-       ly:set-option argument.
-
-2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in: Include symlinks in webball.
-
-       * Documentation/user/GNUmakefile (source-links): Add symlinks to
-       source dir for split and non-split manuals.
-
-       * Documentation/user/*y: Fix @uref/@inputfile links for
-       split/non-split HTML documents.
-
-       * Documentation/user/GNUmakefile (local-WWW): Do not generate
-       .ps.gz.
-       
-2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in: Add newline.
-
-2005-04-01  Erlend Aasland  <erlenda@gmail.com>
-
-       * tex/lilyponddefs.tex: use color instead of xcolor
-       * scm/output-tex.scm: minor editing
-
-2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/music-functions.scm (display-scheme-music): pretty printer
-       for music expressions.
-
-2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * buildscripts/install-info-html.sh (index_file): Fix link.
-
-2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
-
-       * Documentation/index.html.in: Add size estimates with some big pages.
-
-       * Documentation/user/tutorial.itely (Running LilyPond for the
-       first time): Add/replace some @rglos links.  TODO: add more
-       @rglos links in tutorial, test non-intrusiveness (.css).
-
-       * stepmake/bin/add-html-footer.py (do_file): Remove info's
-       annoying's indication of referencing external document.
-
-       * Documentation/user/GNUmakefile: Split version of glossary too.
-       * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
-       links, not only for html.
-
-       * Documentation/user/introduction.itely: Fix some links for other
-       than html, do not use `here' as link name.
-
-2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/documentation-generate.scm (string-append): Fix @usermanref,
-       @glossaryref.
-
-2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/page-layout.scm (default-page-make-stencil): only add header
-       if existing and not empty. Fixes spurious programming error.
-
-       * lily/span-bar.cc (print): don't make rounded edges for spanbars.
-
-2005-03-31  Erlend Aasland  <erlenda@gmail.com>
-
-       * scm/output-tex.scm: implement {re,}setcolor
-       * tex/lilyponddefs.tex: use color package
-
-2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
-       additions to website.
-
-       * Documentation/user/lilypond.tely: Remove reference to ps.gz.
-
-       * Documentation/user/macros.itexi: Fix @usermanref html links in
-       split documents: use @inforef.
-
-2005-03-30  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/programming-interface.itely: minor fix.
-
-       * Documentation/user/advanced-notation.itely: added info to
-       Metronome markings.
-
-2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
-       use box-stencil.  Remove y-padding argument.
-       (make-stencil-circler): New function.
-
-       * buildscripts/lilypond-words.py (F): 
-       * elisp/SConscript (a): 
-       * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
-       * vim/SConscript (a): 
-       * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
-
-       * lily/general-scheme.cc: Build fix.
-
-       * scm/markup.scm:
-       * input/regression/markup-scheme.ly: 
-       * input/regression/markup-syntax.ly: Drop 'new-' from name.
-
-       * scm/stencil.scm (make-circle-stencil): New function.
-
-       * scm/define-markup-commands.scm (draw-circle): Use it.  New
-       name (was cicle).  Update callers.
-       (circle): New markup command, similar to box.
-
-       * scm/stencil.scm (circle-stencil): New function.
-
-2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
-
-       * configure.in: Detect libutf8/wchar.h variant.
-
-       * stepmake/aclocal.m4: Modify shared size test.
-
-2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
-
-2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
-       
-       * VERSION (PACKAGE_NAME):  release 2.5.17
-
-2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/backend-library.scm (postscript->png): Fix comment and png
-       message.
-
-       * GNUmakefile.in (link-tree): Fix locales.
-
-2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/stencil-scheme.cc (LY_DEFINE): change to
-       ly:stencil-aligned-to, non mutating.
-
-       * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
-
-       * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
-
-       * lily/quote-iterator.cc (derived_mark): call
-       Music_wrapper_iterator::derived_mark() too.
-
-       * lily/grace-engraver.cc (derived_mark): change signature, add
-       const.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * SConstruct (symlink): 
-       * GNUmakefile.in (link-tree): Add scripts to prefix.
-
-       * lily/general-scheme.cc (ly:effective-prefix): New function.
-
-       * scm/backend-library.scm (postscript->png): Use it.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/paper-score.cc (process): don't delete grobs after
-       producing stencils. 
-
-       * scm/part-combiner.scm (determine-split-list): switch off
-       debugging info.
-
-       * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
-       if available.
-
-       * scm/define-context-properties.scm
-       (all-user-translation-properties): add stringNumberOrientations.
-
-       * lily/new-fingering-engraver.cc (position_scripts): make generic,
-       so fingering and string-numbers are separately controlled.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
-       not use debugging.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
-
-       * config.hh.in: add HAVE_FONTCONFIG.
-
-       * Documentation/user/instrument-notation.itely (String number
-       indications): new node.
-
-       * input/regression/new-markup-syntax.ly (texidoc): add circle.
-
-       * lily/new-fingering-engraver.cc (add_string): new function. 
-       (acknowledge_grob): accept string-number-event as well.
-
-       * scm/define-markup-commands.scm (circle): new markup command.
-
-       * scm/output-lib.scm (print-circled-text-callback): new function.
-
-       * lily/GNUmakefile: move ifeq after include stepmake.make.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * config.make.in (HAVE_LIBKPATHSEA_SO):
-       * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
-
-       * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
-       add KPATHSEA_LIBS.
-
-       * debian/watch: 
-       * debian/control: Update.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * input/test/title-markup.ly (spaceTest): remove.
-
-       * input/test/embedded-tex.ly (Module): remove.
-
-       * input/test/music-box.ly: use 'name property, not ly:music-name.
-
-       * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
-
-       * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
-
-2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/INSTALL.texi (Top): Remove information
-       about xdeltas.  Add information about CVS.
-
-       * scm/lily.scm (lilypond-main): Fix invocation of handler,
-       gracefully handle failed files.
-
-       * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
-
-       * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
-       small fixes.
-
-       * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
-       No unnecessarily specific i18n messages.  Remove stray `1'.
-
-2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/lys-to-tely.py (strip_extension): add utf-8
-       documentencoding
-
-       * scm/documentation-lib.scm (texi-file-head): set utf-8
-       documentencoding.
-
-       * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
-       Delta, not the Symbol one. 
-
-       * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
-       for the .map file.
-
-       * Documentation/topdocs/INSTALL.texi (Top): add running
-       requirement as compilation requirement.
-
-2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/mutopia-index.py (headertext): add h1 header and
-       utf-8 charset meta field.
-
-       * input/GNUmakefile: prune example list.
-
-       * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
-       options.
-
-       * lily/slur-scoring.cc (get_base_attachments): only look at stem
-       extent for visible stems.
-
-       * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
-
-2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/INSTALL.texi (Top): Updates.
-
-       * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
-
-2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
-       pass inf/nan into slur scoring.
-
-       * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
-       page.
-
-       * scripts/abc2ly.py (dump_voices): use alphabet().
-
-2005-03-27  Jeff Smith <whydoubt@yahoo.com>
-       
-       * mf/GNUmakefile (depth): use $(FONTFORGE). 
-
-2005-03-27 Matthias Neeracher <neeracher@mac.com>
-       
-       * flower/include/virtual-methods.hh: simplify. Patch by
-
-2005-03-25  John Williams <williams@tni.com>  
-
-       * scripts/lilypond-book.py (main): add png for HTML too, guess
-       only if necessary. 
-
-2005-03-25  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/topdocs/INSTALL.texi: now recommends
-       lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
-
-       * Documentation/user/basic-notation.itely,
-       Documentation/user/tutoria.itely: warn about
-       only one (phrasing) slur at once.
-
-2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
-
-2005-03-23  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/basic-notation.itely: fixed info about
-       ending a (de)cresc.
-
-       * Documentation/user/lilypond-book.itely: fixed
-       lilypond-book filter example and warned about not doing
-       --filter and --process at the same time.
-
-2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * lily/parser.yy (bass_number),
-       Documentation/user/instrument-notation.itely (Figured bass): 
-       Add the possibility to use text markup in figured bass. 
-
-2005-03-19  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/global.itely: added info about naming
-       identifiers and breakbefore.
-
-       * Documentation/user/invoking.itely: added info about batch
-       processing files with convert-ly, removed references to TeX
-       in the jail section.
-
-       * Documentation/user/examples.itely: possibly fixed piano
-       dynamics.
-
-       * Documentation/user/advanced-notation.itely: added info
-       about removing other types of Staff.
-
-       * Documentation/user/instrument-notation.itely: possibly
-       fixed piano staff line switch.
-
-       * Documentation/user/changing-defaults.itely: added info
-       about using normal font in titles.
-
-2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PATCH_LEVEL): release 2.5.16
-
-       * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
-       explicitly.
-
-2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
-       whitespace.
-
-       * python/lilylib.py (make_ps_images):
-       * scm/backend-library.scm (postscript->pdf, postscript->png):
-       Quote file name.  Use format rather than string-append juggling.
-
-2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * python/lilylib.py (make_ps_images): add x to -g argument. 
-
-       * lily/key-performer.cc (create_audio_elements): don't use
-       scm_eval_string. Check for minor 3rd directly.
-  
-       * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
-       (sarabandeCelloGlobal): key is D minor, not F major.
-
-2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       Fix truncated --png output (Peter Danenberg).
-       
-       * python/lilylib.py (make_ps_images):
-       * scripts/ps2png.py (copyright): Grok --papersize option.
-
-       * scm/backend-library.scm (postscript->png): Add parameter
-       PAPERSIZE.  Update callers.
-
-       * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
-       Fixes symbol placement.
-
-       * lily/spanner.cc: 
-       * lily/stencil.cc: Use "libc-extension.hh" (WAS:
-       <libc-extension.hh>).
-
-2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Nitpick run.
-
-       * buildscripts/fixcc.py: Update.
-
-       Builddir run fixes.
-
-       * HACKING (datadir): Add VERSION.
-
-       * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
-       higher up.
-
-2005-03-15  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
-       diagonal stem doesn't become thinner.
-
-2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * buildscripts/fixcc.py: Fixes (Werner).
-
-2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
-       Emmentaler/Aybabtu.
-
-       * GNUmakefile.in: fix lilypond-words path.
-
-       * po/tr.po: update to 2.3.21
-
-       * lily/new-fingering-engraver.cc (position_scripts): take priority
-       from head position.
-
-       * input/regression/finger-chords-order.ly (texidoc): new file.
-
-2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * make/ly-rules.make: 
-       * stepmake/aclocal.m4: 
-       * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
-
-       * buildscripts/fixcc.py (rules): Leave space after operator.
-
-2005-03-14  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
-       top of the glyph with smooth curve.
-
-2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/global.itely (Page layout): remove
-       printpagenumber.
-
-2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
-
-       * input/regression/mensural-ligatures.ly: new file (with examples
-       compiled by Pal Benko).
-
-       * Documentation/user/instrument-notation.itely: Bugfix: yet some
-       other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
-       musicglyph access.  Many small beautifications in ancient
-       examples.
-
-       * input/test/divisiones.ly: fixed indentation; small
-       beautifications
-
-       * ly/engraver-init.ly: added FIXME comment
-
-       * scripts/lilypond-book.py,
-       Documentation/user/lilypond-book.itely: added music fragment
-       option "packed" to lilypond-book
-
-       * Documentation/user/instrument-notation.itely: Bugfix: added
-       missing LedgerLineSpanner color setting in several places.  Added
-       music fragment option "packed" to VaticanaContext example.
-
-2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-grobs.scm (all-grob-descriptions): switch off
-       Hyphen_spanner::set_spacing_rods 
-
-       * lily/lyric-hyphen.cc (print): add padding between syllable and
-       hyphen.
-       (print): shorten hyphen in tight situations (determine using
-       minimum-length)
-
-       * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
-       0.4pt.
-
-2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * ly/titling-init.ly (bookTitleMarkup): Refinements.
-
-       * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
-       header/footer markings for regression-test.
-
-       * scm/backend-library.scm (output-scopes, header-to-file): Move
-       from framework-tex.scm.
-
-       * scm/framework-ps.scm (output-framework)
-       (output-preview-framework):
-       * scm/framework-eps.scm (output-classic-framework)
-       (output-framework): Use it.  Fixes collated files.
-
-2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * input/sakura-sakura.ly: 
-       * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
-
-       * buildscripts/guile-gnome.sh: Update.
-
-       * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
-
-       * mf/aybabtu.pe.in: Capitalize Aybabtu.
-
-2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
-       culprit: always exit the loop if we find a rod, even if it has
-       distance < 0. 
-
-       * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
-       algorithm.
-
-       * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
-       $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
-
-       * scm/output-svg.scm (dashed-line): new  function body.
-       
-       * GNUmakefile.in: create .htaccess.
-
-2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/NEWS.tely (Top): Fix text example.
-
-2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PACKAGE_NAME): release 2.5.15
-
-       * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
-
-       * scm/framework-svg.scm (output-framework): put scaling in
-       document header. Apply scaling only once.
-       (output-framework): dump page size in px, not mm. 
-
-       * scm/lily-library.scm (modified-font-metric-font-scaling): rename
-       from font-size.
-
-       * lily/paper-outputter-scheme.cc (LY_DEFINE):
-       ly:outputter-output-scheme, new function.
-
-       * scm/output-svg.scm (pango-description-to-svg-font): new function
-
-2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
-       target.
-
-       * input/typography-demo.ly: new file.
-
-2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/global.itely (File structure): Add markup blocks
-       to toplevel expressions.
-       (Multiple movements, Creating titles): Add markup blocks.
-
-       * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
-       <libc-extension.hh>).
-
-       * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
-
-       * flower
-       * lily
-       * kpath-guile: Nitpick run: buildscripts/fixcc.py.
-
-2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/accidental.cc: special bboxes for natural. 
-
-       * mf/feta-toevallig.mf: make stems heavier.
-
-       * lily/dynamic-text-spanner.cc (print): add bound padding for edge
-       texts as well.
-
-       * mf/feta-klef.mf: revise. 
-
-       * mf/feta-schrift.mf: make thinning of accent less pronounced.
-
-       * mf/feta-klef.mf: add rounded curve at top. 
-       make thinnib a little heavier.
-
-2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/parser.yy (book_body): Oops, allow \markup in \book too.
-
-       * buildscripts/fixcc.py: New file.
-
-       * input/regression/utf8.ly: Update Debian font description.
-
-2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: Fix test.
-
-2005-03-09  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/invoking.itely: added Sebastino Vigna's
-       docs for the --jail option.
-
-2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/stem.cc (print): only produce stemlets if there are no
-       noteheads on this stem.
-
-       * lily/note-spacing.cc (stem_dir_correction): robustness fix:
-       don't crash on stemlet (visible stem without heads).
-
-       * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
-       unbroken situations. 
-
-       * scm/output-lib.scm (center-invisible): new function.
-
-       * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
-       wishes to determine loose column space.
-
-       * lily/font-config.cc (init_fontconfig): add
-       fonts/{otf,type1,cff}  to path.
-
-       * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
-
-       * mf/GNUmakefile (Module): install all fonts under otf/
-
-       * scm/framework-ps.scm (Module): read fonts from fonts/extension,
-       replace /fonts/otf/ by /ps/ 
-
-       
-2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
-
-       * lily/book.cc (process): Oops, add score_.header_.
-
-       * lily/paper-book.cc: Fold hearders, score and texts into scores_.
-
-       * lily/parser.yy: Handle toplevel and book texts as score.
-
-       * scm/page-layout.scm (default-page-make-stencil):
-       Bugfix: (page-properties rename.
-
-       * scm/backend-library.scm (ly:system): Typo.
-
-2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * stepmake/stepmake/executable-targets.make (installexe): don't
-       strip installed executables
-
-       * lily/font-select.cc (get_font_by_design_size): revert
-       pango_description_string as well.
-
-       * lily/system.cc (set_loose_columns): put loose column just left
-       of next column.
-
-       * lily/include/group-interface.hh (extract_grob_array): rename
-       from Pointer_group_interface__extract_grobs
-
-       * input/regression/ledger-line-minimum.ly (texidoc): new file.
-
-       * lily/ledger-line-spanner.cc (set_spacing_rods): new
-       function. Keep ledgered note heads at a minimum distance.
-       Introduce minimum-length-fraction
-       (print): introduce length-fraction property.
-
-2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * tex/GNUmakefile: remove latin1.enc rules.
-
-2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/titling.scm: Typo.
-
-       * input/regression/score-text.ly: Really add.
-
-       * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
-
-2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/open-type-font-scheme.cc:  new file.
-
-2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/titling.scm (layout-extract-page-properties): Rename from
-       page-properties.  Update callers.
-
-       * lily/lexer.ll (Lily_lexer):
-       * lily/parser.yy: Junk lyric_markup state.
-
-       * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
-
-       * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
-       Add texts parameter.
-
-2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/lexer.ll (lyric_markup): New mode.
-       (Lily_lexer::push_lyric_markup_state): New method.
-       (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
-
-       * lily/parser.yy (book_body):
-       (toplevel_expression): Grok \markup texts.
-
-       * lily/score-scheme.cc (ly:music-scorify): 
-       * scm/lily-library.scm (collect-music-for-book): Take texts
-       parameter.
-
-       * lily/score.cc (texts_): New member.
-
-       * lily/paper-book.cc (systems): Format score texts.
-
-       * score-text.ly: New file.
-
-       * ttftool/SConscript:
-       * kpath-guile/SConscript: New file.
-
-       * lily/SConscript:
-       * SConstruct: Update.
-
-2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PACKAGE_NAME): release 2.5.14
-
-2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc: Add dummy xgettext markers.
-
-2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
-       requirements
-
-       * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
-       executable is < 40k
-
-       * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
-       hack.
-
-2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/libc-extension.cc:
-       * flower/include/libc-extension.hh: [Open]BSD simply cast
-       cookie/funopen declarations.
-
-       * stepmake/aclocal.m4: Check for libkpathsea.so.
-
-       * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
-       dl_kpse_find_file.
-
-2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
-       (open_library): alternative for static library.
-
-2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
-
-       * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
-
-       Drop run-time dependency on teTeX.
-
-       * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
-
-       * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
-       KPATHSEA_LIBS in LIBS.
-       (STEPMAKE_DLOPEN): New function.
-
-       * lily/font-config.cc (init_fontconfig): Use dir for directory,
-       not path.
-
-       * flower/file-path.cc (directories): Rename from paths, as this
-       return an array of directories (a single path).
-
-2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
-
-       * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
-       new ly:kpathsea-find-file
-
-       * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
-
-       * kpath-guile/GNUmakefile: new file
-
-       * buildscripts/gen-emmentaler-scripts.py (i): generate
-       emmentaler-X.fontname as well.
-
-       * buildscripts/ps-embed-cff.py: new script
-
-       * scm/lily-library.scm: remove ps-embed-cff.
-
-       * scm/framework-ps.scm (write-preamble): don't use kpathsea for
-       font loading. 
-
-       * scm/font.scm (add-music-fonts): load dynamics/numbers through
-       fontconfig as well.
-
-       * lily/font-config.cc (init_fontconfig): add cff/ too.
-
-       * ly/generate-embedded-cff.ly: capitalize.
-
-       * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
-       so as to register the pango font.
-
-       * lily/font-config.cc (init_fontconfig): add
-       prefix/{otf,type1,mf/out} to fontconfig path.
-
-       * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
-       overrides all. 
-
-       * configure.in (gui_b): remove ec mftrace check
-
-       * config.hh.in: use lilypond-Major.Minor as data directory.
-
-       * scm/framework-ps.scm (dump-page): use output-units for landscape.
-
-       * buildscripts/gen-emmentaler-scripts.py (i): lower case file
-       name.
-
-2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
-       error messages.
-
-       * flower/libc-extension.cc:
-       * flower/include/libc-extension.hh: [Open]BSD fixes for
-       cookie/funopen declarations.
-
-2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
-       emmentaler.
-
-       * lily/score-engraver.cc (initialize): remove check for ecrm10 /
-       lcrm10.
-
-       * scm/define-markup-commands.scm (fontsize): new markup
-       command. Also set baseline-skip
-
-2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
-       
-       * lily/main.cc (do_chroot_jail): paranoia security for webserver
-       use.
-
-2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
-
-       * lily/pdf.cc: remove PDF related files
-
-2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
-       <hamamatsu@gmx.de>
-
-2005-03-05  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/advanced-notation.itely: first draft
-       of reorg done.
-
-       * Documentation/user/global.itely: fixed (sub)section
-       bits of MIDI.
-
-2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * cygwin/mknetrel (extras): Bufix (Bertalan).
-
-       * Documentation/user/basic-notation.itely (Chords): @ref fix.
-       * Documentation/user/instrument-notation.itely (Introducing chord
-       names): Compile fix: must have unique name.
-
-2005-03-02  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/instrument-notation.itely: reorg.
-
-2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm:
-       * scm/output-svg.scm: Fix font scaling.
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
-       what link to use best.
-
-       * Documentation/user/instrument-notation.itely (Ancient accidentals): 
-       * Documentation/user/tutorial.itely (Automatic and manual beams):
-       Fix @ref.
-
-       * lily/tweak-registration.cc (replace_grob_tweak): New function.
-       * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
-       * scm/framework-gnome.scm (tweak): Use it.
-
-2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
-
-       * scm/output-ps.scm (white-text): reinstate white-text
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-ps.scm (offset-add): Remove.
-
-       * scm/lily-library.scm (offset-flip-y): New function.
-       * scm/framework-gnome.scm (tweak): Use it.
-
-       * scm/output-gnome.scm (grob-cause): Add parameter.
-
-       * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
-       * scm/output-ps.scm (url-link): Move.
-       (white-text): Warn user about brokenness.
-
-       * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
-       wrt ghostscript.
-
-2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/slash-repeat-engraver.cc (try_music): always make slashes
-       if body length smaller than measure length.
-
-       * scm/define-markup-commands.scm (with-url): oops. use Y extent
-       for Y.
-
-       * ly/titling-init.ly (tagline): put default tagline in \paper
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/kpath.cc: 
-       * lily/pdf.cc (Pdf_file): Use more generic error messages.
-
-       * scm/lily-library.scm (version-not-seen-message): New function.
-       * ly/init.ly: Use it.
-
-       * scm/page-layout.scm (ly:optimal-page-breaks): Display page
-       breaks as progess.
-
-       * scripts/lilypond-book.py (do_process_cmd): Do not lump
-       whitespace with l10n message.
-
-       * scm/framework-tex.scm (convert-to-ps):
-       (convert-to-dvi): Do not use overly specific l10n messages.
-
-       * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
-
-       * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
-       merge stderr with stdout.  
-
-2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/libc-extension.cc: Tested BSD compile fix (Matthias
-       Neeracher).
-
-2005-02-29  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/instrument-notation.teily: moved
-       \arpeggio to Basic.
-
-       * Documentation/user/advanced-notation.itely: Articulation to
-       Basic, a bunch of stuff from Basic moved to Advanced.
-
-       * Documentation/user/basic.itely: swapped various sections,
-       reorganized Basic.
-
-2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * flower/memory-stream.cc: 
-       * flower/libc-extension.cc: Remove obsolete #undefs.
-
-       * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
-       more carefully.
-
-2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
-       dependency.
-
-       * VERSION (PACKAGE_NAME): release 2.5.13
-
-       * GNUmakefile.in (web-ext): don't ship ps.gz
-
-       * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
-       stdout
-
-2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
-       without libintl.  Now it compiles too.
-
-2005-02-28  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/basic-notation.itely,
-       instument-notation.itely, advanced-notation.itely:
-       split up contents of notation.itely.
-
-       * Documentation/user/notation.itely: file removed.
-
-       * Documentation/user/invoking.itely, converters.itely:
-       moved convert-ly info to invoking.itely.
-
-       * Documentation/user/global.itely, changing-defaults.itely,
-       sound-output.itexi: moved global settings, file layout, and
-       sound into global.itely.
-
-       * Documentation/user/sound-output.itexi: file removed.
-
-       * Documentation/user/lilypond.tely: removed links to
-       notation.itely and sound.itely.
-
-2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
-
-       * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
-       * THANKS: add sponsor.
-
-       * scm/define-markup-commands.scm (with-url): new markup command.
-
-       * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
-       tagline.
-       
-       * scm/output-tex.scm (url-link): stub.
-
-       * scm/output-ps.scm (url-link): new function.
-
-       * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
-       ly:set-point-and-click
-
-2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * ps/music-drawing-routines.ps (mark_file_line): Switch Action
-       based on pdf-viewer setting.
-
-       * scm/framework-ps.scm (write-preamble): Find and set preferred
-       pdf-viewer.
-
-2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/point-and-click.itely: update for PDF point &
-       click.
-
-       * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
-       editors based on EDITOR setting.
-
-2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/*: Oops, more grand 2005 replace bits.
-
-2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ps/music-drawing-routines.ps: new routine: insert PDF mark
-
-       * scm/output-ps.scm (grob-cause): point & click support for
-       PostScript
-
-2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/input-scheme.cc (LY_DEFINE): rename to
-       ly:input-file-line-column
-
-2005-02-26  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/examples.itely: small fix from Steve Doonan.
-
-       * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
-
-       * THANKS: added Yuval Harel.
-
-       * Documentation/user/{various}: inserted two spaces after a period.
-
-       * Documentation/user/lilypond.tely: added framework for reorg.
-
-       * Documentation/user/basic-notation.itely, instrument-notation.itely,
-       advanced-notation.itely, global.itely: new files, placeholder for
-       future reorg.
-
-2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
-
-       * Documentation/user/notation.itely: revamped Polyphony section
-       
-2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/lilypond-book.itely (Music fragment options):
-       doc fontload.
-
-       * Documentation/user/changing-defaults.itely (Text encoding): add
-       fontload option to utf8 include
-
-       * scripts/lilypond-book.py (compose_ly): add fontload option
-
-       * scm/framework-eps.scm (dump-stencils-as-EPSes): add
-       force-eps-font-include option.
-
-       * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
-       black triangle
-
-       * Documentation/user/invoking.itely (Editor support): remove
-       lilypond-latex section.
-
-       * scripts/lilypond-latex.py (Module): remove script.
-
-       * cygwin/lily-wins.py (stat): write to .lylog, so as not to
-       overwrite .log. 
-
-       * lily/main.cc: remove -m, --no-layout
-
-       * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
-       to define. We don't want to override fprintf everywhere.
-
-2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * cygwin/lilypond.hint: 
-       * cygwin/README.in: Update dependencies.
-
-       * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
-       Bugfix: do not pollute CPPFLAGS, LIBS.
-
-       * cygwin/mknetrel (extras): Cross compile fixes.
-
-       * ttftool/util.c: 
-       * ttftool/ttfps.c: 
-       * ttftool/ps.c: #include libc-extension.hh
-
-       * flower/include/libc-extension.hh:
-       * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
-       wrapper using funopen.
-       (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
-       handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
-
-       * config.hh.in:
-       * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
-       (AC_CHECK_HEADERS): Add libio.h
-
-       * scripts/convert-ly.py: Uniformize, internationalize.
-       (2.5.2): Remove fatal encoding rule.
-       (2.5.13): Handle latin1 encoding gracefully.
-
-2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * HACKING: Fix line breaks.
-
-2005-02-23  Werner Lemberg  <wl@gnu.org>
-
-       * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
-       contains those two files.
-
-2005-02-21  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
-       to improve overlap removal process.
-
-       * mf/feta-slag.mf (draw_trillelement): Add parameter to control
-       left and right ending.  This ensures better overlapping.
-       Update all callers.
-       ("lineprall"): Don't use draw_gridline to get better overlapping.
-
-2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
-
-       * Documentation/topdocs/NEWS.tely (Top): oops.
-
-2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * HACKING: new file.
-
-       * input/regression/utf8.ly (portuguese): added a portuguese example
-       to show latin1 accents.
-
-2005-02-21  Pal Benko  <benkop@freestart.hu>
-
-       * lily/mensural-ligature-engraver.cc:
-       * lily/mensural-ligature.cc:
-       * lily/include/mensural-ligature.hh: new algorithm implemented
-
-       * scm/define-grob-properties.scm: join-left killed (add-join may
-       be used); join-left-amount changed to join-right-amount
-
-2005-02-21  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: small but urgent fix.
-
-2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
-
-       * lily/duration-scheme.cc: bugfix: correct parameters to
-       SCM_ASSERT_TYPE.
-
-       * THANKS: added Pal.
-
-       * Documentation/user/notation.itely: bugfix: unTeXified
-       $\\backslash$.  Bugfix: yet another glyph renaming victim:
-       "timesig.*x/y" -> "timesig.*xy".
-
-2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-       
-       * VERSION (PACKAGE_NAME): release 2.5.12
-
-2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/engraver-init.ly: set tieWaitForNote to #t by default
-
-       * configure.in (gui_b): bump GUILE requirement to 1.6.5 
-
-       * Documentation/topdocs/NEWS.tely: add inputfileref macro.
-
-       * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
-
-2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
-       latin1..utf-8.
-
-       * input/regression/stanza-number.ly:
-       * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
-
-       * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
-
-2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
-       NEWS. Refer to website for older news.  
-
-       * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
-       .HTML. This should be done for specific servers only.
-
-       * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
-       .ly image examples.
-
-       * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
-       in layer 0 too.
-
-       * scm/define-context-properties.scm
-       (all-user-translation-properties): add tieWaitForNote
-
-       * scm/define-grobs.scm (all-grob-descriptions): add
-       Tie_column::before_line_breaking
-
-       * lily/tie.cc (get_column_rank): new function
-
-       * lily/tie-column.cc (before_line_breaking): new function.
-       (werner_directions): take into account ties that start on
-       different columns.  
-
-       * lily/score-engraver.cc (set_columns): move add_column() so we
-       have column rank available.
-
-       * lily/tie.cc (get_column_rank): new function.
-
-       * input/regression/utf8.ly (japanese): add japanese lyrics.
-
-       * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
-
-       * THANKS: add Steve D
-
-       * ttftool/*.c: add TTF -> Type42 conversion library. Based on
-       Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
-
-2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
-
-       * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
-       to show harmonic notes
-       * scm/define-markup-commands.scm: in \markup-by-number
-       "dots-dot" -> "dots.dot" to show dotted notes
-
-2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * flower/include/memory-stream.hh (class Memory_out_stream): new file.
-
-       * flower/memory-stream.cc (writer): new file.
-
-       * configure.in: add endian test.
-
-2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
-
-       * Documentation/user/examples.itely: small
-       simplification/beautification
-
-       * Documentation/user/notation.ietly: bugfix: fixed many artefacts
-       from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
-       notation manual.
-
-       * lily/mensural-ligature.cc: bugfix: another few victims of the
-       "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
-
-       * ly/gregorian-init.ly: commit some experimental code for hi-level
-       ligature input language lying around here for several months.
-
-       * lily/mensural-ligature-engraver.cc: bugfix: another victim of
-       the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
-
-       * lily/vaticana-ligature-engraver.cc: bugfix: another few
-       "x-y-z"->"x.y.s-z" fixes.
-
-2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-pdf.scm (scm): new file
-
-       * lily/include/pdf.hh (class Pdf_file): new file.
-
-       * lily/pdf.cc (write_trailer): new file.
-
-2005-02-18  Erlend Aasland  <erlenda@gmail.com>
-
-       * input/regression/color.ly: new file
-
-       * lily/stencil.cc (interpret_stencil_expression):
-       when a color expression is encountered: save current color,
-       process the rest of the expression, and restore previous color.
-
-       * lily/system.cc (get_line): check all grobs for color property and
-       prepare the stencil scheme expressions for further processing.
-       Fix layer-loop.
-
-       * scm/define-grob-properties.scm: introduce the color property.
-
-       * scm/output-lib.scm: color helper functions.
-
-       * scm/output-ps.scm: introduce setcolor/resetcolor.
-
-2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * ly/*.ly, input/regression/*.ly: Added missing \version
-       statements in some files.
-
-2005-02-15  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: minor editing.
-
-       * Documentation/user/converters.itely: updated convert-ly bugs.
-
-       * Documentation/user/lilypond-book.itely: add info about using
-       feta characters in latex.
-
-2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
-
-2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-grob-properties.scm (all-user-grob-properties):
-       removed 'dashed property.
-
-2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/lily.scm (define-safe-public): new macro for defining
-       variables that can be used in --safe mode. Use it in *.scm
-       instead of manually setting safe-objects in safe-lily.scm.
-
-2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-       
-       * lily/slur.cc: Slur-dash patch by Bertalan.
-
-       * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
-
-       * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
-
-2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
-
-2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/GNUmakefile: teTeX-3.0 install fix.
-
-       * Cygwin patch from Bertalan.
-
-       * stepmake/stepmake/metafont-rules.make: Remove bashism.
-
-2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in: 
-       * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
-
-       * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
-       2.0.x compatibility.
-
-2005-02-08  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-din-code.mf: Format; clean up code.
-       Replace `---' with `--' plus explicit path directions.
-       (linethickness#, stafflinethickness#): Remove.
-       ("dynamic f"): Replace `draw' with `draw_rounded_block'.
-       ("dynamic s"): Improve shape.
-       ("dynamic p"): Improve shape.
-       Replace `draw' with better outline approximation.
-       ("dynamic r"): Improve shape.
-       Don't call `fill' and `draw' at the same time.
-
-2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * SConstruct (symlink):
-       * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
-       build fix: add enc symlink.
-
-       * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
-
-       Support for DESTDIR besides prefix=/foo
-
-       * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
-
-       * stepmake/stepmake/*.make:
-       * */GNUmakefile:
-       * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
-
-       * config.make.in (prefix): Remove broken $(DESTDIR) hack.
-
-       * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
-       mawk in fontforge (date) test.
-
-2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/font.scm (make-century-schoolbook-tree): add NCS as
-       font-family=roman. Add Luxi Sans as sans
-
-2005-02-07  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: add warning about
-       percent repeats and Voice contexts.
-
-       * Documentation/user/lilypond-book.itely: clarified the
-       necessity of dvips -u arguments.
-
-2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * THANKS: Added a bunch of bug hunters.
-
-2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (output-preview-framework): bugfix.
-
-       * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
-       o/ for chord modifier..
-
-       * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
-
-       * lily/drum-note-performer.cc:  remove unused (thanks Michael
-       Welsh Duggan). 
-
-2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
-
-       * ly/titling-init.ly: Do not also print intstrument in header on
-       first page.  Do not print page number on first and only page.
-
-2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * input/regression/*.ly: remove old-relative everywhere
-
-       * lily/music-sequence.cc (simultaneous_relative_callback): do
-       what-if analysis on copy, not on original. Fixes old-relative
-       compatibility.
-
-       * scm/backend-library.scm (postscript->png): space before
-       --verbose.
-       
-2005-02-05  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
-       is defined.
-
-       * mf/feta-alphabet.mf: Define `staffsize#'.
-       Include `feta-params.mf'.
-       s/staffheight/design_size/.
-
-       * mf/feta-alphabet??.mf: s/staffheight/design_size/.
-
-       * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
-
-       * mf/feta-nummer-code.mf: Reformatted.
-       (draw_six): Use outline intersection to avoid a self-intersecting
-       path.
-       ("Numeral comma"): Fix serious outline glitches.  This slightly
-       changes the glyph shape.
-       ("Numeral dash"): Use `draw_rounded_block'.
-       ("Numeral dot"): Use `drawdot'.
-       ("Numeral 1"): Assure identical tangent directions for the
-       intersection points of paths.  The glyph shape improvement is only
-       visible at very high magnifications.
-       ("Numeral 2"): Use `solve' macro to make the lower right part of
-       the glyph outline touch the x axis exactly.  This changes the
-       glyph shape.
-       Minor fixes for better overlap removal support.
-       ("Numeral 4"): Make lefter corner `rounder'.
-       ("Numeral 5"): Assure identical tangent directions for the
-       intersection points of paths.  This improves the glyph shape at
-       high magnifications.
-       ("Numeral 7"): Use `solve' macro to make the upper right part of
-       the glyph outline touch the metrics box exactly.  This changes the
-       glyph shape.
-       Avoid corner in the upper left part of the glyph (causing a minor
-       shape change).
-
-       * mf/feta-ital-*.mf: Removed.  Unused.
-
-2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PATCH_LEVEL): release 2.5.11
-
-       * input/regression/fill-line-test.ly: new file.
-
-       * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
-       emmentaler name, eg. emmentaler-23. 
-
-2005-02-04  Christian Hitz  <chhitz@gmx.net>
-
-       * scm/scm/define-markup-commands.scm (fill-line): rework for better
-       alignment with centered texts
-
-       * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
-       list of paddings
-
-2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
-
-       * lily/note-column.cc (translate_rests): call flush_extent_cache()
-       of parents when translating rests. Fixes: c-chord-rest.ly 
-
-       * lily/include/dimension-cache.hh (struct Dimension_cache): add
-       dimension_callback_ member.
-
-       * lily/grob.cc (flush_extent_cache): new function. Force recompute
-       of extents.
-
-2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * all but lily/*: The grand 2004/2005 replace.
-
-2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/*: add space after ,  
-
-       * scm/music-functions.scm (has-request-chord): don't use
-       ly:music-name anywhere. Fixes <<\\>> notation. 
-
-       * scm/define-markup-commands.scm (box): use font-size for
-       padding. Fixes boxed-rehearsal-marks.ly
-
-       * lily/parser.yy (assignment_id): allow LYRICS_STRING as
-       identifier definition too, so foo = \lyrics { ...   } bar = #1
-       doesn't complain about "bar" being LYRICS_STRING.
-
-       * lily/paper-def.cc (find_pango_font): new routine; Store
-       pango_fonts in hash tab too. This is necessary for retrieving
-       Pango_fonts::physical_font_tab() later on.
-       * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
-       crash if psname is null.
-
-       * lily/lily-guile.cc (ly_hash2alist): new function
-
-       * Documentation/user/changing-defaults.itely (Text encoding):
-       rewrite. 
-
-       * lily/pango-font.cc (physical_font_tab): new member. Store PSname
-       -> font_filename mapping.
-
-       * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
-       ly_pango_font_physical_fonts
-
-       * scm/framework-ps.scm (supplies-or-needs): extract names from
-       physical Pango_fonts.
-
-       * utf8.ly: new file.
-
-2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/user/changing-defaults.itely (Page layout): add
-       doco about systemSeparatorMarkup.
-
-       * scm/page-layout.scm (default-page-make-stencil): add-to-page
-       function.
-       (default-page-make-stencil): insert system separators.
-
-       * scm/define-markup-commands.scm (hcenter): add
-       (beam): add.
-
-2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (ez-ball): reinstate ez notation.
-
-2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc: Spell backend consistently.  Sort options.
-
-2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scripts/lilypond-book.py (Module): revert @include.
-       
-2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
-       Bugfix: @include .tex (not .texi).  Small cleanups.
-
-       * stepmake/bin/add-html-footer.py (i18n): New function.
-
-2005-01-31  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-nummer.mf: Removed.  Unused.
-
-2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/ : 2004 -> 2005 s&r
-
-       * scm/file-cache.scm (cached-file-contents): add file. Read each
-       file only once.
-
-       * scm/font.scm (add-pango-fonts): change order. Medium weight is
-       now default.
-
-       * VERSION: release 2.5.10
-       
-       * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
-
-       * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
-
-       * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
-       that both X and Y extents of bbox are non-nil.
-
-2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/chord-name.scm (alteration->text-accidental-markup): change
-       - to . 
-
-       * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
-
-       * scm/framework-ps.scm (dump-stencil-as-EPS): new function
-
-       * Documentation/user/invoking.itely (Invoking lilypond): add note
-       about EPS backend.
-
-       * scm/framework-eps.scm: new file: create per-system/per-page EPS
-       files for inclusion in lilypond-book document.
-
-       * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
-
-       * input/tutorial/lbook-texi-test.texi: new file.
-
-       * scm/safe-lily.scm (safe-objects): add
-       {begin,end}-of-line-(in)?visible as safe.
-2005-01-30  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/changing-defaults.itely: fixed example
-       of (dynamics).
-
-2005-01-29  Graham Percival  <gperlist@shaw.ca>
-
-       * lily/main.cc: fix info about -o=FILE.
-
-2005-01-29  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-toevallig.mf ("Natural"): Completely changed the
-       construction to assure smooth transition from straight to curved
-       lines.
-
-2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/stencil.cc (moved_to_edge): don't halt on adding empty
-       stencils.
-
-       * ps/lilyponddefs.ps: add start-page, start-system doesn't
-       translate to top of page. Fixes alignment problems of
-       lilypond-generated EPS files.
-
-2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/part-combiner.scm (analyse-spanner-states): trigger on
-       crescendo-end as well, since Decrescendo maybe ended with Stop
-       Crescendo.). Fixes: partcombine-diminuendo.ly
-
-       * scm/script.scm (default-script-alist): swap portato symbols.
-
-       * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
-
-       * lily/paper-outputter-scheme.cc (LY_DEFINE):
-       ly:outputter-port. New function.
-
-       * scm/framework-ps.scm (output-classic-framework): dump a
-       -systems.texi too
-       (output-classic-framework): dump multiple systems on an "infinite"
-       page EPS including fonts. 
-
-       * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
-       .eps files for both texi and tex formats. Use PNG coming from
-       lilypond.
-       
-2005-01-28  Graham Percival  <gperlist@shaw.ca>
-
-       * Docuemntation/user/invoking.itely: fix info about -o=FILE.
-
-       * scripts/lilypond-latex.py: fix info about -o=FILE.
-
-2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * ly/generate-embedded-cff.ly: write .cff.ps files.
-
-       * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
-
-       * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
-       $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
-
-2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
-
-2005-01-28  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
-       macros.
-       (draw_bulb): Improved.
-
-       * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
-       metapost bug.
-       (draw_pedal_P): Use soft_end_penstroke.
-       (draw_pedal_d): Use soft_start_penstroke.
-
-       * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
-       path.
-       ("Varied Coda"): Move some points to avoid fontforge warnings.  This
-       doesn't change the glyph shape.
-
-       * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
-       changing the shape) to avoid fontforge warnings.
-
-       * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
-       soft_end_penstroke and fix glyph shape.
-
-2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
-
-2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-markup-commands.scm (line): filter out empty stencils
-       from line command.
-
-       * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
-       amount.
-
-2005-01-27  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: added info about what
-       \voiceFoo does.  Also rewrote warning about marks at
-       a line break.
-
-       * Documentation/user/changing-defaults.itely: added info
-       about putting dynamics in parenthesis and brackets.
-
-2005-01-27  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
-
-2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/feta-schrift.mf: reverse u and d portato. Fixes:
-       portato-direction.ly
-
-       * lily/beam.cc (consider_auto_knees): add beam height to
-       threshold. Fixes: knee-multiple-beam.ly
-
-       * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
-       pedal line spanners. Fixes: instrument-center-pedal.ly
-
-       * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
-       if encountering barline. Fixes: auto-beam-repeat.ly
-
-2005-01-26  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
-       overlapping.
-
-       * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
-       with inflections for the 1/2 sharp glyph.
-
-       * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
-       connection between `t' and `r'.
-       Unify bulb with the rest of `r' to avoid grazing outlines which
-       confuses the overlap removal algorithm of fontforge.
-
-       * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
-       inflections.
-       (draw_cross): Fix shape to have uniform thickness in corners.
-
-       * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
-       to avoid an uneven number of self-intersections; this confuses
-       fontforge.
-       Fix a slight bug in the shape at left bottom (which is visible only
-       at high magnifications).
-       `Center' the stem horizontally to avoid overlapping.
-
-2005-01-24  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
-       to `asis'.
-       (fet_begingroup): Save group name in string `feta_group'.
-       (fet_endgroup): Updated.
-       (fet_beginchar): Emit `glyph_name' special for mf2pt1.
-
-       * mf/feta-bolletjes.mf: s/p/pat/ for paths.
-
-       * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
-       in metapost.
-
-2005-01-24  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: really minor editing.
-
-2005-01-22  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/examples.itely: minor editing.
-
-       * Documentation/user/changing-defaults.itely: minor editing.
-
-       * Documentation/user/notation.itely: clarified info on polyphony
-       and \addlyrics.
-
-2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm: 
-       * scm/output-svg.scm:
-       * scm/lily-library.scm (font-name-style): Update font name
-       kludging for fontconfig use.
-
-2005-01-20  Erlend Aasland  <erlenda@gmail.com>
-
-       * scm/define-markup-commands.scm: Document right-align and
-       larger markup commands. Remove "TODO" from the topmost comment
-       "each markup function should have a doc string." More consistent
-       use of new-lines.
-
-2005-01-22  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/changing-defaults: removed info about
-       copyright symbol, since it's likely to change soon.
-       Added info about betweensystemspace.
-
-       * Documentation/user/notation.itely: minor fixes.
-
-       * Documentation/user/lilypond.tely,
-       Documentation/user/music-glossary.tely: changed copyright
-       date to 2005 instead of 2004.
-
-       * input/test/volta-chord-names.ly: added old example back.
-
-2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/feta-beugel.mf: use design size 20 (not 15).
-
-       * mf/aybabtu.pe.in: scale brace fonts to design sizes.
-       change name to aybabtu completely
-
-2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/gen-emmentaler-scripts.py (outdir): add
-       design_size to fontname
-
-2005-01-19  Werner Lemberg  <wl@gnu.org>
-
-       * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
-       mf/feta-schrift.mf: s/p/pat/ if a path variable.
-
-       * mf/feta-autometric.mf (set_char_box): Add code which emits
-       specials for mf2pt1 if run with metapost.
-       (to_bp): New macro for mf2pt1.
-
-2005-01-18  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/changing-defaults: added info on
-       creating a copyright symbol.
-
-2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION: release 2.5.9
-       
-2005-01-18  Erlend Aasland  <erlenda@gmail.com>
-
-       * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
-
-       * Documentation/user/notation.itely: Document
-       score-override-auto-beam-setting Fix documentation for
-       revert-auto-beam-setting.
-
-2005-01-18  Werner Lemberg  <wl@gnu.org>
-
-       * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
-       (procset): New function to define a procset resource.
-       (ps-embed-pfa): New function to define a font resource.
-       (setup): New function to define a `Setup' environment.
-       (preamble): Use new functions.
-
-       * ps/lilypond.defs (init-lilypond-parameters): New function to
-       get rid of directly executed PS code.  Used in scm/framework-ps.scm.
-
-2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
-
-2005-01-17  Erlend Aasland  <erlenda@gmail.com>
-
-       * scm/define-markup-commands.scm: Change number->markletter-string
-       to take two arguments (vector number). Add number->mark-alphabet-vector
-       and markalphabet markup command.
-
-       * scm/translation-functions.scm: Add format-mark-box-alphabet,
-       format-mark-alphabet, format-mark-box-barnumbers and
-       format-mark-barnumbers. Fix bug in format-mark-box-numbers.
-
-2005-01-17  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/examples.itely: add SATB automatic piano
-       reduction template.
-
-       * Documentation/user/notation.itely: added info about changing
-       partcombine texts.  Also adds examples of alternate lyrics.
-
-       * Documentation/user/changing-defaults.itely: added warning
-       about \RemoveEmptyStaffContext overriding previous changes.
-
-2005-01-17  Werner Lemberg  <wl@gnu.org>
-
-       * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
-       feta-alphabet*.
-
-2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * python/lilylib.py (make_ps_images): don't do final showpage for
-       multi-page documents.
-       
-       * VERSION (MY_PATCH_LEVEL): release 2.5.8
-
-2005-01-16  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond.tely: changed order of appendices;
-       unified index should be last.
-
-       * Documentation/user/notation.itely: add example of key signatures
-       and info about Staff.printKeyCancellation.
-
-2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/repeated-music.hh (class Repeated_music): change
-       into "namespace" class.
-
-       * lily/event.cc: remove Key_change_event.
-
-       * lily/include/transposed-music.hh (class Transposed_music): remove.
-
-       * lily/transposed-music.cc: remove
-
-       * lily/include/relative-music.hh: remove.
-
-       * lily/include/music-sequence.hh (struct Music_sequence): change
-       into "namespace" class.
-
-       * lily/untransposable-music.cc (Module): remove
-
-       * lily/include/un-relativable-music.hh (Module): remove
-
-       * lily/include/untransposable-music.hh (Module): remove
-
-       * lily/include/music-list.hh (Module): remove file
-
-       * lily/un-relativable-music.cc: remove file.
-
-2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/parser.yy: Compile fix.
-
-2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/music.hh (class Music): unvirtualize transpose().
-
-       * lily/sequential-music.cc: remove file.
-
-       * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
-
-       * lily/slur-scoring.cc (get_best_curve): only switch on
-       DEBUG_SLUR_SCORING for non NDEBUG builds.
-
-       * lily/include/music.hh (class Music): replace Music::start_mom()
-       by start-callback property
-
-       * lily/include/grace-music.hh: remove file. 
-
-       * lily/stem.cc (height): robustness fix.
-
-       * lily/time-scaled-music.cc: remove file.
-
-       * lily/include/music.hh (class Music): include SCM init argument.
-       (class Music): replace Music::get_length() virtual by
-       length-callback property everywhere.
-
-       * scripts/convert-ly.py (conv): add  # to \property scalar value.
-
-       * mf/GNUmakefile: don't install *list.ly
-
-2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
-
-2005-01-12  Werner Lemberg  <wl@gnu.org>
-
-       This patch addresses the following problems in the feta sources
-       files which contribute to the fetaXX fonts.
-
-       . Many fixes for rasterization at low resolutions (consistent use of
-         `vround' and `hround', integer shift values for paths, applying
-         `eps' for mirrored paths, use of `define_whole_pixels' and
-         friends, etc.) -- while this probably looks like a waste of time
-         it has revealed deficiencies in some glyph shapes.  See comment at
-         the end of feta-params.mf how vertical symmetry is achieved.
-
-       . The `---' operator has been replaced everywhere with `--'; this
-         both improves and considerably reduces the font size after
-         conversion with mf2pt1.
-
-       These change aren't explicitly mentioned below since virtually all
-       glyphs are affected.
-
-       Other notable differences:
-
-       . Glyphs from feta-accordion.mf now have charboxes around the
-         outline.
-
-       . Fixed incorrect charbox for `accDot'.
-
-       . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
-
-       . Fixed position of the bow in the `upprall' glyph and its siblings.
-
-       . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
-         dependent on the staff line thickness to avoid touching the middle
-         staff line at smaller sizes.
-
-       . Largely extended output for feta-testXX: Where useful, glyphs
-       are shown both between and on staff lines.
-
-
-       * mf/feta-params.mf (staff_space_rounded,
-       stafflinethickness_rounded, linethickness_rounded,
-       ledgerlinethickness_rounded, stemthickness_rounded): New variables.
-       Update all code which uses them where appropriate.
-       (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
-       New variables used to control rasterization at low resolutions.  Set
-       to zero if feta code is processed with metapost.
-
-       * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
-       (draw_rounded_block, draw_square_block): Updated to use `--' only.
-       (flare_path): Updated.
-       Make it work with `filldraw' (but only circular pens).
-       (hfloor, vfloor, hceiling, vceiling): New macros.
-
-       * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
-       Use `draw' again in mf mode to have good pixel dropout control.
-       Fix intersection points of horizontal lines with circle.
-       ("accDot"): Fix parameters for set_char_box.
-       ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
-       control.
-
-       * mf/feta-banier.mf: Updated.
-
-       * mf/feta-bolletjes.mf (remember_pic): New variable, used for
-       testing.
-       (undraw_inside_ellipse): Remove `center' argument.  Update all
-       callers.
-       (draw_brevis): New macro, called by "Brevis notehead".
-       (draw_whole_triangle_head): New macro, called by "Whole
-       trianglehead".
-       (draw_small_triangle_head): Use `filldraw'.
-
-       * mf/feta-eindelijk.mf: Remove useless global group.
-       Updated.
-
-       * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
-       `filldraw'.
-
-       * mf/feta-pendaal.mf: Updated.
-
-       * mf/feta-puntje.mf: Updated.
-
-       * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
-       less points.
-       ("Flageolet"): Use `draw' again in mf mode to have good pixel
-       dropout control.
-       ("Varied Coda"): Use `draw_block'.
-       (draw_comma): Fix typo.
-       (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
-       pixel dropout control.
-
-       * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
-       position of bow.
-
-       * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
-       sizes.
-
-       * mf/feta-toevallig.mf (remember_pic): New variable, used for
-       testing.
-       (draw_meta_sharp): Much simplified.
-       ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
-
-       * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
-
-2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * Documentation/user/notation.itely (Ancient rests): Fix typo
-       (thanks Anthony)
-
-2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
-
-       * lily/main.cc (setup_paths): Add cff.
-
-       * mf/GNUmakefile (foe): Include actual target %.cff.
-       (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
-
-2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
-       suffix for main_input_b_.
-
-       * scm/music-functions.scm (toplevel-music-functions):
-       precompute music lengths for music expressions.  
-
-2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * lily/include/input.hh (class Input): new `end_' slot for end of
-       input. Renamed defined_str0_ to start_.
-
-       * lily/input.cc (Input): Add Input::Input (Input const &) and
-       remove Input::Input (Source_file*, char const *). Use the new
-       slots.
-       (set_location): method used by bison to propagate input
-       locations (YYLLOC_DEFAULT).
-       (end_line_number, end_column_number, step_forward): new methods
-       
-       * lily/input-scheme.cc (ly:input-both-locations): new function,
-       similar to ly:input-location, but also return the end line and
-       column.
-
-       * lily/include/includable-lexer.hh: 
-       * lily/includable-lexer.cc: 
-       * lily/include/lily-lexer.hh (class Lily_lexer): 
-       * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
-       Includable_lexer to Lily_lexer, in order to update lexloc (the
-       yylloc), a new slot of Lily_lexer.
-       (here_input, LexerError): simplify by using the lexloc slot (aka
-       yylloc)
-
-       * lily/lexer.ll: #define yylloc to use input locations (it may
-       be useless here?). Fixed the #embedded_scm rule (step the location
-       forward in order to skip the sharp sign before parsing the scheme
-       expression)
-
-       * lily/include/lily-parser.hh (class Lily_parser): 
-       * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
-       here_input()
-       (parser_error): overload for more precise locations of errors.
-
-       * lily/parser.yy (YYLTYPE): set location type to Input
-       (YYLLOC_DEFAULT): use Input::set_location()
-       (yylex): add the YYLTYPE* location parameter.
-       Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
-       Give an Input parameter to THIS->parser-error() for more accurate
-       messages.
-
-2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
-
-       * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
-       on BEAMQUANTING for non-NDEBUG builds.
-
-       * lily/stem.cc (head_count): performance: avoid String::String()
-       inside oft called function.
-
-2005-01-09  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/examles.itely: attempted fix for broken
-       string quartet template.
-
-       * Documentation/user/notation.itely: remove unnecessary broken
-       link.
-
-2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PACKAGE_NAME): release 2.5.7
-
-2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * config.make.in (METAFONT): Append -progname=mf, fixes use with
-       mf-nowin for teTeX-3.0.  Backportme.
-
-       * scm/output-svg.scm (utf8-string): New function.
-
-       * scm/output-gnome.scm (utf8-string): New function.
-       (otf-name-mangling): Remove.
-
-       * lily/pango-font.cc (Pango_font): Use font string iso font
-       filename for utf8-text.
-
-       * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
-       name.
-
-2005-01-08  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: add info about
-       Staff.extraNatural = ##f in Pitches section.  Also
-       fixed some minor issues in the Vocal music section.
-
-2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (white-text): comment out Helvetica font,
-       which is broken for my GS install.
-
-       * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
-       which provides a tighter bbox.
-
-       * scm/define-grobs.scm (all-grob-descriptions): remove all
-       extra-offsets from definitions.
-
-2005-01-08  Erlend Aasland  <erlenda@gmail.com>
-
-       * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
-       add tuning for 4-string bass and some common 4/5-string banjo
-       tunings.  New function (four-string-banjo) turns a 5-string tuning
-       into a 4-string tuning.  New function
-       (fret-number-tablature-format-banjo) computes correct fret numbers
-       on 5-string banjos.
-
-       * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
-       Add beam correction to TabVoice.
-
-       * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
-       using bold font; makes tabs more readable.
-
-2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/font-select.cc (get_font_by_design_size): don't make
-       Modified_font_metric; this causes trouble, since we don't know the
-       font magnification from inside Pango_font::text_stencil()
-
-       * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
-
-       * Documentation/user/notation.itely (The Lyrics context): comment out
-       broken {Small ensembles} link.
-
-       * scm/framework-svg.scm (output-framework): change calling convention.
-
-       * lily/object-key-dumper-scheme.cc: new file.
-
-       * lily/object-key-undumper-scheme.cc: new file.
-
-       * lily/tweak-registration-scheme.cc: new file.
-
-       * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
-
-       * Documentation/user/examples.itely (String quartet): uncomment
-       broken example.
-
-       * lily/font-config.cc: new file.
-
-2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-svg.scm: 
-       * scm/output-gnome.scm: s/bigcheese/emmentaler.
-
-       * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
-
-2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
-       Add headers.
-
-       * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
-
-2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
-
-       * lily/include/main.hh: lose _b hungarian suffixes for global
-       variables.
-
-       * lily/include/lily-guile-macros.hh: new file.
-
-       * lily/pango-select-scheme.cc (LY_DEFINE): new file.
-
-       * lily/general-scheme.cc: new file. 
-
-       * lily/font-select.cc (get_font_by_design_size): retrieve
-       PangoFont for (designsize . "pango-descr") entries.
-
-       * lily/lily-parser-scheme.cc: new file.
-
-       * lily/output-def-scheme.cc: new file.
-
-       * lily/paper-book-scheme.cc: new file.
-
-       * lily/duration-scheme.cc (LY_DEFINE): new file.
-
-       * lily/pitch-scheme.cc:  new file.
-
-       * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
-
-2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
-
-2005-01-06  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: minor editing.
-
-       * Documentation/user/changing-defaults: minor editing.
-
-       * Documentation/user/examples.itely: add template for
-       string quartet part extraction; demonstrates tag.
-
-2005-01-06  Erlend Aasland  <erlenda@gmail.com>
-
-       * Documentation/user/notation.itely: documents
-       format-mark-box-letters and format-mark-box-numbers
-
-       * scm/define-context-properties.scm: change comment.
-
-2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (output-classic-framework): new function:
-       dump systems as separate .eps files (without fonts) and write a
-       single collecting .tex file.
-
-2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * Documentation/user/notation.itely (Setting simple songs):
-       Correct several errors in the equivalent formulation of
-       \addlyrics. 
-       (The Lyrics context): Corrected link to the SATB example.
-
-2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/lily.scm (completize-formats): new function
-       (postprocess-output): new function
-
-       * lily/paper-book.cc (classic_output): change calling
-       convention. Give basename as first argument. 
-       remove Paper_book::post_processing().
-
-       * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
-
-2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/paper-outputter.cc (LY_DEFINE): new function
-       ly:outputter-close.
-
-       * lily/main.cc: change --format,-f to --backend,-b
-
-       * lily/include/main.hh: rename format to backend.
-
-       * scm/translation-functions.scm (format-mark-box-numbers): add.
-       patch by Erlend Aasland
-
-2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/pango-font.cc (text_stencil): dump string as
-       (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
-
-2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * configure.in (gui_b): Remove handy developer-only
-       PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
-       CVS source installations (but break other non-default but correct
-       PKG_CONFIG_PATH setups), as this is no longer developer-only.
-
-       * SConstruct: 
-       * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
-       compatibility (backportme).
-
-       * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
-
-2005-01-03  Werner Lemberg  <wl@gnu.org>
-
-       Prepare glyph shapes for mf2pt1 conversion.
-
-       * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
-       (accDiscant, accFreebase, accStdbase): Replace `draw' with
-       `penstroke'.
-       (accDot): Use `drawdot'.
-       (accBayanbase): Replace `draw' with `draw_gridline'.
-       (print_penpos): Moved to feta-macros.mf.
-       (accOldEE): Replace `filldraw' with `penstroke'.
-       Replace `draw' with `penstroke' and `drawdot'.
-
-       * mf/feta-banier.mf: Code clean-up.
-       ("grace dash (up)", "grace dash (down)"): Replace `draw' with
-       `fill'.
-
-       * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
-
-       * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
-       paremeter to control drawing of labels.  Update all callers.
-
-       * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
-       (new_bulb): Return a bulb as a single path.  To do that, it now
-       takes some more parameters.  Updated all callers.
-       (draw_gclef): Major clean-up.  `draw' has been replaced with
-       `penstroke', unnecessary outlines have been removed.
-       Remove (unused) gnome-canvas code.
-
-       * mf/feta-macros.mf (print_penpos): New macro (from
-       feta-accordion.mf).
-       Other minor fixes.
-
-       * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
-       ("Pedal dot"): Use `drawdot'.
-       (draw_pedal_P): Add parameter to control drawing of labels.  Update
-       all callers.
-       Fix shape at top.
-       (draw_pedal_e): Add parameter to control drawing of labels.  Update
-       all callers.
-       (draw_pedal_d): Add parameter to control drawing of labels.  Update
-       all callers.
-       Revert drawing direction.
-
-       * mf/feta-schrift.mf (draw_fermata): Use single path.
-       (draw_short_fermata): Replace `filldraw' with `fill'.
-       (draw_long_fermata, draw_very_long_fermata): Replace calls to
-       `draw_rounded_block' with a single path.
-       ("Thumb"): Draw full circle instead of mirroring segments.
-       (draw_accent): New macro.
-       ("> accent", "espr"): Use it.
-       (draw_marcato): Replace `filldraw' and `draw' with `fill'.
-       ("open (unstopped)"): Draw full circle instead of mirroring
-       segments.
-       (draw_vee): Removed.
-       ("Upbow"): Use `draw_accent' instead of `draw_vee'.
-       ("Downbow"): Replace calls to `draw_rounded_block' with a single
-       path.
-       ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
-       partial pieces drawn with `fill' -- these do still overlap with the
-       stem of the `t' but just once, not multiple times so that fontforge
-       can handle it gracefully.
-       Change other parts of the glyph so that fontforge's overlapping
-       algorithm reliably works.
-       (draw_heel): Replace `draw' with `fill'.
-       (draw_toe): Use `draw_accent' instead of `draw_vee'.
-       ("Flageolet"): Replace `draw' with `penstroke'.
-       ("Segno"): Replace `filldraw' with `penstroke'.
-       Replace `draw' with `drawdot'.
-       ("Coda"): Replace `fill' with `penstroke', using a single path.
-       ("Varied Coda"): Use less overlapping paths.
-       (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
-       single path.
-
-       * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
-       group to better control the `labels' command.
-       Rename argument to `offset' and use it actually.  Update all
-       callers.
-       Replace `filldraw' with `fill'.
-       ("mordent", "prallmordent", "upmordent", "downmordent",
-       "lineprall"): Replace `draw' with `draw_gridline'.
-       ("upprall", "downprall"): Replace `draw' with `fill'.
-
-       * mf/feta-timesig.mf: Formatting.
-
-       * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
-       to...
-       ("Flat"): Here.
-       (draw_paren): Move code to draw labels to...
-       ("Right Parenthesis"): Here.
-
-2005-01-02  Graham Percival <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: add example of \setTextDecresc
-       and \setTextDim.
-
-2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
-
-       * scm/define-markup-commands.scm :  fix glyph-strings of
-       accidentals and \note-by-number
-
-2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION: 2.5.6 released.
-       
-       * ps/lilyponddefs.ps: put mm -> pt scaling in here.
-
-       * input/regression/new-markup-scheme.ly: oops. font-family=music
-       -> font-encoding fetaMusic.  
-
-       * lily/main.cc: put default to PS.
-
-       * lily/tfm.cc: idem.
-
-       * lily/afm.cc: idem.
-
-       * lily/include/modified-font-metric.hh (struct
-       Modified_font_metric): remove coding_scheme() method.
-
-       * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
-
-       * scripts/convert-ly.py (conv): crash on encountering \encoding.
-
-       * input/les-nereides.ly: convert to utf8
-
-       * lily/modified-font-metric.cc (text_dimension): idem.
-
-       * lily/parser.yy (TODO): idem.
-
-       * lily/include/lily-lexer.hh (class Lily_lexer): idem.
-
-       * lily/lexer.ll: remove encoding
-
-       * scm/framework-ps.scm (output-variables): separately scale the
-       page to mm 
-
-       * lily/pango-font.cc (Pango_font): fix scaling.
-
-       * lily/font-metric.cc (design_size): design_size returns a
-       dimension now as well.
-
-2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
-       brace generation. 
-
-       * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
-
-2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
-       install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
-
-2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
-       in first run as well.
-
-       * scm/paper.scm (layout-set-staff-size): use text-font-size in
-       dimension less points (ie. 12 = 12 point)
-
-       * lily/pango-select.cc (select_pango_font): use find_scaled_font().
-
-       * lily/all-font-metrics.cc (find_pango_font): set description_
-
-       * lily/pango-font.cc (text_stencil): export size as well.
-       (text_stencil): fix scaling and extents box.
-
-2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * Documentation/topdocs/NEWS.texi (Top): add -f texstr
-
-       * Documentation/user/invoking.itely (Invoking lilypond): document
-       texstr
-
-       * scripts/convert-ly.py (conv): add ancient rules.
-
-       * scm/clef.scm (c0-pitch-alist): replace - with .
-
-       * scripts/lilypond-book.py (process_snippets): add texstr support.
-
-       * scm/framework-texstr.scm (header): change extension to .textmetrics
-
-       * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
-       -f tex.
-
-       * lily/text-metrics.cc: new file.
-       (try_load_text_metrics): new function
-
-       * lily/include/text-metrics.hh: new file.
-
-2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/lily-guile.hh (ly_lily_module_constant): rename
-       ly_scheme_function to ly_lily_module_constant.
-
-       * lily/modified-font-metric.cc (text_dimension): try
-       lookup_tex_text_dimension() first.
-
-       * lily/tfm.cc: new function ly:load-text-dimensions
-
-2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-texstr.scm (text): use \lilygetmetrics
-
-       * scm/framework-texstr.scm (header): dump in new format.
-
-       * tex/lilypond-tex-metrics: new file.
-       
-2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
-       mapping.
-       (index_to_charcode): New method.
-
-       * scm/output-ps.scm (glyph-string): 
-       * scm/output-gnome.scm (glyph-string): Add FONT parameter.
-
-2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
-       implement fully, need FONT to get to charcode.
-
-       * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
-
-       * scm: Cleanups.
-
-       * Documentation/user/changing-defaults.itely: Fix internalsrefs
-       {Tunable context properties},
-       {All layout objects},
-       {Music definitions}.
-
-2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION: release 2.5.5
-       
-       * lily/main.cc: use TeX as default output format.
-
-       * flower/file-path.cc (find): try to open directly as well, so we
-       find absolute path files. 
-
-       * lily/pango-select.cc: new file.
-
-       * scm/framework-ps.scm: remove all encoding code. 
-       load pfb/pfa for PangoFont too.
-       
-       * lily/lily-guile.cc (ly_chain_assoc_get): new function.
-
-2004-12-22  Werner Lemberg  <wl@gnu.org>
-
-       Prepare glyph shapes for mf2pt1 conversion.
-
-       * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
-
-       * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
-       (define_triangle_shape): Use it to replace `draw' with `fill' and
-       `unfill'.  Update all callers.
-       (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
-       (draw_cross): Ditto.
-       ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
-       Use penrazor for better conversion with mf2pt1.
-       (generic_draw_solfa_note_shape, draw_solfa_note_shape,
-       draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
-       (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
-       draw_la_head, draw_ti_head): Replace `filldraw' with
-       `fill'.  Update all callers.
-
-2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/paper-book.cc (output): revert: only allow a single output
-       format.
-
-       * lily/include/pango-font.hh: new file.
-
-       * lily/pango-font.cc: new file.
-
-       * lily/font-metric.cc (text_stencil): new routine
-
-       * lily/all-font-metrics.cc (find_pango_font): new routine.
-
-       * lily/include/font-metric.hh (struct Font_metric): add
-       text_stencil()
-
-       * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
-
-2004-12-22  Werner Lemberg  <wl@gnu.org>
-
-       Prepare glyph shapes for mf2pt1 conversion.
-
-       * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
-
-       * mf/feta-toevallig.mf: Formatting.
-       (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
-       ("Natural"): Fix paths to allow better postprocessing.
-       (draw_meta_flat): Use `z3l' as additional point in path to get
-       better conversion with mf2pt1.
-       Other minor cleanups.
-       ("3/4 Flat"): Add auxiliary points and modify path to replace
-       `draw' with `fill'.
-       ("Double Sharp"): Mirror path segments instead of picture elements
-       to get a single outline.
-       Modify path to replace `filldraw' with `fill'.
-
-2004-12-22  Graham Percival  <gperlist@shaw.ca>
-
-       * input/test/unfold-all-repeats.ly: added file back.
-
-       * Documentation/user/notation.itely,
-       Documentation/user/programming-interface.itely
-       Documentation/user/changing-defaults.itely: fixed misc broken
-       links to input/test/ files.
-
-2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * tex/texinfo.tex: Update.  We should not be distributing this,
-       but since we do, use latest version.
-
-       * Documentation/user/macros.itexi: Comment-out \fetaflat,
-       \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
-       macros for feta glyphs.
-
-2004-12-22  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/changing-defaults.itely: fix index for set.
-
-       * Documentation/user/converters.itely: added convert-ly bugs list
-       from CVS.
-
-2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
-       to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
-       gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
-       resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
-
-       * mf/GNUmakefile (pfa_warning): Use less broken check.
-
-       * python/lilylib.py (setup_environment): Remove cruft from
-       GS_FONTPATH.
-
-       * configure.in: Bump mftrace requirement to 1.1.1.
-
-2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-svg.scm (beam): Use polygon.
-
-       * scm/lily-library.scm: Bugfix.
-
-       * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
-
-       * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
-
-2004-12-19  Werner Lemberg  <wl@gnu.org>
-
-       Prepare glyph shapes for mf2pt1 conversion.
-
-       * mf/feta-eindelijk: Some formatting.
-       (multi_rest_x, multi_beam_height): Removed.  Unused.
-       ("Quarter rest"): Use `intersectiontimes' to create a single
-       outline.
-       (rest_crook): Removed.  Unused.
-       (draw_rest_bulb): Return path (without filling).  Update callers.
-       Simplified.
-       (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
-       "128th rest"): Simplify `pat'.
-       Create single outline.
-
-2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/GNUmakefile (ALL_GEN_FILES):
-       (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
-
-       * scm/output-svg.scm (polygon, draw-line, dashed-line): New
-       function.
-
-2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-texstr.scm (placebox): add routine
-
-       * VERSION (PACKAGE_NAME): release 2.5.4
-
-       * scm/framework-texstr.scm (output-framework): new file.  
-
-       * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
-       processing.
-
-       * Documentation/user/invoking.itely (Invoking lilypond): add SVG
-
-       * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
-       rule.
-
-       * configure.in (gui_b): bump mftrace requirement to 1.1.0
-
-       * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
-
-       * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
-
-2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/framework-svg.scm (dump-page): Implement landscape.
-
-2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/main.cc (setup_paths): Add svg to search path.
-
-       * scm/output-svg.scm:
-       * scm/framework-svg.scm: Add pageSet.  Update.
-       (dump-fonts): New function.
-       (output-framework): Use it.
-
-       * mf/GNUmakefile: 
-       * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
-
-2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * tex/lilyponddefs.tex: comment out new ifpdf code.
-
-2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in: 
-       * SConstruct (symlink): Replace afm by otf.
-
-       * scm/framework-gnome.scm (gnome-main): Remove invocation of
-       ly:pango-add-afm-decoder.
-
-       * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
-
-2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-ps.scm (new-text): don't access t glyph for getting
-       space dimension.
-
-       * ly/init.ly: warn about \version
-
-       * lily/lexer.ll: set version-seen?
-
-2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-svg.scm (string->entities): Update.
-
-2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/main.cc (setup_paths): replace afm by otf for path. 
-
-       * lily/pangofc-afm-decoder.cc: remove.
-
-       * lily/include/pangofc-afm-decoder.hh: remove.
-
-       * scm/framework-scm.scm (output-framework): new file.
-
-       * mf/GNUmakefile: remove SAUTER_FONTS.
-       remove SVG/sodipodi hacks.
-
-       * scm/lily-library.scm (stderr): move stderr.
-
-       * mf/GNUmakefile: remove AFM support.
-
-       * buildscripts/mf-to-table.py (base): remove AFM support.
-
-       * lily/open-type-font.cc (design_size): use design_size
-
-2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
-
-2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/GNUmakefile: Generate combined aybabtu info.
-       * mf/aybabtu.pe.in (i): Load it.
-
-       * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
-       are not symbols.
-
-       * lily/include/open-type-font.hh (count): New method.
-
-       * mf/aybabtu.pe.in: Typo.
-
-       * Documentation/user/out/lilypond-internals.nexi (Scheme
-       functions): Typo.
-
-       * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
-
-2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
-       subfonts.
-
-       * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
-
-       * scm/framework-tex.scm (otf-font-load-command): load subfonts.
-       (tex-font-command-raw): new function.
-
-       * lily/include/virtual-font-metric.hh (Module): remove file
-
-       * lily/virtual-font-metric.cc (Module): remove file.
-       
-
-       * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
-       (get_indexed_char): read bbox from lily table if present.
-
-2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
-       aybabtu.subfonts
-
-       * mf/feta-beugel.mf (y): don't number consecutively, instead, use
-       global glyphname. Enables more than 64 glyphs in the OTF.
-
-2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
-       braces.
-
-       * lily/open-type-font.cc (design_size): Use 12 as default for
-       design size.
-
-       * mf/aybabtu.pe.in: New file.  Merge all our braces.
-
-       * mf/GNUmakefile: Generate aybabtu.
-
-       * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
-
-2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/lily-library.scm (char->unicode-index): Remove.
-
-       * scm/output-gnome.scm (text): Bugfix for plain string input.
-       Updates.
-
-       * scm/output-svg.scm (svg-font): Add weight to font selection.
-
-2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * Documentation/topdocs/INSTALL.texi (Top): Point to
-       buildscripts/out/clean-fonts instead of
-       buildscripts/clean-fonts.sh. 
-
-2004-12-13  Graham Percival  <gperlist@shaw.ca>
-
-       * input/regression/figured-bass.ly: attempt to clarify text.
-
-       * Documentation/user/notation.tely: add cindex for tag, attempt to
-       add figured bass example.
-
-       * Documentation/user/changing-defaults: basic editing.
-
-2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
-
-       * lily/open-type-font.cc (LY_DEFINE): new function
-       ly:font-sub-fonts
-
-       * lily/include/font-metric.hh (struct Font_metric): new method
-       sub_fonts()
-
-       * lily/vaticana-ligature-engraver.cc (transform_heads): replace
-       . with - in add.stem.
-       
-2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
-       and fetaDynamic.
-
-       * lily/rest.cc (glyph_name): Change - to . .
-
-       * scm/output-gnome.scm (text): Hello world, again.
-
-       * scm/output-svg.scm (named-glyph): New function.  Hello world!
-
-       * lily/modified-font-metric.cc (index_to_charcode): New method.
-
-       * lily/include/font-metric.hh (index_to_charcode): New function.
-
-       * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
-       new function.
-       (ly:font-glyph-to-index): Remove.
-
-2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/open-type-font.cc (make_index_to_charcode_map): new method.
-
-       * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
-
-       * lily/open-type-font.cc (load_scheme_table): new function
-
-       * lily/dots.cc (print): replace - 
-
-       * lily/open-type-font.cc (attachment_point): new function.
-       (load_table): read LILC table
-
-       * buildscripts/gen-bigcheese-scripts.py (Module): new
-       file. Generate FF scripts.
-
-       * mf/feta-din10.mf: idem.
-
-       * mf/feta-nummer10.mf: remove mf files.
-
-       * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
-
-2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/lily-guile.cc: Use scm_from_locale_stringn.
-
-       * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
-       compatibility.
-
-2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/open-type-font.cc (get_indexed_char): scale metrics by
-       design-size and units_per_EM.
-
-       * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
-
-2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
-       does not crash fontforge.
-
-       * scm/lily-library.scm (char->unicode-index): Hack to map onto
-       PUA.
-
-2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/framework-ps.scm (ps-embed-cff): new function.
-
-       * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
-
-2004-12-12  Werner Lemberg  <wl@gnu.org>
-
-       * mf/bigcheese.pe.in: Add PUA mapping.
-       Don't create Type 42 but bare CFF font.
-
-2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
-       within canvas boundaries.
-
-       * mf/merge.pe.in: Set font names, version, license GPL.
-
-       * make/substitute.make: Add FONTFORGE.
-
-       * config.make.in (FONTFORGE): Add.
-
-       * configure.in (gui_b): Use PATH_PROG for fontforge.
-
-2004-12-11  Graham Percival  <gperlist@shaw.ca>
-
-       * scm/define-markup-commands.scm: add baseline-skip to info
-       about \column.
-
-2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/font-metric.cc (ly:font-get-glyph-index): New function.
-
-       * scm/output-gnome.scm (named-glyph): Use it.
-
-       * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
-
-       * flower/string.cc (substitute_char): Rename, rewrite, modify this.
-       (upper_string, lower_string, reverse_string): Remove.
-
-       * configure.in (fontforge): Reinstate version check.
-
-       * ly/engraver-init.ly: Fix clef glyph names.
-
-       * lily/time-signature.cc (special_time_signature): Fix fraction
-       glyph names.
-
-2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/merge.pe: new file.
-
-       * lily/freetype.cc: new file.
-
-       * lily/include/open-type-font.hh (class Open_type_font): new file.
-
-       * lily/include/freetype.hh: new file.
-
-       * lily/open-type-font.cc: new file.
-
-       * lily/all-font-metrics.cc (find_otf): new function.
-
-2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/time-signature.cc (special_time_signature): Fix.
-
-       * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
-       GTK2 before checking for pango.  Fixes -fgnome.
-
-       * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
-       Scheme name.
-
-       * scm/define-markup-commands.scm:
-       * scm/safe-lily.scm: Bugfix: ly:font-by-name.
-
-       * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
-
-       * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
-       date versions.  Fixes configure.
-       (STEPMAKE_CHECK_VERSION): Support optional actual program version
-       argument.
-
-2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/mf-to-table.py (write_ps_encoding): write real
-       names in .enc
-
-       * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
-
-2004-12-09  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/changing-defaults.itely: add info about
-       make-dynamic-script
-
-       * Documentation/user/notation.itely: add link in dynamics to
-       section about make-dynamic-script.
-
-2004-12-09  Christian hitz  <chhitz@gmx.net>
-
-       * lily/lily-guile.cc: change MACOS_X to __APPLE__
-
-2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * buildscripts/mf-to-table.py (parse_logfile): use . for
-       concatting name and group.
-       (parse_logfile): use M for Minus (negative.)
-
-       * lily/include/type-swallow-translator.hh
-       (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
-
-       * lily/*.cc: cosmetics around = sign.
-
-       * lily/paper-column.cc (Paper_column): copy rank_. This fixes
-       lyric spacing on the penultimate column.
-
-2004-12-05  Christian Hitz  <chhitz@gmx.net>
-
-       * configure.in:
-       * lily/accidental-placement.cc:
-       * lily/bar-line.cc:
-       * lily/beam-concave.cc:
-       * lily/beam-quanting.cc:
-       * lily/beam.cc:
-       * lily/bezier-bow.cc:
-       * lily/bezier.cc:
-       * lily/break-align-interface.cc:
-       * lily/custos.cc:
-       * lily/dimension-cache.cc:
-       * lily/dot-column.cc:
-       * lily/font-metric.cc:
-       * lily/font-select.cc:
-       * lily/gourlay-breaking.cc:
-       * lily/grob-property.cc:
-       * lily/grob.cc:
-       * lily/lily-guile.cc:
-       * lily/line-spanner.cc:
-       * lily/lookup.cc:
-       * lily/lyric-extender.cc:
-       * lily/lyric-hyphen.cc:
-       * lily/mensural-ligature.cc:
-       * lily/midi-def.cc:
-       * lily/misc.cc:
-       * lily/note-collision.cc:
-       * lily/note-column.cc:
-       * lily/note-head.cc:
-       * lily/paper-outputter.cc:
-       * lily/percent-repeat-item.cc:
-       * lily/rest-collision.cc:
-       * lily/side-position-interface.cc:
-       * lily/simple-spacer.cc:
-       * lily/slur-configuration.cc:
-       * lily/slur-scoring.cc:
-       * lily/slur.cc:
-       * lily/spaceable-grob.cc:
-       * lily/spacing-spanner.cc:
-       * lily/spanner.cc:
-       * lily/staff-symbol-referencer.cc:
-       * lily/stem.cc:
-       * lily/stencil.cc:
-       * lily/system-start-delimiter.cc:
-       * lily/system.cc:
-       * lily/text-item.cc:
-       * lily/tie.cc:
-       * lily/tuplet-bracket.cc:
-       * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
-       <cmath> beacause isinf/isnan is undefined in <cmath>
-
-2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
-
-2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION: release 2.5.3
-       
-2004-11-29  Arno Waschk <arno@arnowaschk.de>
-
-       * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
-
-2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/music-functions.scm (cue-substitute): voice counts start at 0.
-
-       * lily/note-head.cc (internal_print): always try the "s" head if
-       u/d not found.
-
-       * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
-
-2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/parmesan-heads.mf (overdone_heads): typos.
-
-2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * lily/parser.yy (markup): in markups, { .. } without command
-       before are also flattened, ie \line must be explicitely used.
-
-       * Documentation/user/changing-defaults.itely:
-       * Documentation/user/notation.itely: 
-       * input/wilhelmus.ly: 
-       * input/regression/instrument-name-markup.ly: 
-       * input/regression/markup-score.ly: 
-       * input/regression/new-markup-scheme.ly: 
-       * input/regression/new-markup-syntax.ly: 
-       * input/test/coriolan-margin.ly: use \line in markups where
-       appropriate
-       
-2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/new-markup.scm (map-markup-command-list): helper function
-       used in parser.yy to map markup commands on a markup list.
-
-       * lily/parser.yy: get rid off < > in markups by treating { } as
-       real lists.
-
-       * lily/lexer.ll: remove < > from markup lexer mode.
-
-       * scripts/convert-ly.py (conv): add rule for converting 
-       \markup < > to \markup { }
-
-       * ly/titling-init.ly: 
-       * input/test/coriolan-margin.ly: 
-       * input/regression/new-markup-syntax.ly: 
-       * input/regression/new-markup-scheme.ly: 
-       * input/regression/multi-measure-rest-text.ly: 
-       * input/regression/markup-stack.ly: 
-       * input/regression/markup-score.ly: 
-       * input/regression/instrument-name-markup.ly: 
-       * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
-       * input/mutopia/R.Schumann/romanze-op28-2.ly: 
-       * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
-       * input/wilhelmus.ly: 
-       * Documentation/user/notation.itely: 
-       * Documentation/user/music-glossary.tely: 
-       * Documentation/user/changing-defaults.itely: change < > to { } in
-       markups
-
-2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/accidental-placement.cc (position_accidentals): shortcut if
-       no accidentals to place.
-
-2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
-
-       * scm/define-grob-properties.scm (all-user-grob-properties): fixed
-       typo s/ly:dimension ?/ly:dimension?/
-
-       * input/regression/lily-in-scheme.ly: 
-       * input/regression/music-function.ly: 
-       * ly/spanners-init.ly (assertBeamSlope): 
-       * scm/music-functions.scm (def-grace-function): add the paper
-       argument to music function definitions.
-
-2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/moment.cc (LY_DEFINE):
-       ly:moment-main-{denominator,numberator}, new function.
-
-       * lily/score-engraver.cc (typeset_all): assign to column on basis
-       of axis-group-parent-X setting.
-
-       * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
-       add_element() on basis of axis-group-parent-Y setting.
-
-       * lily/grob.cc: add axis-group-parent-{XY} properties.
-
-       * input/regression/spacing-stick-out.ly: new file.
-
-       * lily/simple-spacer.cc (add_columns): use binary search for
-       setting column rods. Changes O(n^2) to O(n log(n)) for
-       constructing spacing problem from columns.
-       (add_columns): read allow-outside-line to make sure no texts stick
-       out.
-       (solve): Simple_spacer::is_active() only determines
-       satisfies_constraints_ for non-ragged typesetting.
-
-       * lily/simultaneous-music.cc (to_relative_octave): only set
-       old_relative_used if return pitch actually changed.
-
-       * scm/define-context-properties.scm
-       (all-user-translation-properties): change to match implementation.
-
-       * python/lilylib.py: Replace re.match by re.search and adds "-c
-       showpage" to the gs command line (Johannes Schindelin)
-
-       * scm/framework-ps.scm (output-preview-framework): sanitize bbox
-       before processing. Prevents crash when inf is in the extent.
-
-       * scm/define-markup-commands.scm (note-by-number): add "s" to
-       "noteheads-" glyphname.
-       * lily/parser.yy (Generic_prefix_music): supply parser argument to
-       music function as well.
-       
-2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION: release 2.5.2
-
-       * Documentation/user/changing-defaults.itely (Creating titles):
-       add breakbefore variable.
-
-       * lily/paper-book.cc (set_system_penalty): new function. Set
-       penalty_ based on breakBefore setting
-
-       * lily/context-specced-music-iterator.cc (construct_children):
-       interpret special context id $uniqueContextId 
-
-       * lily/context.cc (create_unique_context): new method. Move
-       creation of unique (\new) contexts into interpreting phase. This
-       makes
-
-         foo= \new Staff ..
-         << \foo \foo >>
-
-       produce 2 staves.
-       
-
-       * scm/define-music-properties.scm (all-music-properties): add
-       quoted-voice-direction
-
-       * ly/music-functions-init.ly: killCues function.
-
-       * scm/music-functions.scm (cue-substitute): move creation of voice
-       contexts further to the back. 
-
-2004-11-25  Werner Lemberg  <wl@gnu.org>
-
-       * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
-       `/hyphen' in encoding vector to get correct glyph name for EC fonts.
-
-2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * buildscripts/guile-gnome.sh: Fixed typo.
-
-2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/lexer.ll: add < >  to markup lexer mode (backportme)
-
-       * scripts/abc2ly.py (dump_slyrics): add ord(). 
-
-       * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
-       to regular engraver. 
-
-2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
-
-2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/define-markup-commands.scm (fill-line): Typo.
-
-       * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
-       and newer.
-
-2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
-
-       * ly/dynamic-scripts-init.ly: Fixed typo.
-
-2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
-       note-head, to have different attachment points for up and down.
-
-       * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
-
-       * mf/feta-generic.mf (else): remove solfa.
-
-       * mf/feta-bolletjes.mf (tishape): remove unicode test.
-
-       * scm/define-context-properties.scm
-       (all-user-translation-properties): add shapeNoteStyles property.
-
-       * lily/shape-note-heads-engraver.cc (process_music): new file.
-
-       * lily/event.cc (transpose): call Event::transpose() for
-       transposing the tonic.
-
-2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm: Save some pointers about pango/fontconfig
-       Unicode/OpenType and AFM.
-
-       * lily/include/guile-compatibility.hh (scm_from_bool): Add.
-
-2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/grob.cc (Grob): idem. Plugs mem leaks. 
-
-       * lily/context.cc (Context): unprotect key from ctor.
-
-       * scm/stencil.scm (stack-lines): return empty-stencil if argument
-       is '()
-       (stack-stencils): idem.
-
-       * Documentation/user/changing-defaults.itely (Creating titles):
-       document new title layout options.
-
-       * lily/parser.yy (lilypond_header_body): copy previous
-       $globalheader if present.
-
-       * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
-       ly:module-copy
-       
-       * scm/page-layout.scm (marked-up-headfoot): remove old functions.
-
-       * scm/titling.scm: remove old titling functions
-
-       * lily/stencil.cc (translate): remove absolute dimension.
-
-       * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
-       via markup.
-
-       * scm/page-layout.scm (marked-up-headfoot): create header/footer
-       field from user-supplied markup
-
-       * scm/define-markup-commands.scm (on-the-fly): new markup
-       command. Enter SCM markup procedure directly in Scheme.
-       (fromproperty): new markup command. Read markup from props argument.
-
-       * scm/titling.scm (marked-up-title): create title via
-       user-specified markup. 
-
-       * scm/define-markup-commands.scm (column): remove empty stencils
-       from column.
-
-       * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
-       not have side-effect of creating variable stub.
-
-       * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
-
-2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/encoding.scm (coding-alist): 
-       * scm/font.scm (add-ec-fonts):
-       * ly/paper-defaults.ly: Use actual name for EC fontencoding:
-       Extended-TeX-Font-Encoding---Latin.
-
-       * lily/side-position-interface.cc (general_side_position): Add
-       actual offset to error message (avoid constant error messages).
-
-       * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
-       block.
-
-       * lily/font-select.cc (select_encoded_font)
-       (get_font_by_mag_step, get_font_by_design_size): 
-       * lily/modified-font-metric.cc (Modified_font_metric): 
-       * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
-
-       * scm/encoding.scm (coding-alist): Add fetaDynamic.
-       (read-encoding-file): Bugfix: do not require space after bracket.
-
-       * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
-       these do not exist.
-
-2004-11-20  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/notation.itely: added info about typesetting
-       boxed bar numbers.
-
-2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * flower/interval.cc (T_to_string): gcc4 fixes.
-
-       * scm/define-markup-commands.scm (fill-line): use
-       stack-stencils. This fixes problems with putting already centered
-       stencils in a line.
-
-       * VERSION: release 2.5.1
-
-       * lily/bar-line.cc (get_staff_bar_size): add line thickness.
-
-2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * input/example-[1-3].ly: simplify.
-
-       * lily/cluster-engraver.cc (try_music): react to busy-playing-event
-
-       * scm/output-ps.scm (new-text): new function. Use glyphshow to
-       show glyphs.
-
-       * scm/encoding.scm (decode-byte-string): new function.
-
-       * scripts/convert-ly.py (conv): add warning about
-       set-global-staff-size.
-
-       * Doxyfile: add. 
-
-       * scripts/convert-ly.py (conv): add raggedlastbottom rule
-       (conv): warn for TextSpanner split.
-       (conv): warn for textheight.
-
-2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * GNUmakefile.in (install-WWW): Invoke install-info, so that when
-       building the documentation, info with images are installed.
-       (final-install): Fix description.  Mention sourcing of login
-       scripts (instead of running).
-
-2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Debian lmodern support.  Note that LilyPond will issue warnings
-       
-           no such encoding: "FontSpecific"
-
-         The font selection mechanism wants to get the encoding from the
-         font itself, but the idea of lmodern is that it is usable with
-         different encodings, ie, Lily should get the encoding from the
-         font tree, rather than the font itself.  This would require some
-         more work.
-       
-       * configure.in: Test for and accept lmodern if EC fonts not found.
-
-       * scm/framework-tex.scm (font-load-command): TeX font name
-       mangling for latin1 encoded cork-lm fonts.
-       (convert-to-ps): Load lm.map if available.
-
-       * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
-       available.
-
-       * scm/encoding.scm (coding-alist): Add cork-lm encoding.
-
-       * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
-       available.
-
-       * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
-       path for absolute file name, that is silly.
-
-       * lily/score-engraver.cc (initialize): 
-
-       * Documentation/user/GNUmakefile (local-install-info): Invoke
-       install-info --remove first.
-
-       * #include cleanup (Andreas Scherer).
-
-2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * input/test/script-abbreviations.ly: fix typos.
-
-2004-11-17  Werner Lemberg  <wl@gnu.org>
-
-       * python/lilylib.py (options_help_str): Support pretty-printing of
-       newlines in fourth element of option description.
-
-       * scripts/lilypond-book.py (option_definitions): Use new lilylib
-       feature.
-       Sort options.
-
-       * Documentation/user/lilypond-book.itely: Finish update.
-
-2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/user/macros.itexi: Add comment about \command.
-
-       * Documentation/user/lilypond.tely:
-       * Documentation/user/lilypond-book.itely: Fix names of lilypond
-       and lilypond-book nodes, so that `info lilypond' visits the manual
-       at top level, and `info lilypond-book' visits the lilypond-book
-       section.
-
-       * Documentation/user/GNUmakefile (local-install-info): Fix rules
-       and packager messages.
-
-       * lily/pangofc-afm-decoder.cc: Update test.
-
-2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/lily-library.scm (char->unicode-index): New function.
-
-       * scm/output-gnome.scm: 
-       * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
-
-       * Proper naming of file name throughout; s/filename/file[-_]name/.
-
-       * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
-
-       * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
-
-2004-11-16  Werner Lemberg  <wl@gnu.org>
-
-       * scripts/lilypond-book.py: The Lord has commanded me to use only
-       tabs for indentation.  Your humble servant obeys.
-
-2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
-       including font, if LilyPond-feta font is only feta font in path.
-
-       * scm/output-gnome.scm (text): Revert to file name of font if font
-       has no name.  Fixes ec font selection.
-       (char): Bugfix: do not utf8 twice.  Fixes clefs.
-
-       * scm/framework-svg.scm:
-       * scm/output-svg.scm: New file.  TODO: figure out how to
-       do character by index in font.
-
-       * scm/output-sodipodi.scm: Remove.
-
-       * scm/output-ps.scm (stem): Remove.
-
-2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm (beam): New function.
-       (slur): Round corners.
-       (round-filled-box): Round corners.
-
-2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/output-gnome.scm (beam): add function.
-       (draw-line): new routine.
-       (dashed-line): stub; call draw-line
-       (polygon): new routine.
-
-2004-11-15  Werner Lemberg  <wl@gnu.org>
-
-       * Documentation/user/lilypond-book.itely: Revise section on
-       lilypond-book options.
-       Other minor fixes.
-
-       * scripts/lilypond-book.py: Change indentation to 4.
-       Minor formatting.
-
-2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/system.cc (apply_tweaks): new function. Run tweaks on all
-       grobs that have tweaks specced.
-       
-2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * Documentation/user/sound-output.itexi: add code snippets for MIDI.
-
-2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
-       actual char #, not 0 based index.
-
-       * lily/system-start-delimiter.cc (staff_brace): Start at 65.
-
-       * mf/feta-beugel.mf: Actually start at char #65.  Add header.
-       Warning: do make -C mf clean.
-
-       * lily/context-property.cc: Compile fix.
-
-       * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
-       Grok ec-fonts, braces and dynamics.
-
-       * scm/framework-gnome.scm (gnome-main): Register braces with pango.
-
-2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/include/tweak-registration.hh: new file.
-
-       * lily/tweak-registration.cc: new file.
-
-       * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
-       saving tweaks.
-
-       * scm/output-gnome.scm (text): comment dribble.
-
-2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
-
-       * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
-       path-def before using.  Fixes muchtomany slurs in wrong places
-       bug.
-
-2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
-
-       * lily/include/object-key-undumper.hh (Module): new file.
-
-       * lily/object-key-undumper.cc (Module): New file. Deserialize
-       keys. SCM bindings
-
-       * lily/object-key-dumper.cc (Object_key_dumper): idem.
-       Provide SCM bindings.
-
-       * lily/include/object-key-dumper.hh (class Object_key_dumper): 
-       new file. Serialize object keys.
-       
-       * lily/object-key.cc (dump): new function.
-       (as_scheme): new virtual function
-       (undump): new function
-       (undumpers): new table.
-
-       * lily/include/global-context.hh (Context): take \score key upon init.
-
-       * lily/object-key-dumper.cc (serialize_key): new file.
-
-       * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
-
-       * lily/lily-lexer.cc: remove \quote.
-
-       * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
-
-       * lily/context.cc (Context): take key argument in ctor.
-       (create_context): new function
-
-       * lily/grob.cc (Grob): take key argument in ctor.  
-
-       * lily/lilypond-key.cc (do_compare): new file.
-
-       * lily/object-key.cc (Object_key): new file.
-
-       * lily/include/object-key.hh (class Object_key): new file.
-
-       * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
-
-2004-11-13  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond-book.itely: add small warning about
-       noindent default in lilypond-book.
-
-       * Documentation/user/converters.itely: add examples for convert-ly.
-
-       * Documentation/user/examples.itely: change version string in templates
-       to 2.4.0.
-
-2004-11-12  Karl Hammar  <karl@aspodata.se>
-
-       * GNUmakefile.in (local-WWW-post): `find ...` overflows the
-       cmdline, use xargs instead (backportme)
-
-2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
-       
-       * Documentation/user/: Numerous fixes in the user manual.
-
-2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/parser.yy (re_rhythmed_music): search music expression for
-       context-id, surround by \new Voice if not found. Fixes:
-       addlyrics-second-staff.ly
-
-       * VERSION: 2.5.0 released.
-       
-2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/index.html.in: Fix url to one big page.  (backportme)
-
-       * Documentation/user/GNUmakefile: Separate rules for split and
-       unsplit html documents.  Remove perl massaging.  (backportme)
-
-2004-11-11  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/lilypond-book.itely: add short warning about
-       \lilypond{} in LaTeX docs.
-
-2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
-       found.  (backportme)
-
-       * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
-       version requirement.  (backportme)
-
-       * configure.in: Be explicit about old versions of
-       ec-fonts-mtraced.  (backportme)
-
-       * lily/context-selector.cc (set_tweaks): New function.
-       * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
-       web with -DTWEAK.
-
-       * Documentation/user/introduction.itely (Automated engraving):
-       Remove fragment option.  Fixes web.
-
-       * lily/context-property.cc (make_item_from_properties):
-       * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
-       #ifdef.
-
-       * scm/define-context-properties.scm
-       (all-internal-translation-properties): Add tweakRank and tweakCount.
-
-       * lily/grob.cc: 
-       * scm/define-grob-properties.scm (all-internal-grob-properties):
-       Add tweak-rank and tweak-count.
-
-2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
-       New function.
-       (text): Use them.
-
-       * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
-       animated/opaque grob dragging tweaks.
-
-       * buildscripts/guile-gnome.sh: Update.
-
-2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * scm/define-grobs.scm (all-grob-descriptions): Added
-       line-interface to the LigatureBracket object.
-
-2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/framework-gnome.scm (item-event): Support non-animated mouse
-       dragging tweaks.
-
-       * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
-
-       * lily/context-selector.cc (store_context): New function.
-
-       * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
-       (store_grob): New function.
-       (identify_grob): Add Moment parameter.
-
-       * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
-       exists.
-
-       * scm/framework-gnome.scm (save-tweaks): Write as alist.
-
-2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * scm/framework-gnome.scm (item-event): Print grob id.
-       (save-tweaks): New function.
-       (tweak): New funtion.
-       (item-event): Use it, bound to arrow keys.
-
-       * lily/context-property.cc (make_item_from_properties): Register grob.
-       * lily/context.cc (add_context): Register context.
-
-       * lily/include/context-selector.hh:
-       * lily/include/grob-selector.hh:
-       * lily/context-selector.cc:
-       * lily/grob-selector.cc: New file.
-
-2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/slur.cc: add 'positions to interface
-
-       * lily/main.cc: reinstate PS as standard output format. 
-
-       * scm/framework-tex.scm (output-preview-framework): print systems
-       up to first non title system.
-
-       * lily/grace-engraver.cc (start_translation_timestep): split
-       scm_cadddr
-       
-2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/quote-iterator.cc (Module): remove old quote-iterator
-
-       * scm/define-music-types.scm (music-descriptions): move
-       NewQuoteMusic over QuoteMusic
-
-       * Documentation/user/notation.itely (Formatting cue notes): use
-       \cueDuring.
-
-       * lily/new-quote-iterator.cc (quote_ok): new function.
-
-       * input/regression/quote-cue-during.ly: new file.
-
-       * input/regression/quote-grace.ly: new file.
-
-       * scm/define-context-properties.scm (Module): change definition of
-       graceSettings
-
-       * lily/context-property.cc (Module): rename from
-       translator-property.cc
-
-       * lily/context.cc (context_name_symbol): new function
-
-       * lily/grace-engraver.cc: new file. Set properties for grobs based
-       on the grace-ness of now_moment().
-
-       * scm/music-functions.scm (add-grace-property): use list
-       iso. vector for graceSettings
-       remove set-{start,stop}-grace-properties. 
-
-       * lily/new-quote-iterator.cc (construct_children): set
-       quote_outlet_ if no quoted-context-{id,type} specified.
-
-       * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
-
-       * lily/parser.yy (command_element): remove \quote.
-
-       * ly/music-functions-init.ly (location): add quoteDuring music
-       function. 
-
-       * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
-       optional semicolon. (backportme)
-
-2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
-       need to link to GUILE et al.
-
-2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/define-music-properties.scm (all-music-properties): add
-       quoted-context-type, quoted-context-id.
-
-       * scm/lily.scm (type-check-list): new function.
-       
-       * scm/lily-library.scm: new file. Generic library routines.
-
-       * lily/parser.yy (Generic_prefix_music): move typechecking out of
-       parser.
-
-       * ly/music-functions-init.ly: add quoteDuring function.
-
-       * lily/include/music-iterator.hh (class Music_iterator): rename
-       set_translator -> set_context
-
-       * lily/parser.yy (Generic_prefix_music_scm): add
-       MUSIC_FUNCTION_SCM_SCM_MUSIC
-
-       * scm/lily.scm (sanitize-command-option): new function. (backportme)
-
-       * scm/framework-tex.scm (header): sanitize TeX paper size.
-       (backportme)
-
-2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
-
-       * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
-
-       * scm/framework-tex.scm (font-load-command): Use T1 if no
-       font-encoding set.  (backportme)
-
-       * scm/lily.scm (postscript->pdf): Remove .pdf file if it
-       exists before converting.  (backportme)
-
-       * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
-       exists before converting.  (backportme)
-       (convert-to-ps): Remove .ps file if it exists before
-       converting.  (backportme)
-
-       * lily/lexer.ll: Remove extra progress newline, use present tense.
-
-       * scm/paper.scm (paper-alist): public.
-       * scm/framework-tex.scm (convert-to-ps):
-       * scm/lily.scm (postscript->pdf): Do not leak papersizename into
-       command line.
-
-2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
-
-       * lily/recording-group-engraver.cc (derived_mark): mark
-       now_events_. (backportme)
-
-2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
-
-       * scm/framework-tex.scm (convert-to-dvi): use ly:system for
-       invoking latex. (backportme.)
-
-       * lily/stem.cc (off_callback): center stems for all rest stems.
-
-2004-11-05  Werner Lemberg  <wl@gnu.org>
-
-       * Documentation/user/lilypond.tely: Add more guidelines for writing
-       lilypond texinfo documents.
-
-2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
-
-       * Documentation/index.html.in: remove <hr>.
-
-       * THANKS: change 2.3 to 2.4.
-
-2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
-
-       * scm/output-gnome.scm: More fontconfig comment.
-
-2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
-
-       * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
-       <package> directory in $(builddir)/share according with
-       PACKAGE_NAME defined in the VERSION file.
-
-2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * lily/beam.cc (rest_collision_callback): use local beam
-       multiplicity.
-
-       * input/regression/stem-stemlet.ly: new file.
-
-       * lily/stem.cc (add_head): store rests as well.
-
-       * scm/define-grob-properties.scm (all-user-grob-properties): add
-       stemlet-length
-
-       * lily/stem.cc: store rests as well.
-       
-       * input/regression/new-slur.ly: mention forcing.
-
-2004-11-04  Werner Lemberg  <wl@gnu.org>
-
-       * Documentation/user/*: A new round of layout fixes and document
-       structure cleanup.
-
-2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
-
-       * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
-
-2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
-
-2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
-
-       * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
-
-       * lily/main.cc (main): Invoke identify.
-
-       * scm/lily.scm (postscript->pdf): Remove progress newline.
-       Write progress to stderr.
-
-       * lily/paper-book.cc (output): Remove progress newline.
-
-       * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
-       gettext on user messages, and remove whitespace.
-
-       * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
-
-       * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
-       argv[0] (Thomas Scharkowski).
-
-       * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
-       call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
-       for ec-fonts-mtraced.
-
-       * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
-       --srcdir build (Bertalan).
-
-       * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
-       headers and library too (Laura Conrad).
-
-       * Documentation/topdocs/INSTALL.texi (Top): Mention development
-       package for guile too (Laura Conrad).
-
-       * lily/main.cc (usage): Typo.
-
-2004-11-02  Werner Lemberg  <wl@gnu.org>
-
-       * Documentation/user/notation.ly: More fixes to improve appearance.
-
-       * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
-       better output for multicolumn tables.
-
-2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
-
-       * lily/main.cc (dir_info): Fixed typo in the printouts.
-
-2004-11-01  Werner Lemberg  <wl@gnu.org>
-
-       * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
-       of output.
-       Set `per_line' to 2; replace hard-coded value with it.
-
-       * Documentation/user/*: Many fixes to improve appearance of
-       printed manual.
-
-2004-11-01  Werner Lemberg  <wl@gnu.org>
-
-       * Documentation/user/changing-defaults.itely,
-       Documentation/user/notation.ly,
-       Documentation/user/programming-interface.itely: Use @/.
-       Fix formatting of some lilypond snippets and tables.
-
-       * scripts/lilypond-book.py (compose_ly): Provide useful default
-       for LINEWIDTH in `override'.
-
-2004-10-31  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/invoking.itely: change "3.0" -> "2.4"
-
-2004-10-31  Werner Lemberg  <wl@gnu.org>
-
-       Resetting @exampleindent to `5' gives ugly results with texinfo's
-       DVI output.  Use `@format @exampleindent 0 ... @end format' instead
-       (if not quoting) to change @exampleindent only locally.
-
-       * scripts/lilypond-book.py (NOQUOTE): New variable.
-       (output) [LATEX]: Remove AFTER and BEFORE.
-       [TEXINFO]: Remove AFTER and BEFORE.
-       Fix QUOTE and VERBATIM pattern.
-       Add NOQUOTE pattern.
-       (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
-       and BEFORE.
-       [output_texinfo]: Use NOQUOTE.
-
-2004-10-31  Graham Percival  <gperlist@shaw.ca>
-
-       * Documentation/user/changing-defaults.itely: clarify paper
-       size commands with correct info.
-
-       * Documentation/user/lilypond-book.itely: add more docs for
-       filename extensions.
-
-2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
-
-       * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
-       (PATCH_LEVEL): start 2.5.0.
-
-#Local variables:
-#coding: utf-8
-#End:
-
+       @c
index d1ff8756518946d94481902703dd23292b2d51b3..47938ee18292cf02ed564b6efa1ebfafb5f86f52 100644 (file)
@@ -8,7 +8,7 @@ PDF_FILES=$(outdir)/NEWS.pdf
 include $(depth)/make/stepmake.make
 
 ifneq ($(out),www)
-LILYPOND='true'
+LILYPOND_BINARY='true'
 endif
 
 $(outdir)/NEWS.nexi: NEWS.tely
index 186bf08e30a84fff41d4f906895c75b33ecc1c23..2e3200b5cfabd7c7db158a1c7c148397c4ad7ad3 100644 (file)
@@ -286,21 +286,6 @@ $ make
 @end quotation
 
 
-@unnumberedsubsec Flex-2.5.4a and gcc-3.x
-
-Flex 2.5.4a does not produce g++-3.1.1 compliant C++ code.  To compile
-LilyPond with gcc-3.1.1 or higher you may do
-
-@quotation
-@example
-CONF=gcc-3.1 ./lexer-gcc-3.1.sh
-CPPFLAGS=-I$(pwd)/lily/out-gcc-3.1 CC=gcc-3.1 CXX=g++-3.1 \
-./configure --enable-config=gcc-3.1
-CONF=gcc-3.1 ./lexer-gcc-3.1.sh
-make conf=gcc-3.1
-@end example
-@end quotation
-
 @unnumberedsubsec MacOS X
 
 For Fink, use the following command to compile.
index d0c85fcb209839ce73091072193ea6a71297dd27..c8ee8888d594526ce74a543ee0c07ec5cfb3ef6b 100644 (file)
@@ -66,7 +66,26 @@ which scares away people.
 
 @end ignore
 
+@item Slurs now avoid clefs and key changes.
+@lilypond[fragment,ragged-right]
+\new Staff { \clef bass c^( \clef "G" g') } 
+@end lilypond
+
+@item The @code{FretBoards} context will generate guitar frettings
+automatically,
+
+@lilypond[fragment,relative=0,verbatim,ragged-right]
+\new FretBoards { <d\5 fis a d fis> }
+@end lilypond
+
+This feature was sponsored by Rick Hansen. 
+
+@item Horizontal and vertical spacing are now done at the same time
+so that pages are filled more evenly.
 
+@item The page breaking algorithm is capable of detecting page turns
+and formatting the music accordingly.
 
 @c Insert any new material above this line.  -gp
 
index c5a868393de9dd067cf30908638cd64fe678b5a0..1604f37544cd6400792337764a97bdb0c2112ea4 100644 (file)
@@ -975,12 +975,13 @@ used to position the number correctly.
 In an orchestral score, instrument names are printed at the left side
 of the staves.
 
-This can be achieved by setting @internalsref{Staff}.@code{instrument}
-and @internalsref{Staff}.@code{instr}, or
-@internalsref{PianoStaff}.@code{instrument} and
-@internalsref{PianoStaff}.@code{instr}.  This will print text before
-the start of the staff.  For the first staff, @code{instrument} is
-used, for the following ones, @code{instr} is used.
+This can be achieved by setting @internalsref{Staff}.@code{instrumentName}
+and @internalsref{Staff}.@code{shortInstrumentName}, or
+@internalsref{PianoStaff}.@code{instrumentName} and
+@internalsref{PianoStaff}.@code{shortInstrumentName}.  This will
+print text before
+the start of the staff.  For the first staff, @code{instrumentName} is
+used, for the following ones, @code{shortInstrumentName} is used.
 
 @lilypond[quote,verbatim,ragged-right,relative=1,fragment]
 \set Staff.instrumentName = "Ploink "
@@ -1056,15 +1057,6 @@ be found in @ref{Modifying context plug-ins}.
 
 Program reference: @internalsref{InstrumentName}.
 
-@refbugs
-
-When you put a name on a grand staff or piano staff, the width of the
-brace is not taken into account. The following property setting can be
-used to move the instrument names to the left, in such situations.
-
-@example
-\override Score.InstrumentName #'padding = #2.0
-@end example
 
 
 @node Instrument transpositions
index 0c34beb174840e0f2398ac8f1eba6ea03ccae6fe..f2a0493e0f4e9f4d64eb389fa3afc127950dfe6b 100644 (file)
@@ -853,6 +853,10 @@ ties.  One of its uses is to debug complex scores: if the measures are
 not entirely filled, then the ties exactly show how much each measure
 is off.
 
+If you want to allow line breaking on the bar lines where
+@internalsref{Completion_heads_engraver} splits notes, you must
+also remove @internalsref{Forbid_line_breaks_engraver}.
+
 
 @refbugs
 
@@ -2603,12 +2607,14 @@ c\< c\! d\> e\!
 @end lilypond
 
 @noindent
-A hairpin starts at the left edge of the beginning note and ends on the
-right edge of the ending note.  This may be modified by setting
-the @code{hairpinToBarline} property,
+A hairpin normally starts at the left edge of the beginning note
+and ends on the right edge of the ending note.  If the ending
+note falls on the downbeat, the hairpin ends on the immediately
+preceding barline. This may be modified by setting the
+@code{hairpinToBarline} property,
 
 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
-\set hairpinToBarline = ##t
+\set hairpinToBarline = ##f
 c4\< c2. c4\!
 @end lilypond
 
index 96d6a5872644d50aa8755786a43db9068dfad2c8..bd2596410da33547f5b726c5a883c625376d0a66 100644 (file)
@@ -717,13 +717,6 @@ composer flush right on a single line.
 @end verbatim
 
 
-@refbugs
-
-The @code{breakbefore=##t} header requires that there is a @code{piece}
-header as well.  It may be used as a normal header, or left  blank
-(@code{=""}) as in the example above, but it must be present.
-
-
 
 @node MIDI output
 @section MIDI output
index e0ace0b371fd98758f42b36b67538c2404dbef61..4ca0142e04eb581bf3b42256a8b13a72f9e5dc81 100644 (file)
@@ -1468,6 +1468,72 @@ the line, just like instrument names.  They are created by setting
 @end lilypond
 
 
+When a piece of music has many verses, they are often printed in
+multiple columns across the page. An outdented verse number often
+introduces each verse. The following example shows how to produce such
+output in Lilypond.
+
+@lilypond[ragged-right,quote,verbatim]
+melody = \relative c' {
+  c c c c | d d d d
+}
+text = \lyricmode {
+  \set stanza = "1." This is verse one.
+  It has two lines.
+}
+
+\score{ <<
+    \new Voice = "one" { \melody }
+    \new Lyrics \lyricsto "one" \text
+   >>
+  \layout { }
+}
+
+\markup {
+  \fill-line {
+    \hspace #0.1 % moves the column off the left margin; can be removed if
+        % space on the page is tight
+     \column {
+      \line { \bold "2."
+        \column {
+          "This is verse two."
+          "It has two lines."
+        }
+      }
+      \hspace #0.1 % adds vertical spacing between verses
+      \line { \bold "3."
+        \column {
+          "This is verse three."
+          "It has two lines."
+        }
+      }
+    }
+    \hspace #0.1  % adds horizontal spacing between columns; if they are
+        % still too close, add more " " pairs until the result 
+        % looks good
+     \column {
+      \line { \bold "4."
+        \column {
+          "This is verse four."
+          "It has two lines."
+        }
+      }
+      \hspace #0.1 % adds vertical spacing between verses
+      \line { \bold "5."
+        \column {
+          "This is verse five."
+          "It has two lines."
+        }
+      }
+    }
+  \hspace #0.1 % gives some extra space on the right margin; can
+      % be removed if page space is tight
+  }
+}
+@end lilypond
+
+
 @seealso
 
 Program reference: @internalsref{LyricText}, @internalsref{StanzaNumber},
index d81d3ee9dd10f3b8ce3927e41c6120ec23cfcbbc..68177e1e1a33b867a5250267396a270c461e9451 100644 (file)
@@ -28,13 +28,14 @@ program extracts snippets of music from your document, runs
 substituted for the music.  The line width and font size definitions for
 the music are adjusted to match the layout of your document.
 
-This procedure may be applied to La@TeX{}, HTML or Texinfo documents.
+This procedure may be applied to La@TeX{}, HTML, Texinfo or DocBook documents.
 
 @menu
 * An example of a musicological document::  
 * Integrating LaTeX and music::  
 * Integrating Texinfo and music::  
 * Integrating HTML and music::  
+* Integrating DocBook and music::
 * Music fragment options::      
 * Invoking lilypond-book::      
 * Filename extensions::         
@@ -50,11 +51,12 @@ This procedure may be applied to La@TeX{}, HTML or Texinfo documents.
 @cindex La@TeX{}, music in
 @cindex HTML, music in
 @cindex Texinfo, music in
+@cindex DocBook, music in
 Some texts contain music examples.  These texts are musicological
 treatises, songbooks, or manuals like this.  Such texts can be made by
 hand, simply by importing a PostScript figure into the word processor.
 However, there is an automated procedure to reduce the amount of work
-involved in HTML, La@TeX{}, and Texinfo documents.
+involved in HTML, La@TeX{}, Texinfo and DocBook documents.
 
 A script called @code{lilypond-book} will extract the music fragments,
 format them, and put back the resulting notation.  Here we show a small
@@ -155,6 +157,7 @@ Larger examples can be put into a separate file, and introduced with
 @cindex texinfo
 @funindex texi
 @cindex html
+@cindex docbook
 @cindex documents, adding music to
 
 
@@ -470,6 +473,61 @@ To include separate files, say
 @cindex preview image
 @cindex thumbnail
 
+@node Integrating DocBook and music
+@section Integrating DocBook and music
+
+For inserting LilyPond snippets it is good to keep the conformity of
+our DocBook document, thus allowing us to use DocBook editors,
+validation etc. So we don't use custom tags, only specify a convention
+based on the standard DocBook elements.
+
+@unnumberedsubsec Common conventions
+
+For inserting all type of snippets we use the @code{mediaobject} and @code{inlinemediaobject} element, so our snippets can be
+formatted inline or not inline.
+The snippet formatting options are always provided in the @code{role} property of the innermost element (see in next sections). Tags are
+chosen to allow DocBook editors format the content gracefully.
+The DocBook files to be processed with @command{lilypond-book} should have the extension @file{.lyxml}.
+
+@unnumberedsubsec Including a LilyPond file
+
+This is the most simple case. We must use the @file{.ly} extension for the included file, and insert it as a standard @code{imageobject},
+with the following structure:
+
+@example
+<mediaobject>
+  <imageobject>
+    <imagedata fileref="music1.ly" role="printfilename" />
+  </imageobject>
+</mediaobject>
+@end example
+
+Note that you can use mediaobject or inlinemediaobject as the outermost element as you wish.
+
+@unnumberedsubsec Including LilyPond code
+
+Including LilyPond code is possible by using a @code{programlisting}, where the language is set to @code{lilypond} with the following structure:
+
+@example
+<inlinemediaobject>
+  <textobject>
+    <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
+\context Staff \with @{
+  \remove Time_signature_engraver
+  \remove Clef_engraver@} 
+  @{ c4( fis) @}
+    </programlisting>
+  </textobject>
+</inlinemediaobject>
+@end example
+
+As you can see, the outermost element is a @code{mediaobject} or @code{inlinemediaobject}, and there is a @code{textobject} containing the @code{programlisting} inside.
+
+@unnumberedsubsec Processing the DocBook document
+
+Running @command{lilypond-book} on our @file{.lyxml} file will create a valid DocBook document to be further processed with @file{.xml} extension.
+If you use @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, it will create a PDF file from this document automatically. 
+For HTML (HTML Help, JavaHelp etc.) generation you can use the official DocBook XSL stylesheets, however, it is possible that you have to make some customization for it.
 
 @node Music fragment options
 @section Music fragment options
@@ -623,8 +681,8 @@ cannot find on its own.
 @section Invoking @command{lilypond-book}
 
 @command{lilypond-book} produces a file with one of the following
-extensions: @file{.tex}, @file{.texi}, or @file{.html}, depending on the
-output format.  Both @file{.tex} and @file{.texi} files need further
+extensions: @file{.tex}, @file{.texi}, @file{.html}  or @file{.xml}, depending on the
+output format.  All of @file{.tex}, @file{.texi} and @file{.xml} files need further
 processing.
 
 @command{lilypond-book} can also create a PSFONTS file, which is required
@@ -670,8 +728,7 @@ See the documentation of Texinfo for further details.
 @table @code
 @item -f @var{format}
 @itemx --format=@var{format}
-Specify the document type to process: @code{html}, @code{latex}, or
-@code{texi} (the default).  If this option is missing,
+Specify the document type to process: @code{html}, @code{latex}, @code{texi} (the default) or @code{docbook}.  If this option is missing,
 @command{lilypond-book} tries to detect the format automatically.
 
 The @code{texi} document type produces a Texinfo file with music
@@ -757,6 +814,7 @@ output format based on the input filename's extension.
 @item @file{.itely} @tab Texinfo
 @item @file{.latex} @tab La@TeX{}
 @item @file{.lytex} @tab La@TeX{}
+@item @file{.lyxml} @tab DocBook
 @item @file{.tely} @tab Texinfo
 @item @file{.tex} @tab La@TeX{}
 @item @file{.texi} @tab Texinfo
index 74a09ecec677e39162a4a8b1608eeaca93e87e13..aa4a6039b8f9f5fffc7f6f3dd914586e9377e050 100644 (file)
@@ -1135,20 +1135,6 @@ only allow turns in repeats whose duration is longer than this value.
 
 @refbugs
 
-The @code{Page_turn_engraver} does not respect time-scaled music. For example, the
-following example does not behave as expected:
-
-@example
-\new Staff \with @{ \consists "Page_turn_engraver" @}
-@{
-  a4 b c d |
-  R1 | % a page turn will be allowed here
-  a4 b \times 2/3 @{c d e@} |
-  R1 | % a page turn will NOT be allowed here
-  a1
-@}
-@end example
-
 There should only be one @code{Page_turn_engraver} in a score. If there is more
 than one, they will interfere with each other.
 
index 2bb6dc7913230c39d548e0429f3768c7e6122e0c..ffab58bd76996ba55cfdb697aac0430e9086b6c3 100644 (file)
@@ -50,14 +50,18 @@ install-WWW:
        $(MAKE) -C Documentation/user local-install-WWW
        $(MAKE) -C Documentation/user install-info
 
+install-help2man:
+       $(MAKE) -C scripts man install-help2man
+       $(MAKE) -C lily man install-help2man
+
 web-install:
        $(MAKE) out=www install-WWW
 
 uninstall-WWW:
-       #TODO
+       echo TODO
 
 web-uninstall:
-       $(MAKE) out=www uninstall-WWW=
+       $(MAKE) out=www uninstall-WWW
 
 local-install:
        $(INSTALL) -d $(DESTDIR)$(local_lilypond_datadir)
@@ -183,7 +187,10 @@ $(tree-share-prefix)/lilypond-force link-tree: GNUmakefile
        touch $(tree-share-prefix)/lilypond-force
 
 $(tree-share-prefix)/mf-link-tree link-mf-tree: $(tree-share-prefix)/lilypond-force
-       -rm -f $(tree-share-prefix)/fonts/{otf,svg,tfm,type1}/* &&  \
+       -rm -f $(tree-share-prefix)/fonts/otf/* &&  \
+       rm -f $(tree-share-prefix)/fonts/svg/* &&  \
+       rm -f $(tree-share-prefix)/fonts/tfm/* &&  \
+       rm -f $(tree-share-prefix)/fonts/type1/* &&  \
                cd $(tree-share-prefix)/fonts/otf && \
                ln -s ../../../../../../mf/$(outconfbase)/*.otf .
        -cd $(tree-share-prefix)/fonts/svg && \
diff --git a/INSTALL.txt b/INSTALL.txt
deleted file mode 100644 (file)
index 2a431f3..0000000
+++ /dev/null
@@ -1,415 +0,0 @@
-
-
-INSTALL - compiling and installing GNU LilyPond
-***********************************************
-
-Abstract
-========
-
-   This document explains what you need to install LilyPond, and what
-you should do.  If you are going to compile and install LilyPond often,
-e.g. when doing development, you might want to check out the
-`buildscripts/set-lily.sh' script.  It sets some environment variables
-and symlinks, which comes in handly when you have to compile LilyPond
-more often.
-
-Obtaining
-=========
-
-   You can get the latest version of LilyPond at
-ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/
-(ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/).
-
-   _If you upgrade by patching do remember to rerun autoconf after
-applying the patch_.
-
-   If you do not want to download the entire archive for each version,
-the safest method for upgrading is to use `xdelta', see
-`ftp://ftp.xcf.berkeley.edu/pub/xdelta/'.
-
-   The following command produces `lilypond-1.1.55.tar.gz' from
-`lilypond-1.1.54' identical (up to compression dates) to the .55 on the
-FTP site.
-       xdelta patch lilypond-1.1.54-1.1.55.xd lilypond-1.1.54.tar.gz
-
-Prerequisites
-=============
-
-   For compilation you need:
-
-   * A GNU system: GNU LilyPond is known to run on these GNU systems:
-     Linux     (PPC, intel), FreeBSD, AIX, NeXTStep, IRIX, Digital Unix
-     and Solaris.
-
-   * Lots of disk space: LilyPond takes between 30 and 100 mb to
-     compile if you use debugging information.  If you are short on
-     disk-space run configure with `--disable-debugging'.
-
-   * Although we recommend to use Unix, LilyPond is known to run on
-     Windows NT/95/98 as well.  See Section Windows NT/95,es.
-
-   * EGCS 1.1 or newer. Check out `ftp://ftp.gnu.org/pub/gcc/'.
-
-   * Python 1.5, Check out `ftp://ftp.python.org' or
-     `ftp://ftp.cwi.nl/pub/python'.
-
-   * GUILE 1.3.4,  check out
-     http://www.gnu.org/software/guile/guile.html
-     (http://www.gnu.org/software/guile/guile.html).
-
-   * GNU make.  Check out ftp://ftp.gnu.org/make/
-     (ftp://ftp.gnu.org/make/).
-
-   * Flex (version 2.5.4 or newer).  Check out ftp://ftp.gnu.org/flex/
-     (ftp://ftp.gnu.org/flex/).
-
-   * Bison (version 1.25 or newer).  Check out ftp://ftp.gnu.org/bison/
-     (ftp://ftp.gnu.org/bison/).
-
-   * Texinfo. Check out ftp://ftp.gnu.org/pub/texinfo/
-     (ftp://ftp.gnu.org/pub/texinfo/).  Most documentation is in
-     texinfo.
-
-   * The geometry package for LaTeX is needed to use ly2dvi.  Available
-     at
-     ftp://ftp.ctan.org/tex-archive/macros/latex/contrib/supported/geometry
-     (ftp://ftp.ctan.org/tex-archive/macros/latex/contrib/supported/geometry)
-     or at mirror site ftp://ftp.dante.de (ftp://ftp.dante.de)
-
-   * MetaPost, if you want to use direct PostScript output. Please note
-     that  tetex-0.4pl8 (included with Redhat 5.x) does not include
-     `mfplain.mp', which is needed  for producing the scaleable font
-     files.
-
-
-Running
-=======
-
-   GNU LilyPond does use a lot of resources. For operation you need the
-following software
-
-   * TeX
-
-   * A PostScript printer and/or viewer (such as Ghostscript) is
-     strongly     recommended.  Xdvi will show all embedded PostScript
-     too if you have     Ghostscript installed.
-
-   * GUILE 1.3.4, check out http://www.gnu.org/software/guile/
-     (http://www.gnu.org/programs/guile.html)
-
-   For running LilyPond successfully you have to help TeX and MetaFont
-find various files.  The recommended way of doing so is adjusting the
-environment variables in the start-up scripts of your shell.  An
-example is given here for the Bourne shell:
-     export MFINPUTS="/usr/local/share/lilypond/mf:"
-     export TEXINPUTS="/usr/local/share/lilypond/tex:/usr/local/share/lilypond/ps:"
-
-   The empty path component represents TeX and MetaFont's default
-search paths.  Scripts with the proper paths for the bourne and C-shell
-respectively are generated in `buildscripts/out/lilypond-profile' and
-`buildscripts/out/lilypond-login' during compilation.
-
-   LilyPond is a hiddeously big, slow and bloated program.  A fast CPU
-and plenty of RAM is recommended for comfortable use.
-
-Website
-=======
-
-   The website is the most convenient form to use for reading the
-documentation on-line documentation. It is made by entering
-
-       make website
-   This does require a fully functioning
-
-   If you want to auto-generate Lily's website, you'll need some
-additional conversion tools.
-
-   * xpmtoppm (from the Portable Bitmap Utilities) (For RedHat Linux
-      users: it is included within the package libgr-progs).
-     the original is at
-     ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz
-     (ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz)
-
-   * pnmtopng, which is also in libgr-progs for RedHat. The original is
-     at
-     ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz
-     (ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz).i
-
-     The version of `pnmtopng' that is distributed with RedHat 5.1 and
-     5.2 contains a bug: pnmtopng is dynamically linked to the wrong
-     version of libpng, which results in cropped images.  Recompile it
-     from source, and make sure that the pnmtopng binary is linked
-     statically to the libpng that is included in libgr.  RedHat 6.0
-     does not have this problem.
-
-           tar xzf libgr-2.0.13.tar.gz
-                make
-                cd png
-                rm libpng.so*
-                make pnmtopng
-
-     You can then install the new pnmtopng into `/usr/local/bin/'
-
-   * Bib2html http://pertsserver.cs.uiuc.edu/~hull/bib2html.
-     (http://pertsserver.cs.uiuc.edu/~hull/bib2html.)      Which, in
-     turn depends on man2html for proper installation.  man2html can be
-     had from
-     http://askdonald.ask.uni-karlsruhe.de/hppd/hpux/Networking/WWW/Man2html-1.05
-     (http://askdonald.ask.uni-karlsruhe.de/hppd/hpux/Networking/WWW/Man2html-1.05).
-
-     The website will build without this utility, but you will not see
-     our hypertextified bibliography.
-
-   * Doc++ (optional) to read the source code.
-
-
-Configuring and compiling
-=========================
-
-   to install GNU LilyPond, simply type:
-
-       gunzip -c lilypond-x.y.z | tar xf -
-       cd lilypond-x.y.z
-       ./configure             # fill in your standard prefix with --prefix
-       make
-       make install
-
-   This will install a number of files, something close to:
-
-       /usr/local/man/man1/mi2mu.1
-       /usr/local/man/man1/convert-mudela.1
-       /usr/local/man/man1/mudela-book.1
-       /usr/local/man/man1/lilypond.1
-       /usr/local/bin/lilypond
-       /usr/local/bin/mi2mu
-       /usr/local/bin/convert-mudela
-       /usr/local/bin/mudela-book
-       /usr/local/bin/abc2ly
-       /usr/local/share/lilypond/*
-       /usr/local/share/locale/{it,nl}/LC_MESSAGES/lilypond.mo
-
-   The above assumes that you are root and have the GNU development
-tools, and your make is GNU make.  If this is not the case, you can
-adjust your environment variables to your taste:
-
-
-       export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
-       ./configure
-
-   `CPPFLAGS' are the preprocessor flags.
-
-   The configure script is Cygnus configure, and it will accept
-`--help'. If you are not root, you will probably have to make it with a
-different `--prefix' option.  Our favourite location is
-
-
-       ./configure --prefix=$HOME/usr
-
-   In this case, you will have to set up MFINPUTS, and TEXINPUTS
-accordingly.
-
-   Since GNU LilyPond currently is beta, you are advised to also use
-
-
-       --enable-debugging
-       --enable-checking
-
-   Options to configure include:
-
-``--enable-printing''
-     Enable debugging print routines (lilypond `-D' option)
-
-``--enable-optimise''
-     Set maximum optimisation: compile with `-O2'.  This can be
-     unreliable on some compiler/platform combinations (eg, DEC Alpha
-     and PPC)
-
-``--enable-profiling''
-     Compile with support for profiling.
-
-``--enable-config''
-     Output to a different configuration file.  Needed for
-     multi-platform     builds
-
-   All options are documented in the `configure' help The option
-`--enable-optimise' is recommended for Real Life usage.
-
-   If you do
-
-
-       make all
-
-   everything will be compiled, but nothing will be installed.  The
-resulting binaries can be found in the subdirectories `out/' (which
-contain all files generated during compilation).
-
-Configuring for multiple platforms
-==================================
-
-   If you want to compile LilyPond with different configuration
-settings, then, you can use the `--enable-config' option.  Example:
-suppose I want to build with and   without profiling.  Then I'd use the
-following for the normal build,
-
-
-           ./configure --prefix=~ --disable-optimise --enable-checking
-           make
-           make install
-
-   and for the profiling version, I specify a different configuration.
-
-
-           ./configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
-           make config=optprof
-           make config=optprof install
-
-Installing
-==========
-
-   if you have done a successful `make', then a simple
-
-
-       make install
-
-   should do the trick.
-
-   If you are doing an upgrade, please remember to remove obsolete
-`.pk' and `.tfm' files of the fonts.  A script has been provided to do
-the work for you, see `bin/clean-fonts.sh'.
-
-Redhat linux
-============
-
-   RedHat Linux users can compile an RPM. A spec file is in
-`make/out/lilypond.spec', it is distributed along with the sources.
-
-   You can make the rpm by issuing
-
-       rpm -tb lilypond-x.y.z.tar.gz
-       rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z
-
-   Precompiled i386 RedHat RPMS are available from
-ftp://freshmeat.net/pub/rpms/lilypond/
-(ftp://freshmeat.net/pub/rpms/lilypond/) and
-http://linux.umbc.edu/software/lilypond/rpms/
-(http://linux.umbc.edu/software/lilypond/rpms/).
-
-   For compilation on a RedHat system you need these packages, in
-addition to the those needed for running:
-   * glibc-devel
-
-   * libstdc++-devel
-
-   * guile-devel
-
-   * flex
-
-   * bison
-
-   * texinfo
-
-Debian GNU/linux
-================
-
-   A Debian package is also available; contact Anthony Fok
-<foka@debian.org>.  The build scripts are in the subdirectory `debian/'.
-
-Windows NT/95
-=============
-
-   Separate instructions on building for W32 are available; See the
-files in `Documentation/ntweb/', included with the sources.
-
-Problems
-========
-
-   For help and questions use <help-gnu-music@gnu.org> and
-<gnu-music-discuss@gnu.org>.  Please consult the faq before mailing
-your problems.
-
-   If you find bugs, please send bug reports to <bug-gnu-music@gnu.org>.
-
-   Known bugs that are LilyPond's fault are listed in `TODO', or
-demonstrated in `input/bugs/'.
-
-   Known bugs that are not LilyPond's fault are documented here.
-
-LinuxPPC Bugs:
-**************
-
-   * egcs-1.1.2-12c (stock LinuxPPC R5) has a serious bug, upgrade to
-     fixed in egcs-1.1.2-12f or gcc-2.95-0a,
-     `ftp://dev.linuxppc.org/users/fsirl/R5/RPMS/ppc/'
-
-   * egcs-1.0.2 (LinuxPPC R4): all compiling with `-O2' is suspect, in
-     particular guile-1.3, and Lily herself will break.
-
-Linux-i386
-**********
-
-   * SuSE6.2 and similar platforms (glibc 2.1, libstdc++ 2.9.0)
-
-     Lily will crash during parsing (which suggests a C++ library
-     incompatibility).  Precise cause, precise platform description or
-     solution are not known.
-
-     Note that this only happens on some computers with the said
-     platform.
-
-   * libg++ 2.7
-
-     LilyPond occasionally crashes while parsing the initialisation
-     files.  This is a very obscure bug, and usually entering the
-     commandline differently "fixes" it.
-
-               lilypond input.ly
-
-     and
-               lilypond -I. ./input.ly
-     makes a difference
-
-     Typical stacktrace:
-               SIGSEGV
-               __libc_malloc (bytes=16384)
-               ?? ()
-               yyFlexLexer::yy_create_buffer ()
-               Includable_lexer::new_input (this=0x8209a00, s={strh_ = {
-
-     This behaviour has been observed with machines that have old libg++
-     versions (LinuxPPC feb '98, RedHat 4.x).
-
-Solaris:
-********
-
-   * Sparc64/Solaris 2.6, GNU make-3.77
-
-     GNU make-3.77 is buggy on this platform, upgrade to 3.78.1 or
-     newer.
-
-   * Sparc64/Solaris 2.6, ld
-
-     Not yet resolved.
-
-AIX
-***
-
-   * AIX 4.3 ld
-
-     The following is from the gcc install/SPECIFIC file.
-             Some versions of the AIX binder (linker) can fail with a
-          relocation    overflow severe error when the -bbigtoc option
-          is used to link    GCC-produced object files into an
-          executable that overflows the TOC. A    fix for APAR IX75823
-          (OVERFLOW DURING LINK WHEN USING GCC AND    -BBIGTOC) is
-          available from IBM Customer Support and from its
-          27service.boulder.ibm.com website as PTF U455193.
-
-          Binutils does not support AIX 4.3 (at least through release
-          2.9). GNU    as and GNU ld will not work properly and one
-          should not configure GCC    to use those GNU utilities. Use
-          the native AIX tools which do    interoperate with GCC.
-
-     add -Wl,-bbigtoc to USER_LDFLAGS, ie:
-              LDFLAGS='-Wl,-bbigtoc' ./configure
-
-
diff --git a/README.txt b/README.txt
deleted file mode 100644 (file)
index c22267c..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-
-
-This is the toplevel README to LilyPond
-***************************************
-
-   LilyPond is a music typesetter.  It produces beautiful sheet music
-using a high level description file as input.  LilyPond is part of the
-GNU Project.
-
-Versioning
-==========
-
-   LilyPond uses a versioning scheme similar to the Linux kernel.  In a
-version "x.y.z", an even second number 'y' denotes a stable version.
-For development versions 'y' is odd.  For using straightforward score
-production, please use the latest stable version.  Development versions
-may not produce good or nice scores.
-
-Requirements
-============
-
-   For the compilation and running of LilyPond you need some additional
-packages.  Please refer to the installation instructions.
-
-   NOTE: If you downloaded a binary (.rpm or a W95/NT .zip file), you
-don't have to compile LilyPond.
-
-Installation
-============
-
-   For your convenience, a formatted copy of the INSTALL instructions
-are in the toplevel directory, as INSTALL.txt
-
-Documentation
-=============
-
-   The real documentation is the directory Documentation/
-
-   If you want to read the documentation online, these are options:
-   * use `.html'. Refer to INSTALL.txt for info on how to make the
-     .html documentation.
-
-   * use `.html'. Point your browser to
-     `http://www.cs.uu.nl/~hanwen/lilypond/index.html'.
-
-   * use `.dvi',  for the tutorial and reference manual. Do
-
-            make -C Documentation/user/ dvi
-
-   * use ASCII. Do using
-               make -C doc
-
-
-Comments
-========
-
-   LilyPond is a long way from finished and polished.  We do appreciate
-criticism, comments, bugreports, patches, etc.
-
-          Please send your e-mail to one of the MAILING LISTS
-
-   and _not_ to us personally.  See `Documentation/mail.texi' for more
-info.
-
-Windows 32
-==========
-
-   If you have received this file as part of a DOS/Window32 distribution
-(`LilyPond-*.zip'), it is advisable to also download the source
-package, since it might contain more documentation
-`ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/'
-
-   If you decide to build LilyPond from source, please read the
-INSTALL.txt document first, especially the Windows NT/95 section.
-
-Caveats
-=======
-
-   If you have installed a previous version, be sure to remove old font
-files, eg.,
-     rm `find /var/lib/texmf/fonts -name 'feta*'`
-
-   a script to do this for you is in `buildscripts/clean-fonts.sh'
-
-Bugs
-====
-
-   Send bug reports to <bug-gnu-music@gnu.org>.  For help and questions
-use <help-gnu-music@gnu.org> and <gnu-music-discuss@gnu.org>.  Please
-consult the FAQ and installation instructions before mailing your
-problems.
-
-CDROM distributions
-===================
-
-   If you have received LilyPond on a cdrom, chances are that
-development has moved some patchlevels up.  Please check the latest
-version of LilyPond before reporting bugs.
-
index 3700c74e23535493efa4504a1306fdbbf5c7b8c3..40949dc51106b23e698931ebb09d0a95a78af76b 100644 (file)
@@ -11,8 +11,8 @@ build from source directory ./TARGET (not recursive)
 
 Configure, build
 
-    scons [config]             # configure
-    scons                      # build all
+    scons [config]         # configure
+    scons              # build all
 
 Run from build tree
 
@@ -27,19 +27,19 @@ Run from build tree
     lilypond input/simple
 
 Other targets
-    scons mf-essential         # build minimal mf stuff
+    scons mf-essential     # build minimal mf stuff
 
-    scons doc                  # build web doc
-    scons config               # reconfigure
-    scons install              # install
-    scons -c                   # clean
-    scons -h                   # help
+    scons doc          # build web doc
+    scons config           # reconfigure
+    scons install          # install
+    scons -c           # clean
+    scons -h           # help
 
-    scons /                    # build *everything* (including installation)
+    scons /            # build *everything* (including installation)
 
 Options  (see scons -h)
-    scons build=DIR            # clean srcdir build, output below DIR
-    scons out=DIR              # write output for alterative config to DIR
+    scons build=DIR        # clean srcdir build, output below DIR
+    scons out=DIR          # write output for alterative config to DIR
 
 Debugging
     scons --debug=dtree
@@ -92,16 +92,16 @@ import stat
 import shutil
 
 # duh, we need 0.95.1
-EnsureSConsVersion (0, 95)
+EnsureSConsVersion (0, 96, 92)
 
 usage = r'''Usage:
 [ENVVAR=VALUE]... scons [OPTION=VALUE]... [TARGET|DIR]...
 
 TARGETS: clean, config, doc, dist, install, mf-essential, po-update,
-         realclean, release, sconsclean, tar, TAGS
+     realclean, release, sconsclean, tar, TAGS
 
 ENVVARS: BASH, CCFLAGS, CC, CXX, LIBS, PYTHON, SH...
-         (see SConstruct:config_vars)
+     (see SConstruct:config_vars)
 
 OPTIONS:
 '''
@@ -109,7 +109,7 @@ OPTIONS:
 
 config_cache = 'scons.cache'
 if os.path.exists (config_cache) and 'config' in COMMAND_LINE_TARGETS:
-       os.unlink (config_cache)
+    os.unlink (config_cache)
 
 # All config_vars can be set as ENVVAR, eg:
 #
@@ -117,28 +117,28 @@ if os.path.exists (config_cache) and 'config' in COMMAND_LINE_TARGETS:
 #
 # append test_program variables automagically?
 config_vars = [
-       'BASH',
-       'BYTEORDER',
-       'CC',
-       'CCFLAGS',
-       'CPPPATH',
-       'CPPDEFINES',
-       'CXX',
-       'CXXFLAGS',
-       'DEFINES',
-       'DVIPS',
-       'FONTFORGE',
-       'GCC',
-       'GXX',
-       'GS',
-       'LIBS',
-       'LINKFLAGS',
-       'MF',
-       'MFTRACE',
-       'PERL',
-       'PYTHON',
-       'SH',
-       ]
+    'BASH',
+    'BYTEORDER',
+    'CC',
+    'CCFLAGS',
+    'CPPPATH',
+    'CPPDEFINES',
+    'CXX',
+    'CXXFLAGS',
+    'DEFINES',
+    'DVIPS',
+    'FONTFORGE',
+    'GCC',
+    'GXX',
+    'GS',
+    'LIBS',
+    'LINKFLAGS',
+    'MF',
+    'MFTRACE',
+    'PERL',
+    'PYTHON',
+    'SH',
+    ]
 
 # Put your favourite stuff in custom.py
 opts = Options ([config_cache, 'custom.py'], ARGUMENTS)
@@ -147,55 +147,57 @@ opts.Add ('out', 'Output directory', 'out-scons')
 opts.Add ('build', 'Build directory', '.')
 opts.Add ('DESTDIR', 'DESTDIR prepended to prefix', '')
 opts.AddOptions (
-       BoolOption ('warnings', 'compile with -Wall and similiar',
-                  1),
-       BoolOption ('debugging', 'compile with debugging symbols',
-                   0),
-       BoolOption ('optimising', 'compile with optimising',
-                   1),
-       BoolOption ('shared', 'build shared libraries',
-                   0),
-       BoolOption ('static', 'build static libraries',
-                   1),
-       BoolOption ('gui', 'build with GNOME backend (EXPERIMENTAL)',
-                   0),
-       BoolOption ('verbose', 'run commands with verbose flag',
-                   0),
-       BoolOption ('checksums', 'use checksums instead of timestamps',
-                   0),
-       BoolOption ('fast', 'use timestamps, implicit cache, prune CPPPATH',
-                   0),
-       )
+    BoolOption ('warnings', 'compile with -Wall and similiar',
+           1),
+    BoolOption ('debugging', 'compile with debugging symbols',
+            0),
+    BoolOption ('optimising', 'compile with optimising',
+            1),
+    BoolOption ('shared', 'build shared libraries',
+            0),
+    BoolOption ('static', 'build static libraries',
+            1),
+    BoolOption ('gui', 'build with GNOME backend (EXPERIMENTAL)',
+            0),
+    BoolOption ('verbose', 'run commands with verbose flag',
+            0),
+    BoolOption ('checksums', 'use checksums instead of timestamps',
+            0),
+    BoolOption ('fast', 'use timestamps, implicit cache, prune CPPPATH',
+            0),
+    )
 
 srcdir = Dir ('.').srcnode ().abspath
 #ugh
 sys.path.append (os.path.join (srcdir, 'stepmake', 'bin'))
+
 import packagepython
+
 package = packagepython.Package (srcdir)
 version = packagepython.version_tuple_to_str (package.version)
 
 ENV = { 'PATH' : os.environ['PATH'] }
 for key in ['LD_LIBRARY_PATH', 'GUILE_LOAD_PATH', 'PKG_CONFIG_PATH', 'TEXMF']:
-       if os.environ.has_key (key):
-               ENV[key] = os.environ[key]
+    if os.environ.has_key (key):
+        ENV[key] = os.environ[key]
 
 env = Environment (
-       ENV = ENV,
-       BYTEORDER = sys.byteorder.upper (),
-       CC = '$GCC',
-       CXX = '$GXX',
-       CPPDEFINES = '-DHAVE_CONFIG_H',
-       MAKEINFO = 'LANG= makeinfo',
-       MF_TO_TABLE_PY = srcdir + '/buildscripts/mf-to-table.py',
-       
-       PKG_CONFIG_PATH = [os.path.join (os.environ['HOME'],
-                                        'usr/pkg/gnome/lib'),
-                          os.path.join (os.environ['HOME'],
-                                        'usr/pkg/pango/lib')],
-       GZIP='-9v',
-       MFMODE = 'ljfour',
-       TOPLEVEL_VERSION = version,
-       )
+    ENV = ENV,
+    BYTEORDER = sys.byteorder.upper (),
+    CC = '$GCC',
+    CXX = '$GXX',
+    CPPDEFINES = '-DHAVE_CONFIG_H',
+    MAKEINFO = 'LANG= makeinfo',
+    MF_TO_TABLE_PY = srcdir + '/buildscripts/mf-to-table.py',
+    
+    PKG_CONFIG_PATH = [os.path.join (os.environ['HOME'],
+                     'usr/pkg/gnome/lib'),
+               os.path.join (os.environ['HOME'],
+                     'usr/pkg/pango/lib')],
+    GZIP='-9v',
+    MFMODE = 'ljfour',
+    TOPLEVEL_VERSION = version,
+    )
 
 Help (usage + opts.GenerateHelpText (env))
 
@@ -205,23 +207,23 @@ map (lambda x: opts.AddOptions ((x,)), config_vars)
 opts.Update (env)
 
 for key in config_vars:
-       if os.environ.has_key (key):
-               env[key] = os.environ[key]
+    if os.environ.has_key (key):
+        env[key] = os.environ[key]
 
 if env['fast']:
-       # Usability switch (Anthony Roach).
-       # See http://www.scons.org/cgi-bin/wiki/GoFastButton
-       # First do: scons realclean .
-       env['checksums'] = 0
-       SetOption ('max_drift', 1)
-       SetOption ('implicit_cache', 1)
+    # Usability switch (Anthony Roach).
+    # See http://www.scons.org/cgi-bin/wiki/GoFastButton
+    # First do: scons realclean .
+    env['checksums'] = 0
+    SetOption ('max_drift', 1)
+    SetOption ('implicit_cache', 1)
 elif env['checksums']:
-       # Always use checksums (makes more sense than timestamps).
-       SetOption ('max_drift', 0)
-       # Using *content* checksums prevents rebuilds after
-       # [re]configure if config.hh has not changed.  Too bad that it
-       # is unusably slow.
-       TargetSignatures ('content')
+    # Always use checksums (makes more sense than timestamps).
+    SetOption ('max_drift', 0)
+    # Using *content* checksums prevents rebuilds after
+    # [re]configure if config.hh has not changed.  Too bad that it
+    # is unusably slow.
+    TargetSignatures ('content')
 
 absbuild = Dir (env['build']).abspath
 outdir = os.path.join (Dir (env['build']).abspath, env['out'])
@@ -236,13 +238,13 @@ env.Alias ('config', config_cache)
 cachedir = os.path.join (outdir, 'build-cache')
 
 if not os.path.exists (cachedir):
-       os.makedirs (cachedir)
+    os.makedirs (cachedir)
 
 CacheDir (cachedir)
 
 # No need to set $LILYPONDPREFIX to run lily, but cannot install...
 if env['debugging'] and not 'install' in COMMAND_LINE_TARGETS:
-       env['prefix'] = run_prefix
+    env['prefix'] = run_prefix
 
 prefix = env['prefix']
 bindir = os.path.join (prefix, 'bin')
@@ -258,391 +260,387 @@ lilypondprefix = sharedir_package_version
 
 # junkme
 env.Append (
-       absbuild = absbuild,
-       srcdir = srcdir,
-       )
-
+    absbuild = absbuild,
+    srcdir = srcdir,
+    )
 
-def list_sort (lst):
-       sorted = lst
-       sorted.sort ()
-       return sorted
 
 
 def symlink_tree (target, source, env):
-       def mkdirs (dir):
-               def mkdir (dir):
-                       if not dir:
-                               os.chdir (os.sep)
-                               return
-                       if not os.path.isdir (dir):
-                               if os.path.exists (dir):
-                                       os.unlink (dir)
-                               os.mkdir (dir)
-                       os.chdir (dir)
-               map (mkdir, string.split (dir, os.sep))
-       def symlink (src, dst):
-               os.chdir (absbuild)
-               dir = os.path.dirname (dst)
-               mkdirs (dir)
-               if src[0] == '#':
-                       frm = os.path.join (srcdir, src[1:])
-               else:
-                       depth = len (string.split (dir, '/'))
-                       if src.find ('@') > -1:
-                               frm = os.path.join ('../' * depth,
-                                                   string.replace (src, '@',
-                                                                   env['out']))
-                       else:
-                               frm = os.path.join ('../' * depth, src,
-                                                   env['out'])
-               if src[-1] == '/':
-                       frm = os.path.join (frm, os.path.basename (dst))
-               if env['verbose']:
-                       print 'ln -s %s -> %s' % (frm, os.path.basename (dst))
-               os.symlink (frm, os.path.basename (dst))
-       shutil.rmtree (run_prefix)
-       prefix = os.path.join (env['out'], 'usr')
-       map (lambda x: symlink (x[0], os.path.join (prefix,
-                                                   x[1] % {'ver' : version})),
-            # ^# := source dir
-            # @  := out
-            # /$ := add dst file_name
-            (('python',     'lib/lilypond/python'),
-             # ugh
-             ('python',     'share/lilypond/%(ver)s/python'),
-             ('lily/',      'bin/lilypond'),
-             ('scripts/',   'bin/convert-ly'),
-             ('scripts/',   'bin/lilypond-book'),
-             ('scripts/',   'bin/ps2png'),
-             ('mf',         'share/lilypond/%(ver)s/dvips/mf-out'),
-             ('#ps',        'share/lilypond/%(ver)s/dvips/ps'),
-             ('#ps/music-drawing-routines.ps',
-              'share/lilypond/%(ver)s/tex/music-drawing-routines.ps'),
-             ('mf',         'share/lilypond/%(ver)s/otf'),
-             ('mf',         'share/lilypond/%(ver)s/tfm'),
-             ('tex',        'share/lilypond/%(ver)s/tex/enc'),
-             ('#mf',        'share/lilypond/%(ver)s/fonts/mf'),
-             ('mf',         'share/lilypond/%(ver)s/fonts/map'),
-             ('mf',         'share/lilypond/%(ver)s/fonts/otf'),
-             ('mf',         'share/lilypond/%(ver)s/fonts/tfm'),
-             ('mf',         'share/lilypond/%(ver)s/fonts/type1'),
-             ('#tex',       'share/lilypond/%(ver)s/tex/source'),
-             ('tex',        'share/lilypond/%(ver)s/tex/tex-out'),
-             ('mf',         'share/lilypond/%(ver)s/tex/mf-out'),
-             ('#ly',        'share/lilypond/%(ver)s/ly'),
-             ('#scm',       'share/lilypond/%(ver)s/scm'),
-             ('#scripts',   'share/lilypond/%(ver)s/scripts'),
-             ('#ps',        'share/lilypond/%(ver)s/ps'),
-             ('po/@/nl.mo', 'share/locale/nl/LC_MESSAGES/lilypond.mo'),
-             ('elisp',      'share/lilypond/%(ver)s/elisp')))
-
-       print "FIXME: BARF BARF BARF"
-       os.chdir (absbuild)
-       out = env['out']
-       ver = version
-       prefix = os.path.join (env['out'], 'usr/share/lilypond/%(ver)s/fonts'
-                              % vars ())
-       for ext in ('enc', 'map', 'otf', 'svg', 'tfm', 'pfa'):
-               dir = os.path.join (absbuild, prefix, ext)
-               os.system ('rm -f ' + dir)
-               mkdirs (dir)
-               os.chdir (dir)
-               os.system ('ln -s ../../../../../../../mf/%(out)s/*.%(ext)s .'
-                          % vars ())
-       os.chdir (srcdir)
+    def mkdirs (dir):
+        def mkdir (dir):
+            if not dir:
+                os.chdir (os.sep)
+                return
+            if not os.path.isdir (dir):
+                if os.path.exists (dir):
+                    os.unlink (dir)
+                os.mkdir (dir)
+            os.chdir (dir)
+        map (mkdir, string.split (dir, os.sep))
+    def symlink (src, dst):
+        os.chdir (absbuild)
+        dir = os.path.dirname (dst)
+        mkdirs (dir)
+        if src[0] == '#':
+            frm = os.path.join (srcdir, src[1:])
+        else:
+            depth = len (string.split (dir, '/'))
+            if src.find ('@') > -1:
+                frm = os.path.join ('../' * depth,
+                            string.replace (src, '@',
+                                    env['out']))
+            else:
+                frm = os.path.join ('../' * depth, src,
+                            env['out'])
+        if src[-1] == '/':
+            frm = os.path.join (frm, os.path.basename (dst))
+        if env['verbose']:
+            print 'ln -s %s -> %s' % (frm, os.path.basename (dst))
+        os.symlink (frm, os.path.basename (dst))
+    shutil.rmtree (run_prefix)
+    prefix = os.path.join (env['out'], 'usr')
+    map (lambda x: symlink (x[0], os.path.join (prefix,
+                            x[1] % {'ver' : version})),
+         # ^# := source dir
+         # @  := out
+         # /$ := add dst file_name
+         (('python',     'lib/lilypond/python'),
+          # ugh
+          ('python',     'share/lilypond/%(ver)s/python'),
+          ('lily/',      'bin/lilypond'),
+          ('scripts/',   'bin/convert-ly'),
+          ('scripts/',   'bin/lilypond-book'),
+          ('scripts/',   'bin/ps2png'),
+          ('mf',     'share/lilypond/%(ver)s/dvips/mf-out'),
+          ('#ps',    'share/lilypond/%(ver)s/dvips/ps'),
+          ('#ps/music-drawing-routines.ps',
+           'share/lilypond/%(ver)s/tex/music-drawing-routines.ps'),
+          ('mf',     'share/lilypond/%(ver)s/otf'),
+          ('mf',     'share/lilypond/%(ver)s/tfm'),
+          ('tex',    'share/lilypond/%(ver)s/tex/enc'),
+          ('#mf',    'share/lilypond/%(ver)s/fonts/mf'),
+          ('mf',     'share/lilypond/%(ver)s/fonts/map'),
+          ('mf',     'share/lilypond/%(ver)s/fonts/otf'),
+          ('mf',     'share/lilypond/%(ver)s/fonts/tfm'),
+          ('mf',     'share/lilypond/%(ver)s/fonts/type1'),
+          ('#tex',       'share/lilypond/%(ver)s/tex/source'),
+          ('tex',    'share/lilypond/%(ver)s/tex/tex-out'),
+          ('mf',     'share/lilypond/%(ver)s/tex/mf-out'),
+          ('#ly',    'share/lilypond/%(ver)s/ly'),
+          ('#scm',       'share/lilypond/%(ver)s/scm'),
+          ('#scripts',   'share/lilypond/%(ver)s/scripts'),
+          ('#ps',    'share/lilypond/%(ver)s/ps'),
+          ('po/@/nl.mo', 'share/locale/nl/LC_MESSAGES/lilypond.mo'),
+          ('elisp',      'share/lilypond/%(ver)s/elisp')))
+
+    print "FIXME: BARF BARF BARF"
+    os.chdir (absbuild)
+    out = env['out']
+    ver = version
+    prefix = os.path.join (env['out'], 'usr/share/lilypond/%(ver)s/fonts'
+                   % vars ())
+    for ext in ('enc', 'map', 'otf', 'svg', 'tfm', 'pfa'):
+        dir = os.path.join (absbuild, prefix, ext)
+        os.system ('rm -f ' + dir)
+        mkdirs (dir)
+        os.chdir (dir)
+        os.system ('ln -s ../../../../../../../mf/%(out)s/*.%(ext)s .'
+               % vars ())
+    os.chdir (srcdir)
 
 def configure (target, source, env):
-       dre = re.compile ('\n(200[0-9]{5})')
-       vre = re.compile ('.*?\n[^-.0-9]*([0-9][0-9]*\.[0-9]([.0-9]*[0-9])*)',
-                         re.DOTALL)
-       def get_version (program):
-               command = '(pkg-config --modversion %(program)s || %(program)s --version || %(program)s -V) 2>&1' % vars ()
-               pipe = os.popen (command)
-               output = pipe.read ()
-               if pipe.close ():
-                       return None
-               splits = re.sub ('^|\s', '\n', output)
-               date_hack = re.sub (dre, '\n0.0.\\1', splits)
-               m = re.match (vre, date_hack)
-               v = m.group (1)
-               if v[-1] == '\n':
-                       v = v[:-1]
-               return string.split (v, '.')
-
-       def test_version (lst, full_name, minimal, description, package):
-               program = os.path.basename (full_name)
-               sys.stdout.write ('Checking %s version... ' % program)
-               actual = get_version (program)
-               if not actual:
-                       print 'not found'
-                       lst.append ((description, package, minimal, program,
-                                    'not installed'))
-                       return 0
-               print string.join (actual, '.')
-               if map (string.atoi, actual) \
-                  < map (string.atoi, string.split (minimal, '.')):
-                       lst.append ((description, package, minimal, program,
-                                    string.join (actual, '.')))
-                       return 0
-               return 1
-
-       def test_program (lst, program, minimal, description, package):
-               key = program.upper ()
-               if key.find ('+-'):
-                       key = re.sub ('\+', 'X', key)
-                       key = re.sub ('-', '_', key)
-               sys.stdout.write ('Checking for %s ... ' % program)
-               if env.has_key (key):
-                       f = env[key]
-                       sys.stdout.write ('(cached) ')
-               else:
-                       f = WhereIs (program)
-                       env[key] = f
-               if not f:
-                       print 'not found'
-                       lst.append ((description, package, minimal, program,
-                                    'not installed'))
-                       return 0
-               print f
-               return test_version (lst, program, minimal, description, package)
-
-       def test_lib (lst, program, minimal, description, package):
-               # FIXME: test for Debian or RPM (or -foo?) based dists
-               # to guess (or get correct!: apt-cache search?)
-               # package name.
-               #if os.system ('pkg-config --atleast-version=0 freetype2'):
-               # barf
-               if test_version (lst, program, minimal, description,
-                                'lib%(package)s-dev or %(package)s-devel'
-                                % vars ()):
-                       env.ParseConfig ('pkg-config --cflags --libs %(program)s'
-                                        % vars ())
-                       return 1
-               return 0
-
-       required = []
-       test_program (required, 'bash', '2.0', 'Bash', 'bash')
-       test_program (required, 'gcc', '2.8', 'GNU C compiler', 'gcc')
-       test_program (required, 'g++', '3.0.5', 'GNU C++ compiler', 'g++')
-       test_program (required, 'guile-config', '1.6', 'GUILE development',
-                       'libguile-dev or guile-devel')
-       test_program (required, 'mf', '0.0', 'Metafont', 'tetex-bin')
-       test_program (required, 'mftrace', '1.1.9',
-                     'mftrace (http://xs4all.nl/~hanwen/mftrace)', 'mftrace')
-       test_program (required, 'potrace', '0.0', 'Potrace', 'potrace')
-       test_program (required, 'python', '2.1', 'Python (www.python.org)',
-                     'python')
-       test_program (required, 'sh', '0.0', 'Bourne shell', 'sh')
-
-       optional = []
-       # Do not use bison 1.50 and 1.75.
-       #test_program (optional, 'foo', '2.0', 'Foomatic tester', 'bar')
-       test_program (optional, 'bison', '1.25', 'Bison -- parser generator',
-                       'bison')
-       test_program (optional, 'dvips', '0.0', 'Dvips', 'tetex-bin')
-       test_program (optional, 'fontforge', '0.0.20050624', 'FontForge',
-                     'fontforge')
-       test_program (optional, 'flex', '0.0', 'Flex -- lexer generator',
-                     'flex')
-       test_program (optional, 'guile', '1.6', 'GUILE scheme', 'guile')
-       test_program (optional, 'gs', '8.15',
-                     'Ghostscript PostScript interpreter',
-                     'gs or gs-afpl or gs-esp or gs-gpl')
-       test_program (optional, 'mftrace', '1.1.19', 'Metafont tracing Type1',
-                       'mftrace')
-       test_program (optional, 'makeinfo', '4.7', 'Makeinfo tool', 'texinfo')
-       test_program (optional, 'perl', '4.0',
-                     'Perl practical efficient readonly language', 'perl')
-       #test_program (optional, 'ps2pdf', '0.0', 'Ps2pdf', 'gs')
-
-       def CheckYYCurrentBuffer (context):
-               context.Message ('Checking for yy_current_buffer... ')
-               ret = conf.TryCompile ("""using namespace std;
-               #include <FlexLexer.h>
-               class yy_flex_lexer: public yyFlexLexer
-               {
-               public:
-               yy_flex_lexer ()
-               {
-               yy_current_buffer = 0;
-               }
-               };""", '.cc')
-               context.Result (ret)
-               return ret
-
-       conf = Configure (env, custom_tests = { 'CheckYYCurrentBuffer'
-                                               : CheckYYCurrentBuffer })
-
-       defines = {
-          'DIRSEP' : "'%s'" % os.sep,
-          'PATHSEP' : "'%s'" % os.pathsep,
-          'PACKAGE': '"%s"' % package.name,
-          'DATADIR' : '"%s"' % sharedir,
-          'PACKAGE_DATADIR' : '"%s"' % sharedir_package,
-          'LOCALEDIR' : '"%s"' %localedir,
-       }
-       conf.env.Append (DEFINES = defines)
-
-       command = r"""python -c 'import sys; sys.stdout.write ("%s/include/python%s" % (sys.prefix, sys.version[:3]))'""" #"
-       PYTHON_INCLUDE = os.popen (command).read ()#[:-1]
-       if env['fast']:
-               env.Append (CCFLAGS = ['-I%s' % PYTHON_INCLUDE])
-       else:
-               env.Append (CPPPATH = [PYTHON_INCLUDE])
-
-       headers = ('assert.h', 'grp.h', 'libio.h', 'pwd.h',
-                  'sys/stat.h', 'utf8/wchar.h', 'wchar.h', 'Python.h')
-       for i in headers:
-               if conf.CheckCHeader (i):
-                       key = re.sub ('[./]', '_', 'HAVE_' + string.upper (i))
-                       conf.env['DEFINES'][key] = 1
-
-       ccheaders = ('sstream',)
-       for i in ccheaders:
-               if conf.CheckCXXHeader (i):
-                       key = re.sub ('[./]', '_', 'HAVE_' + string.upper (i))
-                       conf.env['DEFINES'][key] = 1
-
-       functions = ('chroot', 'fopencookie', 'funopen',
-                    'gettext', 'isinf',
-                    'mbrtowc', 'memmem', 'snprintf', 'vsnprintf', 'wcrtomb')
-       for i in functions:
-               if 0 or conf.CheckFunc (i):
-                       key = re.sub ('[./]', '_', 'HAVE_' + string.upper (i))
-                       conf.env['DEFINES'][key] = 1
-
-       if conf.CheckYYCurrentBuffer ():
-               conf.env['DEFINES']['HAVE_FLEXLEXER_YY_CURRENT_BUFFER'] = 1
-
-       if conf.CheckLib ('dl'):
-               pass
-
-       if env['fast']:
-               cpppath = []
-               if env.has_key ('CPPPATH'):
-                       cpppath = env['CPPPATH']
-
-       ## FIXME: linkage, check for libguile.h and scm_boot_guile
-       #this could happen after flower...
-       env.ParseConfig ('guile-config compile')
-
-       test_program (required, 'pkg-config', '0.9.0',
-                     'pkg-config library compile manager', 'pkg-config')
-       if test_lib (required, 'freetype2', '0.0',
-                    'Development files for FreeType 2 font engine',
-                    'freetype6'):
-               conf.env['DEFINES']['HAVE_FREETYPE2'] = '1'
-               
-       if test_lib (required, 'pangoft2', '1.6.0',
-                    'Development files for pango, with FreeType2',
-                    'pango1.0'):
-               conf.env['DEFINES']['HAVE_PANGO_FT2'] = '1'
-
-       if test_lib (optional, 'fontconfig', '2.2.0',
-                    'Development files for fontconfig', 'fontconfig1'):
-               conf.env['DEFINES']['HAVE_FONTCONFIG'] = '1'
-       
-       #this could happen only for compiling pango-*
-       if env['gui']:
-               test_lib (required, 'gtk+-2.0', '2.4.0',
-                         'Development files for GTK+', 'gtk2.0')
-                       
-       if env['fast']:
-               # Using CCFLAGS = -I<system-dir> rather than CPPPATH = [
-               # <system-dir>] speeds up SCons
-               env['CCFLAGS'] += map (lambda x: '-I' + x,
-                                      env['CPPPATH'][len (cpppath):])
-               env['CPPPATH'] = cpppath
-
-       if required:
-               print
-               print '********************************'
-               print 'Please install required packages'
-               for i in required:
-                       print '%s:      %s-%s or newer (found: %s %s)' % i
-               Exit (1)
-
-       if optional:
-               print
-               print '*************************************'
-               print 'Consider installing optional packages'
-               for i in optional:
-                       print '%s:      %s-%s or newer (found: %s %s)' % i
-
-       return conf.Finish ()
+    dre = re.compile ('\n(200[0-9]{5})')
+    vre = re.compile ('.*?\n[^-.0-9]*([0-9][0-9]*\.[0-9]([.0-9]*[0-9])*)',
+              re.DOTALL)
+    def get_version (program):
+        command = '(pkg-config --modversion %(program)s || %(program)s --version || %(program)s -V) 2>&1' % vars ()
+        pipe = os.popen (command)
+        output = pipe.read ()
+        if pipe.close ():
+            return None
+        splits = re.sub ('^|\s', '\n', output)
+        date_hack = re.sub (dre, '\n0.0.\\1', splits)
+        m = re.match (vre, date_hack)
+        v = m.group (1)
+        if v[-1] == '\n':
+            v = v[:-1]
+        return string.split (v, '.')
+
+    def test_version (lst, full_name, minimal, description, package):
+        program = os.path.basename (full_name)
+        sys.stdout.write ('Checking %s version... ' % program)
+        actual = get_version (program)
+        if not actual:
+            print 'not found'
+            lst.append ((description, package, minimal, program,
+                     'not installed'))
+            return 0
+        print string.join (actual, '.')
+        if map (string.atoi, actual) \
+           < map (string.atoi, string.split (minimal, '.')):
+            lst.append ((description, package, minimal, program,
+                     string.join (actual, '.')))
+            return 0
+        return 1
+
+    def test_program (lst, program, minimal, description, package):
+        key = program.upper ()
+        if key.find ('+-'):
+            key = re.sub ('\+', 'X', key)
+            key = re.sub ('-', '_', key)
+        sys.stdout.write ('Checking for %s ... ' % program)
+        if env.has_key (key):
+            f = env[key]
+            sys.stdout.write ('(cached) ')
+        else:
+            f = WhereIs (program)
+            env[key] = f
+        if not f:
+            print 'not found'
+            lst.append ((description, package, minimal, program,
+                     'not installed'))
+            return 0
+        print f
+        return test_version (lst, program, minimal, description, package)
+
+    def test_lib (lst, program, minimal, description, package):
+        # FIXME: test for Debian or RPM (or -foo?) based dists
+        # to guess (or get correct!: apt-cache search?)
+        # package name.
+        #if os.system ('pkg-config --atleast-version=0 freetype2'):
+        # barf
+        if test_version (lst, program, minimal, description,
+                 'lib%(package)s-dev or %(package)s-devel'
+                 % vars ()):
+            env.ParseConfig ('pkg-config --cflags --libs %(program)s'
+                     % vars ())
+            return 1
+        return 0
+
+    required = []
+    test_program (required, 'bash', '2.0', 'Bash', 'bash')
+    test_program (required, 'gcc', '2.8', 'GNU C compiler', 'gcc')
+    test_program (required, 'g++', '3.0.5', 'GNU C++ compiler', 'g++')
+    test_program (required, 'guile-config', '1.6', 'GUILE development',
+            'libguile-dev or guile-devel')
+    test_program (required, 'mf', '0.0', 'Metafont', 'tetex-bin')
+    test_program (required, 'mftrace', '1.1.9',
+              'mftrace (http://xs4all.nl/~hanwen/mftrace)', 'mftrace')
+    test_program (required, 'potrace', '0.0', 'Potrace', 'potrace')
+    test_program (required, 'python', '2.1', 'Python (www.python.org)',
+              'python')
+    # Silly, and breaks with /bin/sh == dash
+    #test_program (required, 'sh', '0.0', 'Bourne shell', 'sh')
+
+    optional = []
+    # Do not use bison 1.50 and 1.75.
+    #test_program (optional, 'foo', '2.0', 'Foomatic tester', 'bar')
+    test_program (optional, 'bison', '1.25', 'Bison -- parser generator',
+            'bison')
+    test_program (optional, 'dvips', '0.0', 'Dvips', 'tetex-bin')
+    test_program (optional, 'fontforge', '0.0.20050624', 'FontForge',
+              'fontforge')
+    test_program (optional, 'flex', '0.0', 'Flex -- lexer generator',
+              'flex')
+    test_program (optional, 'guile', '1.6', 'GUILE scheme', 'guile')
+    test_program (optional, 'gs', '8.15',
+              'Ghostscript PostScript interpreter',
+              'gs or gs-afpl or gs-esp or gs-gpl')
+    test_program (optional, 'mftrace', '1.1.19', 'Metafont tracing Type1',
+            'mftrace')
+    test_program (optional, 'makeinfo', '4.7', 'Makeinfo tool', 'texinfo')
+    test_program (optional, 'perl', '4.0',
+              'Perl practical efficient readonly language', 'perl')
+    #test_program (optional, 'ps2pdf', '0.0', 'Ps2pdf', 'gs')
+
+    def CheckYYCurrentBuffer (context):
+        context.Message ('Checking for yy_current_buffer... ')
+        ret = conf.TryCompile ("""using namespace std;
+        #include <FlexLexer.h>
+        class yy_flex_lexer: public yyFlexLexer
+        {
+        public:
+        yy_flex_lexer ()
+        {
+        yy_current_buffer = 0;
+        }
+        };""", '.cc')
+        context.Result (ret)
+        return ret
+
+    conf = Configure (env, custom_tests = { 'CheckYYCurrentBuffer'
+                        : CheckYYCurrentBuffer })
+
+    defines = {
+       'DIRSEP' : "'%s'" % os.sep,
+       'PATHSEP' : "'%s'" % os.pathsep,
+       'PACKAGE': '"%s"' % package.name,
+       'DATADIR' : '"%s"' % sharedir,
+       'PACKAGE_DATADIR' : '"%s"' % sharedir_package,
+       'LOCALEDIR' : '"%s"' %localedir,
+    }
+    conf.env.Append (DEFINES = defines)
+
+    command = r"""python -c 'import sys; sys.stdout.write ("%s/include/python%s" % (sys.prefix, sys.version[:3]))'""" #"
+    PYTHON_INCLUDE = os.popen (command).read ()#[:-1]
+    if env['fast']:
+        env.Append (CCFLAGS = ['-I%s' % PYTHON_INCLUDE])
+    else:
+        env.Append (CPPPATH = [PYTHON_INCLUDE])
+
+    headers = ('assert.h', 'grp.h', 'libio.h', 'pwd.h',
+           'sys/stat.h', 'utf8/wchar.h', 'wchar.h', 'Python.h')
+    for i in headers:
+        if conf.CheckCHeader (i):
+            key = re.sub ('[./]', '_', 'HAVE_' + string.upper (i))
+            conf.env['DEFINES'][key] = 1
+
+    ccheaders = ('sstream',)
+    for i in ccheaders:
+        if conf.CheckCXXHeader (i):
+            key = re.sub ('[./]', '_', 'HAVE_' + string.upper (i))
+            conf.env['DEFINES'][key] = 1
+
+    functions = ('chroot', 'fopencookie', 'funopen',
+             'gettext', 'isinf',
+             'mbrtowc', 'memmem', 'snprintf', 'vsnprintf', 'wcrtomb')
+    for i in functions:
+        if 0 or conf.CheckFunc (i):
+            key = re.sub ('[./]', '_', 'HAVE_' + string.upper (i))
+            conf.env['DEFINES'][key] = 1
+
+    if conf.CheckYYCurrentBuffer ():
+        conf.env['DEFINES']['HAVE_FLEXLEXER_YY_CURRENT_BUFFER'] = 1
+
+    if conf.CheckLib ('dl'):
+        pass
+
+    if env['fast']:
+        cpppath = []
+        if env.has_key ('CPPPATH'):
+            cpppath = env['CPPPATH']
+
+    ## FIXME: linkage, check for libguile.h and scm_boot_guile
+    #this could happen after flower...
+    env.ParseConfig ('guile-config compile')
+
+    test_program (required, 'pkg-config', '0.9.0',
+              'pkg-config library compile manager', 'pkg-config')
+    if test_lib (required, 'freetype2', '0.0',
+             'Development files for FreeType 2 font engine',
+             'freetype6'):
+        conf.env['DEFINES']['HAVE_FREETYPE2'] = '1'
+        
+    if test_lib (required, 'pangoft2', '1.6.0',
+             'Development files for pango, with FreeType2',
+             'pango1.0'):
+        conf.env['DEFINES']['HAVE_PANGO_FT2'] = '1'
+
+    if test_lib (optional, 'fontconfig', '2.2.0',
+             'Development files for fontconfig', 'fontconfig1'):
+        conf.env['DEFINES']['HAVE_FONTCONFIG'] = '1'
+    
+    #this could happen only for compiling pango-*
+    if env['gui']:
+        test_lib (required, 'gtk+-2.0', '2.4.0',
+              'Development files for GTK+', 'gtk2.0')
+            
+    if env['fast']:
+        # Using CCFLAGS = -I<system-dir> rather than CPPPATH = [
+        # <system-dir>] speeds up SCons
+        env['CCFLAGS'] += map (lambda x: '-I' + x,
+                       env['CPPPATH'][len (cpppath):])
+        env['CPPPATH'] = cpppath
+
+    if required:
+        print
+        print '********************************'
+        print 'Please install required packages'
+        for i in required:
+            print '%s:      %s-%s or newer (found: %s %s)' % i
+        Exit (1)
+
+    if optional:
+        print
+        print '*************************************'
+        print 'Consider installing optional packages'
+        for i in optional:
+            print '%s:      %s-%s or newer (found: %s %s)' % i
+
+    return conf.Finish ()
 
 def config_header (target, source, env):
-       config = open (str (target[0]), 'w')
-       for i in list_sort (env['DEFINES'].keys ()):
-               config.write ('#define %s %s\n' % (i, env['DEFINES'][i]))
-       config.close ()
+    config = open (str (target[0]), 'w')
+    for i in sorted (env['DEFINES'].keys ()):
+        config.write ('#define %s %s\n' % (i, env['DEFINES'][i]))
+    config.close ()
 env.Command (config_hh, config_cache, config_header)
 
 # hmm?
 def xuniquify (lst):
-       n = []
-       for i in lst:
-               if not i in n:
-                       n.append (i)
-       lst = n
-       return lst
+    n = []
+    for i in lst:
+        if not i in n:
+            n.append (i)
+    lst = n
+    return lst
 
 def uniquify (lst):
-       d = {}
-       n = len (lst)
-       i = 0
-       while i < n:
-               if not d.has_key (lst[i]):
-                       d[lst[i]] = 1
-                       i += 1
-               else:
-                       del lst[i]
-                       n -= 1
-       return lst
+    d = {}
+    n = len (lst)
+    i = 0
+    while i < n:
+        if not d.has_key (lst[i]):
+            d[lst[i]] = 1
+            i += 1
+        else:
+            del lst[i]
+            n -= 1
+    return lst
 
 def uniquify_config_vars (env):
-       for i in config_vars:
-               if env.has_key (i) and type (env[i]) == type ([]):
-                       env[i] = uniquify (env[i])
+    for i in config_vars:
+        if env.has_key (i) and type (env[i]) == type ([]):
+            env[i] = uniquify (env[i])
 
 def save_config_cache (env):
-       ## FIXME: Is this smart, using option cache for saving
-       ## config.cache?  I cannot seem to find the official method.
-       uniquify_config_vars (env)
-       opts.Save (config_cache, env)
-
-       if 'config' in COMMAND_LINE_TARGETS:
-               sys.stdout.write ('\n')
-               sys.stdout.write ('LilyPond configured')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('Now run')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('    scons [TARGET|DIR]...')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('Examples:')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('    scons lily    # build lilypond')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('    scons all     # build everything')
-               sys.stdout.write ('\n')
-               sys.stdout.write ('    scons doc     # build documentation')
-               sys.stdout.write ('\n')
-               ## TODO
-               ## sys.stdout.write ('    scons prefix=/usr DESTDIR=/tmp/pkg all install')
-               ## sys.stdout.write ('\n')
-               Exit (0)
-       elif not env['checksums']:
-               # When using timestams, config.hh is NEW.  The next
-               # build triggers recompilation of everything.  Exiting
-               # here makes SCons use the actual timestamp for config.hh
-               # and prevents recompiling everything the next run.
-               command = sys.argv[0] + ' ' + string.join (COMMAND_LINE_TARGETS)
-               sys.stdout.write ('Running %s ... ' % command)
-               sys.stdout.write ('\n')
-               s = os.system (command)
-               Exit (s)
+    ## FIXME: Is this smart, using option cache for saving
+    ## config.cache?  I cannot seem to find the official method.
+    uniquify_config_vars (env)
+    opts.Save (config_cache, env)
+
+    if 'config' in COMMAND_LINE_TARGETS:
+        sys.stdout.write ('\n')
+        sys.stdout.write ('LilyPond configured')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('Now run')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('    scons [TARGET|DIR]...')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('Examples:')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('    scons lily    # build lilypond')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('    scons all     # build everything')
+        sys.stdout.write ('\n')
+        sys.stdout.write ('    scons doc     # build documentation')
+        sys.stdout.write ('\n')
+        ## TODO
+        ## sys.stdout.write ('    scons prefix=/usr DESTDIR=/tmp/pkg all install')
+        ## sys.stdout.write ('\n')
+        Exit (0)
+    elif not env['checksums']:
+        # When using timestams, config.hh is NEW.  The next
+        # build triggers recompilation of everything.  Exiting
+        # here makes SCons use the actual timestamp for config.hh
+        # and prevents recompiling everything the next run.
+        command = sys.argv[0] + ' ' + string.join (COMMAND_LINE_TARGETS)
+        sys.stdout.write ('Running %s ... ' % command)
+        sys.stdout.write ('\n')
+        s = os.system (command)
+        Exit (s)
 
 # WTF?
 # scons: *** Calling Configure from Builders is not supported.
@@ -650,32 +648,32 @@ def save_config_cache (env):
 if not os.path.exists (config_cache) \
    or (os.stat ('SConstruct')[stat.ST_MTIME]
        > os.stat (config_cache)[stat.ST_MTIME]):
-       env = configure (None, None, env)
-       save_config_cache (env)
+    env = configure (None, None, env)
+    save_config_cache (env)
 elif env['checksums']:
-       # just save everything
-       save_config_cache (env)
+    # just save everything
+    save_config_cache (env)
 
 #urg how does #/ subst work?
 Export ('env')
 SConscript ('buildscripts/builder.py')
 
 env.PrependENVPath ('PATH',
-                   os.path.join (env['absbuild'], env['out'], 'usr/bin'))
+            os.path.join (env['absbuild'], env['out'], 'usr/bin'))
 
 LILYPONDPREFIX = os.path.join (run_prefix, 'share/lilypond/', version)
 
 if not os.path.exists (LILYPONDPREFIX):
-       os.makedirs (LILYPONDPREFIX)
+    os.makedirs (LILYPONDPREFIX)
 
 env.Command (LILYPONDPREFIX, ['#/SConstruct', '#/VERSION'], symlink_tree)
 env.Depends ('lily', LILYPONDPREFIX)
 
 env.Append (ENV = {
-       'LILYPONDPREFIX' : LILYPONDPREFIX,
-       'TEXMF' : '{$LILYPONDPREFIX,'
-       + os.popen ('kpsexpand \$TEXMF').read ()[:-1] + '}',
-       })
+    'LILYPONDPREFIX' : LILYPONDPREFIX,
+    'TEXMF' : '{$LILYPONDPREFIX,'
+    + os.popen ('kpsexpand \$TEXMF').read ()[:-1] + '}',
+    })
 
 BUILD_ABC2LY = '${set__x}$PYTHON $srcdir/scripts/abc2ly.py'
 BUILD_LILYPOND = '$absbuild/lily/$out/lilypond ${__verbose}'
@@ -684,44 +682,44 @@ BUILD_LILYPOND_BOOK = '$PYTHON $srcdir/scripts/lilypond-book.py ${__verbose}'
 
 # post-option environment-update
 env.Append (
-       bindir = bindir,
-       sharedir = sharedir,
-       lilypond_datadir = sharedir_package,
-       localedir = localedir,
-       local_lilypond_datadir = sharedir_package_version,
-       lilypondprefix = lilypondprefix,
-       sharedir_package = sharedir_package,
-       sharedir_doc_package = sharedir_doc_package,
-       sharedir_package_version = sharedir_package_version,
-       libdir_package = libdir_package,
-       libdir_package_version = libdir_package_version,
-
-       # global build verbosity switch
-       __verbose = ' --verbose',
-       
-       LILYPOND = BUILD_LILYPOND,
-       ABC2LY = BUILD_ABC2LY,
-       LILYPOND_BOOK = BUILD_LILYPOND_BOOK,
-       LILYPOND_BOOK_FORMAT = 'texi-html',
-       MAKEINFO_FLAGS = '--css-include=$srcdir/Documentation/texinfo.css',
-       # PYTHONPATH = ['$absbuild/python/$out'],
-       TEXI2DVI_PAPERSIZE = '@afourpaper',
-       TEXI2DVI_FLAGS = [ '-t$TEXI2DVI_PAPERSIZE'],
-       DVIPS_PAPERSIZE = 'a4',
-       DVIPS_FLAGS = ['-t$DVIPS_PAPERSIZE',
-                      '-u+lilypond.map',
-                      '-u+ec-mftrace.map'],
-       PSPDF_FLAGS = ['-sPAPERSIZE=$DVIPS_PAPERSIZE'],
-       )
+    bindir = bindir,
+    sharedir = sharedir,
+    lilypond_datadir = sharedir_package,
+    localedir = localedir,
+    local_lilypond_datadir = sharedir_package_version,
+    lilypondprefix = lilypondprefix,
+    sharedir_package = sharedir_package,
+    sharedir_doc_package = sharedir_doc_package,
+    sharedir_package_version = sharedir_package_version,
+    libdir_package = libdir_package,
+    libdir_package_version = libdir_package_version,
+
+    # global build verbosity switch
+    __verbose = ' --verbose',
+    
+    LILYPOND = BUILD_LILYPOND,
+    ABC2LY = BUILD_ABC2LY,
+    LILYPOND_BOOK = BUILD_LILYPOND_BOOK,
+    LILYPOND_BOOK_FORMAT = 'texi-html',
+    MAKEINFO_FLAGS = '--css-include=$srcdir/Documentation/texinfo.css',
+    # PYTHONPATH = ['$absbuild/python/$out'],
+    TEXI2DVI_PAPERSIZE = '@afourpaper',
+    TEXI2DVI_FLAGS = [ '-t$TEXI2DVI_PAPERSIZE'],
+    DVIPS_PAPERSIZE = 'a4',
+    DVIPS_FLAGS = ['-t$DVIPS_PAPERSIZE',
+               '-u+lilypond.map',
+               '-u+ec-mftrace.map'],
+    PSPDF_FLAGS = ['-sPAPERSIZE=$DVIPS_PAPERSIZE'],
+    )
 
 env.Append (CCFLAGS = ['-pipe', '-Wno-pmf-conversions'])
 if env['debugging']:
-       env.Append (CCFLAGS = ['-g'])
+    env.Append (CCFLAGS = ['-g'])
 if env['optimising']:
-       env.Append (CCFLAGS = '-O2')
+    env.Append (CCFLAGS = '-O2')
 if env['warnings']:
-       env.Append (CCFLAGS = ['-W', '-Wall'])
-       env.Append (CXXFLAGS = ['-Wconversion'])
+    env.Append (CCFLAGS = ['-W', '-Wall'])
+    env.Append (CXXFLAGS = ['-Wconversion'])
 
 # ugr,huh?
 env.Append (LINKFLAGS = ['-Wl,--export-dynamic'])
@@ -729,146 +727,146 @@ env.Append (LINKFLAGS = ['-Wl,--export-dynamic'])
 env.Append (LINKFLAGS = ['-L/usr/X11R6/lib'])
 
 if env['verbose']:
-       env['__verbose'] = ' --verbose'
-       env['set__x'] = 'set -x;'
+    env['__verbose'] = ' --verbose'
+    env['set__x'] = 'set -x;'
 
 
 ## Explicit target and dependencies
 
 if 'clean' in COMMAND_LINE_TARGETS:
-       # ugh: prevent reconfigure instead of clean
-       os.system ('touch %s' % config_cache)
-       
-       command = sys.argv[0] + ' -c .'
-       sys.stdout.write ('Running %s ... ' % command)
-       sys.stdout.write ('\n')
-       s = os.system (command)
-       if os.path.exists (config_cache):
-               os.unlink (config_cache)
-       Exit (s)
+    # ugh: prevent reconfigure instead of clean
+    os.system ('touch %s' % config_cache)
+    
+    command = sys.argv[0] + ' -c .'
+    sys.stdout.write ('Running %s ... ' % command)
+    sys.stdout.write ('\n')
+    s = os.system (command)
+    if os.path.exists (config_cache):
+        os.unlink (config_cache)
+    Exit (s)
 
 if 'sconsclean' in COMMAND_LINE_TARGETS:
-       command = 'rm -rf scons.cache $(find . -name ".scon*")'
-       s = os.system (command)
-       if os.path.exists (config_cache):
-               os.unlink (config_cache)
-       Exit (s)
-       
+    command = 'rm -rf scons.cache $(find . -name ".scon*")'
+    s = os.system (command)
+    if os.path.exists (config_cache):
+        os.unlink (config_cache)
+    Exit (s)
+    
 if 'realclean' in COMMAND_LINE_TARGETS:
-       command = 'rm -rf $(find . -name "out-scons" -o -name ".scon*")'
-       sys.stdout.write ('Running %s ... ' % command)
-       sys.stdout.write ('\n')
-       s = os.system (command)
-       if os.path.exists (config_cache):
-               os.unlink (config_cache)
-       Exit (s)
+    command = 'rm -rf $(find . -name "out-scons" -o -name ".scon*")'
+    sys.stdout.write ('Running %s ... ' % command)
+    sys.stdout.write ('\n')
+    s = os.system (command)
+    if os.path.exists (config_cache):
+        os.unlink (config_cache)
+    Exit (s)
 
 def symlink_tree ():
-       print "BOE"
-       raise urg
-       
+    print "BOE"
+    raise urg
+    
 # Declare SConscript phonies 
 env.Alias ('minimal', config_cache)
 
 if 0:
-       env.Alias ('mf-essential', config_cache)
-       env.Alias ('minimal', ['python', 'lily', 'mf-essential'])
-       env.Alias ('all', ['minimal', 'mf', '.'])
+    env.Alias ('mf-essential', config_cache)
+    env.Alias ('minimal', ['python', 'lily', 'mf-essential'])
+    env.Alias ('all', ['minimal', 'mf', '.'])
 
 else:
-       env.Alias ('minimal', ['python', 'lily', 'mf'])
-       env.Alias ('all', ['minimal', '.'])
+    env.Alias ('minimal', ['python', 'lily', 'mf'])
+    env.Alias ('all', ['minimal', '.'])
 
 
 # Do we want the doc/web separation?
 env.Alias ('doc',
-          ['minimal',
-           'Documentation',
-           'Documentation/user',
-           'Documentation/topdocs',
-           'Documentation/bibliography',
-           'input'])
+       ['minimal',
+        'Documentation',
+        'Documentation/user',
+        'Documentation/topdocs',
+        'Documentation/bibliography',
+        'input'])
 
 # Without target arguments, do minimal build
 if not COMMAND_LINE_TARGETS:
-       env.Default (['minimal'])
+    env.Default (['minimal'])
 
 # GNU Make rerouting compat:
 env.Alias ('web', 'doc')
 
 
 env.Command (version_hh, '#/VERSION',
-            '$PYTHON ./stepmake/bin/make-version.py VERSION > $TARGET')
+         '$PYTHON ./stepmake/bin/make-version.py VERSION > $TARGET')
 
 # post-config environment update
 env.Append (
-       run_prefix = run_prefix,
-       LILYPONDPREFIX = LILYPONDPREFIX,
-
-       # FIXME: move to lily/SConscript?
-       LIBPATH = [os.path.join (absbuild, 'flower', env['out'])],
-       CPPPATH = [outdir, ],
-       LILYPOND_PATH = ['.',
-                        '$srcdir/input',
-                        '$srcdir/input/regression',
-                        '$srcdir/input/test',
-                        '$srcdir/input/tutorial',
-                        '$srcdir/Documentation/user',
-                        '$absbuild/mf/$out',
-#                       os.path.join (absbuild, 'Documentation',
-#                                     env['out']),
-#                       os.path.join (absbuild, 'Documentation/user',
-#                                     env['out']),
-                        ],
-       MAKEINFO_PATH = ['.', '$srcdir/Documentation/user',
-                        '$absbuild/Documentation/user/$out'],
-       )
+    run_prefix = run_prefix,
+    LILYPONDPREFIX = LILYPONDPREFIX,
+
+    # FIXME: move to lily/SConscript?
+    LIBPATH = [os.path.join (absbuild, 'flower', env['out'])],
+    CPPPATH = [outdir, ],
+    LILYPOND_PATH = ['.',
+             '$srcdir/input',
+             '$srcdir/input/regression',
+             '$srcdir/input/test',
+             '$srcdir/input/tutorial',
+             '$srcdir/Documentation/user',
+             '$absbuild/mf/$out',
+#            os.path.join (absbuild, 'Documentation',
+#                      env['out']),
+#            os.path.join (absbuild, 'Documentation/user',
+#                      env['out']),
+             ],
+    MAKEINFO_PATH = ['.', '$srcdir/Documentation/user',
+             '$absbuild/Documentation/user/$out'],
+    )
 
 #### dist, tar
 def plus (a, b):
-       a + b
+    a + b
 
 def cvs_entry_is_dir (line):
-       return line[0] == 'D' and line[-2] == '/'
+    return line[0] == 'D' and line[-2] == '/'
 
 def cvs_entry_is_file (line):
-       return line[0] == '/' and line[-2] == '/'
+    return line[0] == '/' and line[-2] == '/'
 
 def cvs_dirs (dir):
-       entries = os.path.join (dir, 'CVS/Entries')
-       if not os.path.exists (entries):
-               return []
-       entries = open (entries).readlines ()
-       dir_entries = filter (cvs_entry_is_dir, entries)
-       dirs = map (lambda x: os.path.join (dir, x[2:x[2:].index ('/')+3]),
-                   dir_entries)
-       return dirs + map (cvs_dirs, dirs)
+    entries = os.path.join (dir, 'CVS/Entries')
+    if not os.path.exists (entries):
+        return []
+    entries = open (entries).readlines ()
+    dir_entries = filter (cvs_entry_is_dir, entries)
+    dirs = map (lambda x: os.path.join (dir, x[2:x[2:].index ('/')+3]),
+            dir_entries)
+    return dirs + map (cvs_dirs, dirs)
 
 def cvs_files (dir):
-       entries = os.path.join (dir, 'CVS/Entries')
-       if not os.path.exists (entries):
-               return []
-       entries = open (entries).readlines ()
-       file_entries = filter (cvs_entry_is_file, entries)
-       files = map (lambda x: x[1:x[1:].index ('/')+1], file_entries)
-       return map (lambda x: os.path.join (dir, x), files)
+    entries = os.path.join (dir, 'CVS/Entries')
+    if not os.path.exists (entries):
+        return []
+    entries = open (entries).readlines ()
+    file_entries = filter (cvs_entry_is_file, entries)
+    files = map (lambda x: x[1:x[1:].index ('/')+1], file_entries)
+    return map (lambda x: os.path.join (dir, x), files)
 
 def flatten (tree, lst):
-       if type (tree) == type ([]):
-               for i in tree:
-                       if type (i) == type ([]):
-                               flatten (i, lst)
-                       else:
-                               lst.append (i)
-       return lst
+    if type (tree) == type ([]):
+        for i in tree:
+            if type (i) == type ([]):
+                flatten (i, lst)
+            else:
+                lst.append (i)
+    return lst
 
 if os.path.isdir ('%(srcdir)s/CVS' % vars ()):
-       subdirs = flatten (cvs_dirs ('.'), [])
+    subdirs = flatten (cvs_dirs ('.'), [])
 else:
-       # ugh
-       command = 'cd %(srcdir)s \
-       && find . -name SConscript | sed s@/SConscript@@' % vars ()
-       subdirs = string.split (os.popen (command).read ())
+    # ugh
+    command = 'cd %(srcdir)s \
+    && find . -name SConscript | sed s@/SConscript@@' % vars ()
+    subdirs = string.split (os.popen (command).read ())
 
 if env['fast']\
    and 'all' not in COMMAND_LINE_TARGETS\
@@ -876,16 +874,16 @@ if env['fast']\
    and 'web' not in COMMAND_LINE_TARGETS\
    and 'install' not in COMMAND_LINE_TARGETS\
    and 'clean' not in COMMAND_LINE_TARGETS:
-       subdirs = [ 'python',
-                   'lily',
-                  'flower',
-                  'mf',
-                  ]
+    subdirs = [ 'python',
+            'lily',
+           'flower',
+           'mf',
+           ]
 
 if os.path.isdir ('%(srcdir)s/CVS' % vars ()):
-       src_files = reduce (lambda x, y: x + y, map (cvs_files, subdirs))
+    src_files = reduce (lambda x, y: x + y, map (cvs_files, subdirs))
 else:
-       src_files = ['foobar']
+    src_files = ['foobar']
 
 readme_files = ['AUTHORS', 'README', 'INSTALL', 'NEWS']
 txt_files = map (lambda x: x + '.txt', readme_files)
@@ -895,90 +893,90 @@ txt_files = map (lambda x: x + '.txt', readme_files)
 # speeds up build by +- 5% 
 # 
 if not env['fast']:
-       foo = map (lambda x: env.TXT (x + '.txt',
-                                     os.path.join ('Documentation/topdocs', x)),
-                  readme_files)
-       tar_base = package.name + '-' + version
-       tar_name = tar_base + '.tar.gz'
-       ball_prefix = os.path.join (outdir, tar_base)
-       tar_ball = os.path.join (outdir, tar_name)
-
-       dist_files = src_files + txt_files
-       ball_files = map (lambda x: os.path.join (ball_prefix, x), dist_files)
-       map (lambda x: env.Depends (tar_ball, x), ball_files)
-       map (lambda x: env.Command (os.path.join (ball_prefix, x), x,
-                                   'ln $SOURCE $TARGET'), dist_files)
-       tar = env.Command (tar_ball, src_files,
-                          ['rm -f $$(find $TARGET.dir -name .sconsign)',
-                           'tar czf $TARGET -C $TARGET.dir %s' % tar_base,])
-       env.Alias ('tar', tar)
-
-       dist_ball = os.path.join (package.release_dir, tar_name)
-       env.Command (dist_ball, tar_ball,
-                    'if [ -e $SOURCE -a -e $TARGET ]; then rm $TARGET; fi;' \
-                    + 'ln $SOURCE $TARGET')
-       env.Depends ('dist', dist_ball)
-       patch_name = os.path.join (outdir, tar_base + '.diff.gz')
-       patch = env.PATCH (patch_name, tar_ball)
-       env.Depends (patch_name, dist_ball)
-       env.Alias ('release', patch)
+    foo = map (lambda x: env.TXT (x + '.txt',
+                      os.path.join ('Documentation/topdocs', x)),
+           readme_files)
+    tar_base = package.name + '-' + version
+    tar_name = tar_base + '.tar.gz'
+    ball_prefix = os.path.join (outdir, tar_base)
+    tar_ball = os.path.join (outdir, tar_name)
+
+    dist_files = src_files + txt_files
+    ball_files = map (lambda x: os.path.join (ball_prefix, x), dist_files)
+    map (lambda x: env.Depends (tar_ball, x), ball_files)
+    map (lambda x: env.Command (os.path.join (ball_prefix, x), x,
+                    'ln $SOURCE $TARGET'), dist_files)
+    tar = env.Command (tar_ball, src_files,
+               ['rm -f $$(find $TARGET.dir -name .sconsign)',
+                'tar czf $TARGET -C $TARGET.dir %s' % tar_base,])
+    env.Alias ('tar', tar)
+
+    dist_ball = os.path.join (package.release_dir, tar_name)
+    env.Command (dist_ball, tar_ball,
+             'if [ -e $SOURCE -a -e $TARGET ]; then rm $TARGET; fi;' \
+             + 'ln $SOURCE $TARGET')
+    env.Depends ('dist', dist_ball)
+    patch_name = os.path.join (outdir, tar_base + '.diff.gz')
+    patch = env.PATCH (patch_name, tar_ball)
+    env.Depends (patch_name, dist_ball)
+    env.Alias ('release', patch)
 
 #### web
 if not env['fast']:
-       web_base = os.path.join (outdir, 'web')
-       web_ball = web_base + '.tar.gz'
-       env['footify'] = 'MAILADDRESS=bug-lilypond@gnu.org $PYTHON stepmake/bin/add-html-footer.py --name=lilypond --version=$TOPLEVEL_VERSION'
-       web_ext = ['.html', '.ly', '.midi', '.pdf', '.png', '.ps.gz', '.txt',]
-       web_path = '-path "*/$out/*"' + string.join (web_ext, ' -or -path "*/$out/*"') + '-or -type l'
-       env['web_path'] = web_path
-       web_list = os.path.join (outdir, 'weblist')
-       # compatible make heritits
-       # fixme: generate in $outdir is cwd/builddir
-       env.Command (web_list,
-                    ## Adding 'doc' dependency is correct, but takes
-                    ## > 5min extra if you have a peder :-)
-                    #'doc',
-                    
-                    '#/VERSION',
-                    ['$PYTHON buildscripts/mutopia-index.py -o examples.html ./',
-                     'cd $absbuild && $footify $$(find . -name "*.html" -print)',
-                     'cd $absbuild && rm -f $$(find . -name "*.html~" -print)',
-                     'cd $absbuild && find Documentation input $web_path \
-                     > $TARGET',
-                     '''echo '<META HTTP-EQUIV="refresh" content="0;URL=Documentation/out-www/index.html">' > $absbuild/index.html''',
-                     '''echo '<html><body>Redirecting to the documentation index...</body></html>' >> $absbuild/index.html''',
-                     'cd $absbuild && ls *.html >> $TARGET',])
-       env.Command (web_ball, web_list,
-                    ['cat $SOURCE | tar -C $absbuild -czf $TARGET -T -',])
-       #env.Alias ('web', web_ball)
-       www_base = os.path.join (outdir, 'www')
-       www_ball = www_base + '.tar.gz'
-       env.Command (www_ball, web_ball,
-                    ['rm -rf $out/tmp',
-                     'mkdir -p $absbuild/$out/tmp',
-                     'tar -C $absbuild/$out/tmp -xzf $SOURCE',
-                     'cd $absbuild/$out/tmp && for i in $$(find . -name "$out"); '
-                     + ' do mv $$i $$(dirname $$i)/out-www; done',
-                     'tar -C $absbuild/$out/tmp -czf $TARGET .'])
-       env.Alias ('web', www_ball)
+    web_base = os.path.join (outdir, 'web')
+    web_ball = web_base + '.tar.gz'
+    env['footify'] = 'MAILADDRESS=bug-lilypond@gnu.org $PYTHON stepmake/bin/add-html-footer.py --name=lilypond --version=$TOPLEVEL_VERSION'
+    web_ext = ['.html', '.ly', '.midi', '.pdf', '.png', '.ps.gz', '.txt',]
+    web_path = '-path "*/$out/*"' + string.join (web_ext, ' -or -path "*/$out/*"') + '-or -type l'
+    env['web_path'] = web_path
+    web_list = os.path.join (outdir, 'weblist')
+    # compatible make heritits
+    # fixme: generate in $outdir is cwd/builddir
+    env.Command (web_list,
+             ## Adding 'doc' dependency is correct, but takes
+             ## > 5min extra if you have a peder :-)
+             #'doc',
+             
+             '#/VERSION',
+             ['$PYTHON buildscripts/mutopia-index.py -o examples.html ./',
+              'cd $absbuild && $footify $$(find . -name "*.html" -print)',
+              'cd $absbuild && rm -f $$(find . -name "*.html~" -print)',
+              'cd $absbuild && find Documentation input $web_path \
+              > $TARGET',
+              '''echo '<META HTTP-EQUIV="refresh" content="0;URL=Documentation/out-www/index.html">' > $absbuild/index.html''',
+              '''echo '<html><body>Redirecting to the documentation index...</body></html>' >> $absbuild/index.html''',
+              'cd $absbuild && ls *.html >> $TARGET',])
+    env.Command (web_ball, web_list,
+             ['cat $SOURCE | tar -C $absbuild -czf $TARGET -T -',])
+    #env.Alias ('web', web_ball)
+    www_base = os.path.join (outdir, 'www')
+    www_ball = www_base + '.tar.gz'
+    env.Command (www_ball, web_ball,
+             ['rm -rf $out/tmp',
+              'mkdir -p $absbuild/$out/tmp',
+              'tar -C $absbuild/$out/tmp -xzf $SOURCE',
+              'cd $absbuild/$out/tmp && for i in $$(find . -name "$out"); '
+              + ' do mv $$i $$(dirname $$i)/out-www; done',
+              'tar -C $absbuild/$out/tmp -czf $TARGET .'])
+    env.Alias ('web', www_ball)
 
 #### tags
 env.Append (
-       ETAGSFLAGS = """--regex='{c++}/^LY_DEFINE *(\([^,]+\)/\\1/' \
-       --regex='{c++}/^LY_DEFINE *([^"]*"\([^"]+\)"/\\1/'""")
+    ETAGSFLAGS = """--regex='{c++}/^LY_DEFINE *(\([^,]+\)/\\1/' \
+    --regex='{c++}/^LY_DEFINE *([^"]*"\([^"]+\)"/\\1/'""")
 code_ext = ['.cc', '.hh', '.scm', '.tcc',]
 env.Command ('TAGS', filter (lambda x: os.path.splitext (x)[1] in code_ext,
-                            src_files),
-            'etags $ETAGSFLAGS $SOURCES')
+                 src_files),
+         'etags $ETAGSFLAGS $SOURCES')
 
 # Note: SConscripts are only needed in directories where something needs
 # to be done, building or installing
 for d in subdirs:
-       if os.path.exists (os.path.join (d, 'SConscript')):
-               b = os.path.join (env['build'], d, env['out'])
-               # Support clean sourcetree build (--srcdir build)
-               # and ./out build.
-               if os.path.abspath (b) != os.path.abspath (d):
-                       env.BuildDir (b, d, duplicate = 0)
-                       SConscript (os.path.join (b, 'SConscript'))
+    if os.path.exists (os.path.join (d, 'SConscript')):
+        b = os.path.join (env['build'], d, env['out'])
+        # Support clean sourcetree build (--srcdir build)
+        # and ./out build.
+        if os.path.abspath (b) != os.path.abspath (d):
+            env.BuildDir (b, d, duplicate = 0)
+        SConscript (os.path.join (b, 'SConscript'))
 
diff --git a/THANKS b/THANKS
index d054f5bfa5ed84f53c69cc3de235f4676fd130d2..ddca7b2708208d7d9c514030f58bd60eeb5b8b10 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -66,6 +66,7 @@ Daniel Tonda Castillo
 David Rogers
 Francisco Vila
 Harald Wellmann
+Henrik Frisk
 Johannes Schindelin
 J. Leung
 Karim Haddad
@@ -93,8 +94,10 @@ Sietse Brouwer
 Stephen Carter
 Stephen Kress
 Thies Albrecht
+Toine Schreurs
 Trent Johnston
 Trevor Bača
+Trevor Daniels
 Vaclav Smilauer
 Vicente Solsona Dellá
 Werner Lemberg
diff --git a/VERSION b/VERSION
index 597888e2cd739367f73307a63a8c39ba044d5070..b60133ba581e604e426f2b8c1f1e39fb7880d573 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,6 +1,6 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=2
 MINOR_VERSION=9
-PATCH_LEVEL=27
+PATCH_LEVEL=28
 MY_PATCH_LEVEL=
 
diff --git a/buildscripts/git-update-changelog.py b/buildscripts/git-update-changelog.py
new file mode 100644 (file)
index 0000000..d1492cf
--- /dev/null
@@ -0,0 +1,201 @@
+#!/usr/bin/python
+
+import sys
+import time
+import os
+import re
+import optparse
+
+def read_pipe (x):
+    print 'pipe', x
+    return os.popen (x).read ()
+def system (x):
+    print x
+    return os.system (x)
+    
+class PatchFailed(Exception):
+    pass
+
+class Commit:
+    def __init__ (self, dict):
+        for v in ('message',
+                  'date',
+                  'author',
+                  'committish'):
+            self.__dict__[v] = dict[v]
+        
+        self.date = ' '.join  (self.date.split (' ')[:-1])
+        self.date = time.strptime (self.date, '%a %b %d %H:%M:%S %Y')
+        
+        m = re.search ('(.*)<(.*)>', self.author)
+        self.email = m.group (2).strip ()
+        self.name = m.group (1).strip ()
+        self.diff = read_pipe ('git show %s' % self.committish)
+        
+    def touched_files (self):
+        files = []
+        def note_file (x):
+            files.append (x.group (1))
+            return ''
+
+        re.sub ('\n--- a/([^\n]+)\n',
+                note_file, self.diff)
+        re.sub('\n--- /dev/null\n\\+\\+\\+ b/([^\n]+)',
+               note_file, self.diff)
+
+        return files
+
+    def apply (self, add_del_files):
+        def note_add_file (x):
+            add_del_files.append (('add', x.group (1)))
+            return ''
+        
+        def note_del_file (x):
+            add_del_files.append (('del', x.group (1)))
+            return ''
+        
+        re.sub('\n--- /dev/null\n\\+\\+\\+ b/([^\n]+)',
+               note_add_file, self.diff)
+        
+        re.sub('\n--- a/([^\n]+)\n\\+\\+\\+ /dev/null',
+               note_del_file, self.diff)
+
+        p = os.popen ('patch -f -p1 ', 'w')
+        p.write (self.diff)
+
+        if p.close ():
+            raise PatchFailed, self.committish
+        
+    
+def parse_commit_log (log):
+    committish = re.search ('^([^\n]+)', log).group (1)
+    author = re.search ('\nAuthor:\s+([^\n]+)', log).group (1)
+    date_match = re.search ('\nDate:\s+([^\n]+)', log)
+    date = date_match.group (1)
+    log = log[date_match.end (1):]
+
+    message = re.sub ("\n *", '', log)
+    message = message.strip ()
+
+    c = Commit (locals ())
+    return c
+
+def parse_add_changes (from_commit):
+    
+    log = read_pipe ('git log %(from_commit)s..' % locals ())
+
+    log = log[len ('commit '):]
+    log = log.strip ()
+
+    if not log:
+        return []
+        
+    commits = map (parse_commit_log, re.split ('\ncommit ', log))
+    commits.reverse ()
+    
+    return commits
+
+
+def header (commit):
+    return '%d-%02d-%02d  %s  <%s>\n' % (commit.date[:3] + (commit.name, commit.email))
+
+def changelog_body (commit):
+
+    s += ''.join ('\n* %s: ' % f for f in commit.touched_files())
+    s += '\n' + commit.message
+    
+    s = s.replace ('\n', '\n\t')
+    s += '\n'
+    return s
+
+def main ():
+    p = optparse.OptionParser (usage="usage git-update-changelog.py [options]",
+                               description="""
+Apply GIT patches and update change log.
+
+Run this file from the CVS directory, with --git-dir 
+""")
+    p.add_option ("--start",
+                  action='store',
+                  default='',
+                  dest="start",
+                  help="start of log messages to merge.")
+    
+    p.add_option ("--git-dir",
+                  action='store',
+                  default='',
+                  dest="gitdir",
+                  help="the GIT directory to merge.")
+
+    (options, args) = p.parse_args ()
+    
+    log = open ('ChangeLog').read ()
+
+    if not options.start:
+        print 'Must set start committish.'  
+        sys.exit (1)
+
+    if options.gitdir:
+        os.environ['GIT_DIR'] = options.gitdir
+     
+    commits = parse_add_changes (options.start)
+    if not commits:
+        return
+    
+    new_log = ''
+    last_commit = None
+
+    first = header (commits[0]) + '\n'
+    if first == log[:len (first)]:
+        log = log[len (first):]
+
+    file_adddel = []
+    final_log = ''
+    
+    for c in commits:
+        print 'patch ', c.committish
+        try:
+            c.apply (file_adddel)
+        except PatchFailed:
+            break
+        
+        if c.touched_files () == ['ChangeLog']:
+            continue
+        
+        if (last_commit
+            and c.author != last_commit.author
+            and c.date[:3] != last_commit.date[:3]):
+
+            new_log += header (last_commit)
+
+        new_log = changelog_body (c)  + new_log
+        last_commit = c
+
+        final_log += self.message + '\n'
+        
+        
+    for (op, f) in file_adddel:
+        if op == 'del':
+            system ('cvs remove %(f)s' % locals ())
+        if op == 'add':
+            system ('cvs add %(f)s' % locals ())
+
+    new_log = header (last_commit) + new_log + '\n'
+
+    log = new_log + log
+
+    try:
+        os.unlink ('ChangeLog~')
+    except OSError:
+        pass
+    
+    os.rename ('ChangeLog', 'ChangeLog~')
+    open ('ChangeLog', 'w').write (log)
+
+    open ('.msg','w').write (final_log)
+    print 'cvs commit -F .msg '
+    
+main ()
+    
+    
+    
diff --git a/elisp/emacsclient.patch b/elisp/emacsclient.patch
new file mode 100644 (file)
index 0000000..e2df3ed
--- /dev/null
@@ -0,0 +1,148 @@
+diff -ur emacs-20.5/lib-src/ChangeLog emacs-hanwen/lib-src/ChangeLog
+--- emacs-20.5/lib-src/ChangeLog       Fri Dec 10 17:25:36 1999
++++ emacs-hanwen/lib-src/ChangeLog     Sun Jul 16 23:00:54 2000
+@@ -1,3 +1,7 @@
++2000-07-16  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
++      
++      * emacsclient.c: Added support for +LINE:COLUMN style arguments.
++
+ 1999-12-04  Gerd Moellmann  <gerd@gnu.org>
+       * Version 20.5 released.
+Only in emacs-hanwen/lib-src: ChangeLog~
+diff -ur emacs-20.5/lib-src/emacsclient.c emacs-hanwen/lib-src/emacsclient.c
+--- emacs-20.5/lib-src/emacsclient.c   Wed Nov  3 14:12:46 1999
++++ emacs-hanwen/lib-src/emacsclient.c Sun Jul 16 22:10:35 2000
+@@ -27,6 +27,7 @@
+ #undef close
+ #undef signal
++#include <ctype.h> 
+ #include <stdio.h>
+ #include <getopt.h>
+ #ifdef STDC_HEADERS
+@@ -323,7 +324,7 @@
+       if (*argv[i] == '+')
+       {
+         char *p = argv[i] + 1;
+-        while (*p >= '0' && *p <= '9') p++;
++        while (isdigit (*p) || *p == ':') p++;
+         if (*p != 0)
+           fprintf (out, "%s/", quote_file_name (cwd));
+       }
+@@ -466,7 +467,8 @@
+       if (*modified_arg == '+')
+       {
+         char *p = modified_arg + 1;
+-        while (*p >= '0' && *p <= '9') p++;
++        while (isdigit (*p) || *p == ':')
++          p++;
+         if (*p != 0)
+           need_cwd = 1;
+       }
+Only in emacs-hanwen/lib-src: emacsclient.c~
+diff -ur emacs-20.5/lib-src/emacsserver.c emacs-hanwen/lib-src/emacsserver.c
+--- emacs-20.5/lib-src/emacsserver.c   Mon Feb 22 21:44:14 1999
++++ emacs-hanwen/lib-src/emacsserver.c Sun Jul 16 22:09:52 2000
+@@ -61,6 +61,7 @@
+ #include <errno.h>
+ #include <sys/stat.h>
++
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
+Only in emacs-hanwen/lib-src: emacsserver.c~
+Only in emacs-hanwen/lib-src: suf.el~
+diff -ur emacs-20.5/lisp/ChangeLog emacs-hanwen/lisp/ChangeLog
+--- emacs-20.5/lisp/ChangeLog  Fri Dec 10 17:25:02 1999
++++ emacs-hanwen/lisp/ChangeLog        Sun Jul 16 23:00:04 2000
+@@ -1,3 +1,8 @@
++2000-07-16  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
++
++      * server.el (server-process-filter,server-visit-files): add support for "LINE:COLUMN"
++      style emacsclient calls.
++
+ 1999-12-04  Gerd Moellmann  <gerd@gnu.org>
+       * Version 20.5 released.
+Only in emacs-hanwen/lisp: ChangeLog~
+diff -ur emacs-20.5/lisp/server.el emacs-hanwen/lisp/server.el
+--- emacs-20.5/lisp/server.el  Sat Mar 13 01:20:25 1999
++++ emacs-hanwen/lisp/server.el        Sun Jul 16 23:04:41 2000
+@@ -215,7 +215,8 @@
+                                 default-file-name-coding-system)))
+         client nowait
+         (files nil)
+-        (lineno 1))
++        (lineno 1)
++        (columnno 0))
+       ;; Remove this line from STRING.
+       (setq string (substring string (match-end 0)))    
+       (if (string-match "^Error: " request)
+@@ -232,9 +233,17 @@
+                 (setq request (substring request (match-end 0)))
+                 (if (string-match "\\`-nowait" arg)
+                     (setq nowait t)
+-                  (if (string-match "\\`\\+[0-9]+\\'" arg)
+-                      ;; ARG is a line number option.
+-                      (setq lineno (read (substring arg 1)))
++                  (cond
++                      ;; ARG is a line number option.
++                   ((string-match "\\`\\+[0-9]+\\'" arg)
++                    (setq lineno (read (substring arg 1)))
++                    )
++                   ;; ARG is line number / column option. 
++                   ((string-match "\\`\\+[0-9]+:[0-9]+\\'" arg)
++                    (setq lineno (read (substring arg 1 (string-match ":" arg))))
++                    (setq columnno (read (substring arg (+ 1 (string-match ":" arg)))))
++                    )
++                   (t
+                     ;; ARG is a file name.
+                     ;; Collapse multiple slashes to single slashes.
+                     (setq arg (command-line-normalize-file-name arg))
+@@ -253,9 +262,11 @@
+                     (if coding-system
+                         (setq arg (decode-coding-string arg coding-system)))
+                     (setq files
+-                          (cons (list arg lineno)
++                          (cons (list arg lineno columnno)
+                                 files))
+-                    (setq lineno 1)))))
++                    (setq lineno 1)
++                    (setq columnno 0)
++                    )))))
+             (server-visit-files files client nowait)
+             ;; CLIENT is now a list (CLIENTNUM BUFFERS...)
+             (or nowait
+@@ -267,9 +278,11 @@
+   ;; Save for later any partial line that remains.
+   (setq server-previous-string string))
++
++
+ (defun server-visit-files (files client &optional nowait)
+   "Finds FILES and returns the list CLIENT with the buffers nconc'd.
+-FILES is an alist whose elements are (FILENAME LINENUMBER).
++FILES is an alist whose elements are (FILENAME LINENUMBER COLUMNNUMBER).
+ NOWAIT non-nil means this client is not waiting for the results,
+ so don't mark these buffers specially, just visit them normally."
+   ;; Bind last-nonmenu-event to force use of keyboard, not mouse, for queries.
+@@ -297,6 +310,7 @@
+             (set-buffer (find-file-noselect filen))
+             (run-hooks 'server-visit-hook)))
+         (goto-line (nth 1 (car files)))
++        (move-to-column (nth 2 (car files)))
+         (if (not nowait)
+             (setq server-buffer-clients
+                   (cons (car client) server-buffer-clients)))
+@@ -304,6 +318,7 @@
+         (setq files (cdr files)))
+       (set-buffer obuf))
+     (nconc client client-record)))
++
\f
+ (defun server-buffer-done (buffer &optional for-killing)
+   "Mark BUFFER as \"done\" for its client(s).
+Only in emacs-hanwen/lisp: server.el.orig
+Only in emacs-hanwen/lisp: server.el~
diff --git a/elisp/server.el.patch b/elisp/server.el.patch
new file mode 100644 (file)
index 0000000..fb3c59f
--- /dev/null
@@ -0,0 +1,165 @@
+From: Jan Nieuwenhuizen <janneke@gnu.org>
+Subject: Bugfix and feature for server.el
+To: emacs-devel@gnu.org
+cc: Han-Wen <hanwen@cs.uu.nl>
+Date: Sat, 10 Aug 2002 17:46:22 +0200
+Organization: Jan at Peder
+
+
+Find the following fix attached.  We had a problem with our
+application that uses `emacslient --no-wait' to edit input files.
+
+Emacs-21.2 (unlike previous versions), when invoked through
+`emacsclient --no-wait', wants to revert buffers whenever they have
+been edited, and does allow any editing, which is annoying.  When
+invoking with --no-wait, we are typically `moving around' and editing
+the same file all the time; and do not want to revert.
+
+When it does revert the buffer, it does not use the column argument of
+emacsclient; this is now fixed.
+
+Greetings,
+Han-Wen and Jan.
+
+
+Btw: this message was sent to bug-gnu-emacs about three weeks ago, but
+     that list seems to be slightly foobarred?  We both have current
+     disclaimers with GNU.
+
+
+ChangeLog:
+2002-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * server.el (server-process-filter): Cleanup stray if.  Add
+       'no-revert to file list entry when emacsclient was invoked with
+       '--no-wait'.
+       (server-visit-files): New function goto-line-column.  Accept
+       'no-revert option.  Bugfix: also goto column when reverting
+       buffer.
+
+--- server.el.~1.78.~  2001-12-18 17:42:38.000000000 +0100
++++ server.el  2002-08-10 17:32:10.000000000 +0200
+@@ -251,40 +251,43 @@ Prefix arg means just kill any existing 
+                      (substring request (match-beginning 0) (1- (match-end 0))))
+                     (pos 0))
+                 (setq request (substring request (match-end 0)))
+-                (if (string-match "\\`-nowait" arg)
+-                    (setq nowait t)
+-                  (cond
+-                      ;; ARG is a line number option.
+-                   ((string-match "\\`\\+[0-9]+\\'" arg)
++                (cond
++                 ((string-match "\\`-nowait" arg)
++                  (setq nowait t))
++                 ;; ARG is a line number option.
++                 ((string-match "\\`\\+[0-9]+\\'" arg)
+                     (setq lineno (string-to-int (substring arg 1))))
+-                   ;; ARG is line number:column option. 
+-                   ((string-match "\\`+\\([0-9]+\\):\\([0-9]+\\)\\'" arg)
+-                    (setq lineno (string-to-int (match-string 1 arg))
+-                          columnno (string-to-int (match-string 2 arg))))
+-                   (t
+-                    ;; ARG is a file name.
+-                    ;; Collapse multiple slashes to single slashes.
+-                    (setq arg (command-line-normalize-file-name arg))
+-                    ;; Undo the quoting that emacsclient does
+-                    ;; for certain special characters.
+-                    (while (string-match "&." arg pos)
+-                      (setq pos (1+ (match-beginning 0)))
+-                      (let ((nextchar (aref arg pos)))
+-                        (cond ((= nextchar ?&)
+-                               (setq arg (replace-match "&" t t arg)))
+-                              ((= nextchar ?-)
+-                               (setq arg (replace-match "-" t t arg)))
+-                              (t
+-                               (setq arg (replace-match " " t t arg))))))
+-                    ;; Now decode the file name if necessary.
+-                    (if coding-system
+-                        (setq arg (decode-coding-string arg coding-system)))
+-                    (setq files
+-                          (cons (list arg lineno columnno)
+-                                files))
+-                    (setq lineno 1)
+-                    (setq columnno 0))))))
+-            (run-hooks 'pre-command-hook)
++                 ;; ARG is line number:column option. 
++                 ((string-match "\\`+\\([0-9]+\\):\\([0-9]+\\)\\'" arg)
++                  (setq lineno (string-to-int (match-string 1 arg))
++                        columnno (string-to-int (match-string 2 arg))))
++                 (t
++                  ;; ARG is a file name.
++                  ;; Collapse multiple slashes to single slashes.
++                  (setq arg (command-line-normalize-file-name arg))
++                  ;; Undo the quoting that emacsclient does
++                  ;; for certain special characters.
++                  (while (string-match "&." arg pos)
++                    (setq pos (1+ (match-beginning 0)))
++                    (let ((nextchar (aref arg pos)))
++                      (cond ((= nextchar ?&)
++                             (setq arg (replace-match "&" t t arg)))
++                            ((= nextchar ?-)
++                             (setq arg (replace-match "-" t t arg)))
++                            (t
++                             (setq arg (replace-match " " t t arg))))))
++                  ;; Now decode the file name if necessary.
++                  (if coding-system
++                      (setq arg (decode-coding-string arg coding-system)))
++                  (setq files
++                        ;; When invoking emacsclient with --no-wait, we are
++                        ;; typically `moving around' and editing the same file;
++                        ;; and do not want to revert.  Should make --no-revert
++                        ;; option for emacsclient?
++                        (cons (list arg lineno columnno (if nowait 'no-revert nil))
++                              files))
++                  (setq lineno 1)
++                  (setq columnno 0)))))
+             (server-visit-files files client nowait)
+             (run-hooks 'post-command-hook)
+             ;; CLIENT is now a list (CLIENTNUM BUFFERS...)
+@@ -309,6 +312,13 @@ Prefix arg means just kill any existing 
+ FILES is an alist whose elements are (FILENAME LINENUMBER COLUMNNUMBER).
+ NOWAIT non-nil means this client is not waiting for the results,
+ so don't mark these buffers specially, just visit them normally."
++
++  (defun goto-line-column (file-line-col)
++    (goto-line (nth 1 file-line-col))
++    (let ((column-number (nth 2 file-line-col)))
++      (if (> column-number 0)
++        (move-to-column (1- column-number)))))
++  
+   ;; Bind last-nonmenu-event to force use of keyboard, not mouse, for queries.
+   (let (client-record (last-nonmenu-event t) (obuf (current-buffer)))
+     ;; Restore the current buffer afterward, but not using save-excursion,
+@@ -322,7 +332,8 @@ so don't mark these buffers specially, j
+         (let* ((filen (car (car files)))
+                (obuf (get-file-buffer filen)))
+           (push filen file-name-history)
+-          (if (and obuf (set-buffer obuf))
++          (if (and obuf (set-buffer obuf)
++                   (not (memq 'no-revert (car files))))
+               (progn
+                 (cond ((file-exists-p filen)
+                        (if (or (not (verify-visited-file-modtime obuf))
+@@ -335,12 +346,9 @@ so don't mark these buffers specially, j
+                                     ", write buffer to file? "))
+                            (write-file filen))))
+                 (setq server-existing-buffer t)
+-                (goto-line (nth 1 (car files))))
++                (goto-line-column (car files)))
+             (set-buffer (find-file-noselect filen))
+-            (goto-line (nth 1 (car files)))
+-            (let ((column-number (nth 2 (car files))))
+-              (when (> column-number 0)
+-                (move-to-column (1- column-number))))
++            (goto-line-column (car files))
+             (run-hooks 'server-visit-hook)))
+         (if (not nowait)
+             (setq server-buffer-clients
+
+-- 
+Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond - The music typesetter
+http://www.xs4all.nl/~jantien       | http://www.lilypond.org
+
+
+
+
diff --git a/emacsclient.patch b/emacsclient.patch
deleted file mode 100644 (file)
index e2df3ed..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-diff -ur emacs-20.5/lib-src/ChangeLog emacs-hanwen/lib-src/ChangeLog
---- emacs-20.5/lib-src/ChangeLog       Fri Dec 10 17:25:36 1999
-+++ emacs-hanwen/lib-src/ChangeLog     Sun Jul 16 23:00:54 2000
-@@ -1,3 +1,7 @@
-+2000-07-16  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
-+      
-+      * emacsclient.c: Added support for +LINE:COLUMN style arguments.
-+
- 1999-12-04  Gerd Moellmann  <gerd@gnu.org>
-       * Version 20.5 released.
-Only in emacs-hanwen/lib-src: ChangeLog~
-diff -ur emacs-20.5/lib-src/emacsclient.c emacs-hanwen/lib-src/emacsclient.c
---- emacs-20.5/lib-src/emacsclient.c   Wed Nov  3 14:12:46 1999
-+++ emacs-hanwen/lib-src/emacsclient.c Sun Jul 16 22:10:35 2000
-@@ -27,6 +27,7 @@
- #undef close
- #undef signal
-+#include <ctype.h> 
- #include <stdio.h>
- #include <getopt.h>
- #ifdef STDC_HEADERS
-@@ -323,7 +324,7 @@
-       if (*argv[i] == '+')
-       {
-         char *p = argv[i] + 1;
--        while (*p >= '0' && *p <= '9') p++;
-+        while (isdigit (*p) || *p == ':') p++;
-         if (*p != 0)
-           fprintf (out, "%s/", quote_file_name (cwd));
-       }
-@@ -466,7 +467,8 @@
-       if (*modified_arg == '+')
-       {
-         char *p = modified_arg + 1;
--        while (*p >= '0' && *p <= '9') p++;
-+        while (isdigit (*p) || *p == ':')
-+          p++;
-         if (*p != 0)
-           need_cwd = 1;
-       }
-Only in emacs-hanwen/lib-src: emacsclient.c~
-diff -ur emacs-20.5/lib-src/emacsserver.c emacs-hanwen/lib-src/emacsserver.c
---- emacs-20.5/lib-src/emacsserver.c   Mon Feb 22 21:44:14 1999
-+++ emacs-hanwen/lib-src/emacsserver.c Sun Jul 16 22:09:52 2000
-@@ -61,6 +61,7 @@
- #include <errno.h>
- #include <sys/stat.h>
-+
- #ifdef HAVE_UNISTD_H
- #include <unistd.h>
- #endif
-Only in emacs-hanwen/lib-src: emacsserver.c~
-Only in emacs-hanwen/lib-src: suf.el~
-diff -ur emacs-20.5/lisp/ChangeLog emacs-hanwen/lisp/ChangeLog
---- emacs-20.5/lisp/ChangeLog  Fri Dec 10 17:25:02 1999
-+++ emacs-hanwen/lisp/ChangeLog        Sun Jul 16 23:00:04 2000
-@@ -1,3 +1,8 @@
-+2000-07-16  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
-+
-+      * server.el (server-process-filter,server-visit-files): add support for "LINE:COLUMN"
-+      style emacsclient calls.
-+
- 1999-12-04  Gerd Moellmann  <gerd@gnu.org>
-       * Version 20.5 released.
-Only in emacs-hanwen/lisp: ChangeLog~
-diff -ur emacs-20.5/lisp/server.el emacs-hanwen/lisp/server.el
---- emacs-20.5/lisp/server.el  Sat Mar 13 01:20:25 1999
-+++ emacs-hanwen/lisp/server.el        Sun Jul 16 23:04:41 2000
-@@ -215,7 +215,8 @@
-                                 default-file-name-coding-system)))
-         client nowait
-         (files nil)
--        (lineno 1))
-+        (lineno 1)
-+        (columnno 0))
-       ;; Remove this line from STRING.
-       (setq string (substring string (match-end 0)))    
-       (if (string-match "^Error: " request)
-@@ -232,9 +233,17 @@
-                 (setq request (substring request (match-end 0)))
-                 (if (string-match "\\`-nowait" arg)
-                     (setq nowait t)
--                  (if (string-match "\\`\\+[0-9]+\\'" arg)
--                      ;; ARG is a line number option.
--                      (setq lineno (read (substring arg 1)))
-+                  (cond
-+                      ;; ARG is a line number option.
-+                   ((string-match "\\`\\+[0-9]+\\'" arg)
-+                    (setq lineno (read (substring arg 1)))
-+                    )
-+                   ;; ARG is line number / column option. 
-+                   ((string-match "\\`\\+[0-9]+:[0-9]+\\'" arg)
-+                    (setq lineno (read (substring arg 1 (string-match ":" arg))))
-+                    (setq columnno (read (substring arg (+ 1 (string-match ":" arg)))))
-+                    )
-+                   (t
-                     ;; ARG is a file name.
-                     ;; Collapse multiple slashes to single slashes.
-                     (setq arg (command-line-normalize-file-name arg))
-@@ -253,9 +262,11 @@
-                     (if coding-system
-                         (setq arg (decode-coding-string arg coding-system)))
-                     (setq files
--                          (cons (list arg lineno)
-+                          (cons (list arg lineno columnno)
-                                 files))
--                    (setq lineno 1)))))
-+                    (setq lineno 1)
-+                    (setq columnno 0)
-+                    )))))
-             (server-visit-files files client nowait)
-             ;; CLIENT is now a list (CLIENTNUM BUFFERS...)
-             (or nowait
-@@ -267,9 +278,11 @@
-   ;; Save for later any partial line that remains.
-   (setq server-previous-string string))
-+
-+
- (defun server-visit-files (files client &optional nowait)
-   "Finds FILES and returns the list CLIENT with the buffers nconc'd.
--FILES is an alist whose elements are (FILENAME LINENUMBER).
-+FILES is an alist whose elements are (FILENAME LINENUMBER COLUMNNUMBER).
- NOWAIT non-nil means this client is not waiting for the results,
- so don't mark these buffers specially, just visit them normally."
-   ;; Bind last-nonmenu-event to force use of keyboard, not mouse, for queries.
-@@ -297,6 +310,7 @@
-             (set-buffer (find-file-noselect filen))
-             (run-hooks 'server-visit-hook)))
-         (goto-line (nth 1 (car files)))
-+        (move-to-column (nth 2 (car files)))
-         (if (not nowait)
-             (setq server-buffer-clients
-                   (cons (car client) server-buffer-clients)))
-@@ -304,6 +318,7 @@
-         (setq files (cdr files)))
-       (set-buffer obuf))
-     (nconc client client-record)))
-+
\f
- (defun server-buffer-done (buffer &optional for-killing)
-   "Mark BUFFER as \"done\" for its client(s).
-Only in emacs-hanwen/lisp: server.el.orig
-Only in emacs-hanwen/lisp: server.el~
index a3a800a86ecf62295c620ac54ca2a83ecca38833..c7e0abd4a0bf48686578c1cdcea4dd396dd1842a 100644 (file)
@@ -1,13 +1,24 @@
 # -*-python-*-
 
+name = 'flower'
+outdir = Dir ('.').path
+
 Import ('env', 'src_glob')
 sources = src_glob ('*.cc')
-includes = src_glob ('include/*.hh')
-outdir = Dir ('.').path
 
-name = 'flower'
 e = env.Copy ()
 e.Append (CPPPATH = ['#/flower/include', outdir,])
+includes = src_glob ('include/*.hh')
+
+if 1: # ut
+       def test_source (x):
+               x.startswith ('test')
+       test_sources = filter (lambda x: x.startswith ('test'), sources)
+       sources = filter (lambda x: not x.startswith ('test'), sources)
+       ee = e.Copy ()
+       ee.Append (LIBS = [name, 'boost_unit_test_framework'])
+       test = ee.Program ('test' + name, test_sources)
+
 if env['static']:
        e.Library (name, sources) 
 if not env['static'] or env['shared']:
diff --git a/flower/include/GNUmakefile b/flower/include/GNUmakefile
new file mode 100644 (file)
index 0000000..3ac9dd0
--- /dev/null
@@ -0,0 +1,10 @@
+# flower/lib/include/Makefile
+
+
+depth = ../..
+
+STEPMAKE_TEMPLATES=c++
+
+include $(depth)/make/stepmake.make
+
+
index f6f229128074b8a5f8413a24149d3dc734cf05d6..8aa5d3a63b993bb39578fb7382961ef7ad4ad99d 100644 (file)
@@ -6,7 +6,11 @@
 
 #include "polynomial.hh"
 
+#include "warn.hh"
+
 #include <cmath>
+
+
 using namespace std;
 
 /*
@@ -167,10 +171,7 @@ Polynomial::check_sol (Real x) const
   Real d = p.eval (x);
 
   if (abs (f) > abs (d) * FUDGE)
-    ;
-  /*
-    warning ("x=%f is not a root of polynomial\n"
-    "f (x)=%f, f' (x)=%f \n", x, f, d);        */
+    programming_error ("not a root of polynomial\n");
 }
 
 void
index ebf212e29bcb90c64389302204f0309feaff0d83..ed317f7f631a13c4850ed307118a859bb2d7c276 100644 (file)
@@ -18,6 +18,7 @@
 
 using namespace std;
 using boost::unit_test::test_suite;
+using namespace boost::unit_test;
 
 template<typename T>
 void
@@ -84,7 +85,8 @@ BOOST_AUTO_UNIT_TEST (vector_sorting)
 #if VECTOR_SORT
   v.sort (default_compare);
 #else
-  vector_sort (v, default_compare);
+  //sort (v.begin (), v.end ());
+  vector_sort (v, less<int> ());
 #endif
   BOOST_CHECK_EQUAL (v[0], 0);
   BOOST_CHECK_EQUAL (v[1], 1);
@@ -161,7 +163,7 @@ BOOST_AUTO_UNIT_TEST (parray_uniq)
   v.push_back (0);
   v.push_back (1);
   v.push_back (0);
-  vector_sort (v, default_compare);
+  vector_sort (v, less<int> ());
   uniq (v);
   BOOST_CHECK_EQUAL (v.size (), vsize (2));
 }
@@ -172,7 +174,7 @@ BOOST_AUTO_UNIT_TEST (vector_search)
   v.push_back (0);
   v.push_back (1);
   v.push_back (2);
-  vsize i = binary_search (v, 1, &default_compare);
+  vsize i = binary_search (v, 1, less<int> ());
   BOOST_CHECK_EQUAL (i, vsize (1));
 }
 
@@ -204,20 +206,26 @@ BOOST_AUTO_UNIT_TEST (mingw_slashify)
 void mingw_slashify ();
 void file_find ();
 
+#include <boost/test/results_reporter.hpp>
+#include <boost/test/framework.hpp>
+#include <boost/test/detail/unit_test_parameters.hpp>
+
 test_suite*
 init_unit_test_suite (int, char**)
 {
   vsize i = 0;
   vsize j = 0;
   vector<int> v;
-  binary_search_bounds (v, 1, &default_compare, &i, &j);
+  binary_search (v, 1, less<int> (), i, j);
   //binary_search_bounds (v, 1, &default_compare, 0, 0);
   
   //Link_array<char> w;
   vector<char*> w;
-  binary_search_bounds (w, (char*)1, &default_compare, &i, &j);
+  binary_search (w, (char*)1, less<char*> (), i, j);
   
   test_suite *test = BOOST_TEST_SUITE("Flower");
+
+
   test->add (BOOST_TEST_CASE (vector_erase));
   test->add (BOOST_TEST_CASE (vector_slice));
   test->add (BOOST_TEST_CASE (vector_sorting));
@@ -227,5 +235,6 @@ init_unit_test_suite (int, char**)
   test->add (BOOST_TEST_CASE (vector_search));
   test->add (BOOST_TEST_CASE (mingw_slashify));
   test->add (BOOST_TEST_CASE (file_find));
+
   return test;
 }
diff --git a/input/regression/fret-boards.ly b/input/regression/fret-boards.ly
new file mode 100644 (file)
index 0000000..5c381b5
--- /dev/null
@@ -0,0 +1,32 @@
+
+\header {
+
+  texidoc = "Frets can be assigned automatically. The results will be
+best when one string number is indicated in advance "
+  
+}
+
+\version "2.9.27"
+
+foo = \relative c {
+  <d\5 fis a d fis>_\markup {
+    \fret-diagram-terse #"x;5;4;2;3;2;"
+  }
+}
+
+<<
+  \new FretBoards {
+    \set instrumentName = "autofrets"
+    \foo
+
+  }
+  \new Staff {
+    \clef "G_8"
+    \set stringNumberOrientations = #'(left)
+    \set fingeringOrientations = #'(right)
+    \foo
+  }
+
+>>
+
+
diff --git a/input/regression/rest-pitched-beam.ly b/input/regression/rest-pitched-beam.ly
new file mode 100644 (file)
index 0000000..6532b88
--- /dev/null
@@ -0,0 +1,11 @@
+\header {
+
+  texidoc = "Pitched rests under beams."
+
+}
+
+\version "2.9.26"
+
+\relative c'{
+  a\rest a8[ a\rest b] |
+}
diff --git a/input/regression/slur-clef.ly b/input/regression/slur-clef.ly
new file mode 100644 (file)
index 0000000..0b87883
--- /dev/null
@@ -0,0 +1,6 @@
+\paper {
+  ragged-right = ##t
+  }
+\version "2.9.27"
+
+\new Staff { \clef bass c^( \clef "G" g') } 
index ae5dafe6f0249a14f20b44526eadc22999e56780..a56738e0fa4cab4f30079dbc187fcdb863d5529d 100644 (file)
@@ -10,12 +10,12 @@ Vertical extents may increased by setting @code{\override VerticalAxisGroup #'mi
 \score {
     <<
     \new Staff {
-      \set Staff.verticalExtent = #'(-15.0 . 0.0)
+      \set Staff.VerticalAxisGroup = #'(-15.0 . 0.0)
       \clef alto
       c1
     }
     \new Staff {
-      \set Staff.verticalExtent = #'(-0.0 . 15.0)
+      \set Staff.VerticalAxisGroup = #'(-0.0 . 15.0)
       \clef alto
       g1
     }
index d80bbde8538f58d195559d27724a45288b048809..e6ad51e6836a53ce9614a675fe6626c04646682e 100644 (file)
@@ -40,10 +40,6 @@ Axis_group_engraver::get_spanner ()
   return make_spanner ("VerticalAxisGroup", SCM_EOL);
 }
 
-/*
-  TODO: should we junk minimumVerticalExtent/extraVerticalExtent ?
-*/
-
 void
 Axis_group_engraver::finalize ()
 {
index e9891d216a9d5172c46f0dcb3c9ec2bb0c98cc22..88055cb0bbf00702476370ef8155e012d62627e2 100644 (file)
@@ -75,8 +75,8 @@ Bar_number_engraver::acknowledge_break_aligned (Grob_info inf)
   if (text_
       && !text_->get_parent (X_AXIS)
       && dynamic_cast<Item *> (s)
-      && (s->get_property_data (ly_symbol2scm ("break-align-symbol"))
-         == text_->get_property_data (ly_symbol2scm ("break-align-symbol"))))
+      && (s->get_property_data ("break-align-symbol")
+         == text_->get_property_data ("break-align-symbol")))
     {
       /*
        By default this would land on the Paper_column -- so why
index 45015191366ae7df50084c0901d64b58f39cd8c1..cad443299c789b79f8402e937238e6a28d80c20c 100644 (file)
@@ -206,7 +206,8 @@ Beam_engraver::finalize ()
 void
 Beam_engraver::acknowledge_rest (Grob_info info)
 {
-  if (beam_)
+  if (beam_
+      && !scm_is_number (info.grob ()->get_property_data ("staff-position")))
     {
       chain_offset_callback (info.grob(),
                             Beam::rest_collision_callback_proc, Y_AXIS);
index d114c69fc363f2caa5f73a5d16c1ef72988b536f..dcbed75ce551b560df303f70dbd7118c014a23ed 100644 (file)
@@ -557,7 +557,7 @@ Beam::get_default_dir (Grob *me)
     {
       Grob *s = stems[i];
       Direction stem_dir = CENTER;
-      SCM stem_dir_scm = s->get_property_data (ly_symbol2scm ("direction"));
+      SCM stem_dir_scm = s->get_property_data ("direction");
       if (is_direction (stem_dir_scm))
        {
          stem_dir = to_dir (stem_dir_scm);
@@ -613,7 +613,7 @@ Beam::set_stem_directions (Grob *me, Direction d)
     {
       Grob *s = stems[i];
 
-      SCM forcedir = s->get_property_data (ly_symbol2scm ("direction"));
+      SCM forcedir = s->get_property_data ("direction");
       if (!to_dir (forcedir))
        set_grob_direction (s, d);
     }
@@ -668,7 +668,7 @@ Beam::consider_auto_knees (Grob *me)
          */
          head_extents += stem->relative_coordinate (common, Y_AXIS);
 
-         if (to_dir (stem->get_property_data (ly_symbol2scm ("direction"))))
+         if (to_dir (stem->get_property_data ("direction")))
            {
              Direction stemdir = to_dir (stem->get_property ("direction"));
              head_extents[-stemdir] = -stemdir * infinity_f;
index a4b13be79f1d9287746704182654780e92371036..4683c51cb53faa05d0a0edef971ef1a2f81b9c61 100644 (file)
@@ -14,6 +14,7 @@
 using namespace std;
 
 #include "dots.hh"
+#include "dot-column.hh"
 #include "rhythmic-head.hh"
 #include "staff-symbol-referencer.hh"
 #include "directional-element-interface.hh"
@@ -66,6 +67,7 @@ struct Dot_position
     dot_ = 0;
     pos_ = 0;
     dir_ = CENTER;
+    extremal_head_ = false;
   }
 };
 
index 47c0a9b4272fae2ca51c87ce6bc347a9378ab42a..896913bbc2796fbcb9e8eae06f648964f2c34398 100644 (file)
@@ -116,7 +116,7 @@ Fingering_engraver::make_script (Direction d, Stream_event *r, int i)
 
   fingering->set_property ("script-priority", scm_from_int (priority));
 
-  if (!is_direction (fingering->get_property_data (ly_symbol2scm ("direction"))))
+  if (!is_direction (fingering->get_property_data ("direction")))
     {
       if (d)
        fingering->set_property ("direction", scm_from_int (d));
diff --git a/lily/fretboard-engraver.cc b/lily/fretboard-engraver.cc
new file mode 100644 (file)
index 0000000..d0ad150
--- /dev/null
@@ -0,0 +1,100 @@
+/*
+  fretboard-engraver.cc -- part of GNU LilyPond
+
+  (c)  2006  Han-Wen Nienhuys
+*/
+
+#include <cctype>
+#include <cstdio>
+using namespace std;
+
+#include "context.hh"
+#include "item.hh"
+#include "engraver.hh"
+#include "pitch.hh"
+#include "stream-event.hh"
+#include "warn.hh"
+
+#include "translator.icc"
+
+/**
+   make (guitar-like) tablature note
+*/
+class Fretboard_engraver : public Engraver
+{
+  Item *fret_board_;
+  
+  vector<Stream_event*> note_events_;
+  vector<Stream_event*> tabstring_events_;
+public:
+  TRANSLATOR_DECLARATIONS (Fretboard_engraver);
+
+protected:
+  DECLARE_TRANSLATOR_LISTENER (note);
+  DECLARE_TRANSLATOR_LISTENER (string_number);
+  void process_music ();
+
+  void stop_translation_timestep ();
+};
+
+Fretboard_engraver::Fretboard_engraver ()
+{
+  fret_board_ = 0;
+}
+
+IMPLEMENT_TRANSLATOR_LISTENER (Fretboard_engraver, note);
+void
+Fretboard_engraver::listen_note (Stream_event *ev)
+{
+  note_events_.push_back (ev);
+}
+
+IMPLEMENT_TRANSLATOR_LISTENER (Fretboard_engraver, string_number);
+void
+Fretboard_engraver::listen_string_number (Stream_event *ev)
+{
+  tabstring_events_.push_back (ev);
+}
+
+void
+Fretboard_engraver::process_music ()
+{
+  if (!note_events_.size ())
+    return ;
+
+  fret_board_ = make_item ("FretBoard", note_events_[0]->self_scm ());
+
+  SCM proc = get_property ("noteToFretFunction");
+  if (ly_is_procedure (proc))
+    {
+      scm_call_4 (proc,
+                 context ()->self_scm (),
+                 fret_board_->self_scm (),
+                              
+                 ly_cxx_vector_to_list (note_events_),
+                 ly_cxx_vector_to_list (tabstring_events_));
+    }
+}
+
+void
+Fretboard_engraver::stop_translation_timestep ()
+{
+  fret_board_ = 0;
+  note_events_.clear ();
+  tabstring_events_.clear ();
+}
+
+ADD_TRANSLATOR (Fretboard_engraver,
+               /* doc */ "Generate one or more tablature noteheads from event of type NoteEvent.",
+               /* create */
+               "FretBoard "
+               ,
+
+               /* read */
+               "stringTunings "
+               "minimumFret "
+               "tablatureFormat "
+               "highStringOne "
+               ,
+               /* write */ "");
+
index 5e4035f7e898f343b0b22469ec8d3bd03309ea63..b2d0160adaf175942ff0e1e5a057cf7d57ff1dff 100644 (file)
@@ -80,7 +80,7 @@ chain_offset_callback (Grob *g, SCM proc, Axis a)
       Data may be nonnumber. In that case, it is assumed to be
       undefined.
     */
-    
+
     data = SCM_UNDEFINED;
 
   SCM expr = scm_list_2 (proc, data);
index 3924f4ece9125b9c8935c194d890b6f0d40264d5..707f4c118aa6953604417bd039614e6cbb85e2de 100644 (file)
@@ -101,7 +101,7 @@ Grob::internal_set_property (SCM sym, SCM v)
 
 //#define PROFILE_PROPERTY_ACCESSES
 SCM
-Grob::get_property_data (SCM sym) const
+Grob::internal_get_property_data (SCM sym) const
 {
 #ifndef NDEBUG
   if (profile_property_accesses)
@@ -171,7 +171,8 @@ Grob::try_callback (SCM sym, SCM proc)
   else if (is_simple_closure (proc))
     {
       value = evaluate_with_simple_closure (self_scm (),
-                                           simple_closure_expression (proc));
+                                           simple_closure_expression (proc),
+                                           false, 0, 0);
     }
 #ifndef NDEBUG
   if (debug_property_callbacks)
@@ -229,9 +230,17 @@ Grob::is_live () const
   return scm_is_pair (immutable_property_alist_);
 }
 
-
 bool
 Grob::internal_has_interface (SCM k)
 {
   return scm_c_memq (k, interfaces_) != SCM_BOOL_F;
 }
+
+SCM
+call_pure_function (SCM unpure, SCM args, int start, int end)
+{
+  SCM scm_call_pure_function = ly_lily_module_constant ("call-pure-function");
+
+  return scm_apply_0 (scm_call_pure_function,
+                     scm_list_4 (unpure, args, scm_from_int (start), scm_from_int (end)));
+}
index dd8726cac8bdc972324dc54391dcf6b7e4142072..28f665138cae691ac2bcd883e3be668ec63f0b08 100644 (file)
@@ -61,9 +61,9 @@ Grob::Grob (SCM basicprops,
   if (scm_is_pair (meta))
     interfaces_ = scm_cdr (scm_assq (ly_symbol2scm ("interfaces"), meta));
   
-  if (get_property_data (ly_symbol2scm ("X-extent")) == SCM_EOL)
+  if (get_property_data ("X-extent") == SCM_EOL)
     set_property ("X-extent", Grob::stencil_width_proc);
-  if (get_property_data (ly_symbol2scm ("Y-extent")) == SCM_EOL)
+  if (get_property_data ("Y-extent") == SCM_EOL)
     set_property ("Y-extent", Grob::stencil_height_proc);
 }
 
@@ -287,17 +287,19 @@ Grob::pure_relative_y_coordinate (Grob const *refp, int start, int end)
   if (refp == this)
     return 0.0;
 
-  SCM pure_off = ly_lily_module_constant ("pure-Y-offset");
   Real off = 0;
 
   if (dim_cache_[Y_AXIS].offset_)
     off = *dim_cache_[Y_AXIS].offset_;
-  else if (ly_is_procedure (pure_off))
+  else
     {
+      SCM proc = get_property_data ("Y-offset");
+
       dim_cache_[Y_AXIS].offset_ = new Real (0.0);
-      off = scm_to_double (scm_apply_3 (pure_off, self_scm (),
-                                       scm_from_int (start), scm_from_int (end),
-                                       SCM_EOL));
+      off = robust_scm2double (call_pure_function (proc,
+                                                  scm_list_1 (self_scm ()),
+                                                  start, end),
+                              0.0);
       delete dim_cache_[Y_AXIS].offset_;
       dim_cache_[Y_AXIS].offset_ = 0;
     }
@@ -404,6 +406,7 @@ Grob::extent (Grob *refp, Axis a) const
       SCM min_ext = internal_get_property (min_ext_sym);
       if (is_number_pair (min_ext))
        real_ext.unite (ly_scm2interval (min_ext));
+
       ((Grob*)this)->dim_cache_[a].extent_ = new Interval (real_ext);  
     }
   
@@ -415,13 +418,11 @@ Grob::extent (Grob *refp, Axis a) const
 Interval
 Grob::pure_height (Grob *refp, int start, int end)
 {
-  SCM pure_height = ly_lily_module_constant ("pure-Y-extent");
-  Interval iv (0, 0);
-
-  if (ly_is_procedure (pure_height))
-    iv = ly_scm2interval (scm_apply_3 (pure_height, self_scm (),
-                                      scm_from_int (start), scm_from_int (end),
-                                      SCM_EOL));
+  SCM proc = get_property_data ( ly_symbol2scm ("Y-extent"));
+  Interval iv = robust_scm2interval (call_pure_function (proc,
+                                                        scm_list_1 (self_scm ()),
+                                                        start, end),
+                                    Interval (0, 0));
   Real offset = pure_relative_y_coordinate (refp, start, end);
 
   SCM min_ext = get_property ("minimum-Y-extent");
@@ -606,6 +607,7 @@ ADD_INTERFACE (Grob, "grob-interface",
               "Y-extent "
               "Y-offset "
               "after-line-breaking "
+              "avoid-slur "
               "axis-group-parent-X "
               "axis-group-parent-Y "
               "before-line-breaking "
diff --git a/lily/include/GNUmakefile b/lily/include/GNUmakefile
new file mode 100644 (file)
index 0000000..ae2bfb6
--- /dev/null
@@ -0,0 +1,8 @@
+# lily/include/Makefile
+
+depth = ../..
+STEPMAKE_TEMPLATES=c++
+
+include $(depth)/make/stepmake.make
+
+
index 2ecac8bc4fd56b09cadda21009830595dff8e401..5eb433921a0c23c8d6295be009921175c0ef65da 100644 (file)
@@ -78,7 +78,7 @@ public:
   /* Properties */
   SCM get_property_alist_chain (SCM) const;
   SCM internal_get_property (SCM symbol) const;
-  SCM get_property_data (SCM symbol) const;
+  SCM internal_get_property_data (SCM symbol) const;
   SCM internal_get_object (SCM symbol) const;
   void internal_set_object (SCM sym, SCM val);
   void internal_del_property (SCM symbol);
@@ -151,4 +151,6 @@ void chain_offset_callback (Grob *g, SCM proc, Axis a);
 SCM axis_offset_symbol (Axis a);
 SCM axis_parent_positioning (Axis a);
 
+SCM call_pure_function (SCM unpure, SCM args, int start, int end);
+
 #endif /* GROB_HH */
index 87ceb88a7cd0b655fe6b4a9be6f8e43c4a3370c6..d349cdb7c9dfdc3bde6f83c1982b8aff35c05b16 100644 (file)
@@ -163,6 +163,7 @@ ly_add_function_documentation (SCM proc, char const *fname,
                          VAR, ARGLIST, DOCSTRING)
 
 #define get_property(x) internal_get_property (ly_symbol2scm (x))
+#define get_property_data(x) internal_get_property_data (ly_symbol2scm (x))
 #define get_object(x) internal_get_object (ly_symbol2scm (x))
 #define set_object(x, y) internal_set_object (ly_symbol2scm (x), y)
 #define del_property(x) internal_del_property (ly_symbol2scm (x))
index 07abff74ef41f52c813b97fab2e7eff0f02772b1..3422089e9c50e043b884093d37600de8d42e14e3 100644 (file)
@@ -96,10 +96,6 @@ inline bool ly_is_equal (SCM x, SCM y)
 
 inline bool ly_scm2bool (SCM x) { return SCM_NFALSEP (x); }
 inline char ly_scm2char (SCM x) { return SCM_CHAR (x); }
-inline unsigned long ly_length (SCM x)
-{
-  return scm_num2ulong (scm_length (x), 0, "ly_length");
-}
 inline SCM ly_bool2scm (bool x) { return SCM_BOOL (x); }
 
 inline SCM ly_append2 (SCM x1, SCM x2)
@@ -184,4 +180,19 @@ inline SCM ly_cdr (SCM x) { return SCM_CDR (x); }
 inline bool ly_is_pair (SCM x) { return SCM_I_CONSP (x); }
 
 
+
+#include  "std-vector.hh"
+
+template<class T>
+SCM
+ly_cxx_vector_to_list  (vector<T> const &src)
+{
+  SCM l = SCM_EOL;
+  for (vsize i = src.size (); i --; )
+    l = scm_cons (src[i]->self_scm (), l);
+
+  return l;
+}
+
+
 #endif /* LILY_GUILE_HH */
index 36b1e8fdf59030697495a29bf9881d563105af9d..fd58027a888218f64887eb9c6ace247a1d53c0bc 100644 (file)
@@ -25,7 +25,7 @@ public:
   DECLARE_SCHEME_CALLBACK (pure_y_aligned_on_support_refpoints, (SCM element, SCM start, SCM end));
   DECLARE_SCHEME_CALLBACK (x_aligned_side, (SCM element, SCM current));
   DECLARE_SCHEME_CALLBACK (y_aligned_side, (SCM element, SCM current));
-  DECLARE_SCHEME_CALLBACK (pure_y_aligned_side, (SCM element, SCM start, SCM end));
+  DECLARE_SCHEME_CALLBACK (pure_y_aligned_side, (SCM element, SCM start, SCM end, SCM current));
 
   static SCM aligned_side (Grob*me, Axis a, bool pure, int start, int end, Real *current_off_ptr);
 
index 1bddb853e65c26bd9d30c79947febc9b91640cdd..e5a3aed78ac4610844f513b070df376e2dadbaea 100644 (file)
 #ifndef SIMPLE_CLOSURE_HH
 #define SIMPLE_CLOSURE_HH
 
+#include "lily-guile.hh"
+
 bool is_simple_closure (SCM s);
 SCM simple_closure_expression (SCM smob);
-SCM evaluate_with_simple_closure (SCM delayed_argument, SCM expr);
+SCM evaluate_with_simple_closure (SCM delayed_argument, SCM expr, bool pure, int start, int end);
 SCM ly_make_simple_closure (SCM);
 
 #endif /* SIMPLE_CLOSURE_HH */
index 4668c584895542b8b3ee5d612e2f0c7bb7f867ff..3e5b9d86b4fae42d53685177020cb980e23c4abd 100644 (file)
@@ -98,7 +98,7 @@ struct Slur_score_state
   Bezier get_best_curve ();
   void fill (Grob *);
   void set_next_direction ();
-
+  
   vector<Offset> generate_avoid_offsets () const;
   Drul_array<Bound_info> get_bound_info () const;
   void generate_curves () const;
@@ -109,6 +109,8 @@ struct Slur_score_state
   vector<Extra_collision_info> get_extra_encompass_infos () const;
   Real move_away_from_staffline (Real y, Grob *on_staff) const;
   int get_closest_index (SCM inspect_quants) const;
+
+  Grob *breakable_bound_item (Direction) const;  
 };
 
 void set_slur_control_points (Grob *me);
index f0213372bc1e740a0f87b02356268e4dedf2103a..20667dd25cd20c59d38e7b115e23851ffca27fa1 100644 (file)
@@ -26,6 +26,7 @@ public:
   DECLARE_SCHEME_CALLBACK (pure_height, (SCM, SCM, SCM));
   DECLARE_SCHEME_CALLBACK (height, (SCM));
   DECLARE_SCHEME_CALLBACK (outside_slur_callback, (SCM, SCM));
+  DECLARE_SCHEME_CALLBACK (pure_outside_slur_callback, (SCM, SCM, SCM, SCM));
   static bool has_interface (Grob *);
   static Bezier get_curve (Grob *me);
 };
index baf353aa83ba9c9ad89aa125b10a6fc51b16b272..3682618ec9748c5fba515ccaa3142ca9de4d9d56 100644 (file)
@@ -64,8 +64,8 @@ Mark_engraver::acknowledge_break_aligned (Grob_info inf)
   Grob *s = inf.grob ();
   if (text_
       && !text_->get_parent (X_AXIS)
-      && (text_->get_property_data (ly_symbol2scm ("break-align-symbol"))
-         == s->get_property_data (ly_symbol2scm ("break-align-symbol")))
+      && (text_->get_property_data ("break-align-symbol")
+         == s->get_property_data ("break-align-symbol"))
       && Axis_group_interface::has_interface (s))
     {
       /*
index 01fb89e4ac5f2ae25f0dc5b8ae8aefe132376494..f968eae3211313fe552ce144c7e6201b19965da3 100644 (file)
@@ -44,7 +44,7 @@ void
 Melody_engraver::stop_translation_timestep ()
 {
   if (stem_
-      && !is_direction (stem_->get_property_data (ly_symbol2scm  ("neutral-direction"))))
+      && !is_direction (stem_->get_property_data ("neutral-direction")))
     {
       extract_grob_set (stem_, "rests", rests);
       if (rests.size ())
index 322b50c7774c9cb637ab97e6413fa37f4d23dc0e..7d50025c388197c9629e84a48fa55d3ecaea791c 100644 (file)
@@ -162,7 +162,7 @@ Pango_font::pango_item_string_stencil (PangoItem const *item, string str,
   if  (! has_glyph_names)
     cmap = get_index_to_charcode_map (file_name, ftface);
 
-  bool is_ttf = string (FT_Get_X11_Font_Format (ftface)) == "TrueType6";
+  bool is_ttf = string (FT_Get_X11_Font_Format (ftface)) == "TrueType";
   bool cid_keyed = false;
   for (int i = 0; i < pgs->num_glyphs; i++)
     {
index 926f9f5a962afed18ba94dfdc394ace7df50d5bf..37a156238a4e898dade1fc801dae3667b3a71a70 100644 (file)
@@ -11,6 +11,7 @@
 #include "grob.hh"
 #include "main.hh"
 #include "output-def.hh"
+#include "paper-column.hh"
 #include "paper-score.hh"
 #include "paper-system.hh"
 #include "text-interface.hh"
@@ -236,7 +237,11 @@ set_system_penalty (SCM sys, SCM header)
            {
              vector<Grob*> cols = ps->get_columns ();
              if (cols.size ())
-               cols.back ()->set_property ("page-break-permission", sym);
+               {
+                 Paper_column *col = dynamic_cast<Paper_column*> (cols.back ());
+                 col->set_property ("page-break-permission", sym);
+                 col->find_prebroken_piece (LEFT)->set_property ("page-break-permission", sym);
+               }
            }
          else if (Prob *pb = unsmob_prob (sys))
            pb->set_property ("page-break-permission", sym);
@@ -370,6 +375,7 @@ Paper_book::systems ()
   
   systems_ = scm_reverse (systems_);
 
+  /* backwards compatibility for the old page breaker */
   int i = 0;
   Prob *last = 0;
   for (SCM s = systems_; scm_is_pair (s); s = scm_cdr (s))
@@ -382,6 +388,16 @@ Paper_book::systems ()
          && !scm_is_number (ps->get_property ("penalty")))
        ps->set_property ("penalty", scm_from_int (10000));
       last = ps;
+
+      if (scm_is_pair (scm_cdr (s)))
+       {
+         SCM perm = ps->get_property ("page-break-permission");
+         Prob *next = unsmob_prob (scm_cadr (s));
+         if (perm == SCM_EOL)
+           next->set_property ("penalty", scm_from_int (10001));
+         else if (perm == ly_symbol2scm ("force"))
+           next->set_property ("penalty", scm_from_int (-10001));
+       }
     }
 
   return systems_;
index a50f794961dce2c3a5ae98400c646fafe4bd890c..36ebc6971c85d5219ad8cec8d79cbfb517c658f2 100644 (file)
@@ -64,7 +64,7 @@ Script_column::row_before_line_breaking (SCM smob)
        {
          affect_all_grobs.push_back (sc);
        }
-      else if (sc->get_property_data (ly_symbol2scm ("Y-offset")) !=
+      else if (sc->get_property_data ("Y-offset") !=
               Side_position_interface::x_aligned_side_proc)
        {
          head_scripts_map[sc->get_parent (Y_AXIS)].push_back (sc);
@@ -100,7 +100,7 @@ Script_column::before_line_breaking (SCM smob)
       /*
        Don't want to consider scripts horizontally next to notes.
       */
-      if (sc->get_property_data (ly_symbol2scm ("X-offset")) !=
+      if (sc->get_property_data ("X-offset") !=
          Side_position_interface::x_aligned_side_proc)
        staff_sided.push_back (sc);
     }
index fbc98f20aa1db6eb6ce1c1a094c8cb4a44bc06bc..854dd0302e2843ecbc5570b3bb3531f427b64d44 100644 (file)
@@ -53,7 +53,9 @@ Semi_tie::calc_direction (SCM smob)
 {
   Grob *me = unsmob_grob (smob);
   if (Semi_tie_column::has_interface (me->get_parent (Y_AXIS)))
-    me->get_parent (Y_AXIS)->get_property("positioning-done");
+    {
+      me->get_parent (Y_AXIS)->get_property("positioning-done");
+    }
   else
     {
       programming_error ("lv tie without Semi_tie_column"); 
index 5ef9038dfbc3859c1377da7368c658b4db08b855..14e457b6ef047a3caf2bb245d44210e44aa79b18 100644 (file)
@@ -115,4 +115,4 @@ ADD_INTERFACE (Separating_group_spanner, "separation-spanner-interface",
 
               /* properties */
               "elements "
-              "padding");
+              "padding ");
index 38880cb52ef9d201927ae4229e7b97250513628c..73854bdc40cd0dc9b3899e3627e7fe67bad015d0 100644 (file)
@@ -190,11 +190,14 @@ Side_position_interface::y_aligned_side (SCM smob, SCM current_off)
   return axis_aligned_side_helper (smob, Y_AXIS, false, 0, 0, current_off);
 }
 
-MAKE_SCHEME_CALLBACK (Side_position_interface, pure_y_aligned_side, 3);
+MAKE_SCHEME_CALLBACK_WITH_OPTARGS (Side_position_interface, pure_y_aligned_side, 4, 1);
 SCM
-Side_position_interface::pure_y_aligned_side (SCM smob, SCM start, SCM end)
+Side_position_interface::pure_y_aligned_side (SCM smob, SCM start, SCM end, SCM cur_off)
 {
-  return aligned_side (unsmob_grob (smob), Y_AXIS, true, scm_to_int (start), scm_to_int (end), 0);
+  return axis_aligned_side_helper (smob, Y_AXIS, true,
+                                  scm_to_int (start),
+                                  scm_to_int (end),
+                                  cur_off);
 }
 
 SCM
index 77764b2bc6a1f6ee908bb86ff14be2f2e9b7b042..139478983a89f000258fa09b499634b739ef2247 100644 (file)
@@ -6,7 +6,9 @@
   (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
 */
+#include "simple-closure.hh"
 
+#include "grob.hh"
 #include "lily-guile.hh"
 
 static scm_t_bits simple_closure_tag;
@@ -24,17 +26,18 @@ simple_closure_expression (SCM smob)
   return (SCM) SCM_CELL_WORD_1(smob);
 }
 
-SCM evaluate_with_simple_closure (SCM delayed_argument, SCM expr);
-
 SCM
-evaluate_args (SCM delayed_argument, SCM args)
+evaluate_args (SCM delayed_argument, SCM args, bool pure, int start, int end)
 {
   SCM new_args = SCM_EOL;
   SCM *tail = &new_args;
   for (SCM s = args; scm_is_pair (s); s = scm_cdr (s))
     {
-      *tail = scm_cons (evaluate_with_simple_closure (delayed_argument, scm_car (s)),
+      *tail = scm_cons (evaluate_with_simple_closure (delayed_argument, scm_car (s),
+                                                     pure, start, end),
                        SCM_EOL);
+      if (scm_car (*tail) == SCM_UNSPECIFIED)
+       return SCM_UNSPECIFIED;
       tail = SCM_CDRLOC (*tail);
     }
   
@@ -43,14 +46,22 @@ evaluate_args (SCM delayed_argument, SCM args)
 
 SCM
 evaluate_with_simple_closure (SCM delayed_argument,
-                             SCM expr)
+                             SCM expr,
+                             bool pure,
+                             int start,
+                             int end)
 {
   if (is_simple_closure (expr))
     {
       SCM inside = simple_closure_expression (expr);
-      return scm_apply_1 (scm_car (inside),
-                         delayed_argument,
-                         evaluate_args (delayed_argument, scm_cdr (inside)));
+      SCM args = scm_cons (delayed_argument,
+                          evaluate_args (delayed_argument, scm_cdr (inside),
+                                         pure, start, end));
+      if (scm_cdr (args) == SCM_UNSPECIFIED)
+       return SCM_UNSPECIFIED;
+      if (pure)
+       return call_pure_function (scm_car (inside), args, start, end);
+      return scm_apply_0 (scm_car (inside), args);
     }
   else if (!scm_is_pair (expr))
     return expr;
@@ -58,12 +69,16 @@ evaluate_with_simple_closure (SCM delayed_argument,
     return scm_cadr (expr);
   else if (ly_is_procedure (scm_car (expr)))
     {
-      return scm_apply_0 (scm_car (expr),
-                         evaluate_args (delayed_argument, scm_cdr (expr)));
+      SCM args = evaluate_args (delayed_argument, scm_cdr (expr), pure, start, end);
+      if (args == SCM_UNSPECIFIED)
+       return SCM_UNSPECIFIED;
+      if (pure)
+       return call_pure_function (scm_car (expr), args, start, end);
+      return scm_apply_0 (scm_car (expr), args);
     }
   else
     // ugh. deviation from standard. Should print error? 
-    return evaluate_args (delayed_argument, scm_cdr (expr)); 
+    return evaluate_args (delayed_argument, scm_cdr (expr), pure, start, end); 
   
   assert (false);
   return SCM_EOL;
@@ -87,6 +102,19 @@ LY_DEFINE(ly_make_simple_closure, "ly:make-simple-closure",
   SCM_NEWSMOB(z, simple_closure_tag, expr);
   return z;
 }
+
+LY_DEFINE(ly_eval_simple_closure, "ly:eval-simple-closure",
+         2, 2, 0, (SCM delayed, SCM closure, SCM scm_start, SCM scm_end),
+         "Evaluate a simple closure with the given delayed argument. "
+         "If start and end are defined, evaluate it purely with those "
+         "start- and end-points.")
+{
+  bool pure = (scm_is_number (scm_start) && scm_is_number (scm_end));
+  int start = robust_scm2int (scm_start, 0);
+  int end = robust_scm2int (scm_end, 0);
+  SCM expr = simple_closure_expression (closure);
+  return evaluate_with_simple_closure (delayed, expr, pure, start, end);
+}
  
 int
 print_simple_closure (SCM s, SCM port, scm_print_state *)
index c203d4602dfec69dddb918fd1ce79b91ba0f65d3..864ea7747363dd13e982b0fb0439f0457279954f 100644 (file)
@@ -196,6 +196,17 @@ Slur_engraver::process_music ()
 void
 Slur_engraver::stop_translation_timestep ()
 {
+  if (Grob *g = unsmob_grob (get_property ("breakableSeparationItem")))
+    {
+      for (vsize i = 0; i < end_slurs_.size (); i++)
+       Slur::add_extra_encompass (end_slurs_[i], g);
+
+      if (!events_[START])
+       for (vsize i = 0; i < slurs_.size (); i++)
+         Slur::add_extra_encompass (slurs_[i], g);
+    }
+  
+  
   for (vsize i = 0; i < end_slurs_.size (); i++)
     announce_end_grob (end_slurs_[i], SCM_EOL);
   end_slurs_.clear ();
@@ -213,5 +224,8 @@ ADD_ACKNOWLEDGER (Slur_engraver, tuplet_number);
 ADD_TRANSLATOR (Slur_engraver,
                /* doc */ "Build slur grobs from slur events",
                /* create */ "Slur",
-               /* read */ "slurMelismaBusy doubleSlurs",
+               /* read */
+               "slurMelismaBusy "
+               "doubleSlurs ",
+
                /* write */ "");
index 6371082b077676783487be3943a13b874407c919..618786867efff0fc4352addff0882cc1607e1d12 100644 (file)
@@ -412,6 +412,23 @@ Slur_score_state::get_best_curve ()
   return configurations_[opt_idx]->curve_;
 }
 
+Grob *
+Slur_score_state::breakable_bound_item (Direction d) const
+{
+  Grob *col = slur_->get_bound (d)->get_column ();
+
+  extract_grob_set (slur_, "encompass-objects", extra_encompasses);
+
+  for (vsize i = 0; i < extra_encompasses.size (); i++)
+    {
+      Item *item = dynamic_cast<Item*> (extra_encompasses[i]);
+      if (item && col == item->get_column ())
+       return item;
+    }
+
+  return 0;
+}
+
 int
 Slur_score_state::get_closest_index (SCM inspect_quants) const
 {
@@ -450,7 +467,7 @@ Slur_score_state::get_y_attachment_range () const
        {
          end_ys[d] = dir_
            * max (max (dir_ * (base_attachments_[d][Y_AXIS]
-                                         + parameters_.region_size_ * dir_),
+                               + parameters_.region_size_ * dir_),
                        dir_ * (dir_ + extremes_[d].note_column_->extent (common_[Y_AXIS], Y_AXIS)[dir_])),
                   dir_ * base_attachments_[-d][Y_AXIS]);
        }
@@ -524,11 +541,18 @@ Slur_score_state::get_base_attachments () const
     {
       if (!extremes_[d].note_column_)
        {
-         Real x, y;
-         if (d == RIGHT)
+         Real x = 0;
+         Real y = 0;
+
+         if (Grob *g = breakable_bound_item (d))
+           {
+             x = robust_relative_extent (g, common_[X_AXIS], X_AXIS)[RIGHT];
+           }
+         else if (d == RIGHT)
            x = robust_relative_extent (extremes_[d].bound_, common_[X_AXIS], X_AXIS)[d];
          else
            x = slur_->get_broken_left_end_align ();
+         
          Grob *col = (d == LEFT) ? columns_[0] : columns_.back ();
 
          if (extremes_[-d].bound_ != col)
index d8c81f7836337258a4d1a09e9344d1a8f1f24070..0128e8cdfda6f3d4ca3004c429d290fe169b691b 100644 (file)
@@ -185,6 +185,25 @@ Slur::add_extra_encompass (Grob *me, Grob *n)
   Pointer_group_interface::add_grob (me, ly_symbol2scm ("encompass-objects"), n);
 }
 
+MAKE_SCHEME_CALLBACK_WITH_OPTARGS (Slur, pure_outside_slur_callback, 4, 1);
+SCM
+Slur::pure_outside_slur_callback (SCM grob, SCM start_scm, SCM end_scm, SCM offset_scm)
+{
+  int start = robust_scm2int (start_scm, 0);
+  int end = robust_scm2int (end_scm, 0);
+  Grob *script = unsmob_grob (grob);
+  Grob *slur = unsmob_grob (script->get_object ("slur"));
+  if (!slur)
+    return offset_scm;
+
+  SCM avoid = script->get_property ("avoid-slur");
+  if (avoid != ly_symbol2scm ("outside") && avoid != ly_symbol2scm ("around"))
+    return offset_scm;
+
+  Real offset = robust_scm2double (offset_scm, 0.0);
+  Direction dir = get_grob_direction (script);
+  return scm_from_double (offset + dir * slur->pure_height (slur, start, end).length () / 4);
+}
 
 MAKE_SCHEME_CALLBACK_WITH_OPTARGS (Slur, outside_slur_callback, 2, 1);
 SCM
index 57d67b464b6e16b83d14ca454b841197ba2bcacc..310c7938d3b11011681f48af5f936571ae80e7c5 100644 (file)
@@ -277,12 +277,11 @@ Source_file::get_counts (char const *pos_str0,
 
   while (left > 0)
     {
-      wchar_t multibyte[2];
-
       /*
        FIXME, this is apparently locale dependent.
       */
 #if HAVE_MBRTOWC
+      wchar_t multibyte[2];
       size_t thislen = mbrtowc (multibyte, line_chars, left, &state);
 #else
       size_t thislen = 1;
index 32dd2f367d36e0c37ee09e184584e52fc108d1fb..0649849b2111170163e66462afaca0a5fe00cc36 100644 (file)
@@ -404,13 +404,6 @@ System::get_paper_system ()
   pl->set_property ("page-break-penalty", right_bound->get_property ("page-break-penalty"));
   pl->set_property ("page-turn-penalty", right_bound->get_property ("page-turn-penalty"));
 
-  /* backwards compatibility with the old page breaker */
-  SCM perm = left_bound->get_property ("page-break-permission");
-  if (!scm_is_symbol (perm))
-    pl->set_property ("penalty", scm_from_double (10001));
-  else if (perm == ly_symbol2scm ("force"))
-    pl->set_property ("penalty", scm_from_double (-10001));
-  
   if (!scm_is_pair (pl->get_property ("refpoint-Y-extent")))
     {
       Interval staff_refpoints;
index 9758ffcb95ad1a02c142871babff82d32a23fa65..7870c0218a74b44fb3e64178c90124b66d0307b6 100644 (file)
@@ -8,17 +8,16 @@
 
 #include <cctype>
 #include <cstdio>
+
+#include "engraver.hh"
+
 using namespace std;
 
-#include "dot-column.hh"
-#include "dots.hh"
 #include "duration.hh"
 #include "item.hh"
 #include "output-def.hh"
 #include "pitch.hh"
 #include "rhythmic-head.hh"
-#include "score-engraver.hh"
-#include "staff-symbol-referencer.hh"
 #include "stream-event.hh"
 #include "warn.hh"
 
@@ -69,7 +68,7 @@ Tab_note_heads_engraver::process_music ()
   for (vsize i = 0; i < note_events_.size (); i++)
     {
       SCM stringTunings = get_property ("stringTunings");
-      int number_of_strings = ((int) ly_length (stringTunings));
+      int number_of_strings = scm_ilength (stringTunings);
       bool high_string_one = to_boolean (get_property ("highStringOne"));
 
       Stream_event *event = note_events_[i];
index d5bd961887a3f6f8d8c41aedc7179f22fda993e0..8adc406227c629f572e7549855d3a36e750f197b 100644 (file)
@@ -289,7 +289,7 @@ Tie_formatting_problem::from_ties (vector<Grob*> const &ties)
     {
       Tie_specification spec;
       
-      if (scm_is_number (ties[i]->get_property_data (ly_symbol2scm ("direction"))))
+      if (scm_is_number (ties[i]->get_property_data ("direction")))
        {
          spec.manual_dir_ = to_dir (ties[i]->get_property ("direction"));
          spec.has_manual_dir_ = true;
index 28d5cb4748127f5ee2c2b266088d0e9d42ae8072..df68a638b1c0cf827123092690772ac4f8996ac0 100644 (file)
@@ -10,7 +10,6 @@
 
 #include "audio-item.hh"
 #include "context.hh"
-#include "pqueue.hh"
 #include "stream-event.hh"
 #include "translator.icc"
 
index b4b5206386ae23a3236fa830514953cd8c4f2001..2cad6b302f5d5393ea7995ca7e89ba85f9b4d8be 100644 (file)
@@ -210,7 +210,7 @@ Tie::calc_control_points (SCM smob)
       (void) yparent->get_property ("positioning-done");
     }
 
-  if (!scm_is_pair (me->get_property_data (ly_symbol2scm ("control-points"))))
+  if (!scm_is_pair (me->get_property_data ("control-points")))
     {
       set_default_control_points (me);
     }
index a5f8b6c2424610c46f7464ad76ca611a0bc3660e..261b086c3f4dea1605f3f9dab4c7aede94f8fbf6 100644 (file)
@@ -567,8 +567,12 @@ Tuplet_bracket::calc_position_and_height (Grob *me_grob, Real *offset, Real *dy)
       Interval tuplet_x (tuplets[i]->extent (commonx, X_AXIS));
       Interval tuplet_y (tuplets[i]->extent (commony, Y_AXIS));
 
+      if (!tuplets[i]->is_live ())
+       continue;
+      
       Direction d = LEFT;
-      Drul_array<Real> positions = ly_scm2realdrul (tuplets[i]->get_property ("positions"));
+      Drul_array<Real> positions = robust_scm2interval (tuplets[i]->get_property ("positions"),
+                                                       Interval (0,0));
 
       
       Real other_dy = positions[RIGHT] - positions[LEFT];
index ffa0c245a54eb83a3743a2dca764ab9414407797..1f4df05b1b39e336c834ed2f11895888710d796d 100644 (file)
   \grobdescriptions #all-grob-descriptions
 }
 
+
+\context {
+  \type "Engraver_group"
+  \name "FretBoards"
+
+  \consists "Output_property_engraver" 
+
+  \consists "Axis_group_engraver" 
+  \consists "Fretboard_engraver"
+  \consists "Separating_line_group_engraver"
+  \consists "Font_size_engraver"
+  \consists "Instrument_name_engraver"
+}
+
 \context {
   \type "Engraver_group"
   \name "Staff"
@@ -24,7 +38,7 @@
   \consists "Separating_line_group_engraver"   
   \consists "Dot_column_engraver"
 
 %% perhaps move to Voice context?
+ %% perhaps move to Voice context?
   \consists "Ottava_spanner_engraver"
   \consists "Clef_engraver"
   \consists "Key_engraver"
@@ -44,8 +58,6 @@
   \consists "Script_row_engraver"
 
   \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4)
-  extraVerticalExtent = ##f
-  verticalExtent = ##f 
   localKeySignature = #'()
   createSpacing = ##t
   ignoreFiguredBassRest = ##t 
@@ -124,8 +136,6 @@ contained staves are not connected vertically."
   \type "Engraver_group"
   
   \override VerticalAxisGroup #'minimum-Y-extent = ##f
-  extraVerticalExtent = ##f
-  verticalExtent = ##f 
   localKeySignature = #'()
   createSpacing = ##t
 
@@ -348,8 +358,6 @@ staffs, with a bracket in front and spanning bar lines. "
 \context{
   \type "Engraver_group"
   \override VerticalAxisGroup #'minimum-Y-extent = #'(-1.2 . 2.4)
-  extraVerticalExtent = ##f
-  verticalExtent = ##f
 
   \description " Corresponds to a voice with lyrics.  Handles the
 printing of a single line of lyrics.  "
@@ -383,8 +391,6 @@ printing of a single line of lyrics.  "
   \consists "Axis_group_engraver"
 
   \override VerticalAxisGroup #'minimum-Y-extent = ##f
-  extraVerticalExtent = ##f
-  verticalExtent = ##f 
 
   
   \consists "Rest_swallow_translator" 
@@ -410,11 +416,9 @@ printing of a single line of lyrics.  "
   
   voltaOnThisStaff = ##f
   \override VerticalAxisGroup #'minimum-Y-extent = #'(0 . 2.5)
-  extraVerticalExtent = ##f
   \override SeparatingGroupSpanner #'padding = #0.8
   \override VerticalAxisGroup #'remove-first = ##t
   \override VerticalAxisGroup #'remove-empty = ##t
-  verticalExtent = ##f 
 }
 
 
@@ -475,6 +479,7 @@ AncientRemoveEmptyStaffContext = \context {
   
   \defaultchild "Staff"
 
+  \accepts "FretBoards"
   \accepts "Staff"
   \accepts "RhythmicStaff"
   \accepts "TabStaff"
@@ -491,7 +496,9 @@ AncientRemoveEmptyStaffContext = \context {
   \accepts "Devnull"
   \accepts "NoteNames"
   \accepts "FiguredBass"
-  
+
+
+  noteToFretFunction = #determine-frets
   soloText = #"Solo"
   soloIIText = #"Solo II"
   aDueText = #"a2"
index 163116b4f5b659b192eefcbe59cdb03b5d2b2afc..3a02ecc59edc180e84971340d073790a51c947aa 100644 (file)
@@ -1,6 +1,6 @@
 %{
   Shortcuts common for all styles of gregorian chant notation.
-  $Id: gregorian-init.ly,v 1.48 2006/10/22 20:19:31 reuter Exp $
+  $Id$
 %}
 
 \version "2.7.39"
@@ -299,7 +299,7 @@ neumeDemoLayout = \layout {
        \override StaffSymbol #'transparent = ##t
        \remove "Time_signature_engraver"
        \remove "Bar_engraver"
-       minimumVerticalExtent = ##f
+       \override VerticalAxisGroup #'minimum-Y-extent = ##f
     }
     \context {
        \Voice
index 357692c44a7aa3dd1cc91202cea72671b5c7fda3..14d333c9cb8118bdb2b5c2ee70caa39e5237ef4d 100644 (file)
@@ -80,7 +80,7 @@
     %% settings for the page breaker
     %%
     blank-last-page-force = 0
-    blank-page-force = 10
+    blank-page-force = 2
 
     #(define font-defaults
       '((font-encoding . fetaMusic)))
index 56a2c46cd7139e6413623cc33b6859975f020531..8a60b496309e04e845f1d0d9a6e7a4ebe38302e9 100644 (file)
@@ -69,11 +69,24 @@ $(outdir)/aybabtu.otf $(outdir)/aybabtu.svg: $(outdir)/aybabtu.pe $(foreach s,$(
 
 $(outdir)/%.pfa: $(outdir)/%.log
 
-$(outdir)/%.otf-table: $(outdir)/%.lisp $(if $(findstring brace,$<),,$(subst feta,parmesan,$<))
+$(outdir)/%.otf-table: $(outdir)/%.lisp
        cat $< \
                $(if $(findstring brace,$<),,$(subst feta,parmesan,$<)) \
                $(if $(findstring brace,$<),,$(subst feta,feta-alphabet,$<)) > $@
 
+
+## ugh -- we want this to prevent failing -j2 compiles. 
+$(outdir)/feta26.otf-table: $(outdir)/feta26.lisp $(outdir)/parmesan26.lisp $(outdir)/feta-alphabet26.lisp 
+$(outdir)/feta23.otf-table: $(outdir)/feta23.lisp $(outdir)/parmesan23.lisp $(outdir)/feta-alphabet23.lisp 
+$(outdir)/feta20.otf-table: $(outdir)/feta20.lisp $(outdir)/parmesan20.lisp $(outdir)/feta-alphabet20.lisp 
+$(outdir)/feta18.otf-table: $(outdir)/feta18.lisp $(outdir)/parmesan18.lisp $(outdir)/feta-alphabet18.lisp 
+$(outdir)/feta16.otf-table: $(outdir)/feta16.lisp $(outdir)/parmesan16.lisp $(outdir)/feta-alphabet16.lisp 
+$(outdir)/feta14.otf-table: $(outdir)/feta14.lisp $(outdir)/parmesan14.lisp $(outdir)/feta-alphabet14.lisp 
+$(outdir)/feta13.otf-table: $(outdir)/feta13.lisp $(outdir)/parmesan13.lisp $(outdir)/feta-alphabet13.lisp 
+$(outdir)/feta11.otf-table: $(outdir)/feta11.lisp $(outdir)/parmesan11.lisp $(outdir)/feta-alphabet11.lisp 
+
+
+
 $(outdir)/aybabtu.otf: $(outdir)/aybabtu.subfonts $(outdir)/aybabtu.fontname $(outdir)/aybabtu.otf-table $(outdir)/aybabtu.otf-gtable $(outdir)/aybabtu.pe
 
 $(outdir)/aybabtu.otf $(outdir)/aybabtu.svg: $(BRACES:%=$(outdir)/feta-braces-%.pfa)
index 323a1bbdacdf62995fa602ce40cf23ea2d875ac0..1a5f281d93fc78c96d0035191809f31acf54bd38 100644 (file)
@@ -86,9 +86,6 @@ env.Depends ('aybabtu.otf',
                'aybabtu.otf-table',
                'aybabtu.otf-gtable'])
 
-env.Command ('fonts.cache-1', p + o,
-            'cd ${TARGET.dir}; fc-cache .')
-            
 ## FIXME: building only a few fonts does not seem to work anymore.
 ## what is essential these days, aybabtu/emmentaler are needed always?
 mf_essential = ['feta16', 'feta20', 'parmesan16', ]
index b37cc952818aa6512de0a3cf53282a4ee44a607b..03aaa5d665b6af3d43718a4d6b9e38116cd4f42b 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -6,98 +6,98 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.6.0\n"
+"Project-Id-Version: lilypond 2.9.26\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-10-08 16:22+0200\n"
-"PO-Revision-Date: 2005-07-03 20:38+0200\n"
+"POT-Creation-Date: 2006-03-20 12:53+0100\n"
+"PO-Revision-Date: 2006-10-26 08:39+0200\n"
 "Last-Translator: Roland Stigge <stigge@antcom.de>\n"
-"Language-Team: German <de@li.org>\n"
+"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: convertrules.py:12
+#: convertrules.py:9
 #, python-format
 msgid "Not smart enough to convert %s"
 msgstr "%s kann nicht umgewandelt werden"
 
-#: convertrules.py:13
+#: convertrules.py:10
 msgid "Please refer to the manual for details, and update manually."
 msgstr "Für Details Benutzerhandbuch lesen und manuell aktualisieren."
 
-#: convertrules.py:14
+#: convertrules.py:11
 #, python-format
 msgid "%s has been replaced by %s"
 msgstr "%s wurde durch %s ersetzt"
 
-#: convertrules.py:2398
+#: convertrules.py:2395
 msgid "LilyPond source must be UTF-8"
 msgstr "LilyPond-Quelle muss UTF-8 sein"
 
-#: convertrules.py:2401
+#: convertrules.py:2398
 msgid "Try the texstrings backend"
 msgstr "Das texstrings-Backend probieren"
 
-#: convertrules.py:2404
+#: convertrules.py:2401
 #, python-format
 msgid "Do something like: %s"
 msgstr "Folgendes versuchen: %s"
 
-#: convertrules.py:2407
+#: convertrules.py:2404
 msgid "Or save as UTF-8 in your editor"
 msgstr "Oder als UTF-8 im Editor sichern"
 
-#: fontextract.py:26
+#: fontextract.py:25
 #, python-format
 msgid "Scanning %s"
 msgstr "Warnung: %s"
 
-#: fontextract.py:71
+#: fontextract.py:70
 #, python-format
 msgid "Extracted %s"
 msgstr "%s ausgepackt"
 
-#: fontextract.py:86
+#: fontextract.py:85
 #, python-format
 msgid "Writing fonts to %s"
 msgstr "Schreiben der Schriftarten nach %s"
 
-#: lilylib.py:85 lilylib.py:136
+#: lilylib.py:82
 #, python-format
 msgid "Invoking `%s'"
-msgstr "Rufe `%s' auf"
+msgstr "`%s' wird aufgerufen"
 
-#: lilylib.py:87 lilylib.py:138
+#: lilylib.py:84
 #, python-format
 msgid "Running %s..."
-msgstr "Starte %s..."
+msgstr "%s wird ausgeführt..."
 
-#: lilylib.py:203
+#: lilylib.py:165
 #, python-format
 msgid "Usage: %s\n"
-msgstr ""
+msgstr "Aufruf: %s\n"
 
-#: abc2ly.py:1351
+#: abc2ly.py:1357
 msgid ""
 "This program converts ABC music files (see\n"
 "http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt) to LilyPond input."
 msgstr ""
+"Dieses Programm wandelt ABC-Musikdateien in LilyPond-Eingabe um\n"
+"(siehe auch http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt)."
 
-#: abc2ly.py:1354
-#, fuzzy
+#: abc2ly.py:1360
 msgid "set output filename to FILE"
-msgstr "Ausgabe in DATEI schreiben"
+msgstr "Ausgabedateiname auf DATEI setzen"
 
-#: abc2ly.py:1356
+#: abc2ly.py:1362
 msgid "be strict about succes"
-msgstr ""
+msgstr "bzgl. Erfolg streng sein"
 
-#: abc2ly.py:1358
+#: abc2ly.py:1364
 msgid "preserve ABC's notion of beams"
-msgstr ""
+msgstr "ABC's Prinzip der Balken beibehalten"
 
-#: convert-ly.py:41
-#, fuzzy
+#: convert-ly.py:49
 msgid ""
 "Update LilyPond input to newer version.  By default, update from the\n"
 "version taken from the \\version command, to the current LilyPond version.\n"
@@ -108,371 +108,364 @@ msgid ""
 "  convert-ly --from=2.3.28 --to 2.5.21 foobar.ly\n"
 msgstr ""
 "LilyPond auf neuere Version bringen. Standardmäßig wird von der Version vom\n"
-"Kommando \\version zur aktuellen LilyPond-Version gegangen."
+"Kommando \\version zur aktuellen LilyPond-Version gegangen.\n"
+"\n"
+"Beispiele:\n"
+"\n"
+"  convert-ly -e old.ly\n"
+"  convert-ly --from=2.3.28 --to 2.5.21 foobar.ly\n"
 
-#: convert-ly.py:57 lilypond-book.py:97 warn.cc:48 input.cc:90
+#: convert-ly.py:67 lilypond-book.py:115 warn.cc:48 input.cc:81
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "Warnung: %s"
 
-#: convert-ly.py:60 lilypond-book.py:100 warn.cc:54 input.cc:96 input.cc:104
+#: convert-ly.py:70 lilypond-book.py:118 warn.cc:54 input.cc:87 input.cc:95
 #, c-format, python-format
 msgid "error: %s"
 msgstr "Fehler: %s"
 
-#: convert-ly.py:76 etf2ly.py:1190 lilypond-book.py:120 midi2ly.py:98
+#: convert-ly.py:86 etf2ly.py:1200 lilypond-book.py:138 midi2ly.py:114
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Vertrieben unter den Bedingungen der GNU General Public License."
 
-#: convert-ly.py:77 etf2ly.py:1191 lilypond-book.py:121 midi2ly.py:99
+#: convert-ly.py:87 etf2ly.py:1201 lilypond-book.py:139 midi2ly.py:115
 msgid "It comes with NO WARRANTY."
 msgstr "Es wird OHNE GARANTIE ausgeliefert."
 
-#: convert-ly.py:88 convert-ly.py:108
+#: convert-ly.py:98 convert-ly.py:118
 msgid "VERSION"
-msgstr ""
+msgstr "VERSION"
 
-#: convert-ly.py:90
+#: convert-ly.py:100
 msgid "start from VERSION [default: \\version found in file]"
-msgstr ""
+msgstr "bei VERSION anfangen [Standard: \\version in Datei gefunden]"
 
-#: convert-ly.py:93
+#: convert-ly.py:103
 msgid "edit in place"
-msgstr ""
+msgstr "vor Ort ändern"
 
-#: convert-ly.py:96
+#: convert-ly.py:106
 msgid "do not add \\version command if missing"
-msgstr ""
+msgstr "kein Kommando \\version hinzufügen, falls es fehlt"
 
-#: convert-ly.py:102
+#: convert-ly.py:112
 msgid "print rules [default: --from=0, --to=@TOPLEVEL_VERSION@]"
-msgstr ""
+msgstr "Regeln ausdrucken [Standard: --from=0, --to=@TOPLEVEL_VERSION@]"
 
-#: convert-ly.py:107
+#: convert-ly.py:117
 msgid "convert to VERSION [default: @TOPLEVEL_VERSION@]"
-msgstr ""
+msgstr "zu VERSION konvertieren [Standard: @TOPLEVEL_VERSION@]"
 
-#: convert-ly.py:154
+#: convert-ly.py:164
 msgid "Applying conversion: "
 msgstr "Anwenden der Umwandlung: "
 
-#: convert-ly.py:166
-#, fuzzy
+#: convert-ly.py:176
 msgid "error while converting"
-msgstr "%s: Fehler beim Umwandeln"
+msgstr "Fehler beim Umwandeln"
 
-#: convert-ly.py:168 score-engraver.cc:74
+#: convert-ly.py:178 score-engraver.cc:73
 msgid "Aborting"
 msgstr "Abbruch"
 
-#: convert-ly.py:192
+#: convert-ly.py:202
 #, python-format
 msgid "Processing `%s'... "
 msgstr "»%s« wird verarbeitet..."
 
-#: convert-ly.py:279 source-file.cc:54
+#: convert-ly.py:289 source-file.cc:56
 #, c-format, python-format
 msgid "can't open file: `%s'"
 msgstr "Kann Datei nicht öffnen: `%s'"
 
-#: convert-ly.py:286
-#, fuzzy, python-format
+#: convert-ly.py:296
+#, python-format
 msgid "can't determine version for `%s'. Skipping"
-msgstr "%s Version für »%s« kann nicht erkannt werden"
+msgstr "Version für »%s« kann nicht erkannt werden. Wird übersprungen"
 
-#: etf2ly.py:1198
+#: etf2ly.py:1208
 msgid ""
 "Enigma Transport Format is a format used by Coda Music Technology's\n"
 "Finale product. This program will convert a subset of ETF to a\n"
 "ready-to-use lilypond file."
 msgstr ""
+"Enigma Transport-Format ist ein von Coda Music Technology's Finale\n"
+"verwendetes Format. Dieses Programm wird eine Teilmenge von ETF in\n"
+"eine von Lilypond-verwendbare Datei umwandeln."
 
-#: etf2ly.py:1201 midi2ly.py:885
+#: etf2ly.py:1211 midi2ly.py:901
 msgid "write output to FILE"
 msgstr "Ausgabe in DATEI schreiben"
 
-#: etf2ly.py:1202 midi2ly.py:886 main.cc:173 main.cc:179
+#: etf2ly.py:1212 midi2ly.py:902 main.cc:172 main.cc:178
 msgid "FILE"
 msgstr "DATEI"
 
-#: etf2ly.py:1204 midi2ly.py:899
-#, fuzzy
+#: etf2ly.py:1214 midi2ly.py:915
 msgid "show warranty"
-msgstr "Informationen zu Gewährleistung und Copyright anzeigen"
+msgstr "Gewährleistung anzeigen"
 
-#: lilypond-book.py:70
-#, fuzzy
+#: lilypond-book.py:88
 msgid ""
 "Process LilyPond snippets in hybrid HTML, LaTeX, or texinfo document.\n"
 "\n"
 "Example usage:\n"
 "\n"
-" lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BOOK\n"
-" lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" BOOK\n"
-" lilypond-book --process='lilypond -I include' BOOK\n"
+"   lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BOOK\n"
+"   lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" BOOK\n"
+"   lilypond-book --process='lilypond -I include' BOOK\n"
 msgstr ""
-"LilyPond-Auszüge in gemischtem HTML-, LaTeX- oder texinfo-Dokument "
-"verarbeiten.\n"
+"LilyPond-Auszüge in gemischtem HTML-, LaTeX- oder texinfo-Dokument verarbeiten.\n"
+"\n"
 "Beispiel-Aufrufe:\n"
 "\n"
 "   lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BUCH\n"
 "   lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" BUCH\n"
 "   lilypond-book --process='lilypond -I include' BUCH\n"
 
-#: lilypond-book.py:86
+#: lilypond-book.py:104
 #, python-format
 msgid "Exiting (%d)..."
-msgstr "Beende (%d)..."
+msgstr "Beenden (%d)..."
 
-#: lilypond-book.py:118
+#: lilypond-book.py:136
 #, python-format
 msgid "Copyright (c) %s by"
 msgstr "Copyright (c) %s bei"
 
-#: lilypond-book.py:129
+#: lilypond-book.py:147
 msgid "FILTER"
 msgstr "FILTER"
 
-#: lilypond-book.py:132
+#: lilypond-book.py:150
 msgid "pipe snippets through FILTER [convert-ly -n -]"
 msgstr "Auszüge durch FILTER [convert-ly -n -] leiten (Pipe)"
 
-#: lilypond-book.py:135
-#, fuzzy
+#: lilypond-book.py:152
 msgid "use output format FORMAT (texi [default], texi-html, latex, html)"
-msgstr ""
-"Ausgabeformat FMT (texi [Vorgabe], texi-html,\n"
-"\t\tlatex, html) verwenden"
+msgstr "Ausgabeformat FORMAT (texi [Vorgabe], texi-html, latex, html) verwenden"
 
-#: lilypond-book.py:138
+#: lilypond-book.py:154
 msgid "add DIR to include path"
 msgstr "VERZ zum Einfügepfad hinzufügen"
 
-#: lilypond-book.py:143
+#: lilypond-book.py:159
 msgid "write output to DIR"
 msgstr "Ausgabe in DATEI schreiben"
 
-#: lilypond-book.py:147
+#: lilypond-book.py:162
 msgid "COMMAND"
 msgstr "BEFEHL"
 
-#: lilypond-book.py:148
+#: lilypond-book.py:163
 msgid "process ly_files using COMMAND FILE..."
 msgstr "ly_files mit BEFEHL DATEI... verarbeiten"
 
-#: lilypond-book.py:159
-#, fuzzy
-msgid ""
-"extract all PostScript fonts into INPUT.psfonts for LaTeXmust use this with "
-"dvips -h INPUT.psfonts"
+#: lilypond-book.py:168
+msgid "extract all PostScript fonts into INPUT.psfonts for LaTeXmust use this with dvips -h INPUT.psfonts"
 msgstr ""
-"alle PostScript-Schriftarten in DATEI für LaTeX herausziehen\n"
-"\t dies muss mit dvips -h DATEI verwendet werden"
+"alle PostScript-Schriftarten für LaTeX entnehmen und in EINGABE.psfonts schreiben.\n"
+"Dies muss mit dvips -h EINGABE.psfonts verwendet werden"
 
-#: lilypond-book.py:162 midi2ly.py:896 main.cc:183
+#: lilypond-book.py:171 midi2ly.py:912 main.cc:182
 msgid "be verbose"
 msgstr "wortreich sein"
 
-#: lilypond-book.py:168 main.cc:184
+#: lilypond-book.py:177 main.cc:183
 msgid "show warranty and copyright"
 msgstr "Informationen zu Gewährleistung und Copyright anzeigen"
 
-#: lilypond-book.py:721
+#: lilypond-book.py:734
 #, python-format
 msgid "file not found: %s"
 msgstr "Datei `%s' nicht gefunden"
 
-#: lilypond-book.py:952
+#: lilypond-book.py:963
 #, python-format
 msgid "deprecated ly-option used: %s=%s"
 msgstr "veraltete ly-option verwendet: %s=%s"
 
-#: lilypond-book.py:955
+#: lilypond-book.py:966
 #, python-format
 msgid "compatibility mode translation: %s=%s"
 msgstr "Übersetzung im Kompatibilitätsmodus: %s=%s"
 
-#: lilypond-book.py:959
+#: lilypond-book.py:970
 #, python-format
 msgid "deprecated ly-option used: %s"
 msgstr "veraltete ly-option verwendet: %s"
 
-#: lilypond-book.py:962
+#: lilypond-book.py:973
 #, python-format
 msgid "compatibility mode translation: %s"
 msgstr "Übersetzung im Kompatibilitätsmodus: %s"
 
-#: lilypond-book.py:981
+#: lilypond-book.py:992
 #, python-format
 msgid "ignoring unknown ly option: %s"
 msgstr "unbekannte Option ignoriert: %s"
 
-#: lilypond-book.py:1318
+#: lilypond-book.py:1327
 #, python-format
 msgid "Opening filter `%s'"
-msgstr "Öffne Filter `%s'"
+msgstr "Filter »%s« wird geöffnet"
 
-#: lilypond-book.py:1335
+#: lilypond-book.py:1344
 #, python-format
 msgid "`%s' failed (%d)"
-msgstr "`%s' gescheitert (%d)"
+msgstr "»%s« gescheitert (%d)"
 
-#: lilypond-book.py:1336
+#: lilypond-book.py:1345
 msgid "The error log is as follows:"
 msgstr "Das Fehlerprotokoll lautet wie folgt:"
 
-#: lilypond-book.py:1405
-msgid "Can't find \\begin{document} in LaTeX document"
-msgstr ""
-
-#: lilypond-book.py:1513
+#: lilypond-book.py:1512
 msgid "Writing snippets..."
-msgstr "Schreibe Auszüge..."
+msgstr "Auszüge werden geschrieben..."
 
-#: lilypond-book.py:1518
+#: lilypond-book.py:1517
 msgid "Processing..."
 msgstr "Verarbeiten..."
 
-#: lilypond-book.py:1522
+#: lilypond-book.py:1521
 msgid "All snippets are up to date..."
 msgstr "Alle Auszüge sind auf dem neuesten Stand..."
 
-#: lilypond-book.py:1532
+#: lilypond-book.py:1531
 #, python-format
 msgid "can't determine format for: %s"
 msgstr "Format für %s kann nicht ermittelt werden"
 
-#: lilypond-book.py:1543
+#: lilypond-book.py:1542
 #, python-format
 msgid "%s is up to date."
 msgstr "%s ist aktuell."
 
-#: lilypond-book.py:1549
+#: lilypond-book.py:1548
 #, python-format
 msgid "Writing `%s'..."
-msgstr "Schreibe `%s'..."
+msgstr "»%s« wird geschrieben..."
 
-#: lilypond-book.py:1604
+#: lilypond-book.py:1595
 msgid "Output would overwrite input file; use --output."
 msgstr "Ausgabe würde Eingabedatei überschreiben; verwenden Sie --output."
 
-#: lilypond-book.py:1608
+#: lilypond-book.py:1599
 #, python-format
 msgid "Reading %s..."
 msgstr "%s lesen..."
 
-#: lilypond-book.py:1627
+#: lilypond-book.py:1618
 msgid "Dissecting..."
 msgstr "Zerlegen..."
 
-#: lilypond-book.py:1643
+#: lilypond-book.py:1634
 #, python-format
 msgid "Compiling %s..."
 msgstr "%s kompilieren..."
 
-#: lilypond-book.py:1652
+#: lilypond-book.py:1643
 #, python-format
 msgid "Processing include: %s"
-msgstr "Verarbeite Einfügung: %s"
+msgstr "Einfügung wird verarbeitet: %s"
 
-#: lilypond-book.py:1666
+#: lilypond-book.py:1657
 #, python-format
 msgid "Removing `%s'"
 msgstr "»%s« wird gelöscht"
 
-#: lilypond-book.py:1743
+#: lilypond-book.py:1717
 #, python-format
 msgid "Writing fonts to %s..."
 msgstr "Schriftarten werden nach %s geschrieben..."
 
-#: lilypond-book.py:1758
-#, fuzzy
+#: lilypond-book.py:1729
 msgid "option --psfonts not used"
-msgstr "Option --psfonts=DATEI nicht verwendet"
+msgstr "Option --psfonts nicht verwendet"
 
-#: lilypond-book.py:1759
+#: lilypond-book.py:1730
 msgid "processing with dvips will have no fonts"
 msgstr "Verarbeitung mit dvips wird keine Schriftarten haben"
 
-#: lilypond-book.py:1762
+#: lilypond-book.py:1736
 msgid "DVIPS usage:"
 msgstr "DVIPS-Aufruf:"
 
-#: midi2ly.py:106 lily-library.scm:541 lily-library.scm:549
+#: midi2ly.py:122 lily-library.scm:489 lily-library.scm:497
 msgid "warning: "
 msgstr "Warnung: "
 
-#: midi2ly.py:109 midi2ly.py:925
+#: midi2ly.py:125 midi2ly.py:941
 msgid "error: "
 msgstr "Fehler: "
 
-#: midi2ly.py:110
+#: midi2ly.py:126
 msgid "Exiting ... "
 msgstr "Beenden ... "
 
-#: midi2ly.py:857
+#: midi2ly.py:873
 #, python-format
 msgid "%s output to `%s'..."
-msgstr "%s nach `%s' ausgeben..."
+msgstr "%s nach »%s« ausgeben..."
 
-#: midi2ly.py:871
+#: midi2ly.py:887
 msgid "Convert MIDI to LilyPond source."
 msgstr "MIDI nach LilyPond-Quelltext konvertieren."
 
-#: midi2ly.py:875
+#: midi2ly.py:891
 msgid "print absolute pitches"
 msgstr "Absolute Tonhöhen ausgeben"
 
-#: midi2ly.py:877 midi2ly.py:889
+#: midi2ly.py:893 midi2ly.py:905
 msgid "DUR"
 msgstr "DAUER"
 
-#: midi2ly.py:878
+#: midi2ly.py:894
 msgid "quantise note durations on DUR"
 msgstr "Notenlängen auf DAUER quantisieren"
 
-#: midi2ly.py:881
+#: midi2ly.py:897
 msgid "print explicit durations"
 msgstr "Explizite Notenlängen ausgeben"
 
-#: midi2ly.py:882
+#: midi2ly.py:898
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "Tonart setzen: VORZ=+Kreuze|-B's; MOLL=1"
 
-#: midi2ly.py:883
+#: midi2ly.py:899
 msgid "ALT[:MINOR]"
 msgstr "VORZ[:MOLL]"
 
-#: midi2ly.py:888
+#: midi2ly.py:904
 msgid "quantise note starts on DUR"
 msgstr "Notenanfänge auf DAUER quantisieren"
 
-#: midi2ly.py:891
+#: midi2ly.py:907
 msgid "DUR*NUM/DEN"
 msgstr "DAUER*ZÄHLER/NENNER"
 
 # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
-#: midi2ly.py:894
+#: midi2ly.py:910
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "Wertaufteilungsdauern DAUER*ZÄHLER/NENNER erlauben"
 
-#: midi2ly.py:902
+#: midi2ly.py:918
 msgid "treat every text as a lyric"
 msgstr "Jeden Text als Liedtext behandeln"
 
-#: midi2ly.py:905
-#, fuzzy
+#: midi2ly.py:921
 msgid "example"
-msgstr "Beispiele"
+msgstr "Beispiel"
 
-#: midi2ly.py:926
+#: midi2ly.py:942
 msgid "no files specified on command line."
 msgstr "Keine Dateien auf der Kommandozeile angegeben."
 
 #: getopt-long.cc:141
 #, c-format
 msgid "option `%s' requires an argument"
-msgstr "Option `%s' benötigt ein Argument"
+msgstr "Option »%s« benötigt ein Argument"
 
 #: getopt-long.cc:145
 #, c-format
@@ -482,19 +475,19 @@ msgstr "Option `%s' erlaubt kein Argument"
 #: getopt-long.cc:149
 #, c-format
 msgid "unrecognized option: `%s'"
-msgstr "unerkannte Option: `%s'"
+msgstr "unerkannte Option: »%s«"
 
 #: getopt-long.cc:155
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
-msgstr "ungültiges Argument `%s' für Option `%s'"
+msgstr "ungültiges Argument »%s« für Option »%s«"
 
-#: warn.cc:68 grob.cc:552 input.cc:82
+#: warn.cc:68 grob.cc:462
 #, c-format
 msgid "programming error: %s"
 msgstr "Programmierfehler: %s"
 
-#: warn.cc:69 input.cc:83
+#: warn.cc:69
 msgid "continuing, cross fingers"
 msgstr "Fortsetzung, die Finger kreuzen"
 
@@ -513,45 +506,43 @@ msgstr "unbekannte Option ignoriert: %s"
 msgid "pair or context-name expected for accidental rule, found %s"
 msgstr "Paar oder Kontextname für Vorzeichenregel erwartet, %s gefunden"
 
-#: accidental.cc:243 key-signature-interface.cc:124
+#: accidental.cc:239 key-signature-interface.cc:124
 #, c-format
 msgid "accidental `%s' not found"
 msgstr "Vorzeichen `%s' nicht gefunden"
 
-#: align-interface.cc:164
+#: align-interface.cc:160
 msgid ""
 "vertical alignment called before line-breaking.\n"
 "Only do cross-staff spanners with PianoStaff."
 msgstr ""
+"vertikale Ausrichtung vor Zeilenumbruch aufgerufen.\n"
+"Nur Zeilenzusammenfassungen mit PianoStaff erzeugen."
 
-#: align-interface.cc:314
-msgid "tried to get a translation for something that isn't my child"
-msgstr ""
-
-#: all-font-metrics.cc:164
+#: all-font-metrics.cc:213
 #, c-format
 msgid "can't find font: `%s'"
-msgstr "Kann Schriftart nicht finden: `%s'"
+msgstr "Schriftart kann nicht gefunden werden: »%s«"
 
-#: all-font-metrics.cc:165
+#: all-font-metrics.cc:214
 msgid "loading default font"
 msgstr "Standardschriftart wird geladen"
 
-#: all-font-metrics.cc:172
+#: all-font-metrics.cc:224
 #, c-format
 msgid "can't find default font: `%s'"
-msgstr "Kann Standardschriftart nicht finden: `%s'"
+msgstr "Standardschriftart kann nicht gefunden werden: »%s«"
 
-#: all-font-metrics.cc:173 includable-lexer.cc:62 lily-parser-scheme.cc:108
+#: all-font-metrics.cc:225 includable-lexer.cc:62 lily-parser-scheme.cc:97
 #, c-format
 msgid "(search path: `%s')"
-msgstr "(Suchpfad: `%s')"
+msgstr "(Suchpfad: »%s«)"
 
-#: all-font-metrics.cc:174 volta-engraver.cc:158
+#: all-font-metrics.cc:226 volta-engraver.cc:157
 msgid "giving up"
-msgstr "Gebe auf"
+msgstr "aufgeben"
 
-#: apply-context-iterator.cc:31
+#: apply-context-iterator.cc:34
 msgid "\\applycontext argument is not a procedure"
 msgstr "Argument für \\applycontext ist keine Prozedur"
 
@@ -572,60 +563,52 @@ msgstr "gibt es zwei Axis_group_engravers?"
 msgid "removing this vertical group"
 msgstr "entfernen dieser vertikalen Gruppe"
 
-#: axis-group-interface.cc:94
-msgid "tried to calculate pure-height at a non-breakpoint"
-msgstr ""
-
 #: bar-check-iterator.cc:73
 #, c-format
 msgid "barcheck failed at: %s"
 msgstr "Taktüberprüfung gescheitert bei: %s"
 
-#: beam-engraver.cc:128
+#: beam-engraver.cc:136
 msgid "already have a beam"
 msgstr "Balken bereits vorhanden"
 
-#: beam-engraver.cc:196
+#: beam-engraver.cc:205
 msgid "unterminated beam"
 msgstr "unbegrenzter Balken"
 
-#: beam-engraver.cc:237 chord-tremolo-engraver.cc:134
+#: beam-engraver.cc:246 chord-tremolo-engraver.cc:162
 msgid "stem must have Rhythmic structure"
 msgstr "Notenhals muss rhythmische Struktur aufweisen"
 
-#: beam-engraver.cc:245
+#: beam-engraver.cc:259
 msgid "stem doesn't fit in beam"
 msgstr "Notenhals passt nicht zum Balken"
 
-#: beam-engraver.cc:246
+#: beam-engraver.cc:260
 msgid "beam was started here"
 msgstr "Balken wurde hier begonnen"
 
 #: beam-quanting.cc:306
-#, fuzzy
 msgid "no feasible beam position"
-msgstr "Keine praktikablen Zeilenumbrüche gefunden"
+msgstr "Keine praktikable Balkenposition"
 
-#: beam.cc:144
-#, fuzzy
-msgid "removing beam with no stems"
+#: beam.cc:126
+msgid "removing beam with less than two stems"
 msgstr "Balken mit weniger als zwei Notenhälsen wird entfernt"
 
-#: beam.cc:995
+#: beam.cc:981
 msgid "no viable initial configuration found: may not find good beam slope"
-msgstr ""
-"Keine funktionsfähige Anfangskonfiguration gefunden: Es kann evtl. keine "
-"optimale Balkenneigung gefunden werden"
+msgstr "Keine funktionsfähige Anfangskonfiguration gefunden: Es kann evtl. keine optimale Balkenneigung gefunden werden"
 
-#: break-align-interface.cc:208
+#: break-align-interface.cc:194
 #, c-format
 msgid "No spacing entry from %s to `%s'"
-msgstr "Kein Leerraumeintrag von %s nach `%s'"
+msgstr "Kein Leerraumeintrag von %s nach »%s«"
 
 #: change-iterator.cc:23
 #, c-format
 msgid "can't change `%s' to `%s'"
-msgstr "kann nicht `%s' nach `%s' ändern"
+msgstr "»%s« kann nicht nach »%s« geändert werden"
 
 #. FIXME: constant error message.
 #: change-iterator.cc:82
@@ -647,132 +630,138 @@ msgstr "kein Umschalten zum gleichen Kontexttypen: %s"
 msgid "none of these in my family"
 msgstr "keiner davon befindet sich in meiner Familie"
 
-#: chord-tremolo-engraver.cc:88
-#, fuzzy
-msgid "No tremolo to end"
-msgstr "Kein Bindebogen zu beenden"
+#: chord-tremolo-engraver.cc:96
+#, c-format
+msgid "expect 2 elements for chord tremolo, found %d"
+msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
 
-#: chord-tremolo-engraver.cc:110
+#: chord-tremolo-engraver.cc:132
 msgid "unterminated chord tremolo"
 msgstr "unbegrenztes Akkord-Tremolo"
 
-#: chord-tremolo-iterator.cc:33
-#, c-format
-msgid "expect 2 elements for chord tremolo, found %d"
-msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
+#: chord-tremolo-iterator.cc:60
+msgid "no one to print a tremolos"
+msgstr "niemand vorhanden für Tremoloausgabe"
 
 #: clef.cc:55
 #, c-format
 msgid "clef `%s' not found"
-msgstr "Schlüssel `%s' nicht gefunden"
+msgstr "Schlüssel »%s« nicht gefunden"
 
 #: cluster.cc:110
 #, c-format
 msgid "unknown cluster style `%s'"
-msgstr "unbekannter Gruppierungsstil: `%s'"
+msgstr "unbekannter Gruppierungsstil: »%s«"
 
 #: cluster.cc:135
 msgid "junking empty cluster"
 msgstr "Leere Menge wird verworfen"
 
-#: coherent-ligature-engraver.cc:106
+#: coherent-ligature-engraver.cc:86
+#, c-format
+msgid "gotcha: ptr=%ul"
+msgstr "erwischt: ptr=%ul"
+
+#: coherent-ligature-engraver.cc:93
+msgid "distance undefined, assuming 0.1"
+msgstr "Abstand undefiniert, 0.1 angenommen"
+
+#: coherent-ligature-engraver.cc:96
+#, c-format
+msgid "distance=%f"
+msgstr "Abstand=%f"
+
+#: coherent-ligature-engraver.cc:136
 #, c-format
 msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
-msgstr "Coherent_ligature_engraver: setze `spacing-increment=0.01': ptr=%ul"
+msgstr "Coherent_ligature_engraver: setze »spacing-increment=0.01«: ptr=%ul"
+
+#: constrained-breaking.cc:124
+msgid "no system number set in constrained-breaking"
+msgstr "keine Systemzahl bei Bedingungsverletzung gesetzt"
 
 #. if we get to here, just put everything on one line
-#: constrained-breaking.cc:176 constrained-breaking.cc:193
-#, fuzzy
+#: constrained-breaking.cc:225 constrained-breaking.cc:241
 msgid "couldn't find line breaking that satisfies constraints"
-msgstr ""
-"es können keine Zeilenumbrüche gefunden werden, die die Bedingungen erfüllen"
+msgstr "es können keine Zeilenumbrüche gefunden werden, die die Bedingungen erfüllen"
 
-#: context-def.cc:128
+#: context-def.cc:123
 #, c-format
 msgid "program has no such type: `%s'"
 msgstr "Das Programm hat keinen solchen Typen: »%s«"
 
+#: context-def.cc:311
+#, c-format
+msgid "can't find: `%s'"
+msgstr "»%s« kann nicht gefunden werden"
+
 #: context-property.cc:77
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "Symbol-Argumente für \\override und \\revert benötigt"
 
-#: context.cc:151
+#: context.cc:160
 #, c-format
 msgid "can't find or create new `%s'"
 msgstr "ein neues »%s« kann weder gefunden noch erzeugt werden"
 
-#: context.cc:213
+#: context.cc:222
 #, c-format
 msgid "can't find or create `%s' called `%s'"
 msgstr "»%s« (»%s« genannt) kann weder gefunden noch erzeugt werden"
 
 #: context.cc:276
 #, c-format
-msgid "Invalid CreateContext event: Cannot create %s context"
-msgstr ""
-
-#: context.cc:388
-#, c-format
 msgid "can't find or create: `%s'"
-msgstr "`%s' kann weder gefunden noch erzeugt werden"
+msgstr "»%s« kann weder gefunden noch erzeugt werden"
 
 #: custos.cc:77
 #, c-format
 msgid "custos `%s' not found"
-msgstr "custos `%s' nicht gefunden"
-
-#: dispatcher.cc:72
-msgid "Event class should be a symbol"
-msgstr ""
+msgstr "custos »%s« nicht gefunden"
 
-#: dispatcher.cc:79
-#, fuzzy, c-format
-msgid "Unknown event class %s"
-msgstr "Unbekannte Schnittstelle `%s'"
-
-#: dynamic-engraver.cc:186 span-dynamic-performer.cc:87
+#: dynamic-engraver.cc:181 span-dynamic-performer.cc:84
 msgid "can't find start of (de)crescendo"
-msgstr "kann den Anfang des (De-) Crescendos nicht finden"
+msgstr "Anfang des (De-) Crescendos kann nicht gefunden werden"
 
-#: dynamic-engraver.cc:195
+#: dynamic-engraver.cc:190
 msgid "already have a decrescendo"
-msgstr "habe bereits ein Decrescendo"
+msgstr "Decrescendo bereits vorhanden"
 
-#: dynamic-engraver.cc:197
+#: dynamic-engraver.cc:192
 msgid "already have a crescendo"
-msgstr "habe bereits ein Crescendo"
+msgstr "Crescendo bereits vorhanden"
 
-#: dynamic-engraver.cc:200
+#: dynamic-engraver.cc:195
 msgid "cresc starts here"
 msgstr "Crescendo beginnt hier"
 
-#: dynamic-engraver.cc:323
+#: dynamic-engraver.cc:318
 msgid "unterminated (de)crescendo"
 msgstr "unbegrenztes (De-) Crescendo"
 
-#: engraver.cc:102
-msgid "not setting creation callback: not a procedure"
-msgstr ""
+#: event-chord-iterator.cc:53 output-property-music-iterator.cc:31
+#, c-format
+msgid "junking event: `%s'"
+msgstr "Ereignis wird ignoriert: »%s«"
 
-#: extender-engraver.cc:130 extender-engraver.cc:139
+#: extender-engraver.cc:131 extender-engraver.cc:140
 msgid "unterminated extender"
 msgstr "unbegrenzte Erweiterung"
 
+#: folded-repeat-iterator.cc:63
+msgid "no one to print a repeat brace"
+msgstr "niemand zur Erzeugung einer Wiederholung"
+
 #: font-config.cc:28
 msgid "Initializing FontConfig..."
 msgstr "FontConfig wird initialisiert..."
 
-#: font-config.cc:44
+#: font-config.cc:38
 #, c-format
-msgid "Rebuilding FontConfig cache %s, this may take a while..."
-msgstr ""
+msgid "Rebuilding FontConfig cache %s. this may take a while..."
+msgstr "FontConfig-Cache %s wird erneuert. Dies kann eine Weile dauern..."
 
-#: font-config.cc:55
-#, fuzzy, c-format
-msgid "failed adding font directory: %s"
-msgstr "Schriftartverzeichnis wird hinzugefügt: %s"
-
-#: font-config.cc:57
+#: font-config.cc:49 font-config.cc:51
 #, c-format
 msgid "adding font directory: %s"
 msgstr "Schriftartverzeichnis wird hinzugefügt: %s"
@@ -783,75 +772,82 @@ msgstr "Unendlichkeit oder NaN bei Umwandlung einer Real-Zahl gefunden"
 
 #: general-scheme.cc:162
 msgid "setting to zero"
-msgstr "auf NUll gesetzt"
+msgstr "auf Null gesetzt"
 
 #: glissando-engraver.cc:91
 msgid "unterminated glissando"
 msgstr "unbegrenztes Glissando."
 
-#: global-context-scheme.cc:91 global-context-scheme.cc:107
+#: global-context-scheme.cc:50 global-context-scheme.cc:77
 msgid "no music found in score"
 msgstr "keine Musik in der Partitur gefunden"
 
-#: global-context-scheme.cc:97
+#: global-context-scheme.cc:68
 msgid "Interpreting music... "
 msgstr "Interpretation der Musik..."
 
-#: global-context-scheme.cc:120
+#: global-context-scheme.cc:88
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "verstrichene Zeit: %.2f Sekunden"
 
-#: gregorian-ligature-engraver.cc:59
+#: global-context.cc:159
+#, c-format
+msgid "can't find `%s' context"
+msgstr "Kontext »%s« kann nicht gefunden werden"
+
+#: gourlay-breaking.cc:202
+#, c-format
+msgid "Optimal demerits: %f"
+msgstr "Optimale Bewertung: %f"
+
+#: gourlay-breaking.cc:207
+msgid "no feasible line breaking found"
+msgstr "Keine praktikablen Zeilenumbrüche gefunden"
+
+#: gourlay-breaking.cc:215
+msgid "can't find line breaking that satisfies constraints"
+msgstr "es können keine Zeilenumbrüche gefunden werden, die die Bedingungen erfüllen"
+
+#: gregorian-ligature-engraver.cc:61
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s ignoriert"
 
-#: gregorian-ligature-engraver.cc:64
+#: gregorian-ligature-engraver.cc:66
 #, c-format
 msgid "implied \\%s added"
 msgstr "implizites \\%s hinzugefügt"
 
 #. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:212
-#, fuzzy
+#: gregorian-ligature-engraver.cc:214
 msgid "can't apply `\\~' on first head of ligature"
-msgstr ""
-"»\\~« kann nicht auf ersten Kopf der Bindung angewendet werden; »\\~« "
-"ignoriert"
+msgstr "»\\~« kann nicht auf ersten Kopf der Bindung angewendet werden"
 
 #. (pitch == prev_pitch)
-#: gregorian-ligature-engraver.cc:224
-#, fuzzy
+#: gregorian-ligature-engraver.cc:226
 msgid "can't apply `\\~' on heads with identical pitch"
-msgstr ""
-"»\\~« kann nicht auf Köpfe mit gleicher Höhe angewendet werden; »\\~« "
-"ignoriert"
+msgstr "»\\~« kann nicht auf Köpfe mit gleicher Höhe angewendet werden"
 
 #: grob-interface.cc:48
 #, c-format
 msgid "Unknown interface `%s'"
-msgstr "Unbekannte Schnittstelle `%s'"
+msgstr "Unbekannte Schnittstelle »%s«"
 
 #: grob-interface.cc:59
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "Grob »%s« hat keine Schnittstelle für Eigenschaft »%s«"
 
-#: grob-property.cc:36
-msgid "not setting modification callback: not a procedure"
-msgstr ""
-
-#: grob.cc:253
-#, fuzzy
+#: grob.cc:242
 msgid "Infinity or NaN encountered"
 msgstr "Unendlichkeit oder NaN bei Umwandlung einer Real-Zahl gefunden"
 
-#: hairpin.cc:179
+#: hairpin.cc:149
 msgid "decrescendo too small"
 msgstr "Decrescendo zu kurz"
 
-#: hairpin.cc:180
+#: hairpin.cc:150
 msgid "crescendo too small"
 msgstr "Crescendo zu kurz"
 
@@ -875,40 +871,40 @@ msgstr "unbegrenzter Bindestrich; entfernt"
 msgid "include files are not allowed in safe mode"
 msgstr "eingefügte Dateien sind im abgesicherten Modus nicht erlaubt"
 
-#: includable-lexer.cc:60 lily-guile.cc:96 lily-parser-scheme.cc:115
+#: includable-lexer.cc:60 lily-guile.cc:96 lily-parser-scheme.cc:104
 #, c-format
 msgid "can't find file: `%s'"
 msgstr "Datei »%s« kann nicht gefunden werden"
 
-#: input.cc:112 source-file.cc:168 source-file.cc:183
+#: input.cc:103 source-file.cc:153 source-file.cc:168
 msgid "position unknown"
 msgstr "Position unbekannt"
 
-#: ligature-engraver.cc:95
+#: ligature-engraver.cc:100
 msgid "can't find start of ligature"
 msgstr "Anfang der Bindung kann nicht gefunden werden"
 
-#: ligature-engraver.cc:100
+#: ligature-engraver.cc:105
 msgid "no right bound"
 msgstr "keine rechte Begrenzung"
 
-#: ligature-engraver.cc:122
+#: ligature-engraver.cc:127
 msgid "already have a ligature"
 msgstr "habe bereits eine Bindung"
 
-#: ligature-engraver.cc:131
+#: ligature-engraver.cc:136
 msgid "no left bound"
 msgstr "keine linke Begrenzung"
 
-#: ligature-engraver.cc:175
+#: ligature-engraver.cc:180
 msgid "unterminated ligature"
 msgstr "unbegrenzte Bindung"
 
-#: ligature-engraver.cc:204
+#: ligature-engraver.cc:209
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "Pause wird ignoriert: Bindung darf keine Pause enthalten"
 
-#: ligature-engraver.cc:205
+#: ligature-engraver.cc:210
 msgid "ligature was started here"
 msgstr "Bindung wurde hier begonnen"
 
@@ -917,50 +913,50 @@ msgstr "Bindung wurde hier begonnen"
 msgid "(load path: `%s')"
 msgstr "(Lade-Pfad: `%s')"
 
-#: lily-guile.cc:439
+#: lily-guile.cc:441
 #, c-format
 msgid "can't find property type-check for `%s' (%s)."
-msgstr "Eigenschafts-Typprüfung für `%s' (%s) kann nicht gefunden werden."
+msgstr "Eigenschafts-Typprüfung für »%s« (%s) kann nicht gefunden werden."
 
-#: lily-guile.cc:442
+#: lily-guile.cc:444
 msgid "perhaps a typing error?"
 msgstr "vielleicht ein Tippfehler?"
 
-#: lily-guile.cc:448
+#: lily-guile.cc:450
 msgid "doing assignment anyway"
 msgstr "Zuweisung wird trotzdem durchgeführt"
 
-#: lily-guile.cc:460
+#: lily-guile.cc:462
 #, c-format
 msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr "Typprüfung für »%s« gescheitert; Wert »%s« muss vom Typ »%s« sein"
 
-#: lily-lexer.cc:222
+#: lily-lexer.cc:223
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "Bezeichnername ist ein Schlüsselwort: »%s«"
 
-#: lily-lexer.cc:237
+#: lily-lexer.cc:238
 #, c-format
 msgid "error at EOF: %s"
 msgstr "Fehler am Dateiende (EOF): %s"
 
-#: lily-parser-scheme.cc:30
+#: lily-parser-scheme.cc:29
 #, c-format
 msgid "deprecated function called: %s"
 msgstr "veraltete Funktion aufgerufen: %s"
 
-#: lily-parser-scheme.cc:89
-#, fuzzy, c-format
+#: lily-parser-scheme.cc:76
+#, c-format
 msgid "Changing working directory to `%s'"
-msgstr "aktuelles Verzeichnis kann nicht geändert werden in: %s: %s"
+msgstr "aktuelles Verzeichnis kann nicht zu »%s« geändert werden"
 
-#: lily-parser-scheme.cc:107
+#: lily-parser-scheme.cc:96
 #, c-format
 msgid "can't find init file: `%s'"
-msgstr "Init-Datei kann nicht gefunden werden: `%s'"
+msgstr "Init-Datei kann nicht gefunden werden: »%s«"
 
-#: lily-parser-scheme.cc:125
+#: lily-parser-scheme.cc:114
 #, c-format
 msgid "Processing `%s'"
 msgstr "»%s« wird verarbeitet"
@@ -973,12 +969,12 @@ msgstr "Analysieren..."
 msgid "braces don't match"
 msgstr "Klammern passen nicht zueinander"
 
-#: lyric-combine-music-iterator.cc:286
+#: lyric-combine-music-iterator.cc:256
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "Stimme kann nicht gefunden werden: »%s«"
 
-#: main.cc:117
+#: main.cc:116
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -986,13 +982,12 @@ msgid ""
 "under certain conditions.  Invoke as `%s --warranty' for more\n"
 "information.\n"
 msgstr ""
-"Dieses Programm ist Freie Software. Sie wird von der GNU General Public "
-"License\n"
+"Dieses Programm ist Freie Software. Sie wird von der GNU General Public License\n"
 "geschützt, und Sie können sie gerne ändern und/oder Kopien unter bestimmten\n"
-"Bedingungen weitergeben. Rufen Sie `%s --warranty' für weitere\n"
+"Bedingungen weitergeben. Rufen Sie »%s --warranty« für weitere\n"
 "Informationen auf.\n"
 
-#: main.cc:123
+#: main.cc:122
 msgid ""
 "    This program is free software; you can redistribute it and/or\n"
 "modify it under the terms of the GNU General Public License version 2\n"
@@ -1020,137 +1015,134 @@ msgstr ""
 "\n"
 "    Sie sollten eine Kopie (siehe Datei COPYING) der GNU General Public\n"
 "License zusammen mit diesem Programm erhalten haben. Falls nicht, schreiben\n"
-"Sie bitte an die Free Software Foundation, Inc., 59 Temple Place - Suite "
-"330,\n"
+"Sie bitte an die Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 
-#: main.cc:154
+#: main.cc:153
 msgid "BACK"
 msgstr "ZURÜCK"
 
-#: main.cc:154
-#, fuzzy
+#: main.cc:153
 msgid ""
 "use backend BACK (gnome, ps,eps,\n"
 "scm, svg, tex, texstr)\n"
 "default: PS"
 msgstr ""
-"Backend BACK verwenden (gnome, ps [Standard],\n"
-"                                       scm, svg, tex, texstr)"
+"Backend BACK verwenden (gnome, ps, eps,\n"
+"scm, svg, tex, texstr)\n"
+"Standard: PS"
 
-#: main.cc:156
-#, fuzzy
+#: main.cc:155
 msgid "SYM=VAL"
-msgstr "KEY=VAL"
+msgstr "SYM=WERT"
 
-#: main.cc:157
+#: main.cc:156
 msgid ""
 "set a Scheme program option. Uses #t if VAL is not specified\n"
 "Try -dhelp for help."
 msgstr ""
+"Eine Scheme-Programmoption setzen. #t wird verwendet, wenn WERT\n"
+"nicht angegeben wurde. -dhelp für Hilfe verwenden."
 
-#: main.cc:160
+#: main.cc:159
 msgid "EXPR"
 msgstr "AUSD"
 
-#: main.cc:160
-#, fuzzy
+#: main.cc:159
 msgid "evaluate scheme code"
-msgstr "Kann Schema nicht im Sicherheitsmodus auswerten"
+msgstr "Schemacode auswerten"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:163
+#: main.cc:162
 msgid "FORMATs"
 msgstr "FORMATe"
 
-#: main.cc:163
+#: main.cc:162
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr "dump FORMAT,... Auch als separate Optionen:"
 
-#: main.cc:164
+#: main.cc:163
 msgid "generate DVI (tex backend only)"
 msgstr "DVI erzeugen (nur TeX-Backend)"
 
-#: main.cc:165
+#: main.cc:164
 msgid "relocate using directory of lilypond program"
-msgstr ""
+msgstr "wiederfinden mit Hilfe des Lilypond-Programmverzeichnisses"
 
-#: main.cc:166
+#: main.cc:165
 msgid "generate PDF (default)"
 msgstr "PDF erzeugen (Standard)"
 
-#: main.cc:167
+#: main.cc:166
 msgid "generate PNG"
 msgstr "PNG erzeugen"
 
-#: main.cc:168
+#: main.cc:167
 msgid "generate PostScript"
 msgstr "PostScript erzeugen"
 
-#: main.cc:169
+#: main.cc:168
 msgid "generate TeX (tex backend only)"
 msgstr "TeX erzeugen (nur TeX-Backend)"
 
-#: main.cc:170
+#: main.cc:169
 msgid "print this help"
 msgstr "diese Hilfe ausgeben"
 
-#: main.cc:171
+#: main.cc:170
 msgid "FIELD"
 msgstr "FELD"
 
-#: main.cc:171
-#, fuzzy
+#: main.cc:170
 msgid "dump a header field to file BASENAME.FIELD"
 msgstr "Header-Feld in BASISNAME.FELD schreiben"
 
-#: main.cc:172
+#: main.cc:171
 msgid "DIR"
 msgstr "VERZ"
 
-#: main.cc:172
+#: main.cc:171
 msgid "add DIR to search path"
 msgstr "VERZ zum Suchpfad hinzufügen"
 
-#: main.cc:173
+#: main.cc:172
 msgid "use FILE as init file"
 msgstr "DATEI als Anfangsdatei verwenden"
 
-#: main.cc:175
+#: main.cc:174
 msgid "USER,GROUP,JAIL,DIR"
 msgstr "BENUTZER,GRUPPE,KERKER,VERZ"
 
-#: main.cc:175
-#, fuzzy
+#: main.cc:174
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
 msgstr ""
-"chroot in KERKER, wird USER:GROUP\n"
-"                                       und cd in VERZ"
+"chroot in KERKER, wird BENUTZER:GRUPPE\n"
+"und cd in VERZ"
 
-#: main.cc:178
+#: main.cc:177
 msgid "do not generate printed output"
 msgstr "keine gedruckte Ausgabe erzeugen"
 
-#: main.cc:179
+#: main.cc:178
 msgid "write output to FILE (suffix will be added)"
 msgstr "Ausgabe in DATEI schreiben (Endung wird hinzugefügt)"
 
-#: main.cc:180
+#: main.cc:179
 msgid "generate a preview of the first system"
 msgstr "ein Bild des ersten Systems erzeugen"
 
-#: main.cc:181
+#: main.cc:180
 msgid "disallow unsafe Scheme and PostScript operations"
-msgstr ""
+msgstr "unsichere Scheme- und PostScript-Operationen verweigern"
 
-#: main.cc:182
+#: main.cc:181
 msgid "print version number"
 msgstr "Versionsnummer ausgeben"
 
-#: main.cc:223
+#: main.cc:221
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1160,125 +1152,125 @@ msgstr ""
 "%s und anderen."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:250
+#: main.cc:248
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Aufruf: %s [OPTION]... DATEI..."
 
-#: main.cc:252
+#: main.cc:250
 #, c-format
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Musiksatz und/oder MIDI aus DATEI erzeugen."
 
-#: main.cc:254
+#: main.cc:252
 #, c-format
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond erzeugt ansprechende Musiknotation."
 
-#: main.cc:256
+#: main.cc:254
 #, c-format
 msgid "For more information, see %s"
-msgstr "Für weitere Informationen, siehe %s"
+msgstr "Für weitere Informationen: siehe %s"
 
-#: main.cc:258
+#: main.cc:256
 #, c-format
 msgid "Options:"
 msgstr "Optionen:"
 
-#: main.cc:262
-#, fuzzy, c-format
+#: main.cc:260
+#, c-format
 msgid "Report bugs via %s"
-msgstr "Melden Sie Fehler an %s."
+msgstr "Melden Sie Fehler an %s"
 
-#: main.cc:308
-#, fuzzy, c-format
+#: main.cc:306
+#, c-format
 msgid "expected %d arguments with jail, found: %u"
-msgstr "%d Argumente mit Kerker erwartet, %d gefunden"
+msgstr "%d Argumente mit Kerker erwartet, %u gefunden"
 
-#: main.cc:322
+#: main.cc:320
 #, c-format
 msgid "no such user: %s"
 msgstr "kein solcher Benutzer: %s"
 
-#: main.cc:324
+#: main.cc:322
 #, c-format
 msgid "can't get user id from user name: %s: %s"
 msgstr "Benutzer-ID von Benutzer kann nicht gefunden werden: %s: %s"
 
-#: main.cc:339
+#: main.cc:337
 #, c-format
 msgid "no such group: %s"
 msgstr "keine solche Gruppe: %s"
 
-#: main.cc:341
+#: main.cc:339
 #, c-format
 msgid "can't get group id from group name: %s: %s"
 msgstr "Gruppen-ID kann nicht von Gruppennamen ermittelt werden: %s: %s"
 
-#: main.cc:349
+#: main.cc:347
 #, c-format
 msgid "can't chroot to: %s: %s"
 msgstr "kein chroot möglich nach: %s: %s"
 
-#: main.cc:356
+#: main.cc:354
 #, c-format
 msgid "can't change group id to: %d: %s"
 msgstr "Gruppen-ID kann nicht geändert werden in: %d: %s"
 
-#: main.cc:362
+#: main.cc:360
 #, c-format
 msgid "can't change user id to: %d: %s"
 msgstr "Benutzer-ID kann nicht geändert werden in: %d: %s"
 
-#: main.cc:368
+#: main.cc:366
 #, c-format
 msgid "can't change working directory to: %s: %s"
 msgstr "aktuelles Verzeichnis kann nicht geändert werden in: %s: %s"
 
-#: main.cc:415
+#: main.cc:413
 #, c-format
 msgid "Evaluating %s"
-msgstr ""
+msgstr "%s wird ausgewertet"
 
-#: main.cc:638
+#: main.cc:627
 #, c-format
 msgid "exception caught: %s"
-msgstr ""
+msgstr "Ausnahme gefangen: %s"
 
 #. FIXME: constant error message.
-#: mark-engraver.cc:154
+#: mark-engraver.cc:131
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark muss Ganzzahlwert haben"
 
-#: mark-engraver.cc:160
+#: mark-engraver.cc:137
 msgid "mark label must be a markup object"
 msgstr "Marke muss ein Markierungsobjekt sein"
 
-#: mensural-ligature-engraver.cc:88
+#: mensural-ligature-engraver.cc:77
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "Bindung mit weniger als 2 Notenköpfen -> überspringen"
 
-#: mensural-ligature-engraver.cc:115
+#: mensural-ligature-engraver.cc:104
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "Tonhöhe der Bindung kann nicht ermittelt werden -> überspringen"
 
-#: mensural-ligature-engraver.cc:129
+#: mensural-ligature-engraver.cc:118
 msgid "single note ligature - skipping"
 msgstr "Bindung einer einzelnen Note -> überspringen"
 
-#: mensural-ligature-engraver.cc:141
+#: mensural-ligature-engraver.cc:130
 msgid "prime interval within ligature -> skipping"
 msgstr "Prime unter Bindung -> überspringen"
 
-#: mensural-ligature-engraver.cc:153
+#: mensural-ligature-engraver.cc:142
 msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
 msgstr "Mensuralbindung: Dauer weder Mx, L, B noch S -> überspringen"
 
-#: mensural-ligature-engraver.cc:201
+#: mensural-ligature-engraver.cc:190
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "Halb-Brevis muss von einem weiteren gefolgt werden -> überspringen"
 
-#: mensural-ligature-engraver.cc:212
+#: mensural-ligature-engraver.cc:201
 msgid ""
 "semibreves can only appear at the beginning of a ligature,\n"
 "and there may be only zero or two of them"
@@ -1286,7 +1278,7 @@ msgstr ""
 "Halb-Brevis kann nur am Anfang einer Bindung auftreten,\n"
 "und es können nur null oder zwei davon auftreten"
 
-#: mensural-ligature-engraver.cc:239
+#: mensural-ligature-engraver.cc:228
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
@@ -1298,7 +1290,7 @@ msgstr ""
 "muss die vorletzte Note eine weitere sein,\n"
 "oder die Bindung muss LB oder SSB sein"
 
-#: mensural-ligature-engraver.cc:359
+#: mensural-ligature-engraver.cc:348
 msgid "unexpected case fall-through"
 msgstr "unbehandelter case-Zweig"
 
@@ -1315,15 +1307,14 @@ msgstr "Mensural_ligature: (join_right == 0)"
 msgid "no such MIDI instrument: `%s'"
 msgstr "kein solches MIDI-Instrument: `%s'"
 
-#: midi-item.cc:273
+#: midi-item.cc:264
 msgid "silly pitch"
 msgstr "sinnlose Tonhöhe"
 
-#: midi-item.cc:289
+#: midi-item.cc:280
 #, c-format
 msgid "experimental: temporarily fine tuning (of %d cents) a channel."
-msgstr ""
-"Experimentell: temporäre Feinabstimmung (von %d Hundertsteln) des Kanals."
+msgstr "Experimentell: temporäre Feinabstimmung (von %d Hundertsteln) des Kanals."
 
 #: midi-stream.cc:28
 #, c-format
@@ -1333,35 +1324,38 @@ msgstr "Datei kann nicht zum Schreiben geöffnet werden: %s: %s"
 #: midi-stream.cc:44
 #, c-format
 msgid "can't write to file: `%s'"
-msgstr "in Datei konnte nicht geschrieben werden: %s"
-
-#: music-iterator.cc:172
-msgid "Sending non-event to context"
-msgstr ""
+msgstr "in Datei konnte nicht geschrieben werden: »%s«"
 
-#: music.cc:142
-#, fuzzy, c-format
-msgid "octave check failed; expected \"%s\", found: %s"
+#: music.cc:140
+#, c-format
+msgid "octave check failed; expected %s, found: %s"
 msgstr "Oktavenüberprüfung gescheitert; %s erwartet, %s gefunden"
 
-#: music.cc:208
+#: music.cc:203
 #, c-format
 msgid "transposition by %s makes alteration larger than double"
 msgstr "Transponieren um %s erzeugt Vorzeichen größer als zwei"
 
-#: new-fingering-engraver.cc:87
+#: new-fingering-engraver.cc:84
 msgid "can't add text scripts to individual note heads"
 msgstr "es kann kein Text zu einzelnen Notenköpfen hinzugefügt werden"
 
-#: new-fingering-engraver.cc:246
+#.
+#. music for the softenon children?
+#.
+#: new-fingering-engraver.cc:153
+msgid "music for the martians."
+msgstr "Musik für Marsmenschen."
+
+#: new-fingering-engraver.cc:261
 msgid "no placement found for fingerings"
 msgstr "Keine Platzierung für Griffe gefunden"
 
-#: new-fingering-engraver.cc:247
+#: new-fingering-engraver.cc:262
 msgid "placing below"
 msgstr "Platzierung darunter"
 
-#: note-collision.cc:415
+#: note-collision.cc:405
 msgid "ignoring too many clashing note columns"
 msgstr "zu viele kollidierende Notenspalten werden ignoriert"
 
@@ -1369,61 +1363,46 @@ msgstr "zu viele kollidierende Notenspalten werden ignoriert"
 msgid "can't have note heads and rests together on a stem"
 msgstr "Notenköpfe und Pausen können nicht zusammen an einem Hals auftreten"
 
-#: note-head.cc:69
-#, fuzzy, c-format
-msgid "none of note heads `%s' or `%s' found"
+#: note-head.cc:67
+#, c-format
+msgid "note head `%s' not found"
 msgstr "Notenkopf »%s« nicht gefunden"
 
-#: note-heads-engraver.cc:63
+#: note-heads-engraver.cc:84
 msgid "NoteEvent without pitch"
-msgstr ""
+msgstr "NoteEvent ohne Tonhöhe"
 
 #: open-type-font.cc:33
-#, fuzzy, c-format
+#, c-format
 msgid "can't allocate %lu bytes"
-msgstr "es können keine %d Bytes angefordert werden"
+msgstr "es können keine %lu Bytes angefordert werden"
 
 #: open-type-font.cc:37
 #, c-format
 msgid "can't load font table: %s"
 msgstr "Schriftarttabelle kann nicht geladen werden: %s"
 
-#: open-type-font.cc:96
+#: open-type-font.cc:108
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "nicht unterstütztes Format: %s"
 
-#: open-type-font.cc:98
+#: open-type-font.cc:110
 #, c-format
 msgid "unknown error: %d reading font file: %s"
 msgstr "unbekannter Fehler: %d beim Lesen der Schriftartdatei: %s"
 
-#: open-type-font.cc:171 open-type-font.cc:295
+#: open-type-font.cc:183 open-type-font.cc:307
 #, c-format
 msgid "FT_Get_Glyph_Name() returned error: %d"
 msgstr "FT_Get_Glyph_Name() gab Fehler zurück: %d"
 
-#: page-turn-page-breaking.cc:227
-msgid ""
-"couldn't fit the first page turn onto a single page. Consider setting first-"
-"page-number to an even number."
-msgstr ""
-
-#: page-turn-page-breaking.cc:240
-#, c-format
-msgid "Calculating page and line breaks (%d possible page breaks)..."
-msgstr ""
-
-#: page-turn-page-breaking.cc:258 paper-score.cc:154
-msgid "Drawing systems..."
-msgstr ""
-
-#: pango-font.cc:215
+#: pango-font.cc:157
 #, c-format
 msgid "no PostScript font name for font `%s'"
 msgstr "Keine PostScript-Schriftartname für Schriftart: »%s«"
 
-#: pango-font.cc:263
+#: pango-font.cc:205
 msgid "FreeType face has no PostScript font name"
 msgstr "FreeType-Ansicht hat keinen PostScript-Schriftartnamen"
 
@@ -1432,16 +1411,12 @@ msgstr "FreeType-Ansicht hat keinen PostScript-Schriftartnamen"
 msgid "Layout output to `%s'..."
 msgstr "Layout nach »%s« ausgeben..."
 
-#: paper-score.cc:105
-msgid "Calculating line breaks..."
-msgstr "Berechne Zeilenumbrüche..."
-
-#: paper-score.cc:118
+#: paper-score.cc:104
 #, c-format
 msgid "Element count %d (spanners %d) "
 msgstr "Elementanzahl: %d (Klammern: %d)"
 
-#: paper-score.cc:122
+#: paper-score.cc:108
 msgid "Preprocessing graphical objects..."
 msgstr "Vorverarbeitung der grafischen Elemente..."
 
@@ -1449,185 +1424,180 @@ msgstr "Vorverarbeitung der grafischen Elemente..."
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck"
 
-#: percent-repeat-engraver.cc:200
+#: percent-repeat-engraver.cc:209
 msgid "unterminated percent repeat"
 msgstr "unbegrenzte Prozentwiederholung"
 
-#: performance.cc:45
+#: percent-repeat-iterator.cc:52
+msgid "no one to print a percent"
+msgstr "nichts bekannt, ein Prozent auszugeben"
+
+#: performance.cc:46
 msgid "Track..."
 msgstr "Spur..."
 
-#: performance.cc:66
+#: performance.cc:70
 msgid "MIDI channel wrapped around"
 msgstr "MIDI-Kanal zurückgesprungen"
 
-#: performance.cc:67
+#: performance.cc:71
 msgid "remapping modulo 16"
 msgstr "Abbildung modulo 16"
 
-#: performance.cc:95
+#: performance.cc:90
+msgid "Creator: "
+msgstr "Erzeuger: "
+
+#: performance.cc:110
+msgid "at "
+msgstr "bei "
+
+#: performance.cc:162
 #, c-format
 msgid "MIDI output to `%s'..."
-msgstr "MIDI-Ausgabe nach `%s'..."
+msgstr "MIDI-Ausgabe nach »%s«..."
 
-#: phrasing-slur-engraver.cc:146
+#: phrasing-slur-engraver.cc:170
 msgid "unterminated phrasing slur"
 msgstr "nicht beendeter Phrasierungsbogen"
 
-#: piano-pedal-engraver.cc:304
-#, fuzzy, c-format
+#: piano-pedal-engraver.cc:223
+#, c-format
 msgid "expect 3 strings for piano pedals, found: %ld"
-msgstr "3 Striche für Piano-Pedal erwartet, %d gefunden"
+msgstr "3 Striche für Piano-Pedal erwartet, %ld gefunden"
 
-#: piano-pedal-engraver.cc:319 piano-pedal-engraver.cc:330
-#: piano-pedal-performer.cc:93
+#: piano-pedal-engraver.cc:238 piano-pedal-engraver.cc:249
+#: piano-pedal-performer.cc:82
 #, c-format
 msgid "can't find start of piano pedal: `%s'"
-msgstr "kann keinen Anfang für Pedal finden: `%s'"
+msgstr "kann keinen Anfang für Pedal finden: »%s«"
 
-#: piano-pedal-engraver.cc:377
+#: piano-pedal-engraver.cc:296
 #, c-format
 msgid "can't find start of piano pedal bracket: `%s'"
-msgstr "kann keinen Anfang für Piano-Pedal finden: `%s'"
+msgstr "kann keinen Anfang für Piano-Pedal finden: »%s«"
 
 #: program-option.cc:195
 #, c-format
 msgid "no such internal option: %s"
 msgstr "keine solche interne Option: %s"
 
-#: property-iterator.cc:74
+#: property-iterator.cc:81
 #, c-format
 msgid "not a grob name, `%s'"
 msgstr "Kein Name für grafische Objekte (grob): »%s«"
 
+#: quote-iterator.cc:255
+#, c-format
+msgid "in quotation: junking event %s"
+msgstr "in Zitat: Ereignis %s wird verworfen"
+
 #: relative-octave-check.cc:39
 msgid "Failed octave check, got: "
 msgstr "Oktavprüfung gescheitert, Rückgabe: "
 
-#: relocate.cc:44
-#, fuzzy, c-format
-msgid "Setting %s to %s\n"
-msgstr "Schreiben der Schriftarten nach %s"
-
-#: relocate.cc:58
-#, fuzzy, c-format
+#: relocate.cc:52
+#, c-format
 msgid "no such file: %s for %s"
-msgstr "kein solches Symbol: %s: %s"
+msgstr "keine solche Datei: %s für %s"
 
-#: relocate.cc:68 relocate.cc:86
-#, fuzzy, c-format
+#: relocate.cc:62 relocate.cc:80
+#, c-format
 msgid "no such directory: %s for %s"
-msgstr "kein solches Symbol: %s: %s"
+msgstr "kein solches Verzeichnis: %s für %s"
 
-#: relocate.cc:78
+#: relocate.cc:72
 #, c-format
 msgid "%s=%s (prepend)\n"
-msgstr ""
+msgstr "%s=%s (voranstellen)\n"
 
-#: relocate.cc:98
+#: relocate.cc:104
 #, c-format
 msgid "Relocation: compile prefix=%s, new prefix=%s"
-msgstr ""
+msgstr "Verlagerung: Übersetzungsvorsilbe=%s, neue Vorsilbe=%s"
 
-#: relocate.cc:128
+#: relocate.cc:130
 #, c-format
 msgid "Relocation: framework_prefix=%s"
-msgstr ""
+msgstr "Verlagerung: framework_prefix=%s"
 
-#: relocate.cc:168
+#: relocate.cc:212
 #, c-format
 msgid "Relocation: is absolute: argv0=%s"
-msgstr ""
+msgstr "Verlagerung: ist absolut: argv0=%s"
 
-#: relocate.cc:175
+#: relocate.cc:219
 #, c-format
 msgid "Relocation: from cwd: argv0=%s"
-msgstr ""
+msgstr "Verlagerung: von cwd: argv0=%s"
 
-#: relocate.cc:184
+#: relocate.cc:228
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
 "argv0=%s"
 msgstr ""
+"Verlagerung: von PATH=%s\n"
+"argv0=%s"
 
-#: relocate.cc:353
-#, fuzzy, c-format
-msgid "Relocation file %s\n"
-msgstr "Kann Datei nicht öffnen: `%s'"
-
-#: relocate.cc:358
-#, fuzzy, c-format
-msgid "can't open file %s"
-msgstr "Kann Datei nicht öffnen: `%s'"
-
-#: relocate.cc:388
-#, c-format
-msgid "Unknown relocation command %s"
-msgstr ""
-
-#: rest-collision.cc:150
+#: rest-collision.cc:149
 msgid "can't resolve rest collision: rest direction not set"
-msgstr ""
+msgstr "Restkollision kann nicht aufgelöst werden: Restrichtung nicht gesetzt"
 
-#: rest-collision.cc:164 rest-collision.cc:209
+#: rest-collision.cc:163 rest-collision.cc:208
 msgid "too many colliding rests"
 msgstr "zu viele kollidierende Pausen"
 
 #: rest.cc:143
 #, c-format
 msgid "rest `%s' not found"
-msgstr "Pause `%s' nicht gefunden"
+msgstr "Pause »%s« nicht gefunden"
 
-#: score-engraver.cc:68
+#: score-engraver.cc:67
 #, c-format
 msgid "cannot find `%s'"
 msgstr "»%s« kann nicht gefunden werden"
 
-#: score-engraver.cc:70
+#: score-engraver.cc:69
 msgid "Music font has not been installed properly."
 msgstr "Musik-Schriftart wurde nicht ordnungsgemäß installiert."
 
-#: score-engraver.cc:72
+#: score-engraver.cc:71
 #, c-format
 msgid "Search path `%s'"
 msgstr "Suchpfad »%s«"
 
-#: score.cc:222
+#: score.cc:211
 msgid "already have music in score"
 msgstr "es ist bereits Musik in der Partitur"
 
-#: score.cc:223
+#: score.cc:212
 msgid "this is the previous music"
 msgstr "Dies ist die vorhergehende Musik"
 
-#: score.cc:228
+#: score.cc:217
 msgid "errors found, ignoring music expression"
 msgstr "Fehler gefunden, musikalischer Ausdruck wird ignoriert"
 
 #. FIXME:
-#: script-engraver.cc:102
+#: script-engraver.cc:105
 msgid "don't know how to interpret articulation: "
 msgstr "Keine Interpretation für Artikulation bekannt: "
 
-#: script-engraver.cc:103
+#: script-engraver.cc:106
 msgid "scheme encoding: "
 msgstr "Schemakodierung: "
 
-#: simple-spacer.cc:375
+#: simple-spacer.cc:406
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "Kein (dynamischer) Abstand zwischen Spalte %d und Nachfolger"
 
-#: slur-engraver.cc:83
-msgid "Invalid direction of slur-event"
-msgstr ""
-
-#: slur-engraver.cc:156
+#: slur-engraver.cc:176
 msgid "unterminated slur"
 msgstr "unbegrenzter Bogen"
 
-#: slur-engraver.cc:165
+#: slur-engraver.cc:185
 msgid "can't end slur"
 msgstr "Bindebogen kann nicht beendet werden"
 
@@ -1636,64 +1606,90 @@ msgstr "Bindebogen kann nicht beendet werden"
 msgid "expected to read %d characters, got %d"
 msgstr "%d Zeichen erwartet, %d erhalten"
 
-#: staff-symbol-engraver.cc:62
-msgid "staff-span event has no direction"
-msgstr ""
+#: spacing-spanner.cc:48
+#, c-format
+msgid "Global shortest duration is %s"
+msgstr "Kleinste globale Zeiteinheit ist %s"
 
-#: stem-engraver.cc:95
+#: stem-engraver.cc:93
 msgid "tremolo duration is too long"
 msgstr "Tremolodauer ist zu lang"
 
 #. FIXME:
-#: stem-engraver.cc:132
+#: stem-engraver.cc:130
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "Notenkopf wird zu inkompatiblem Hals (Typ = %d) hinzugefügt"
 
-#: stem-engraver.cc:134
+#: stem-engraver.cc:132
 msgid "maybe input should specify polyphonic voices"
 msgstr "vielleicht sollte die Eingabe mehrstimmig sein"
 
-#: stem.cc:104
+#: stem.cc:98
 msgid "weird stem size, check for narrow beams"
 msgstr "Eigenartige Notenhalslänge; auf enge Balken überprüfen"
 
-#: stem.cc:627
+#: stem.cc:592
 #, c-format
 msgid "flag `%s' not found"
-msgstr "Fähnchen `%s' nicht gefunden"
+msgstr "Fähnchen »%s« nicht gefunden"
 
-#: stem.cc:638
+#: stem.cc:603
 #, c-format
 msgid "flag stroke `%s' not found"
-msgstr "Fähnchenstrich `%s' nicht gefunden"
+msgstr "Fähnchenstrich »%s« nicht gefunden"
 
-#: system.cc:178
+#: system.cc:181
 #, c-format
 msgid "Element count %d."
 msgstr "Elementanzahl: %d."
 
-#: system.cc:270
+#: system.cc:268
 #, c-format
 msgid "Grob count %d"
 msgstr "Anzahl der grafischen Objekte (grob): %d"
 
-#: text-spanner-engraver.cc:60
+#: system.cc:289
+msgid "Calculating line breaks..."
+msgstr "Zeilenumbrüche werden berechnet..."
+
+#: text-spanner-engraver.cc:62
 msgid "can't find start of text spanner"
 msgstr "Anfang der Textklammer kann nicht gefunden werden"
 
-#: text-spanner-engraver.cc:72
+#: text-spanner-engraver.cc:74
 msgid "already have a text spanner"
-msgstr "habe bereits eine Textklammer"
+msgstr "Textklammer bereits vorhanden"
 
-#: text-spanner-engraver.cc:132
+#: text-spanner-engraver.cc:134
 msgid "unterminated text spanner"
 msgstr "unbegrenzte Textklammer"
 
-#: tie-engraver.cc:257
+#. Not using ngettext's plural feature here, as this message is
+#. more of a programming error.
+#: tfm-reader.cc:107
+#, c-format
+msgid "TFM header of `%s' has only %u word (s)"
+msgstr "TFM Header von »%s« hat nur %u Wort(e)"
+
+#: tfm-reader.cc:140
+#, c-format
+msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
+msgstr "%s: TFM-Datei hat %u Parameter - mehr als die Maximalzahl %u"
+
+#: tfm.cc:72
+#, c-format
+msgid "can't find ascii character: %d"
+msgstr "folgendes ASCII-Zeichen kann nicht gefunden werden: %d"
+
+#: tie-engraver.cc:181
 msgid "lonely tie"
 msgstr "einsamer Bindebogen"
 
+#: time-scaled-music-iterator.cc:24
+msgid "no one to print a tuplet start bracket"
+msgstr "nichts für die Ausgabe einer öffnenden Wertaufteilungsklammer vorhanden"
+
 #.
 #. Todo: should make typecheck?
 #.
@@ -1709,53 +1705,34 @@ msgstr "seltsame Taktart gefunden: %d/%d"
 #: time-signature.cc:82
 #, c-format
 msgid "time signature symbol `%s' not found; reverting to numbered style"
-msgstr "Taktart `%s' nicht gefunden; Rückkehr zum nummerierten Stil"
+msgstr "Taktart »%s« nicht gefunden; Rückkehr zum nummerierten Stil"
 
 #: translator-ctors.cc:52
 #, c-format
 msgid "unknown translator: `%s'"
-msgstr "unbekannter Übersetzer: `%s'"
-
-#: translator-group.cc:152
-#, c-format
-msgid "can't find: `%s'"
-msgstr "»%s« kann nicht gefunden werden"
-
-#: translator.cc:310
-#, c-format
-msgid "Two simultaneous %s events, junking this one"
-msgstr ""
-
-#: translator.cc:311
-#, c-format
-msgid "Previous %s event here"
-msgstr ""
+msgstr "unbekannter Übersetzer: »%s«"
 
-#: trill-spanner-engraver.cc:67
+#: trill-spanner-engraver.cc:71
 msgid "can't find start of trill spanner"
 msgstr "Anfang des Trillers kann nicht gefunden werden"
 
-#: trill-spanner-engraver.cc:79
+#: trill-spanner-engraver.cc:83
 msgid "already have a trill spanner"
 msgstr "Triller bereits aktiv"
 
-#: tuplet-engraver.cc:72
-msgid "invalid direction of tuplet-span-event"
-msgstr ""
+#: trill-spanner-engraver.cc:142
+msgid "unterminated trill spanner"
+msgstr "unbegrenzter Triller"
 
-#: vaticana-ligature-engraver.cc:364
+#: vaticana-ligature-engraver.cc:347
 #, c-format
-msgid ""
-"ignored prefix (es) `%s' of this head according to restrictions of the "
-"selected ligature style"
-msgstr ""
-"Vorzeichen (es) `%s' dieses Kopfes gemäß den Einschränkungen des "
-"ausgewählten Bindungs-Stils ignoriert"
+msgid "ignored prefix (es) `%s' of this head according to restrictions of the selected ligature style"
+msgstr "Vorzeichen (es) »%s« dieses Kopfes gemäß den Einschränkungen des ausgewählten Bindungs-Stils ignoriert"
 
-#: vaticana-ligature-engraver.cc:601
+#: vaticana-ligature-engraver.cc:584
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
-msgstr "Vaticana_ligature_engraver: setzen `spacing-increment = %f': ptr=%ul"
+msgstr "Vaticana_ligature_engraver: setzen »spacing-increment = %f«: ptr=%ul"
 
 #: vaticana-ligature.cc:84
 msgid "flexa-height undefined; assuming 0"
@@ -1770,197 +1747,200 @@ msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: nichts zusammengefügt (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:143
+#: volta-engraver.cc:142
 msgid "can't end volta spanner"
 msgstr "Anfang der Textklammer kann nicht gefunden werden"
 
-#: volta-engraver.cc:153
+#: volta-engraver.cc:152
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "Wiederholungskasten bereits vorhanden, wird vorzeitig beendet"
 
-#: volta-engraver.cc:157
+#: volta-engraver.cc:156
 msgid "also already have an ended spanner"
 msgstr "endende Textklammer auch bereits vorhanden"
 
-#: parser.yy:704
+#. no longer valid with dashes in \paper{} block.
+#: parser.yy:535
+msgid "identifier should have alphabetic characters only"
+msgstr "Bezeichner sollte nur aus alphabetischen Zeichen bestehen"
+
+#: parser.yy:705
 msgid "\\paper cannot be used in \\score, use \\layout instead"
-msgstr ""
-"\\paper kann nicht in \\score verwendet werden; stattdessen \\layout "
-"verwenden"
+msgstr "\\paper kann nicht in \\source verwendet werden; stattdessen \\layout verwenden"
 
-#: parser.yy:728
+#: parser.yy:729
 msgid "need \\paper for paper block"
 msgstr "Für Papier-Block wird \\paper benötigt"
 
-#: parser.yy:1174
+#: parser.yy:879
+msgid "more alternatives than repeats"
+msgstr "mehr Alternativen als Wiederholungen"
+
+#: parser.yy:916
+#, c-format
+msgid "expect 2 elements for Chord tremolo, found %d"
+msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
+
+#: parser.yy:1316
 msgid "Grob name should be alphanumeric"
 msgstr "Grob-Name sollte alphanumerisch sein"
 
-#: parser.yy:1481
+#: parser.yy:1681
 msgid "second argument must be pitch list"
 msgstr "zweites Argument muss eine Tonhöhenliste sein"
 
-#: parser.yy:1508 parser.yy:1513 parser.yy:1988
+#: parser.yy:1724 parser.yy:1729 parser.yy:2235
 msgid "have to be in Lyric mode for lyrics"
 msgstr "muss in Liedtextmodus sein um Liedtext setzen zu können"
 
-#: parser.yy:1612
+#: parser.yy:1822
 msgid "expecting string as script definition"
 msgstr "Zeichenkette als Skriptdefinition erwartet"
 
-#: parser.yy:1770 parser.yy:1820
+#: parser.yy:1981 parser.yy:2031
 #, c-format
 msgid "not a duration: %d"
 msgstr "keine gültige Dauer: %d"
 
-#: parser.yy:1940
+#: parser.yy:2154
 msgid "have to be in Note mode for notes"
 msgstr "Muss im Notenmodus sein für Noten"
 
-#: parser.yy:2004
+#: parser.yy:2248
 msgid "have to be in Chord mode for chords"
 msgstr "Muss im Akkordmodus sein für Akkorde"
 
-#: lexer.ll:177
+#: parser.yy:2730
+msgid "music head function must return Music object"
+msgstr "Musikkopf-Funktion muss Musikobjekt zurückliefern."
+
+#: lexer.ll:158
 msgid "stray UTF-8 BOM encountered"
-msgstr ""
+msgstr "verirrtes UTF-8 BOM gefunden"
 
-#: lexer.ll:181
+#: lexer.ll:162
 msgid "Skipping UTF-8 BOM"
-msgstr ""
+msgstr "UTF-8 BOM wird übersprungen"
 
-#: lexer.ll:236
+#: lexer.ll:206
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "Eingabe in »%s« umbenannt"
 
-#: lexer.ll:254
+#: lexer.ll:214
 msgid "quoted string expected after \\version"
 msgstr "zitierte Zeichenkette hinter \\version erwartet"
 
-#: lexer.ll:258
+#: lexer.ll:218
 msgid "quoted string expected after \\sourcefilename"
 msgstr "zitierte Zeichenkette hinter \\sourcefilename erwartet"
 
-#: lexer.ll:262
-#, fuzzy
-msgid "integer expected after \\sourcefileline"
-msgstr "zitierte Zeichenkette hinter \\sourcefilename erwartet"
-
-#: lexer.ll:275
+#: lexer.ll:231
 msgid "EOF found inside a comment"
 msgstr "EOF innerhalb eines Kommentares gefunden"
 
-#: lexer.ll:290
+#: lexer.ll:246
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput ist außerhalb von Init-Dateien nicht erlaubt"
 
-#: lexer.ll:314
+#: lexer.ll:270
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
-msgstr "falscher oder ungültiger Bezeichner: `%s'"
+msgstr "falscher oder ungültiger Bezeichner: »%s«"
 
 #. backup rule
-#: lexer.ll:323
+#: lexer.ll:279
 msgid "end quote missing"
 msgstr "schließendes Anführungszeichen fehlt"
 
-#: lexer.ll:468
+#: lexer.ll:441
 msgid "Brace found at end of lyric.  Did you forget a space?"
-msgstr ""
-"Klammer am Ende von Liedtext gefunden. Haben Sie ein Leerzeichen vergessen?"
+msgstr "Klammer am Ende von Liedtext gefunden. Haben Sie ein Leerzeichen vergessen?"
 
-#: lexer.ll:561
+#: lexer.ll:540
 msgid "Brace found at end of markup.  Did you forget a space?"
-msgstr ""
-"Klammer am Ende des Auszugs gefunden. Haben Sie ein Leerzeichen vergessen?"
+msgstr "Klammer am Ende des Auszugs gefunden. Haben Sie ein Leerzeichen vergessen?"
 
-#: lexer.ll:661
+#: lexer.ll:640
 #, c-format
 msgid "invalid character: `%c'"
-msgstr "Ungültiges Zeichen: `%c'"
+msgstr "Ungültiges Zeichen: »%c«"
 
-#: lexer.ll:776
+#: lexer.ll:727
 #, c-format
 msgid "unknown escaped string: `\\%s'"
-msgstr "Ungültige Fluchtsequenz: `\\%s'"
+msgstr "Ungültige Fluchtsequenz: »\\%s«"
 
-#: lexer.ll:882
+#: lexer.ll:824
 #, c-format
 msgid "Incorrect lilypond version: %s (%s, %s)"
 msgstr "Falsche lilypond-Version: %s (%s, %s)"
 
-#: lexer.ll:883
+#: lexer.ll:825
 msgid "Consider updating the input with the convert-ly script"
 msgstr "Erwägen Sie die Aktualisierung der Eingabe mit dem Skript convert-ly"
 
-#: backend-library.scm:19 lily.scm:479 ps-to-png.scm:88
+#. TODO: print location
+#: lexer.ll:945
+msgid "can't find signature for music function"
+msgstr "Signatur für Musikfunktion kann nicht gefunden werden"
+
+#: backend-library.scm:19 lily.scm:439 ps-to-png.scm:88
 #, lisp-format
 msgid "Invoking `~a'..."
-msgstr "`~s' wird aufgerufen..."
+msgstr "»~s« wird aufgerufen..."
 
 #: backend-library.scm:24
 #, lisp-format
 msgid "`~a' failed (~a)"
 msgstr "»~a« gescheitert (~a)"
 
-#: backend-library.scm:95 framework-tex.scm:343 framework-tex.scm:368
+#: backend-library.scm:84 framework-tex.scm:339 framework-tex.scm:364
 #, lisp-format
 msgid "Converting to `~a'..."
 msgstr "Konvertierung nach »~a«..."
 
-#: backend-library.scm:110
+#: backend-library.scm:100
 #, lisp-format
 msgid "Converting to ~a..."
 msgstr "Konvertierung nach ~a..."
 
-#: backend-library.scm:156
+#: backend-library.scm:145
 #, lisp-format
 msgid "Writing header field `~a' to `~a'..."
 msgstr "Kopfzeile »~a« wird nach »~a« geschrieben"
 
-#: define-context-properties.scm:20 define-grob-properties.scm:10
+#: define-context-properties.scm:13 define-grob-properties.scm:10
 #: define-music-properties.scm:10
 #, lisp-format
 msgid "symbol ~S redefined"
 msgstr "Symbol ~S redefiniert"
 
-#: define-event-classes.scm:116
-#, lisp-format
-msgid "event class ~A seems to be unused"
-msgstr ""
-
-#. should be programming-error
-#: define-event-classes.scm:122
-#, lisp-format
-msgid "translator listens to nonexisting event class ~A"
-msgstr ""
-
-#: define-markup-commands.scm:256
+#: define-markup-commands.scm:251
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr "keine Systeme in \\score-Markup gefunden, hat es einen \\layout-Block?"
 
-#: define-markup-commands.scm:1249
+#: define-markup-commands.scm:1205
 #, lisp-format
 msgid "not a valid duration string: ~a"
 msgstr "keine gültige Dauer: ~a"
 
-#: define-music-types.scm:734
+#: define-music-types.scm:738
 #, lisp-format
 msgid "symbol expected: ~S"
 msgstr "Symbol erwartet: ~S"
 
-#: define-music-types.scm:737
+#: define-music-types.scm:741
 #, lisp-format
 msgid "can't find music object: ~S"
 msgstr "Musikobjekt kann nicht gefunden werden: ~S"
 
-#: define-music-types.scm:757
+#: define-music-types.scm:761
 #, lisp-format
 msgid "unknown repeat type `~S'"
 msgstr "unbekannter Wiederholungstyp »~S«"
 
-#: define-music-types.scm:758
+#: define-music-types.scm:762
 msgid "See music-types.scm for supported repeats"
 msgstr "Siehe music-types.scm für unterstützte Wiederholungen"
 
@@ -1975,9 +1955,9 @@ msgid "can't find interface for property: ~S"
 msgstr "Schnittstelle für Eigenschaft ~S kann nicht gefunden werden"
 
 #: document-backend.scm:145
-#, fuzzy, lisp-format
+#, lisp-format
 msgid "unknown Grob interface: ~S"
-msgstr "Unbekannte Schnittstelle: ~S"
+msgstr "Unbekannte Grob-Schnittstelle: ~S"
 
 #: documentation-lib.scm:45
 #, lisp-format
@@ -1990,46 +1970,46 @@ msgid "Writing ~S..."
 msgstr "~S wird geschrieben..."
 
 #: documentation-lib.scm:172
-#, fuzzy, lisp-format
+#, lisp-format
 msgid "can't find description for property ~S (~S)"
-msgstr "Beschreibung für Eigenschaft ~S kann nicht gefunden werden"
+msgstr "Beschreibung für Eigenschaft ~S (~S) kann nicht gefunden werden"
 
-#: framework-eps.scm:77 framework-eps.scm:78
+#: framework-eps.scm:71 framework-eps.scm:72
 #, lisp-format
 msgid "Writing ~a..."
 msgstr "~a wird geschrieben..."
 
-#: framework-ps.scm:278
+#: framework-ps.scm:275
 #, lisp-format
 msgid "can't embed ~S=~S"
-msgstr ""
+msgstr "~S=~S kann nicht eingebettet werden"
 
-#: framework-ps.scm:331
+#: framework-ps.scm:326
 #, lisp-format
 msgid "can't extract file matching ~a from ~a"
-msgstr ""
+msgstr "Eine zu ~a passende Datei kann nicht aus ~a gewonnen werden"
 
-#: framework-ps.scm:348
+#: framework-ps.scm:343
 #, lisp-format
 msgid "don't know how to embed ~S=~S"
-msgstr ""
+msgstr "Unbekannte Einbettung ~S=~S"
 
-#: framework-ps.scm:379
-#, fuzzy, lisp-format
+#: framework-ps.scm:373
+#, lisp-format
 msgid "don't know how to embed font ~s ~s ~s"
-msgstr "Keine Interpretation für Artikulation bekannt: "
+msgstr "Unbekannte Schriftsatzeinbettung ~s ~s ~s"
 
-#: framework-ps.scm:610
+#: framework-ps.scm:579
 #, lisp-format
 msgid "can't convert <stdout> to ~S"
 msgstr "<stdout> kann nicht in ~S konvertiert werden"
 
-#: framework-ps.scm:629 framework-ps.scm:632
+#: framework-ps.scm:596 framework-ps.scm:599
 #, lisp-format
 msgid "can't generate ~S using the postscript back-end"
 msgstr "~S kann nicht mit PostScript-Backend erzeugt werden"
 
-#: framework-ps.scm:639
+#: framework-ps.scm:606
 msgid ""
 "nThe PostScript backend does not support the 'classic'\n"
 "framework. Use the EPS backend instead,\n"
@@ -2038,8 +2018,14 @@ msgid ""
 "\n"
 "or remove the lilypond-book specific settings from the input.\n"
 msgstr ""
+"nDas PostScript-Backend unterstützt nicht das 'classic'\n"
+"Framework. Stattdessen das EPS-Backend verwenden:\n"
+"\n"
+"  lilypond -b eps <file>\n"
+"\n"
+"oder die Lilypond-Buch-spezifischen Einstellungen aus der Eingabe entfernen.\n"
 
-#: framework-tex.scm:360
+#: framework-tex.scm:356
 #, lisp-format
 msgid "TeX file name must not contain whitespace: `~a'"
 msgstr "TeX-Dateiname darf keine Leerzeichen enthalten: »~a«"
@@ -2054,55 +2040,38 @@ msgstr "Fehler bei Balkenzuschnitt. (~S,~S) erwartet, ~S gefunden."
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Fehler bei Balkenzuschnitt. ~S 0 erwartet, ~S gefunden."
 
-#: layout-page-layout.scm:353
+#: layout-page-layout.scm:439
 msgid "Calculating page breaks..."
 msgstr "Zeilenumbrüche werden berechnet..."
 
-#: lily-library.scm:510
+#: lily-library.scm:458
 #, lisp-format
 msgid "unknown unit: ~S"
 msgstr "unbekannte Einheit: ~S"
 
-#: lily-library.scm:543
-#, fuzzy, lisp-format
-msgid "no \\version statement found, please add~afor future compatibility"
-msgstr ""
-"keine \\version-Anweisung gefunden, ~a für zukünftige Kompatibilität "
-"hinzufügen"
+#: lily-library.scm:491
+#, lisp-format
+msgid "no \\version statement found,  add~afor future compatibility"
+msgstr "keine \\version-Anweisung gefunden, ~a für zukünftige Kompatibilität hinzufügen"
 
-#: lily-library.scm:550
+#: lily-library.scm:498
 msgid "old relative compatibility not used"
 msgstr "alte relative Kompatibilität nicht verwendet"
 
-#: lily.scm:131
-#, fuzzy, lisp-format
-msgid "Can't find ~A"
-msgstr "»%s« kann nicht gefunden werden"
-
-#: lily.scm:196
+#: lily.scm:172
 #, lisp-format
 msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr "falscher Typ für Argument ~a; ~a erwartet, ~s gefunden"
 
-#: lily.scm:409 lily.scm:469
+#: lily.scm:377 lily.scm:429
 #, lisp-format
 msgid "failed files: ~S"
 msgstr "gescheiterte Dateien: ~S"
 
-#: lily.scm:459
-#, fuzzy, lisp-format
-msgid "Redirecting output to ~a..."
-msgstr "Abhängigkeiten-Ausgabe nach `%s'..."
-
-#: ly-syntax-constructors.scm:40
-#, fuzzy
-msgid "Music head function must return Music object"
-msgstr "Musikkopf-Funktion muss Musikobjekt zurückliefern."
-
-#: ly-syntax-constructors.scm:132
+#: lily.scm:419
 #, lisp-format
-msgid "Invalid property operation ~a"
-msgstr ""
+msgid "Redirecting output to ~a..."
+msgstr "Ausgabeumleitung nach ~a..."
 
 #: markup.scm:88
 #, lisp-format
@@ -2114,48 +2083,37 @@ msgstr "Falsche Anzahl an Argumenten: ~A erwartet, ~A gefunden: ~S"
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Ungültiges Argument an Position ~A. ~A erwartet, ~S gefunden."
 
-#: music-functions.scm:210
-#, fuzzy
-msgid "More alternatives than repeats. Junking excess alternatives"
-msgstr "mehr Alternativen als Wiederholungen"
-
-#: music-functions.scm:229
-#, fuzzy, lisp-format
-msgid "expecting 2 elements for chord tremolo, found ~a"
-msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
-
-#: music-functions.scm:535
+#: music-functions.scm:533
 #, lisp-format
 msgid "music expected: ~S"
 msgstr "Musik erwartet: ~S"
 
 #. FIXME: uncomprehensable message
-#: music-functions.scm:586
+#: music-functions.scm:584
 #, lisp-format
 msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
 msgstr "Taktüberprüfung gescheitert. bei ~a erwartet, stattdessen bei ~a"
 
-#: music-functions.scm:745
+#: music-functions.scm:739
 #, lisp-format
 msgid "can't find quoted music `~S'"
 msgstr "zitierte Musik »~S« kann nicht gefunden werden"
 
-#: music-functions.scm:953
+#: music-functions.scm:947
 #, lisp-format
 msgid "unknown accidental style: ~S"
 msgstr "unbekannter Vorzeichenstil: ~S"
 
-#: output-ps.scm:315
-#, fuzzy
+#: output-ps.scm:282
 msgid "utf-8-string encountered in PS backend"
 msgstr "UTF-8-Zeichenkette in PostScript-Backend gefunden"
 
-#: output-svg.scm:42
+#: output-svg.scm:41
 #, lisp-format
 msgid "undefined: ~S"
 msgstr "nicht definiert: ~S"
 
-#: output-svg.scm:132
+#: output-svg.scm:121
 #, lisp-format
 msgid "can't decypher Pango description: ~a"
 msgstr "Pango-Beschreibung kann nicht entschlüsselt werden: ~a"
@@ -2174,111 +2132,29 @@ msgstr "Nicht auf höchster Ebene im Gültigkeitsbereich"
 msgid "This is not a \\layout {} object, ~S"
 msgstr "Dies ist kein \\layout {} Objekt, ~S"
 
-#: paper.scm:126
-#, lisp-format
-msgid "Unknown papersize: ~a"
-msgstr ""
-
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
-#: paper.scm:141
+#: paper.scm:142
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
-msgstr ""
-"#(set-paper-size ..) muss innerhalb von \\paper { ... } verwendet werden"
+msgstr "#(set-paper-size ..) muss innerhalb von \\paper { ... } verwendet werden"
 
-#: parser-clef.scm:126
+#: parser-clef.scm:124
 #, lisp-format
 msgid "unknown clef type `~a'"
 msgstr "unbekannter Notenschlüsseltyp »~a«"
 
-#: parser-clef.scm:127
+#: parser-clef.scm:125
 msgid "see scm/clef.scm for supported clefs"
 msgstr "unterstützte Notenschlüssel können in scm/clef.scm gefunden werden"
 
 #: ps-to-png.scm:97
-#, fuzzy, lisp-format
+#, lisp-format
 msgid "~a exited with status: ~S"
-msgstr "%s beendet mit Rückgabewert: %d"
+msgstr "~a mit Rückgabewert ~S beendet"
 
 #: to-xml.scm:190
 msgid "assertion failed"
-msgstr "Behauptung scheiterte"
-
-#~ msgid "no one to print a tremolos"
-#~ msgstr "niemand vorhanden für Tremoloausgabe"
-
-#~ msgid "gotcha: ptr=%ul"
-#~ msgstr "erwischt: ptr=%ul"
-
-#~ msgid "distance undefined, assuming 0.1"
-#~ msgstr "Abstand undefiniert, 0.1 angenommen"
-
-#~ msgid "distance=%f"
-#~ msgstr "Abstand=%f"
-
-#~ msgid "junking event: `%s'"
-#~ msgstr "Ereignis wird ignoriert: »%s«"
-
-#~ msgid "no one to print a repeat brace"
-#~ msgstr "niemand zur Erzeugung einer Wiederholung"
-
-#~ msgid "can't find `%s' context"
-#~ msgstr "Kontext »%s« kann nicht gefunden werden"
-
-#~ msgid "Optimal demerits: %f"
-#~ msgstr "Optimale Bewertung: %f"
-
-#~ msgid "no feasible line breaking found"
-#~ msgstr "Keine praktikablen Zeilenumbrüche gefunden"
-
-#~ msgid "can't find line breaking that satisfies constraints"
-#~ msgstr ""
-#~ "es können keine Zeilenumbrüche gefunden werden, die die Bedingungen "
-#~ "erfüllen"
-
-#~ msgid "music for the martians."
-#~ msgstr "Musik für Marsmenschen."
-
-#~ msgid "no one to print a percent"
-#~ msgstr "nichts bekannt, ein Prozent auszugeben"
-
-#~ msgid "Creator: "
-#~ msgstr "Erzeuger: "
-
-#~ msgid "at "
-#~ msgstr "bei "
-
-#~ msgid "in quotation: junking event %s"
-#~ msgstr "in Zitat: Ereignis %s wird verworfen"
-
-#~ msgid "Global shortest duration is %s"
-#~ msgstr "Kleinste globale Zeiteinheit ist %s"
-
-#~ msgid "TFM header of `%s' has only %u word (s)"
-#~ msgstr "TFM Header von `%s' hat nur %u Wort(e)"
-
-#~ msgid ""
-#~ "%s: TFM file has %u parameters, which is more than the %u I can handle"
-#~ msgstr "%s: TFM-Datei hat %u Parameter - mehr als die Maximalzahl %u"
-
-#~ msgid "can't find ascii character: %d"
-#~ msgstr "folgendes ASCII-Zeichen kann nicht gefunden werden: %d"
-
-#~ msgid "no one to print a tuplet start bracket"
-#~ msgstr ""
-#~ "nichts für die Ausgabe einer öffnenden Wertaufteilungsklammer vorhanden"
-
-#~ msgid "unterminated trill spanner"
-#~ msgstr "unbegrenzter Triller"
-
-#~ msgid "identifier should have alphabetic characters only"
-#~ msgstr "Bezeichner sollte nur aus alphabetischen Zeichen bestehen"
-
-#~ msgid "expect 2 elements for Chord tremolo, found %d"
-#~ msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
-
-#~ msgid "can't find signature for music function"
-#~ msgstr "Signatur für Musikfunktion kann nicht gefunden werden"
+msgstr "Behauptung gescheitert"
 
 #~ msgid "lilylib module"
 #~ msgstr "Modul lilylib"
@@ -2306,25 +2182,19 @@ msgstr "Behauptung scheiterte"
 
 #~ msgid ""
 #~ "  -e, --edit             edit in place\n"
-#~ "  -f, --from=VERSION     start from VERSION [default: \\version found in "
-#~ "file]\n"
+#~ "  -f, --from=VERSION     start from VERSION [default: \\version found in file]\n"
 #~ "  -h, --help             print this help\n"
 #~ "  -n, --no-version       do not add \\version command if missing\n"
-#~ "  -s, --show-rules       print rules [default: --from=0, --"
-#~ "to=@TOPLEVEL_VERSION@]\n"
-#~ "  -t, --to=VERSION       convert to VERSION [default: "
-#~ "@TOPLEVEL_VERSION@]\n"
+#~ "  -s, --show-rules       print rules [default: --from=0, --to=@TOPLEVEL_VERSION@]\n"
+#~ "  -t, --to=VERSION       convert to VERSION [default: @TOPLEVEL_VERSION@]\n"
 #~ "  -v, --version          print program version"
 #~ msgstr ""
 #~ "  -e, --edit             auf der Stelle ändern\n"
-#~ "  -f, --from=VERSION     von VERSION starten [Standard: in Datei "
-#~ "gefundene \\version]\n"
+#~ "  -f, --from=VERSION     von VERSION starten [Standard: in Datei gefundene \\version]\n"
 #~ "  -h, --help             diese Hilfe ausgeben\n"
 #~ "  -n, --no-version       Befehl \\version nicht verwenden, wenn er fehlt\n"
-#~ "  -s, --show-rules       Regeln ausgeben [Standard: --from=0, --"
-#~ "to=@TOPLEVEL_VERSION@]\n"
-#~ "  -t, --to=VERSION       in VERSION umwandeln [Standard: "
-#~ "@TOPLEVEL_VERSION@]\n"
+#~ "  -s, --show-rules       Regeln ausgeben [Standard: --from=0, --to=@TOPLEVEL_VERSION@]\n"
+#~ "  -t, --to=VERSION       in VERSION umwandeln [Standard: @TOPLEVEL_VERSION@]\n"
 #~ "  -v, --version          Programmversion ausgeben"
 
 #~ msgid "%s: skipping: `%s'"
@@ -2409,17 +2279,13 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Passt nicht: `%s'"
 
 #~ msgid "Rebuild all .afm files, and remove all .pk and .tfm files."
-#~ msgstr ""
-#~ "Bauen Sie alle .afm-Dateien neu, und löschen Sie alle .pk- und .tfm-"
-#~ "Dateien."
+#~ msgstr "Bauen Sie alle .afm-Dateien neu, und löschen Sie alle .pk- und .tfm-Dateien."
 
 #~ msgid "Rerun with -V to show font paths."
 #~ msgstr "Starten Sie erneut mit -V, um Suchpfade für Schriftarten anzuzeigen"
 
 #~ msgid "A script for removing font-files is delivered with the source-code:"
-#~ msgstr ""
-#~ "Ein Skript zum Entfernen von Schriftartdateien wird mit dem Quellcode "
-#~ "ausgeliefert:"
+#~ msgstr "Ein Skript zum Entfernen von Schriftartdateien wird mit dem Quellcode ausgeliefert:"
 
 #~ msgid "beam has less than two visible stems"
 #~ msgstr "Balken hat weniger als zwei sichtbare Notenhälse"
@@ -2444,8 +2310,7 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Prozentwiederholung der Länge %s kann nicht behandelt werden"
 
 #~ msgid "rest direction not set.  Cannot resolve collision."
-#~ msgstr ""
-#~ "Pausenrichtung nicht gesetzt. Kollision kann nicht aufgelöst werden."
+#~ msgstr "Pausenrichtung nicht gesetzt. Kollision kann nicht aufgelöst werden."
 
 #~ msgid "lilypond -e EXPR means:"
 #~ msgstr "lilypond -e AUSD bedeutet:"
@@ -2453,16 +2318,11 @@ msgstr "Behauptung scheiterte"
 #~ msgid "  Evalute the Scheme EXPR before parsing any .ly files."
 #~ msgstr "  Das Schema AUSD vor der Analyse aller .ly-Dateien auswerten"
 
-#~ msgid ""
-#~ "  Multiple -e options may be given, they will be evaluated sequentially."
-#~ msgstr ""
-#~ "  Mehrere -e Optionen dürfen angegeben werden, sie werden sequentiell "
-#~ "ausgewertet"
+#~ msgid "  Multiple -e options may be given, they will be evaluated sequentially."
+#~ msgstr "  Mehrere -e Optionen dürfen angegeben werden, sie werden sequentiell ausgewertet"
 
-#~ msgid ""
-#~ "  The function ly:set-option allows for access to some internal variables."
-#~ msgstr ""
-#~ "  Die Funktion ly:set-option erlaubt Zugriff auf einige interne Variablen."
+#~ msgid "  The function ly:set-option allows for access to some internal variables."
+#~ msgstr "  Die Funktion ly:set-option erlaubt Zugriff auf einige interne Variablen."
 
 #~ msgid "Usage: lilypond -e \"(ly:set-option SYMBOL VAL)\""
 #~ msgstr "Aufruf: lilypond -e \"(ly:set-option SYMBOL WERT)\""
@@ -2643,14 +2503,10 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Keine Dateien auf der Kommandozeile angegeben"
 
 #~ msgid "Running LilyPond failed. Rerun with --verbose for a trace."
-#~ msgstr ""
-#~ "LilyPond-Aufruf gescheitert. Versuchen Sie es erneut mit --verbose für "
-#~ "ein Protokoll (Trace)."
+#~ msgstr "LilyPond-Aufruf gescheitert. Versuchen Sie es erneut mit --verbose für ein Protokoll (Trace)."
 
 #~ msgid "Failed to make PS file. Rerun with --verbose for a trace."
-#~ msgstr ""
-#~ "Erzeugung der PS-Datei gescheitert. Versuchen Sie es erneut mit --verbose "
-#~ "für ein Protokoll."
+#~ msgstr "Erzeugung der PS-Datei gescheitert. Versuchen Sie es erneut mit --verbose für ein Protokoll."
 
 #~ msgid "%s output to <stdout>..."
 #~ msgstr "Ausgabe von %s nach <stdout>..."
@@ -2721,6 +2577,9 @@ msgstr "Behauptung scheiterte"
 #~ msgid "Install the ec-mftraced package from %s. Aborting"
 #~ msgstr "Abbruch. Paket ec-mftraced von %s installieren."
 
+#~ msgid "No slur to end"
+#~ msgstr "Kein Bindebogen zu beenden"
+
 #~ msgid "Huh?  Got %d, expected %d characters"
 #~ msgstr "Hä? %d Zeichen erhalten, %d erwartet"
 
@@ -2764,9 +2623,7 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Schreibe HTML-Menü `%s'..."
 
 #~ msgid "Running LaTeX failed. Rerun with --verbose for a trace."
-#~ msgstr ""
-#~ "LaTeX-Aufruf gescheitert. Versuchen Sie es erneut mit --verbose für ein "
-#~ "Protokoll."
+#~ msgstr "LaTeX-Aufruf gescheitert. Versuchen Sie es erneut mit --verbose für ein Protokoll."
 
 #~ msgid "Process LilyPond snippets in hybrid HTML, LaTeX or texinfo document"
 #~ msgstr "LilyPond-Teile in Mischdatei (HTML, LaTeX oder texinfo) verarbeiten"
@@ -2786,11 +2643,8 @@ msgstr "Behauptung scheiterte"
 #~ msgid "pass OPT quoted to the lilypond command line"
 #~ msgstr "OPT \"zitiert\" an die LilyPond-Kommandozeile übergeben"
 
-#~ msgid ""
-#~ "force fontsize for all inline lilypond. DIM is assumed to be in points"
-#~ msgstr ""
-#~ "Schriftgröße für eingebettetes LilyPond erzwingen. Einheit für GROE: "
-#~ "Punkte"
+#~ msgid "force fontsize for all inline lilypond. DIM is assumed to be in points"
+#~ msgstr "Schriftgröße für eingebettetes LilyPond erzwingen. Einheit für GROE: Punkte"
 
 #~ msgid "deprecated, use --force-music-fontsize"
 #~ msgstr "veraltet, verwenden Sie --force-music-fontsize"
@@ -2822,16 +2676,11 @@ msgstr "Behauptung scheiterte"
 #~ msgid "where to place generated files"
 #~ msgstr "Ziel der generierten Dateien"
 
-#~ msgid ""
-#~ "round filled box horizontal extent smaller than blot; decreasing blot"
-#~ msgstr ""
-#~ "Breite des abgerundeten Kastens kleiner als Kreisdurchmesser; verkleinere "
-#~ "Kreis"
+#~ msgid "round filled box horizontal extent smaller than blot; decreasing blot"
+#~ msgstr "Breite des abgerundeten Kastens kleiner als Kreisdurchmesser; verkleinere Kreis"
 
 #~ msgid "round filled box vertical extent smaller than blot; decreasing blot"
-#~ msgstr ""
-#~ "Höhe des abgerundeten Kastens kleiner als Kreisdurchmesser; verkleinere "
-#~ "Kreis"
+#~ msgstr "Höhe des abgerundeten Kastens kleiner als Kreisdurchmesser; verkleinere Kreis"
 
 #~ msgid "use output format EXT"
 #~ msgstr "Ausgabeformat EXT benutzen"
@@ -2890,18 +2739,11 @@ msgstr "Behauptung scheiterte"
 #~ msgid "Beam has less than two stems. Removing beam."
 #~ msgstr "Balken hat weniger als zwei Notenhälse. Notenhals wird entfernt."
 
-#~ msgid ""
-#~ "Not sure that we can find a nice beam slope (no viable initial "
-#~ "configuration found)."
-#~ msgstr ""
-#~ "Es kann wahrscheinlich keine optimale Balkenneigung ermittelt werden "
-#~ "(keine funktionsfähige Anfangskonfiguration gefunden)"
+#~ msgid "Not sure that we can find a nice beam slope (no viable initial configuration found)."
+#~ msgstr "Es kann wahrscheinlich keine optimale Balkenneigung ermittelt werden (keine funktionsfähige Anfangskonfiguration gefunden)"
 
-#~ msgid ""
-#~ "Nothing to connect extender to on the left.  Ignoring extender event."
-#~ msgstr ""
-#~ "Nichts vorhanden, um die Erweiterung nach links zu verbinden. "
-#~ "Erweiterungsanforderung wird ignoriert."
+#~ msgid "Nothing to connect extender to on the left.  Ignoring extender event."
+#~ msgstr "Nichts vorhanden, um die Erweiterung nach links zu verbinden. Erweiterungsanforderung wird ignoriert."
 
 #~ msgid "couldn't find any font satisfying "
 #~ msgstr "konnte keine passende Schriftart finden für "
@@ -2914,9 +2756,7 @@ msgstr "Behauptung scheiterte"
 #~ "Grob %s endet, bevor dies erwartet wurde."
 
 #~ msgid "Nothing to connect hyphen to on the left.  Ignoring hyphen event."
-#~ msgstr ""
-#~ "Nichts vorhanden, um den Bindestrich nach links zu verbinden. "
-#~ "Bindestrichanforderung wird ignoriert."
+#~ msgstr "Nichts vorhanden, um den Bindestrich nach links zu verbinden. Bindestrichanforderung wird ignoriert."
 
 #~ msgid "Score contains errors; will not process it"
 #~ msgstr "Noten enthalten Fehler; keine weitere Verarbeitung"
@@ -2949,8 +2789,7 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Mensural_ligature: delta-pitch undefiniert bei flexa %d; nehme 0 an"
 
 #~ msgid "Mensural_ligature:flexa-width undefined on flexa %d; assuming 2.0"
-#~ msgstr ""
-#~ "Mensural_ligature: flexa-width undefiniert bei flexa %d; nehme 2.0 an"
+#~ msgstr "Mensural_ligature: flexa-width undefiniert bei flexa %d; nehme 2.0 an"
 
 #~ msgid "silly duration"
 #~ msgstr "sinnlose Dauer"
@@ -2977,8 +2816,7 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Staff_symbol: Einrückung reicht über das Zeilenende hinaus"
 
 #~ msgid "Error syncing file (disk full?)"
-#~ msgstr ""
-#~ "Datei konnte nicht synchronisiert (geschrieben) werden. (Platte voll?)"
+#~ msgstr "Datei konnte nicht synchronisiert (geschrieben) werden. (Platte voll?)"
 
 #~ msgid "No ties were created!"
 #~ msgstr "Es wurden keine Bindebögen erzeugt!"
@@ -2993,8 +2831,7 @@ msgstr "Behauptung scheiterte"
 #~ msgstr "Vaticana_ligature:delta-pitch -> Kombination wird ignoriert"
 
 #~ msgid "First argument must be a procedure taking one argument"
-#~ msgstr ""
-#~ "Das erste Argument muss eine Prozedur sein, welche ein Argument erwartet"
+#~ msgstr "Das erste Argument muss eine Prozedur sein, welche ein Argument erwartet"
 
 #~ msgid "Expecting musical-pitch value"
 #~ msgstr "Erwarte musikalischen Tonhöhenwert"
index 9ff5560c303e492af453a55e271dd5fec3b2c6ff..c7dfe7b526c2955c2be07ae996abdf9e157c39c9 100644 (file)
@@ -4,7 +4,7 @@ STEPMAKE_TEMPLATES=c python-module install-out po
 
 include $(depth)/make/stepmake.make
 
-CFLAGS += -DPy_BUILD_CORE
+CFLAGS += -DPy_BUILD_CORE -Wall
 # unset al guile stuff from configure
 CONFIG_LDFLAGS=
 
index 40a8300e730d252f19c75d14533443346581145e..995b2ea3b0c260cd58bbd4b199388a6ca335432a 100644 (file)
@@ -2632,7 +2632,8 @@ def conv (str):
     str = re.sub (r"minimumVerticalExtent",
                  r"\\override VerticalAxisGroup #'minimum-Y-extent",
                  str)
-
+    str = re.sub (r"\\set ([a-zA-Z]*\.?)verticalExtent",
+                 r"\\override \1VerticalAxisGroup")
     return str
 
 conversions.append (((2, 7, 14), conv,
index 8ccbaf975857160f10bde37b2cfc2c56f3469a1e..ef6c7af810455d315e2e059c552e37f0c05a7b12 100644 (file)
@@ -75,47 +75,47 @@ typedef struct message {
 } message_t;
 
 message_t channelVoiceMessages[] = {
-  0x80, "NOTE_OFF",
-  0x90, "NOTE_ON",
-  0xA0, "POLYPHONIC_KEY_PRESSURE",
-  0xB0, "CONTROLLER_CHANGE",
-  0xC0, "PROGRAM_CHANGE",
-  0xD0, "CHANNEL_KEY_PRESSURE",
-  0xE0, "PITCH_BEND",
-  0,0
+  {0x80, "NOTE_OFF"},
+  {0x90, "NOTE_ON"},
+  {0xA0, "POLYPHONIC_KEY_PRESSURE"},
+  {0xB0, "CONTROLLER_CHANGE"},
+  {0xC0, "PROGRAM_CHANGE"},
+  {0xD0, "CHANNEL_KEY_PRESSURE"},
+  {0xE0, "PITCH_BEND"},
+  {0,0}
 };
 
 message_t channelModeMessages[] = {
-  0x78, "ALL_SOUND_OFF",
-  0x79, "RESET_ALL_CONTROLLERS",
-  0x7A, "LOCAL_CONTROL",
-  0x7B, "ALL_NOTES_OFF",
-  0x7C, "OMNI_MODE_OFF",
-  0x7D, "OMNI_MODE_ON",
-  0x7E, "MONO_MODE_ON",
-  0x7F, "POLY_MODE_ON",
-  0,0
+  {0x78, "ALL_SOUND_OFF"},
+  {0x79, "RESET_ALL_CONTROLLERS"},
+  {0x7A, "LOCAL_CONTROL"},
+  {0x7B, "ALL_NOTES_OFF"},
+  {0x7C, "OMNI_MODE_OFF"},
+  {0x7D, "OMNI_MODE_ON"},
+  {0x7E, "MONO_MODE_ON"},
+  {0x7F, "POLY_MODE_ON"},
+  {0,0}
 };
 
 message_t metaEvents[] = {
-  0x00, "SEQUENCE_NUMBER",
-  0x01, "TEXT_EVENT",
-  0x02, "COPYRIGHT_NOTICE",
-  0x03, "SEQUENCE_TRACK_NAME",
-  0x04, "INSTRUMENT_NAME",
-  0x05, "LYRIC",
-  0x06, "MARKER",
-  0x07, "CUE_POINT",
-  0x20, "MIDI_CHANNEL_PREFIX",
-  0x21, "MIDI_PORT",
-  0x2F, "END_OF_TRACK",
-  0x51, "SET_TEMPO",
-  0x54, "SMTPE_OFFSET",
-  0x58, "TIME_SIGNATURE",
-  0x59, "KEY_SIGNATURE",
-  0x7F, "SEQUENCER_SPECIFIC_META_EVENT",
-  0xFF, "META_EVENT",
-  0,0
+  {0x00, "SEQUENCE_NUMBER"},
+  {0x01, "TEXT_EVENT"},
+  {0x02, "COPYRIGHT_NOTICE"},
+  {0x03, "SEQUENCE_TRACK_NAME"},
+  {0x04, "INSTRUMENT_NAME"},
+  {0x05, "LYRIC"},
+  {0x06, "MARKER"},
+  {0x07, "CUE_POINT"},
+  {0x20, "MIDI_CHANNEL_PREFIX"},
+  {0x21, "MIDI_PORT"},
+  {0x2F, "END_OF_TRACK"},
+  {0x51, "SET_TEMPO"},
+  {0x54, "SMTPE_OFFSET"},
+  {0x58, "TIME_SIGNATURE"},
+  {0x59, "KEY_SIGNATURE"},
+  {0x7F, "SEQUENCER_SPECIFIC_META_EVENT"},
+  {0xFF, "META_EVENT"},
+  {0,0}
 };
 
 void
@@ -148,7 +148,7 @@ unsigned long int
 get_variable_length_number (unsigned char **str, unsigned char * end_str)
 {
   long sum = 0;
-  int i = 0;
+
   while (*str < end_str)
     {
       unsigned char x = **str;
@@ -330,7 +330,7 @@ static PyObject *
 pymidi_parse_track (PyObject *self, PyObject *args)
 {
   unsigned char *track, *track_end;
-  unsigned long track_size, track_len;
+  unsigned long track_size;
 
   PyObject * sobj = PyTuple_GetItem (args, 0);
 
@@ -392,7 +392,7 @@ static PyObject *
 pymidi_parse (PyObject *self, PyObject *args)
 {
   unsigned char *midi, *midi_end;
-  unsigned long midi_size, midi_len;
+  unsigned long midi_size;
   
   PyObject *sobj = PyTuple_GetItem (args, 0);
 
index b0c85c24aec9da6e24657b636e7f99ccd6ee3d62..fe32b4ecd96cd923114968a4f19f440e073921e8 100644 (file)
@@ -210,10 +210,6 @@ visibility for normal (i.e. at the start of the line) key signatures.")
 extra natural sign before accidentals changing from a non-natural to 
 another non-natural.")
 
-     (extraVerticalExtent ,number-pair?
-                         "extra vertical extent, same format as @var{minimumVerticalExtent}")
-
-
      (figuredBassCenterContinuations ,boolean? "Whether to vertically center pairs of extender lines.  This does not work with three or more lines")
      (figuredBassPlusDirection ,ly:dir? "Where to put plus signs relative to the the main figure.")
      
@@ -312,14 +308,14 @@ markup.  Called with 2 arguments, event and context.")
      (midiMaximumVolume ,number? "Analogous to @code{midiMinimumVolume}.")
      (minimumFret ,number? "The tablature auto string-selecting mechanism
 selects the highest string with a fret at least @code{minimumFret}")
+     (maximumFretStretch ,number? "Don't allocate frets further than this from specified frets.")
      (minimumPageTurnLength ,ly:moment? "Minimum length of a rest for a page turn to be allowed")
      (minimumRepeatLengthForPageTurn ,ly:moment? "Minimum length of a repeated section for a page
 turn to be allowed within that section")
-     (minimumVerticalExtent ,number-pair? "minimum vertical extent, same
-format as @var{verticalExtent}")
      (output ,ly:music-output? "The output produced by a score-level translator during music interpretation")
      (ottavation ,string? "If set, the text for an ottava spanner. Changing
 this creates a new text spanner. ")
+     (noteToFretFunction ,procedure? "How to produce a fret diagram.  Parameters: list of note events and list of tabstring events.")
      (pedalSustainStrings ,list? "List of string to print for
 sustain-pedal. Format is (@var{up} @var{updown} @var{down}), where
 each of the three is the string to print when this is done with the
@@ -441,18 +437,6 @@ property, you can make brackets last shorter.  Example
      (useBassFigureExtenders ,boolean? "Whether to use extender lines
 for repeated bass figures")
 
-     (verticalExtent ,number-pair? "Hard coded vertical extent.  The format
-is a pair of dimensions, for example, this sets the sizes of a staff
-to 10 (5+5) staff-spaces high.
-
-@example
-\\set Staff.verticalExtent = #'(-5.0 . 5.0)
-@end example
-
-
-This does not work for Voice or any other context that doesn't form a
-vertical group.")
-     
      (verticallySpacedContexts ,list? "List of symbols, containing
 context names whose vertical axis groups should be taken into account for
 vertical spacing of systems.")
index afb72d6999725b6a9be6e7c06ed07ac750029457..7d4ca0f34db32b361e1b62c4caf8a282f2b7b3b7 100644 (file)
@@ -49,7 +49,8 @@
  'fret-diagram-interface
  "A fret diagram"
  '(align-dir barre-type dot-color dot-radius finger-code fret-count
-  label-dir number-type size string-count thickness))
+  label-dir number-type size string-count
+  string-fret-finger-combinations thickness))
 
 (ly:add-interface
  'grace-spacing-interface
index c084ea855d670cf773197d3213773e8bcb397ee6..029d73c58f7fdaa0a4c2a0cc47d4bbfee2ec7868 100644 (file)
@@ -425,6 +425,7 @@ separately, but put before musical columns.")
      (strict-grace-spacing ,boolean? "If set, grace notes 
 are not spaced separately, but put before musical columns.")
      (string-count ,integer? "The number of strings in a fret diagram.")
+     (string-fret-finger-combinations ,list? "List consisting of (string-number fret-number finger-number) entries.")
      (stroke-style ,string? "set to \"grace\" to turn stroke through flag on.")
      
      (style ,symbol? "This setting determines in what style a grob is
index 99492119c78baa03a4d4a0aebc9724605312fd08..37277a762ac70a8fec386f0144aaa2f5d5cd4692 100644 (file)
                                side-position-interface
                                self-alignment-interface
                                item-interface))))))
+    (FretBoard
+     . ((stencil . ,fret-board::calc-stencil)
+       (finger-code . below-string)
+       (meta . ((class . Item)
+                (interfaces . (fret-diagram-interface
+                               font-interface
+                               ))))
+             ))
     (Glissando
      . (
        (style . line)
                                mark-interface
                                self-alignment-interface))))))
 
-
     (RepeatSlash
      . (
        (stencil . ,ly:percent-repeat-item-interface::beat-slash)
        (slope . 1.7)
        (meta . ((class . Item)
                 (interfaces . (percent-repeat-interface))))))
+
     (RepeatTie
      . (
        (stencil  . ,ly:tie::print)
 
     (SeparationItem
      . (
-       (X-extent . #f)
-       (Y-extent . #f)
+       (avoid-slur . inside)
+       (X-extent . ,ly:axis-group-interface::width)
+       (Y-extent . ,ly:axis-group-interface::height)
        (meta . ((class . Item)
                 (interfaces . (spacing-interface
                                separation-item-interface))))))
 
 (define pure-print-callbacks
   (list
-   `(,ly:note-head::print . '())
-   `(,ly:clef::print . '())
-   `(,ly:text-interface::print . '())
-   `(,ly:script-interface::print . '())))
+   ly:note-head::print
+   ly:clef::print
+   ly:text-interface::print
+   ly:script-interface::print))
 
 ;; ly:grob::stencil-extent is safe iff the print callback is safe too
 (define (pure-stencil-height grob start stop)
   (let ((sten (ly:grob-property-data grob 'stencil)))
     (if (or
         (ly:stencil? sten)
-        (pair? (assq sten pure-print-callbacks)))
+        (memq sten pure-print-callbacks))
        (ly:grob::stencil-height grob)
        '(0 . 0))))
 
-(define pure-Y-extents
-  (list
-   `(,ly:staff-symbol::height . ())))
-
-(define Y-extent-conversions
+(define pure-conversions-alist
   (list
+   `(,ly:slur::outside-slur-callback . ,ly:slur::pure-outside-slur-callback)
    `(,ly:stem::height . ,ly:stem::pure-height)
    `(,ly:grob::stencil-height . ,pure-stencil-height)
    `(,ly:side-position-interface::y-aligned-side . ,ly:side-position-interface::pure-y-aligned-side)
    `(,ly:axis-group-interface::height . ,ly:axis-group-interface::pure-height)
    `(,ly:hara-kiri-group-spanner::y-extent . ,ly:hara-kiri-group-spanner::pure-height)
-   `(,ly:slur::height . ,ly:slur::pure-height)))
-
-(define pure-Y-offsets
-  (list
-   `(,ly:staff-symbol-referencer::callback . ())))
+   `(,ly:slur::height . ,ly:slur::pure-height)
+   `(,ly:side-position-interface::y-aligned-side . ,ly:side-position-interface::pure-y-aligned-side)))
 
-(define Y-offset-conversions
+(define pure-functions
   (list
-   `(,ly:side-position-interface::y-aligned-side . ,ly:side-position-interface::pure-y-aligned-side)))
+   ly:staff-symbol-referencer::callback
+   ly:staff-symbol::height))
 
 (define-public (pure-relevant grob)
   (let ((extent-callback (ly:grob-property-data grob 'Y-extent)))
-    (or
-     (pair? extent-callback)
-     (pair? (assq extent-callback pure-Y-extents))
-     (and
-      (pair? (assq extent-callback Y-extent-conversions))
-      (or
-       (not (eq? extent-callback ly:grob::stencil-height))
-       (pair? (assq (ly:grob-property-data grob 'stencil) pure-print-callbacks))
-       (ly:stencil? (ly:grob-property-data grob 'stencil)))))))
-
-(define (pure-conversion pures conversions defsymbol defreturn rettype? grob start stop)
-  (let* ((normal-callback (ly:grob-property-data grob defsymbol))
-        )
-
-    (if (rettype? normal-callback)
-       normal-callback
-       (if (pair? (assq normal-callback pures))
-           (normal-callback grob)
-           (let
-               ((pure-callback (assq normal-callback conversions)))
-
-             (if (pair? pure-callback)
-                 ((cdr pure-callback) grob start stop)
-                 defreturn))))))
-
-(define-public (pure-Y-extent grob start stop)
-  (pure-conversion pure-Y-extents Y-extent-conversions
-                  'Y-extent '(0 . 0) pair? grob start stop))
-
-(define-public (pure-Y-offset grob start stop)
-  (pure-conversion pure-Y-offsets Y-offset-conversions
-                  'Y-offset 0 number? grob start stop))
+    (not (eq? #f
+             (or
+              (pair? extent-callback)
+              (memq extent-callback pure-functions)
+              (and
+               (pair? (assq extent-callback pure-conversions-alist))
+               (begin
+                 (or
+                  (not (eq? extent-callback ly:grob::stencil-height))
+                  (memq (ly:grob-property-data grob 'stencil) pure-print-callbacks)
+                  (ly:stencil? (ly:grob-property-data grob 'stencil))))))))))
+
+(define-public (call-pure-function unpure args start end)
+  (if (ly:simple-closure? unpure)
+      (ly:eval-simple-closure (car args) unpure start end)
+      (if (not (procedure? unpure))
+         unpure
+         (if (memq unpure pure-functions)
+             (apply unpure args)
+             (let ((pure (assq unpure pure-conversions-alist)))
+               (if pure
+                   (apply (cdr pure) (append (list (car args) start end) (cdr args)))))))))
index fe5b6128d76b479ad399ae8bf6d55dcf793bff61..2792ef7956197d0d3dcb5bf2518fe5f81944ad47 100644 (file)
@@ -21,7 +21,8 @@
                      ((eq? my-code 'place-fret)
                         (set! dot-list (cons* (cdr my-item) dot-list))))
                  (parse-item (cdr mylist)))))
-               ; calculate fret-range
+      
+      ;; calculate fret-range
                (let ((maxfret 0) (minfret 99))
                     (let updatemax ((fret-list dot-list))
                         (if (null?  fret-list)
@@ -40,7 +41,9 @@
                (acons 'barre-list barre-list
                (acons 'dot-list dot-list
                (acons 'xo-list xo-list '()))))))
-   
+
+
+
 (define (subtract-base-fret base-fret dot-list)
 "Subtract @var{base-fret} from every fret in @var{dot-list}"  
   (if (null? dot-list)
@@ -133,6 +136,7 @@ Line thickness is given by @var{th}, fret & string spacing by
 (define (draw-dots layout props string-count fret-range size finger-code 
                     dot-position dot-radius dot-thickness dot-list)
   "Make dots for fret diagram."
+
   (let* ((scale-dot-radius (* size dot-radius))
          (scale-dot-thick (* size dot-thickness))
          (dot-color (chain-assoc-get 'dot-color props 'black))
@@ -298,7 +302,7 @@ Line thickness is given by @var{th}, fret & string spacing by
   For example,
   
 @example
-   \\markup \\fret-diagram #'((mute 6) (mute 5) (open 4)
+   \\markup \\fret-diagram-verbose #'((mute 6) (mute 5) (open 4)
         (place-fret 3 2) (place-fret 2 3) (place-fret 1 2))
 @end example 
   
@@ -326,6 +330,9 @@ changed by setting the value of the variable @var{dot-color}.  If the
 variable @var{finger-code}.  There is no limit to the number of fret
 indications per string.
 
+
+
+
 @end table
 "
    (make-fret-diagram layout props marking-list))
index 1748401fd4807b21c07f743175d9c54e5c5491fd..0087169af5f6eefe0ce879e856d013ee50a10744 100644 (file)
@@ -460,3 +460,43 @@ centered, X==1 is at the right, X == -1 is at the left."
 
 (define-public (lyric-text::calc-text grob)
    (ly:event-property (event-cause grob) 'text))
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; fret boards
+
+(define (string-frets->description string-frets string-count)
+  (let*
+      ((desc (list->vector
+             (map (lambda (x) (list 'mute  (1+ x)))
+                  (iota string-count)))))
+       
+       (for-each (lambda (sf)
+                  (let*
+                      ((string (car sf))
+                       (fret (cadr sf))
+                       (finger (caddr sf)))
+
+                    
+                    (vector-set! desc (1- string)
+                                 (if (= 0 fret)
+                                     (list 'open string)
+                                     (if finger
+                                         (list 'place-fret string fret finger) 
+                                         (list 'place-fret string fret))
+                                         
+
+                                     ))
+                    ))
+                string-frets)
+
+       (vector->list desc)))
+
+(define-public (fret-board::calc-stencil grob)
+  (let* ((string-frets (ly:grob-property grob 'string-fret-finger-combinations))
+        (string-count (ly:grob-property grob 'string-count))
+        (layout (ly:grob-layout grob))
+        (defs (ly:output-def-lookup layout 'text-font-defaults))
+        (props (ly:grob-alist-chain grob defs)))
+
+    (make-fret-diagram layout props
+                      (string-frets->description string-frets 6))))
index 0bf05bca5714b96739ae18d7b034c5ec1ec9897c..eab413f5ce8a1cd7ba220b5025dcb073889b58c6 100644 (file)
 
     ))
 
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; fret diagrams
+
+(define-public (determine-frets context grob notes string-numbers)
+  (define (ensure-number a b)
+    (if (number? a)
+       a
+       b))
+(let*
+      ((tunings (ly:context-property context 'stringTunings))
+       (minimum-fret (ensure-number
+                     (ly:context-property context 'minimumFret) 0))
+       (max-stretch (ensure-number
+                     (ly:context-property context 'maximumFretStretch) 4))
+       (string-frets (determine-frets-mf notes string-numbers
+                                        minimum-fret max-stretch
+                                        tunings)))
+
+                     
+  (set! (ly:grob-property grob 'string-count) (length tunings))
+  (set! (ly:grob-property grob 'string-fret-finger-combinations) string-frets)
+
+  ))
+
+(define-public (determine-frets-mf notes string-numbers
+                                  minimum-fret max-stretch
+                                  tunings)
+
+  (define (calc-fret pitch string tuning)
+    (- (ly:pitch-semitones pitch) (list-ref tuning (1- string))))
+
+  (define (note-pitch a)
+    (ly:event-property a 'pitch))
+
+  (define (note-pitch<? a b)
+    (ly:pitch<? (note-pitch a)
+               (note-pitch b)))
+
+  (define (note-finger ev)
+    (let* ((articulations (ly:event-property ev 'articulations))
+          (finger-found #f))
+
+      (map (lambda (art)
+            (let*
+                ((num (ly:event-property art 'digit)))
+
+              (if (and (eq? 'fingering-event (ly:event-property art 'class))
+                       (number? num))
+                  (set! finger-found num))))
+          articulations)
+
+      finger-found))
+  
+  (define (note-string ev)
+    (let* ((articulations (ly:event-property ev 'articulations))
+          (string-found #f))
+
+      (map (lambda (art)
+            (let*
+                ((num (ly:event-property art 'string-number)))
+
+              (if (number? num)
+                  (set! string-found num))))
+          articulations)
+
+      string-found))
+
+  (define (del-string string)
+                     (if (number? string)
+                         (set! free-strings
+                               (delete string free-strings))))
+  (define specified-frets '())
+  (define free-strings '())
+  
+  (define (close-enough fret)
+                      (reduce
+                       (lambda (x y)
+                         (and x y))
+                       #t
+                       (map (lambda (specced-fret)
+                              (> max-stretch (abs (- fret specced-fret))))
+                            specified-frets)
+                       ))
+  
+  (define (string-qualifies string pitch)
+    (let*
+       ((fret (calc-fret pitch string tunings)))
+        
+        (and (>= fret minimum-fret)
+             (close-enough fret))
+        
+        ))
+                          
+  (define string-fret-fingering-tuples '())
+  (define (set-fret note string)
+                   (set! string-fret-fingering-tuples
+                         (cons (list string
+                                     (calc-fret (ly:event-property note 'pitch)
+                                                string tunings)
+                                     (note-finger note))
+                               string-fret-fingering-tuples))
+                   (del-string string))
+       
+
+  ;;; body.
+  (set! specified-frets
+       (filter identity (map
+                     (lambda (note)
+                       (if (note-string note)
+                           (calc-fret (note-pitch note)
+                                      (note-string note) tunings)
+                           #f))
+                     notes)))
+
+
+  (set! free-strings (map 1+ (iota (length tunings))))
+    
+  (for-each (lambda (note)
+             (del-string (note-string note)))
+           notes)
+  
+  
+  (for-each
+   (lambda (note)
+     (if (note-string note)
+        (set-fret note (note-string note))
+        (let*
+            ((string (find (lambda (string) (string-qualifies string
+                                                              (note-pitch note)))
+                             (reverse free-strings))))
+          (if string
+              (set-fret note string)
+              (ly:warning "No string for pitch ~a (given frets ~a)" (note-pitch note)
+                          specified-frets))
+                          
+              )))
+   (sort notes note-pitch<?))
+
+  string-fret-fingering-tuples)
index f64deb6343354e89fd342e895737472bb80c2fee..a99ceb49e4416d5f4c31793cd843354ad174e3ab 100644 (file)
@@ -156,8 +156,8 @@ def get_option_parser ():
                   default=False)
     
     p.add_option ('', '--psfonts', action="store_true", dest="psfonts",
-                  help=_ ('''extract all PostScript fonts into INPUT.psfonts for LaTeX'''
-                   '''must use this with dvips -h INPUT.psfonts'''),
+                  help=_ ('''extract all PostScript fonts into INPUT.psfonts for LaTeX
+must use this with dvips -h INPUT.psfonts'''),
                   default=None)
     p.add_option ('-V', '--verbose', help=_("be verbose"),
                   action="store_true",
diff --git a/server.el.patch b/server.el.patch
deleted file mode 100644 (file)
index fb3c59f..0000000
+++ /dev/null
@@ -1,165 +0,0 @@
-From: Jan Nieuwenhuizen <janneke@gnu.org>
-Subject: Bugfix and feature for server.el
-To: emacs-devel@gnu.org
-cc: Han-Wen <hanwen@cs.uu.nl>
-Date: Sat, 10 Aug 2002 17:46:22 +0200
-Organization: Jan at Peder
-
-
-Find the following fix attached.  We had a problem with our
-application that uses `emacslient --no-wait' to edit input files.
-
-Emacs-21.2 (unlike previous versions), when invoked through
-`emacsclient --no-wait', wants to revert buffers whenever they have
-been edited, and does allow any editing, which is annoying.  When
-invoking with --no-wait, we are typically `moving around' and editing
-the same file all the time; and do not want to revert.
-
-When it does revert the buffer, it does not use the column argument of
-emacsclient; this is now fixed.
-
-Greetings,
-Han-Wen and Jan.
-
-
-Btw: this message was sent to bug-gnu-emacs about three weeks ago, but
-     that list seems to be slightly foobarred?  We both have current
-     disclaimers with GNU.
-
-
-ChangeLog:
-2002-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
-
-       * server.el (server-process-filter): Cleanup stray if.  Add
-       'no-revert to file list entry when emacsclient was invoked with
-       '--no-wait'.
-       (server-visit-files): New function goto-line-column.  Accept
-       'no-revert option.  Bugfix: also goto column when reverting
-       buffer.
-
---- server.el.~1.78.~  2001-12-18 17:42:38.000000000 +0100
-+++ server.el  2002-08-10 17:32:10.000000000 +0200
-@@ -251,40 +251,43 @@ Prefix arg means just kill any existing 
-                      (substring request (match-beginning 0) (1- (match-end 0))))
-                     (pos 0))
-                 (setq request (substring request (match-end 0)))
--                (if (string-match "\\`-nowait" arg)
--                    (setq nowait t)
--                  (cond
--                      ;; ARG is a line number option.
--                   ((string-match "\\`\\+[0-9]+\\'" arg)
-+                (cond
-+                 ((string-match "\\`-nowait" arg)
-+                  (setq nowait t))
-+                 ;; ARG is a line number option.
-+                 ((string-match "\\`\\+[0-9]+\\'" arg)
-                     (setq lineno (string-to-int (substring arg 1))))
--                   ;; ARG is line number:column option. 
--                   ((string-match "\\`+\\([0-9]+\\):\\([0-9]+\\)\\'" arg)
--                    (setq lineno (string-to-int (match-string 1 arg))
--                          columnno (string-to-int (match-string 2 arg))))
--                   (t
--                    ;; ARG is a file name.
--                    ;; Collapse multiple slashes to single slashes.
--                    (setq arg (command-line-normalize-file-name arg))
--                    ;; Undo the quoting that emacsclient does
--                    ;; for certain special characters.
--                    (while (string-match "&." arg pos)
--                      (setq pos (1+ (match-beginning 0)))
--                      (let ((nextchar (aref arg pos)))
--                        (cond ((= nextchar ?&)
--                               (setq arg (replace-match "&" t t arg)))
--                              ((= nextchar ?-)
--                               (setq arg (replace-match "-" t t arg)))
--                              (t
--                               (setq arg (replace-match " " t t arg))))))
--                    ;; Now decode the file name if necessary.
--                    (if coding-system
--                        (setq arg (decode-coding-string arg coding-system)))
--                    (setq files
--                          (cons (list arg lineno columnno)
--                                files))
--                    (setq lineno 1)
--                    (setq columnno 0))))))
--            (run-hooks 'pre-command-hook)
-+                 ;; ARG is line number:column option. 
-+                 ((string-match "\\`+\\([0-9]+\\):\\([0-9]+\\)\\'" arg)
-+                  (setq lineno (string-to-int (match-string 1 arg))
-+                        columnno (string-to-int (match-string 2 arg))))
-+                 (t
-+                  ;; ARG is a file name.
-+                  ;; Collapse multiple slashes to single slashes.
-+                  (setq arg (command-line-normalize-file-name arg))
-+                  ;; Undo the quoting that emacsclient does
-+                  ;; for certain special characters.
-+                  (while (string-match "&." arg pos)
-+                    (setq pos (1+ (match-beginning 0)))
-+                    (let ((nextchar (aref arg pos)))
-+                      (cond ((= nextchar ?&)
-+                             (setq arg (replace-match "&" t t arg)))
-+                            ((= nextchar ?-)
-+                             (setq arg (replace-match "-" t t arg)))
-+                            (t
-+                             (setq arg (replace-match " " t t arg))))))
-+                  ;; Now decode the file name if necessary.
-+                  (if coding-system
-+                      (setq arg (decode-coding-string arg coding-system)))
-+                  (setq files
-+                        ;; When invoking emacsclient with --no-wait, we are
-+                        ;; typically `moving around' and editing the same file;
-+                        ;; and do not want to revert.  Should make --no-revert
-+                        ;; option for emacsclient?
-+                        (cons (list arg lineno columnno (if nowait 'no-revert nil))
-+                              files))
-+                  (setq lineno 1)
-+                  (setq columnno 0)))))
-             (server-visit-files files client nowait)
-             (run-hooks 'post-command-hook)
-             ;; CLIENT is now a list (CLIENTNUM BUFFERS...)
-@@ -309,6 +312,13 @@ Prefix arg means just kill any existing 
- FILES is an alist whose elements are (FILENAME LINENUMBER COLUMNNUMBER).
- NOWAIT non-nil means this client is not waiting for the results,
- so don't mark these buffers specially, just visit them normally."
-+
-+  (defun goto-line-column (file-line-col)
-+    (goto-line (nth 1 file-line-col))
-+    (let ((column-number (nth 2 file-line-col)))
-+      (if (> column-number 0)
-+        (move-to-column (1- column-number)))))
-+  
-   ;; Bind last-nonmenu-event to force use of keyboard, not mouse, for queries.
-   (let (client-record (last-nonmenu-event t) (obuf (current-buffer)))
-     ;; Restore the current buffer afterward, but not using save-excursion,
-@@ -322,7 +332,8 @@ so don't mark these buffers specially, j
-         (let* ((filen (car (car files)))
-                (obuf (get-file-buffer filen)))
-           (push filen file-name-history)
--          (if (and obuf (set-buffer obuf))
-+          (if (and obuf (set-buffer obuf)
-+                   (not (memq 'no-revert (car files))))
-               (progn
-                 (cond ((file-exists-p filen)
-                        (if (or (not (verify-visited-file-modtime obuf))
-@@ -335,12 +346,9 @@ so don't mark these buffers specially, j
-                                     ", write buffer to file? "))
-                            (write-file filen))))
-                 (setq server-existing-buffer t)
--                (goto-line (nth 1 (car files))))
-+                (goto-line-column (car files)))
-             (set-buffer (find-file-noselect filen))
--            (goto-line (nth 1 (car files)))
--            (let ((column-number (nth 2 (car files))))
--              (when (> column-number 0)
--                (move-to-column (1- column-number))))
-+            (goto-line-column (car files))
-             (run-hooks 'server-visit-hook)))
-         (if (not nowait)
-             (setq server-buffer-clients
-
--- 
-Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond - The music typesetter
-http://www.xs4all.nl/~jantien       | http://www.lilypond.org
-
-
-
-
index 813b8309775e6c9f7b0fa021b305a336473cb0fb..be97fa96de6dc2b1ff96b03d69f21050b5efa6e9 100644 (file)
@@ -668,7 +668,11 @@ AC_DEFUN(STEPMAKE_INIT, [
 
        AC_MSG_CHECKING(builddir)
        ugh_ugh_autoconf250_builddir="`pwd`"
-       if test "$srcdir" = "."; then
+
+       here_dir=$(cd . && pwd)
+       full_src_dir=$(cd $srcdir && pwd)
+
+       if test "$full_src_dir" = "$here_dir"; then
            srcdir_build=yes
        else
            srcdir_build=no
index 7f2ef65dcd89e80edeb9a57bda163098e3baec3a..d19a9a4b74fcb8fb5c04904ff31bb24d6c830165 100644 (file)
@@ -10,7 +10,6 @@ import time
 import string 
 import getopt
 
-gcos = "unknown"
 index_url=''
 top_url=''
 changelog_file=''
@@ -104,23 +103,6 @@ for opt in options:
     else:
         raise 'unknown opt ', o
 
-#burp?
-def set_gcos ():
-    global gcos
-    os.environ["CONFIGSUFFIX"] = 'www';
-    if os.name == 'nt':
-        import ntpwd
-        pw = ntpwd.getpwname(os.environ['USERNAME'])
-    else:
-        import pwd
-        if os.environ.has_key('FAKEROOTKEY') and os.environ.has_key('LOGNAME'):
-            pw = pwd.getpwnam (os.environ['LOGNAME'])
-        else:
-            pw = pwd.getpwuid (os.getuid())
-
-    f = pw[4]
-    f = string.split (f, ',')[0]
-    gcos = f 
 
 def compose (default, file):
     s = default
@@ -128,7 +110,6 @@ def compose (default, file):
         s = open (file).read ()
     return s
 
-set_gcos ()
 localtime = time.strftime ('%c %Z', time.localtime (time.time ()))
 
 if os.path.basename (index_url) != "index.html":
index 972d3fd671168a745c0915edf214f6ac40d40f82..26874ad5b549b18d0e6bd5c347a1ebaf237d9078 100644 (file)
@@ -148,6 +148,7 @@ $(outdir)/dummy.dep:
        @echo please ignore innocent warning about dummy.dep
        -mkdir -p $(outdir)
        touch $(outdir)/dummy.dep
+       echo '*' > $(outdir)/.gitignore
 
 check: local-check
        $(LOOP)
index d18bd81029a53962e4edfbda8386c413c8682784..1bb8bf6d7fd4c8d09aea89b47de20fb8bbb61626 100644 (file)
@@ -1 +1 @@
-include /dev/null
+# empty