1 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Hand-force git changes to commit. Where is my changelog?
5 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
7 * buildscripts/git-update-changelog.py (main): write .msg and cvs
10 * scm/define-grobs.scm:
11 separation-items have width
17 * Documentation/topdocs/NEWS.tely:
18 * lily/separating-group-spanner.cc:
19 * lily/slur-engraver.cc:
20 * lily/slur-scoring.cc:
21 * scm/define-grobs.scm:
22 * input/regression/slur-clef.ly:
23 add breakableSeparationItem to extra encompass for slurs. This
24 fixes slur/clef slur/key collisions etc. Should fix #49
26 * lily/include/slur-scoring.hh:
27 * lily/slur-scoring.cc:
28 Use X of separation item as slur start. Fixes #120
30 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
32 * buildscripts/git-update-changelog.py (changelog_body): don't
35 * lily/grob.cc: add avoid-slur
37 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
41 move server/emacsclient to elisp/
43 * buildscripts/git-update-changelog.py (Commit.note_del_file):
46 * elisp/server.el.patch:
49 * elisp/emacsclient.patch:
52 * buildscripts/git-update-changelog.py:
59 * buildscripts/git-update-changelog.py:
60 script to update ChangeLog with Git messages.
62 * lily/beam-engraver.cc:
63 * input/regression/rest-pitched-beam.ly:
64 don't set callback if staff-position set. Fixes #126.
66 * lily/bar-number-engraver.cc:
68 * lily/fingering-engraver.cc:
69 * lily/grob-property.cc:
71 * lily/include/grob.hh:
72 * lily/include/lily-guile-macros.hh:
73 * lily/mark-engraver.cc:
74 * lily/melody-engraver.cc:
75 * lily/script-column.cc:
76 * lily/tie-formatting-problem.cc:
78 internal_get_property_data() using ly_symbol2scm()
80 * stepmake/stepmake/generic-targets.make:
81 create .gitignore in outdir.
86 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
88 * input/test/vertical-extent.ly:
89 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
91 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
93 * stepmake/bin/add-html-footer.py (compose): remove setgcos
95 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
97 * GNUmakefile.in (install-help2man): install-help2man target.
99 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
101 * SConstruct (configure): Do not check for /bin/sh.
103 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
105 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
108 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
110 * input/regression/fret-boards.ly: new file.
112 * po/de.po: new po courtesy translation team.
114 * scripts/lilypond-book.py (get_option_parser): add newline to doc
117 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
119 * ly/gregorian-init.ly (neumeDemoLayout): update
120 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
122 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
123 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
125 2006-10-27 Erlend Aasland <erlenda@gmail.com>
127 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
128 Yet another build fix.
130 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
132 * SConstruct (lilypondprefix): use sorted() for list_sort()
135 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
137 * flower/SConscript: Unit test rules.
139 * flower/test-std.cc: Compile fix.
141 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
143 * python/midi.c (pymidi_parse_track): warning fixes.
145 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
146 include dot-column.hh
148 2006-10-26 Graham Percival <gpermus@gmail.com>
150 * Documentation/user/{basic-, global}: minor changes from mailist.
152 2006-10-26 Erlend Aasland <erlenda@gmail.com>
154 * scm/define-grobs.scm: trivial beautification
156 * lily/tie-performer.cc: no need to #include "pqueue.hh"
158 * lily/source-file.cc: put multibyte var inside #if clause
160 * scm/define-grob-interfaces.scm:
161 * scm/define-grob-properties.scm:
162 Build fix (string-fret-finger-combinations)
164 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
167 * Documentation/user/lilypond-book.itely: Build fix.
169 2006-10-26 Joe Neeman <joeneeman@gmail.com>
171 * lily/system.cc (get_paper_system):
172 * lily/paper-book.cc (systems):
173 move most of the backwards compatibility stuff into
176 * Documentation/topdocs/NEWS.tely: add 2 entries for the
179 * Documentation/user/page.itely: remove time-scaled-music
180 bug for the Page_turn_engraver
182 * lily/paper-book.cc (set_system_penalty): backwards
183 compatibility (breakbefore) for the old page breaker
185 2006-10-25 Graham Percival <gpermus@gmail.com>
187 * Diocumentation/user/instrument-notation.itely: added more
188 info about stanzas; thanks Geoff!
190 * Documentation/user/ {basic, advanced}: small fixes from
193 * THANKS: add some bug reporters.
195 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
197 * scm/define-context-properties.scm (all-user-translation-properties):
198 noteToFretFunction: Add.
200 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
201 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
203 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
205 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
208 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
209 Remove bashism in delete.
211 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
213 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
215 * scm/translation-functions.scm (determine-frets-mf): flatten let*
217 * scm/define-context-properties.scm
218 (all-user-translation-properties): add maximumFretStretch property.
220 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
222 * lily/source-file.cc (get_counts): use multibyte variable.
224 * scm/translation-functions.scm (determine-frets-mf): new
225 function: compute fret numbers.
227 * scm/output-lib.scm (string-frets->description) new function.
228 (fret-board::calc-stencil): new function
230 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
232 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
234 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
236 * lily/tab-note-heads-engraver.cc: cleanups.
238 * lily/fretboard-engraver.cc: new file
240 * ly/engraver-init.ly: add FretBoards context
242 2006-10-24 Joe Neeman <joeneeman@gmail.com>
244 * lily/grob.cc (pure_relative_y_coordinate)
245 (pure_height): use the new call_pure_function stuff
247 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
250 * lily/side-position-interface.cc (pure_y_aligned_side): add an
253 * lily/simple-closure.cc (ly_eval_simple_closure): make
254 simple-closure evaluatable from scheme
255 (evaluate_with_simple_closure): make simple-closures pure-
258 * lily/slur.cc (pure_outside_slur_callback): new function
260 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
261 fits in with previous changes that made the page forces much
264 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
265 and pure-Y-extent into this new function.
266 (pure-conversions-alist): add outside-slur-callback
268 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
270 * Documentation/user/advanced-notation.itely (Instrument names):
271 Remove obsolete bug workaround for instrument names on piano
274 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
276 * Documentation/user/lilypond-book.itely (Integrating DocBook and
277 music): patch by Bertalan Fodor for docbook.
279 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
280 of $(LILYPOND). Prevents lilypond run for .txt files.
282 * INSTALL.txt: gitness.
284 * .cvsignore: update to force gitness.
286 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
288 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
289 detect suicide in nested tuplets.
291 2006-10-23 Werner Lemberg <wl@gnu.org>
293 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
294 typo in argument to FT_Get_X11_Font_Format.
296 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
298 * stepmake/stepmake/po-vars.make: more gitness.
300 * flower/polynomial.cc (check_sol): no empty if bodies.
303 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
305 * stepmake/stepmake/po-vars.make: Resolve.
307 2006-10-29 Jan Nieuwenhuizen <janneke@gnu.org>
309 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
311 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
313 * buildscripts/git-update-changelog.py (main): write .msg and cvs command.
315 * scm/define-grobs.scm:
316 separation-items have width
322 * Documentation/topdocs/NEWS.tely:
323 * lily/separating-group-spanner.cc:
324 * lily/slur-engraver.cc:
325 * lily/slur-scoring.cc:
326 * scm/define-grobs.scm:
327 * input/regression/slur-clef.ly:
328 add breakableSeparationItem to extra encompass for slurs. This
329 fixes slur/clef slur/key collisions etc. Should fix #49
331 * lily/include/slur-scoring.hh:
332 * lily/slur-scoring.cc:
333 Use X of separation item as slur start. Fixes #120
335 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
337 * buildscripts/git-update-changelog.py (changelog_body): don't
340 * lily/grob.cc: add avoid-slur
342 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
346 move server/emacsclient to elisp/
348 * buildscripts/git-update-changelog.py (Commit.note_del_file):
351 * elisp/server.el.patch:
354 * elisp/emacsclient.patch:
357 * buildscripts/git-update-changelog.py:
364 * buildscripts/git-update-changelog.py:
365 script to update ChangeLog with Git messages.
367 * lily/beam-engraver.cc:
368 * input/regression/rest-pitched-beam.ly:
369 don't set callback if staff-position set. Fixes #126.
371 * lily/bar-number-engraver.cc:
373 * lily/fingering-engraver.cc:
374 * lily/grob-property.cc:
376 * lily/include/grob.hh:
377 * lily/include/lily-guile-macros.hh:
378 * lily/mark-engraver.cc:
379 * lily/melody-engraver.cc:
380 * lily/script-column.cc:
381 * lily/tie-formatting-problem.cc:
383 internal_get_property_data() using ly_symbol2scm()
385 * stepmake/stepmake/generic-targets.make:
386 create .gitignore in outdir.
391 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
393 * input/test/vertical-extent.ly:
394 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
396 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
398 * stepmake/bin/add-html-footer.py (compose): remove setgcos
400 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
402 * GNUmakefile.in (install-help2man): install-help2man target.
404 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
406 * SConstruct (configure): Do not check for /bin/sh.
408 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
410 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
413 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
415 * input/regression/fret-boards.ly: new file.
417 * po/de.po: new po courtesy translation team.
419 * scripts/lilypond-book.py (get_option_parser): add newline to doc
422 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
424 * ly/gregorian-init.ly (neumeDemoLayout): update
425 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
427 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
428 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
430 2006-10-27 Erlend Aasland <erlenda@gmail.com>
432 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
433 Yet another build fix.
435 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
437 * SConstruct (lilypondprefix): use sorted() for list_sort()
440 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
442 * flower/SConscript: Unit test rules.
444 * flower/test-std.cc: Compile fix.
446 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
448 * python/midi.c (pymidi_parse_track): warning fixes.
450 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
451 include dot-column.hh
453 2006-10-26 Graham Percival <gpermus@gmail.com>
455 * Documentation/user/{basic-, global}: minor changes from mailist.
457 2006-10-26 Erlend Aasland <erlenda@gmail.com>
459 * scm/define-grobs.scm: trivial beautification
461 * lily/tie-performer.cc: no need to #include "pqueue.hh"
463 * lily/source-file.cc: put multibyte var inside #if clause
465 * scm/define-grob-interfaces.scm:
466 * scm/define-grob-properties.scm:
467 Build fix (string-fret-finger-combinations)
469 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
472 * Documentation/user/lilypond-book.itely: Build fix.
474 2006-10-26 Joe Neeman <joeneeman@gmail.com>
476 * lily/system.cc (get_paper_system):
477 * lily/paper-book.cc (systems):
478 move most of the backwards compatibility stuff into
481 * Documentation/topdocs/NEWS.tely: add 2 entries for the
484 * Documentation/user/page.itely: remove time-scaled-music
485 bug for the Page_turn_engraver
487 * lily/paper-book.cc (set_system_penalty): backwards
488 compatibility (breakbefore) for the old page breaker
490 2006-10-25 Graham Percival <gpermus@gmail.com>
492 * Diocumentation/user/instrument-notation.itely: added more
493 info about stanzas; thanks Geoff!
495 * Documentation/user/ {basic, advanced}: small fixes from
498 * THANKS: add some bug reporters.
500 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
502 * scm/define-context-properties.scm (all-user-translation-properties):
503 noteToFretFunction: Add.
505 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
506 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
508 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
510 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
513 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
514 Remove bashism in delete.
516 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
518 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
520 * scm/translation-functions.scm (determine-frets-mf): flatten let*
522 * scm/define-context-properties.scm
523 (all-user-translation-properties): add maximumFretStretch property.
525 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
527 * lily/source-file.cc (get_counts): use multibyte variable.
529 * scm/translation-functions.scm (determine-frets-mf): new
530 function: compute fret numbers.
532 * scm/output-lib.scm (string-frets->description) new function.
533 (fret-board::calc-stencil): new function
535 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
537 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
539 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
541 * lily/tab-note-heads-engraver.cc: cleanups.
543 * lily/fretboard-engraver.cc: new file
545 * ly/engraver-init.ly: add FretBoards context
547 2006-10-24 Joe Neeman <joeneeman@gmail.com>
549 * lily/grob.cc (pure_relative_y_coordinate)
550 (pure_height): use the new call_pure_function stuff
552 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
555 * lily/side-position-interface.cc (pure_y_aligned_side): add an
558 * lily/simple-closure.cc (ly_eval_simple_closure): make
559 simple-closure evaluatable from scheme
560 (evaluate_with_simple_closure): make simple-closures pure-
563 * lily/slur.cc (pure_outside_slur_callback): new function
565 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
566 fits in with previous changes that made the page forces much
569 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
570 and pure-Y-extent into this new function.
571 (pure-conversions-alist): add outside-slur-callback
573 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
575 * Documentation/user/advanced-notation.itely (Instrument names):
576 Remove obsolete bug workaround for instrument names on piano
579 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
581 * Documentation/user/lilypond-book.itely (Integrating DocBook and
582 music): patch by Bertalan Fodor for docbook.
584 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
585 of $(LILYPOND). Prevents lilypond run for .txt files.
587 * INSTALL.txt: gitness.
589 * .cvsignore: update to force gitness.
591 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
593 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
594 detect suicide in nested tuplets.
596 2006-10-23 Werner Lemberg <wl@gnu.org>
598 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
599 typo in argument to FT_Get_X11_Font_Format.
601 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
603 * stepmake/stepmake/po-vars.make: more gitness.
605 * flower/polynomial.cc (check_sol): no empty if bodies.
607 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
609 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
611 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
613 * Documentation/user/examples.itely (Transcription of mensural
614 music): Added more comments in .ly source. Suggest to remove
615 Forbid_line_break_engraver to allow line breaking at all bars.
617 * Documentation/user/instrument-notation.itely (Ancient
618 articulations): Updated @refbugs regarding episem.
620 * Documentation/user/instrument-notation.itely (Gregorian square
621 neumes ligatures): Added \augmentum dots. Updated @refbugs
622 regarding \augmentum.
624 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
626 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
629 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
632 * ly/gregorian-init.ly: Added \augmentum macro.
634 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
636 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
638 * lily/pango-font.cc (pango_item_string_stencil): use
639 FT_Get_X11_Font_Format()
641 2006-10-22 John Mandereau <john.mandereau@free.fr>
643 * po/fr.po: update translation.
645 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
647 * VERSION (PATCH_LEVEL): bump version
649 * input/regression/horizontal-bracket-break.ly: new file.
651 * scm/define-grobs.scm (all-grob-descriptions): calc
654 * lily/horizontal-bracket.cc (make_bracket): support
655 connect-to-neighbor. Fix #118
657 * VERSION: release 2.9.26-2
659 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
661 * VERSION (PACKAGE_NAME): release 2.9.26
663 * buildscripts/output-distance.py (test_basic_compare): add
665 (FileLink.multi_img_cell): new function, glob multi-page png
668 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
670 * po/lilypond.pot: update.
672 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
674 * Documentation/user/global.itely (File structure): remove
677 * lily/parser.yy (FIXME): remove ADDQUOTE
679 * Documentation/user/global.itely (Extracting fragments of
680 notation): new node, about clip systems.
682 * Documentation/user/lilypond-book.itely (Many quotes of a large
683 score): ref to clip systems.
685 * Documentation/user/instrument-notation.itely (Entering lyrics):
686 add note about lyric ties and required font.
688 * lily/open-type-font.cc (glyph_list): format errors.
690 * Documentation/user/programming-interface.itely (Scheme
691 procedures as properties): more doco on simple-closure and scheme
693 (Input variables and Scheme): use lilypond[verbatim], document
696 * Documentation/user/page.itely (Displaying spacing): use \book
697 explicitly, so arrows show .
698 (Line breaking): add note about Forbid_line_break_engraver
700 * Documentation/user/tweaks.itely (Common tweaks): also set length
701 to prevent tie squeezing.
702 (Default files): use @var{}
704 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
705 (Generating LilyPond files): add FOMUS.
707 2006-10-20 Joe Neeman <joeneeman@gmail.com>
709 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
710 Y-offset for TextScript and Script
712 * lily/text-engraver.cc (make_item):
713 * lily/script-engraver.cc (make_script_from_event):
714 remove call to Side_position_interface::set_axis since all scripts
715 now have this set by default
718 * lily/prob.cc: use variables
720 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
722 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
723 at typography, rather analyse stream event duration.
725 * Documentation/user/page.itely (Page formatting): set a6 paper
726 for system separator example.
728 * lily/arpeggio.cc (Module): idem.
730 * lily/accidental-placement.cc: add script-priority property.
732 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
734 * lily/ttf.cc (print_trailer): if all else fails: use
735 glyphIndexXXXX as glyph name. Fixes #117.
737 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
738 entry if cmap contains glyph.
739 (get_index_to_charcode_map): remove from Pango_font class, use
740 global filename -> font mapping.
741 (get_glyph_index_name): new function.
742 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
745 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
747 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
750 * scm/define-grob-properties.scm (all-user-grob-properties):
751 remove outdated doc. Fixes #116
753 * lily/completion-note-heads-engraver.cc (process_music): always
754 clone input events; otherwise we may overwrite input 'duration
755 property. Fixes #115.
757 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
760 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
763 * VERSION (PATCH_LEVEL): bump version.
765 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
767 * lily/engraver.cc (internal_make_grob): use variables.
769 * flower/string-convert.cc (dec2double): clean-up warnings.
771 * configure.in (CXXFLAGS): add -Werror.
773 * VERSION (PACKAGE_NAME): release 2.9.25
775 2006-10-18 Joe Neeman <joeneeman@gmail.com>
777 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
778 line even if we precede a forced break.
780 * lily/optimal-page-breaking.cc (try_page_spacing): square line
781 forces too. Make page-spacing weight default to 10 because the
782 changes to vertical springs decreased the page force/line force
783 proportions. Also, take the average of line force and page force
784 instead of just the sum.
786 * lily/constrained-breaking.cc (initialize): make the stiffness
787 of the vertical springs depend on the height of the system. This
788 prevents pages with only a few large systems from getting huge
791 * Documentation/user/page.itely (Page formatting): document the
792 change in default page-spacing-weight
794 * lily/include/constrained-breaking.hh: initialise bottom_padding_
796 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
798 * input/typography-demo.ly (melody): remove superfluous slur.
800 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
801 add piano-pedal-script-interface
803 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
805 * scripts/lilypond-book.py: DocBook support.
807 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
809 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
811 (stop_translation_timestep): set bound to currentMusicalColumn if
812 not set yet. Fixes #102
814 * lily/piano-pedal-bracket.cc: formatting.
816 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
818 * lily/piano-pedal-align-engraver.cc: new class
819 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
822 2006-10-18 Heikki Junes <hjunes@gmail.com>
824 * po/fi.po: Update Finnish translation (before the next release).
826 2006-10-17 Joe Neeman <joeneeman@gmail.com>
828 * lily/system.cc (get_paper_system): reinstate the backwards-
829 compatible page breaking for the old page breaker.
831 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
833 * lily/recording-group-engraver.cc: removed
835 * lily/context.cc, lily/translator-group.cc: Don't touch
836 Context::implementation_ if it's null
838 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
840 * scm/paper.scm: only use left-margin if defined.
842 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
844 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
846 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
847 strokeFingerOrientations
849 * lily/script-column.cc (row_before_line_breaking): also handle
850 accidentals and arpeggios in horizontal script stacking.
852 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
855 * input/regression/script-stack-horizontal.ly: trim.
857 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
859 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
862 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
863 'text if string argument.
865 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
867 * scm/define-context-properties.scm
868 (all-user-translation-properties): change to strokeFingerOrientations
870 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
872 * lily/parser.yy: remove debug output
874 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
876 * ly/paper-defaults.ly: set left/right margin.
878 * scm/paper.scm (set-paper-dimensions): use left-margin and
879 right-margin for computing linewidth.
881 * Documentation/topdocs/NEWS.tely (Top): idem.
883 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
886 * scm/define-markup-commands.scm (tied-lyric): increase negative
887 space: space syllables tighter.
889 * VERSION (PATCH_LEVEL): bump version.
891 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
894 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
896 * COPYING: further clarification
898 * VERSION: release 2.9.24
900 * input/regression/script-stack-horizontal.ly: add version.
902 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
904 * input/regression/lyric-tie.ly (texidoc): use different words.
906 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
908 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
910 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
911 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
913 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
915 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
917 * Doxyfile: remove file.
919 * scm/define-grob-interfaces.scm (string-finger-interface): add
920 string-finger-interface
922 * lily/general-scheme.cc (LY_DEFINE): move
923 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
925 * Documentation/topdocs/NEWS.tely (Top): add note for
926 string-finger feature.
928 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
931 * scm/output-lib.scm (string-finger::calc-text): read 'digit
934 * input/regression/script-stack-horizontal.ly: new file.
936 * ly/engraver-init.ly: add Script_row_engraver.
938 * lily/script-column.cc (order_grobs): refactor: separate axis
940 (row_before_line_breaking): new function.
942 * lily/script-row-engraver.cc (Script_row_engraver): new file.
944 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
946 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
948 * Documentation/user/instrument-notation.itely: Cleanup: Remove
949 annoying skip notes from mensural ligature example. Update
950 @refbugs for ligatures and mensural ligatures.
952 * lily/coherent-ligature-engraver.cc,
953 lily/include/coherent-ligature-engraver.hh,
954 lily/mensural-ligature-engraver.cc,
955 lily/vaticana-ligature-engraver.cc: Revise code for item
956 reparentizing. There should now be less programming_error
959 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
961 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
962 Maintenance bugfix: Don't create empty Stencil (), but empty box
963 instead. This fix should eliminate some programming_error
966 * ly/engraver-init.ly (MensuralStaff): Set default accidental
969 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
970 \layout block _before_ score.
972 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
974 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
976 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
978 2006-10-13 Erlend Aasland <erlenda@gmail.com>
980 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
982 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
984 * VERSION (PATCH_LEVEL): bump version.
986 * COPYING: clarify exception note.
988 * lily/main.cc: remove remark about "COPYING".
990 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
991 system-count starts at 0 for each clip-region. Change name to
992 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
993 layout block, per score.
995 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
997 * lily/input-smob.cc: add equal_p for Input
999 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
1002 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
1004 * lily/prob.cc: Add equal_p predicate for Prob
1006 * lily/translator.cc: small cleanup
1008 * scm/document-music.cc: use data from translator listener
1009 registration to generate documentation for event classes
1011 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
1013 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
1015 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
1017 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
1019 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
1021 * Documentation/topdocs/INSTALL.texi: Thinko.
1023 * .cvsignore: Update.
1025 * lexer-gcc-3.1.sh: Remove.
1027 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
1028 Update anonymous cvs access. Remove comment about gcc 3.0.4.
1030 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1032 * VERSION: release 2.9.23
1034 * lily/paper-column-engraver.cc (stop_translation_timestep): also
1035 typecheck barnumber.
1037 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
1039 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
1041 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
1043 * input/regression/clip-systems.ly (Notes): new file.
1045 * scm/lily.scm (define-scheme-options): add clip-systems option.
1047 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
1049 (dump-stencil-as-EPS): move bbox calculation from previous
1051 (output-framework): use -dclip-systems
1053 * scm/lily-library.scm (filtered-map): new function
1055 * scm/framework-ps.scm (clip-system-EPS): new function.
1056 (clip-system-EPSes): new function.
1058 * lily/paper-column.cc: add rhythmic-location to interface
1060 * scm/define-grob-properties.scm (all-user-grob-properties): add
1061 rhythmic-location property.
1063 * scm/clip-region.scm: new file: rhythmic-location data type and
1064 system-clipped-x-extent function.
1066 * ly/init.ly: use (scm clip-region)
1068 * lily/paper-column-engraver.cc (stop_translation_timestep): set
1069 rhythmic-location for paper column grobs.
1071 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
1073 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
1075 * ly/engraver-init.ly: Remove obsolete comment on
1076 Bar_number_engraver.
1078 * Documentation/user/instrument-notation.itely: Tune Ancient
1079 Articulations figure, such that the episem actually shows.
1081 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1082 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1084 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1087 2006-10-12 Graham Percival <gpermus@gmail.com>
1089 * Documentation/user/ {some}: minor edits that were lost somehow.
1091 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1093 * VERSION (PACKAGE_NAME): bump version.
1095 * input/regression/lyric-tie.ly (texidoc): new file.
1097 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1099 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1101 * scm/define-markup-commands.scm (tied-lyric): new function: split
1102 string along ~ and reattach with U+203F (tie character) and
1105 * scm/output-lib.scm (lyric-text::calc-text): new function.
1107 * lily/lyric-engraver.cc (process_music): don't set 'text.
1109 * scm/output-lib.scm (string-finger::calc-text): new function
1110 (lyric-text::print): new function.
1112 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1113 generic for fingering & string number. Use for string-finger.
1115 * scm/define-music-types.scm (music-descriptions): add
1118 * lily/fingering-engraver.cc (listen_string_finger): new function
1120 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1122 * scm/define-context-properties.scm
1123 (all-user-translation-properties): add stringFingerOrientations
1125 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1127 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1128 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1130 * lily/dots.cc: Added style property for dots.
1132 * mf/parmesan-heads.mf: Fix typo in comment.
1134 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1135 adding longa head to feta font and removing obsolete default
1136 mapping scheme code.
1138 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1140 * scm/output-lib.scm (fingering::calc-text): use origin
1141 event-property, not music-property.
1143 * lily/lilypond.rc.in: spell my name correctly.
1145 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1147 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1148 already have a non-empty extent. Fixes estimation for Hara-kiri
1151 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1153 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1156 * lily/ligature-engraver.cc: Remove unused #include.
1158 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1159 Bugfix: remove method check_for_prefix_loss(Item *) from global
1160 namespace to avoid namespace pollution.
1162 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1164 * VERSION: release 2.9.22
1166 * ly/generate-documentation.ly: update option name.
1168 * lily/dynamic-text-spanner.cc (print): revert fix.
1170 * scm/define-grob-interfaces.scm
1171 (trill-pitch-accidental-interface):
1172 add trill-pitch-accidental-interface
1174 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1175 dereference if it's really a duration.
1177 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1178 useBassFigureExtenders is not set.
1179 (listen_bass_figure): record as new event if
1180 useBassFigureExtenders not set. Fixes #103.
1182 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1183 instead: move circle. Fixes #107.
1185 * scm/define-grobs.scm (all-grob-descriptions): set
1186 allow-loose-spacing for PaperColumn and
1187 NonMusicalPaperColumn. Kludge for #110.
1189 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1191 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1192 allow-loose-spacing property.
1194 * scm/define-markup-commands.scm (postscript): gsave & grestore
1195 around embedded PS. Do setlinewidth too. Fixes #109.
1197 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1199 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1200 code. This patch fixes ligature brackets that were not at all
1203 2006-10-08 Graham Percival <gpermus@gmail.com>
1205 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1207 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1209 * scm/define-context-properties.scm: clarified docs (bug 91).
1211 * Documentation/user/basic-notation.itely: document volta brackets
1212 not aligning (bug 63).
1214 * Documentation/user/ global.itely invoking.itely: ignore or
1215 add warnings about texstr.
1217 2006-10-08 John Mandereau <john.mandereau@free.fr>
1219 * po/fr.po: update translation.
1221 * po/: update msgids.
1223 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1225 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1227 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1229 * Documentation/user/page.itely (Two-pass vertical spacing): add
1230 documentation for two-pass spacing technique.
1232 2006-10-06 Graham Percival <gpermus@gmail.com>
1234 * Documentation/user/convert-ly.txt: new file; new
1235 storage place for this file (moved from bugs/ CVS).
1237 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1239 * lily/note-head.cc: Fixed programming_error message.
1241 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1243 * scm/define-grobs.scm (pure-conversion): move pure-callback
1246 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1247 marcato, stopped, thumb.
1249 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1251 * lily/completion-note-heads-engraver.cc (process_music): don't
1252 skimp on memory usage.
1254 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1257 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1258 parenthesis item. This fixes premature Y-extent triggering. Fixes
1261 * VERSION (PATCH_LEVEL): bump version.
1263 2006-10-04 Graham Percival <gpermus@gmail.com>
1265 * Documentation/user/advanced-notation.itely: added
1266 info about instrument names for piano or other contexts,
1269 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1271 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1272 solfa_base_notewidth as unit for non-DO-notes too.
1274 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1276 * VERSION: release 2.9.21
1278 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1281 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1283 * python/lilylib.py (progress): Minor fix.
1285 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1287 * lily/note-name-engraver.cc: doc engraver.
1289 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1291 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1293 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1296 * lily/stem-engraver.cc (make_stem): don't set duration-log
1298 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1299 write snippet-names binary.
1301 * python/lilylib.py (system): use os.system for mingw32
1303 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1306 * scm/backend-library.scm: update email address.
1308 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1311 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1314 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1315 handle dot creation separately.
1317 * lily/tab-note-heads-engraver.cc (process_music): idem.
1319 * lily/drum-note-engraver.cc (process_music): idem.
1321 * lily/note-heads-engraver.cc (process_music): idem.
1323 * lily/rest-engraver.cc: don't set duration-log.
1325 * scm/output-lib.scm (string-number::calc-text): new function.
1326 (note-head::calc-duration-log): new function.
1328 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1330 * scm/output-lib.scm (fingering::calc-text): new function.
1332 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1334 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1335 and include-eps-font -> include-eps-fonts
1337 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1339 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1341 * lily/timing-translator.cc: list properties.
1342 (start_translation_timestep): update internalBarNumber too.
1344 * scm/define-context-properties.scm
1345 (all-user-translation-properties): add internalBarNumber.
1347 * input/regression/spacing-no-note.ly: new file.
1349 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1351 * lily/book.cc: #include cleanup.
1353 * lily/include/lily-guile-macros.hh: add assert to
1354 scm_or_str2symbol(SCM).
1356 * VERSION (PATCH_LEVEL): bump version.
1358 * lily/spacing-spanner.cc (musical_column_spacing): handle
1359 musical->nonmusical spacing case, where there is no spacing
1360 wish. Fixes issue #61.
1362 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1363 (pango_item_string_stencil): use logical rect horizontally (to
1364 preserve spaces), ink_rect vertically (for time signatures).
1366 * lily/font-metric.cc (word_stencil): new interface function
1368 * input/regression/utf-8-mixed-text.ly: new file.
1370 * lily/percent-repeat-engraver.cc (listen_percent): remove
1373 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1374 non-dynamic scripts. Fixes #30.
1376 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1378 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1380 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1381 SCM_UNDEFINED for non-existent data.
1383 * lily/side-position-interface.cc (general_side_position): allow
1384 optional current_offset argument for chaining, so combinations of side-position
1385 and outside slur callback don't add up. Fixes issue #92.
1387 * lily/pango-font.cc (pango_item_string_stencil): use
1388 logical_rect. This prevents spaces after words from disappearing,
1391 * VERSION: release 2.9.20
1393 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1395 * scm/define-grob-properties.scm (all-user-grob-properties):
1396 mention stencil as user settable.
1398 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1400 * Documentation/user/page.itely (Page formatting):
1401 document auto-first-page-number
1403 * lily/page-breaking.cc (find_chunks_and_breaks):
1404 * lily/paper-score.cc (calc_breaking): Follow changes to the
1405 Constrained_breaking interface
1407 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1408 here backwards, as an optimisation
1409 (initialize): new function; move most of the code in resize () here
1410 (combine_demerits): cache ragged_right_
1411 (Constrained_breaking): constructor now takes the Paper_score
1413 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1415 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1416 avoid parser lookahead for 0-ary functions.
1418 * lily/translator.cc: Extract event classes from
1419 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1421 2006-10-02 Heikki Junes <hjunes@gmail.com>
1423 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1426 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1428 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1429 function. Call the page breaking function selected in the
1430 `page-breaking' \paper variable, then the post processing function
1431 chosen using the `page-post-process' \paper variable.
1432 (line-height): new function. Return the height of a system.
1433 (line-minimum-position-on-page): new function. Return the position
1434 of a system on page (using the previous line position), only
1435 considering between system padding.
1436 (stretchable-line?): new function. Says whether a line can be
1437 stretched (ie. is not a title nor a single staff system).
1438 (page-maximum-space-left): new function. Computes space left on a
1439 page, when all systems are separated by their padding.
1441 * lily/page-breaking.cc (breaking::make_pages): Move page post
1442 processing function call to page breaking wrapper (common to all
1445 * lily/paper-book.cc (book::pages): call the page breaking
1446 wrapper, instead of the page breaker directly
1448 * ly/paper-defaults.ly: Add \paper variables for page breaking
1449 wrapper and page post processing function. Make
1450 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1451 `system-maximum-stretch-procedure' variable for holding a function
1452 computing the maximum stretch a system allows.
1454 * scm/layout-page-dump.scm (write-page-breaks): computes the
1455 stretch to apply to systems on a page to minimize left
1456 space. Dump this stretch length.
1458 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1459 the system-stretch property of the tweak data to stretch the
1461 (includePageLayoutFile): Void function which includes the
1462 generated page-layout file if it exists and if the page layout
1463 dumping is not asked.
1464 (scoreTweak): if the score tweak named by the argument exists,
1467 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1469 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1470 handle correctly the case where there are multiple \noPageBreaks
1473 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1475 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1477 * abc2ly.py fix so that entering " -- " will translate to a -- in
1478 the lilypond instead of a " - - "
1480 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1482 * lily/align-interface.cc: fix typo
1484 * lily/dynamic-text-spanner.cc (print): Add a special case for
1485 trill spanner right sides.
1487 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1489 * lily/align-interface.cc (get_extents_aligned_translates): add
1490 support for padding variable.
1492 * lily/break-align-interface.cc (self_align_callback): oops: use
1493 loop variable in guard.
1495 * input/regression/repeat-percent-grace.ly: new file.
1497 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1498 remember first currentCommandColumn of a grace run. Fixes issue 70.
1500 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1501 move class definition to CC file.
1503 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1505 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1506 measure-long repeats.
1508 * flower/include/international.hh: include stdarg.h
1510 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1512 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1513 put_systems_on_pages to return an empty result, we need to assign
1514 demerits properly in that case.
1515 (put_systems_on_pages): Make the number of pages depend on the
1516 evenness of page_number. Add auto-first-page-number.
1517 (calc_subproblem): ensure that the page-number is even for the
1518 left-hand page. Warn if the first page-turn doesn't fit onto the
1519 first (right-hand) page.
1521 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1522 (min_page_count): make this publicly accessible
1523 (min_page_count): fix a bug when there are forced page breaks that
1524 was introduced when I made this loop run backwards
1525 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1526 replace space_systems_on_min_pages with these two. The logic in
1527 space_systems_on_min_pages was getting too convoluted and is better
1528 contained in page-turn-page-breaking.
1530 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1532 (breakable_column): typo
1534 * lily/source-file.cc (get_line): fix off-by-one error
1535 and clean up some of the logic
1537 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1539 * lily/page-breaking.cc (make_pages): honour the first-page-number
1542 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1544 * VERSION (PACKAGE_NAME): bump version.
1546 2006-09-26 Pal Benko <benko.pal@gmail.com>
1548 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1549 (the latter is the same as petrucci-f which is kept for compatibility)
1551 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1553 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1555 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1557 * lily/global-context.cc (run_iterator_on_me): break out of loop
1558 if moment doesn't increase.
1560 * scm/define-grob-properties.scm (all-user-grob-properties): add
1563 * lily/accidental.cc (after_line_breaking): read forced property.
1565 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1568 * input/regression/accidental-forced-tie.ly: new file.
1570 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1572 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1574 * lily/figured-bass-engraver.cc: only listen to rest events if
1575 ignoreFiguredBassRest is not set.
1577 * scm/define-context-properties.scm
1578 (all-user-translation-properties): add ignoreFiguredBassRest property
1580 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1582 * lily/paper-book.cc (get_system_specs):
1583 (set_system_penalty): fix breakbefore.
1584 We used to set a penalty on the system after the break, now we
1585 set a permission on the system before the break
1587 * lily/grob-property.cc: add scm debugging hooks into
1588 property modification
1590 * lily/context-property.cc:
1592 rename make_foo_from_properties to internal_make_foo and
1593 move it from context-property.cc to a member function of
1596 * lily/include/lily-guile-macros.hh:
1597 overload ly_symbol2scm macro so that there is no more need
1600 * lily/volta-repeat-iterator.cc:
1601 * lily/tweak-engraver.cc:
1602 * lily/tuplet-bracket.cc:
1603 * lily/span-bar-engraver.cc:
1604 * lily/script-engraver.cc:
1605 * lily/prob-scheme.cc:
1606 * lily/pointer-group-interface.cc:
1608 * lily/grob-scheme.cc:
1609 * lily/grob-property.cc:
1611 * lily/context-property.cc:
1612 * lily/break-substitution.cc:
1613 * lily/break-align-engraver.cc:
1614 * lily/axis-group-interface.cc:
1615 * lily/align-interface.cc:
1616 remove calls to internal_FOO
1618 * lily/system-start-delimiter-engraver.cc:
1619 * lily/parenthesis-engraver.cc:
1620 * lily/accidental-engraver.cc:
1621 remove calls to make_foo_from_properties
1623 2006-09-23 Graham Percival <gpermus@gmail.com>
1625 * Documentation/user/programming-iterfaces.itely: fix
1626 def-music-function -> define-music... leftover.
1628 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1630 * lily/page-spacing.cc (min_page_count): by running the loop
1631 backwards, we can calculate ragged_last properly.
1633 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1635 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1636 printfirst-page-number -> print-first-page-number
1638 * python/convertrules.py: corresponding rule.
1640 * Documentation/user/page.itely (Page formatting): Document the
1641 default values of all page layout parameters.
1643 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1645 * lily/lexer.ll: remove limitation on music function arity. New
1646 mode extratoken, which inserts extra EXPECT_* tokens after
1647 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1649 * lily/parser.yy: Change grammar for music function accordingly.
1651 * lily/include/lily-parser.hh: New method get_state, new member
1652 hidden_state. Works around a problem when parser fetches
1653 MUSIC_FUNCTION token but not the following EXPECT_* token.
1655 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1658 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1659 references to Music; use ASSIGN_EVENT_ONCE everywhere
1661 * lily/grob-info.cc: junk *music_cause
1663 * lily/music.cc: copy eventified articulations to stream event
1665 * lily/part-combine-iterator.cc: Cleanup using enums
1667 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1670 * lily/include/engraver.hh: Junk music.hh include
1672 * lily/stream-event.cc: Changed constructors
1674 2006-09-21 Graham Percival <gpermus@gmail.com>
1676 * Documentation/user/tweaks.itely (Fitting music onto fewer
1677 pages): change settings to avoid warning messages.
1679 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1681 * Documentation/user/tweaks.itely (Fitting music onto fewer
1682 pages): Add between-system-space setting.
1684 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1686 * lily/accidental-placement.cc (calc_positioning_done): don't
1687 trigger Y-extent calculation too early. Use pure_height instead.
1689 * lily/scale.cc (LY_DEFINE): new file.
1691 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1693 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1694 that happen at the start of a score: having a zero-length
1695 chunk was messing up min_system_count calculations.
1697 * lily/source-file.cc (get_line): lower_bound, not
1698 binary_search. Fixes problem where point-and-click would
1699 always point to the first line.
1701 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1703 * lily/accidental-placement.cc (calc_positioning_done): also put
1704 stems into accidental support.
1706 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1709 * scm/script.scm (default-script-alist): avoid-slur and
1710 slur-padding for portato script.
1712 * lily/stem-tremolo.cc (translated_stencil): new function.
1713 (height): use new function. Fixes tremolos on whole notes.
1715 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1718 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1720 * scripts/abc2ly.py (try_parse_comment): idem.
1722 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1723 bar_string iso. string.find()
1727 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1730 2006-09-18 Graham Percival <gpermus@gmail.com>
1732 * Documentation/user/basic-notation.itely: add bug
1733 warning about ties and octavation/clef.
1735 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1737 * VERSION (PACKAGE_NAME): release 2.9.18
1739 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1741 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1742 figure out midi file names right here.
1744 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1746 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1748 * scm/backend-library.scm: option naming: gs-font-load*s*
1750 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1753 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1755 * scm/define-music-types.scm (music-descriptions): remove
1756 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1757 Music::to_event doesn't complain.
1759 * lily/accidental-placement.cc (ape_compare):
1760 * lily/semi-tie.cc (compare):
1761 * lily/note-column.cc (shift_compare): replace by XXX_less
1763 * lily/tie-formatting-problem.cc (set_chord_outline):
1764 * lily/tie-column.cc (calc_positioning_done):
1765 * lily/system.cc (post_processing)
1767 * lily/stem.cc (note_head_positions)
1768 (calc_positioning_done):
1769 * lily/spanner.cc (do_break_processing)
1770 (find_broken_piece):
1771 * lily/span-bar.cc (print):
1772 * lily/semi-tie-column.cc (calc_positioning_done):
1773 * lily/rest-collision.cc (calc_positioning_done):
1774 * lily/program-option.cc (get_help_string):
1775 * lily/note-collision.cc (get_clash_groups):
1776 * lily/new-fingering-engraver.cc (position_scripts):
1777 * lily/keyword.cc (Keyword_table):
1778 * lily/hara-kiri-group-spanner.cc (request_suicide):
1779 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1780 * lily/accidental-placement.cc (calc_positioning_done):
1782 * lily/beam.cc (get_beam_segments):
1783 * lily/grob-array.cc (remove_duplicates):
1786 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1787 ragged-last-bottom = ##f (test the new page breaker)
1789 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1791 * scm/define-context-properties.scm
1792 (all-internal-translation-properties): remove properties that
1793 were used to communicate page-turn stuff to the paper-column
1796 * lily/lily-guile.cc (robust_scm2string): new function
1798 * lily/paper-column-engraver.cc: Clean up page turn stuff
1800 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1801 instead of cluttering up paper-column-engraver.cc
1803 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1805 * scm/layout-page-dump.scm (scm): export utility function names,
1806 to allow user writing cutsom dumping functions.
1808 * scm/layout-page-layout.scm: export utility function names to
1809 enable custom page breaking function writing. Tabify.
1810 (line-next-space): use ?-suffix only for predicates
1811 (page-maximum-space-to-fill): new function. Return the space
1812 between first and bottom system of a page, to give to
1814 (space-systems): use a space-to-fill argument (for instance as
1815 computed by page-maximum-space-to-fill) instead of computing
1816 internaly this space with the page height. That way, the caller
1817 can adjust the space to use.
1818 (make-page-from-systems, walk-paths): compute space to fill before
1819 calling space-systems.
1821 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1823 * scm/script.scm (default-script-alist): set paddings for every
1824 type here, increase for portato mark.
1826 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1829 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1831 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1832 use spanner::set-spacing-rods
1834 * lily/note-column.cc: reformat.
1836 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1837 step positioning for note/rest combinations.
1839 * input/regression/rest-note-collision.ly: new file.
1841 * scm/define-grobs.scm (all-grob-descriptions): add
1844 * flower/include/std-vector.hh: switch off again.
1846 * VERSION (PATCH_LEVEL): bump to 2.9.18
1848 * flower/include/std-string.hh: idem.
1850 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1852 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1854 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1857 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1859 * Documentation/user/page.itely: update page breaking documentation
1861 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1863 * lily/note-collision.cc (calc_positioning_done): only access
1864 first head if available.
1866 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1868 * scm/framework-ps.scm (output-preview-framework): use new name.
1870 * lily/program-option.cc (internal_set_option): use new names.
1872 * Documentation/user/SConscript (lilypond_book_flags): update -d
1875 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1876 output into other programs): new variable names.
1878 * scm/lily.scm (define-scheme-options): uniformize var names.
1880 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1881 tuplets_ is non-empty before popping.
1883 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1885 * lily/spanner.cc (find_broken_piece):
1886 * lily/spacing-spanner.cc (get_columns):
1887 * lily/source-file.cc (get_line):
1888 * lily/simple-spacer.cc (get_column_description):
1889 * lily/keyword.cc (lookup):
1890 use the new binary search.
1892 * flower/include/std-vector.hh: replace binary_search with
1893 a more STL-like version
1895 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1897 * lily/tie-performer.cc: remove unused last_event_ property.
1898 (class Tie_performer): add now_tied_heads_ property for
1899 partially-tied heads.
1900 (acknowledge_audio_element): when adding an Audio_note, put the
1901 note in now_tied_heads_ if the audio note is partially tied.
1902 (stop_translation_timestep): always include entries in
1903 now_tied_heads_ in heads_to_tie_.
1905 * lily/drum-note-performer.cc (process_music): look for tie-events
1906 in the articulations; pass to Audio_note constructor.
1908 * lily/note-performer.cc (process_music): look for tie-events in
1909 the articulations; pass to Audio_note constructor.
1911 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1914 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1915 include initializer in constructor.
1917 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1919 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1920 unless they are breakable. This fixes discrepancies between the forces
1921 calculated here and the forces calculated in get_line_configuration.
1923 * lily/grob.cc (pure_relative_y_coordinate): fix some
1924 mis-estimation that was happening with piano staves.
1926 * lily/constrained-breaking.cc (resize): don't choke if we get a
1927 measure that won't fit on a line.
1928 (combine_demerits): don't consider uniformity when ragged
1930 * lily/page-spacing.cc (solve): why the f* were there two of these?
1931 (calc_subproblem): properly handle the case where a system is taller
1934 * lily/system.cc (get_paper_system): ensure that all the permissions
1935 and penalties are passed to the paper systems.
1937 * lily/page-breaking.cc (create_system_list): support system-count.
1939 * scm/define-grobs.scm (pure-print-callbacks): add
1940 ly:script-interface::print
1942 * lily/page-spacing.cc (min_page_count): fix calculation of min
1943 pages if we are ragged and there are non-zero springs.
1945 * scm/layout-page-layout.scm: if the pure-height estimates are under
1946 the real height, allow space-systems to ignore padding if it is
1947 needed in order to fit the systems on one page
1949 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1951 (solve): fix performance problem. Make sure we always get at least
1954 * lily/page-breaking.cc (make_pages): include write-page-breaks
1957 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1959 * scm/define-grobs.scm: add the new slur-callback
1960 fix pure-relevant to not exclude grobs whose extent is already
1963 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1966 * lily/slur.cc (pure_height): new callback to estimate the height
1969 2006-09-02 Graham Percival <gpermus@gmail.com>
1971 * Documentation/user/invoking.itely: small update on
1972 MacOS X notes; thanks Trevor!
1974 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1976 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1978 * lily/lexer.ll: accept EOF in all states.
1980 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1982 * lily/source-file.cc (Source_file): always 0-terminate character
1983 array, to prevent Flex from barfing.
1985 * lily/global-context.cc (get_output): robustness: don't crash if
1986 no Score context found.
1988 * lily/include/book.hh (class Book): idem.
1990 * lily/include/context-def.hh (struct Context_def): idem.
1992 * lily/include/score.hh (class Score): don't derive from Input.
1994 * lily/book.cc (Book): add a copy ctor.
1996 * buildscripts/output-distance.py (FileLink.calc_distance): count
1997 orphans in distance too.
1999 * python/midi.c (midi_parse_track): robustness: don't read past
2002 * ly/performer-init.ly: add Control_track_performer, move
2003 Tempo_performer and Time_signature_performer to Score.
2005 * lily/score-performer.cc (acknowledge_audio_elements): override
2006 from base class: add to audio-columns
2008 * lily/control-track-performer.cc (add_text): new file: generate
2011 * lily/performance.cc: move output_header_track to
2012 Control_track_performer ()
2014 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
2016 * lily/include/midi-item.hh (class Midi_channel_item): insert
2017 class into hierarchy, for items that can have a channel setting. Dehungarify.
2019 * lily/include/performer.hh (class Performer): remove
2020 play_element(); move functionality into announce/acknowledge.
2022 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
2024 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
2025 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
2027 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
2029 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
2032 * lily/all-font-metrics.cc: remove TFM support.
2034 * lily/include/tfm.hh: remove TFM support, TFM reader.
2036 * lily/include/binary-source-file.hh: remove Binary_source_file.
2038 2006-08-27 Graham Percival <gpermus@gmail.com>
2040 * Documentation/topdocs/NEWS.itely: add @c marker for
2041 stuff I've processed.
2043 * Documentation/user/ various: info from NEWS.
2045 2006-08-27 Joe Neeman <joeneeman@gmail.com>
2047 * lily/paper-column-engraver.cc (finalize): Oops, this change
2048 should have gone in on 2006-08-23
2050 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
2052 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
2053 quotes to quote arguments. Fixes Windows problem.
2055 * python/lilylib.py (progress): idem
2057 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2059 * scripts/musicxml2ly.py: fix for importing
2060 minor key signatures from MusicXML. (Phillip Kirlin)
2062 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
2064 * python/musicxml.py:
2065 (Attributes.get_key_signature): now correctly retrieves mode from
2068 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2070 * lily/parser.yy (output_def_body): take ownership of identifier
2073 * Documentation/user/advanced-notation.itely (Metronome marks):
2074 update use of \tempo in \midi.
2076 * VERSION: release 2.9.16
2078 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
2080 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2083 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2085 * input/regression/tie-chord-partial.ly: clarify example.
2087 * scm/define-music-properties.scm (all-music-properties): remove
2090 * ly/music-functions-init.ly: remove \untied.
2092 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2093 stream events and music events.
2094 (stop_translation_timestep): search acknowledged heads for
2097 * input/regression/tie-chord-partial.ly: new file.
2099 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2100 for \char markup command.
2102 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2104 * scm/define-music-types.scm (music-descriptions): consistency:
2105 Use solo-{one,two}-event iso. solo-[12]-event.
2107 * lily/part-combine-engraver.cc (process_music):
2108 Use solo-{one,two}-event iso. solo-[12]-event.
2110 * ly/declarations-init.ly (partCombineListener): add Timing as
2113 * flower/std-string.cc (string_copy): use copy ()
2115 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2117 2006-08-24 Graham Percival <gpermus@gmail.com>
2119 * Documentation/user/changing-defaults.itely, global.itely,
2120 lilypond-book.itely, page.itely: minor changes from mailist.
2122 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2124 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2127 * scm/define-context-properties.scm
2128 (translator-property-description): robustness: detect type errors
2129 in property definitions.
2131 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2132 after getting it from SCM.
2134 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2137 * lily/include/performer.hh (class Performer): strip get_tempo()
2140 * lily/midi-def.cc: strip file.
2142 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2144 * lily/include/context-def.hh (struct Context_def): use
2145 VIRTUAL_COPY_CONSTRUCTOR().
2147 * lily/source-file.cc: smobification.
2149 * lily/include/source-file.hh (class Source_file): smobify
2150 Source_file. Trim redundant members.
2152 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2153 clones after creation. This plugs a huge memory leak.
2155 * python/convertrules.py (FatalConversionError.sub_tempo):
2156 complete rule for \midi{ \tempo }
2158 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2160 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2162 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2164 * input/regression/optimal-page-breaking-hstretch.ly: test for
2165 ragged-last-bottom also
2167 * lily/paper-column-engraver.cc (finalize): make the end of a score
2168 breakable by default. This is to balance out a change in behaviour
2169 of the page-turn-breaker which no longer makes the end of a score
2172 * lily/paper-book.cc (pages): set the systems_ once the pages are
2175 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2176 Page_breaking interface.
2178 * lily/page-breaking.cc (class Page_breaking): make the interface
2179 more consistent and provide abstractions for dealing with
2182 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2183 algorithm. Use the new interface to Page_breaking.
2185 * lily/page-spacing.cc: better support for ragged-bottom and
2188 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2190 * python/convertrules.py (conv): warning on \tempo{}
2192 * ly/performer-init.ly: set tempoWholesPerMinute.
2194 * ly/midi-init.ly: remove \midi
2196 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2199 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2200 tempoUnitDuration for determining what to print.
2202 * lily/lyric-extender.cc: typo.
2204 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2206 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2209 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2211 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2212 eps-pad-boxes is set.
2214 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2216 * THANKS: update sponsors.
2218 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2220 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2222 * input/regression/tie-chord-untied.ly: new file.
2224 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2226 * scm/define-music-properties.scm (all-music-properties): add
2229 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2231 (headertext_nopics): sanitize no-examples text.
2233 * scm/page.scm (make-page-stencil): don't rely on extents of
2234 page-stencil. This fixes spurious space around .EPS files produced
2235 with the EPS backend.
2237 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2239 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2241 * lily/hara-kiri-engraver.cc (process_music): remember
2242 keepAliveInterfaces after processing \set
2244 * lily/lyric-extender.cc (print): support left/right-padding for
2247 * scm/documentation-generate.scm (string-append): revert lilypond/
2250 2006-08-20 Graham Percival <gpermus@gmail.com>
2252 * Documentation/user/lilypond.tely: clarification to
2253 license presentation (not to actual license).
2255 * Documentation/user/basic-notation.itely,
2256 instrument-notation.itely: minor changes.
2258 * input/ {regression, test}/+.ly: clarification to
2259 text (you can click on examples). Thanks, Mats!
2261 * input/manual/bar-lines.ly: adds ||: repeats.
2263 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2265 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2267 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2269 * Documentation/user/lilypond.tely: strip lilypond/ from info
2270 links, rename to category LilyPond
2272 * lily/pango-font.cc (description_string): new function.
2274 * VERSION: release 2.9.15
2276 * lily/spacing-engraver.cc (stop_translation_timestep): use
2277 Dscho's fix for spacing spanner.
2279 * scm/define-music-types.scm (music-descriptions): use
2280 apply-output-event for ApplyOutputEvent
2282 * lily/output-property-engraver.cc (listen_apply_output): rename
2283 from listen_layout_instruction.
2285 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2288 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2290 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2291 commandline args with contains, split by \n.
2293 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2294 write snippet-names file, call with -dread-file-list. Fixes
2295 command limitations on 64-bit systems.
2297 * input/regression/stencil-color-rotation.ly: new file.
2299 * lily/include/translator.hh (struct Acknowledge_information):
2300 revert: don't use Protected_scm in global objects, as GUILE can't
2301 handle gc_unprotect from automated destructors on MacOS X.
2303 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2304 color, not the original stencil. Fixes combinations of
2305 color/transparency/rotation.
2307 * scripts/lilypond-book.py (main): add --formats=eps for
2310 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2311 crash if spacing_ is nonexistent.
2313 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2315 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2316 \catcode`\@=12 in the LaTeX output.
2318 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2320 * scm/define-music-types.scm (music-descriptions):
2321 use sustain-event iso. sustain-pedal-event.
2323 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2325 * scripts/convert-ly.py: honour the -n command-line switch
2327 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2329 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2330 break specification.
2332 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2334 * Documentation/user: convert-ly the user manual
2336 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2338 * stepmake/aclocal.m4: version check patch (thanks MWD)
2340 * ly/music-functions-init.ly: robustness. Don't crash if
2341 currentBarNumber is not a number.
2343 * VERSION (PATCH_LEVEL): bump.
2345 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2347 * stepmake/aclocal.m4: better version check; handle fooX.Y
2350 * ly/performer-init.ly: instrument name fixup.
2352 * input/manual/chord-names-jazz.ly (banterProperties):
2353 instrumentName update
2355 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2357 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2359 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2360 function. Use hash tables to check membership.
2362 * lily/general-scheme.cc (LY_DEFINE): new function.
2364 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2366 * lily/include/translator.hh (struct Acknowledge_information): add
2369 * ly/music-functions-init.ly: change name to BreathingEvent
2371 * input/regression/*.ly: apply it.
2373 * python/convertrules.py (conv): better instrumentName conversion
2376 * scm/define-music-types.scm (music-descriptions): add
2377 line-break-event to LineBreakEvent music
2379 * lily/music.cc (to_event): don't crash if music type not set.
2381 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2384 * lily/spacing-engraver.cc (stop_translation_timestep): set
2385 spacing for proportional notation too.
2387 * scm/translation-functions.scm (format-bass-figure): inspect
2390 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2392 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2394 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2396 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2398 * scm/layout-page-layout.scm (make-page-from-systems): new function
2399 (optimal-page-breaks): use the new page-breaking calling convention
2401 * scm/define-context-properties.scm (all-user-translation-properties):
2404 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2405 revokePageTurns functionality. If there is a special barline within
2406 the breakable region, break there instead of at the end of the region.
2408 * lily/paper-book.cc (pages): use the new page-breaking calling
2411 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2413 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2415 * scripts/lilypond-book.py: insert \sourcefileline command in
2416 output, so lilypond error messages refer to the spot in the
2417 original .lytex / .itely sourcefile.
2419 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2421 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2422 space to next column for distance to fixed col.
2424 * VERSION (PACKAGE_NAME): release 2.9.14
2426 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2429 * lily/accidental-engraver.cc (process_acknowledged): don't create
2430 accidental for trill span event. This fixes spurious accidentals
2433 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2435 * scm/define-grob-properties.scm (all-user-grob-properties):
2436 Clarify documentation of side-axis and direction. Thanks to Paul
2437 for the inspiration.
2439 * lily/bar-line.cc: Add documentation for "||:" also in the
2440 interface documentation.
2442 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2444 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2446 * lily/paper-column.cc (set_system): new function.
2448 * lily/spacing-engraver.cc (stop_translation_timestep): store
2449 SpacingSpanner refs in Paper_column.
2451 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2452 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2454 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2456 * lily/beam-engraver.cc (listen_beam): add method for
2457 Grace_beam_engraver too.
2459 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2461 * python/convertrules.py: Fix indentation bug that broke
2462 conversion of files older than 1.3.117.
2463 Fix escape error in the description for 2.9.6.
2465 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2467 * lily/*-engraver.cc: convert all try_music functions to listen_*
2470 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2471 enums to represent pedal types, and calculate more data statically.
2473 * scm/part-combiner.scm (recording-group-emulate): create a
2474 softcoded substitute for recording-group-engraver.cc.
2476 * lily/music.cc: make a common transpose function for events and
2479 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2480 ManualMelismaEvent, and obsoletes Melisma_translator.
2482 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2484 * input/test/instrument-name-align.ly: update version.
2486 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2488 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2489 Doc the --pdf flag to lilypond-book.
2491 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2493 * Documentation/topdocs/NEWS.tely (Top): add description.
2495 * input/regression/tuplet-full-length-note.ly: add file.
2497 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2498 always store axis group.
2500 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2502 * input/regression/instrument-switch.ly: new file.
2504 * lily/instrument-switch-engraver.cc (process_music): new file.
2506 * ly/engraver-init.ly: add Instrument_switch_engraver
2508 * ly/music-functions-init.ly: \instrumentSwitch
2510 * scm/define-context-properties.scm
2511 (all-user-translation-properties): add instrumentCueName
2513 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2515 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2517 * ly/music-functions-init.ly: music function \transposition.
2519 * lily/parser.yy (command_element): softcode \transposition.
2521 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2522 (process_music): oops.
2524 * lily/instrument-name-engraver.cc (start_spanner): new
2525 function. Create spanner when property changes.
2526 (stop_spanner): new function.
2528 * python/convertrules.py (conv): add rule.
2530 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2531 shortInstrumentName iso. instr.
2533 * scm/output-ps.scm (dashed-line): add phase argument to
2536 * lily/bar-line.cc (dashed_bar_line): new function.
2537 (compound_barline): support \bar "dashed".
2539 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2540 --output=DIR to DIR/BASE if it is a dir.
2542 * flower/file-name.cc (file_part): new function
2543 (dir_part): new function
2545 * lily/lily-parser-scheme.cc (LY_DEFINE):
2547 * DEDICATION: update
2549 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2551 * lily/instrument-name-engraver.cc: formatting.
2553 * python/convertrules.py (conv): bugfix for \epsfile.
2555 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2559 * lily/gourlay-breaking.cc: Oops, these should have been included
2562 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2564 * scripts/*.py (program_name): cleanup relocation snippets.
2566 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2568 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2570 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2571 page-breakable by default
2573 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2574 correctly calculated for a single-system page
2576 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2577 bigger than the second number
2579 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2580 acknowledge that we aren't satisfying constraints)
2582 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2585 * lily/grob.cc (pure_height): add minimum-Y-extent
2587 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2590 * lily/constrained-breaking.cc: convert code to use new Matrix class
2591 (get_best_solution): new function
2593 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2594 is a page with no systems
2596 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2598 * VERSION (PACKAGE_NAME): release 2.9.13
2600 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2603 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2605 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2607 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2610 * scm/define-grob-properties.scm (all-user-grob-properties):
2611 remove grace-space-factor.
2613 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2614 grace-spacing-interface
2615 (spacing-options-interface): add.
2617 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2619 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2621 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2622 GraceSpacing object.
2624 * lily/note-spacing.cc: fix prop list formatting
2626 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2627 beaming for grace notes too.
2629 * input/regression/spacing-grace.ly: update.
2631 * lily/grace-spacing-engraver.cc: new file.
2633 * lily/spacing-spanner.cc: add strict-grace-spacing.
2635 2006-07-20 Graham Percival <gpermus@gmail.com>
2637 * lily/parser.yy: compile fix.
2639 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2641 * scm/define-grobs.scm (all-grob-descriptions): typo.
2643 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2644 .eps extension from includegraphics.
2646 * scripts/lilypond-book.py (main): add support for --pdf.
2648 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2649 callback to compute common shortest duration.
2650 (set_springs): typo.
2652 * scm/define-grob-properties.scm (all-user-grob-properties): add
2653 strict-grace-spacing.
2655 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2656 support float_grace_columns_.
2658 * lily/spacing-options.cc (init_from_grob): new file.
2660 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2662 * input/regression/spacing-loose-grace.ly: new file.
2664 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2666 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2667 tupletFullLengthNote too. Choose right bound depending on value.
2669 * input/regression/tuplet-full-length-note.ly: new file.
2671 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2673 * lily/*-performer.cc: Converted try_music to listen_*
2675 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2676 as a stream-event internally. Introduce event_cause (), deprecate
2679 * scm/define-music-types.scm: Removed BusyPlayingEvent
2681 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2683 * Documentation/user/advanced-notation.itely (Font selection):
2684 Document how to get a list of available fonts using 'lilypond
2685 -dshow-available-fonts blabla'.
2687 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2689 * GNUmakefile.in: filter lily-XXX.pdf files.
2691 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2693 * scm/define-grob-properties.scm (all-internal-grob-properties):
2694 remove delta-pitch. Use delta-position everywhere.
2696 * scm/output-lib.scm (fall::print): use new order.
2698 * scm/output-ps.scm (path): reorder arguments.
2700 * scm/output-svg.scm (path): support for path primitive.
2702 * input/regression/bend-after.ly: new file.
2704 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2705 recipe for eps -> pdf conversion.
2707 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2709 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2712 2006-07-19 Graham Percival <gpermus@gmail.com>
2714 * input/manual/screech-boink.ly: moved to here.
2716 * input/screech-boink.ly: deleted.
2718 * scm/define-grob-properties.scm: clarify doc string.
2720 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2722 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2724 * scm/output-ps.scm (path): define path.
2726 * scm/define-stencil-commands.scm
2727 (ly:register-stencil-expression): add path.
2729 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2731 * ly/engraver-init.ly: add Fall_engraver
2733 * lily/parser.yy (music_function_event): allow musicfunction
2734 without music arg as music_function_event.
2736 * lily/grob-scheme.cc (LY_DEFINE):
2737 ly:grob-robust-relative-extent. New function.
2739 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2741 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2743 * scm/output-lib.scm (fall::print): new function
2745 * lily/fall-engraver.cc (stop_fall): new file.
2747 * ly/music-functions-init.ly: alphabetise.
2749 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2752 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2754 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2756 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2759 * lily/translator-group.cc (connect_to_context): non const error message.
2761 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2763 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2766 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2768 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2770 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2773 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2775 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2777 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2779 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2781 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2783 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2785 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2787 * scm/layout-page-layout.scm: Define module, tidy code, use more
2788 functions iso. a single big one.
2790 * scm/layout-page-dump.scm: move page dump functions used in two
2791 pass spacing to this file. Define module.
2793 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2796 * ly/paper-defaults.ly: use module layout-page-layout.
2798 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2800 * lily/music.cc: Revised MusicEvent event class. It now contains
2801 event data directly instead of encapsulating it in music. The
2802 previously used class is renamed to OldMusicEvent.
2804 * lily/stream-event.cc: Stream events are now probs.
2806 * lily/translator-group.cc, lily/translator.cc: Translators can
2807 now listen directly to stream events, by using macros
2808 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2810 * lily/arpeggio-engraver.cc: Converted to use new event system
2812 * THANKS: Corrected spelling mistake.
2814 2006-07-12 Graham Percival <gpermus@gmail.com>
2816 * Documentation/user/SConscript, make/lilypond-vars.make,
2817 input/GNUmakefile: doc build looks in input/manual instead
2820 * input/manual/ GNUmakefile, SConscript: build files for
2823 * input/test/ various: some files moved to input/manual/
2825 * Documentation/user/basic-notation.itely: small updates;
2826 thanks Kieren and Charles!
2828 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2830 * VERSION (PACKAGE_NAME): release 2.9.11
2832 * Documentation/topdocs/NEWS.tely (Top): update prop value
2834 * Documentation/user/basic-notation.itely (Tuplets): new property
2837 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2839 * python/convertrules.py (conv): tweaks.
2841 * VERSION (PATCH_LEVEL): bump version.
2843 * python/convertrules.py (conv): add rule for
2844 tupletNumberFormatFunction.
2846 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2847 tupletNumberFormatFunction.
2849 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2850 text through 'text callback.
2852 * lily/time-scaled-music-iterator.cc (construct_children): copy
2853 tweaks generated events.
2855 * scm/define-context-properties.scm
2856 (all-user-translation-properties): remove tupletNumberFormatFunction
2858 * lily/tuplet-engraver.cc (process_music): don't read
2859 tupletNumberFormatFunction
2861 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2864 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2866 * lily/global-context-scheme.cc: Separated ly:run-translator into
2869 * lily/score-engraver.cc, lily/score-performer.cc,
2870 scm/define-context-properties.scm: Make paper/midi output
2871 accessable as a context property.
2873 * lily/score-translator.cc, lily/score-context.cc: Removed.
2875 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2877 * scm/ps-to-png.scm (Module):
2878 * scm/framework-tex.scm (Module):
2879 * scm/framework-ps.scm (Module):
2880 * scm/backend-library.scm (Module):
2881 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2882 "dDEVICEHEIGHTPOINTS".
2884 2006-07-04 Graham Percival <gpermus@gmail.com>
2886 * Documentation/user/ various: general improvements to
2887 "working with lilypond files" section.
2889 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2891 * lily/sequential-iterator.cc: Change the default get_music_list
2892 to read elements-callback music property
2894 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2895 processing of multimeasure rests. Softcoded
2896 sequential-music-iterator.
2898 * lily/sequential-music-iterator.cc: Removed.
2900 2006-06-28 Graham Percival <gpermus@gmail.com>
2902 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2904 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2906 * lily/parser.yy: Wrap non-post-events in EventChords before
2907 assigning them to identifiers.
2909 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2911 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2912 gives correct vertical placement of \bar ":" in all staff
2913 sizes. Thanks Martial!
2915 2006-06-26 Graham Percival <gpermus@gmail.com>
2917 * Documentation/user/invoking.itely : minor update from mailist.
2919 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2921 * lily/ various: Introduce stream events of types Prepare,
2922 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2923 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2925 * lily/global-context*.cc: Time is now -inf before iteration
2928 * lily/include/context.hh: Removed unique_, init_
2930 * Documentation/topdocs/NEWS: Make the feathered beam example
2931 avoid triggering a bug.
2933 2006-06-24 Graham Percival <gpermus@gmail.com>
2935 * Documentation/user/ various: small additions from mailist.
2937 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2939 * ly/performer-init.ly: Add some missing links in the context
2940 hierarchy for MIDI output. There are probably some more missing!
2942 2006-06-21 Graham Percival <gpermus@gmail.com>
2944 * Documentation/user/ various: minor spelling fixes;
2945 thanks Dave Luttinen!
2947 * Documentation/user/ various: small clarifications;
2948 thanks Anthony Youngman!
2950 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2952 * po/fr.po: add \n appropriately.
2954 * lily/lexer.ll: remove ? from version-seen?
2956 2006-06-19 John Mandereau <john.mandereau@free.fr>
2958 * po/fr.po; update translation, by Jean-Charles Malahieude and
2961 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2963 * THANKS: add Markus Schneider.
2965 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2966 Staff_symbol_engraver
2968 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2969 replace staff_engraver
2971 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2974 * lily/staff-collecting-engraver.cc
2975 (acknowledge_end_staff_symbol): new function
2977 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2979 * lily/staff-collecting-engraver.cc
2980 (acknowledge_end_staff_symbol): new function.
2982 * lily/main.cc: switch on relocation by default.
2984 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2986 * lily/spacing-spanner.cc (musical_column_spacing): set
2987 compound_fixed_note_space to 0.0. Document why.
2989 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2990 range of inverse_hooke_
2991 (Simple_spacer): init completely.
2993 (get_line_configuration): don't use cols.resize(); it introduces
2996 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2998 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
3000 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
3001 try. Divide by beatlength.
3003 * input/regression/beaming-ternary-metrum.ly: update doc.
3004 add beatLength hack.
3006 * scm/music-functions.scm (make-time-signature-set): add
3007 standard-beat-grouping.
3009 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3011 * input/regression/tie-whole.ly: new file.
3013 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
3014 cross center of note head in case of invisible stem.
3016 2006-06-16 Graham Percival <gpermus@gmail.com>
3018 * Documentation/user/ various: small fixes from mailist.
3020 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3022 * lily/breathing-sign.cc (offset_callback): idem.
3024 * lily/align-interface.cc (align_to_fixed_distance): remove
3027 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
3030 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3032 * VERSION (PACKAGE_NAME): release 2.9.9
3034 * ly/lilypond-book-preamble.ly: add \version
3036 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
3038 * scripts/lilypond-book.py (PREAMBLE_LY): include
3039 lilypond-book-preamble.ly
3041 * lily/stem.cc (get_beaming): return max of 0 and
3042 scm_ilength. Fixes slurring from/to beams.
3044 * ly/lilypond-book-preamble.ly: new file.
3046 * lily/slur.cc: add inspect-index feature.
3048 2006-06-13 Graham Percival <gpermus@gmail.com>
3050 * Documentation/user/tutorial.itely: trivial fix.
3052 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
3054 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
3055 all non-event music in the parser via MAKE_SYNTAX.
3057 * lily/parser-scheme.cc: Add ly:parser-error function
3059 * scm/paper.scm: fix typo
3061 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
3065 * lily/font-config.cc (init_fontconfig): add warning if cache_file
3068 * buildscripts/output-distance.py (test_compare_signatures):
3070 (read_signature_file): use new signature format.
3072 * scm/stencil.scm (write-system-signature): simpler signature
3075 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
3078 * lily/note-spacing.cc (stem_dir_correction): don't inspect
3079 stem_end_position, but estimate instead.
3081 * lily/tuplet-bracket.cc (calc_positions): look at
3082 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3083 brackets narrower than beams.
3085 * lily/lexer.ll: set version-seen? even if version is
3088 * lily/rest.cc (y_offset_callback): bugfix: decide position
3089 override based on scm_is_number(). Fixes \rest on center staff
3092 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3093 patterns for 16th triplets.
3095 2006-06-10 Graham Percival <gpermus@gmail.com>
3097 * Documentation/user/ page.itely, global.itely: editing
3100 * Documentation/user/ various: findex -> funindex.
3102 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3104 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3105 insert extra tuplet events.
3107 2006-06-10 Graham Percival <gpermus@gmail.com>
3109 * Documentation/user/programming-interfaces.itely: add
3112 * python/convertrules.py: add annotatefoo -> annotate-foo
3115 * Documentation/user/global.itely: start editing.
3117 * Documentation/user/page.itely: major editing, new spacing
3120 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3122 * scm/define-markup-commands.scm (wordwrap-markups): use
3123 output-def 'line-width if undefined.
3125 * HACKING: trim outdated info.
3127 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3129 * scm/define-grobs.scm (all-grob-descriptions): Add
3130 line-spanner-interface to all grobs that already have
3131 text-spanner-interface or dynamic-text-spanner-interface
3133 * scm/page.scm: Rename annotate{headers,systems,page}->
3136 * input/regression/page-spacing.ly,
3137 input/regression/page-layout-manual-position.ly: idem
3139 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3141 * lily/line-spanner.cc: cleanup property list.
3143 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3144 generator expressions (2.3 compat).
3146 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3148 * lily/vertical-align-engraver.cc: Make sure that the
3149 align{Above,Below}Context properties are included in the automatic
3152 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3154 * scm/paper-system.scm (paper-system-annotate): also annotate the
3155 estimated pure-Y-extent
3157 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3159 * lily/system.cc (break_into_pieces): set the estimated height
3160 of each child system
3162 * lily/stem.cc (pure_height): new pure-Y-extent callback
3164 * lily/staff-symbol-referencer.cc (callback): don't destroy
3165 the staff-position property
3167 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3168 consider_suicide into two functions
3170 * lily/constrained-breaking.cc (resize): use the new pure
3171 callbacks to estimate the height of a system
3173 * lily/axis-group-interface.cc (pure_group_height): new
3174 side-effect-free VerticalAxisGroup height-callback
3176 * lily/align-interface.cc (get_extents_aligned_translates):
3177 split align_elements_to_extents into two functions
3178 (get_pure_child_y_translation): new function
3180 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3182 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3184 * lily/paper-score.cc: cache break_indices and columns
3186 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3188 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3190 * lily/font-config.cc (init_fontconfig): do the init if
3191 cache_file, but don't look at cache_file.
3193 * input/regression/quote-tie.ly: new file.
3195 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3196 to Head_event_tuple, so we deal gracefully with ties on
3199 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3202 2006-06-08 Graham Percival <gpermus@gmail.com>
3204 * input/test/ smart-transpose.ly, reverse-music.ly:
3205 \applyMusic to music functions update, thanks Michael!
3207 2006-06-07 Graham Percival <gpermus@gmail.com>
3209 * input/test/ add-staccato.ly, add-text-script.ly,
3210 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3211 music functions update, thanks to Michael Meixner.
3213 * Documentation/user/music-glossary.tely: small fix
3216 * Documentation/user/ various: minor additions from mailist.
3218 * Documentation/user/lilypond.tely, basic-notation.itely:
3219 small test of @funindex. (works here)
3221 * input/test/font-table.ly: reduce size to partially
3222 de-ugly version in manual.
3224 * Documentation/user/page.itely: new file (split former
3225 "global issues" into "page settings" and "non-musical
3228 * Documentation/user/ various: fix @ref{}s to match
3229 new chapter names (above).
3231 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3233 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3235 2006-06-06 Graham Percival <gpermus@gmail.com>
3237 * Documentation/user/advanced-notation.itely: add example
3238 for segno/coda on barline.
3240 * tex/texinfo.tex: merge from upstream.
3242 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3244 * scripts/lilypond-book.py (process_snippets): Argument fix.
3247 * buildscripts/builder.py:
3250 * Documentation/user/SConscript: More SCons fixes.
3252 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3254 * lily/font-config.cc (init_fontconfig): Only initialize if
3255 global cache_file is found.
3257 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3259 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3262 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3264 * VERSION (PACKAGE_NAME): release 2.9.8
3266 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3267 function. Delay ledger modifying ledgered grobs to
3268 stop_translation_timestep(), to ensure that we're ledgering
3269 according to the new spanner.
3270 (acknowledge_staff_symbol): don't check for non-NULL
3271 staff_sym->get_bound()
3273 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3276 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3279 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3280 directly from srcdir/stepmake/aclocal.m4
3282 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3285 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3287 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3289 * lily/simple-spacer.cc (get_line_configuration): add
3290 keep-inside-line rods
3291 (struct Column_desc): add constructor
3292 (struct Rod_desc): add constructor
3293 (get_line_forces): check for forced page breaks here too
3295 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3296 support/elements cycles between InstrumentNames and AxisGroups
3298 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3300 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3302 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3303 make-txt-files target.
3305 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3306 make-txt-files target.
3308 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3310 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3313 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3315 * Documentation/user/instrument-notation.itely,
3316 input/regression/breathing-sign-ancient.ly,
3317 input/test/divisiones.ly: Removed redundant property settings for
3320 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3321 fix lyrics alignment problems. They are implemented now as scheme
3322 functions that add the appropriate unicode char to the first lyric
3323 event rather than adding a separate lyric event. Minor edit of
3326 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3328 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3329 pollute src dir with built .txt files, but install directly from
3330 Documentation/topdocs/out/
3332 * buildscripts/output-distance.py
3333 (ComparisonData.create_html_result_page): put version/directories
3336 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3339 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3340 Patch by Karl Hammar
3342 * buildscripts/readlink.py: add file.
3343 Patch by Karl Hammar
3345 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3347 * lily/tuplet-number.cc (print): prevent stencil from being
3350 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3352 * scm/stencil.scm (write-system-signature): explicitly
3353 -well, superfluously- close output port.
3355 * buildscripts/output-distance.py (main): oops. Add extra argument.
3357 2006-06-05 Graham Percival <gpermus@gmail.com>
3359 * Documentation/user/music-glossary.tely: clarified example
3360 from Francisco Vila, thanks!
3362 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3364 * input/regression/spacing-section.ly: new file.
3366 * lily/input.cc (programming_error): new function.
3368 * lily/spacing-engraver.cc (try_music): new function. Accept
3369 spacing-section-event
3371 * lily/spacing-spanner.cc (set_springs): take slices of all
3372 columns for spacing.
3374 * lily/include/paper-column.hh (class Paper_column): add
3375 Paper_column::compare.
3377 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3379 * scm/define-music-types.scm (music-descriptions): add
3382 * lily/music-iterator.cc (report_event): use programming_error for
3383 sending non-event error.
3385 * lily/input.cc (programming_error): new function
3387 * buildscripts/output-distance.py (main): use compare-XXX for
3389 (main): --threshold option, default at 0.30
3391 * output-distance.py (main): add --threshold option.
3393 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3395 * scm/paper-system.scm (paper-system-annotate): fix problem when
3396 annotating an empty system
3398 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3400 * GNUmakefile.in: reinstate old web tar/copying.
3402 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3404 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3405 nothing changes. (Erik S)
3407 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3410 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3412 * scm/define-markup-commands.scm (whiteout): do not force
3413 foreground color of argument markup to black.
3415 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3416 the left of the arrow, instead of below the arrow name, so that,
3417 when two little arrows are vertically stacked, their dimensions
3418 and name should not overlap. Add a color key parameter.
3420 * scm/paper-system.scm (paper-system-annotate): Annotate
3421 next-space+next-padding instead of next-space. Annotate space
3422 between next-padding and next-space+padding, respectively, and
3423 following system extent and refpoint-Y-extent. Use colors.
3425 * scm/page.scm (annotate-page): translate annotations slightly to
3428 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3430 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3431 fix for x-staff slurs. Thanks Joe!
3433 * buildscripts/output-distance.py
3434 (SystemLink.output_expression_change_count): keep track of changed
3435 details, and dump in details html page.
3437 * input/regression/figured-bass-staff.ly: add note about setting
3438 properties in Staff context.
3440 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3441 add slurs and ties to support too.
3443 * buildscripts/output-distance.py (main): set dest_dir
3444 argument. Add --max-count option.
3446 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3448 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3449 shortcuts for special unicode chars that are useful in chant
3450 notation. Revised exisiting and added new comments.
3452 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3454 * make/mutopia-rules.make: remove duplicate recipe.
3456 2006-06-02 Werner Lemberg <wl@gnu.org>
3458 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3459 Add support for U+0132 (IJ) and U+0133 (ij).
3461 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3463 * buildscripts/output-distance.py (FileLink): new class. collect
3464 info systems from one .ly file.
3465 (FileLink.link_files_for_html): further tweaks.
3467 2006-06-02 Graham Percival <gpermus@gmail.com>
3469 * tex/texinfo.tex: partial fix for @funindex.
3471 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3474 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3476 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3478 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3479 @example too. Backportme.
3481 2006-06-02 Graham Percival <gpermus@gmail.com>
3483 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3484 from Werner Lemberg.
3486 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3488 * Documentation/user/music-glossary.tely: additional spanish
3489 updates and a lyrics fix in an example.
3491 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3493 * scm/define-grob-properties.scm: Previous patch contained
3494 spurious line from another patch not yet committed. Fixed.
3496 * scm/define-grob-properties.scm: Add missing doc strings for
3499 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3501 * buildscripts/output-distance.py
3502 (ComparisonData.write_text_result_page): separate the scores, sort
3505 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3508 * buildscripts/output-distance.py (me_path): use argv[0] for
3510 (ComparisonData.img_cell): use colored borders.
3512 * scm/stencil.scm (write-system-signature): escape newlines too.
3513 (write-system-signature): use (1,-1) interval for empty interval
3515 2006-01-01 Graham Percival <gpermus@gmail.com>
3517 * Documentation/user/music-glossary.tely: Spanish updates
3518 from Francisco Vila.
3520 * Documentation/user/lilypond-book.itely: addition from
3523 * Documentation/user/ various: edits, small additions
3526 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3528 * GNUmakefile.in (tree-lib-prefix-current):
3529 (tree-share-prefix-current): Use version number in tree, add
3532 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3534 * GNUmakefile.in: write VERSION, again.
3536 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3537 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3539 * stepmake/aclocal.m4: robuster version detection.
3541 * buildscripts/output-distance.py
3542 (ComparisonData.create_html_result_page): copy only if file
3543 exists, fixup src paths.
3545 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3547 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3549 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3550 Another datarootdir reto.
3552 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3553 available. This should be moved to postinstall-lilypond-doc.
3555 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3557 * GNUmakefile.in: simplify local-WWW-post.
3558 remove -type l from find.
3560 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3561 fixes. Don't follow symlinks.
3562 (ComparisonData.create_html_result_page): remove previous results.
3563 insert ../python in path.
3565 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3567 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3569 * config.make.in (datadir): Add datarootdir to silence autoconf.
3571 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3573 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3575 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3577 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3578 slash beams too wide.
3580 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3582 * VERSION: release 2.9.7
3584 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3586 * lily/relocate.cc (read_relocation_dir): Do not blindly
3589 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3591 * lily/parser.yy: replace THIS by PARSER
3593 * Documentation/index.html.in: add link to test-results.html page.
3595 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3597 * scm/translation-functions.scm (format-bass-figure): translate
3598 digits over 10 to the left
3600 * scm/define-markup-commands.scm (translate-scaled): new markup.
3602 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3605 * ly/engraver-init.ly: add Figured_bass_engraver
3607 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3609 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3611 * lily/score-engraver.cc (announce_grob): only note START announces.
3613 * lily/include/engraver-group.hh (Translator_group):
3614 acknowledge_hash_table_ is now drul.
3616 * lily/engraver.cc (announce_end_grob): new method.
3618 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3620 * lily/translator-dispatch-list.cc (create): take start_end argument.
3622 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3623 acknowledge_static_array_ to drul
3625 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3627 * scm/define-grob-interfaces.scm
3628 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3630 * scm/define-grobs.scm (all-grob-descriptions): add
3631 BassFigureAlignmentPositioning
3633 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3634 number stays up to date. Backportme.
3636 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3638 * Documentation/user/basic-notation.itely (Bar lines): Document
3641 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3643 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3645 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3646 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3649 * Resurrect `scons lily' build.
3651 * SConstruct (symlink_tree): Bugfix: link
3652 music-drawing-routines.ps to file iso directory.
3654 * lily/SConscript: Remove kpath-guile from LIBS.
3656 * SConstruct (libdir_package_version): Typo.
3657 (configure): Comment-out fontforge for lack of fontforge.pc .
3658 Also add libdir* to environment.
3660 2006-05-30 Graham Percival <gpermus@gmail.com>
3662 * Documentation/user/ various: minor additions from mailist and
3665 2006-05-30 Paco <fravd@ya.com>
3667 * Documentation/user/music-glossary.tely: numerous corrections and
3668 some new translations.
3670 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3674 * buildscripts/output-distance.py
3675 (ComparisonData.create_html_result_page): new routine: summarise
3676 results in HTML page with images.
3677 (ComparisonData.create_text_result_page): create summary text files too.
3679 * GNUmakefile.in (web-ext): package .signature files too. They
3682 * scm/stencil.scm (write-system-signature): typo.
3684 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3686 * scm/stencil.scm (write-system-signature): better escaping.
3687 only write signature for music systems, not for markup systems.
3689 * scm/framework-ps.scm (output-framework): dump-signatures support
3692 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3694 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3695 for -dno-point-and-click
3697 * lily/grob.cc (get_print_stencil): don't read
3698 point_and_click_global to determine whether to set grob-cause.
3700 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3702 * buildscripts/output-distance.py (main): new function.
3703 (ComparisonData): new class.
3705 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3706 careful with generating new LedgerLineSpanners.
3708 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3710 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3711 context. This fixes double ledger lines in output.
3713 * lily/system.cc (get_paper_system): remove 3 layer limit.
3715 * buildscripts/output-distance.py (SystemLink.distance): new
3716 file. Compare signatures.
3718 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3720 * lily/grob-array.cc (remove_duplicates): rename from
3721 uniq(). Sort before calling uniq() so it actually works.
3723 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3725 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3726 \version from lilypond file snippet.
3727 (Lilypond_file_snippet.ly): oops. typo.
3728 (find_toplevel_snippets): urgh. again.
3730 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3731 prevent duplicated broken items in output.
3733 * scm/framework-eps.scm (output-classic-framework): only dump if
3734 dump-signatures is set.
3736 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3738 * scm/stencil.scm (write-system-signature): new routine: write
3739 python parseable signature of a separate paper system.
3742 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3744 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3748 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3750 * translator-group.cc: send music events to engravers in
3751 non-bottom contexts.
3753 * tuplet-engraver.cc: process tuplet brackets in correct order.
3755 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3757 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3758 arg 2 might point us to a new binary (patch by Karl Hammar)
3760 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3762 * VERSION (PACKAGE_NAME): release 2.9.6
3764 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3766 * Documentation/user/*.itely: 2nd
3767 attempt: replace funindex -> findex globally.
3769 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3771 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3772 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3774 * scm/define-music-display-methods.scm: display methods for
3775 breaks. Fix \applyOutput.
3777 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3779 * Documentation/user/macros.itexi: comment out funindex expansion.
3781 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3784 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3785 Karl Hammar. Backportme.
3787 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3789 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3791 * Documentation/user/programming-interface.itely (Running a
3792 function on all layout objects): idem.
3794 * Documentation/user/introduction.itely (Automated engraving):
3795 update \applyOutput syntax
3797 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3798 remove debugging hook.
3800 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3803 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3805 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3806 TEXI2DVI_FLAGS to texi2dvi invocation.
3808 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3810 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3811 works. More work is done by iterator now, and engraver has been
3812 very much simplified.
3814 * lily/translator-group.cc: try_music is now invoked through a
3817 * lily/*-iterator.cc: Massive cleanups. Junked
3818 try_music_in_children globally. Renamed try_music to report_event,
3819 and made that method descend to a bottom context automatically.
3821 * lily/event-iterator.cc: New file.
3823 * lily/output-property-iterator.cc,
3824 lily/old-lyric-combine-music-iterator.cc: Removed.
3826 * python/convert-rules.py: Modified the syntax for \applyOutput.
3828 2006-05-23 Graham Percival <gpermus@gmail.com>
3830 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3833 * Documentation/user/ various: stuff that might have helped
3834 to fix the pdf creation, plus some minor doc additions.
3836 * Documentation/user/changing-defaults.itely: remove @b from
3837 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3839 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3841 * lily/beaming-pattern.cc (beamify): deal with negative start
3842 moments for beaming patterns.
3844 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3846 * lily/beaming-info.cc (beamify): new function: read beatLength
3847 and beatGrouping from context.
3849 * input/regression/beam-beat-grouping.ly (Module): new file.
3851 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3853 * lily/beam.cc (get_beam_segments): generate events for
3854 max_connect_ case too.
3855 (get_beam_segments): read Stem::max-beam-connect.
3857 * input/regression/beam-single-stem.ly: new file.
3859 * lily/stem.cc (set_beaming): use #f as signaling value for
3862 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3864 * lily/beam.cc (set_beaming): read clip-edges property.
3865 (calc_direction): don't suicide for single stem.
3867 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3868 argument, remove 1<<15 hack. Remove clip_edges()
3870 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3872 2006-05-21 Graham Percival <gpermus@gmail.com>
3874 * Documentation/user/basic-notation.itely: reorg.
3876 * Documentation/user/ various: minor fixes.
3878 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3880 * lily/stencil-expression.cc (register_stencil_head): opps, append
3881 to cdr of static SCM object.
3883 2006-05-19 Graham Percival <gpermus@gmail.com>
3885 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3886 update framework for command index. DOC WRITERS: use @funindex
3887 instead of @cindex @code{}.
3889 * Documentation/user/ various: replace @cindex @code{} => @funindex
3891 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3893 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3894 case positions is set manually.
3896 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3898 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3901 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3903 * Documentation/user/changing-defaults.itely (Contexts explained):
3904 use absolute dimension for @image.
3906 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3907 out image for illustration too.
3908 ($(outdir)/%.png): add more png <-> eps rules.
3910 2006-05-17 Graham Percival <gpermus@gmail.com>
3912 * Documentation/user/ various: remove trailing whitespace, cosmetic
3913 change to reduce changes produced by diff.
3915 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3917 * lily/main.cc (do_chroot_jail): correctness tweak.
3919 * python/lilylib.py (system): import subprocess in system () only.
3921 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3923 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3924 variable. Backportme.
3926 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3928 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3930 2006-05-17 Werner Lemberg <wl@gnu.org>
3932 * lily/lexer.ll (init_signature_has_table): Add
3933 `scm-scm-music-music'.
3935 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3936 (Generic_prefix_music_scm): Add rule for it.
3938 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3939 `quoted-transposition' property.
3941 * ly/music-functions-init.ly (transposedCueDuring): New function.
3943 * scm/define-music-properties.scm (all-music-properties): Updated.
3945 * Documenation/topdocs/NEWS.itely: Document it.
3947 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3949 * python/lilylib.py (system): move import subprocess to system()
3952 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3954 * VERSION (PATCH_LEVEL): release 2.9.5
3956 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3959 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3961 2006-05-16 Graham Percival <gpermus@gmail.com>
3963 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3965 * Documentation/user/ various: minor fixes.
3967 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3969 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3971 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3973 * Documentation/user/advanced-notation.itely (Instrument names):
3974 Modified obsolete instruction on how to move instrument names away
3975 from the staves. Hmm, at second thought the bug probably has been
3976 solved, so the full bug description should probably be removed.
3978 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3980 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3981 currentCommandColumn.
3983 * lily/hairpin.cc (print): also add padding for non-neighbor
3986 * scm/define-context-properties.scm
3987 (all-user-translation-properties): add hairpinToBarline
3989 * input/regression/hairpin-to-barline.ly: new file.
3991 * lily/context.cc (internal_send_stream_event): thinko fix.
3993 * lily/tie.cc (set_default_control_points): robustness fix.
3995 * python/musicxml.py (Part.interpret): don't complain about
3996 incomplete measures.
3998 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3999 new music if last_event_chord() returned None.
4001 * python/musicxml.py (Part.interpret): skip back over chord notes.
4003 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
4005 * lily/percent-repeat-engraver.cc, lily/parser.yy,
4006 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
4007 lily/slash-repeat-engraver.cc,
4008 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
4009 iterator sends PercentEvents
4011 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
4012 rework tuplets: send start/stop events to engraver
4014 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
4015 dispatchers event-source and events-below to Context
4017 2006-05-15 Graham Percival <gpermus@gmail.com>
4019 * Documentation/user/README.txt: update info for doc writers.
4021 * Documentation/user/programming-interface.itely: integrate
4022 Nicolas' fixes for chapter rewrite.
4024 * Documentation/user/ various: minor fixes.
4026 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
4028 * lily/clef-engraver.cc: cleanup.
4030 * Documentation/user/GNUmakefile: dist context-example.eps too.
4032 * lily/key-engraver.cc (create_key): use
4033 explicitKeySignatureVisibility for cancellation too.
4035 * lily/font-config.cc (init_fontconfig): don't close file if
4038 2006-05-15 Erlend Aasland <erlenda@gmail.com>
4040 * Documentation/topdocs/NEWS.tely: niente and rotation news
4042 2006-05-14 Erlend Aasland <erlenda@gmail.com>
4044 * lily/include/stencil.hh
4045 * lily/stencil.cc (rotate): new function. Makes it possible
4046 to rotate a stencil around a given offset.
4048 * lily/grob.cc (get_print_stencil): add rotation support
4050 * lily/stencil-interpret.cc (interpret_stencil_expression):
4051 add rotation support
4053 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
4055 * scm/define-grob-properties.scm: add 'rotation property
4057 * scm/define-markup-commands.scm: add rotate markup command
4059 * scm/output-ps.scm: add rotation support in PostScript backend
4061 * scm/output-svg.scm: add rotation support in SVG backend
4063 2006-05-13 Graham Percival <gpermus@gmail.com>
4065 * Documentation/user/music-glossary.itely: French correction.
4067 * Documentation/user/programming-interface.itely: major
4068 new docs, some reorg, some info from Nicolas.
4070 * Documentation/user/ various: small fixes.
4072 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
4074 * Documentation/user/programming-interface.itely (Markup
4075 programmer interface): Remove duplicate text.
4077 2006-05-12 Graham Percival <gpermus@gmail.com>
4079 * Documentation/user/context-example.eps: new file.
4081 * Documentation/user/changing-defaults.itely: set up file to
4084 * Documentation/user/programming-interface.itely: changes
4087 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
4089 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4091 2006-05-11 Graham Percival <gpermus@gmail.com>
4093 * Documentation/user/programming-interface.itely: first round of
4094 editing and merging emails from Nicolas.
4096 * Documentation/user/scheme-tutorial: minor edit.
4098 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4100 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4102 (Xml_node.message): use it.
4104 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4105 oops. Add duration argument.
4107 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4109 * lily/paper-column-engraver.cc (make_columns):
4110 * scm/define-grobs.scm: Revert my previous change and set the default
4111 in define-grobs.scm instead.
4113 2006-05-09 Graham Percival <gpermus@gmail.com>
4115 * Documentation/user/changing-defaults.itely: general editing,
4116 info about \set and \override.
4118 * Documentation/user/tweaking.itely, advanced-notation.itely:
4119 fixes from Dave Luttinen, thanks!
4121 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4123 * lily/paper-column-engraver.cc (make_columns): By default, a column
4124 needs to be breakable.
4126 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4128 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4130 (musicxml_time_to_lily): idem
4131 (musicxml_key_to_lily): idem
4132 (instrument_drumtype_dict): dict for supported drumtypes.
4133 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4134 moments and pending mm rests
4135 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4136 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4137 (musicxml_voice_to_lily_voice): add mode change.
4138 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4139 speed and less memory usage (factor 5 to 10).
4140 (convert): write -defs.ly and driver file separately so people
4141 can script their own part extraction.
4143 * python/musicxml.py (minidom_demarshal_node): new function:
4144 separate minidom handling.
4145 (lxml_demarshal_node): new function: support lxml.etree too.
4146 (Xml_node.message): new function: verbose error message, with XML
4147 path to offending node.
4148 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4149 (Part_list.generate_id_instrument_dict): new method: collect
4150 instrument names, to be able to set drum_type.
4151 (Part.interpret): handle underfull measures
4152 (Part.interpret): assign instrument names.
4154 * python/musicexp.py (Output_printer.close): new method
4155 (MusicWrapper.print_ly): new class: support other modes,
4157 (BarCheck.print_ly): new class. Support bar checks, with comments
4158 and fancy barchecks.
4159 (NoteEvent.__init__): also set drum_type for drum notes.
4160 (MultiMeasureRest.lisp_expression): dump mm rests.
4162 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4163 line-break-permission if forbidBreak is not set.
4165 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4167 * scm/define-context-properties.scm:
4168 * scm/define-grob-properties.scm:
4169 * scm/define-grobs.scm:
4170 * scm/define-music-display-methods.scm:
4171 * scm/define-music-properties.scm:
4172 * scm/define-music-types.scm:
4173 * scm/music-functions.scm:
4174 * ly/declarations-init.ly:
4175 * lily/include/constrained-breaking.hh:
4177 * lily/spaceable-grob.cc:
4178 * lily/simple-spacer.cc:
4179 * lily/paper-score.cc:
4180 * lily/paper-column.cc:
4181 * lily/paper-column-engraver.cc:
4183 * lily/gourlay-breaking.cc:
4184 * lily/constrained-breaking.cc:
4185 * python/convertrules.py:
4186 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4187 "page-break-penalty" and "line-break-permission".
4188 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4189 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4191 * lily/bar-engraver.cc:
4192 * lily/beam-engraver.cc:
4193 * lily/forbid-break-engraver.cc:
4194 * lily/ligature-engraver.cc:
4195 * lily/paper-column-engraver.cc:
4196 * lily/percent-repeat-engraver.cc:
4197 * lily/score-engraver.cc:
4198 * lily/score-engraver.hh:
4199 * lily/paper-column-engraver.hh:
4200 Inter-engraver communication regarding line breaks is done through context
4201 properties (Score.forbidBreak) instead of function calls.
4203 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4205 * VERSION (PACKAGE_NAME): release 2.9.4
4207 2006-05-08 Graham Percival <gpermus@gmail.com>
4209 * Documentation/user/working.itely: proofreading from Dave
4212 * Doucmentation/user/README.txt: updated with manual style info.
4214 * Documentation/user/ various: trim linewidth to 78 chars.
4216 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4218 * scm/define-grob-properties.scm (all-internal-grob-properties):
4219 remove chord-tremolo property.
4221 * lily/beam.cc (get_beam_segments): don't use stem position as
4222 base for broken ends.
4224 2006-05-06 Graham Percival <gpermus@gmail.com>
4226 * Documentation/user/putting.itely: proofreading from Dave
4229 * Documentation/user/ various: more reorg and clarifications.
4231 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4233 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4235 * ly/music-functions-init.ly: new function featherDurations
4237 * lily/beam.cc: read grow-direction for feathered beaming.
4239 * Documentation/topdocs/NEWS.tely (Top): typo.
4241 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4243 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4246 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4247 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4248 used by music streams.
4250 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4251 lily/stream-event.cc, lily/stream-event-scheme.cc,
4252 lily/listener.cc, lily/scheme-listener.cc,
4253 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4254 lily/include/stream-event.hh, lily/include/listener.hh,
4255 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4256 Created data structures for music streams.
4258 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4260 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4261 construction of a beam.
4264 * flower/include/std-vector.hh (default_compare): use only one comparison.
4266 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4267 (note-by-number): further attachment fixes.
4269 * scm/lily-library.scm (ordered-cons): new function.
4270 (interval-index): new function
4272 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4274 * lily/note-head.cc (get_stem_attachment): new function.
4276 * scm/define-markup-commands.scm (note-by-number): read 'style
4279 * input/regression/markup-note.ly: show note-head style option.
4281 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4284 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4286 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4288 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4290 * lily/include/constrained-breaking.hh: GCC 4 fix.
4292 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4294 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4295 Replace it with functions get_line_forces and get_line_configuration.
4296 (class Simple_spacer): Make data private.
4297 Rewrite compression algorithm to be faster and simpler.
4299 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4300 * lily/gourlay-breaking.cc (solve):
4301 * lily/constrained_breaking.cc (space_line):
4302 Change it to the new simple-spacer code.
4304 * lily/paper-score.cc (get_paper_systems):
4307 Delay breaking the systems until they are requested.
4308 (find_break_indices):
4309 Use vsize for indices.
4311 Move the "Calculating line breaks" message here.
4313 * lily/system.cc (pre_processing):
4314 Move the "Calculating line breaks" message away from here.
4315 (break_into_pieces):
4316 Allow multiple calls to this function in sequence (with touching-but-
4317 not-overlapping breakpoints).
4319 * lily/constrained-breaking.cc:
4320 Replace most of the get_XXXX functions with get_line_details.
4321 Only calculate the force for each line. Calculate configurations only
4322 for the lines we will actually use.
4323 Replace cols_ with lines_.
4325 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4327 * mf/GNUmakefile (depth): remove FC_FIND.
4329 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4331 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4333 * scm/framework-ps.scm (write-preamble): new function.
4334 (write-preamble): load mac fonts via fondu, even if gs-font-load
4337 2006-05-03 Werner Lemberg <wl@gnu.org>
4339 * mf/GNUmakefile (FC_FIND): Fix typo.
4341 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4343 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4345 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4347 * stepmake/aclocal.m4: run python-config for crosscompiling
4350 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4351 -f png for HTML, TEXINFO formats.
4353 * input/tutorial/lbook-html-test.html: new file.
4355 * lily/include/tie-formatting-problem.hh (class
4356 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4357 [column, direction]. This fixes laissez vibrer ties.
4359 * flower/include/tuple.hh (struct Tuple2): new file.
4361 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4362 $(FCMATCH), only if $(NCSB_DIR) not set.
4364 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4366 * config.make.in (DOCUMENTATION): set FCMATCH.
4368 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4370 2006-05-03 Graham Percival <gpermus@gmail.com>
4372 * Documentation/user/ various: final round of reorg.
4374 * Documentation/user/instrument-notation.itely: some more
4375 fixes from Eduardo, thanks!
4377 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4379 * VERSION (PACKAGE_NAME): release 2.9.3
4381 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4383 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4385 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4387 * scm/define-grob-properties.scm (all-user-grob-properties):
4388 Correct typo, thanks to Eduardo.
4390 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4392 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4394 * buildscripts/lilypond-words.py (F): indent fix.
4396 * input/regression/tie-arpeggio-collision.ly: new file.
4398 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4399 function: store outlines per column rank.
4401 * lily/include/tie-configuration.hh (class Tie_configuration): add
4402 column_ranks_ to specification and configuration, to distinguish
4403 between ties for different heads in arpegiated chords.
4405 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4407 * *.py: more 4 space indents.
4409 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4411 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4413 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4415 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4417 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4419 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4421 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4423 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4425 * python/convertrules.py (conv): indent 4 for python files.
4427 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4429 * Documentation/user/changing-defaults.itely (Creating contexts):
4430 Clarify \new semantics.
4432 2006-04-28 Graham Percival <gpermus@gmail.com>
4434 * Documentation/user/ various: major new sections in the
4435 Learning manual, slight reorg elsewhere.
4437 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4439 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4441 * scm/framework-ps.scm (output-framework): remove PageMedia
4443 2006-04-27 Graham Percival <gpermus@gmail.com>
4445 * Documentation/user/ tweaks.itely, working.itely: new
4446 files, being more advanced "learning manual" chapters.
4448 * Documentation/user/ tutorial, putting, lilypond: reorg.
4450 2006-04-26 Graham Percival <gpermus@gmail.com>
4452 * input/regression/lyric-combine-polyphonic.ly: fixed test
4453 (no more "can't find context `one'" error).
4455 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4457 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4459 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4461 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4463 * lily/relocate.cc (read_relocation_dir): new function.
4465 2006-04-26 Graham Percival <gpermus@gmail.com>
4467 * Documentation/user/instrument-notation.itely: a few more fixes
4468 from Eduardo, thanks!
4470 * Documentation/user/README.txt: new file; contains info on
4471 style that used to be in lilypond.tely.
4473 * Documentation/user/ various: first round of doc reorg.
4475 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4476 graphic; this probably causes problems on some pdf
4477 viewers, notably Adobe Acrobat.
4479 2006-04-24 Graham Percival <gpermus@gmail.com>
4481 * Documentation/user/instrument-notation.itely: many alterations
4482 to Vocal music, from Eduardo Viera.
4484 2006-04-23 Graham Percival <gpermus@gmail.com>
4486 * Documentation/user/instrument-notation.itely: fix \new
4487 instead of \context problem.
4489 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4491 * lily/relocate.cc (expand_environment_variables): new function.
4493 (read_relocation_file): id.
4495 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4497 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4499 * ly/engraver-init.ly: remove old comments from TabVoice
4501 2006-04-20 Graham Percival <gpermus@gmail.com>
4503 * Documentation/user/instrument-notation.itely: added Erlend's
4504 latest doc patch, thanks!
4506 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4508 * lily/include/slur.hh:
4510 * lily/phrasing-slur-engraver.cc:
4511 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4512 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4513 Slur_engraver:: and putting it in
4514 Slur::auxiliary_acknowledge_extra_object ().
4516 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4518 * lily/note-collision.cc: fix a comment
4520 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4522 * stepmake/bin/add-html-footer.py: fix footer position in
4523 generated html files: before </body> and </html> tags.
4525 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4527 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4528 Earlier successive `make' commands finally compiled ok.
4530 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4532 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4534 * lily/include/stem-tremolo.hh:
4535 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4539 * lily/include/lookup.hh: add rotated_box ()
4541 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4543 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4544 been generated. Fixes "can't get `--help'" bug after make clean.
4546 * THANKS: alphabetize contributors.
4548 2006-04-17 Graham Percival <gpermus@gmail.com>
4550 * Documentation/user/instrument-notation.itely: added Erlend's
4551 tabs and banjo doc patch. Thanks!
4553 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4555 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4557 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4559 * scm/output-lib.scm: add some more predefined string tunings.
4561 * Documentation/user/instrument-notation.itely: and doc them.
4563 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4565 * ly/engraver.ly: Remove obsolete comments.
4567 * ly/gregorian-init.ly: Define default layout block.
4569 * input/puer-fragment.ly: Updated and extended.
4571 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4573 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4574 pdf conversion behaviour.
4576 * flower/file-name.cc (dir_name)
4577 (get_working_directory): Move from relocate.cc.
4579 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4581 * lily/relocate.cc: Encapsulate sys/stat.h in
4584 2006-04-14 Graham Percival <gpermus@gmail.com>
4586 * Documentation/user/ various: small updates from Cameron
4587 and Juergen, thanks!
4589 * Documentation/user/ various: small updates of my own.
4591 * THANKS: 2.7 -> 2.8.
4593 2006-04-11 Graham Percival <gpermus@gmail.com>
4595 * scm/define-context-properties.scm: typo.
4597 * Documentation/user/ : many more small updates.
4599 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4601 * scm/define-music-types.scm: disposed "docme".
4603 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4605 * lily/hairpin.cc: make niente circles a bit smaller.
4607 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4609 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4610 get-pfa and get-*-fonts targets.
4612 2006-04-10 Graham Percival <gpermus@gmail.com>
4614 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4615 music-glossary, programming-interface: more minor fixes
4618 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4620 * scm/define-context-properties.scm: another old \property update.
4621 This time tested for compiling!
4623 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4625 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4627 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4629 * scm/define-context-properties.scm (all-user-translation-properties):
4630 * Documentation/user/global.itely (Page formatting): Compile fix.
4632 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4634 * Documentation/user/advanced-notation.itely (Polymetric
4635 notation): Update the example to use the "+" symbol and add link
4636 to input/test/compound-time.ly.
4638 2006-04-08 Graham Percival <gpermus@gmail.com>
4640 * scm/define-grob-properties.scm: clarify docs for #'direction.
4642 * scm/define-context-properties.scm: update old \property override.
4644 * Documentation/user/ advanced-notation, global, lilypond-book:
4645 more minor doc updates.
4647 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4649 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4651 * scm/backend-library.scm (search-gs): oops.
4653 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4655 * scripts/lilypond-book.py (output): use base, not filename for href.
4657 * scm/backend-library.scm: only look for gs.
4659 * scripts/lilypond-book.py (output): fix printfilename.
4661 * lily/parser.yy (music_function_musicless_prefix): fold together
4662 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4664 * lily/slur.cc (print): only set font-size if not set yet.
4666 * lily/slur-configuration.cc (add_score): improved layout of debug
4669 2006-04-05 David Feuer <David.Feuer@gmail.com>
4671 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4672 (draw_circle): Hopefully fixed regression.
4673 Improved documentation for several procedures.
4675 2006-03-04 Werner Lemberg <wl@gnu.org>
4677 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4679 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4681 * scripts/musicxml2ly.py (bindir): add dynamic
4684 2006-04-04 Graham Percival <gpermus@gmail.com>
4686 * Documentation/user/ basic-notation, advanced-notation, putting,
4687 instrument-notation, invoking, lilypond, THANKS: another ream of small
4688 fixes from the Doc Helpers.
4690 2006-04-03 David Feuer <David.Feuer@gmail.com>
4692 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4694 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4696 * Cleaned up interfaces between PostScript and Scheme, and moved
4697 computations from PostScript to Scheme:
4699 * music-drawing-routines.ps
4700 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4701 with stroke_and_fill throughout.
4702 (euclidean_length, print_letter, draw_box): Deleted unused
4703 procedures. If someone needs draw_box, implement it using
4704 draw_round_box; don't duplicate code.
4705 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4706 Refactored/cleaned up interfaces.
4709 * output-ps.scm: reordered arguments to PostScript functions to
4710 match new interfaces
4711 (glyph-string): Rewrote glyph-string.
4712 (grob-cause): Replaced string-append with format.
4713 (repeat-slash): Rewrote to do computation here.
4714 (round-filled-box): Rewrote to do computation here.
4716 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4718 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4720 * stepmake/stepmake/toplevel- targets.make: print help info about
4723 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4725 * input/regression/hairpin-circled.ly: new file
4727 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4729 * lily/hairpin.cc (print): add support for circled tip
4731 * scm/define-grob-properties.scm: add circled-tip parameter
4733 * scm/define-grobs.scm: init circled-tip to false
4735 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4737 * scm/music-functions.scm (quote-substitute): set
4740 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4742 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4745 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4747 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4749 2006-03-31 David Feuer <david.feuer@gmail.com>
4751 * scm/framework-ps.scm:
4753 * scm/output-ps.scm: glyph-string now produces smaller, more
4754 readable, and probably faster PostScript. Several findfont
4755 scalefont setfont instances changed to selectfont
4756 Hacked-up string-appends changed to formats.
4758 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4760 2006-03-30 Graham Percival <gpermus@gmail.com>
4762 * scm/lily-library.scm: make "no version" warning message more polite.
4764 * lily/music.cc: add double quotes to failed octave check.
4766 * Documentation/user/ advanced-notation, changing-defaults,
4767 instrument-notation, invoking, music-glossary: whole bunch of minor
4770 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4772 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4773 $(buildscriptdir) iso. depth.
4775 * VERSION (PACKAGE_NAME): release 2.9.1
4777 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4779 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4781 * VERSION (PATCH_LEVEL): bump version number.
4783 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4786 * lily/pango-font.cc (pango_item_string_stencil): use
4789 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4790 $(outdir)/emmentaler-%.svg): remove canary.
4792 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4793 glyphnames if we have a ttf font.
4795 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4797 * Documentation/user/advanced-notation.itely (Font selection):
4798 Corrected reference to the font-family-override.ly example.
4800 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4802 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4803 stem-tremolo object in the stem (or else the stem might not be
4806 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4808 * lily/ttf.cc (print_trailer): only print existing glyphs.
4810 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4812 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4813 position the tremolo based on the position of the notehead.
4815 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4816 notes and update the texidoc line with the new positioning rules.
4818 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4820 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4822 * scripts/lilypond-book.py (Module): set default for linewidth if
4825 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4827 * VERSION (PACKAGE_NAME): release 2.9.0.
4829 * input/regression/stem-tremolo-position.ly: new file.
4831 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4833 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4835 * lily/stem-tremolo.cc (print): position
4836 the tremolo depending only on the end of the stem
4837 and not on the notehead
4838 (raw_stencil): center, on the middle staff line, the
4839 flag that is closest to the end of the stem (previously
4841 (calc_width): add this callback to shorten a tremolo when
4842 it is beamed or it is stemup with a flag
4843 (style): add this callback to make a tremolo rectangular when
4844 it is beamed or it is stemup with a flag
4845 (rotated_box): this is like Lookup::beam but makes a rotated
4846 rectangle instead of a parallelogram
4848 * lily/stem.cc (calc_stem_info): make sure the stem
4849 is long enough to fit the tremolo
4850 (calc-length): reduce the length of tremolo stems since the
4851 tremolo code is now capable of better positioning
4853 * scm/define-grobs.scm: make calc_width the default beam-width
4854 callback for stem-tremolo and add the style callback
4856 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4858 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4861 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4863 * lily/ttf.cc (make_index_to_charcode_map): restore old
4866 2006-03-28 Werner Lemberg <wl@gnu.org>
4868 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4870 2006-03-28 Graham Percival <gpermus@gmail.com>
4872 * THANKS: update for 2.9, add section for Documentation helpers.
4874 * Documentation/topdocs/NEWS.tely: compile fix.
4876 * Documentation/user/ basic-notation, global, advanced-notation,
4877 examples.itely: minor fixes from mailist.
4879 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4881 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4884 * lily/ttf.cc (print_trailer): use it.
4886 * lily/pango-font.cc (get_unicode_name): new function.
4888 * lily/ttf.cc (make_index_to_charcode_map): move function from
4890 (print_trailer): substitute uniXXXX name if applicable.
4892 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4893 (pango_item_string_stencil): use it to generate uniXXXX names.
4895 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4896 note heads, for uniform widths in shape note output.
4897 (overdone_heads): hmm. remove them again.
4899 * scripts/lilypond-book.py (output): add links to filenames.
4901 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4903 * lily/note-collision.cc (get_clash_groups): only consider when
4904 Note_column::dir <> CENTER.
4906 * scripts/lilypond-book.py (get_option_parser): init output_name
4909 2006-03-24 Graham Percival <gpermus@gmail.com>
4911 * Documentation/topdocs/NEWS.tely: add @end itemize
4913 * Documentation/user/ global, advanced-notation: minor
4916 2006-03-23 Graham Percival <gpermus@gmail.com>
4918 * Documentation/user/ lilypond.tely, music-glossary,
4919 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4921 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4923 * mf/GNUmakefile: don't install .enc files.
4925 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4927 * VERSION (PATCH_LEVEL): bump to 2.9.0
4929 2006-03-22 Graham Percival <gpermus@gmail.com>
4931 * Documentation/user/advanced-notation.itely: minor fixes
4934 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4936 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4938 * branch lilypond_2_8
4940 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4942 * scripts/lilypond-book.py (samefile): new function, for windoze
4945 2006-03-21 Graham Percival <gpermus@gmail.com>
4947 * ly/engraver-init.ly: add info about StaffGroup.
4949 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4951 * input/regression/stem-direction-context.ly: idem.
4953 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4957 * input/regression/page-layout-twopass.ly: comment out \markup so
4960 * lily/instrument-name-engraver.cc (finalize): add to instrument
4961 name global System. This also fixes chopped instrument names, but
4962 doesn't crash when there are slurs/beams.
4964 * lily/slur-configuration.cc (add_score): disallow negative slur
4967 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4969 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4971 * lily/instrument-name-engraver.cc (process_music): kludge: add
4972 InstrumentName spanner to axis group of left bound. Fixes chopped
4973 off instrument names in EPS images.
4975 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4977 * scripts/abc2ly.py (option_parser): update to 2.7.40
4979 2006-03-20 Graham Percival <gpermus@gmail.com>
4981 * THANKS: move small doc contributors to SUGGESTIONS.
4983 * Documentation/user/ basic-notation, advanced-notation,
4984 global: small changes from mailist.
4986 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4988 * Documentation/user/advanced-notation.itely (Text marks): update
4989 for new rehearsalMarkAlignSymbol convention.
4991 * VERSION (PATCH_LEVEL): bump version.
4993 * input/test/instrument-name-align.ly: new file.
4995 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4997 * input/test/instrument-name-align.ly: new file. Document how to
4998 align instrument names.
5000 * lily/mark-engraver.cc: remove properties.
5002 * scm/define-context-properties.scm
5003 (all-user-translation-properties): remove align symbol properties
5004 for barnumber/reh. mark.
5006 * lily/break-align-interface.cc (self_align_callback): new
5007 interface, new function. Look at complete alignment. This handles
5008 tunable break alignments in case break-align-symbols are missing.
5010 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
5012 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
5014 * python/convertrules.py (conv): mark/bar number alignment rule.
5016 * lily/break-align-interface.cc (calc_positioning_done): also
5017 store offset from last visible break-alignment to its
5018 neighbor. This makes alignment on non-visible objects more reliable.
5020 * po/lilypond.pot (Module): ran po-replace.
5022 * input/regression/tie-single-manual.ly (Module): new file.
5024 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5025 look at has_manual_position_.
5026 (from_ties): set has_manual_position_ if tie has staff-position set.
5028 * lily/tuplet-bracket.cc (calc_positions): idem.
5030 * lily/tuplet-number.cc (print): don't print tupletnumber if it
5033 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
5035 * scm/define-markup-commands.scm (smallCaps): new markup command
5036 for turning a text to small caps using smaller font size and upper
5039 2006-03-17 Graham Percival <gpermus@gmail.com>
5041 * Documentation/user/ examples, instrument-notation,
5042 advnaced-notation: minor fixes from mailist.
5044 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5046 * Documentation/user/tutorial.itely (First steps): change example
5049 2006-03-17 Graham Percival <gpermus@gmail.com>
5051 * Documentation/user/ examples, advanced: minor changes from mailist.
5053 * THANKS: add Geoff Horton, for documentation stuff.
5055 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5057 * python/lilylib.py (system): revert have_select kludge.
5059 * Documentation/user/tutorial.itely (Commenting input files):
5060 update version numbers in doc.
5062 * scm/define-grob-interfaces.scm (multi-measure-interface): add
5063 bound-padding to multi-measure-interface
5065 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5067 * input/test/engraver-example.ily: update version number.
5069 * VERSION (PACKAGE_NAME): release 2.7.39
5071 * lily/note-spacing.cc (get_spacing): heighten threshold where
5072 accidentals/arpeggios influence previous spacing fully.
5074 * lily/rest.cc (y_offset_callback): only use direction if
5075 staff-position wasn't set before.
5077 * lily/bar-number-engraver.cc: add support for
5078 barNumberAlignSymbol.
5079 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
5081 * lily/pointer-group-interface.cc (set_ordered): new function.
5082 (add_unordered_grob): new function.
5084 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5085 to ordered, unless the opposite has been proved. This fixes
5086 random reordering of large object groups across linebreaks,
5089 * lily/main.cc (do_chroot_jail): printf format fix.
5091 * lily/tie-formatting-problem.cc (generate_configuration):
5092 multiply y-shift for dot with direction.
5094 * scm/define-markup-commands.scm (note-by-number): put (magstep
5095 size) in y-attach too.
5097 * Documentation/topdocs/NEWS.tely (Top): show override.
5099 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5100 direction for stems.
5102 2006-03-15 Graham Percival <gpermus@gmail.com>
5104 * Documentation/user/ changing-defaults, global: minor
5107 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5109 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5111 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5112 breakable items after uniformly stretched notes.
5114 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5115 outline with outer edge of note heads. This prevents infinity
5116 problems with tied whole notes.
5118 * scripts/lilypond-book.py (do_file): use os.popen
5120 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5122 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5124 * Documentation/user/invoking.itely: Add ragged-right to bug report
5127 2006-03-14 Graham Percival <gpermus@gmail.com>
5129 * Documentation/user/global.itely: small fix from mailist.
5131 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5133 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5134 file descriptor returned by tempfile.mkstemp() when writing
5135 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5138 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5140 * po/fi.po: newline bugfix.
5142 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5144 * scm/paper.scm (paper-alist): Rounding fixes.
5146 2006-03-13 Graham Percival <gpermus@gmail.com>
5148 * Documentation/user/ changing-defaults, instrument-notation,
5149 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5151 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5155 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5157 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5160 * python/lilylib.py (print_environment): move ps_page_count to
5163 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5165 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5167 * scm/framework-ps.scm (embed-document): new function. Use to
5170 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5172 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5174 * Documentation/user/instrument-notation.itely (Setting simple
5175 songs): Added \book{...} around the full example, so the separate
5176 markups are included in the printed example.
5178 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5180 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5183 * python/lilylib.py (system): rewrite system() using
5184 subprocess. Remove >& redirection trickery.
5186 2006-03-11 Graham Percival <gpermus@gmail.com>
5188 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5189 notation-appendices.itely: minor fixes from mailist.
5191 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5193 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5194 unsplit man also needs images.
5196 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5198 * VERSION (PACKAGE_NAME): 2.7.38 released.
5200 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5202 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5205 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5207 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5208 respects the Score.skipTypesetting property.
5210 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5212 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5213 Prolog. No %%EOF after CFF file.
5215 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5217 * lily/constrained-breaking.cc (get_max_systems): used to return a
5219 (combine_demerits): use pointers to reduce copying data
5220 (calc_subproblem): idem
5221 (get_page_penalty): add page turn penalties
5223 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5225 * Documentation/user/invoking.itely (Invoking lilypond): better
5226 explanation of -e usage.
5228 * lily/main.cc (main_with_guile): don't append to
5229 init_scheme_code_string
5231 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5233 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5235 * scripts/convert-ly.py (do_options): don't print help for
5238 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5239 @code and @example. Update from texinfo.tex from CVS.
5241 2006-03-08 Graham Percival <gpermus@gmail.com>
5243 * Documentation/user/scheme-tutorial.itely: clarifies distances
5244 measured in staff-spaces.
5246 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5248 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5249 consider[k] is true.
5251 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5253 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5254 consider columns that have originals. Unifies spacing for mm
5255 rests around line breaks.
5257 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5258 (set_text_rods): idem.
5259 (calculate_spacing_rods): new function: share code between
5260 set_text_rods and set_spacing_rods.
5261 (set_text_rods): take extents of bounds into account.
5263 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5265 * Documentation/user/basic-notation.itely (Writing music in
5266 parallel): don't use relative.
5268 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5270 * ly/music-functions-init.ly (Module): add shiftDurations
5272 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5274 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5276 * ly/engraver-init.ly: init vocalName to nil.
5278 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5280 * scm/music-functions.scm (music->make-music): bugfix,
5281 KeyChangeEvents are now handled correctly.
5283 * scripts/lilypond-book.py: Add --debug option.
5285 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5287 * python/lilylib.py: add tempfile.
5289 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5291 * VERSION (PACKAGE_NAME): release 2.7.37
5293 * python/lilylib.py (ps_page_count): remove make_ps_images().
5294 (ps_page_count): remove mkdir_p
5295 (system): remove cleanup_temp.
5296 (exit): remove lilypond_version_(check)
5297 (error_log): remove pseudo_filter_p
5302 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5305 * lily/accidental-engraver.cc (make_standard_accidental): only add
5306 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5308 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5309 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5310 Make incompatibilities.
5312 * scm/output-ps.scm (grob-cause): replace backslashes by /
5313 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5315 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5317 * cygwin/GNUmakefile: Install fixes.
5319 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5321 * lily/note-head.cc (head::get_balltype): Compile fix.
5323 * flower/file-name.cc (dos_to_posix): Flower string fix.
5325 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5327 * python/lilylib.py: pychecker cleanups.
5329 * scripts/lilypond-book.py
5330 (Lilypond_snippet.output_print_filename): pychecker cleanups
5332 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5334 * python/lilylib.py (underscore): remove identify() , warranty()
5336 * ps/music-drawing-routines.ps: change Border routine for GSView
5339 * lily/stem.cc (height): use quantize-positions. This triggers
5340 set_stem_lengths, so scripts on beamed stems are handled correctly.
5342 * lily/side-position-interface.cc (aligned_side): check if edges
5343 of script are inside staff. Fixes accent of edge of the staff.
5345 * input/regression/staccato-pos.ly: more examples.
5347 * stepmake/aclocal.m4 (depth): fix bashism.
5349 * lily/lyric-combine-music-iterator.cc: move from
5350 new-lyric-combine-iterator.cc
5351 (process): add pending_grace_lyric_ member to delay lyrics on
5354 * lily/system-start-text.cc (print): suicide if we don't have any
5355 elements. Fixes hara kiri'd instrument names.
5357 * scripts/mup2ly.py (Module): remove.
5359 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5361 * Documentation/user/global.itely (A single music expression):
5362 close @lilypond properly
5364 * lily/volta-bracket.cc (modify_edge_height): change from
5365 after_line_breaking_callback. Suicide last bracket if appropriate.
5367 * python/lilylib.py: strip getopt support
5369 * scripts/etf2ly.py (do_options): use optparse
5371 * scripts/midi2ly.py: optparse, strip lilylib copy.
5373 * scripts/abc2ly.py (voices): use optparse.
5375 * stepmake/stepmake/generic-vars.make: new function absdir.
5377 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5379 * scripts/lilypond-book.py (find_file): use global_options for
5382 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5385 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5387 * python/lilylib.py (get_global_option): ughness for extracting
5388 global options from lilylib.
5389 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5391 * scripts/lilypond-book.py (get_option_parser): use optparse for
5392 option handling. Put options in global_options variable.
5394 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5396 * Documentation/index.html.in: clarify.
5398 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5400 * scm/layout-page-layout.scm (write-page-breaks): add a
5401 music-system-heights property to the page layout output.
5403 * scm/page.scm (make-page-stencil): take footer into account when
5404 computing the 'space-left page property
5405 (annotate-space-left): take footer into account when annonating
5408 2006-02-28 Graham Percival <gpermus@gmail.com>
5410 * Documentation/user/ advanced-notation, global: more (final)
5411 docs for music expressions, removed special fermatas.
5413 2006-02-27 Graham Percival <gpermus@gmail.com>
5415 * Documentation/user/ basic-notation, global: minor changes
5418 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5420 * scm/framework-ps.scm:
5421 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5422 layer for inf? and nan? from framework-ps to lily-library.
5424 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5426 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5427 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5429 * buildscripts/substitute-encoding.py (Module): remove file.
5431 * mf/GNUmakefile: more PFA strippage.
5433 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5435 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5438 * scm/framework-ps.scm: remove font name munging.
5440 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5442 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5444 * scm/markup.scm (define-markup-command): change
5445 def-markup-command to define-markup-command
5447 * scm/music-functions.scm (define-music-function): change
5448 def-music-function to define-music-function.
5450 * python/convertrules.py (conv): rules for def-music-function
5451 and def-markup-commands
5453 * Documentation/user/programming-interface.itely,
5454 input/no-notation/display-lily-tests.ly,
5455 input/regression/lily-in-scheme.ly,
5456 input/regression/markup-user.ly,
5457 input/regression/music-function.ly, input/regression/tie-chord.ly,
5458 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5459 ly/gregorian-init.ly: use new macro names (define-music-function,
5460 define-markup-command).
5462 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5464 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5465 (output): add comments to lp-book latex output.
5467 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5470 2006-02-23 Graham Percival <gpermus@gmail.com>
5472 * Documentation/user/ tutorial, global: minor changes.
5474 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5476 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5477 blocks (for make 3.80)
5479 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5480 \notemode so that user should not have to explicitely type it.
5482 * scm/define-music-display-methods.scm: various
5483 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5486 * input/no-notation/display-lily-tests.ly: new tests for
5487 \applyOutput and \applyContext
5489 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5491 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5492 changed it slightly so that the number of systems returned by
5493 solve () will be the same as the last value passed to resize
5494 (). I've also added more documentation, removed casts, fixed style
5495 problems and put in some recovery if constraints aren't satisfied."
5497 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5499 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5500 for emacs < 22 compatibility.
5501 (count-rexp): Use it.
5502 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5503 substring juggling (Milan Zamazal).
5505 2006-02-23 Graham Percival <gpermus@gmail.com>
5507 * Documentation/user/ basic-notation, advanced-notation,
5508 global.itely, invoking.itely, tutorial,itely:
5509 minor fixes from mailist.
5511 * scm/define-markup-commands.scm: improve docs of \filled-box.
5513 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5515 * Documentation/index.html.in: changes concern the previous release.
5517 * input/regression/+.ly: cultivate typographical terminology.
5519 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5521 * scm/define-grob-interfaces.scm (parentheses-interface): add
5522 padding to parentheses-interface.
5524 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5525 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5527 * VERSION (PATCH_LEVEL): release 2.7.36
5529 * lily/slur.cc: add avoid-slur (ugh.)
5531 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5532 intersection gets smaller. This fixes slurs over extreme points.
5534 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5535 stems with neutral-direction set.
5537 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5539 * lily/open-type-font.cc (load_table): format error.
5541 * lily/change-iterator.cc (process): format fix.
5543 * flower/include/international.hh (_f): idem.
5545 * flower/include/std-string.hh: add format printf attribute.
5547 * scm/define-grobs.scm (all-grob-descriptions): height of all
5548 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5550 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5553 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5555 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5557 * input/regression/: upgraded syntax for some files.
5559 * THANKS: Add bughunters.
5561 2006-02-22 Graham Percival <gpermus@gmail.com>
5563 * Documentation/user/ invoking.itely, advanced-notation.itely,
5564 global.itely: long-awaited "let's make chapter 10 not suck"
5565 update. Rearrange chapter 10; now called "global issues",
5566 addresses file structure, etc. Some info from other files
5567 moved into global.itely.
5569 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5571 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5572 catch trill-span-event notes.
5574 * Documentation/user/examples.itely (Ancient notation templates): typo.
5577 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5579 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5581 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5583 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5585 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5586 froum Laissez_vibrer_engraver.
5588 * ly/declarations-init.ly (repeatTie): add \repeatTie
5590 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5592 * scm/define-grob-properties.scm (all-user-grob-properties): add
5593 head-direction property.
5595 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5596 from_lv_ties. Take head direction argument.
5598 * lily/semi-tie-column.cc: rename from
5599 laissez-vibrer-tie-column.cc. Rename class too.
5601 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5604 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5606 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5608 (find_breaks): idem.
5610 2006-02-21 Graham Percival <gpermus@gmail.com>
5612 * Documentation/user/advanced-notation.itely: fixed make-moment]
5615 * Documentation/user/basic-notation.itely: more clarification to
5618 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5620 * lily/include/constrained-breaking.hh (class
5621 Constrained_breaking): new file.
5623 * lily/constrained-breaking.cc (resize): new file.
5625 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5627 * Documentation/user/advanced-notation.itely (Clusters): insert
5630 * lily/tie-column.cc (calc_positioning_done): support for
5633 * lily/tie-formatting-problem.cc
5634 (generate_extremal_tie_variations): factor out.
5635 (score_ties_configuration): annotate all tie
5636 (print_ties_configuration): new routine.
5637 (generate_configuration): nudge extremal ties outside of the head
5639 (score_ties_configuration): oops. convert to staff-space before
5640 determining position symmetry.
5642 2006-02-20 Graham Percival <gpermus@gmail.com>
5644 * Documentation/user/*-notation.itely: misc minor editing,
5645 shifting doc sections around.
5647 * Documentation/user/*-notation-itely, global.itely,
5648 changing-defaults.itely: added new stuff from NEWS.
5650 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5654 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5656 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5657 lilypond --verbose for lp-book.
5659 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5660 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5662 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5663 $(buildscript-dir) iso. absolute depth.
5665 * buildscripts/genicon.py (dir): thinko.
5667 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5669 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5671 * scm/output-lib.scm: swap darkcyan/darkyellow
5673 * THANKS: Add bughunters.
5675 2006-02-19 Graham Percival <gpermus@gmail.com>
5677 * Documentation/user/programming-interfaces.itely: fixed example.
5679 * Documentation/user/instrument-notation.itely: fix @{ @}.
5681 * scm/script.scm: add avoid-slur for \open.
5683 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5685 * lily/tie-formatting-problem.cc (score_configuration): use
5686 sliding score for min-length.
5688 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5689 spaghetti for icons.
5691 * buildscripts/genicon.py (program_name): new file.
5693 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5695 (generate_configuration): for small ties, also look for collisions
5696 at Y + DIR*h + DELTA_Y.
5697 (get_variations): consider variation for dot positions too.
5699 * lily/side-position-interface.cc (aligned_side): take abs for
5700 quantized rounded position. Fixes tenuto below staff.
5702 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5703 markers when necessary.
5705 * lily/program-option.cc (internal_set_option): add
5706 strict_infinity_checking option.
5708 * scm/output-lib.scm (cyan): swap yellow and cyan.
5710 2006-02-19 Graham Percival <gpermus@gmail.com>
5712 * darwin.patch: trivial linenumber update.
5714 * Documentation/user/ {various}: `\context foo = named' changed
5715 to `\new foo = "name"' in docs.
5717 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5719 * scm/stencil.scm (annotate-y-interval): use it.
5721 * scm/lily-library.scm (interval-sane?): new function.
5723 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5726 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5729 * flower/include/std-vector.hh (iterof): add iterof macro.
5731 * lily/enclosing-bracket.cc (width): new function.
5733 * lily/align-interface.cc (align_elements_to_extents): reinstate
5736 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5738 * Documentation/index.html.in: fix spelling: thankyous.
5740 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5742 * lily/lyric-hyphen.cc: typo.
5744 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5746 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5747 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5750 * VERSION: release 2.7.35
5752 * lily/beam.cc (get_default_dir): oops. Take abs () for
5754 (get_default_dir): use extreme position criterion only in absence
5755 of forced stem directions.
5757 * VERSION (PATCH_LEVEL): bump VERSION.
5759 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5760 dependencies. Necessary for -jX builds.
5762 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5764 * lily/relocate.cc (setup_paths): Yet another const fix.
5766 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5768 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5770 * lily/relocate.cc (setup_paths): oops.
5772 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5774 * Documentation/index.html.in: order links: html before PDF.
5776 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5778 * lily/tie-column-format.cc (Module): remove.
5780 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5782 * lily/text-spanner.cc (print): idem.
5784 * lily/dynamic-text-spanner.cc (print): only print line if longer
5787 * lily/auto-change-iterator.cc (change_to): formatting.
5789 * lily/beam.cc (get_default_dir): take extreme note head as input
5792 * lily/tie.cc (get_default_dir): only look directions for visible
5795 * lily/side-position-interface.cc (aligned_side): oops. Don't
5796 mutiply with direction. This fixes quantized (staccato, tenuto)
5797 scripts below notes.
5799 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5800 direction. Fixes c-lyrics-center-align.ly
5802 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5804 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5807 * lily/std-string.cc:
5808 * lily/include/std-vector.hh (split_string): Move and rename from
5809 lily/include/misc.hh, lily/misc.cc. Update callers.
5811 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5813 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5815 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5817 * flower/test-file.cc: New file.
5819 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5822 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5824 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5826 * flower/include/file-storage.hh: remove file.
5828 * lily/include/midi-item.hh (class Midi_track): idem.
5830 * lily/include/source.hh (class Sources): idem.
5832 * lily/include/performance.hh (class Performance): use vector
5835 * flower/include/cons.hh (class Cons): remove file.
5837 * flower/include/flower-proto.hh: remove template cruft.
5839 * lily/include/font-metric.hh: use size_t not vsize for indices.
5841 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5844 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5846 * lily/include/paper-book.hh (class Paper_book):
5847 make get_system_specs() public.
5849 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5850 the force=10000 case if we don't have a current-best.
5852 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5855 * flower/include/flower-proto.hh: remove outdated templates.
5857 * scm/page.scm: use annotate-spacing
5859 2006-02-15 Graham Percival <gpermus@gmail.com>
5861 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5863 * THANKS: moved Erlend Aasland to contributors.
5865 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5867 * config.hh.in: remove HAVE_PANGO_16
5869 * lily/tuplet-bracket.cc (calc_positions): multiply with
5870 staff-space for beam case. This fixes tuplets+beams on scaled
5873 * config.hh.in: remove all Kpathsea related defines.
5875 * lily/dot-column.cc (side_position): reach stem via dots->
5876 head->stem. Inspect all stems for dot collisions.
5878 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5881 * lily/bar-number-engraver.cc (process_music): document function
5884 * lily/score.cc (default_rendering): add pscore, not systems
5887 * lily/paper-book.cc (get_system_specs): separate generation of
5890 * flower/include/std-vector.hh: don't include config.hh
5892 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5894 * flower/include/std-vector.hh: Better wrapper compatibility with
5897 * flower/include/flower-proto.hh: Remove cheap forward declaration
5900 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5902 2006-02-14 Graham Percival <gpermus@gmail.com>
5904 * Documentation/user/invoking.itely: add warning about command line.
5906 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5908 * lily/include/lily-proto.hh: add Prob, rm Page.
5910 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5912 * VERSION: release 2.7.34
5914 * lily/relocate.cc (framework_relocation): show canary if
5915 GHOSTSCRIPT_VERSION undefined.
5917 * GNUmakefile.in: remove $(VERSION) symlink.
5919 * lily/relocate.cc (setup_paths): add +
5921 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5923 * Documentation/index.html.in: specify sizes for all big HTML pages.
5925 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5927 * config.hh.in: remove @FRAMEWORKDIR@
5929 * lily/system-start-text.cc (get_stencil): new file: separate out
5930 system-start-delimiter text support.
5932 * input/**ly: replace \context with \new where appropriate.
5936 * lily/slur-scoring.cc (get_base_attachments): use
5937 robust_relative_extent. This fixes problems with empty paper-columns.
5939 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5941 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5943 * scm/define-music-properties.scm (all-music-properties):
5944 create-new property.
5946 * lily/context-specced-music-iterator.cc (construct_children):
5947 inspect 'create-new property iso. magical $uniqueContextId context
5950 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5952 * lily/context-key-manager.cc (Module): new file. Encapsulate
5953 object key generation.
5955 * lily/include/context-key-manager.hh (Module): new file.
5957 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5959 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5962 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5964 (reloc_b): excise --enable-framework-dir
5966 * lily/relocate.cc (framework_relocation): use getenv
5967 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5969 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5971 * flower/include/std-string.hh:
5972 * flower/include/std-vector.hh: Finish std:: conversion; move
5973 flower extensions from std:: namespace. Update users.
5975 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5976 their expansion to vector<*>. Update users.
5978 2006-02-10 Graham Percival <gpermus@gmail.com>
5980 * Documentation/user/invoking.itely: add example to File structure.
5982 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5983 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5985 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5987 * ly/paper-defaults.ly: typo.
5989 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5990 set_parent() for parentheses. This will make it show up in bbox
5993 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5994 ly:grob-common* functions.
5996 * lily/grob-scheme.cc (LY_DEFINE):
5997 ly:grob-common-refpoint-of-array: new function
5998 ly:grob-common-refpoint: new function
5999 ly:grob-relative-coordinate: new function
6001 * lily/instrument-name-engraver.cc (process_music): use
6002 Text_interface::is_markup(). This fixes \markup on instrument names.
6004 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
6007 * lily/slur.cc (print): idem.
6009 * lily/tie.cc: add line-thickness for ties.
6011 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
6013 * scm/output-svg.scm: Document diversion from GNU coding standards
6014 as a workaround for a bug in Microsoft Internet Explorer.
6016 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6018 * lily/instrument-name-engraver.cc (process_music): use
6019 is_markup() iso. is_string()
6021 * Documentation/user/changing-defaults.itely (Module): add menu entry.
6023 * lily/percent-repeat-engraver.cc (process_music): only look at
6024 main_part_ for % repeats.
6026 * lily/stem-tremolo.cc (get_beam_translation): new function.
6027 (calc_slope): new function.
6028 (height): don't use real slope.
6030 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
6032 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
6033 new connect-to-neighbor, control-points and staff-padding
6034 properties to make ligature brackets showing up again.
6036 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6038 * VERSION: release 2.7.33
6040 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
6043 * Documentation/user/changing-defaults.itely (Difficult tweaks):
6044 remove applyOutput example.
6045 (Objects connected to the input): document \tweak, \parenthesize
6047 * lily/relocate.cc (prefix_relocation): allow "current"
6048 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
6049 changing VERSION in a lily tree less painful.
6051 * input/regression/parenthesize.ly: new file.
6053 * scm/output-lib.scm (parenthesize-element): new function.
6055 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
6057 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
6059 * lily/accidental-engraver.cc (make_standard_accidental): reroute
6060 cause: accidentals are caused by note heads, not note events.
6062 2006-02-08 Graham Percival <gpermus@gmail.com>
6064 * darwin.patch: small patch from Erlend, thanks!
6066 * Documentation/user/basic-notation.itely: add stem-neutral example.
6068 * Documentation/user/putting.itely: clarifications.
6070 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6072 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
6073 note, add more guidelines to what should go into NEWS.
6075 * input/sakura-sakura.ly: document how to override font.
6077 * input/regression/font-family-override.ly: doc -dshow-available-fonts
6079 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6081 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6083 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
6085 * scripts/convert-ly.py (lilypond_version_re_str): Move from
6086 convertrules. Add explicit grouping, needed for python2.2.
6088 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
6090 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6092 2006-02-07 Graham Percival <gpermus@gmail.com>
6094 * Documentation/user/global.itely: fix line-width in (text) docs.
6096 * Documentation/user/lilypond-book.itely: same.
6098 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6100 * VERSION (PACKAGE_NAME): release 2.7.32
6102 * Documentation/topdocs/NEWS.tely (Top): document new variable
6105 * flower/include/array.icc (Message): remove file.
6107 * flower/include/std-vector.hh: make sure vsize and VPOS are
6108 defined for binary_search_bounds().
6110 * flower/std-string.cc (std): add to_string(long unsigned).
6112 * configure.in (gui_b): excise std_string option.
6113 (gui_b): excise std_vector option.
6115 * flower/string.cc (Module): excise flower array & string
6117 * flower/include/std-string.hh: excise flower string.
6119 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6121 * python/convertrules.py (lilypond_version_re_str): require
6122 only numbers and dots in \version string.
6124 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6126 * lily/system-start-delimiter.cc (print): allow style = text too.
6128 * lily/system-start-delimiter-engraver.cc
6129 (acknowledge_system_start_text): new function, also add add to
6130 support of system-start-text (instrument names). This fixes
6131 instrument names on piano staves.
6133 * lily/instrument-name-engraver.cc: rewrite. Use
6134 system-start-delimiter approach. This save memory and cpu.
6136 * scm/define-grobs.scm (all-grob-descriptions): remove
6137 instrument-name from break-alignment.
6139 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6141 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6143 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6146 * configure.in (std_vector): On by default.
6148 * lily/include/font-metric.hh:
6149 * lily/include/tfm-reader.hh:
6150 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6153 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6155 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6157 * VERSION (PACKAGE_NAME): 2.7.31
6159 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6160 EPS edge at 0, but take minimum with left-overshoot. This fixes
6161 cut off system start delims.
6163 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6164 hack: add to axis group if not added yet. This fixes hara kiri'd
6167 * lily/hara-kiri-group-spanner.cc
6168 (force_hara_kiri_in_y_parent_callback): fix signatures.
6170 * lily/hairpin.cc (print): check next hairpin to see whether or
6171 not to be continuing.
6173 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6175 * Remove trailing whitespace from makefiles.
6177 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6180 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6182 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6184 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6186 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6188 * configure.in: Use it.
6190 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6192 * scm/music-functions.scm (pitch-of-note): new function.
6194 * ly/music-functions-init.ly: add \octave and \addquote
6196 * lily/parser.yy (music_function_chord_body): softcode \octave.
6197 (lilypond_header): softcode \addquote
6199 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6201 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6202 array.hh, parray.hh at all. Getting ready to flip the
6205 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6207 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6210 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6212 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6214 * flower/include/array.hh: typo.
6216 2006-02-02 Graham Percival <gpermus@gmail.com>
6218 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6220 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6222 * flower/include/pqueue.hh: Derive from std::vector.
6224 * flower/include/parray.hh: Conform to std::vector interface.
6227 2006-02-02 Graham Percival <gpermus@gmail.com>
6229 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6231 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6233 * flower/file-path.cc (is_file): remove if 0 section.
6235 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6236 selecting afii61352.
6238 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6240 * flower/include/std-vector.hh (boundary): Oops, reverse.
6242 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6243 remove superfluous `d'.
6245 * flower/include/std-vector.hh (boundary, top): Detach from class.
6246 Remove empty vector shell.
6248 * flower/include/array.hh (reverse, swap): Detach from class.
6251 * flower/include/std-vector.hh
6252 * flower/include/array.hh (concat): Globally change to insert ().
6254 * flower/include/std-vector.hh
6255 * flower/include/parray.hh
6256 * flower/include/array.hh (elem, elem_ref): Globally replace by
6259 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6261 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6263 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6264 anticipate on identifier substitutions.
6266 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6268 * flower/include/std-vector.hh (insert): Remove, replace by
6269 std::vector interface. Update callers.
6271 * flower/include/array.icc (insert): Change signature to
6272 match std::vector interface.
6274 * flower/include/array.icc (vector_sort): Bugfix.
6276 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6278 * lily/parser.yy (output_def_head_with_mode_switch): new
6279 production. Result: dashes and underscores may be used in the
6282 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6284 * python/convertrules.py (conv): oops. One slash too much.
6286 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6288 * flower/include/std-vector.hh (sort): Remove, replace by
6289 ::vector_sort. Update callers.
6291 * flower/include/std-vector.hh (slice): Remove. Update callers.
6294 * flower/test-std.cc (vector_sort): New test.
6296 2006-02-01 Graham Percival <gpermus@gmail.com>
6298 * Documentation/user/putting.itely: fixes from Erik.
6300 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6302 * flower/test-std.cc: Add simple unit test for vector migration.
6304 * stepmake/stepmake/test*: Unit test support.
6306 * flower/include/std-vector.hh (del): Remove. Use erase (),
6309 * flower/include/array.hh (begin, end): Add.
6312 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6314 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6315 std::string not String.
6317 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6320 * lily/prob.cc (Prob): copy type_ too.
6322 * lily/lily-guile.cc (mangle_cxx_identifier): new
6323 function. Class_bla::foo_bar_[px] ->
6324 ly:class-bla::foo-bar[?!]. Changes throughout
6326 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6328 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6330 * lily/beam.cc (calc_direction): take dir from visible stem in
6333 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6335 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6336 Fix -1, >=0 boundary checks for unsigned vsize.
6338 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6339 loop for unsigned vsize.
6341 * configure.in (--enable-std-vector): New option.
6342 (--enable-std-string): On by default.
6344 * flower/include/std-vector.hh: New file. Enable switch to
6345 std::vector, update client code.
6347 2006-01-30 Graham Percival <gpermus@gmail.com>
6349 * scm/document-translation.scm: clarify "this context is also
6350 known as". Thanks, Werner!
6352 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6354 * Documentation/user/invoking.itely: small fix from Don.
6356 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6358 * scm/lily.scm (define-scheme-options): rename option
6359 preview-include-book-title to book-title-preview
6360 (define-scheme-options): move force-eps-font-include (from paper
6361 block) to eps-font-include -d option.
6363 * VERSION (PATCH_LEVEL): release 2.7.30
6365 * input/bach-schenker.ly (staffPiano): new file.
6367 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6369 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6372 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6374 * ps/lilyponddefs.ps: remove start-system, stop-system,
6375 start-page fluff. This saves putting { } code on the stack, fixing
6376 stack overflows when including EPS files.
6378 2006-01-29 Graham Percival <gpermus@gmail.com>
6380 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6382 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6384 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6386 2006-01-28 Graham Percival <gpermus@gmail.com>
6388 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6390 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6392 * input/mutopia/claop.py: Update.
6394 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6396 * input/regression/completion-heads.ly (texidoc): fix.
6398 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6400 * lily/tie-formatting-problem.cc
6401 (set_ties_config_standard_directions): use abs iso fabs for ints.
6403 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6405 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6406 little less than noteheight, to prevent overlaps in chords.
6408 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6409 head, and fudge stem-attachment.
6411 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6413 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6415 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6417 * lily/main.cc (main): Debugging aid: catch exceptions.
6419 * flower/std-string.cc (to_string): Robustification. Fixes midi
6420 output with std::string.
6422 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6424 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6426 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6428 * Fix -DSTRING_UTILS_INLINED.
6430 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6432 * VERSION (PATCH_LEVEL): release 2.7.29
6434 * lily/relocate.cc (setup_paths): mingw uses std string too.
6436 * lily/*.cc: various fixes for substr(ARG).
6438 * lily/sustain-pedal.cc (print):
6440 * flower/file-name.cc (slashify): use std strings.
6442 * flower/string-convert.cc: remove publib.h
6444 * scm/define-markup-commands.scm (verbatim-file): new markup
6445 command \verbatim-file
6447 * Documentation/topdocs/NEWS.tely: fixup URLs
6449 * input/regression/alignment-vertical-manual-setting.ly (Module):
6452 * lily/align-interface.cc (align_elements_to_extents): overwrite
6453 translations with numbers in alignment-offsets from left bound
6455 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6456 (page-translate-systems): new function: take into account Y-offset.
6458 * Documentation/topdocs/NEWS.tely (Top): document new features.
6460 * input/regression/page-layout-manual-position.ly (Module): new
6463 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6465 * flower/file-path.cc (path::parse_path): Oops.
6467 * Finish std::string interface. For now, use std:: marker
6468 throughout for easy s/r.
6470 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6472 * Documentation/user/putting.itely (Score is a single musical
6474 (Score is a single musical expression): more typos.
6476 * scm/page.scm (annotate-space-left): thinko.
6477 (annotate-page): more thinkos.
6479 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6481 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6482 for different \score blocks separately.
6483 (post-process-pages): put write-page-layout into paper block.
6485 * lily/output-def.cc (get_parser): new file.
6487 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6490 * lily/include/output-def.hh (class Output_def): add parser_ member.
6492 * input/regression/page-layout-twopass.ly (Module): new file.
6494 * scm/lily.scm: remove cpp hack.
6496 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6498 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6500 * GNUmakefile.in (c-clean): New target.
6502 * flower/include/std-string.hh: String/std::string compatibility:
6503 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6506 * flower/rational.cc:
6507 * flower/include/rational.hh:
6510 * flower/include/offset.hh:
6512 * flower/interval.cc:
6513 * flower/include/interval.hh:
6515 * flower/string-convert.cc:
6516 * flower/include/string-convert.hh: Use std::string [interface].
6519 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6521 * Documentation/index.html.in: clean up.
6523 2006-01-25 Graham Percival <gpermus@gmail.com>
6525 * Documentation/user/putting.itely: another new untested doc section.
6527 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6529 * scm/layout-page-layout.scm (write-page-breaks): write
6530 \spacingTweaks #ALIST. Handle grace timing.
6532 * scm/: more imports.
6534 * scm/page.scm (make-page): add footer/header.
6535 (annotate-space-left): revise: only take page argument.
6536 (layout->page-init): new function.
6538 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6539 version of the system/spacing/linebreak hack writing to the output
6541 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6544 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6547 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6549 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6551 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6553 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6554 handling to page.scm
6556 * lily/prob-scheme.cc (LY_DEFINE): new file.
6557 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6559 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6562 * lily/music.cc (derived_mark): derive Music from Prob.
6564 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6566 * lily/prob.cc (Module): Implement Prob (Property Object), object
6567 with shared and r/w property alists.
6569 * lily/include/prob.hh (Module): new file. Declare Prob.
6571 * flower/string.cc: remove is_empty().
6573 * flower/include/string.hh (class String): remove String:: qualifier.
6575 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6576 substitute appropriate functions.
6578 * flower/include/string.hh (class String): remove to_str0 and
6579 is_empty(). S&R everywhere.
6581 2006-01-23 Graham Percival <gpermus@gmail.com>
6583 * Documentation/user/basic-notation.itely: add hairpin
6584 after-linebreak tweak to commonprop.
6586 * Documentation/user/putting.itely: added two new sections.
6588 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6590 * flower/international.cc:
6591 * flower/include/international.hh:
6593 * flower/getopt-long.cc:
6594 * flower/include/getopt-long.hh: Use std::string [interface].
6597 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6599 * stepmake/stepmake/executable-rules.make: Add dependency on
6602 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6604 * flower/file-path.cc:
6605 * flower/include/file-path.hh: Use std::string [interface].
6608 * flower/direction.cc:
6609 * flower/axis.cc: Unused. Remove.
6611 * configure.in (--enable-std-string): New option.
6613 * flower/std-string.cc:
6614 * flower/include/std-string.hh: New file.
6616 * flower/file-name.cc[STD_STRING]:
6617 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6619 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6621 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6623 * scm/define-markup-commands.scm (with-dimensions):
6624 with-dimensions markup command.
6626 * input/test/font-table.ly: use it.
6628 * lily/open-type-font.cc (glyph_list): new function.
6630 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6632 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6634 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6636 * ly/music-functions-init.ly (parallelMusic): new music function
6637 for parallel music entry.
6639 * scm/define-music-properties.scm (all-music-properties): new
6640 'void music property
6642 * scm/music-functions.scm (ly:music-message): make public, to be
6643 used in music function definitions
6645 * scm/lily-library.scm (collect-music-for-book): discard music
6646 when the 'void property is set.
6648 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6650 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6652 * mf/GNUmakefile: idem.
6654 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6656 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6658 * Documentation/user/notation-appendices.itely (The Feta font):
6661 * input/test/font-table.ly: new file. Generate font table within lily.
6663 * Documentation/user/notation-appendices.itely (The Feta font):
6664 use new font-table.ly file.
6666 * stepmake/stepmake/install-out-targets.make
6667 (local-install-outfiles): only create directory if
6668 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6670 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6672 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6674 * VERSION (PACKAGE_NAME): release 2.7.28
6676 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6677 the right font from a Mac dfont.
6678 (write-preamble): don't forget directory, only look at files.
6680 This fixes problems with TTF files in dfonts that don't match
6681 their PostScript names.
6683 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6684 PS name from TTF font.
6686 * input/regression/tie-manual.ly: document new feature.
6688 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6690 * VERSION (MY_PATCH_LEVEL): bump to .28
6692 * Documentation/user/basic-notation.itely (Ties): add tie examples
6695 * lily/tie-formatting-problem.cc (score_ties_configuration):
6696 symmetry penalties for outer ties.
6698 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6700 * lily/tie-formatting-problem.cc (generate_configuration)
6701 (set_manual_tie_configuration): skip non-pair manual
6702 tie-configuration, so you can set individual ties as
6704 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6706 * input/regression/tie-chord.ly: use generateTiePattern to
6709 * lily/tie-formatting-problem.cc (peak_around): new function.
6710 (score_configuration): use sliding criterion for staff line collisions.
6711 (score_configuration): idem for dot collisions.
6712 (generate_configuration): use separate stem_gap for gap to stem.
6714 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6715 separate penalty factors for x and y distance.
6716 (struct Tie_details): separate penalties for tip and center line collisions.
6718 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6720 * lily/tie-formatting-problem.cc (generate_configuration): make
6721 large ties avoid stafflines in the horizontal section.
6722 (score_configuration): use softcoded penalties
6723 (score_aptitude): idem.
6725 * lily/tie-helper.cc (from_grob): softcode tie details
6727 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6729 * lily/staff-symbol-referencer.cc (on_line): rename from
6732 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6734 * ly/music-functions-init.ly: remove duplicate tag.
6736 * lily/include/*.hh: GCC 4.1 fixes.
6738 006-01-16 Erlend Aasland <erlenda@gmail.com>
6740 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6742 * scm/define-music-types.scm: fix bug in desc. string
6743 for OverrideProperty
6745 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6747 * scripts/lilypond-book.py: bugfix
6749 * scm/define-music-types.scm: fix typos.
6751 2006-01-14 Graham Percival <gpermus@gmail.com>
6753 * Documentation/user/ basic-notation.itely, global.itely,
6754 advanced-notation.itely, instrument-notation.itely: small
6755 additions (bugs and commonly tweaked properties).
6757 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6759 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6760 detection of mingw build.
6761 (MINGW_BUILD): opps.
6763 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6765 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6768 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6770 * scm/music-functions.scm (skip->rest): add skip->rest
6772 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6774 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6777 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6778 config dirs. Aids debugging.
6779 (display_config): also display config files.
6781 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6783 * VERSION: release 2.7.27
6785 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6786 for determining bar size.
6788 * lily/staff-symbol.cc (print): place lines at distance line-positions
6790 * scm/define-grob-properties.scm (all-user-grob-properties): add
6793 * lily/staff-symbol.cc (height): new function.
6795 * input/regression/staff-line-positions.ly: new file.
6797 2006-01-06 Graham Percival <gpermus@gmail.com>
6799 * input/test/add-staccato.ly: remove reference to old file.
6801 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6803 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6804 lilypond binary too.
6806 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6808 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6810 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6812 * scripts/midi2ly.py: Bugfix: Declare datadir.
6814 * make/ly-rules.make:
6815 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6816 that seems to be gone). Fixes make web.
6818 * The grand 2005-2006 replace.
6820 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6822 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6824 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6825 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6826 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6827 like -dgs-font-load.
6829 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6830 remove absolute path to lilypond binary.
6832 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6834 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6836 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6838 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6840 * mf/GNUmakefile: remove broken dvips map symlink.
6842 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6845 * configure.in: Cosmetic fixes.
6847 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6849 * Documentation/user/music-glossary.tely (Pitch names): Added
6850 Spanish pitch names and durations, thanks to Ernesto Gancedo
6852 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6854 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6855 init. Fixes verbose printing of .scm files.
6857 * stepmake/aclocal.m4: add spaces before - options.
6859 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6861 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6862 of path search in local block variable.
6864 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6866 * configure.in (NCSB_DIR): --enable-ncsb-dir
6867 (LINK_GXX_STATICALLY): denko.
6869 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6871 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6872 use locate to find c059033l.pfb.
6874 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6876 * lily/tie-formatting-problem.cc
6877 (problem::generate_base_chord_configuration): Use my_round (was
6880 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6881 do not invoke mbrtowc.
6883 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6885 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6887 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6889 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6891 * Documentation/user/invoking.itely (svg): revise.
6893 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6895 * lily/lexer.ll: use sourcefilename iso. renameinput.
6897 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6899 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6900 <PostScriptName>.ttf instead of c059XXXttf.
6902 * lily/program-option.cc (LY_DEFINE): special support for
6903 --verbose, so it works before option init too.
6905 * mf/GNUmakefile (local-install): oops.
6907 * lily/lyric-hyphen.cc (print): oops.
6909 * buildscripts/pfx2ttf.fontforge: new file.
6911 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6912 ($(outdir)/%.ttf): new rule.
6914 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6917 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6920 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6922 * VERSION: release 2.7.26
6924 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6926 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6928 * lily/font-config.cc (init_fontconfig): verbosity.
6930 * THANKS: add Muziekacademie Lede.
6932 * scripts/musicxml2ly.py (print_voice_definitions): new function
6933 (print_score_setup): new function
6934 (convert): read part definition to output staves properly.
6936 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6939 * python/musicexp.py (Output_printer.__init__): use _ in data
6941 (Output_printer.unformatted_output): new function: no formatting,
6943 (Duration.get_length): remove isinstance() checks for
6944 Output_printer everywhere.
6946 * input/regression/lyrics-bar.ly (texidoc): add
6947 Separating_line_group_engraver.
6949 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6951 * lily/relocate.cc (framework_relocation): New function,
6952 factored from set_relocation ().
6953 (prefix_relocation): Rename from set_relocation ().
6954 (setup_paths): Use it.
6956 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6958 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6959 numbers. Patch by Erlend Aasland.
6961 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6963 * lily/font-config.cc (init_fontconfig): print warning if cache
6964 file is not existant.
6966 * lily/main.cc: don't use #ifdef but #if
6968 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6970 * lily/grob-property.cc (internal_set_property): don't abort on
6971 calculation-in-progress.
6973 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6975 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6976 connect-to-neighbor property not connect-to-other
6978 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6979 (LY_DEFINE): oops. don't forget protection.
6981 * flower/parse-afm.cc (Module): strip AFM handling completely.
6983 * lily/stencil-expression.cc: idem.
6985 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6987 * lily/function-documentation.cc (ly_add_function_documentation):
6988 use static member iso. Protected_scm
6990 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6992 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6994 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6996 * lily/relocate.cc (set_env_dir): New function.
6997 (set_relocation): Use it to fix setting PANGO_PREFIX.
6999 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7001 * input/regression/stem-direction-context.ly: remove rest.
7003 * lily/melody-engraver.cc (process_music): restart for bar lines.
7004 (acknowledge_slur): restart for slurs.
7006 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
7008 * Documentation/user/invoking.itely: describe how to view SVG
7009 output using Inkscape which replace embedded fonts with OTF fonts.
7011 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7013 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
7015 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
7017 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
7020 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7022 * VERSION (PACKAGE_NAME): release 2.7.25
7024 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7026 * input/regression/stem-direction-context.ly: new file.
7028 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
7030 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
7033 * ly/engraver-init.ly: add Melody_engraver
7035 * lily/beam.cc (calc_direction): use default-direction
7036 iso. get_default_direction()
7038 * scm/define-grob-properties.scm (all-user-grob-properties): add
7039 default-direction property.
7041 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
7043 * lily/stem.cc (calc_default_direction): remove
7044 Stem::get_default_direction, use default-direction with callback
7047 * lily/melody-spanner.cc (calc_neutral_stem_direction):
7049 * lily/melody-engraver.cc: new file. Acknowledge stems for
7050 interpolated stem directions.
7052 * lily/melody-spanner.cc: new file. Interpolate stem directions.
7054 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
7056 * lily/slur-configuration.cc (fit_factor): more robust check for
7057 point in curve X-extent.
7059 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
7060 (outside_slur_callback): check for 'outside avoidance.
7062 * lily/slur-configuration.cc (score_extra_encompass): don't use
7063 bound->column() == avoid->column() for checking extents, as this
7064 doesn't work for accidentals.
7066 * lily/slur-engraver.cc (acknowledge_extra_object): remove
7067 DynamicText hardcoding.
7069 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
7070 crash if bound stem is NULL
7072 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
7075 2005-12-22 Graham Percival <gpermus@gmail.com>
7077 * scm/define-markup-commands.scm: typo. @code{\raise}
7080 * darwin.patch: now used again, includes a
7081 required patch from fink.
7083 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
7085 * po/TODO: mention gtranslator along with kbabel.
7086 * po/fi.po: update translations.
7088 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7090 * lily/relocate.cc (setup_paths): Bugfix.
7092 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7094 * lily/slur-configuration.cc (score_extra_encompass): don't use
7095 "avoid" choice for avoid-slur.
7097 * stepmake/bin/install.py (dest): don't create existing dir.
7099 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7101 * stepmake/bin/install.py: Remove file before copying.
7104 * stepmake/aclocal.m4: Do not substitute INSTALL.
7106 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7108 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7109 depend on link-tree.
7111 * lily/relocate.cc (setup_paths): only check path for non-absolute
7112 dir without directory part.
7114 * flower/file-name.cc (is_absolute): new method.
7115 (is_absolute): check root_ too.
7117 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7119 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7120 relocation code. Oops, don't comment out too much.
7122 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7125 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7128 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7130 * .cvsignore: Add install-sh.
7132 * autogen.sh (srcdir): Typo.
7134 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7136 * autogen.sh (srcdir): urg. Touch install-sh.
7138 * stepmake/bin/install-sh (Module): remove.
7140 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7142 * lily/include/relocate.hh: new file.
7144 * lily/relocate.cc: new file. Contain relocation logic.
7146 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7147 (main): read LILYPOND_VERBOSE as the first thing.
7149 * stepmake/aclocal.m4: remove INSTALL variable.
7151 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7152 separate target for making font symlinks.
7153 (documentation-dir): use $(if $(findstring )) for switching off
7156 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7157 something if DOCUMENTATION is no.
7159 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7161 * VERSION: release 2.7.24
7163 * lily/script-column-engraver.cc (stop_translation_timestep):
7164 delay adding to script-column.
7166 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7168 * python/convertrules.py (conv): rule for number-visibility
7170 * lily/slur-configuration.cc (score_extra_encompass): different
7171 distance measure for avoid and inside avoidance.
7172 (score_extra_encompass): use 1/(distance+eps) as penalty.
7174 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7175 encompass objects for generating slur curves.
7177 * lily/slur.cc: use details iso. slur-details property.
7179 * input/regression/slur-tuplet.ly: new file.
7181 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7183 * flower/include/offset.hh (class Offset): new operator /=
7185 * lily/tuplet-number.cc (print): new file, new interface.
7187 * scm/define-grob-properties.scm (all-user-grob-properties):
7188 remove number-visibility property.
7190 * lily/tuplet-bracket.cc (calc_control_points): new function
7191 (calc_connect_to_neighbors): new function.
7192 (print): remove text handling for tuplet numberdef.
7194 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7197 * lily/lily-guile.cc (robust_scm2booldrul): new function
7199 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7201 * lily/tuplet-bracket.cc (calc_position_and_height): use
7202 staff-padding to control whether tuplet brackets are over staves.
7204 * lily/grob.cc (suicide): clear dim_caches_.
7206 * lily/dimension-cache.cc (clear): new function.
7208 * lily/grob.cc (extent): swap order of min-extent and extent
7209 calculations. This fixes hara kiri staves.
7211 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7213 * lily/main.cc: Nitpick: relocation is not based on path, but on
7214 directory (location).
7216 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7218 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7220 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7222 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7224 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7226 * stepmake/stepmake/generic-vars.make (Module): idem.
7228 * stepmake/stepmake/executable-targets.make (default): use it.
7230 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7232 * make/GNUmakefile: don't install make rules.
7234 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7236 (prepend_env_path): more verbosity.
7238 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7240 * GNUmakefile.in: add dir argument for find command.
7242 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7243 fixes weird line numbers for point & click.
7245 * lily/source-file.cc (get_counts): init line/column/char counts.
7247 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7249 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7251 2005-12-16 Graham Percival <gpermus@gmail.com>
7253 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7254 minor fixes from Fredric. Thanks!
7256 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7258 * ly/music-functions-init.ly: add \bar and \clef music function
7260 * lily/lily-lexer.cc: idem.
7262 * lily/parser.yy (FIXME): remove BAR and CLEF.
7264 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7266 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7268 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7269 function arguments too
7271 * lily/main.cc (set_relocation): new function.
7273 * scripts/musicxml2ly.py (convert): add \version
7275 * lily/tie.cc: remove get_default_attachments()
7277 * VERSION (PACKAGE_NAME): release 2.7.23
7279 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7280 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7282 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7284 * lily/tie-formatting-problem.cc (score_ties): new function
7285 (get_variations): new function. Try flipping dirs for collisions.
7286 (generate_optimal_chord_configuration): new function. 1-opt search
7287 for better configuration.
7289 * lily/tie-configuration.cc: new file.
7291 * lily/tie.cc: junk Tie::get_configuration()
7293 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7294 (score_ties_configuration): new function.
7295 (generate_ties_configuration): new function.
7296 (generate_base_chord_configuration): new function.
7297 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7298 (set_manual_tie_configuration): Move body from tie-column-format.cc
7300 * input/regression/tie-dot.ly: new file.
7302 * lily/tie-formatting-problem.cc (score_configuration): score
7305 * lily/tie-helper.cc (get_transformed_bezier): new function
7307 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7309 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7310 -undefined suppress iso. -framework Python
7312 * scm/define-grobs.scm (all-grob-descriptions): set
7313 springs-and-rods (thanks Joe Neeman!)
7315 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7317 * input/no-notation/display-lily-tests.ly (test):
7318 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7319 changed from \tag #'(a b) to \tag #'a \tag #'b
7321 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7323 * Documentation/topdocs/NEWS.tely: strip out-www.
7325 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7327 * config.make.in (AR): add AR and RANLIB
7329 * flower/libc-extension.cc: include cassert
7331 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7334 2005-12-11 Graham Percival <gpermus@gmail.com>
7336 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7338 * stepmake/stepmake/python-modules-vars.make: define
7339 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7341 * THANKS: added Johannes Schindelin.
7343 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7345 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7347 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7348 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7350 * lily/parser.yy: reorganize file layout.
7352 * ly/music-functions-init.ly: add tweak music function.
7354 * lily/grob-info.cc (ultimate_music_cause): new function:
7355 recursively lookup causes.
7357 * lily/parser.yy (chord_body_element): allow music functions for
7358 post-events, allow music functions for chord elements.
7360 * lily/font-config-scheme.cc (display_fontset): add cast.
7362 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7363 #'(a b) -> \tag #'a \tag #'b rule.
7365 * python/musicexp.py (Output_printer.dump_version): new function
7367 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7369 * lily/parser.yy (FIXME): remove \tag
7370 (FIXME): remove tag_music() function.
7372 * lily/lily-lexer.cc: remove \tag
7374 * ly/music-functions-init.ly: define music-function "tag"
7376 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7378 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7380 * VERSION (PATCH_LEVEL): release 2.7.22
7382 * input/regression/lyric-hyphen-retain.ly: renew.
7384 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7387 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7388 iso. minimum-length property for rods.
7390 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7391 LyricSpace item to keep lyrics spaced apart.
7393 * ly/engraver-init.ly: remove Separating_line_group_engraver
7395 * Documentation/user/music-glossary.tely: do setfilename before
7398 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7400 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7401 See xref documentation, for example.
7403 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7405 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7406 pending_skip iso. ly_voice[-1]
7407 (main): add if __main__ for debugging.
7409 * python/musicxml.py (Accidental.__init__): new class.
7411 * scripts/musicxml2ly.py (progress): new function
7412 (musicxml_key_to_lily): don't barf on modeless keys.
7413 (create_skip_music): new function.
7414 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7415 (musicxml_note_to_lily_main_event): new function.
7417 * python/musicexp.py (Music.__init__): add comment field.
7418 (NestedMusic.append): new routine.
7419 (SequentialMusic.print_ly): print comment.
7420 (ArpeggioEvent.ly_expression): new class
7421 (BeamEvent.ly_expression): new class
7422 (NoteEvent.__init__): support for cautionary/forced accs.
7424 * lily/lookup.cc (slur): normal order for array loop.
7426 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7429 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7432 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7434 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7436 * scripts/lilypond-book.py: Introduce option
7437 --preserve-line-breaks, for usage with srcltx
7439 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7441 * scm/output-lib.scm (print-circled-text-callback): draw circle
7442 around text using make-circle-markup.
7444 * Documentation/user/*: strip out-www from file names.
7446 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7448 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7449 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7451 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7453 * Documentation/user/GNUmakefile: idem.
7455 * Documentation/user/macros.itexi: strip out-www
7457 * python/rational.py: python 2.3 compat.
7459 * VERSION (PATCH_LEVEL): release 2.7.21
7461 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7462 option formatting, lilypond style.
7464 * python/musicexp.py: grab from Ikebana: a library for composing
7465 ly music expressions.
7466 (Output_printer): class for advanced .ly printing.
7469 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7470 convert to pythonesque structure.
7472 * python/rational.py: PD rational number class.
7474 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7476 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7478 * lily/part-combine-iterator.cc: Minor bugfix
7480 * THANKS: Update bughunters
7482 2005-12-02 Werner Lemberg <wl@gnu.org>
7484 * mf/README: Document process for proper mf2pt1 conversion.
7486 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7489 * mf/feta-harmonica.mf: Removed. Unused.
7491 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7493 * scripts/lilypond-book.py (do_file): fix thinkos.
7495 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7497 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7498 ($(outdir)/parser.cc):
7499 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7501 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7503 * ly/titling-init.ly (tagline): it should be a space between
7504 "Music engraving by LilyPond" and the version number.
7506 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7508 * VERSION (PACKAGE_NAME): release 2.7.20
7510 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7512 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7514 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7516 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7518 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7520 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7522 * kpath-guile/: remove directory
7524 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7525 file. Encapsulate kpathsea using commandline tools.
7527 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7530 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7532 * Documentation/user/advanced-notation.itely (Setting automatic
7533 beam behavior): Correct a few typos. Thanks to David Bobroff.
7535 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7536 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7538 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7540 * scripts/*.py: gmane address for bugs.
7542 2005-11-28 Pal Benko <benkop@freestart.hu>
7544 * make/ly-rules.make: add -f switch to mv
7546 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7548 * lily/bar-line.cc: interpret it
7550 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7552 * configure.in (--disable-documentation): New switch.
7554 * GNUmakefile.in: Use it.
7556 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7558 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7560 * scripts/lilypond-book.py (do_file): search chunks for
7563 * GNUmakefile.in: add copy step in between so we can lose the
7564 out-www directories.
7566 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7568 * lily/pango-font.cc (pango_item_string_stencil): put
7569 geometry.width into glyph-string too.
7571 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7573 * scm/define-music-display-methods.scm (RevertProperty):
7574 (OverrideProperty): Use grob-property-path property, a list of
7575 symbols, instead of grob-property, which used to be a single
7577 (BassFigureEvent): a figure can be a plain number, not necessarily a
7580 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * VERSION: release 2.7.19
7584 * lily/figured-bass-engraver.cc (process_music): check
7585 figuredBassCenterContinuations first.
7587 * scm/translation-functions.scm (format-bass-figure): make double
7590 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7593 * lily/system-start-delimiter-engraver.cc: move from
7594 Nested_system_start_delimiter_engraver, rename
7595 Nested_system_start_delimiter_engraver ->
7596 System_start_delimiter_engraver.
7598 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7599 bracket type from hierarchy.
7601 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7603 * lily/rest.cc (y_offset_callback): read staff-position.
7605 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7606 mark after-line-breaking-callback as internal.
7608 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7610 2005-11-25 Werner Lemberg <wl@gnu.org>
7612 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7614 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7616 * stepmake/bin/add-html-footer.py (do_file): add google
7618 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7619 staff if first_start_ is true.
7621 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7623 * scripts/midi2ly.py (split_track): add __repr__ members.
7624 (track_first_item): only return Item if not None. This fixes a
7625 problem when dumping a track that starts with an empty channel.
7627 * python/midi.c: doc module.
7629 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7631 * Documentation/user/global.itely (Creating MIDI files): Fix
7632 compilation problem.
7634 2005-11-22 Graham Percival <gpermus@gmail.com>
7636 * Documentation/user/basic-notation.itely: clarify dynamic
7639 * Documentation/user/advanced-notation.itely: add unicode
7640 escape control example, whatever that is. :)
7642 * Documentation/user/global.itely: added "removing dynamics
7645 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7647 * VERSION (PATCH_LEVEL): release 2.7.18
7649 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7650 System_start_delimiter_engraver by
7651 Nested_system_start_delimiter_engraver.
7653 * lily/nested-system-start-delimiter-engraver.cc (struct
7654 Bracket_nesting_node): new class.
7655 (struct Bracket_nesting_group): new class
7656 (struct Bracket_nesting_staff): new class.
7657 (process_music): create hierarchy of grobs. This allows separate
7658 tuning of different SSDs.
7660 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7661 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7663 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7665 * lily/side-position-interface.cc (aligned_side): multiply
7668 * lily/script-engraver.cc (make_script_from_event): allow setting
7671 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7673 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7675 * scm/define-grobs.scm (all-grob-descriptions): new grob
7676 NestedSystemStartDelimiter.
7678 * input/regression/system-start-heavy-bar.ly: new file.
7680 * lily/nested-system-start-delimiter-engraver.cc: new file.
7682 * lily/nested-system-start-delimiter.cc: new file.
7684 * input/regression/system-start-nesting.ly: new file.
7686 * scm/define-grobs.scm (all-grob-descriptions): use X side
7687 positioning for positioning braces for nested contexts.
7689 * lily/system-start-delimiter.cc (print): don't divide extent by
7691 (print): use style iso. glyph.
7692 (staff_bracket): translate glyph inside routine already.
7694 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7696 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7699 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7701 * scm/define-context-properties.scm
7702 (all-user-translation-properties): rename figuredBassFormatter
7703 from newFiguredBassFormatter.
7705 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7707 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7709 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7711 * lily/beam.cc (calc_beaming): new function.
7712 (calc_shorten): new function.
7714 * THANKS: add Edward Neeman.
7716 * input/regression/accidental-clef-change.ly: new file.
7718 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7720 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7722 * lily/clef-engraver.cc (inspect_clef_properties): reset
7723 localKeySignature for clef changes.
7725 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7727 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7728 add dummy definition that works in Linux and add information in
7729 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7731 * Documentation/user/changing-defaults.itely (Modifying context
7732 plug-ins): Add index for \with.
7734 * Documentation/user/music-glossary.tely (dal segno): Updated
7735 example to version >=2.6.
7737 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7739 * Documentation/user/instrument-notation.itely (Printing chord
7740 names): Reorder \chordmode and \repeat in one example.
7742 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7744 * VERSION: release 2.7.17
7746 * Documentation/topdocs/NEWS.tely (Top): add note about
7749 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7750 new function. Search region of 3 positions for best tie.
7751 (score_configuration): new function.
7752 (score_aptitude): new function.
7753 (generate_configuration): new function.
7754 (get_configuration): new function.
7755 (Tie_formatting_problem): new function
7757 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7759 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7761 * THANKS: add Eduardo Vieira & Ralph Little
7763 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7766 * lily/include/tie-formatting-problem.hh (class
7767 Tie_formatting_problem): add Tie_details to
7768 Tie_formatting_problem. Update calling conventions.
7770 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7773 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7775 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7777 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7778 scm/define-context-properties.scm: Maintenance bugfix: make
7779 ligature brackets work again by removing obsolete ligature
7780 primitive callback push/pop.
7782 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7783 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7786 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7788 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7789 used and do not call it a path.
7790 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7792 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7794 * lily/include/tie-formatting-problem.hh (class
7795 Tie_formatting_problem): new file.
7797 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7799 * Documentation/misc/ChangeLog-2.3: new file.
7801 * lily/audio-staff.cc (output): degarianize.
7803 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7805 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7806 Unset PYTHONOPTIMIZE. Fixes install if set.
7808 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7810 * python/convertrules.py (conv): add warning about drums.
7812 * make/stepmake.make: include toplevel-version.make after config.make.
7814 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7815 also allow python2.4
7817 * config.make.in (configure-srcdir): remove GXX GCC vars.
7819 * stepmake/aclocal.m4: don't do non-srcdir build with
7820 symlinks. Use inclusion, so the src directory name can be changed.
7822 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7824 * make/mutopia-vars.make:
7825 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7828 2005-11-13 Werner Lemberg <wl@gnu.org>
7830 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7831 but the affected path. This ensures that the (overlapping) outlines
7832 have the same direction, which is a necessary prerequisite for
7833 FontForge's algorithm to remove overlaps.
7836 * mf/feta-haak.mf: Formatting.
7837 (draw_bracket): Slightly modify outline to avoid an unnecessary
7839 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7840 them from the affected paths.
7842 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7844 * mf/README: remove xpm / accordion notes.
7846 * lily/tie-column-format.cc (set_chord_outline): add dots into
7847 skyline extents. This fixes tie formatting if the left head has dots.
7849 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7850 space inside the staff.
7851 (get_configuration): shift another position if necessary in case
7854 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7856 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7857 buildscript-dir iso. $(depth)/buildscripts.
7859 * tex/GNUmakefile (local-uninstall): remove
7860 music-drawing-routines.ps juggling.
7862 * stepmake/stepmake/install-targets.make (local-install-files):
7863 prepend src-dir to install targets.
7865 * lily/system-start-delimiter-engraver.cc
7866 (acknowledge_system_start_delimiter): use
7867 add_offset_callback(). This fixes translation of nested
7870 * lily/grob-closure.cc (add_offset_callback): only encaps in
7871 simple_closure if it's a procedure.
7873 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7876 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7877 remove-empty where pertinent.
7879 2005-11-12 Graham Percival <gpermus@gmail.com>
7881 * Documentation/user/instrument-notation.itely: added
7882 Cameron Horsburgh's multiple stanzas docs. Thanks!
7884 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7887 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7888 make picture in builddir, not srcdir.
7890 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7892 * VERSION: release 2.7.16
7894 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7897 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7899 * Documentation/user/examples.itely (Piano templates): Minor
7900 modification to the Piano centered lyrics example.
7902 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7904 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7907 * Documentation/user/point-and-click.itely: simplify p&c
7908 instruction: don't configure firefox. Put lilypond-invoke-editor
7909 in front of the browser.
7911 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7912 (run-browser): new function.
7914 * lily/parser.yy (Lily_lexer): recognize Book
7916 * lily/book.cc (clone): new function
7918 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7920 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7922 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7923 Maintenance bugfix: reduce number of font related warnings by
7924 updating naming conventions for glyph-name.
7926 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7928 * scm/define-grobs.scm (all-grob-descriptions): add
7929 rhythmic-grob-interface to TabNoteHead.
7931 * scm/layout-beam.scm (check-quant-callbacks): remove
7934 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7936 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7937 alignment of centered divisiones.
7939 * scm/scripts.scm (articulations): Maintenance bugfix:
7940 follow-into-staff -> quantize-position.
7942 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7943 plica head in porrectus deminutus.
7945 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7947 * make/lilypond.fedora.spec.in (Group): add %clean section.
7949 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7950 less then 1/5th of total length.
7951 (print): use gap too. Fixes tupletUp-single-bracket.ly
7953 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7954 events into EventChord. This fixes textspanners on mm rests. Fixes
7957 * lily/side-position-interface.cc (get_axis): read side-axis
7958 (set_axis): set side-axis.
7960 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7961 properties everywhere.
7963 * lily/spacing-spanner.cc (breakable_column_spacing): add
7964 average-spacing-wishes. Take maximum if not set.
7965 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7967 * scm/define-grobs.scm (all-grob-descriptions): add
7968 average-spacing-wishes.
7970 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7971 offset callbacks. This fixes alignment for Fingering objects.
7973 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7974 space for key - timesig combination.
7976 * input/regression/script-stem-tremolo.ly (Module): new file.
7978 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7981 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7982 Fixes: c-tremolo-script.ly.
7984 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7986 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7988 * scm/define-grobs.scm (all-grob-descriptions): remove
7989 self-X-offset. Fixes alignment of octavate-8.
7991 * scripts/lilypond-book.py (datadir): look in
7992 LILYPONDPREFIX/share/lilypond/current/
7994 * GNUmakefile.in: symlink current to <VERSION>.
7996 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7998 * lily/main.cc: eps listed as a backend.
8000 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8002 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
8004 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8006 * lily/include/score.hh (class Score): remove texts_ member.
8008 * lily/beam.cc (set_stem_lengths): force direction callback.
8009 (print): read quantized-positions, so we can force
8010 Beam::set_stem_lengths to occur.
8011 (rest_collision_callback): use common X parent.
8013 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
8015 * flower/file-path.cc (find): Bugfix: Return name of file found.
8017 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
8018 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
8019 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
8021 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8023 * flower/offset.cc: idem.
8025 * mf/*.mf: update email address.
8027 * lily/font-config-scheme.cc: new file.
8029 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
8031 * lily/*: cs.uu.nl -> xs4all.nl
8033 * VERSION (PATCH_LEVEL): release 2.7.15
8035 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
8038 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
8040 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8042 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
8044 * lily/staff-performer.cc (process_music): add audio
8045 elements. This makes MIDI instrument changes work once again.
8047 * lily/main.cc (LY_DEFINE): add gmane address.
8049 * lily/beam.cc: remove calc_positions()
8051 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
8052 original_ in private scope.
8053 (class Grob): drop pscore_ pointer, change to output_def pointer.
8054 (class Grob): cleanup class definition.
8056 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
8058 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
8060 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
8061 absolute. Better diagnostics.
8063 * GNUmakefile.in: Add bin/ to tree and populate with some links.
8064 This makes lilypond run from the build directory using argv0
8065 relocation (without any --prefix or LILYPONDPREFIX setting).
8067 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8069 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
8071 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
8072 with simple-closure.
8074 * lily/self-aligment-interface.cc (set_align_self): new function
8075 (set_center_parent): new function.
8077 * lily/side-position-interface.cc (set_axis): new function.
8079 * lily/new-fingering-engraver.cc (position_scripts): use drul for
8082 * scm/define-grob-properties.scm (all-user-grob-properties):
8083 remove [XY]-offset-callbacks add [YX]-offset
8085 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
8087 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8088 entry for time signatures after breathing signs. Bug report by
8091 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8093 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8094 not absolute, make it absolute using PATH.
8096 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8098 * python/midi.c (initmidi): Fix type for mingw.
8100 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8102 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8104 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8107 * stepmake/aclocal.m4: Support python cross compiling.
8109 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8112 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8114 * scm/output-lib.scm (chain-grob-member-functions): replace
8117 * lily/chained-callback.cc (Module): remove file.
8119 * lily/rest-collision.cc (force_shift_callback_rest): change to
8122 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8124 * lily/grob.cc (y_parent_positioning): remove axis argument from
8125 parent_positioning callbacks.
8126 (Grob): junk init code
8127 (get_offset): use generic property callbacks for
8128 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8129 (axis_parent_positioning): new function
8130 (axis_offset_symbol): new function
8131 (chain_offset_callback): new function
8132 (add_offset_callback): new function
8134 * lily/beam.cc (rest_collision_callback): change signature; this
8135 is now a chained callback.
8137 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8138 callback administration.
8140 * lily/simple-closure.cc: new file. Smob type that allows "grob
8143 (ly:make-simple-closure FUNC A B)
8145 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8148 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8151 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8153 * lily/rest.cc (polyphonic_offset_callback): remove.
8155 * lily/script-engraver.cc (try_music): remove bool* argument.
8157 * scm/script.scm (default-script-alist): set quantize-position
8160 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8162 * lily/side-position-interface.cc (aligned_side): move staff
8163 position quantization from
8164 Side_position_interface::quantised_position().
8165 (quantised_position): remove
8167 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8169 * input/regression/beam-quant-standard.ly: reindent, set
8170 debug-beam-quanting to #t.
8172 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8173 10000 if this is a "hard" concave beam.
8175 * lily/beam.cc (calc_least_squares_positions): change from
8176 calc_least_squares_dy
8177 (set_stem_lengths): this is now a chained callback.
8179 * lily/context-property.cc (execute_general_pushpop_property):
8180 bugfix override with procedure should have effect.
8182 * scm/define-grob-properties.scm (all-internal-grob-properties):
8183 remove position-callbacks.
8185 * scm/define-grobs.scm (all-grob-descriptions): use
8186 ly:make-callback-chain for positions property.
8188 * scm/layout-beam.scm (check-quant-callbacks): return list of
8191 * scm/lily.scm (type-p-name-alist): add callback-chain
8193 * lily/lily-guile.cc (type_check_assignment): type check failure
8194 is warning not message.
8196 * lily/grob-property.cc (try_callback): walk callback chain if
8199 * lily/chained-callback.cc: new file. new smob type.
8201 * lily/lily-guile.cc (procedure_arity): new function.
8203 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8205 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8207 2005-10-25 John Mandereau <john.mandereau@free.fr>
8209 * Documentation/user/instrument-notation.itely (Figured bass):
8210 describe new features
8212 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8214 * lily/beam.cc (calc_least_squares_dy): use property callback.
8216 * lily/beam-concave.cc (calc_concaveness): use property callback.
8218 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8220 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8224 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8226 * scm/layout-page-layout.scm (page-headfoot): annotate
8229 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8231 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8232 doesn't take y-space.
8234 * scm/paper.scm (paper-alist): fix A7 dimensions.
8236 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8238 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8239 src-wildcard, remove $(wildcard).
8241 * po/GNUmakefile (PO_FILES):
8242 * ps/GNUmakefile (PS_FILES):
8243 * tex/GNUmakefile (TEX_FILES):
8244 * cygwin/GNUmakefile (POSTINSTALLS):
8245 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8246 some wildcard calls.
8248 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8250 * THANKS: add Thomas Bushnell.
8252 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8254 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8255 (lilypond-main): Redirect to gui-main if 'gui is set.
8257 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8258 for alternative installations kludging s/share/lib/g
8261 * SConstruct (libdir_package_version): Define.
8263 * python/SConscript:
8264 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8267 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8269 * lily/main.cc: clarify --safe.
8271 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8273 * VERSION: release 2.7.14
8275 * Documentation/user/*.itely: remove minimumVerticalExtent.
8277 * scm/define-grobs.scm (all-grob-descriptions): remove
8278 RemoveEmptyVerticalGroup
8280 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8282 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8285 * python/convertrules.py (conv): add rules.
8287 * lily/grob.cc: remove is_empty()
8289 * lily/grob-property.cc: remove add_to_list_property().
8291 * scripts/convert-ly.py (datadir): add prefix switching hack to
8294 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8295 space-function tweak.
8297 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8299 * scm/define-grob-properties.scm (all-user-grob-properties):
8300 remove callback property.
8302 * lily/include/grob.hh (class Grob): remove property_callbacks_
8303 member. Properties of procedure type are assumed to be callbacks.
8305 * lily/ligature-engraver.cc (override_stencil_callback):
8306 rewrite. Use noteHeadLigaturePrimitive as source.
8308 * scm/define-grob-properties.scm (all-internal-grob-properties):
8309 remove ligature-primitive-callback
8311 * lily/include/dimension-cache.hh (class Dimension_cache): make
8312 class, with Grob as friend.
8314 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8315 has_extent_callback()
8317 * scm/translation-functions.scm (format-new-bass-figure): read
8318 figuredBassPlusDirection
8320 * scm/define-context-properties.scm
8321 (all-user-translation-properties): add figuredBassPlusDirection.
8323 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8325 * lily/align-interface.cc (set_ordered): new function.
8327 * lily/grob.cc (flush_extent_cache): rewrite.
8329 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8330 Interval pointer directly.
8332 * lily/main.cc (setup_paths): insert extra / .
8333 (setup_paths): junk cff entry.
8335 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8338 * lily/axis-group-engraver.cc (finalize): remove
8339 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8341 * lily/grob.cc (Grob): don't set extent from ctor.
8342 (extent): use property callbacks.
8344 * lily/axis-group-interface.cc: remove set_axes() function.
8346 * lily/grob-property.cc (del_property): new function.
8348 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8350 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8352 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8354 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8356 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8358 * mf/SConscript: Updates.
8360 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8362 * stepmake/stepmake/*:
8366 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8367 from any directory in build-dir. Cleanups.
8369 * make/srcdir.make.in: Remove.
8371 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8373 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8376 * lily/SConscript: Remove ttftools.
8378 * SConstruct: Resurrect.
8380 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8382 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8385 * lily/paper-book.cc (add_score_title): put Paper_score title into
8388 * scm/translation-functions.scm (format-new-bass-figure): also
8389 allow plus in combination with _
8391 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8393 * VERSION: 2.7.13 released.
8395 * lily/note-collision.cc (check_meshing_chords): don't wipe
8396 stencil, merely set transparent.
8398 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8399 (Top): document #'callbacks.
8400 (Top): document nested \override.
8402 * input/regression/figured-bass.ly: update for slash and pluses.
8404 * input/regression/figured-bass-continuation-forbid.ly (Module):
8407 * scm/translation-functions.scm (format-new-bass-figure): use
8408 slashed-digit if diminished is set.
8409 (format-new-bass-figure): add + if 'augmented is set.
8411 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8413 * input/test/piano-staff-distance.ly: remove file.
8415 * Documentation/user/advanced-notation.itely (Formatting cue
8416 notes): use length-fraction for making stems/beams smaller.
8418 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8421 * lily/new-figured-bass-engraver.cc: new property
8422 centerFiguredBassContinuations
8424 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8427 * lily/context-property.cc (execute_general_pushpop_property):
8430 * input/regression/override-nest.ly: new file.
8432 * python/convertrules.py (FatalConversionError.subber): conversion
8433 rule for #'callbacks
8435 * input/regression/override-nest.ly: new function.
8437 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8440 * lily/context-property.cc (lookup_nested_property): new function.
8441 (evict_from_alist): new function.
8442 (general_pushpop_property): new function.
8443 (execute_general_pushpop_property): rewrite. Support nested
8446 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8448 * lily/beam.cc: use length-fraction too.
8450 * scm/define-grob-properties.scm (all-user-grob-properties):
8451 remove property flag-width-function
8452 (all-user-grob-properties): remove space-function.
8454 * scm/layout-beam.scm: remove flag-width-function.
8456 * lily/beam.cc: remove flag-width-function
8458 * scm/layout-beam.scm: remove beam dir functions.
8460 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8462 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8463 for easier grace tweaks.
8465 * lily/beam.cc: remove dir-function.
8467 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8469 * lily/grob.cc: remove spacing-procedure.
8471 * lily/note-head.cc (calc_stem_attachment): new function.
8472 (internal_print): use callback to get glyph-name.
8474 * lily/grob-property.cc (get_interfaces): new function.
8476 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8478 * lily/stem.cc (calc_stem_end_position): new function.
8479 (calc_length): new function.
8480 document details for stem.
8481 remove Stem::get_direction()
8483 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8485 * lily/grob-property.cc (set_callback): new function.
8487 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8489 * lily/item-scheme.cc: new file.
8491 * lily/bar-line.cc (before_line_breaking): remove function.
8492 remove bar-size-procedure, break-glyph-function
8494 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8496 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8498 * lily/system-start-delimiter.cc (print): suicide from
8499 here. Remove after_line_breaking_callback.
8501 * lily/script-interface.cc (calc_direction): use callback for direction.
8503 * lily/side-position-interface.cc (aligned_side): don't use
8504 Side_position_interface::get_direction directly. Use callback.
8506 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8508 (get_print_stencil): rename from get_stencil: create stencil with
8509 transparency, color and cause.
8511 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8513 * python/convertrules.py (conv): insert temporary warning rule.
8515 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8517 * lily/grob-property.cc (try_callback): remove marker if applicable.
8519 * lily/grob.cc: elucidate doc about after/before-line-breaking
8521 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8523 * lily/stem.cc (height): idem.
8525 * lily/stem-tremolo.cc: idem.
8527 * lily/slur.cc (height): don't use get_uncached_stencil()
8529 * lily/rest.cc (y_offset_callback): use offset callback
8530 iso. after-line-breaking callback.
8532 * lily/grob.cc: change after/before-line-breaking-callback to
8533 after/before-line-breaking dummy properties.
8535 * lily/include/grob.hh: remove Grob_status.
8537 * scm/define-context-properties.scm
8538 (all-user-translation-properties): remove verticalAlignmentChildCallback
8540 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8541 (calc_direction): use callback
8542 (calc_positions): use callback.
8544 * lily/tie.cc (calc_direction): use callback. Only call parent
8545 positioning for more than one tie.
8547 * lily/tie-column.cc (calc_positioning_done): use callback
8549 * lily/slur-scoring.cc (calc_control_points): use callback
8551 * lily/slur.cc (calc_direction): use callback.
8553 * lily/note-collision.cc (force_shift_callback): remove.
8555 * lily/dot-column.cc (force_shift_callback): remove. Use
8556 other_axis_parent_positioning.
8558 * lily/grob.cc (other_axis_parent_positioning): new function.
8559 (same_axis_parent_positioning): new function
8561 * lily/align-interface.cc (alignment_callback): remove function.
8563 * lily/note-collision.cc (calc_positioning_done): use callback.
8565 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8566 (calc_direction): idem.
8567 remove print function.
8569 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8571 * lily/dot-column.cc (calc_positioning_done): use callback.
8573 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8575 * lily/beam.cc (calc_direction): use pseudo-property for beam
8577 (calc_positions): use callback
8579 * lily/align-interface.cc (calc_positioning_done): use
8580 callback. Fold fixed distance and normal alignment in one function.
8582 * lily/stem.cc (calc_stem_end_position): use callback.
8583 (calc_positioning_done): idem.
8584 (calc_direction): idem.
8585 (calc_stem_end_position): idem
8586 (calc_stem_info): idem.
8588 * lily/grob-property.cc (get_property_data): new function:
8589 (try_callback): new function.
8591 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8594 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8596 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8598 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8602 * lily/include/*.hh (Module): compile fixes.
8604 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8606 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8607 as an argument for char-syntax: use (char-syntax (or nil 0))
8608 instead of (char-syntax nil), thanks to Milan Zamazal.
8610 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8612 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8615 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8618 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8620 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8621 add class_name() method.
8623 * lily/music-scheme.cc: remove ly:music-name.
8625 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8627 * cygwin/postinstall-lilypond.sh: Remove cruft.
8629 * cygwin/postremove-lilypond.sh: Remove.
8631 * cygwin/GNUmakefile (default): Remove postremove rules.
8633 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8635 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8638 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8641 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8642 consider break index for broken spanner.
8644 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8645 characters from string before splitting.
8647 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8649 * scm/framework-ps.scm (output-preview-framework): use
8650 is-book-title to determine whether to chop off the booktitle.
8652 * lily/paper-book.cc (systems): init from book-title-properties
8653 (add_score_title): init score-title-properties.
8655 * ly/paper-defaults.ly: add {score,book}-title-properties.
8657 * scm/document-backend.scm (lookup-interface): error message if
8658 using unknown interface.
8660 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8663 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8665 (make_bracket): new function.
8667 * scm/lily.scm (define-scheme-options): add paper-size option.
8669 * ly/declarations-init.ly (laissezVibrer): get paper size from
8672 * scm/translation-functions.scm: use \fontsize for changing the
8675 * scm/define-grobs.scm (all-grob-descriptions): set
8676 between-length-limit to 1.0
8678 * lily/tie-helper.cc: add between_length_limit_ detail property.
8680 * mf/feta-bolletjes.mf: typos.
8682 * lily/note-head.cc (internal_print): don't shadow idx
8683 parameter. This fixes wrong attachment for do shape heads.
8685 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8687 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8689 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8691 * scm/layout-slur.scm: rename from slur.scm
8693 * scm/layout-page-layout.scm: rename from page-layout.scm
8695 * scm/layout-beam.scm: rename from beam.scm
8697 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8698 bass-figure-interface
8700 * lily/new-figured-bass-engraver.cc (process_music): add
8701 implicitBassFigures property.
8703 * scm/define-markup-commands.scm (pad-x): new markup.
8705 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8706 minimumVerticalExtent on FiguredBass context.
8708 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8709 case the continuation crosses a line break.
8711 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8713 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8714 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8715 absolute file name bug.
8717 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8719 * VERSION (PACKAGE_NAME): release 2.7.12
8721 * input/regression/figured-bass-continuation-center.ly: new file.
8723 * input/regression/beam-outside-beamlets.ly: new file.
8725 * lily/beam.cc (set_beaming): don't clip edges.
8726 (connect_beams): don't clip edges.
8728 * lily/beaming-info.cc (clip_edges): new function.
8730 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8732 * Documentation/user/instrument-notation.itely (Figured bass):
8733 demonstrate extenders, update seealso links.
8735 * scm/titling.scm (marked-up-headfoot): change tagline
8736 handling. tagline = ##f will blank the tagline as well.
8738 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8740 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8742 * lily/new-figured-bass-engraver.cc (struct
8743 New_figured_bass_engraver): add new_music_found_ member.
8745 * lily/lilypond-version.cc (Lilypond_version): deal with
8746 incorrectly formatted version strings.
8748 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8749 New_figured_bass_engraver by default.
8751 * lily/ttf.cc (print_trailer): only define glyph names when
8752 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8754 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8756 * lily/horizontal-bracket.cc (make_bracket): new function.
8758 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8759 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8760 BassFigureLine, BassFigureAlignment
8762 * lily/new-figured-bass-engraver.cc (process_music): new file.
8764 * lily/figured-bass-continuation.cc: new file.
8766 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8769 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8771 * scripts/lilypond-book.py: Bug fix, put the quote around the
8772 actual score for LaTeX documents.
8774 * scm/define-grobs.scm (all-grob-descriptions): Change
8775 collapse-height of the SystemStartBracket grob to 5.0,
8776 so the bracket disappears for single stave score lines (similarly
8777 to SystemStartBraces).
8779 * Documentation/user/advanced-notation.itely (Polymetric
8780 notation): Clarify the use of compressMusic.
8782 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8783 that the grace spacer note in other staves need the same duration
8784 and document the stroke-style property.
8786 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8788 * Documentation/user/global.itely (Vertical spacing): document
8789 alignment-extra-space and fixed-alignment-extra-space.
8791 * Documentation/topdocs/NEWS.tely (Top): add entry.
8793 * input/regression/alignment-vertical-spacing.ly: new file.
8795 * python/convertrules.py (conv): add rule.
8797 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8799 * lily/align-interface.cc (stretch_after_break): new
8800 function. Read fixed-alignment-extra-space property.
8801 (align_elements_to_extents): read alignment-extra-space property.
8803 * lily/lily-guile.cc (robust_scm2dir): new function.
8805 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8806 (annotate-space-left): new function. Annotate space left on page.
8807 (annotate-y-interval): new function.
8808 (paper-system-annotate-last): new function. Annotate bottom-space.
8810 * mf/feta-beugel.mf (y):
8812 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8814 * VERSION (PACKAGE_NAME): release 2.7.11
8816 * scm/lily-library.scm (interval-translate): new function
8817 (interval-center): new function.
8819 * scm/page-layout.scm (paper-system-annotate): new function. Add
8820 arrows for dimensions.
8822 * scm/stencil.scm (dimension-arrows): new function.
8824 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8826 * input/regression/page-spacing.ly: add annotatespacing
8828 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8829 (LY_DEFINE): new function ly:paper-system-set-property!
8831 * Documentation/user/global.itely (Paper size): explain how to add
8834 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8835 correspond to GS's definition.
8837 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8839 (print): only connect to next bracket if the next one is alive.
8840 (print): set padding to 0.0 if the bound is a breakable
8841 column. This makes tupletFullLength brackets reach up to the staff
8842 line if it doesn't connect to the next line.
8844 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8846 * lily/bar-number-engraver.cc: correct docs.
8848 * scm/output-lib.scm (first-bar-number-invisible): rename from
8849 default-bar-number-visibility
8851 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8853 * scm/define-music-properties.scm (all-music-properties): remove
8856 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8858 * po/fi.po: refresh.
8860 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8862 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8864 (disappear): bugfix.
8866 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8868 * lily/include/paper-system.hh (class Paper_system): remove
8869 staff_extents_ member.
8871 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8873 * lily/include/paper-system.hh (class Paper_system): remove
8874 number_ variable. Remove is_title_. Remove break_before_penalty_
8876 * lily/paper-book.cc (systems): use 'number property iso. number_
8879 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8880 remove ly:paper-system-number.
8882 * scm/lily-library.scm (paper-system-title?): new function.
8884 * lily/book.cc (process): bugfix: flip ?: cases.
8886 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8889 * ly/music-functions-init.ly: add outputProperty music function.
8891 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8893 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8895 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8897 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8899 * lily/paper-system.cc (internal_get_property): new function.
8901 * Documentation/user/global.itely (Vertical spacing): refer to
8904 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8907 * input/regression/page-spacing.ly: new file.
8909 * input/regression/page-top-space.ly: new file.
8911 * lily/spacing-spanner.cc: cmath -> math.h
8913 * lily/paper-system.cc (read_left_bound): new function. Read
8914 line-break-system-details from left bound to determine extents.
8916 * Documentation/user/programming-interface.itely (Using LilyPond
8917 syntax inside Scheme): change applyxxx -> applyXxx.
8919 * ly/music-functions-init.ly: add outputProperty music function.
8921 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8923 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8925 * python/convertrules.py (conv): rule
8927 * ly/music-functions-init.ly: applyxxx -> applyXxx
8929 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8932 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8934 * flower/include/real.hh: include <math.h> iso. <cmath>
8936 * flower/include/offset.hh: include real.hh
8938 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8940 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8941 fix example, now that 'interfaces is no longer directly available.
8943 * lily/book.cc (process): don't crash if paper == NULL.
8947 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8949 * scm/define-music-types.scm (music-descriptions): set length and
8950 start-callback for QuoteMusic
8952 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8954 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8955 arguments. Fixes compilation error with gcc 3.3.
8957 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8959 * VERSION: release 2.7.10
8961 * stepmake/stepmake/python-module-rules.make
8962 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8964 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8967 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8969 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8970 -Werror. Otherwise GCC barfs over various optimizations.
8972 * scm/define-grob-properties.scm (all-internal-grob-properties):
8973 add note-head property
8975 * Documentation/user/instrument-notation.itely (Laissez vibrer
8978 * input/regression/laissez-vibrer-ties.ly: new file.
8980 * lily/laissez-vibrer-engraver.cc: new file.
8982 * lily/include/tie-column-format.hh: new file.
8984 * lily/tie-column-format.cc: new file.
8986 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8988 * lily/laissez-vibrer-tie.cc: new file.
8990 * lily/include/laissez-vibrer-tie.hh: new file.
8992 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8994 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8996 * scm/define-grobs.scm (all-grob-descriptions): add
8997 LaissezVibrerTie, LaissezVibrerTieColumn
8999 * lily/tie-column.cc (set_tie_config_directions): new function
9000 (final_shape_adjustment): new function.
9001 (shift_small_ties): new function.
9003 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
9005 * lily/include/tie.hh (struct Tie_details): add x_gap_
9006 (struct Tie_configuration): add head_position_
9008 * lily/tie-column.cc (set_chord_outline): new function.
9010 * mf/cmr.enc.in: remove file.
9012 2005-09-11 Graham Percival <gpermus@gmail.com>
9014 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
9016 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
9018 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
9019 reduce aliasing effects.
9021 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
9024 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9026 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
9028 * flower/include/real.hh: std::fabs too.
9030 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
9032 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
9034 * lily, flower: Include C++ iso C headers. Import namespace std
9037 * lily/side-position-interface.cc:
9039 * lily/note-head.cc:
9040 * lily/include/includable-lexer.hh:
9041 * flower/include/string-data.icc: Remove using std::*.
9043 * lily, flower: Include C++ iso C headers. Import namespace std
9046 * lily/side-position-interface.cc:
9048 * lily/note-head.cc:
9049 * lily/include/includable-lexer.hh:
9050 * flower/include/string-data.icc: Remove using std::*.
9052 * Documentation/user/instrument-notation.itely (Entering lyrics):
9053 Multiple latin-1->utf-8 conversion fix.
9055 * Documentation/user/*tely: Update Emacs cookie to utf-8.
9057 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9059 * lily/tie.cc (get_configuration): also avoid dots for non-space
9062 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
9064 * Documentation/user/instrument-notation.itely: Bugfix.
9066 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
9068 * tex/GNUmakefile: don't install texinfo.tex
9070 * tex/ : cleanup: remove unused files.
9072 * lily/general-scheme.cc: remove my_{isinf,isnan}.
9074 * flower/include/real.hh: using std::{isnan,isinf}
9076 * VERSION (PATCH_LEVEL): release 2.7.9
9078 2005-09-05 Graham Percival <gpermus@gmail.com>
9080 * Documentation/user/ instrument-notation.itely,
9081 advanced-notation.itely: minor tweaks.
9083 * input/test/script-chart.ly: add item padding.
9085 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9087 * flower/offset.cc: use math.h iso. <cmath>
9089 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9092 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9093 (widen-left-stencil-edges): new function. Fix alignment problems
9094 with LaTeX includegraphics.
9096 * lily/text-interface.cc (interpret_markup): use abort().
9098 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9100 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9102 * lily/tie.cc (get_configuration): update bezier shape as we
9104 (get_configuration): don't move large ties if we're outside of the
9107 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9109 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9111 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9113 * .cvsignore: Add auto-generated configure files and then some.
9115 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9117 * scm/define-grobs.scm (DynamicLineSpanner): Add
9118 X-extent-callback. Fixes hairpin-slur collision.
9120 2005-08-31 Graham Percival <gpermus@gmail.com>
9122 * Documentation/user/advanced-notation.itely,
9123 basic-notation.itely: minor changes.
9125 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9127 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9128 \linebreak between each .eps file if \betweenLilyPondSystem is
9131 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9132 music): Document the \linebreak
9134 * Documentation/user/lilypond-book.itely,
9135 input/tutorial/lbook-latex-test.tex,
9136 Documentation/user/examples.itely: Remove \usepackage{graphics}
9138 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9140 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9142 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9145 * scripts/lilypond-book.py (PREAMBLE_LY): define
9146 inside-lilypond-book
9147 (modify_preamble): new function. Insert \RequirePackage{graphics}
9148 when no {graphics found in preamble.
9150 2005-08030 Graham Percival <gpermus@gmail.com>
9152 * Documentation/user/basic-notation.itely, global.itely,
9153 tutorial.itely: misc small changes.
9155 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9157 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9160 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9162 * lily/tie-column.cc (new_directions): put Tie down on center
9165 * lily/script-interface.cc (before_line_breaking): use
9166 Grob::programming_error
9168 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9170 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9173 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9175 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9177 2005-08-29 Werner Lemberg <wl@gnu.org>
9179 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9180 the `*.scale.pfa' files to avoid warnings.
9182 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9184 * lily/tempo-performer.cc (process_music): idem.
9186 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9188 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9190 * Documentation/user/advanced-notation.itely (Text markup): not a
9193 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9195 * lily/staff-performer.cc (initialize): add tempo/name to
9198 2005-08-26 Graham Percival <gpermus@gmail.com>
9200 * Documentation/user/advanced.itely: add text-only example.
9202 * Documentation/user/invoking.itely: add index entries for
9205 * Documentation/user/ tutorial.itely, basic-notation.itely:
9206 small fixes suggested by Steve D. Thanks!
9208 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9210 * input/regression/markup-bidi-pango.ly: new file.
9212 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9213 standard. Remove #ifdef. Remove memleak.
9214 (text_stencil): use text_dir to decide how to composite items.
9215 (text_stencil): determine uniform text direction for the entire
9218 * scripts/lilypond-book.py (output_name): remove
9219 latex_filter_cmd. Non-portable to non-Unix systems.
9220 (get_latex_textwidth): use File.write and os.unlink() instead.
9222 * THANKS: add Vicente & Trevor.
9224 * lily/grob.cc (discretionary_processing): look up origin for
9225 programming_error too.
9227 * input/regression/tie-broken.ly: new file.
9229 * lily/tie-column.cc (set_chord_outlines): set outline for line
9232 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9234 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9235 unscaled transform, just translate stencils.
9237 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9240 * scm/define-markup-commands.scm (wordwrap-string): use
9242 (wordwrap-stencils): idem.
9245 (wordwrap-stencils): translate last line to right for
9246 text-direction = LEFT.
9248 * scm/define-grob-properties.scm (all-user-grob-properties): add
9251 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9253 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9254 when copying a Lily_parser object.
9256 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9258 * scm/define-markup-commands.scm (null): add null markup.
9260 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9262 * lily/item.cc: Add documentation of center-invisible
9264 2005-08-24 Graham Percival <gpermus@gmail.com>
9266 * Documentation/user/advanced-notation.itely: add info about
9269 * Documentation/user/programming-interface.itely: fix example
9270 involving raised text.
9272 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9274 * lily/beam.cc (print): fix X start/end points of isolated
9277 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9279 * lily/multi-measure-rest.cc (set_text_rods): new function.
9281 * lily/vertical-align-engraver.cc (process_music): call
9282 Align_interface::set_axis(). This forces #'elements to be ordered,
9283 preventing random vertical reordering of staves.
9285 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9286 add avoid-slur property.
9288 * Documentation/user/basic-notation.itely (Measure repeats): add
9289 countPercentRepeats example.
9291 * Documentation/user/advanced-notation.itely (Other text markup
9292 issues): remove remark about normal-font. We have \normal-text
9294 * input/regression/tie-chord.ly: add note about remaining bugs.
9296 * lily/tie.cc (print): try Tie_column::set_directions () if
9297 control-points not yet defined.
9299 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9301 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9302 extent. This fixes braces falling out of the EPS bbox.
9304 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9307 2005-08-23 Graham Percival <gpermus@gmail.com>
9309 * {various} : change #up->#UP and #down->#DOWN.
9311 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9313 * Documentation/user/advanced-notation.itely: clarify
9314 what objects handles text on a multimeasure rest.
9316 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9318 * VERSION (PATCH_LEVEL): release 2.7.7
9320 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9322 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9324 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9326 * input/regression/*.ly: formatting clean-up. Default layout
9327 before music expression.
9329 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9330 romanze28-2 example.
9332 * scm/ps-to-png.scm: remove dir-re function.
9333 (make-ps-images): generate page names, instead of globbing them.
9334 This brings down LilyPond memory usage for make web by a factor
9337 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9338 don't use glob. With 3000 files, globbing
9339 Documentation/user/out-www/ can take too much time.
9341 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9343 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9345 * input/regression/tie-manual.ly: new file
9347 * input/regression/tie-chord.ly: update.
9349 * flower/include/interval.hh (struct Interval_t):
9351 * lily/tie.cc (distance): new function
9352 (height): new function.
9353 (init): new function
9354 (Tie_details): new struct.
9356 * lily/skyline.cc (skyline_height): new function.
9358 * lily/tie-column.cc (set_chord_outlines): new function.
9359 (new_directions): read tie-configuration
9361 * lily/skyline.cc: fix ASCII art.
9363 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9365 * python/convertrules.py (string_or_scheme): Fix spelling error
9367 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9369 * lily/tie-column.cc (set_directions): set directions only once.
9370 (add_configuration): new function.
9372 * lily/tie.cc (set_control_points): new function
9374 * lily/tie-column.cc (new_directions): new function.
9376 * ly/music-functions-init.ly: set 'pitch property
9377 iso. trill-pitch. This makes \relative work with \pitchedTrill
9379 * lily/tie.cc (get_configuration): new function. Don't generate
9380 control points, rather, generate configuration.
9381 remove head-pair property.
9383 * lily/include/tie.hh (struct Tie_configuration): new struct.
9385 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9387 * Documentation/topdocs/NEWS.tely: clarify.
9389 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9391 * lily/tie.cc: remove minimum-length
9393 * scm/define-grob-properties.scm (all-user-grob-properties):
9394 remove staffline-clearance, y-offset
9396 * input/regression/tie-dots.ly (Module): remove.
9398 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9399 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9401 * input/regression/tie-single.ly: new file.
9403 2005-08-21 Graham Percival <gpermus@gmail.com>
9405 * ly/bagpipe.ly: fix compile problem.
9407 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9409 * lily/midi-item.cc (name): new method.
9411 * lily/staff-performer.cc (acknowledge_audio_element): use
9412 signature of baseclass.
9414 * lily/engraver-group.cc (do_announces): move recursion call out
9417 * lily/drum-note-performer.cc (class Drum_note_performer): use
9418 process_music everywhere.
9420 * ly/performer-init.ly: add default children everywhere.
9422 * lily/paper-book.cc (output): call paper-book-write-midis
9423 directly: always write MIDI, even if no \layout {} block.
9425 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9427 * VERSION (PACKAGE_NAME): release 2.7.6
9429 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9430 about not being able to handle repeat.
9432 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9434 * Documentation/user/examples.itely (Piano templates):
9435 * lily/include/performer-group.hh: Remove last traces of
9436 Performer_group_performer. Fixes make web.
9438 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9440 * Documentation/user/examples.itely (Piano templates): change
9441 Engraver_group_engraver -> Engraver_group
9443 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9444 scm_stand_in_procs is not weak_any.
9446 * lily/volta-bracket.cc (print): don't use strcmp().
9448 * lily/volta-engraver.cc (process_music): use
9449 Text_interface::is_markup() for setting the 'text property of the
9452 * input/mutopia/claop.py (accents): update syntax to 2.6
9454 * scm/define-context-properties.scm
9455 (all-user-translation-properties): add countPercentRepeats.
9457 * Documentation/user/basic-notation.itely (Measure repeats): add
9458 isolated percent example.
9460 2005-08-18 Graham Percival <gpermus@gmail.com>
9462 * input/ {various}: change direction #1, #-1 to
9463 #up/#down or \fooUp, \fooDown.
9465 * Documentation/user/music-glossary.tely: #-1 to #down.
9467 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9468 to #up, #-1 to #down.
9470 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9472 * lily/include/engraver-group.hh: rename.
9474 * lily/include/performer-group.hh: rename.
9476 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9478 * input/test/script-abbreviations.ly: Removed some old LaTeX
9481 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9483 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9484 Remove functions. Remove if 1: constructs, reindent.
9486 * scripts/convert-ly.py (add_version): Add functions from
9489 * scm/script.scm (default-script-alist):
9490 s/priority/script-priority. Fixes script stacking. Backportme.
9491 (Fermata): Very low priority.
9493 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9495 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9497 * input/regression/slur-script.ly: remove padding tweaks. Add
9500 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9501 time sigs and related stuff.
9503 * scm/define-grob-properties.scm (all-user-grob-properties): add