1 2006-11-10 Werner Lemberg <wl@gnu.org>
3 * Documentation/user/GNUmakefile ($(outdir)/lilypond/source,
4 $(outdir)/music-glossary/source): Fixes for `make -j'.
6 * Documentation/user/introduction.itely: Don't let images overlap
7 and update its scaling values.
9 * Documentation/user/lily-flat-bw.png,
10 Documentation/user/henle-flat-gray.png: Add vertical whitespace:
11 texinfo doesn't center images vertically for PDF output.
13 2006-11-09 Heikki Junes <hjunes@gmail.com>
15 * elisp/lilypond-font-lock.el: Should always have been GPL.
17 2006-11-07 Han-Wen Nienhuys <hanwen@lilypond.org>
19 * lily/break-substitution.cc:
20 * lily/dynamic-text-spanner.cc:
24 * lily/grob-property.cc:
25 use SCM_ASSERT_TYPE for graphing functions.
30 * lily/all-font-metrics.cc:
33 * input/regression/collision-heads.ly:
36 * lily/note-collision.cc:
37 * input/regression/collision-merge-differently-headed.ly:
38 Examine Stem::duration_log() for preventing merge of quarter and
39 halfnote. Fixes collision-heads.ly. Add separate regtest for that.
41 * scripts/lilypond-invoke-editor.scm:
42 don't use guile -e main execution.
44 * scm/define-grobs.scm:
45 use stem::calc-duration-log for rest.
47 * scm/define-markup-commands.scm:
48 another (sign dir) fix for note markup
50 * scm/define-markup-commands.scm:
51 use (sign dir) for computing attachment points.
53 * buildscripts/git-update-changelog.py:
54 run cvs up before patching.
56 2006-11-06 Han-Wen Nienhuys <hanwen@lilypond.org>
59 trim note-head.cc includes.
61 * lily/easy-notation.cc:
62 * lily/mensural-ligature-engraver.cc:
63 * lily/note-collision.cc:
65 * scm/define-grobs.scm:
67 use Rhythmic_head::duration_log() iso. Note_head::get_balltype().
69 * buildscripts/git-update-changelog.py:
70 also barf if file doesn't exist.
72 2006-11-07 Erlend Aasland <erlenda@gmail.com>
74 * scm/music-function.scm (add-ballon-text): add FIXME comment.
76 * scm/define-grob-properties.scm: remove old balloon stuff,
77 and do some trivial beautification.
79 2006-11-06 Nicolas Sceaux <nicolas.sceaux@free.fr>
81 * scm/music-functions.scm (markup-expression->make-markup): fix
82 the case when a markup found in a markup list is a simple
85 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
87 * lily/instrument-name-engraver.cc:
88 * input/regression/instrument-name-dynamic.ly:
89 ignore dynamic and pedal line spanners.
91 * Documentation/topdocs/NEWS.tely:
92 * Documentation/user/advanced-notation.itely:
94 * input/regression/balloon.ly:
96 * ly/music-functions-init.ly:
97 * scm/define-event-classes.scm:
98 * scm/define-grobs.scm:
99 * scm/define-music-properties.scm:
100 * scm/define-music-types.scm:
101 * scm/output-lib.scm:
102 * lily/balloon-engraver.cc:
103 rewrite balloon-text support. This is now a separate grob, with
104 itsvictim as the parent. This involves addingBalloon_engraver,
105 AnnotateOutputEvent, annotate-output-event,\balloonText,
106 \balloonGrobText, and modifying Balloon_interface::print.
108 * lily/paper-score.cc:
109 remove progress again
111 * lily/chord-name-engraver.cc:
114 * lily/paper-score.cc:
115 some useless statistics.
117 * buildscripts/git-update-changelog.py:
118 update todo/done after rejection due to removal analysis.
120 * buildscripts/git-update-changelog.py:
121 check whether removals from a diff actually apply.
123 2006-11-05 Joe Neeman <joeneeman@gmail.com>
125 * lily/include/page-turn-page-breaking.hh: remove unused
128 * lily/page-turn-page-breaking.cc (calc_demerits):
129 * lily/optimal-page-breaking.cc (try_page_spacing): remove
130 uniformity penalties.
132 2006-11-05 Werner Lemberg <wl@gnu.org>
134 * Documentation/user/changing-defaults.itely,
135 Documentation/user/preface.itely: Use `--', not `---'.
138 * Documentation/user/introduction.itely: Minor improvements.
139 (Automated engraving): Make example using \applyOutput work
142 * input/regression/apply-output.ly: Improve.
144 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
146 * lily/dynamic-engraver.cc:
149 * input/regression/note-head-harmonic.ly:
151 * input/regression/note-head-harmonic-whole.ly:
152 Center harmonic heads if stem is invisible. Fixes #140
155 end context snippet with '\n'
158 catch all GUILE exceptions
163 * lily/include/lily-lexer.hh:
164 * lily/lily-lexer.cc:
165 * lily/lily-parser.cc:
166 Lily_parser* arg for copy ctor too.
169 abc2ly new tempo syntax
171 2006-11-04 Heikki Junes <hjunes@gmail.com>
173 * po/fi.po: update Finnish translation.
175 2006-11-03 Graham Percival <gpermus@gmail.com>
177 * Documentation/user/ {various}: rename page->spacing,
178 global->non-music, invoking->running, example->templates.
180 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
182 * scm/display-lily.scm: add a parser argument to display methods,
183 instead of using a *parser* special variable.
185 * scm/define-music-display-methods.scm: add a parser argument to
186 display methods. Update the methods for \melisma, \melismaEnd,
187 \breathe, \tempo, \partial.
189 * input/no-notation/display-lily-tests.ly: update the test
190 utilities according to the changes in display-lily.scm
192 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
194 * *: The Joy of Merging.
196 * buildscripts/git-update-changelog.py:
197 sort commits, and use .git-commits-done file.
201 dist emacs patches too.
203 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
205 * scm/autochange.scm:
208 * lily/context-def.cc:
209 * lily/include/parse-scm.hh:
210 * lily/include/smobs.hh:
213 * lily/program-option.cc:
215 implement and use ASSERT_LIVE_IS_ALLOWED()
217 * ly/music-functions-init.ly:
218 * scm/autochange.scm:
219 set-part-combine fix for autochange.
221 * lily/include/lily-lexer.hh:
222 * lily/include/lily-parser.hh:
223 * lily/lily-lexer.cc:
224 * lily/lily-parser-scheme.cc:
225 * lily/lily-parser.cc:
226 clear lexer scopes after parsing file. Plugs pseudo memory leak
228 * ly/declarations-init.ly:
229 * ly/music-functions-init.ly:
230 * scm/part-combiner.scm:
231 Remove set-part-combine-listener. This plugs a memory leak.
237 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
242 * lily/part-combine-iterator.cc:
243 don't allocate part combine events statically. Plugs small leak.
245 * lily/lily-parser-scheme.cc:
246 plug memleak in case of failed files.
248 * lily/include/source.hh:
253 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
255 * lily/include/program-option.hh:
256 * lily/program-option.cc:
257 get_program_option() function
259 * ly/titling-init.ly:
260 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
262 * lily/include/translator.hh:
263 * lily/include/translator.icc:
264 * lily/translator.cc:
267 * lily/figured-bass-engraver.cc:
268 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
270 * stepmake/stepmake/compile-vars.make:
271 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
273 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
279 trim warning messages.
284 * input/regression/utf-8.ly:
285 document utf-8 meaning of phrases.
287 * scm/define-markup-commands.scm:
288 make \caps markup default to smallCaps
290 * lily/pango-font.cc:
292 use glyph indexing for glyph name .notdef
294 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
296 * input/regression/utf-8.ly: Fix doc to match order of language
299 2006-11-01 Joe Neeman <joeneeman@gmail.com>
301 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
302 page and line forces.
304 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
306 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
308 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
310 * Documentation/user/GNUmakefile:
311 don't use ImageMagick, use GS directly.
314 otf depends on otf-g?table. Fixes race condition in -j2 build.
315 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
321 remove .deb/.rpm downloading.
323 * buildscripts/git-update-changelog.py:
324 bugfixes for git-update-changelog.py
326 * Documentation/user/GNUmakefile:
329 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
331 * input/regression/tie-semi-single.ly:
332 use position/direction from single tie case too. This fixes
333 overrides and defaults for single laissez-vibrer and repeat ties.
335 * buildscripts/git-update-changelog.py:
336 only prepend header if one patch was successful.
338 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
340 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
341 stuff. Remove cygwin packaging stuff.
343 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
345 * python/convertrules.py (conv): Part 2 fixes vertical extent.
347 * input/test/vertical-extent.ly: Fix and elaborate on vertical
348 staff extent. (Thanks Mats)
350 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
352 * buildscripts/git-update-changelog.py (main): write .msg and cvs
355 * scm/define-grobs.scm:
356 separation-items have width
362 * Documentation/topdocs/NEWS.tely:
363 * lily/separating-group-spanner.cc:
364 * lily/slur-engraver.cc:
365 * lily/slur-scoring.cc:
366 * scm/define-grobs.scm:
367 * input/regression/slur-clef.ly:
368 add breakableSeparationItem to extra encompass for slurs. This
369 fixes slur/clef slur/key collisions etc. Should fix #49
371 * lily/include/slur-scoring.hh:
372 * lily/slur-scoring.cc:
373 Use X of separation item as slur start. Fixes #120
375 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
377 * buildscripts/git-update-changelog.py (changelog_body): don't
380 * lily/grob.cc: add avoid-slur
382 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
386 move server/emacsclient to elisp/
388 * buildscripts/git-update-changelog.py (Commit.note_del_file):
391 * elisp/server.el.patch:
394 * elisp/emacsclient.patch:
397 * buildscripts/git-update-changelog.py:
404 * buildscripts/git-update-changelog.py:
405 script to update ChangeLog with Git messages.
407 * lily/beam-engraver.cc:
408 * input/regression/rest-pitched-beam.ly:
409 don't set callback if staff-position set. Fixes #126.
411 * lily/bar-number-engraver.cc:
413 * lily/fingering-engraver.cc:
414 * lily/grob-property.cc:
416 * lily/include/grob.hh:
417 * lily/include/lily-guile-macros.hh:
418 * lily/mark-engraver.cc:
419 * lily/melody-engraver.cc:
420 * lily/script-column.cc:
421 * lily/tie-formatting-problem.cc:
423 internal_get_property_data() using ly_symbol2scm()
425 * stepmake/stepmake/generic-targets.make:
426 create .gitignore in outdir.
431 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
433 * input/test/vertical-extent.ly:
434 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
436 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
438 * stepmake/bin/add-html-footer.py (compose): remove setgcos
440 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
442 * GNUmakefile.in (install-help2man): install-help2man target.
444 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
446 * SConstruct (configure): Do not check for /bin/sh.
448 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
450 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
453 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
455 * input/regression/fret-boards.ly: new file.
457 * po/de.po: new po courtesy translation team.
459 * scripts/lilypond-book.py (get_option_parser): add newline to doc
462 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
464 * ly/gregorian-init.ly (neumeDemoLayout): update
465 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
467 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
468 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
470 2006-10-27 Erlend Aasland <erlenda@gmail.com>
472 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
473 Yet another build fix.
475 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
477 * SConstruct (lilypondprefix): use sorted() for list_sort()
480 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
482 * flower/SConscript: Unit test rules.
484 * flower/test-std.cc: Compile fix.
486 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
488 * python/midi.c (pymidi_parse_track): warning fixes.
490 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
491 include dot-column.hh
493 2006-10-26 Graham Percival <gpermus@gmail.com>
495 * Documentation/user/{basic-, global}: minor changes from mailist.
497 2006-10-26 Erlend Aasland <erlenda@gmail.com>
499 * scm/define-grobs.scm: trivial beautification
501 * lily/tie-performer.cc: no need to #include "pqueue.hh"
503 * lily/source-file.cc: put multibyte var inside #if clause
505 * scm/define-grob-interfaces.scm:
506 * scm/define-grob-properties.scm:
507 Build fix (string-fret-finger-combinations)
509 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
512 * Documentation/user/lilypond-book.itely: Build fix.
514 2006-10-26 Joe Neeman <joeneeman@gmail.com>
516 * lily/system.cc (get_paper_system):
517 * lily/paper-book.cc (systems):
518 move most of the backwards compatibility stuff into
521 * Documentation/topdocs/NEWS.tely: add 2 entries for the
524 * Documentation/user/page.itely: remove time-scaled-music
525 bug for the Page_turn_engraver
527 * lily/paper-book.cc (set_system_penalty): backwards
528 compatibility (breakbefore) for the old page breaker
530 2006-10-25 Graham Percival <gpermus@gmail.com>
532 * Diocumentation/user/instrument-notation.itely: added more
533 info about stanzas; thanks Geoff!
535 * Documentation/user/ {basic, advanced}: small fixes from
538 * THANKS: add some bug reporters.
540 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
542 * scm/define-context-properties.scm (all-user-translation-properties):
543 noteToFretFunction: Add.
545 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
546 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
548 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
550 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
553 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
554 Remove bashism in delete.
556 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
558 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
560 * scm/translation-functions.scm (determine-frets-mf): flatten let*
562 * scm/define-context-properties.scm
563 (all-user-translation-properties): add maximumFretStretch property.
565 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
567 * lily/source-file.cc (get_counts): use multibyte variable.
569 * scm/translation-functions.scm (determine-frets-mf): new
570 function: compute fret numbers.
572 * scm/output-lib.scm (string-frets->description) new function.
573 (fret-board::calc-stencil): new function
575 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
577 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
579 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
581 * lily/tab-note-heads-engraver.cc: cleanups.
583 * lily/fretboard-engraver.cc: new file
585 * ly/engraver-init.ly: add FretBoards context
587 2006-10-24 Joe Neeman <joeneeman@gmail.com>
589 * lily/grob.cc (pure_relative_y_coordinate)
590 (pure_height): use the new call_pure_function stuff
592 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
595 * lily/side-position-interface.cc (pure_y_aligned_side): add an
598 * lily/simple-closure.cc (ly_eval_simple_closure): make
599 simple-closure evaluatable from scheme
600 (evaluate_with_simple_closure): make simple-closures pure-
603 * lily/slur.cc (pure_outside_slur_callback): new function
605 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
606 fits in with previous changes that made the page forces much
609 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
610 and pure-Y-extent into this new function.
611 (pure-conversions-alist): add outside-slur-callback
613 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
615 * Documentation/user/advanced-notation.itely (Instrument names):
616 Remove obsolete bug workaround for instrument names on piano
619 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
621 * Documentation/user/lilypond-book.itely (Integrating DocBook and
622 music): patch by Bertalan Fodor for docbook.
624 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
625 of $(LILYPOND). Prevents lilypond run for .txt files.
627 * INSTALL.txt: gitness.
629 * .cvsignore: update to force gitness.
631 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
633 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
634 detect suicide in nested tuplets.
636 2006-10-23 Werner Lemberg <wl@gnu.org>
638 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
639 typo in argument to FT_Get_X11_Font_Format.
641 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
643 * stepmake/stepmake/po-vars.make: more gitness.
645 * flower/polynomial.cc (check_sol): no empty if bodies.
647 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
649 * stepmake/stepmake/po-vars.make: Resolve.
651 2006-10-29 Jan Nieuwenhuizen <janneke@gnu.org>
653 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
655 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
657 * buildscripts/git-update-changelog.py (main): write .msg and cvs
660 * scm/define-grobs.scm:
661 separation-items have width
667 * Documentation/topdocs/NEWS.tely:
668 * lily/separating-group-spanner.cc:
669 * lily/slur-engraver.cc:
670 * lily/slur-scoring.cc:
671 * scm/define-grobs.scm:
672 * input/regression/slur-clef.ly:
673 add breakableSeparationItem to extra encompass for slurs. This
674 fixes slur/clef slur/key collisions etc. Should fix #49
676 * lily/include/slur-scoring.hh:
677 * lily/slur-scoring.cc:
678 Use X of separation item as slur start. Fixes #120
680 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
682 * buildscripts/git-update-changelog.py (changelog_body): don't
685 * lily/grob.cc: add avoid-slur
687 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
691 move server/emacsclient to elisp/
693 * buildscripts/git-update-changelog.py (Commit.note_del_file):
696 * elisp/server.el.patch:
699 * elisp/emacsclient.patch:
702 * buildscripts/git-update-changelog.py:
709 * buildscripts/git-update-changelog.py:
710 script to update ChangeLog with Git messages.
712 * lily/beam-engraver.cc:
713 * input/regression/rest-pitched-beam.ly:
714 don't set callback if staff-position set. Fixes #126.
716 * lily/bar-number-engraver.cc:
718 * lily/fingering-engraver.cc:
719 * lily/grob-property.cc:
721 * lily/include/grob.hh:
722 * lily/include/lily-guile-macros.hh:
723 * lily/mark-engraver.cc:
724 * lily/melody-engraver.cc:
725 * lily/script-column.cc:
726 * lily/tie-formatting-problem.cc:
728 internal_get_property_data() using ly_symbol2scm()
730 * stepmake/stepmake/generic-targets.make:
731 create .gitignore in outdir.
736 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
738 * input/test/vertical-extent.ly:
739 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
741 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
743 * stepmake/bin/add-html-footer.py (compose): remove setgcos
745 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
747 * GNUmakefile.in (install-help2man): install-help2man target.
749 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
751 * SConstruct (configure): Do not check for /bin/sh.
753 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
755 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
758 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
760 * input/regression/fret-boards.ly: new file.
762 * po/de.po: new po courtesy translation team.
764 * scripts/lilypond-book.py (get_option_parser): add newline to doc
767 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
769 * ly/gregorian-init.ly (neumeDemoLayout): update
770 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
772 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
773 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
775 2006-10-27 Erlend Aasland <erlenda@gmail.com>
777 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
778 Yet another build fix.
780 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
782 * SConstruct (lilypondprefix): use sorted() for list_sort()
785 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
787 * flower/SConscript: Unit test rules.
789 * flower/test-std.cc: Compile fix.
791 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
793 * python/midi.c (pymidi_parse_track): warning fixes.
795 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
796 include dot-column.hh
798 2006-10-26 Graham Percival <gpermus@gmail.com>
800 * Documentation/user/{basic-, global}: minor changes from mailist.
802 2006-10-26 Erlend Aasland <erlenda@gmail.com>
804 * scm/define-grobs.scm: trivial beautification
806 * lily/tie-performer.cc: no need to #include "pqueue.hh"
808 * lily/source-file.cc: put multibyte var inside #if clause
810 * scm/define-grob-interfaces.scm:
811 * scm/define-grob-properties.scm:
812 Build fix (string-fret-finger-combinations)
814 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
817 * Documentation/user/lilypond-book.itely: Build fix.
819 2006-10-26 Joe Neeman <joeneeman@gmail.com>
821 * lily/system.cc (get_paper_system):
822 * lily/paper-book.cc (systems):
823 move most of the backwards compatibility stuff into
826 * Documentation/topdocs/NEWS.tely: add 2 entries for the
829 * Documentation/user/page.itely: remove time-scaled-music
830 bug for the Page_turn_engraver
832 * lily/paper-book.cc (set_system_penalty): backwards
833 compatibility (breakbefore) for the old page breaker
835 2006-10-25 Graham Percival <gpermus@gmail.com>
837 * Diocumentation/user/instrument-notation.itely: added more
838 info about stanzas; thanks Geoff!
840 * Documentation/user/ {basic, advanced}: small fixes from
843 * THANKS: add some bug reporters.
845 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
847 * scm/define-context-properties.scm (all-user-translation-properties):
848 noteToFretFunction: Add.
850 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
851 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
853 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
855 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
858 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
859 Remove bashism in delete.
861 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
863 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
865 * scm/translation-functions.scm (determine-frets-mf): flatten let*
867 * scm/define-context-properties.scm
868 (all-user-translation-properties): add maximumFretStretch property.
870 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
872 * lily/source-file.cc (get_counts): use multibyte variable.
874 * scm/translation-functions.scm (determine-frets-mf): new
875 function: compute fret numbers.
877 * scm/output-lib.scm (string-frets->description) new function.
878 (fret-board::calc-stencil): new function
880 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
882 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
884 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
886 * lily/tab-note-heads-engraver.cc: cleanups.
888 * lily/fretboard-engraver.cc: new file
890 * ly/engraver-init.ly: add FretBoards context
892 2006-10-24 Joe Neeman <joeneeman@gmail.com>
894 * lily/grob.cc (pure_relative_y_coordinate)
895 (pure_height): use the new call_pure_function stuff
897 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
900 * lily/side-position-interface.cc (pure_y_aligned_side): add an
903 * lily/simple-closure.cc (ly_eval_simple_closure): make
904 simple-closure evaluatable from scheme
905 (evaluate_with_simple_closure): make simple-closures pure-
908 * lily/slur.cc (pure_outside_slur_callback): new function
910 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
911 fits in with previous changes that made the page forces much
914 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
915 and pure-Y-extent into this new function.
916 (pure-conversions-alist): add outside-slur-callback
918 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
920 * Documentation/user/advanced-notation.itely (Instrument names):
921 Remove obsolete bug workaround for instrument names on piano
924 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
926 * Documentation/user/lilypond-book.itely (Integrating DocBook and
927 music): patch by Bertalan Fodor for docbook.
929 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
930 of $(LILYPOND). Prevents lilypond run for .txt files.
932 * INSTALL.txt: gitness.
934 * .cvsignore: update to force gitness.
936 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
938 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
939 detect suicide in nested tuplets.
941 2006-10-23 Werner Lemberg <wl@gnu.org>
943 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
944 typo in argument to FT_Get_X11_Font_Format.
946 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
948 * stepmake/stepmake/po-vars.make: more gitness.
950 * flower/polynomial.cc (check_sol): no empty if bodies.
952 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
954 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
956 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
958 * Documentation/user/examples.itely (Transcription of mensural
959 music): Added more comments in .ly source. Suggest to remove
960 Forbid_line_break_engraver to allow line breaking at all bars.
962 * Documentation/user/instrument-notation.itely (Ancient
963 articulations): Updated @refbugs regarding episem.
965 * Documentation/user/instrument-notation.itely (Gregorian square
966 neumes ligatures): Added \augmentum dots. Updated @refbugs
967 regarding \augmentum.
969 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
971 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
974 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
977 * ly/gregorian-init.ly: Added \augmentum macro.
979 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
981 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
983 * lily/pango-font.cc (pango_item_string_stencil): use
984 FT_Get_X11_Font_Format()
986 2006-10-22 John Mandereau <john.mandereau@free.fr>
988 * po/fr.po: update translation.
990 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
992 * VERSION (PATCH_LEVEL): bump version
994 * input/regression/horizontal-bracket-break.ly: new file.
996 * scm/define-grobs.scm (all-grob-descriptions): calc
999 * lily/horizontal-bracket.cc (make_bracket): support
1000 connect-to-neighbor. Fix #118
1002 * VERSION: release 2.9.26-2
1004 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
1006 * VERSION (PACKAGE_NAME): release 2.9.26
1008 * buildscripts/output-distance.py (test_basic_compare): add
1010 (FileLink.multi_img_cell): new function, glob multi-page png
1013 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1015 * po/lilypond.pot: update.
1017 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
1019 * Documentation/user/global.itely (File structure): remove
1022 * lily/parser.yy (FIXME): remove ADDQUOTE
1024 * Documentation/user/global.itely (Extracting fragments of
1025 notation): new node, about clip systems.
1027 * Documentation/user/lilypond-book.itely (Many quotes of a large
1028 score): ref to clip systems.
1030 * Documentation/user/instrument-notation.itely (Entering lyrics):
1031 add note about lyric ties and required font.
1033 * lily/open-type-font.cc (glyph_list): format errors.
1035 * Documentation/user/programming-interface.itely (Scheme
1036 procedures as properties): more doco on simple-closure and scheme
1038 (Input variables and Scheme): use lilypond[verbatim], document
1041 * Documentation/user/page.itely (Displaying spacing): use \book
1042 explicitly, so arrows show .
1043 (Line breaking): add note about Forbid_line_break_engraver
1045 * Documentation/user/tweaks.itely (Common tweaks): also set length
1046 to prevent tie squeezing.
1047 (Default files): use @var{}
1049 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
1050 (Generating LilyPond files): add FOMUS.
1052 2006-10-20 Joe Neeman <joeneeman@gmail.com>
1054 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
1055 Y-offset for TextScript and Script
1057 * lily/text-engraver.cc (make_item):
1058 * lily/script-engraver.cc (make_script_from_event):
1059 remove call to Side_position_interface::set_axis since all scripts
1060 now have this set by default
1063 * lily/prob.cc: use variables
1065 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1067 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
1068 at typography, rather analyse stream event duration.
1070 * Documentation/user/page.itely (Page formatting): set a6 paper
1071 for system separator example.
1073 * lily/arpeggio.cc (Module): idem.
1075 * lily/accidental-placement.cc: add script-priority property.
1077 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
1079 * lily/ttf.cc (print_trailer): if all else fails: use
1080 glyphIndexXXXX as glyph name. Fixes #117.
1082 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
1083 entry if cmap contains glyph.
1084 (get_index_to_charcode_map): remove from Pango_font class, use
1085 global filename -> font mapping.
1086 (get_glyph_index_name): new function.
1087 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
1090 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
1092 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
1095 * scm/define-grob-properties.scm (all-user-grob-properties):
1096 remove outdated doc. Fixes #116
1098 * lily/completion-note-heads-engraver.cc (process_music): always
1099 clone input events; otherwise we may overwrite input 'duration
1100 property. Fixes #115.
1102 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
1105 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
1108 * VERSION (PATCH_LEVEL): bump version.
1110 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1112 * lily/engraver.cc (internal_make_grob): use variables.
1114 * flower/string-convert.cc (dec2double): clean-up warnings.
1116 * configure.in (CXXFLAGS): add -Werror.
1118 * VERSION (PACKAGE_NAME): release 2.9.25
1120 2006-10-18 Joe Neeman <joeneeman@gmail.com>
1122 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
1123 line even if we precede a forced break.
1125 * lily/optimal-page-breaking.cc (try_page_spacing): square line
1126 forces too. Make page-spacing weight default to 10 because the
1127 changes to vertical springs decreased the page force/line force
1128 proportions. Also, take the average of line force and page force
1129 instead of just the sum.
1131 * lily/constrained-breaking.cc (initialize): make the stiffness
1132 of the vertical springs depend on the height of the system. This
1133 prevents pages with only a few large systems from getting huge
1136 * Documentation/user/page.itely (Page formatting): document the
1137 change in default page-spacing-weight
1139 * lily/include/constrained-breaking.hh: initialise bottom_padding_
1141 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1143 * input/typography-demo.ly (melody): remove superfluous slur.
1145 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
1146 add piano-pedal-script-interface
1148 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
1150 * scripts/lilypond-book.py: DocBook support.
1152 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1154 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
1156 (stop_translation_timestep): set bound to currentMusicalColumn if
1157 not set yet. Fixes #102
1159 * lily/piano-pedal-bracket.cc: formatting.
1161 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
1163 * lily/piano-pedal-align-engraver.cc: new class
1164 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
1167 2006-10-18 Heikki Junes <hjunes@gmail.com>
1169 * po/fi.po: Update Finnish translation (before the next release).
1171 2006-10-17 Joe Neeman <joeneeman@gmail.com>
1173 * lily/system.cc (get_paper_system): reinstate the backwards-
1174 compatible page breaking for the old page breaker.
1176 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
1178 * lily/recording-group-engraver.cc: removed
1180 * lily/context.cc, lily/translator-group.cc: Don't touch
1181 Context::implementation_ if it's null
1183 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1185 * scm/paper.scm: only use left-margin if defined.
1187 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
1189 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
1191 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
1192 strokeFingerOrientations
1194 * lily/script-column.cc (row_before_line_breaking): also handle
1195 accidentals and arpeggios in horizontal script stacking.
1197 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
1200 * input/regression/script-stack-horizontal.ly: trim.
1202 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1204 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
1207 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
1208 'text if string argument.
1210 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
1212 * scm/define-context-properties.scm
1213 (all-user-translation-properties): change to strokeFingerOrientations
1215 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
1217 * lily/parser.yy: remove debug output
1219 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1221 * ly/paper-defaults.ly: set left/right margin.
1223 * scm/paper.scm (set-paper-dimensions): use left-margin and
1224 right-margin for computing linewidth.
1226 * Documentation/topdocs/NEWS.tely (Top): idem.
1228 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
1231 * scm/define-markup-commands.scm (tied-lyric): increase negative
1232 space: space syllables tighter.
1234 * VERSION (PATCH_LEVEL): bump version.
1236 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
1239 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
1241 * COPYING: further clarification
1243 * VERSION: release 2.9.24
1245 * input/regression/script-stack-horizontal.ly: add version.
1247 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
1249 * input/regression/lyric-tie.ly (texidoc): use different words.
1251 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
1253 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
1255 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
1256 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
1258 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
1260 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
1262 * Doxyfile: remove file.
1264 * scm/define-grob-interfaces.scm (string-finger-interface): add
1265 string-finger-interface
1267 * lily/general-scheme.cc (LY_DEFINE): move
1268 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
1270 * Documentation/topdocs/NEWS.tely (Top): add note for
1271 string-finger feature.
1273 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
1276 * scm/output-lib.scm (string-finger::calc-text): read 'digit
1279 * input/regression/script-stack-horizontal.ly: new file.
1281 * ly/engraver-init.ly: add Script_row_engraver.
1283 * lily/script-column.cc (order_grobs): refactor: separate axis
1285 (row_before_line_breaking): new function.
1287 * lily/script-row-engraver.cc (Script_row_engraver): new file.
1289 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
1291 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
1293 * Documentation/user/instrument-notation.itely: Cleanup: Remove
1294 annoying skip notes from mensural ligature example. Update
1295 @refbugs for ligatures and mensural ligatures.
1297 * lily/coherent-ligature-engraver.cc,
1298 lily/include/coherent-ligature-engraver.hh,
1299 lily/mensural-ligature-engraver.cc,
1300 lily/vaticana-ligature-engraver.cc: Revise code for item
1301 reparentizing. There should now be less programming_error
1304 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
1306 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
1307 Maintenance bugfix: Don't create empty Stencil (), but empty box
1308 instead. This fix should eliminate some programming_error
1311 * ly/engraver-init.ly (MensuralStaff): Set default accidental
1314 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
1315 \layout block _before_ score.
1317 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
1319 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
1321 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
1323 2006-10-13 Erlend Aasland <erlenda@gmail.com>
1325 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
1327 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
1329 * VERSION (PATCH_LEVEL): bump version.
1331 * COPYING: clarify exception note.
1333 * lily/main.cc: remove remark about "COPYING".
1335 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
1336 system-count starts at 0 for each clip-region. Change name to
1337 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
1338 layout block, per score.
1340 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
1342 * lily/input-smob.cc: add equal_p for Input
1344 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
1347 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
1349 * lily/prob.cc: Add equal_p predicate for Prob
1351 * lily/translator.cc: small cleanup
1353 * scm/document-music.cc: use data from translator listener
1354 registration to generate documentation for event classes
1356 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
1358 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
1360 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
1362 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
1364 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
1366 * Documentation/topdocs/INSTALL.texi: Thinko.
1368 * .cvsignore: Update.
1370 * lexer-gcc-3.1.sh: Remove.
1372 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
1373 Update anonymous cvs access. Remove comment about gcc 3.0.4.
1375 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1377 * VERSION: release 2.9.23
1379 * lily/paper-column-engraver.cc (stop_translation_timestep): also
1380 typecheck barnumber.
1382 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
1384 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
1386 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
1388 * input/regression/clip-systems.ly (Notes): new file.
1390 * scm/lily.scm (define-scheme-options): add clip-systems option.
1392 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
1394 (dump-stencil-as-EPS): move bbox calculation from previous
1396 (output-framework): use -dclip-systems
1398 * scm/lily-library.scm (filtered-map): new function
1400 * scm/framework-ps.scm (clip-system-EPS): new function.
1401 (clip-system-EPSes): new function.
1403 * lily/paper-column.cc: add rhythmic-location to interface
1405 * scm/define-grob-properties.scm (all-user-grob-properties): add
1406 rhythmic-location property.
1408 * scm/clip-region.scm: new file: rhythmic-location data type and
1409 system-clipped-x-extent function.
1411 * ly/init.ly: use (scm clip-region)
1413 * lily/paper-column-engraver.cc (stop_translation_timestep): set
1414 rhythmic-location for paper column grobs.
1416 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
1418 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
1420 * ly/engraver-init.ly: Remove obsolete comment on
1421 Bar_number_engraver.
1423 * Documentation/user/instrument-notation.itely: Tune Ancient
1424 Articulations figure, such that the episem actually shows.
1426 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1427 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1429 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1432 2006-10-12 Graham Percival <gpermus@gmail.com>
1434 * Documentation/user/ {some}: minor edits that were lost somehow.
1436 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1438 * VERSION (PACKAGE_NAME): bump version.
1440 * input/regression/lyric-tie.ly (texidoc): new file.
1442 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1444 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1446 * scm/define-markup-commands.scm (tied-lyric): new function: split
1447 string along ~ and reattach with U+203F (tie character) and
1450 * scm/output-lib.scm (lyric-text::calc-text): new function.
1452 * lily/lyric-engraver.cc (process_music): don't set 'text.
1454 * scm/output-lib.scm (string-finger::calc-text): new function
1455 (lyric-text::print): new function.
1457 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1458 generic for fingering & string number. Use for string-finger.
1460 * scm/define-music-types.scm (music-descriptions): add
1463 * lily/fingering-engraver.cc (listen_string_finger): new function
1465 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1467 * scm/define-context-properties.scm
1468 (all-user-translation-properties): add stringFingerOrientations
1470 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1472 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1473 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1475 * lily/dots.cc: Added style property for dots.
1477 * mf/parmesan-heads.mf: Fix typo in comment.
1479 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1480 adding longa head to feta font and removing obsolete default
1481 mapping scheme code.
1483 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1485 * scm/output-lib.scm (fingering::calc-text): use origin
1486 event-property, not music-property.
1488 * lily/lilypond.rc.in: spell my name correctly.
1490 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1492 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1493 already have a non-empty extent. Fixes estimation for Hara-kiri
1496 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1498 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1501 * lily/ligature-engraver.cc: Remove unused #include.
1503 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1504 Bugfix: remove method check_for_prefix_loss(Item *) from global
1505 namespace to avoid namespace pollution.
1507 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1509 * VERSION: release 2.9.22
1511 * ly/generate-documentation.ly: update option name.
1513 * lily/dynamic-text-spanner.cc (print): revert fix.
1515 * scm/define-grob-interfaces.scm
1516 (trill-pitch-accidental-interface):
1517 add trill-pitch-accidental-interface
1519 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1520 dereference if it's really a duration.
1522 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1523 useBassFigureExtenders is not set.
1524 (listen_bass_figure): record as new event if
1525 useBassFigureExtenders not set. Fixes #103.
1527 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1528 instead: move circle. Fixes #107.
1530 * scm/define-grobs.scm (all-grob-descriptions): set
1531 allow-loose-spacing for PaperColumn and
1532 NonMusicalPaperColumn. Kludge for #110.
1534 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1536 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1537 allow-loose-spacing property.
1539 * scm/define-markup-commands.scm (postscript): gsave & grestore
1540 around embedded PS. Do setlinewidth too. Fixes #109.
1542 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1544 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1545 code. This patch fixes ligature brackets that were not at all
1548 2006-10-08 Graham Percival <gpermus@gmail.com>
1550 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1552 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1554 * scm/define-context-properties.scm: clarified docs (bug 91).
1556 * Documentation/user/basic-notation.itely: document volta brackets
1557 not aligning (bug 63).
1559 * Documentation/user/ global.itely invoking.itely: ignore or
1560 add warnings about texstr.
1562 2006-10-08 John Mandereau <john.mandereau@free.fr>
1564 * po/fr.po: update translation.
1566 * po/: update msgids.
1568 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1570 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1572 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1574 * Documentation/user/page.itely (Two-pass vertical spacing): add
1575 documentation for two-pass spacing technique.
1577 2006-10-06 Graham Percival <gpermus@gmail.com>
1579 * Documentation/user/convert-ly.txt: new file; new
1580 storage place for this file (moved from bugs/ CVS).
1582 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1584 * lily/note-head.cc: Fixed programming_error message.
1586 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1588 * scm/define-grobs.scm (pure-conversion): move pure-callback
1591 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1592 marcato, stopped, thumb.
1594 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1596 * lily/completion-note-heads-engraver.cc (process_music): don't
1597 skimp on memory usage.
1599 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1602 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1603 parenthesis item. This fixes premature Y-extent triggering. Fixes
1606 * VERSION (PATCH_LEVEL): bump version.
1608 2006-10-04 Graham Percival <gpermus@gmail.com>
1610 * Documentation/user/advanced-notation.itely: added
1611 info about instrument names for piano or other contexts,
1614 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1616 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1617 solfa_base_notewidth as unit for non-DO-notes too.
1619 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1621 * VERSION: release 2.9.21
1623 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1626 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1628 * python/lilylib.py (progress): Minor fix.
1630 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1632 * lily/note-name-engraver.cc: doc engraver.
1634 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1636 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1638 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1641 * lily/stem-engraver.cc (make_stem): don't set duration-log
1643 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1644 write snippet-names binary.
1646 * python/lilylib.py (system): use os.system for mingw32
1648 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1651 * scm/backend-library.scm: update email address.
1653 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1656 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1659 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1660 handle dot creation separately.
1662 * lily/tab-note-heads-engraver.cc (process_music): idem.
1664 * lily/drum-note-engraver.cc (process_music): idem.
1666 * lily/note-heads-engraver.cc (process_music): idem.
1668 * lily/rest-engraver.cc: don't set duration-log.
1670 * scm/output-lib.scm (string-number::calc-text): new function.
1671 (note-head::calc-duration-log): new function.
1673 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1675 * scm/output-lib.scm (fingering::calc-text): new function.
1677 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1679 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1680 and include-eps-font -> include-eps-fonts
1682 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1684 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1686 * lily/timing-translator.cc: list properties.
1687 (start_translation_timestep): update internalBarNumber too.
1689 * scm/define-context-properties.scm
1690 (all-user-translation-properties): add internalBarNumber.
1692 * input/regression/spacing-no-note.ly: new file.
1694 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1696 * lily/book.cc: #include cleanup.
1698 * lily/include/lily-guile-macros.hh: add assert to
1699 scm_or_str2symbol(SCM).
1701 * VERSION (PATCH_LEVEL): bump version.
1703 * lily/spacing-spanner.cc (musical_column_spacing): handle
1704 musical->nonmusical spacing case, where there is no spacing
1705 wish. Fixes issue #61.
1707 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1708 (pango_item_string_stencil): use logical rect horizontally (to
1709 preserve spaces), ink_rect vertically (for time signatures).
1711 * lily/font-metric.cc (word_stencil): new interface function
1713 * input/regression/utf-8-mixed-text.ly: new file.
1715 * lily/percent-repeat-engraver.cc (listen_percent): remove
1718 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1719 non-dynamic scripts. Fixes #30.
1721 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1723 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1725 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1726 SCM_UNDEFINED for non-existent data.
1728 * lily/side-position-interface.cc (general_side_position): allow
1729 optional current_offset argument for chaining, so combinations of side-position
1730 and outside slur callback don't add up. Fixes issue #92.
1732 * lily/pango-font.cc (pango_item_string_stencil): use
1733 logical_rect. This prevents spaces after words from disappearing,
1736 * VERSION: release 2.9.20
1738 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1740 * scm/define-grob-properties.scm (all-user-grob-properties):
1741 mention stencil as user settable.
1743 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1745 * Documentation/user/page.itely (Page formatting):
1746 document auto-first-page-number
1748 * lily/page-breaking.cc (find_chunks_and_breaks):
1749 * lily/paper-score.cc (calc_breaking): Follow changes to the
1750 Constrained_breaking interface
1752 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1753 here backwards, as an optimisation
1754 (initialize): new function; move most of the code in resize () here
1755 (combine_demerits): cache ragged_right_
1756 (Constrained_breaking): constructor now takes the Paper_score
1758 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1760 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1761 avoid parser lookahead for 0-ary functions.
1763 * lily/translator.cc: Extract event classes from
1764 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1766 2006-10-02 Heikki Junes <hjunes@gmail.com>
1768 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1771 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1773 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1774 function. Call the page breaking function selected in the
1775 `page-breaking' \paper variable, then the post processing function
1776 chosen using the `page-post-process' \paper variable.
1777 (line-height): new function. Return the height of a system.
1778 (line-minimum-position-on-page): new function. Return the position
1779 of a system on page (using the previous line position), only
1780 considering between system padding.
1781 (stretchable-line?): new function. Says whether a line can be
1782 stretched (ie. is not a title nor a single staff system).
1783 (page-maximum-space-left): new function. Computes space left on a
1784 page, when all systems are separated by their padding.
1786 * lily/page-breaking.cc (breaking::make_pages): Move page post
1787 processing function call to page breaking wrapper (common to all
1790 * lily/paper-book.cc (book::pages): call the page breaking
1791 wrapper, instead of the page breaker directly
1793 * ly/paper-defaults.ly: Add \paper variables for page breaking
1794 wrapper and page post processing function. Make
1795 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1796 `system-maximum-stretch-procedure' variable for holding a function
1797 computing the maximum stretch a system allows.
1799 * scm/layout-page-dump.scm (write-page-breaks): computes the
1800 stretch to apply to systems on a page to minimize left
1801 space. Dump this stretch length.
1803 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1804 the system-stretch property of the tweak data to stretch the
1806 (includePageLayoutFile): Void function which includes the
1807 generated page-layout file if it exists and if the page layout
1808 dumping is not asked.
1809 (scoreTweak): if the score tweak named by the argument exists,
1812 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1814 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1815 handle correctly the case where there are multiple \noPageBreaks
1818 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1820 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1822 * abc2ly.py fix so that entering " -- " will translate to a -- in
1823 the lilypond instead of a " - - "
1825 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1827 * lily/align-interface.cc: fix typo
1829 * lily/dynamic-text-spanner.cc (print): Add a special case for
1830 trill spanner right sides.
1832 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1834 * lily/align-interface.cc (get_extents_aligned_translates): add
1835 support for padding variable.
1837 * lily/break-align-interface.cc (self_align_callback): oops: use
1838 loop variable in guard.
1840 * input/regression/repeat-percent-grace.ly: new file.
1842 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1843 remember first currentCommandColumn of a grace run. Fixes issue 70.
1845 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1846 move class definition to CC file.
1848 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1850 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1851 measure-long repeats.
1853 * flower/include/international.hh: include stdarg.h
1855 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1857 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1858 put_systems_on_pages to return an empty result, we need to assign
1859 demerits properly in that case.
1860 (put_systems_on_pages): Make the number of pages depend on the
1861 evenness of page_number. Add auto-first-page-number.
1862 (calc_subproblem): ensure that the page-number is even for the
1863 left-hand page. Warn if the first page-turn doesn't fit onto the
1864 first (right-hand) page.
1866 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1867 (min_page_count): make this publicly accessible
1868 (min_page_count): fix a bug when there are forced page breaks that
1869 was introduced when I made this loop run backwards
1870 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1871 replace space_systems_on_min_pages with these two. The logic in
1872 space_systems_on_min_pages was getting too convoluted and is better
1873 contained in page-turn-page-breaking.
1875 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1877 (breakable_column): typo
1879 * lily/source-file.cc (get_line): fix off-by-one error
1880 and clean up some of the logic
1882 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1884 * lily/page-breaking.cc (make_pages): honour the first-page-number
1887 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1889 * VERSION (PACKAGE_NAME): bump version.
1891 2006-09-26 Pal Benko <benko.pal@gmail.com>
1893 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1894 (the latter is the same as petrucci-f which is kept for compatibility)
1896 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1898 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1900 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1902 * lily/global-context.cc (run_iterator_on_me): break out of loop
1903 if moment doesn't increase.
1905 * scm/define-grob-properties.scm (all-user-grob-properties): add
1908 * lily/accidental.cc (after_line_breaking): read forced property.
1910 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1913 * input/regression/accidental-forced-tie.ly: new file.
1915 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1917 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1919 * lily/figured-bass-engraver.cc: only listen to rest events if
1920 ignoreFiguredBassRest is not set.
1922 * scm/define-context-properties.scm
1923 (all-user-translation-properties): add ignoreFiguredBassRest property
1925 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1927 * lily/paper-book.cc (get_system_specs):
1928 (set_system_penalty): fix breakbefore.
1929 We used to set a penalty on the system after the break, now we
1930 set a permission on the system before the break
1932 * lily/grob-property.cc: add scm debugging hooks into
1933 property modification
1935 * lily/context-property.cc:
1937 rename make_foo_from_properties to internal_make_foo and
1938 move it from context-property.cc to a member function of
1941 * lily/include/lily-guile-macros.hh:
1942 overload ly_symbol2scm macro so that there is no more need
1945 * lily/volta-repeat-iterator.cc:
1946 * lily/tweak-engraver.cc:
1947 * lily/tuplet-bracket.cc:
1948 * lily/span-bar-engraver.cc:
1949 * lily/script-engraver.cc:
1950 * lily/prob-scheme.cc:
1951 * lily/pointer-group-interface.cc:
1953 * lily/grob-scheme.cc:
1954 * lily/grob-property.cc:
1956 * lily/context-property.cc:
1957 * lily/break-substitution.cc:
1958 * lily/break-align-engraver.cc:
1959 * lily/axis-group-interface.cc:
1960 * lily/align-interface.cc:
1961 remove calls to internal_FOO
1963 * lily/system-start-delimiter-engraver.cc:
1964 * lily/parenthesis-engraver.cc:
1965 * lily/accidental-engraver.cc:
1966 remove calls to make_foo_from_properties
1968 2006-09-23 Graham Percival <gpermus@gmail.com>
1970 * Documentation/user/programming-iterfaces.itely: fix
1971 def-music-function -> define-music... leftover.
1973 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1975 * lily/page-spacing.cc (min_page_count): by running the loop
1976 backwards, we can calculate ragged_last properly.
1978 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1980 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1981 printfirst-page-number -> print-first-page-number
1983 * python/convertrules.py: corresponding rule.
1985 * Documentation/user/page.itely (Page formatting): Document the
1986 default values of all page layout parameters.
1988 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1990 * lily/lexer.ll: remove limitation on music function arity. New
1991 mode extratoken, which inserts extra EXPECT_* tokens after
1992 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1994 * lily/parser.yy: Change grammar for music function accordingly.
1996 * lily/include/lily-parser.hh: New method get_state, new member
1997 hidden_state. Works around a problem when parser fetches
1998 MUSIC_FUNCTION token but not the following EXPECT_* token.
2000 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
2003 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
2004 references to Music; use ASSIGN_EVENT_ONCE everywhere
2006 * lily/grob-info.cc: junk *music_cause
2008 * lily/music.cc: copy eventified articulations to stream event
2010 * lily/part-combine-iterator.cc: Cleanup using enums
2012 * lily/translator-group.cc: Junk OldMusicEvent, and associated
2015 * lily/include/engraver.hh: Junk music.hh include
2017 * lily/stream-event.cc: Changed constructors
2019 2006-09-21 Graham Percival <gpermus@gmail.com>
2021 * Documentation/user/tweaks.itely (Fitting music onto fewer
2022 pages): change settings to avoid warning messages.
2024 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
2026 * Documentation/user/tweaks.itely (Fitting music onto fewer
2027 pages): Add between-system-space setting.
2029 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2031 * lily/accidental-placement.cc (calc_positioning_done): don't
2032 trigger Y-extent calculation too early. Use pure_height instead.
2034 * lily/scale.cc (LY_DEFINE): new file.
2036 2006-09-20 Joe Neeman <joeneeman@gmail.com>
2038 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
2039 that happen at the start of a score: having a zero-length
2040 chunk was messing up min_system_count calculations.
2042 * lily/source-file.cc (get_line): lower_bound, not
2043 binary_search. Fixes problem where point-and-click would
2044 always point to the first line.
2046 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2048 * lily/accidental-placement.cc (calc_positioning_done): also put
2049 stems into accidental support.
2051 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
2054 * scm/script.scm (default-script-alist): avoid-slur and
2055 slur-padding for portato script.
2057 * lily/stem-tremolo.cc (translated_stencil): new function.
2058 (height): use new function. Fixes tremolos on whole notes.
2060 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
2063 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2065 * scripts/abc2ly.py (try_parse_comment): idem.
2067 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
2068 bar_string iso. string.find()
2072 * lily/slur.cc (get_curve): always use scm_is_pair() looping
2075 2006-09-18 Graham Percival <gpermus@gmail.com>
2077 * Documentation/user/basic-notation.itely: add bug
2078 warning about ties and octavation/clef.
2080 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2082 * VERSION (PACKAGE_NAME): release 2.9.18
2084 2006-08-29 Milan Zamazal <pdm@brailcom.org>
2086 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
2087 figure out midi file names right here.
2089 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2091 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
2093 * scm/backend-library.scm: option naming: gs-font-load*s*
2095 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
2098 2006-09-17 Joe Neeman <joeneeman@gmail.com>
2100 * scm/define-music-types.scm (music-descriptions): remove
2101 BreakEvent and fix {Page,Line}{Break,Turn}Event so
2102 Music::to_event doesn't complain.
2104 * lily/accidental-placement.cc (ape_compare):
2105 * lily/semi-tie.cc (compare):
2106 * lily/note-column.cc (shift_compare): replace by XXX_less
2108 * lily/tie-formatting-problem.cc (set_chord_outline):
2109 * lily/tie-column.cc (calc_positioning_done):
2110 * lily/system.cc (post_processing)
2112 * lily/stem.cc (note_head_positions)
2113 (calc_positioning_done):
2114 * lily/spanner.cc (do_break_processing)
2115 (find_broken_piece):
2116 * lily/span-bar.cc (print):
2117 * lily/semi-tie-column.cc (calc_positioning_done):
2118 * lily/rest-collision.cc (calc_positioning_done):
2119 * lily/program-option.cc (get_help_string):
2120 * lily/note-collision.cc (get_clash_groups):
2121 * lily/new-fingering-engraver.cc (position_scripts):
2122 * lily/keyword.cc (Keyword_table):
2123 * lily/hara-kiri-group-spanner.cc (request_suicide):
2124 * lily/grob-pq-engraver.cc (stop_translation_timestep):
2125 * lily/accidental-placement.cc (calc_positioning_done):
2127 * lily/beam.cc (get_beam_segments):
2128 * lily/grob-array.cc (remove_duplicates):
2131 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
2132 ragged-last-bottom = ##f (test the new page breaker)
2134 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
2136 * scm/define-context-properties.scm
2137 (all-internal-translation-properties): remove properties that
2138 were used to communicate page-turn stuff to the paper-column
2141 * lily/lily-guile.cc (robust_scm2string): new function
2143 * lily/paper-column-engraver.cc: Clean up page turn stuff
2145 * lily/page-turn-engraver.cc: Re-write the page turn logic here
2146 instead of cluttering up paper-column-engraver.cc
2148 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
2150 * scm/layout-page-dump.scm (scm): export utility function names,
2151 to allow user writing cutsom dumping functions.
2153 * scm/layout-page-layout.scm: export utility function names to
2154 enable custom page breaking function writing. Tabify.
2155 (line-next-space): use ?-suffix only for predicates
2156 (page-maximum-space-to-fill): new function. Return the space
2157 between first and bottom system of a page, to give to
2159 (space-systems): use a space-to-fill argument (for instance as
2160 computed by page-maximum-space-to-fill) instead of computing
2161 internaly this space with the page height. That way, the caller
2162 can adjust the space to use.
2163 (make-page-from-systems, walk-paths): compute space to fill before
2164 calling space-systems.
2166 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2168 * scm/script.scm (default-script-alist): set paddings for every
2169 type here, increase for portato mark.
2171 * scm/lily.scm (define-scheme-options): typo: add s, so it is
2174 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2176 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
2177 use spanner::set-spacing-rods
2179 * lily/note-column.cc: reformat.
2181 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
2182 step positioning for note/rest combinations.
2184 * input/regression/rest-note-collision.ly: new file.
2186 * scm/define-grobs.scm (all-grob-descriptions): add
2189 * flower/include/std-vector.hh: switch off again.
2191 * VERSION (PATCH_LEVEL): bump to 2.9.18
2193 * flower/include/std-string.hh: idem.
2195 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
2197 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
2199 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
2202 2006-09-08 Joe Neeman <joeneeman@gmail.com>
2204 * Documentation/user/page.itely: update page breaking documentation
2206 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
2208 * lily/note-collision.cc (calc_positioning_done): only access
2209 first head if available.
2211 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
2213 * scm/framework-ps.scm (output-preview-framework): use new name.
2215 * lily/program-option.cc (internal_set_option): use new names.
2217 * Documentation/user/SConscript (lilypond_book_flags): update -d
2220 * Documentation/user/lilypond-book.itely (Inserting LilyPond
2221 output into other programs): new variable names.
2223 * scm/lily.scm (define-scheme-options): uniformize var names.
2225 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
2226 tuplets_ is non-empty before popping.
2228 2006-09-07 Joe Neeman <joeneeman@gmail.com>
2230 * lily/spanner.cc (find_broken_piece):
2231 * lily/spacing-spanner.cc (get_columns):
2232 * lily/source-file.cc (get_line):
2233 * lily/simple-spacer.cc (get_column_description):
2234 * lily/keyword.cc (lookup):
2235 use the new binary search.
2237 * flower/include/std-vector.hh: replace binary_search with
2238 a more STL-like version
2240 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
2242 * lily/tie-performer.cc: remove unused last_event_ property.
2243 (class Tie_performer): add now_tied_heads_ property for
2244 partially-tied heads.
2245 (acknowledge_audio_element): when adding an Audio_note, put the
2246 note in now_tied_heads_ if the audio note is partially tied.
2247 (stop_translation_timestep): always include entries in
2248 now_tied_heads_ in heads_to_tie_.
2250 * lily/drum-note-performer.cc (process_music): look for tie-events
2251 in the articulations; pass to Audio_note constructor.
2253 * lily/note-performer.cc (process_music): look for tie-events in
2254 the articulations; pass to Audio_note constructor.
2256 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
2259 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
2260 include initializer in constructor.
2262 2006-09-02 Joe Neeman <joeneeman@gmail.com>
2264 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
2265 unless they are breakable. This fixes discrepancies between the forces
2266 calculated here and the forces calculated in get_line_configuration.
2268 * lily/grob.cc (pure_relative_y_coordinate): fix some
2269 mis-estimation that was happening with piano staves.
2271 * lily/constrained-breaking.cc (resize): don't choke if we get a
2272 measure that won't fit on a line.
2273 (combine_demerits): don't consider uniformity when ragged
2275 * lily/page-spacing.cc (solve): why the f* were there two of these?
2276 (calc_subproblem): properly handle the case where a system is taller
2279 * lily/system.cc (get_paper_system): ensure that all the permissions
2280 and penalties are passed to the paper systems.
2282 * lily/page-breaking.cc (create_system_list): support system-count.
2284 * scm/define-grobs.scm (pure-print-callbacks): add
2285 ly:script-interface::print
2287 * lily/page-spacing.cc (min_page_count): fix calculation of min
2288 pages if we are ragged and there are non-zero springs.
2290 * scm/layout-page-layout.scm: if the pure-height estimates are under
2291 the real height, allow space-systems to ignore padding if it is
2292 needed in order to fit the systems on one page
2294 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
2296 (solve): fix performance problem. Make sure we always get at least
2299 * lily/page-breaking.cc (make_pages): include write-page-breaks
2302 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
2304 * scm/define-grobs.scm: add the new slur-callback
2305 fix pure-relevant to not exclude grobs whose extent is already
2308 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
2311 * lily/slur.cc (pure_height): new callback to estimate the height
2314 2006-09-02 Graham Percival <gpermus@gmail.com>
2316 * Documentation/user/invoking.itely: small update on
2317 MacOS X notes; thanks Trevor!
2319 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
2321 * VERSION (MY_PATCH_LEVEL): release 2.9.17
2323 * lily/lexer.ll: accept EOF in all states.
2325 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
2327 * lily/source-file.cc (Source_file): always 0-terminate character
2328 array, to prevent Flex from barfing.
2330 * lily/global-context.cc (get_output): robustness: don't crash if
2331 no Score context found.
2333 * lily/include/book.hh (class Book): idem.
2335 * lily/include/context-def.hh (struct Context_def): idem.
2337 * lily/include/score.hh (class Score): don't derive from Input.
2339 * lily/book.cc (Book): add a copy ctor.
2341 * buildscripts/output-distance.py (FileLink.calc_distance): count
2342 orphans in distance too.
2344 * python/midi.c (midi_parse_track): robustness: don't read past
2347 * ly/performer-init.ly: add Control_track_performer, move
2348 Tempo_performer and Time_signature_performer to Score.
2350 * lily/score-performer.cc (acknowledge_audio_elements): override
2351 from base class: add to audio-columns
2353 * lily/control-track-performer.cc (add_text): new file: generate
2356 * lily/performance.cc: move output_header_track to
2357 Control_track_performer ()
2359 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
2361 * lily/include/midi-item.hh (class Midi_channel_item): insert
2362 class into hierarchy, for items that can have a channel setting. Dehungarify.
2364 * lily/include/performer.hh (class Performer): remove
2365 play_element(); move functionality into announce/acknowledge.
2367 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
2369 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
2370 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
2372 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
2374 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
2377 * lily/all-font-metrics.cc: remove TFM support.
2379 * lily/include/tfm.hh: remove TFM support, TFM reader.
2381 * lily/include/binary-source-file.hh: remove Binary_source_file.
2383 2006-08-27 Graham Percival <gpermus@gmail.com>
2385 * Documentation/topdocs/NEWS.itely: add @c marker for
2386 stuff I've processed.
2388 * Documentation/user/ various: info from NEWS.
2390 2006-08-27 Joe Neeman <joeneeman@gmail.com>
2392 * lily/paper-column-engraver.cc (finalize): Oops, this change
2393 should have gone in on 2006-08-23
2395 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
2397 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
2398 quotes to quote arguments. Fixes Windows problem.
2400 * python/lilylib.py (progress): idem
2402 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2404 * scripts/musicxml2ly.py: fix for importing
2405 minor key signatures from MusicXML. (Phillip Kirlin)
2407 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
2409 * python/musicxml.py:
2410 (Attributes.get_key_signature): now correctly retrieves mode from
2413 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2415 * lily/parser.yy (output_def_body): take ownership of identifier
2418 * Documentation/user/advanced-notation.itely (Metronome marks):
2419 update use of \tempo in \midi.
2421 * VERSION: release 2.9.16
2423 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
2425 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2428 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2430 * input/regression/tie-chord-partial.ly: clarify example.
2432 * scm/define-music-properties.scm (all-music-properties): remove
2435 * ly/music-functions-init.ly: remove \untied.
2437 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2438 stream events and music events.
2439 (stop_translation_timestep): search acknowledged heads for
2442 * input/regression/tie-chord-partial.ly: new file.
2444 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2445 for \char markup command.
2447 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2449 * scm/define-music-types.scm (music-descriptions): consistency:
2450 Use solo-{one,two}-event iso. solo-[12]-event.
2452 * lily/part-combine-engraver.cc (process_music):
2453 Use solo-{one,two}-event iso. solo-[12]-event.
2455 * ly/declarations-init.ly (partCombineListener): add Timing as
2458 * flower/std-string.cc (string_copy): use copy ()
2460 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2462 2006-08-24 Graham Percival <gpermus@gmail.com>
2464 * Documentation/user/changing-defaults.itely, global.itely,
2465 lilypond-book.itely, page.itely: minor changes from mailist.
2467 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2469 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2472 * scm/define-context-properties.scm
2473 (translator-property-description): robustness: detect type errors
2474 in property definitions.
2476 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2477 after getting it from SCM.
2479 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2482 * lily/include/performer.hh (class Performer): strip get_tempo()
2485 * lily/midi-def.cc: strip file.
2487 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2489 * lily/include/context-def.hh (struct Context_def): use
2490 VIRTUAL_COPY_CONSTRUCTOR().
2492 * lily/source-file.cc: smobification.
2494 * lily/include/source-file.hh (class Source_file): smobify
2495 Source_file. Trim redundant members.
2497 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2498 clones after creation. This plugs a huge memory leak.
2500 * python/convertrules.py (FatalConversionError.sub_tempo):
2501 complete rule for \midi{ \tempo }
2503 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2505 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2507 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2509 * input/regression/optimal-page-breaking-hstretch.ly: test for
2510 ragged-last-bottom also
2512 * lily/paper-column-engraver.cc (finalize): make the end of a score
2513 breakable by default. This is to balance out a change in behaviour
2514 of the page-turn-breaker which no longer makes the end of a score
2517 * lily/paper-book.cc (pages): set the systems_ once the pages are
2520 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2521 Page_breaking interface.
2523 * lily/page-breaking.cc (class Page_breaking): make the interface
2524 more consistent and provide abstractions for dealing with
2527 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2528 algorithm. Use the new interface to Page_breaking.
2530 * lily/page-spacing.cc: better support for ragged-bottom and
2533 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2535 * python/convertrules.py (conv): warning on \tempo{}
2537 * ly/performer-init.ly: set tempoWholesPerMinute.
2539 * ly/midi-init.ly: remove \midi
2541 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2544 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2545 tempoUnitDuration for determining what to print.
2547 * lily/lyric-extender.cc: typo.
2549 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2551 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2554 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2556 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2557 eps-pad-boxes is set.
2559 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2561 * THANKS: update sponsors.
2563 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2565 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2567 * input/regression/tie-chord-untied.ly: new file.
2569 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2571 * scm/define-music-properties.scm (all-music-properties): add
2574 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2576 (headertext_nopics): sanitize no-examples text.
2578 * scm/page.scm (make-page-stencil): don't rely on extents of
2579 page-stencil. This fixes spurious space around .EPS files produced
2580 with the EPS backend.
2582 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2584 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2586 * lily/hara-kiri-engraver.cc (process_music): remember
2587 keepAliveInterfaces after processing \set
2589 * lily/lyric-extender.cc (print): support left/right-padding for
2592 * scm/documentation-generate.scm (string-append): revert lilypond/
2595 2006-08-20 Graham Percival <gpermus@gmail.com>
2597 * Documentation/user/lilypond.tely: clarification to
2598 license presentation (not to actual license).
2600 * Documentation/user/basic-notation.itely,
2601 instrument-notation.itely: minor changes.
2603 * input/ {regression, test}/+.ly: clarification to
2604 text (you can click on examples). Thanks, Mats!
2606 * input/manual/bar-lines.ly: adds ||: repeats.
2608 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2610 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2612 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2614 * Documentation/user/lilypond.tely: strip lilypond/ from info
2615 links, rename to category LilyPond
2617 * lily/pango-font.cc (description_string): new function.
2619 * VERSION: release 2.9.15
2621 * lily/spacing-engraver.cc (stop_translation_timestep): use
2622 Dscho's fix for spacing spanner.
2624 * scm/define-music-types.scm (music-descriptions): use
2625 apply-output-event for ApplyOutputEvent
2627 * lily/output-property-engraver.cc (listen_apply_output): rename
2628 from listen_layout_instruction.
2630 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2633 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2635 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2636 commandline args with contains, split by \n.
2638 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2639 write snippet-names file, call with -dread-file-list. Fixes
2640 command limitations on 64-bit systems.
2642 * input/regression/stencil-color-rotation.ly: new file.
2644 * lily/include/translator.hh (struct Acknowledge_information):
2645 revert: don't use Protected_scm in global objects, as GUILE can't
2646 handle gc_unprotect from automated destructors on MacOS X.
2648 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2649 color, not the original stencil. Fixes combinations of
2650 color/transparency/rotation.
2652 * scripts/lilypond-book.py (main): add --formats=eps for
2655 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2656 crash if spacing_ is nonexistent.
2658 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2660 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2661 \catcode`\@=12 in the LaTeX output.
2663 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2665 * scm/define-music-types.scm (music-descriptions):
2666 use sustain-event iso. sustain-pedal-event.
2668 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2670 * scripts/convert-ly.py: honour the -n command-line switch
2672 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2674 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2675 break specification.
2677 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2679 * Documentation/user: convert-ly the user manual
2681 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2683 * stepmake/aclocal.m4: version check patch (thanks MWD)
2685 * ly/music-functions-init.ly: robustness. Don't crash if
2686 currentBarNumber is not a number.
2688 * VERSION (PATCH_LEVEL): bump.
2690 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2692 * stepmake/aclocal.m4: better version check; handle fooX.Y
2695 * ly/performer-init.ly: instrument name fixup.
2697 * input/manual/chord-names-jazz.ly (banterProperties):
2698 instrumentName update
2700 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2702 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2704 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2705 function. Use hash tables to check membership.
2707 * lily/general-scheme.cc (LY_DEFINE): new function.
2709 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2711 * lily/include/translator.hh (struct Acknowledge_information): add
2714 * ly/music-functions-init.ly: change name to BreathingEvent
2716 * input/regression/*.ly: apply it.
2718 * python/convertrules.py (conv): better instrumentName conversion
2721 * scm/define-music-types.scm (music-descriptions): add
2722 line-break-event to LineBreakEvent music
2724 * lily/music.cc (to_event): don't crash if music type not set.
2726 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2729 * lily/spacing-engraver.cc (stop_translation_timestep): set
2730 spacing for proportional notation too.
2732 * scm/translation-functions.scm (format-bass-figure): inspect
2735 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2737 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2739 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2741 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2743 * scm/layout-page-layout.scm (make-page-from-systems): new function
2744 (optimal-page-breaks): use the new page-breaking calling convention
2746 * scm/define-context-properties.scm (all-user-translation-properties):
2749 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2750 revokePageTurns functionality. If there is a special barline within
2751 the breakable region, break there instead of at the end of the region.
2753 * lily/paper-book.cc (pages): use the new page-breaking calling
2756 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2758 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2760 * scripts/lilypond-book.py: insert \sourcefileline command in
2761 output, so lilypond error messages refer to the spot in the
2762 original .lytex / .itely sourcefile.
2764 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2766 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2767 space to next column for distance to fixed col.
2769 * VERSION (PACKAGE_NAME): release 2.9.14
2771 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2774 * lily/accidental-engraver.cc (process_acknowledged): don't create
2775 accidental for trill span event. This fixes spurious accidentals
2778 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2780 * scm/define-grob-properties.scm (all-user-grob-properties):
2781 Clarify documentation of side-axis and direction. Thanks to Paul
2782 for the inspiration.
2784 * lily/bar-line.cc: Add documentation for "||:" also in the
2785 interface documentation.
2787 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2789 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2791 * lily/paper-column.cc (set_system): new function.
2793 * lily/spacing-engraver.cc (stop_translation_timestep): store
2794 SpacingSpanner refs in Paper_column.
2796 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2797 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2799 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2801 * lily/beam-engraver.cc (listen_beam): add method for
2802 Grace_beam_engraver too.
2804 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2806 * python/convertrules.py: Fix indentation bug that broke
2807 conversion of files older than 1.3.117.
2808 Fix escape error in the description for 2.9.6.
2810 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2812 * lily/*-engraver.cc: convert all try_music functions to listen_*
2815 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2816 enums to represent pedal types, and calculate more data statically.
2818 * scm/part-combiner.scm (recording-group-emulate): create a
2819 softcoded substitute for recording-group-engraver.cc.
2821 * lily/music.cc: make a common transpose function for events and
2824 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2825 ManualMelismaEvent, and obsoletes Melisma_translator.
2827 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2829 * input/test/instrument-name-align.ly: update version.
2831 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2833 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2834 Doc the --pdf flag to lilypond-book.
2836 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2838 * Documentation/topdocs/NEWS.tely (Top): add description.
2840 * input/regression/tuplet-full-length-note.ly: add file.
2842 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2843 always store axis group.
2845 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2847 * input/regression/instrument-switch.ly: new file.
2849 * lily/instrument-switch-engraver.cc (process_music): new file.
2851 * ly/engraver-init.ly: add Instrument_switch_engraver
2853 * ly/music-functions-init.ly: \instrumentSwitch
2855 * scm/define-context-properties.scm
2856 (all-user-translation-properties): add instrumentCueName
2858 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2860 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2862 * ly/music-functions-init.ly: music function \transposition.
2864 * lily/parser.yy (command_element): softcode \transposition.
2866 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2867 (process_music): oops.
2869 * lily/instrument-name-engraver.cc (start_spanner): new
2870 function. Create spanner when property changes.
2871 (stop_spanner): new function.
2873 * python/convertrules.py (conv): add rule.
2875 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2876 shortInstrumentName iso. instr.
2878 * scm/output-ps.scm (dashed-line): add phase argument to
2881 * lily/bar-line.cc (dashed_bar_line): new function.
2882 (compound_barline): support \bar "dashed".
2884 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2885 --output=DIR to DIR/BASE if it is a dir.
2887 * flower/file-name.cc (file_part): new function
2888 (dir_part): new function
2890 * lily/lily-parser-scheme.cc (LY_DEFINE):
2892 * DEDICATION: update
2894 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2896 * lily/instrument-name-engraver.cc: formatting.
2898 * python/convertrules.py (conv): bugfix for \epsfile.
2900 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2904 * lily/gourlay-breaking.cc: Oops, these should have been included
2907 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2909 * scripts/*.py (program_name): cleanup relocation snippets.
2911 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2913 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2915 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2916 page-breakable by default
2918 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2919 correctly calculated for a single-system page
2921 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2922 bigger than the second number
2924 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2925 acknowledge that we aren't satisfying constraints)
2927 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2930 * lily/grob.cc (pure_height): add minimum-Y-extent
2932 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2935 * lily/constrained-breaking.cc: convert code to use new Matrix class
2936 (get_best_solution): new function
2938 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2939 is a page with no systems
2941 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2943 * VERSION (PACKAGE_NAME): release 2.9.13
2945 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2948 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2950 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2952 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2955 * scm/define-grob-properties.scm (all-user-grob-properties):
2956 remove grace-space-factor.
2958 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2959 grace-spacing-interface
2960 (spacing-options-interface): add.
2962 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2964 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2966 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2967 GraceSpacing object.
2969 * lily/note-spacing.cc: fix prop list formatting
2971 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2972 beaming for grace notes too.
2974 * input/regression/spacing-grace.ly: update.
2976 * lily/grace-spacing-engraver.cc: new file.
2978 * lily/spacing-spanner.cc: add strict-grace-spacing.
2980 2006-07-20 Graham Percival <gpermus@gmail.com>
2982 * lily/parser.yy: compile fix.
2984 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2986 * scm/define-grobs.scm (all-grob-descriptions): typo.
2988 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2989 .eps extension from includegraphics.
2991 * scripts/lilypond-book.py (main): add support for --pdf.
2993 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2994 callback to compute common shortest duration.
2995 (set_springs): typo.
2997 * scm/define-grob-properties.scm (all-user-grob-properties): add
2998 strict-grace-spacing.
3000 * lily/spacing-determine-loose-columns.cc (is_loose_column):
3001 support float_grace_columns_.
3003 * lily/spacing-options.cc (init_from_grob): new file.
3005 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
3007 * input/regression/spacing-loose-grace.ly: new file.
3009 * Documentation/topdocs/NEWS.tely (Top): document new feature.
3011 * lily/tuplet-engraver.cc (struct Tuplet_description): read
3012 tupletFullLengthNote too. Choose right bound depending on value.
3014 * input/regression/tuplet-full-length-note.ly: new file.
3016 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
3018 * lily/*-performer.cc: Converted try_music to listen_*
3020 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
3021 as a stream-event internally. Introduce event_cause (), deprecate
3024 * scm/define-music-types.scm: Removed BusyPlayingEvent
3026 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
3028 * Documentation/user/advanced-notation.itely (Font selection):
3029 Document how to get a list of available fonts using 'lilypond
3030 -dshow-available-fonts blabla'.
3032 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3034 * GNUmakefile.in: filter lily-XXX.pdf files.
3036 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
3038 * scm/define-grob-properties.scm (all-internal-grob-properties):
3039 remove delta-pitch. Use delta-position everywhere.
3041 * scm/output-lib.scm (fall::print): use new order.
3043 * scm/output-ps.scm (path): reorder arguments.
3045 * scm/output-svg.scm (path): support for path primitive.
3047 * input/regression/bend-after.ly: new file.
3049 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
3050 recipe for eps -> pdf conversion.
3052 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
3054 * lily/parser.yy, lily/lexer.ll: added some simplifications by
3057 2006-07-19 Graham Percival <gpermus@gmail.com>
3059 * input/manual/screech-boink.ly: moved to here.
3061 * input/screech-boink.ly: deleted.
3063 * scm/define-grob-properties.scm: clarify doc string.
3065 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3067 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
3069 * scm/output-ps.scm (path): define path.
3071 * scm/define-stencil-commands.scm
3072 (ly:register-stencil-expression): add path.
3074 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
3076 * ly/engraver-init.ly: add Fall_engraver
3078 * lily/parser.yy (music_function_event): allow musicfunction
3079 without music arg as music_function_event.
3081 * lily/grob-scheme.cc (LY_DEFINE):
3082 ly:grob-robust-relative-extent. New function.
3084 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
3086 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
3088 * scm/output-lib.scm (fall::print): new function
3090 * lily/fall-engraver.cc (stop_fall): new file.
3092 * ly/music-functions-init.ly: alphabetise.
3094 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
3097 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3099 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
3101 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
3104 * lily/translator-group.cc (connect_to_context): non const error message.
3106 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
3108 * scm/paper.scm (internal-set-paper-size): define landscape to #f
3111 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
3113 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
3115 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
3118 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
3120 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
3122 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
3124 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
3126 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
3128 * scm/backend-library.scm (postscript->pdf): strip .eps too.
3130 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
3132 * scm/layout-page-layout.scm: Define module, tidy code, use more
3133 functions iso. a single big one.
3135 * scm/layout-page-dump.scm: move page dump functions used in two
3136 pass spacing to this file. Define module.
3138 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
3141 * ly/paper-defaults.ly: use module layout-page-layout.
3143 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
3145 * lily/music.cc: Revised MusicEvent event class. It now contains
3146 event data directly instead of encapsulating it in music. The
3147 previously used class is renamed to OldMusicEvent.
3149 * lily/stream-event.cc: Stream events are now probs.
3151 * lily/translator-group.cc, lily/translator.cc: Translators can
3152 now listen directly to stream events, by using macros
3153 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
3155 * lily/arpeggio-engraver.cc: Converted to use new event system
3157 * THANKS: Corrected spelling mistake.
3159 2006-07-12 Graham Percival <gpermus@gmail.com>
3161 * Documentation/user/SConscript, make/lilypond-vars.make,
3162 input/GNUmakefile: doc build looks in input/manual instead
3165 * input/manual/ GNUmakefile, SConscript: build files for
3168 * input/test/ various: some files moved to input/manual/
3170 * Documentation/user/basic-notation.itely: small updates;
3171 thanks Kieren and Charles!
3173 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3175 * VERSION (PACKAGE_NAME): release 2.9.11
3177 * Documentation/topdocs/NEWS.tely (Top): update prop value
3179 * Documentation/user/basic-notation.itely (Tuplets): new property
3182 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3184 * python/convertrules.py (conv): tweaks.
3186 * VERSION (PATCH_LEVEL): bump version.
3188 * python/convertrules.py (conv): add rule for
3189 tupletNumberFormatFunction.
3191 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
3192 tupletNumberFormatFunction.
3194 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
3195 text through 'text callback.
3197 * lily/time-scaled-music-iterator.cc (construct_children): copy
3198 tweaks generated events.
3200 * scm/define-context-properties.scm
3201 (all-user-translation-properties): remove tupletNumberFormatFunction
3203 * lily/tuplet-engraver.cc (process_music): don't read
3204 tupletNumberFormatFunction
3206 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
3209 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
3211 * lily/global-context-scheme.cc: Separated ly:run-translator into
3214 * lily/score-engraver.cc, lily/score-performer.cc,
3215 scm/define-context-properties.scm: Make paper/midi output
3216 accessable as a context property.
3218 * lily/score-translator.cc, lily/score-context.cc: Removed.
3220 2006-07-07 Guido Amoruso <guidonte@katamail.com>
3222 * scm/ps-to-png.scm (Module):
3223 * scm/framework-tex.scm (Module):
3224 * scm/framework-ps.scm (Module):
3225 * scm/backend-library.scm (Module):
3226 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
3227 "dDEVICEHEIGHTPOINTS".
3229 2006-07-04 Graham Percival <gpermus@gmail.com>
3231 * Documentation/user/ various: general improvements to
3232 "working with lilypond files" section.
3234 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
3236 * lily/sequential-iterator.cc: Change the default get_music_list
3237 to read elements-callback music property
3239 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
3240 processing of multimeasure rests. Softcoded
3241 sequential-music-iterator.
3243 * lily/sequential-music-iterator.cc: Removed.
3245 2006-06-28 Graham Percival <gpermus@gmail.com>
3247 * Documentation/user/basic-notation.itely: clarify \repeatTie.
3249 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
3251 * lily/parser.yy: Wrap non-post-events in EventChords before
3252 assigning them to identifiers.
3254 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
3256 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
3257 gives correct vertical placement of \bar ":" in all staff
3258 sizes. Thanks Martial!
3260 2006-06-26 Graham Percival <gpermus@gmail.com>
3262 * Documentation/user/invoking.itely : minor update from mailist.
3264 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
3266 * lily/ various: Introduce stream events of types Prepare,
3267 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
3268 ChangeContext, SetProperty, RevertProperty, Override and Revert.
3270 * lily/global-context*.cc: Time is now -inf before iteration
3273 * lily/include/context.hh: Removed unique_, init_
3275 * Documentation/topdocs/NEWS: Make the feathered beam example
3276 avoid triggering a bug.
3278 2006-06-24 Graham Percival <gpermus@gmail.com>
3280 * Documentation/user/ various: small additions from mailist.
3282 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
3284 * ly/performer-init.ly: Add some missing links in the context
3285 hierarchy for MIDI output. There are probably some more missing!
3287 2006-06-21 Graham Percival <gpermus@gmail.com>
3289 * Documentation/user/ various: minor spelling fixes;
3290 thanks Dave Luttinen!
3292 * Documentation/user/ various: small clarifications;
3293 thanks Anthony Youngman!
3295 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3297 * po/fr.po: add \n appropriately.
3299 * lily/lexer.ll: remove ? from version-seen?
3301 2006-06-19 John Mandereau <john.mandereau@free.fr>
3303 * po/fr.po; update translation, by Jean-Charles Malahieude and
3306 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3308 * THANKS: add Markus Schneider.
3310 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
3311 Staff_symbol_engraver
3313 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
3314 replace staff_engraver
3316 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
3319 * lily/staff-collecting-engraver.cc
3320 (acknowledge_end_staff_symbol): new function
3322 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
3324 * lily/staff-collecting-engraver.cc
3325 (acknowledge_end_staff_symbol): new function.
3327 * lily/main.cc: switch on relocation by default.
3329 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3331 * lily/spacing-spanner.cc (musical_column_spacing): set
3332 compound_fixed_note_space to 0.0. Document why.
3334 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
3335 range of inverse_hooke_
3336 (Simple_spacer): init completely.
3338 (get_line_configuration): don't use cols.resize(); it introduces
3341 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
3343 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
3345 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
3346 try. Divide by beatlength.
3348 * input/regression/beaming-ternary-metrum.ly: update doc.
3349 add beatLength hack.
3351 * scm/music-functions.scm (make-time-signature-set): add
3352 standard-beat-grouping.
3354 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3356 * input/regression/tie-whole.ly: new file.
3358 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
3359 cross center of note head in case of invisible stem.
3361 2006-06-16 Graham Percival <gpermus@gmail.com>
3363 * Documentation/user/ various: small fixes from mailist.
3365 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3367 * lily/breathing-sign.cc (offset_callback): idem.
3369 * lily/align-interface.cc (align_to_fixed_distance): remove
3372 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
3375 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3377 * VERSION (PACKAGE_NAME): release 2.9.9
3379 * ly/lilypond-book-preamble.ly: add \version
3381 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
3383 * scripts/lilypond-book.py (PREAMBLE_LY): include
3384 lilypond-book-preamble.ly
3386 * lily/stem.cc (get_beaming): return max of 0 and
3387 scm_ilength. Fixes slurring from/to beams.
3389 * ly/lilypond-book-preamble.ly: new file.
3391 * lily/slur.cc: add inspect-index feature.
3393 2006-06-13 Graham Percival <gpermus@gmail.com>
3395 * Documentation/user/tutorial.itely: trivial fix.
3397 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
3399 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
3400 all non-event music in the parser via MAKE_SYNTAX.
3402 * lily/parser-scheme.cc: Add ly:parser-error function
3404 * scm/paper.scm: fix typo
3406 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
3410 * lily/font-config.cc (init_fontconfig): add warning if cache_file
3413 * buildscripts/output-distance.py (test_compare_signatures):
3415 (read_signature_file): use new signature format.
3417 * scm/stencil.scm (write-system-signature): simpler signature
3420 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
3423 * lily/note-spacing.cc (stem_dir_correction): don't inspect
3424 stem_end_position, but estimate instead.
3426 * lily/tuplet-bracket.cc (calc_positions): look at
3427 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3428 brackets narrower than beams.
3430 * lily/lexer.ll: set version-seen? even if version is
3433 * lily/rest.cc (y_offset_callback): bugfix: decide position
3434 override based on scm_is_number(). Fixes \rest on center staff
3437 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3438 patterns for 16th triplets.
3440 2006-06-10 Graham Percival <gpermus@gmail.com>
3442 * Documentation/user/ page.itely, global.itely: editing
3445 * Documentation/user/ various: findex -> funindex.
3447 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3449 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3450 insert extra tuplet events.
3452 2006-06-10 Graham Percival <gpermus@gmail.com>
3454 * Documentation/user/programming-interfaces.itely: add
3457 * python/convertrules.py: add annotatefoo -> annotate-foo
3460 * Documentation/user/global.itely: start editing.
3462 * Documentation/user/page.itely: major editing, new spacing
3465 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3467 * scm/define-markup-commands.scm (wordwrap-markups): use
3468 output-def 'line-width if undefined.
3470 * HACKING: trim outdated info.
3472 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3474 * scm/define-grobs.scm (all-grob-descriptions): Add
3475 line-spanner-interface to all grobs that already have
3476 text-spanner-interface or dynamic-text-spanner-interface
3478 * scm/page.scm: Rename annotate{headers,systems,page}->
3481 * input/regression/page-spacing.ly,
3482 input/regression/page-layout-manual-position.ly: idem
3484 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3486 * lily/line-spanner.cc: cleanup property list.
3488 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3489 generator expressions (2.3 compat).
3491 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3493 * lily/vertical-align-engraver.cc: Make sure that the
3494 align{Above,Below}Context properties are included in the automatic
3497 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3499 * scm/paper-system.scm (paper-system-annotate): also annotate the
3500 estimated pure-Y-extent
3502 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3504 * lily/system.cc (break_into_pieces): set the estimated height
3505 of each child system
3507 * lily/stem.cc (pure_height): new pure-Y-extent callback
3509 * lily/staff-symbol-referencer.cc (callback): don't destroy
3510 the staff-position property
3512 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3513 consider_suicide into two functions
3515 * lily/constrained-breaking.cc (resize): use the new pure
3516 callbacks to estimate the height of a system
3518 * lily/axis-group-interface.cc (pure_group_height): new
3519 side-effect-free VerticalAxisGroup height-callback
3521 * lily/align-interface.cc (get_extents_aligned_translates):
3522 split align_elements_to_extents into two functions
3523 (get_pure_child_y_translation): new function
3525 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3527 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3529 * lily/paper-score.cc: cache break_indices and columns
3531 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3533 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3535 * lily/font-config.cc (init_fontconfig): do the init if
3536 cache_file, but don't look at cache_file.
3538 * input/regression/quote-tie.ly: new file.
3540 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3541 to Head_event_tuple, so we deal gracefully with ties on
3544 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3547 2006-06-08 Graham Percival <gpermus@gmail.com>
3549 * input/test/ smart-transpose.ly, reverse-music.ly:
3550 \applyMusic to music functions update, thanks Michael!
3552 2006-06-07 Graham Percival <gpermus@gmail.com>
3554 * input/test/ add-staccato.ly, add-text-script.ly,
3555 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3556 music functions update, thanks to Michael Meixner.
3558 * Documentation/user/music-glossary.tely: small fix
3561 * Documentation/user/ various: minor additions from mailist.
3563 * Documentation/user/lilypond.tely, basic-notation.itely:
3564 small test of @funindex. (works here)
3566 * input/test/font-table.ly: reduce size to partially
3567 de-ugly version in manual.
3569 * Documentation/user/page.itely: new file (split former
3570 "global issues" into "page settings" and "non-musical
3573 * Documentation/user/ various: fix @ref{}s to match
3574 new chapter names (above).
3576 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3578 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3580 2006-06-06 Graham Percival <gpermus@gmail.com>
3582 * Documentation/user/advanced-notation.itely: add example
3583 for segno/coda on barline.
3585 * tex/texinfo.tex: merge from upstream.
3587 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3589 * scripts/lilypond-book.py (process_snippets): Argument fix.
3592 * buildscripts/builder.py:
3595 * Documentation/user/SConscript: More SCons fixes.
3597 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3599 * lily/font-config.cc (init_fontconfig): Only initialize if
3600 global cache_file is found.
3602 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3604 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3607 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3609 * VERSION (PACKAGE_NAME): release 2.9.8
3611 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3612 function. Delay ledger modifying ledgered grobs to
3613 stop_translation_timestep(), to ensure that we're ledgering
3614 according to the new spanner.
3615 (acknowledge_staff_symbol): don't check for non-NULL
3616 staff_sym->get_bound()
3618 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3621 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3624 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3625 directly from srcdir/stepmake/aclocal.m4
3627 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3630 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3632 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3634 * lily/simple-spacer.cc (get_line_configuration): add
3635 keep-inside-line rods
3636 (struct Column_desc): add constructor
3637 (struct Rod_desc): add constructor
3638 (get_line_forces): check for forced page breaks here too
3640 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3641 support/elements cycles between InstrumentNames and AxisGroups
3643 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3645 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3647 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3648 make-txt-files target.
3650 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3651 make-txt-files target.
3653 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3655 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3658 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3660 * Documentation/user/instrument-notation.itely,
3661 input/regression/breathing-sign-ancient.ly,
3662 input/test/divisiones.ly: Removed redundant property settings for
3665 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3666 fix lyrics alignment problems. They are implemented now as scheme
3667 functions that add the appropriate unicode char to the first lyric
3668 event rather than adding a separate lyric event. Minor edit of
3671 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3673 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3674 pollute src dir with built .txt files, but install directly from
3675 Documentation/topdocs/out/
3677 * buildscripts/output-distance.py
3678 (ComparisonData.create_html_result_page): put version/directories
3681 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3684 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3685 Patch by Karl Hammar
3687 * buildscripts/readlink.py: add file.
3688 Patch by Karl Hammar
3690 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3692 * lily/tuplet-number.cc (print): prevent stencil from being
3695 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3697 * scm/stencil.scm (write-system-signature): explicitly
3698 -well, superfluously- close output port.
3700 * buildscripts/output-distance.py (main): oops. Add extra argument.
3702 2006-06-05 Graham Percival <gpermus@gmail.com>
3704 * Documentation/user/music-glossary.tely: clarified example
3705 from Francisco Vila, thanks!
3707 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3709 * input/regression/spacing-section.ly: new file.
3711 * lily/input.cc (programming_error): new function.
3713 * lily/spacing-engraver.cc (try_music): new function. Accept
3714 spacing-section-event
3716 * lily/spacing-spanner.cc (set_springs): take slices of all
3717 columns for spacing.
3719 * lily/include/paper-column.hh (class Paper_column): add
3720 Paper_column::compare.
3722 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3724 * scm/define-music-types.scm (music-descriptions): add
3727 * lily/music-iterator.cc (report_event): use programming_error for
3728 sending non-event error.
3730 * lily/input.cc (programming_error): new function
3732 * buildscripts/output-distance.py (main): use compare-XXX for
3734 (main): --threshold option, default at 0.30
3736 * output-distance.py (main): add --threshold option.
3738 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3740 * scm/paper-system.scm (paper-system-annotate): fix problem when
3741 annotating an empty system
3743 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3745 * GNUmakefile.in: reinstate old web tar/copying.
3747 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3749 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3750 nothing changes. (Erik S)
3752 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3755 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3757 * scm/define-markup-commands.scm (whiteout): do not force
3758 foreground color of argument markup to black.
3760 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3761 the left of the arrow, instead of below the arrow name, so that,
3762 when two little arrows are vertically stacked, their dimensions
3763 and name should not overlap. Add a color key parameter.
3765 * scm/paper-system.scm (paper-system-annotate): Annotate
3766 next-space+next-padding instead of next-space. Annotate space
3767 between next-padding and next-space+padding, respectively, and
3768 following system extent and refpoint-Y-extent. Use colors.
3770 * scm/page.scm (annotate-page): translate annotations slightly to
3773 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3775 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3776 fix for x-staff slurs. Thanks Joe!
3778 * buildscripts/output-distance.py
3779 (SystemLink.output_expression_change_count): keep track of changed
3780 details, and dump in details html page.
3782 * input/regression/figured-bass-staff.ly: add note about setting
3783 properties in Staff context.
3785 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3786 add slurs and ties to support too.
3788 * buildscripts/output-distance.py (main): set dest_dir
3789 argument. Add --max-count option.
3791 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3793 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3794 shortcuts for special unicode chars that are useful in chant
3795 notation. Revised exisiting and added new comments.
3797 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3799 * make/mutopia-rules.make: remove duplicate recipe.
3801 2006-06-02 Werner Lemberg <wl@gnu.org>
3803 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3804 Add support for U+0132 (IJ) and U+0133 (ij).
3806 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3808 * buildscripts/output-distance.py (FileLink): new class. collect
3809 info systems from one .ly file.
3810 (FileLink.link_files_for_html): further tweaks.
3812 2006-06-02 Graham Percival <gpermus@gmail.com>
3814 * tex/texinfo.tex: partial fix for @funindex.
3816 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3819 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3821 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3823 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3824 @example too. Backportme.
3826 2006-06-02 Graham Percival <gpermus@gmail.com>
3828 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3829 from Werner Lemberg.
3831 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3833 * Documentation/user/music-glossary.tely: additional spanish
3834 updates and a lyrics fix in an example.
3836 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3838 * scm/define-grob-properties.scm: Previous patch contained
3839 spurious line from another patch not yet committed. Fixed.
3841 * scm/define-grob-properties.scm: Add missing doc strings for
3844 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3846 * buildscripts/output-distance.py
3847 (ComparisonData.write_text_result_page): separate the scores, sort
3850 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3853 * buildscripts/output-distance.py (me_path): use argv[0] for
3855 (ComparisonData.img_cell): use colored borders.
3857 * scm/stencil.scm (write-system-signature): escape newlines too.
3858 (write-system-signature): use (1,-1) interval for empty interval
3860 2006-01-01 Graham Percival <gpermus@gmail.com>
3862 * Documentation/user/music-glossary.tely: Spanish updates
3863 from Francisco Vila.
3865 * Documentation/user/lilypond-book.itely: addition from
3868 * Documentation/user/ various: edits, small additions
3871 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3873 * GNUmakefile.in (tree-lib-prefix-current):
3874 (tree-share-prefix-current): Use version number in tree, add
3877 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3879 * GNUmakefile.in: write VERSION, again.
3881 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3882 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3884 * stepmake/aclocal.m4: robuster version detection.
3886 * buildscripts/output-distance.py
3887 (ComparisonData.create_html_result_page): copy only if file
3888 exists, fixup src paths.
3890 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3892 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3894 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3895 Another datarootdir reto.
3897 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3898 available. This should be moved to postinstall-lilypond-doc.
3900 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3902 * GNUmakefile.in: simplify local-WWW-post.
3903 remove -type l from find.
3905 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3906 fixes. Don't follow symlinks.
3907 (ComparisonData.create_html_result_page): remove previous results.
3908 insert ../python in path.
3910 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3912 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3914 * config.make.in (datadir): Add datarootdir to silence autoconf.
3916 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3918 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3920 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3922 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3923 slash beams too wide.
3925 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3927 * VERSION: release 2.9.7
3929 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3931 * lily/relocate.cc (read_relocation_dir): Do not blindly
3934 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3936 * lily/parser.yy: replace THIS by PARSER
3938 * Documentation/index.html.in: add link to test-results.html page.
3940 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3942 * scm/translation-functions.scm (format-bass-figure): translate
3943 digits over 10 to the left
3945 * scm/define-markup-commands.scm (translate-scaled): new markup.
3947 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3950 * ly/engraver-init.ly: add Figured_bass_engraver
3952 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3954 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3956 * lily/score-engraver.cc (announce_grob): only note START announces.
3958 * lily/include/engraver-group.hh (Translator_group):
3959 acknowledge_hash_table_ is now drul.
3961 * lily/engraver.cc (announce_end_grob): new method.
3963 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3965 * lily/translator-dispatch-list.cc (create): take start_end argument.
3967 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3968 acknowledge_static_array_ to drul
3970 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3972 * scm/define-grob-interfaces.scm
3973 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3975 * scm/define-grobs.scm (all-grob-descriptions): add
3976 BassFigureAlignmentPositioning
3978 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3979 number stays up to date. Backportme.
3981 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3983 * Documentation/user/basic-notation.itely (Bar lines): Document
3986 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3988 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3990 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3991 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3994 * Resurrect `scons lily' build.
3996 * SConstruct (symlink_tree): Bugfix: link
3997 music-drawing-routines.ps to file iso directory.
3999 * lily/SConscript: Remove kpath-guile from LIBS.
4001 * SConstruct (libdir_package_version): Typo.
4002 (configure): Comment-out fontforge for lack of fontforge.pc .
4003 Also add libdir* to environment.
4005 2006-05-30 Graham Percival <gpermus@gmail.com>
4007 * Documentation/user/ various: minor additions from mailist and
4010 2006-05-30 Paco <fravd@ya.com>
4012 * Documentation/user/music-glossary.tely: numerous corrections and
4013 some new translations.
4015 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4019 * buildscripts/output-distance.py
4020 (ComparisonData.create_html_result_page): new routine: summarise
4021 results in HTML page with images.
4022 (ComparisonData.create_text_result_page): create summary text files too.
4024 * GNUmakefile.in (web-ext): package .signature files too. They
4027 * scm/stencil.scm (write-system-signature): typo.
4029 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
4031 * scm/stencil.scm (write-system-signature): better escaping.
4032 only write signature for music systems, not for markup systems.
4034 * scm/framework-ps.scm (output-framework): dump-signatures support
4037 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
4039 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
4040 for -dno-point-and-click
4042 * lily/grob.cc (get_print_stencil): don't read
4043 point_and_click_global to determine whether to set grob-cause.
4045 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4047 * buildscripts/output-distance.py (main): new function.
4048 (ComparisonData): new class.
4050 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
4051 careful with generating new LedgerLineSpanners.
4053 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
4055 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
4056 context. This fixes double ledger lines in output.
4058 * lily/system.cc (get_paper_system): remove 3 layer limit.
4060 * buildscripts/output-distance.py (SystemLink.distance): new
4061 file. Compare signatures.
4063 * python/safeeval.py (SafeEval.visitUnarySub): new file.
4065 * lily/grob-array.cc (remove_duplicates): rename from
4066 uniq(). Sort before calling uniq() so it actually works.
4068 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4070 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
4071 \version from lilypond file snippet.
4072 (Lilypond_file_snippet.ly): oops. typo.
4073 (find_toplevel_snippets): urgh. again.
4075 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
4076 prevent duplicated broken items in output.
4078 * scm/framework-eps.scm (output-classic-framework): only dump if
4079 dump-signatures is set.
4081 * scm/lily.scm (define-scheme-options): add dump-signatures option.
4083 * scm/stencil.scm (write-system-signature): new routine: write
4084 python parseable signature of a separate paper system.
4087 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
4089 * lily/stanza-number-engraver.cc (process_music): use is_markup()
4093 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
4095 * translator-group.cc: send music events to engravers in
4096 non-bottom contexts.
4098 * tuplet-engraver.cc: process tuplet brackets in correct order.
4100 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
4102 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
4103 arg 2 might point us to a new binary (patch by Karl Hammar)
4105 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
4107 * VERSION (PACKAGE_NAME): release 2.9.6
4109 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
4111 * Documentation/user/*.itely: 2nd
4112 attempt: replace funindex -> findex globally.
4114 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
4116 * input/no-notation/display-lily-tests.ly: fix \applyOutput
4117 test. Add \break, \pageBreak, \pageTurn, etc, tests.
4119 * scm/define-music-display-methods.scm: display methods for
4120 breaks. Fix \applyOutput.
4122 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
4124 * Documentation/user/macros.itexi: comment out funindex expansion.
4126 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
4129 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
4130 Karl Hammar. Backportme.
4132 * Documentation/user/advanced-notation.itely (Balloon help): idem.
4134 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
4136 * Documentation/user/programming-interface.itely (Running a
4137 function on all layout objects): idem.
4139 * Documentation/user/introduction.itely (Automated engraving):
4140 update \applyOutput syntax
4142 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
4143 remove debugging hook.
4145 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
4148 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
4150 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
4151 TEXI2DVI_FLAGS to texi2dvi invocation.
4153 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
4155 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
4156 works. More work is done by iterator now, and engraver has been
4157 very much simplified.
4159 * lily/translator-group.cc: try_music is now invoked through a
4162 * lily/*-iterator.cc: Massive cleanups. Junked
4163 try_music_in_children globally. Renamed try_music to report_event,
4164 and made that method descend to a bottom context automatically.
4166 * lily/event-iterator.cc: New file.
4168 * lily/output-property-iterator.cc,
4169 lily/old-lyric-combine-music-iterator.cc: Removed.
4171 * python/convert-rules.py: Modified the syntax for \applyOutput.
4173 2006-05-23 Graham Percival <gpermus@gmail.com>
4175 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
4178 * Documentation/user/ various: stuff that might have helped
4179 to fix the pdf creation, plus some minor doc additions.
4181 * Documentation/user/changing-defaults.itely: remove @b from
4182 @b{ @internasref{foo}}; this breaks texi2dvi -E.
4184 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4186 * lily/beaming-pattern.cc (beamify): deal with negative start
4187 moments for beaming patterns.
4189 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4191 * lily/beaming-info.cc (beamify): new function: read beatLength
4192 and beatGrouping from context.
4194 * input/regression/beam-beat-grouping.ly (Module): new file.
4196 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
4198 * lily/beam.cc (get_beam_segments): generate events for
4199 max_connect_ case too.
4200 (get_beam_segments): read Stem::max-beam-connect.
4202 * input/regression/beam-single-stem.ly: new file.
4204 * lily/stem.cc (set_beaming): use #f as signaling value for
4207 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
4209 * lily/beam.cc (set_beaming): read clip-edges property.
4210 (calc_direction): don't suicide for single stem.
4212 * lily/beaming-info.cc (best_splitpoint_index): take bool*
4213 argument, remove 1<<15 hack. Remove clip_edges()
4215 * lily/hairpin.cc (print): only do padding for nonmusical bounds
4217 2006-05-21 Graham Percival <gpermus@gmail.com>
4219 * Documentation/user/basic-notation.itely: reorg.
4221 * Documentation/user/ various: minor fixes.
4223 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
4225 * lily/stencil-expression.cc (register_stencil_head): opps, append
4226 to cdr of static SCM object.
4228 2006-05-19 Graham Percival <gpermus@gmail.com>
4230 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
4231 update framework for command index. DOC WRITERS: use @funindex
4232 instead of @cindex @code{}.
4234 * Documentation/user/ various: replace @cindex @code{} => @funindex
4236 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
4238 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
4239 case positions is set manually.
4241 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
4243 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
4246 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
4248 * Documentation/user/changing-defaults.itely (Contexts explained):
4249 use absolute dimension for @image.
4251 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
4252 out image for illustration too.
4253 ($(outdir)/%.png): add more png <-> eps rules.
4255 2006-05-17 Graham Percival <gpermus@gmail.com>
4257 * Documentation/user/ various: remove trailing whitespace, cosmetic
4258 change to reduce changes produced by diff.
4260 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
4262 * lily/main.cc (do_chroot_jail): correctness tweak.
4264 * python/lilylib.py (system): import subprocess in system () only.
4266 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
4268 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
4269 variable. Backportme.
4271 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
4273 * lily/parser.yy: Change all syntax rules of type Music to SCM type
4275 2006-05-17 Werner Lemberg <wl@gnu.org>
4277 * lily/lexer.ll (init_signature_has_table): Add
4278 `scm-scm-music-music'.
4280 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
4281 (Generic_prefix_music_scm): Add rule for it.
4283 * lily/quote-iterator.cc (Quote_iterator::process): Handle
4284 `quoted-transposition' property.
4286 * ly/music-functions-init.ly (transposedCueDuring): New function.
4288 * scm/define-music-properties.scm (all-music-properties): Updated.
4290 * Documenation/topdocs/NEWS.itely: Document it.
4292 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
4294 * python/lilylib.py (system): move import subprocess to system()
4297 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
4299 * VERSION (PATCH_LEVEL): release 2.9.5
4301 * Documentation/topdocs/INSTALL.texi (Top): update versions and
4304 * ly/engraver-init.ly: switch on hairpinToBarline by default.
4306 2006-05-16 Graham Percival <gpermus@gmail.com>
4308 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
4310 * Documentation/user/ various: minor fixes.
4312 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
4314 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
4316 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
4318 * Documentation/user/advanced-notation.itely (Instrument names):
4319 Modified obsolete instruction on how to move instrument names away
4320 from the staves. Hmm, at second thought the bug probably has been
4321 solved, so the full bug description should probably be removed.
4323 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
4325 * lily/dynamic-engraver.cc (typeset_all): hang ending on
4326 currentCommandColumn.
4328 * lily/hairpin.cc (print): also add padding for non-neighbor
4331 * scm/define-context-properties.scm
4332 (all-user-translation-properties): add hairpinToBarline
4334 * input/regression/hairpin-to-barline.ly: new file.
4336 * lily/context.cc (internal_send_stream_event): thinko fix.
4338 * lily/tie.cc (set_default_control_points): robustness fix.
4340 * python/musicxml.py (Part.interpret): don't complain about
4341 incomplete measures.
4343 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
4344 new music if last_event_chord() returned None.
4346 * python/musicxml.py (Part.interpret): skip back over chord notes.
4348 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
4350 * lily/percent-repeat-engraver.cc, lily/parser.yy,
4351 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
4352 lily/slash-repeat-engraver.cc,
4353 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
4354 iterator sends PercentEvents
4356 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
4357 rework tuplets: send start/stop events to engraver
4359 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
4360 dispatchers event-source and events-below to Context
4362 2006-05-15 Graham Percival <gpermus@gmail.com>
4364 * Documentation/user/README.txt: update info for doc writers.
4366 * Documentation/user/programming-interface.itely: integrate
4367 Nicolas' fixes for chapter rewrite.
4369 * Documentation/user/ various: minor fixes.
4371 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
4373 * lily/clef-engraver.cc: cleanup.
4375 * Documentation/user/GNUmakefile: dist context-example.eps too.
4377 * lily/key-engraver.cc (create_key): use
4378 explicitKeySignatureVisibility for cancellation too.
4380 * lily/font-config.cc (init_fontconfig): don't close file if
4383 2006-05-15 Erlend Aasland <erlenda@gmail.com>
4385 * Documentation/topdocs/NEWS.tely: niente and rotation news
4387 2006-05-14 Erlend Aasland <erlenda@gmail.com>
4389 * lily/include/stencil.hh
4390 * lily/stencil.cc (rotate): new function. Makes it possible
4391 to rotate a stencil around a given offset.
4393 * lily/grob.cc (get_print_stencil): add rotation support
4395 * lily/stencil-interpret.cc (interpret_stencil_expression):
4396 add rotation support
4398 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
4400 * scm/define-grob-properties.scm: add 'rotation property
4402 * scm/define-markup-commands.scm: add rotate markup command
4404 * scm/output-ps.scm: add rotation support in PostScript backend
4406 * scm/output-svg.scm: add rotation support in SVG backend
4408 2006-05-13 Graham Percival <gpermus@gmail.com>
4410 * Documentation/user/music-glossary.itely: French correction.
4412 * Documentation/user/programming-interface.itely: major
4413 new docs, some reorg, some info from Nicolas.
4415 * Documentation/user/ various: small fixes.
4417 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
4419 * Documentation/user/programming-interface.itely (Markup
4420 programmer interface): Remove duplicate text.
4422 2006-05-12 Graham Percival <gpermus@gmail.com>
4424 * Documentation/user/context-example.eps: new file.
4426 * Documentation/user/changing-defaults.itely: set up file to
4429 * Documentation/user/programming-interface.itely: changes
4432 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
4434 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4436 2006-05-11 Graham Percival <gpermus@gmail.com>
4438 * Documentation/user/programming-interface.itely: first round of
4439 editing and merging emails from Nicolas.
4441 * Documentation/user/scheme-tutorial: minor edit.
4443 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4445 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4447 (Xml_node.message): use it.
4449 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4450 oops. Add duration argument.
4452 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4454 * lily/paper-column-engraver.cc (make_columns):
4455 * scm/define-grobs.scm: Revert my previous change and set the default
4456 in define-grobs.scm instead.
4458 2006-05-09 Graham Percival <gpermus@gmail.com>
4460 * Documentation/user/changing-defaults.itely: general editing,
4461 info about \set and \override.
4463 * Documentation/user/tweaking.itely, advanced-notation.itely:
4464 fixes from Dave Luttinen, thanks!
4466 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4468 * lily/paper-column-engraver.cc (make_columns): By default, a column
4469 needs to be breakable.
4471 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4473 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4475 (musicxml_time_to_lily): idem
4476 (musicxml_key_to_lily): idem
4477 (instrument_drumtype_dict): dict for supported drumtypes.
4478 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4479 moments and pending mm rests
4480 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4481 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4482 (musicxml_voice_to_lily_voice): add mode change.
4483 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4484 speed and less memory usage (factor 5 to 10).
4485 (convert): write -defs.ly and driver file separately so people
4486 can script their own part extraction.
4488 * python/musicxml.py (minidom_demarshal_node): new function:
4489 separate minidom handling.
4490 (lxml_demarshal_node): new function: support lxml.etree too.
4491 (Xml_node.message): new function: verbose error message, with XML
4492 path to offending node.
4493 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4494 (Part_list.generate_id_instrument_dict): new method: collect
4495 instrument names, to be able to set drum_type.
4496 (Part.interpret): handle underfull measures
4497 (Part.interpret): assign instrument names.
4499 * python/musicexp.py (Output_printer.close): new method
4500 (MusicWrapper.print_ly): new class: support other modes,
4502 (BarCheck.print_ly): new class. Support bar checks, with comments
4503 and fancy barchecks.
4504 (NoteEvent.__init__): also set drum_type for drum notes.
4505 (MultiMeasureRest.lisp_expression): dump mm rests.
4507 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4508 line-break-permission if forbidBreak is not set.
4510 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4512 * scm/define-context-properties.scm:
4513 * scm/define-grob-properties.scm:
4514 * scm/define-grobs.scm:
4515 * scm/define-music-display-methods.scm:
4516 * scm/define-music-properties.scm:
4517 * scm/define-music-types.scm:
4518 * scm/music-functions.scm:
4519 * ly/declarations-init.ly:
4520 * lily/include/constrained-breaking.hh:
4522 * lily/spaceable-grob.cc:
4523 * lily/simple-spacer.cc:
4524 * lily/paper-score.cc:
4525 * lily/paper-column.cc:
4526 * lily/paper-column-engraver.cc:
4528 * lily/gourlay-breaking.cc:
4529 * lily/constrained-breaking.cc:
4530 * python/convertrules.py:
4531 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4532 "page-break-penalty" and "line-break-permission".
4533 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4534 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4536 * lily/bar-engraver.cc:
4537 * lily/beam-engraver.cc:
4538 * lily/forbid-break-engraver.cc:
4539 * lily/ligature-engraver.cc:
4540 * lily/paper-column-engraver.cc:
4541 * lily/percent-repeat-engraver.cc:
4542 * lily/score-engraver.cc:
4543 * lily/score-engraver.hh:
4544 * lily/paper-column-engraver.hh:
4545 Inter-engraver communication regarding line breaks is done through context
4546 properties (Score.forbidBreak) instead of function calls.
4548 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4550 * VERSION (PACKAGE_NAME): release 2.9.4
4552 2006-05-08 Graham Percival <gpermus@gmail.com>
4554 * Documentation/user/working.itely: proofreading from Dave
4557 * Doucmentation/user/README.txt: updated with manual style info.
4559 * Documentation/user/ various: trim linewidth to 78 chars.
4561 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4563 * scm/define-grob-properties.scm (all-internal-grob-properties):
4564 remove chord-tremolo property.
4566 * lily/beam.cc (get_beam_segments): don't use stem position as
4567 base for broken ends.
4569 2006-05-06 Graham Percival <gpermus@gmail.com>
4571 * Documentation/user/putting.itely: proofreading from Dave
4574 * Documentation/user/ various: more reorg and clarifications.
4576 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4578 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4580 * ly/music-functions-init.ly: new function featherDurations
4582 * lily/beam.cc: read grow-direction for feathered beaming.
4584 * Documentation/topdocs/NEWS.tely (Top): typo.
4586 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4588 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4591 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4592 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4593 used by music streams.
4595 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4596 lily/stream-event.cc, lily/stream-event-scheme.cc,
4597 lily/listener.cc, lily/scheme-listener.cc,
4598 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4599 lily/include/stream-event.hh, lily/include/listener.hh,
4600 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4601 Created data structures for music streams.
4603 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4605 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4606 construction of a beam.
4609 * flower/include/std-vector.hh (default_compare): use only one comparison.
4611 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4612 (note-by-number): further attachment fixes.
4614 * scm/lily-library.scm (ordered-cons): new function.
4615 (interval-index): new function
4617 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4619 * lily/note-head.cc (get_stem_attachment): new function.
4621 * scm/define-markup-commands.scm (note-by-number): read 'style
4624 * input/regression/markup-note.ly: show note-head style option.
4626 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4629 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4631 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4633 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4635 * lily/include/constrained-breaking.hh: GCC 4 fix.
4637 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4639 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4640 Replace it with functions get_line_forces and get_line_configuration.
4641 (class Simple_spacer): Make data private.
4642 Rewrite compression algorithm to be faster and simpler.
4644 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4645 * lily/gourlay-breaking.cc (solve):
4646 * lily/constrained_breaking.cc (space_line):
4647 Change it to the new simple-spacer code.
4649 * lily/paper-score.cc (get_paper_systems):
4652 Delay breaking the systems until they are requested.
4653 (find_break_indices):
4654 Use vsize for indices.
4656 Move the "Calculating line breaks" message here.
4658 * lily/system.cc (pre_processing):
4659 Move the "Calculating line breaks" message away from here.
4660 (break_into_pieces):
4661 Allow multiple calls to this function in sequence (with touching-but-
4662 not-overlapping breakpoints).
4664 * lily/constrained-breaking.cc:
4665 Replace most of the get_XXXX functions with get_line_details.
4666 Only calculate the force for each line. Calculate configurations only
4667 for the lines we will actually use.
4668 Replace cols_ with lines_.
4670 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4672 * mf/GNUmakefile (depth): remove FC_FIND.
4674 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4676 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4678 * scm/framework-ps.scm (write-preamble): new function.
4679 (write-preamble): load mac fonts via fondu, even if gs-font-load
4682 2006-05-03 Werner Lemberg <wl@gnu.org>
4684 * mf/GNUmakefile (FC_FIND): Fix typo.
4686 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4688 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4690 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4692 * stepmake/aclocal.m4: run python-config for crosscompiling
4695 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4696 -f png for HTML, TEXINFO formats.
4698 * input/tutorial/lbook-html-test.html: new file.
4700 * lily/include/tie-formatting-problem.hh (class
4701 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4702 [column, direction]. This fixes laissez vibrer ties.
4704 * flower/include/tuple.hh (struct Tuple2): new file.
4706 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4707 $(FCMATCH), only if $(NCSB_DIR) not set.
4709 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4711 * config.make.in (DOCUMENTATION): set FCMATCH.
4713 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4715 2006-05-03 Graham Percival <gpermus@gmail.com>
4717 * Documentation/user/ various: final round of reorg.
4719 * Documentation/user/instrument-notation.itely: some more
4720 fixes from Eduardo, thanks!
4722 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4724 * VERSION (PACKAGE_NAME): release 2.9.3
4726 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4728 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4730 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4732 * scm/define-grob-properties.scm (all-user-grob-properties):
4733 Correct typo, thanks to Eduardo.
4735 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4737 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4739 * buildscripts/lilypond-words.py (F): indent fix.
4741 * input/regression/tie-arpeggio-collision.ly: new file.
4743 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4744 function: store outlines per column rank.
4746 * lily/include/tie-configuration.hh (class Tie_configuration): add
4747 column_ranks_ to specification and configuration, to distinguish
4748 between ties for different heads in arpegiated chords.
4750 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4752 * *.py: more 4 space indents.
4754 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4756 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4758 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4760 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4762 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4764 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4766 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4768 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4770 * python/convertrules.py (conv): indent 4 for python files.
4772 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4774 * Documentation/user/changing-defaults.itely (Creating contexts):
4775 Clarify \new semantics.
4777 2006-04-28 Graham Percival <gpermus@gmail.com>
4779 * Documentation/user/ various: major new sections in the
4780 Learning manual, slight reorg elsewhere.
4782 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4784 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4786 * scm/framework-ps.scm (output-framework): remove PageMedia
4788 2006-04-27 Graham Percival <gpermus@gmail.com>
4790 * Documentation/user/ tweaks.itely, working.itely: new
4791 files, being more advanced "learning manual" chapters.
4793 * Documentation/user/ tutorial, putting, lilypond: reorg.
4795 2006-04-26 Graham Percival <gpermus@gmail.com>
4797 * input/regression/lyric-combine-polyphonic.ly: fixed test
4798 (no more "can't find context `one'" error).
4800 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4802 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4804 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4806 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4808 * lily/relocate.cc (read_relocation_dir): new function.
4810 2006-04-26 Graham Percival <gpermus@gmail.com>
4812 * Documentation/user/instrument-notation.itely: a few more fixes
4813 from Eduardo, thanks!
4815 * Documentation/user/README.txt: new file; contains info on
4816 style that used to be in lilypond.tely.
4818 * Documentation/user/ various: first round of doc reorg.
4820 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4821 graphic; this probably causes problems on some pdf
4822 viewers, notably Adobe Acrobat.
4824 2006-04-24 Graham Percival <gpermus@gmail.com>
4826 * Documentation/user/instrument-notation.itely: many alterations
4827 to Vocal music, from Eduardo Viera.
4829 2006-04-23 Graham Percival <gpermus@gmail.com>
4831 * Documentation/user/instrument-notation.itely: fix \new
4832 instead of \context problem.
4834 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4836 * lily/relocate.cc (expand_environment_variables): new function.
4838 (read_relocation_file): id.
4840 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4842 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4844 * ly/engraver-init.ly: remove old comments from TabVoice
4846 2006-04-20 Graham Percival <gpermus@gmail.com>
4848 * Documentation/user/instrument-notation.itely: added Erlend's
4849 latest doc patch, thanks!
4851 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4853 * lily/include/slur.hh:
4855 * lily/phrasing-slur-engraver.cc:
4856 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4857 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4858 Slur_engraver:: and putting it in
4859 Slur::auxiliary_acknowledge_extra_object ().
4861 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4863 * lily/note-collision.cc: fix a comment
4865 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4867 * stepmake/bin/add-html-footer.py: fix footer position in
4868 generated html files: before </body> and </html> tags.
4870 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4872 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4873 Earlier successive `make' commands finally compiled ok.
4875 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4877 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4879 * lily/include/stem-tremolo.hh:
4880 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4884 * lily/include/lookup.hh: add rotated_box ()
4886 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4888 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4889 been generated. Fixes "can't get `--help'" bug after make clean.
4891 * THANKS: alphabetize contributors.
4893 2006-04-17 Graham Percival <gpermus@gmail.com>
4895 * Documentation/user/instrument-notation.itely: added Erlend's
4896 tabs and banjo doc patch. Thanks!
4898 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4900 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4902 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4904 * scm/output-lib.scm: add some more predefined string tunings.
4906 * Documentation/user/instrument-notation.itely: and doc them.
4908 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4910 * ly/engraver.ly: Remove obsolete comments.
4912 * ly/gregorian-init.ly: Define default layout block.
4914 * input/puer-fragment.ly: Updated and extended.
4916 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4918 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4919 pdf conversion behaviour.
4921 * flower/file-name.cc (dir_name)
4922 (get_working_directory): Move from relocate.cc.
4924 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4926 * lily/relocate.cc: Encapsulate sys/stat.h in
4929 2006-04-14 Graham Percival <gpermus@gmail.com>
4931 * Documentation/user/ various: small updates from Cameron
4932 and Juergen, thanks!
4934 * Documentation/user/ various: small updates of my own.
4936 * THANKS: 2.7 -> 2.8.
4938 2006-04-11 Graham Percival <gpermus@gmail.com>
4940 * scm/define-context-properties.scm: typo.
4942 * Documentation/user/ : many more small updates.
4944 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4946 * scm/define-music-types.scm: disposed "docme".
4948 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4950 * lily/hairpin.cc: make niente circles a bit smaller.
4952 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4954 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4955 get-pfa and get-*-fonts targets.
4957 2006-04-10 Graham Percival <gpermus@gmail.com>
4959 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4960 music-glossary, programming-interface: more minor fixes
4963 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4965 * scm/define-context-properties.scm: another old \property update.
4966 This time tested for compiling!
4968 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4970 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4972 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4974 * scm/define-context-properties.scm (all-user-translation-properties):
4975 * Documentation/user/global.itely (Page formatting): Compile fix.
4977 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4979 * Documentation/user/advanced-notation.itely (Polymetric
4980 notation): Update the example to use the "+" symbol and add link
4981 to input/test/compound-time.ly.
4983 2006-04-08 Graham Percival <gpermus@gmail.com>
4985 * scm/define-grob-properties.scm: clarify docs for #'direction.
4987 * scm/define-context-properties.scm: update old \property override.
4989 * Documentation/user/ advanced-notation, global, lilypond-book:
4990 more minor doc updates.
4992 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4994 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4996 * scm/backend-library.scm (search-gs): oops.
4998 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
5000 * scripts/lilypond-book.py (output): use base, not filename for href.
5002 * scm/backend-library.scm: only look for gs.
5004 * scripts/lilypond-book.py (output): fix printfilename.
5006 * lily/parser.yy (music_function_musicless_prefix): fold together
5007 definitions of signature (SCM*) (Music|post_event|chord_body_element)
5009 * lily/slur.cc (print): only set font-size if not set yet.
5011 * lily/slur-configuration.cc (add_score): improved layout of debug
5014 2006-04-05 David Feuer <David.Feuer@gmail.com>
5016 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
5017 (draw_circle): Hopefully fixed regression.
5018 Improved documentation for several procedures.
5020 2006-03-04 Werner Lemberg <wl@gnu.org>
5022 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
5024 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
5026 * scripts/musicxml2ly.py (bindir): add dynamic
5029 2006-04-04 Graham Percival <gpermus@gmail.com>
5031 * Documentation/user/ basic-notation, advanced-notation, putting,
5032 instrument-notation, invoking, lilypond, THANKS: another ream of small
5033 fixes from the Doc Helpers.
5035 2006-04-03 David Feuer <David.Feuer@gmail.com>
5037 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
5039 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
5041 * Cleaned up interfaces between PostScript and Scheme, and moved
5042 computations from PostScript to Scheme:
5044 * music-drawing-routines.ps
5045 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
5046 with stroke_and_fill throughout.
5047 (euclidean_length, print_letter, draw_box): Deleted unused
5048 procedures. If someone needs draw_box, implement it using
5049 draw_round_box; don't duplicate code.
5050 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
5051 Refactored/cleaned up interfaces.
5054 * output-ps.scm: reordered arguments to PostScript functions to
5055 match new interfaces
5056 (glyph-string): Rewrote glyph-string.
5057 (grob-cause): Replaced string-append with format.
5058 (repeat-slash): Rewrote to do computation here.
5059 (round-filled-box): Rewrote to do computation here.
5061 2006-04-04 Erlend Aasland <erlenda@gmail.com>
5063 * stepmake/stepmake/generic-targets.make: add cvs-clean target
5065 * stepmake/stepmake/toplevel- targets.make: print help info about
5068 2006-04-03 Erlend Aasland <erlenda@gmail.com>
5070 * input/regression/hairpin-circled.ly: new file
5072 2006-04-03 Erlend Aasland <erlenda@gmail.com>
5074 * lily/hairpin.cc (print): add support for circled tip
5076 * scm/define-grob-properties.scm: add circled-tip parameter
5078 * scm/define-grobs.scm: init circled-tip to false
5080 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
5082 * scm/music-functions.scm (quote-substitute): set
5085 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
5087 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
5090 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
5092 * scm/output-ps.scm (glyph-string): revert cid selectfont.
5094 2006-03-31 David Feuer <david.feuer@gmail.com>
5096 * scm/framework-ps.scm:
5098 * scm/output-ps.scm: glyph-string now produces smaller, more
5099 readable, and probably faster PostScript. Several findfont
5100 scalefont setfont instances changed to selectfont
5101 Hacked-up string-appends changed to formats.
5103 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
5105 2006-03-30 Graham Percival <gpermus@gmail.com>
5107 * scm/lily-library.scm: make "no version" warning message more polite.
5109 * lily/music.cc: add double quotes to failed octave check.
5111 * Documentation/user/ advanced-notation, changing-defaults,
5112 instrument-notation, invoking, music-glossary: whole bunch of minor
5115 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
5117 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
5118 $(buildscriptdir) iso. depth.
5120 * VERSION (PACKAGE_NAME): release 2.9.1
5122 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
5124 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
5126 * VERSION (PATCH_LEVEL): bump version number.
5128 * flower/include/guile-compatibility.hh (scm_from_uint32): add
5131 * lily/pango-font.cc (pango_item_string_stencil): use
5134 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5135 $(outdir)/emmentaler-%.svg): remove canary.
5137 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
5138 glyphnames if we have a ttf font.
5140 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
5142 * Documentation/user/advanced-notation.itely (Font selection):
5143 Corrected reference to the font-family-override.ly example.
5145 2006-03-30 Joe Neeman <joeneeman@gmail.com>
5147 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
5148 stem-tremolo object in the stem (or else the stem might not be
5151 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
5153 * lily/ttf.cc (print_trailer): only print existing glyphs.
5155 2006-03-30 Joe Neeman <joeneeman@gmail.com>
5157 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
5158 position the tremolo based on the position of the notehead.
5160 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
5161 notes and update the texidoc line with the new positioning rules.
5163 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
5165 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
5167 * scripts/lilypond-book.py (Module): set default for linewidth if
5170 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
5172 * VERSION (PACKAGE_NAME): release 2.9.0.
5174 * input/regression/stem-tremolo-position.ly: new file.
5176 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
5178 2006-03-28 Joe Neeman <joeneeman@gmail.com>
5180 * lily/stem-tremolo.cc (print): position
5181 the tremolo depending only on the end of the stem
5182 and not on the notehead
5183 (raw_stencil): center, on the middle staff line, the
5184 flag that is closest to the end of the stem (previously
5186 (calc_width): add this callback to shorten a tremolo when
5187 it is beamed or it is stemup with a flag
5188 (style): add this callback to make a tremolo rectangular when
5189 it is beamed or it is stemup with a flag
5190 (rotated_box): this is like Lookup::beam but makes a rotated
5191 rectangle instead of a parallelogram
5193 * lily/stem.cc (calc_stem_info): make sure the stem
5194 is long enough to fit the tremolo
5195 (calc-length): reduce the length of tremolo stems since the
5196 tremolo code is now capable of better positioning
5198 * scm/define-grobs.scm: make calc_width the default beam-width
5199 callback for stem-tremolo and add the style callback
5201 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
5203 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
5206 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
5208 * lily/ttf.cc (make_index_to_charcode_map): restore old
5211 2006-03-28 Werner Lemberg <wl@gnu.org>
5213 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
5215 2006-03-28 Graham Percival <gpermus@gmail.com>
5217 * THANKS: update for 2.9, add section for Documentation helpers.
5219 * Documentation/topdocs/NEWS.tely: compile fix.
5221 * Documentation/user/ basic-notation, global, advanced-notation,
5222 examples.itely: minor fixes from mailist.
5224 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
5226 * mf/feta-bolletjes.mf: match width of solfa notes with normal
5229 * lily/ttf.cc (print_trailer): use it.
5231 * lily/pango-font.cc (get_unicode_name): new function.
5233 * lily/ttf.cc (make_index_to_charcode_map): move function from
5235 (print_trailer): substitute uniXXXX name if applicable.
5237 * lily/pango-font.cc (get_index_to_charcode_map): new function.
5238 (pango_item_string_stencil): use it to generate uniXXXX names.
5240 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
5241 note heads, for uniform widths in shape note output.
5242 (overdone_heads): hmm. remove them again.
5244 * scripts/lilypond-book.py (output): add links to filenames.
5246 * Documentation/topdocs/INSTALL.texi (Top): update versions.
5248 * lily/note-collision.cc (get_clash_groups): only consider when
5249 Note_column::dir <> CENTER.
5251 * scripts/lilypond-book.py (get_option_parser): init output_name
5254 2006-03-24 Graham Percival <gpermus@gmail.com>
5256 * Documentation/topdocs/NEWS.tely: add @end itemize
5258 * Documentation/user/ global, advanced-notation: minor
5261 2006-03-23 Graham Percival <gpermus@gmail.com>
5263 * Documentation/user/ lilypond.tely, music-glossary,
5264 preface: housekeeping; 2005->2006, remove "notes for 2.6"
5266 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
5268 * mf/GNUmakefile: don't install .enc files.
5270 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
5272 * VERSION (PATCH_LEVEL): bump to 2.9.0
5274 2006-03-22 Graham Percival <gpermus@gmail.com>
5276 * Documentation/user/advanced-notation.itely: minor fixes
5279 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
5281 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
5283 * branch lilypond_2_8
5285 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
5287 * scripts/lilypond-book.py (samefile): new function, for windoze
5290 2006-03-21 Graham Percival <gpermus@gmail.com>
5292 * ly/engraver-init.ly: add info about StaffGroup.
5294 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
5296 * input/regression/stem-direction-context.ly: idem.
5298 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
5302 * input/regression/page-layout-twopass.ly: comment out \markup so
5305 * lily/instrument-name-engraver.cc (finalize): add to instrument
5306 name global System. This also fixes chopped instrument names, but
5307 doesn't crash when there are slurs/beams.
5309 * lily/slur-configuration.cc (add_score): disallow negative slur
5312 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5314 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
5316 * lily/instrument-name-engraver.cc (process_music): kludge: add
5317 InstrumentName spanner to axis group of left bound. Fixes chopped
5318 off instrument names in EPS images.
5320 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
5322 * scripts/abc2ly.py (option_parser): update to 2.7.40
5324 2006-03-20 Graham Percival <gpermus@gmail.com>
5326 * THANKS: move small doc contributors to SUGGESTIONS.
5328 * Documentation/user/ basic-notation, advanced-notation,
5329 global: small changes from mailist.
5331 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5333 * Documentation/user/advanced-notation.itely (Text marks): update
5334 for new rehearsalMarkAlignSymbol convention.
5336 * VERSION (PATCH_LEVEL): bump version.
5338 * input/test/instrument-name-align.ly: new file.
5340 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
5342 * input/test/instrument-name-align.ly: new file. Document how to
5343 align instrument names.
5345 * lily/mark-engraver.cc: remove properties.
5347 * scm/define-context-properties.scm
5348 (all-user-translation-properties): remove align symbol properties
5349 for barnumber/reh. mark.
5351 * lily/break-align-interface.cc (self_align_callback): new
5352 interface, new function. Look at complete alignment. This handles
5353 tunable break alignments in case break-align-symbols are missing.
5355 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
5357 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
5359 * python/convertrules.py (conv): mark/bar number alignment rule.
5361 * lily/break-align-interface.cc (calc_positioning_done): also
5362 store offset from last visible break-alignment to its
5363 neighbor. This makes alignment on non-visible objects more reliable.
5365 * po/lilypond.pot (Module): ran po-replace.
5367 * input/regression/tie-single-manual.ly (Module): new file.
5369 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5370 look at has_manual_position_.
5371 (from_ties): set has_manual_position_ if tie has staff-position set.
5373 * lily/tuplet-bracket.cc (calc_positions): idem.
5375 * lily/tuplet-number.cc (print): don't print tupletnumber if it
5378 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
5380 * scm/define-markup-commands.scm (smallCaps): new markup command
5381 for turning a text to small caps using smaller font size and upper
5384 2006-03-17 Graham Percival <gpermus@gmail.com>
5386 * Documentation/user/ examples, instrument-notation,
5387 advnaced-notation: minor fixes from mailist.
5389 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5391 * Documentation/user/tutorial.itely (First steps): change example
5394 2006-03-17 Graham Percival <gpermus@gmail.com>
5396 * Documentation/user/ examples, advanced: minor changes from mailist.
5398 * THANKS: add Geoff Horton, for documentation stuff.
5400 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5402 * python/lilylib.py (system): revert have_select kludge.
5404 * Documentation/user/tutorial.itely (Commenting input files):
5405 update version numbers in doc.
5407 * scm/define-grob-interfaces.scm (multi-measure-interface): add
5408 bound-padding to multi-measure-interface
5410 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5412 * input/test/engraver-example.ily: update version number.
5414 * VERSION (PACKAGE_NAME): release 2.7.39
5416 * lily/note-spacing.cc (get_spacing): heighten threshold where
5417 accidentals/arpeggios influence previous spacing fully.
5419 * lily/rest.cc (y_offset_callback): only use direction if
5420 staff-position wasn't set before.
5422 * lily/bar-number-engraver.cc: add support for
5423 barNumberAlignSymbol.
5424 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
5426 * lily/pointer-group-interface.cc (set_ordered): new function.
5427 (add_unordered_grob): new function.
5429 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5430 to ordered, unless the opposite has been proved. This fixes
5431 random reordering of large object groups across linebreaks,
5434 * lily/main.cc (do_chroot_jail): printf format fix.
5436 * lily/tie-formatting-problem.cc (generate_configuration):
5437 multiply y-shift for dot with direction.
5439 * scm/define-markup-commands.scm (note-by-number): put (magstep
5440 size) in y-attach too.
5442 * Documentation/topdocs/NEWS.tely (Top): show override.
5444 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5445 direction for stems.
5447 2006-03-15 Graham Percival <gpermus@gmail.com>
5449 * Documentation/user/ changing-defaults, global: minor
5452 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5454 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5456 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5457 breakable items after uniformly stretched notes.
5459 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5460 outline with outer edge of note heads. This prevents infinity
5461 problems with tied whole notes.
5463 * scripts/lilypond-book.py (do_file): use os.popen
5465 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5467 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5469 * Documentation/user/invoking.itely: Add ragged-right to bug report
5472 2006-03-14 Graham Percival <gpermus@gmail.com>
5474 * Documentation/user/global.itely: small fix from mailist.
5476 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5478 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5479 file descriptor returned by tempfile.mkstemp() when writing
5480 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5483 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5485 * po/fi.po: newline bugfix.
5487 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5489 * scm/paper.scm (paper-alist): Rounding fixes.
5491 2006-03-13 Graham Percival <gpermus@gmail.com>
5493 * Documentation/user/ changing-defaults, instrument-notation,
5494 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5496 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5500 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5502 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5505 * python/lilylib.py (print_environment): move ps_page_count to
5508 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5510 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5512 * scm/framework-ps.scm (embed-document): new function. Use to
5515 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5517 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5519 * Documentation/user/instrument-notation.itely (Setting simple
5520 songs): Added \book{...} around the full example, so the separate
5521 markups are included in the printed example.
5523 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5525 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5528 * python/lilylib.py (system): rewrite system() using
5529 subprocess. Remove >& redirection trickery.
5531 2006-03-11 Graham Percival <gpermus@gmail.com>
5533 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5534 notation-appendices.itely: minor fixes from mailist.
5536 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5538 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5539 unsplit man also needs images.
5541 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5543 * VERSION (PACKAGE_NAME): 2.7.38 released.
5545 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5547 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5550 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5552 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5553 respects the Score.skipTypesetting property.
5555 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5557 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5558 Prolog. No %%EOF after CFF file.
5560 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5562 * lily/constrained-breaking.cc (get_max_systems): used to return a
5564 (combine_demerits): use pointers to reduce copying data
5565 (calc_subproblem): idem
5566 (get_page_penalty): add page turn penalties
5568 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5570 * Documentation/user/invoking.itely (Invoking lilypond): better
5571 explanation of -e usage.
5573 * lily/main.cc (main_with_guile): don't append to
5574 init_scheme_code_string
5576 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5578 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5580 * scripts/convert-ly.py (do_options): don't print help for
5583 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5584 @code and @example. Update from texinfo.tex from CVS.
5586 2006-03-08 Graham Percival <gpermus@gmail.com>
5588 * Documentation/user/scheme-tutorial.itely: clarifies distances
5589 measured in staff-spaces.
5591 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5593 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5594 consider[k] is true.
5596 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5598 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5599 consider columns that have originals. Unifies spacing for mm
5600 rests around line breaks.
5602 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5603 (set_text_rods): idem.
5604 (calculate_spacing_rods): new function: share code between
5605 set_text_rods and set_spacing_rods.
5606 (set_text_rods): take extents of bounds into account.
5608 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5610 * Documentation/user/basic-notation.itely (Writing music in
5611 parallel): don't use relative.
5613 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5615 * ly/music-functions-init.ly (Module): add shiftDurations
5617 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5619 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5621 * ly/engraver-init.ly: init vocalName to nil.
5623 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5625 * scm/music-functions.scm (music->make-music): bugfix,
5626 KeyChangeEvents are now handled correctly.
5628 * scripts/lilypond-book.py: Add --debug option.
5630 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5632 * python/lilylib.py: add tempfile.
5634 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5636 * VERSION (PACKAGE_NAME): release 2.7.37
5638 * python/lilylib.py (ps_page_count): remove make_ps_images().
5639 (ps_page_count): remove mkdir_p
5640 (system): remove cleanup_temp.
5641 (exit): remove lilypond_version_(check)
5642 (error_log): remove pseudo_filter_p
5647 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5650 * lily/accidental-engraver.cc (make_standard_accidental): only add
5651 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5653 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5654 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5655 Make incompatibilities.
5657 * scm/output-ps.scm (grob-cause): replace backslashes by /
5658 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5660 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5662 * cygwin/GNUmakefile: Install fixes.
5664 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5666 * lily/note-head.cc (head::get_balltype): Compile fix.
5668 * flower/file-name.cc (dos_to_posix): Flower string fix.
5670 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5672 * python/lilylib.py: pychecker cleanups.
5674 * scripts/lilypond-book.py
5675 (Lilypond_snippet.output_print_filename): pychecker cleanups
5677 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5679 * python/lilylib.py (underscore): remove identify() , warranty()
5681 * ps/music-drawing-routines.ps: change Border routine for GSView
5684 * lily/stem.cc (height): use quantize-positions. This triggers
5685 set_stem_lengths, so scripts on beamed stems are handled correctly.
5687 * lily/side-position-interface.cc (aligned_side): check if edges
5688 of script are inside staff. Fixes accent of edge of the staff.
5690 * input/regression/staccato-pos.ly: more examples.
5692 * stepmake/aclocal.m4 (depth): fix bashism.
5694 * lily/lyric-combine-music-iterator.cc: move from
5695 new-lyric-combine-iterator.cc
5696 (process): add pending_grace_lyric_ member to delay lyrics on
5699 * lily/system-start-text.cc (print): suicide if we don't have any
5700 elements. Fixes hara kiri'd instrument names.
5702 * scripts/mup2ly.py (Module): remove.
5704 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5706 * Documentation/user/global.itely (A single music expression):
5707 close @lilypond properly
5709 * lily/volta-bracket.cc (modify_edge_height): change from
5710 after_line_breaking_callback. Suicide last bracket if appropriate.
5712 * python/lilylib.py: strip getopt support
5714 * scripts/etf2ly.py (do_options): use optparse
5716 * scripts/midi2ly.py: optparse, strip lilylib copy.
5718 * scripts/abc2ly.py (voices): use optparse.
5720 * stepmake/stepmake/generic-vars.make: new function absdir.
5722 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5724 * scripts/lilypond-book.py (find_file): use global_options for
5727 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5730 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5732 * python/lilylib.py (get_global_option): ughness for extracting
5733 global options from lilylib.
5734 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5736 * scripts/lilypond-book.py (get_option_parser): use optparse for
5737 option handling. Put options in global_options variable.
5739 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5741 * Documentation/index.html.in: clarify.
5743 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5745 * scm/layout-page-layout.scm (write-page-breaks): add a
5746 music-system-heights property to the page layout output.
5748 * scm/page.scm (make-page-stencil): take footer into account when
5749 computing the 'space-left page property
5750 (annotate-space-left): take footer into account when annonating
5753 2006-02-28 Graham Percival <gpermus@gmail.com>
5755 * Documentation/user/ advanced-notation, global: more (final)
5756 docs for music expressions, removed special fermatas.
5758 2006-02-27 Graham Percival <gpermus@gmail.com>
5760 * Documentation/user/ basic-notation, global: minor changes
5763 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5765 * scm/framework-ps.scm:
5766 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5767 layer for inf? and nan? from framework-ps to lily-library.
5769 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5771 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5772 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5774 * buildscripts/substitute-encoding.py (Module): remove file.
5776 * mf/GNUmakefile: more PFA strippage.
5778 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5780 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5783 * scm/framework-ps.scm: remove font name munging.
5785 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5787 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5789 * scm/markup.scm (define-markup-command): change
5790 def-markup-command to define-markup-command
5792 * scm/music-functions.scm (define-music-function): change
5793 def-music-function to define-music-function.
5795 * python/convertrules.py (conv): rules for def-music-function
5796 and def-markup-commands
5798 * Documentation/user/programming-interface.itely,
5799 input/no-notation/display-lily-tests.ly,
5800 input/regression/lily-in-scheme.ly,
5801 input/regression/markup-user.ly,
5802 input/regression/music-function.ly, input/regression/tie-chord.ly,
5803 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5804 ly/gregorian-init.ly: use new macro names (define-music-function,
5805 define-markup-command).
5807 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5809 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5810 (output): add comments to lp-book latex output.
5812 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5815 2006-02-23 Graham Percival <gpermus@gmail.com>
5817 * Documentation/user/ tutorial, global: minor changes.
5819 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5821 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5822 blocks (for make 3.80)
5824 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5825 \notemode so that user should not have to explicitely type it.
5827 * scm/define-music-display-methods.scm: various
5828 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5831 * input/no-notation/display-lily-tests.ly: new tests for
5832 \applyOutput and \applyContext
5834 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5836 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5837 changed it slightly so that the number of systems returned by
5838 solve () will be the same as the last value passed to resize
5839 (). I've also added more documentation, removed casts, fixed style
5840 problems and put in some recovery if constraints aren't satisfied."
5842 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5844 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5845 for emacs < 22 compatibility.
5846 (count-rexp): Use it.
5847 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5848 substring juggling (Milan Zamazal).
5850 2006-02-23 Graham Percival <gpermus@gmail.com>
5852 * Documentation/user/ basic-notation, advanced-notation,
5853 global.itely, invoking.itely, tutorial,itely:
5854 minor fixes from mailist.
5856 * scm/define-markup-commands.scm: improve docs of \filled-box.
5858 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5860 * Documentation/index.html.in: changes concern the previous release.
5862 * input/regression/+.ly: cultivate typographical terminology.
5864 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5866 * scm/define-grob-interfaces.scm (parentheses-interface): add
5867 padding to parentheses-interface.
5869 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5870 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5872 * VERSION (PATCH_LEVEL): release 2.7.36
5874 * lily/slur.cc: add avoid-slur (ugh.)
5876 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5877 intersection gets smaller. This fixes slurs over extreme points.
5879 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5880 stems with neutral-direction set.
5882 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5884 * lily/open-type-font.cc (load_table): format error.
5886 * lily/change-iterator.cc (process): format fix.
5888 * flower/include/international.hh (_f): idem.
5890 * flower/include/std-string.hh: add format printf attribute.
5892 * scm/define-grobs.scm (all-grob-descriptions): height of all
5893 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5895 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5898 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5900 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5902 * input/regression/: upgraded syntax for some files.
5904 * THANKS: Add bughunters.
5906 2006-02-22 Graham Percival <gpermus@gmail.com>
5908 * Documentation/user/ invoking.itely, advanced-notation.itely,
5909 global.itely: long-awaited "let's make chapter 10 not suck"
5910 update. Rearrange chapter 10; now called "global issues",
5911 addresses file structure, etc. Some info from other files
5912 moved into global.itely.
5914 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5916 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5917 catch trill-span-event notes.
5919 * Documentation/user/examples.itely (Ancient notation templates): typo.
5922 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5924 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5926 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5928 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5930 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5931 froum Laissez_vibrer_engraver.
5933 * ly/declarations-init.ly (repeatTie): add \repeatTie
5935 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5937 * scm/define-grob-properties.scm (all-user-grob-properties): add
5938 head-direction property.
5940 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5941 from_lv_ties. Take head direction argument.
5943 * lily/semi-tie-column.cc: rename from
5944 laissez-vibrer-tie-column.cc. Rename class too.
5946 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5949 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5951 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5953 (find_breaks): idem.
5955 2006-02-21 Graham Percival <gpermus@gmail.com>
5957 * Documentation/user/advanced-notation.itely: fixed make-moment]
5960 * Documentation/user/basic-notation.itely: more clarification to
5963 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5965 * lily/include/constrained-breaking.hh (class
5966 Constrained_breaking): new file.
5968 * lily/constrained-breaking.cc (resize): new file.
5970 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5972 * Documentation/user/advanced-notation.itely (Clusters): insert
5975 * lily/tie-column.cc (calc_positioning_done): support for
5978 * lily/tie-formatting-problem.cc
5979 (generate_extremal_tie_variations): factor out.
5980 (score_ties_configuration): annotate all tie
5981 (print_ties_configuration): new routine.
5982 (generate_configuration): nudge extremal ties outside of the head
5984 (score_ties_configuration): oops. convert to staff-space before
5985 determining position symmetry.
5987 2006-02-20 Graham Percival <gpermus@gmail.com>
5989 * Documentation/user/*-notation.itely: misc minor editing,
5990 shifting doc sections around.
5992 * Documentation/user/*-notation-itely, global.itely,
5993 changing-defaults.itely: added new stuff from NEWS.
5995 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5999 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6001 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
6002 lilypond --verbose for lp-book.
6004 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
6005 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
6007 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
6008 $(buildscript-dir) iso. absolute depth.
6010 * buildscripts/genicon.py (dir): thinko.
6012 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
6014 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
6016 * scm/output-lib.scm: swap darkcyan/darkyellow
6018 * THANKS: Add bughunters.
6020 2006-02-19 Graham Percival <gpermus@gmail.com>
6022 * Documentation/user/programming-interfaces.itely: fixed example.
6024 * Documentation/user/instrument-notation.itely: fix @{ @}.
6026 * scm/script.scm: add avoid-slur for \open.
6028 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6030 * lily/tie-formatting-problem.cc (score_configuration): use
6031 sliding score for min-length.
6033 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
6034 spaghetti for icons.
6036 * buildscripts/genicon.py (program_name): new file.
6038 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
6040 (generate_configuration): for small ties, also look for collisions
6041 at Y + DIR*h + DELTA_Y.
6042 (get_variations): consider variation for dot positions too.
6044 * lily/side-position-interface.cc (aligned_side): take abs for
6045 quantized rounded position. Fixes tenuto below staff.
6047 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
6048 markers when necessary.
6050 * lily/program-option.cc (internal_set_option): add
6051 strict_infinity_checking option.
6053 * scm/output-lib.scm (cyan): swap yellow and cyan.
6055 2006-02-19 Graham Percival <gpermus@gmail.com>
6057 * darwin.patch: trivial linenumber update.
6059 * Documentation/user/ {various}: `\context foo = named' changed
6060 to `\new foo = "name"' in docs.
6062 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6064 * scm/stencil.scm (annotate-y-interval): use it.
6066 * scm/lily-library.scm (interval-sane?): new function.
6068 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
6071 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
6074 * flower/include/std-vector.hh (iterof): add iterof macro.
6076 * lily/enclosing-bracket.cc (width): new function.
6078 * lily/align-interface.cc (align_elements_to_extents): reinstate
6081 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
6083 * Documentation/index.html.in: fix spelling: thankyous.
6085 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6087 * lily/lyric-hyphen.cc: typo.
6089 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
6091 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
6092 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
6095 * VERSION: release 2.7.35
6097 * lily/beam.cc (get_default_dir): oops. Take abs () for
6099 (get_default_dir): use extreme position criterion only in absence
6100 of forced stem directions.
6102 * VERSION (PATCH_LEVEL): bump VERSION.
6104 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
6105 dependencies. Necessary for -jX builds.
6107 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
6109 * lily/relocate.cc (setup_paths): Yet another const fix.
6111 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
6113 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
6115 * lily/relocate.cc (setup_paths): oops.
6117 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
6119 * Documentation/index.html.in: order links: html before PDF.
6121 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
6123 * lily/tie-column-format.cc (Module): remove.
6125 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
6127 * lily/text-spanner.cc (print): idem.
6129 * lily/dynamic-text-spanner.cc (print): only print line if longer
6132 * lily/auto-change-iterator.cc (change_to): formatting.
6134 * lily/beam.cc (get_default_dir): take extreme note head as input
6137 * lily/tie.cc (get_default_dir): only look directions for visible
6140 * lily/side-position-interface.cc (aligned_side): oops. Don't
6141 mutiply with direction. This fixes quantized (staccato, tenuto)
6142 scripts below notes.
6144 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
6145 direction. Fixes c-lyrics-center-align.ly
6147 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
6149 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
6152 * lily/std-string.cc:
6153 * lily/include/std-vector.hh (split_string): Move and rename from
6154 lily/include/misc.hh, lily/misc.cc. Update callers.
6156 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6158 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
6160 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
6162 * flower/test-file.cc: New file.
6164 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
6167 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
6169 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6171 * flower/include/file-storage.hh: remove file.
6173 * lily/include/midi-item.hh (class Midi_track): idem.
6175 * lily/include/source.hh (class Sources): idem.
6177 * lily/include/performance.hh (class Performance): use vector
6180 * flower/include/cons.hh (class Cons): remove file.
6182 * flower/include/flower-proto.hh: remove template cruft.
6184 * lily/include/font-metric.hh: use size_t not vsize for indices.
6186 * flower/include/flower-proto.hh (Module): remove std-vector.hh
6189 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
6191 * lily/include/paper-book.hh (class Paper_book):
6192 make get_system_specs() public.
6194 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
6195 the force=10000 case if we don't have a current-best.
6197 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
6200 * flower/include/flower-proto.hh: remove outdated templates.
6202 * scm/page.scm: use annotate-spacing
6204 2006-02-15 Graham Percival <gpermus@gmail.com>
6206 * scm/translation-functions.scm: circle patch from Erlend, thanks!
6208 * THANKS: moved Erlend Aasland to contributors.
6210 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
6212 * config.hh.in: remove HAVE_PANGO_16
6214 * lily/tuplet-bracket.cc (calc_positions): multiply with
6215 staff-space for beam case. This fixes tuplets+beams on scaled
6218 * config.hh.in: remove all Kpathsea related defines.
6220 * lily/dot-column.cc (side_position): reach stem via dots->
6221 head->stem. Inspect all stems for dot collisions.
6223 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
6226 * lily/bar-number-engraver.cc (process_music): document function
6229 * lily/score.cc (default_rendering): add pscore, not systems
6232 * lily/paper-book.cc (get_system_specs): separate generation of
6235 * flower/include/std-vector.hh: don't include config.hh
6237 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
6239 * flower/include/std-vector.hh: Better wrapper compatibility with
6242 * flower/include/flower-proto.hh: Remove cheap forward declaration
6245 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
6247 2006-02-14 Graham Percival <gpermus@gmail.com>
6249 * Documentation/user/invoking.itely: add warning about command line.
6251 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6253 * lily/include/lily-proto.hh: add Prob, rm Page.
6255 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
6257 * VERSION: release 2.7.34
6259 * lily/relocate.cc (framework_relocation): show canary if
6260 GHOSTSCRIPT_VERSION undefined.
6262 * GNUmakefile.in: remove $(VERSION) symlink.
6264 * lily/relocate.cc (setup_paths): add +
6266 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
6268 * Documentation/index.html.in: specify sizes for all big HTML pages.
6270 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6272 * config.hh.in: remove @FRAMEWORKDIR@
6274 * lily/system-start-text.cc (get_stencil): new file: separate out
6275 system-start-delimiter text support.
6277 * input/**ly: replace \context with \new where appropriate.
6281 * lily/slur-scoring.cc (get_base_attachments): use
6282 robust_relative_extent. This fixes problems with empty paper-columns.
6284 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6286 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
6288 * scm/define-music-properties.scm (all-music-properties):
6289 create-new property.
6291 * lily/context-specced-music-iterator.cc (construct_children):
6292 inspect 'create-new property iso. magical $uniqueContextId context
6295 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
6297 * lily/context-key-manager.cc (Module): new file. Encapsulate
6298 object key generation.
6300 * lily/include/context-key-manager.hh (Module): new file.
6302 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6304 * scm/define-grobs.scm (all-grob-descriptions): center instrument
6307 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
6309 (reloc_b): excise --enable-framework-dir
6311 * lily/relocate.cc (framework_relocation): use getenv
6312 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
6314 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
6316 * flower/include/std-string.hh:
6317 * flower/include/std-vector.hh: Finish std:: conversion; move
6318 flower extensions from std:: namespace. Update users.
6320 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
6321 their expansion to vector<*>. Update users.
6323 2006-02-10 Graham Percival <gpermus@gmail.com>
6325 * Documentation/user/invoking.itely: add example to File structure.
6327 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
6328 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
6330 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6332 * ly/paper-defaults.ly: typo.
6334 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
6335 set_parent() for parentheses. This will make it show up in bbox
6338 * scm/output-lib.scm (parentheses-item::print): rewrite, using
6339 ly:grob-common* functions.
6341 * lily/grob-scheme.cc (LY_DEFINE):
6342 ly:grob-common-refpoint-of-array: new function
6343 ly:grob-common-refpoint: new function
6344 ly:grob-relative-coordinate: new function
6346 * lily/instrument-name-engraver.cc (process_music): use
6347 Text_interface::is_markup(). This fixes \markup on instrument names.
6349 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
6352 * lily/slur.cc (print): idem.
6354 * lily/tie.cc: add line-thickness for ties.
6356 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
6358 * scm/output-svg.scm: Document diversion from GNU coding standards
6359 as a workaround for a bug in Microsoft Internet Explorer.
6361 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6363 * lily/instrument-name-engraver.cc (process_music): use
6364 is_markup() iso. is_string()
6366 * Documentation/user/changing-defaults.itely (Module): add menu entry.
6368 * lily/percent-repeat-engraver.cc (process_music): only look at
6369 main_part_ for % repeats.
6371 * lily/stem-tremolo.cc (get_beam_translation): new function.
6372 (calc_slope): new function.
6373 (height): don't use real slope.
6375 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
6377 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
6378 new connect-to-neighbor, control-points and staff-padding
6379 properties to make ligature brackets showing up again.
6381 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6383 * VERSION: release 2.7.33
6385 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
6388 * Documentation/user/changing-defaults.itely (Difficult tweaks):
6389 remove applyOutput example.
6390 (Objects connected to the input): document \tweak, \parenthesize
6392 * lily/relocate.cc (prefix_relocation): allow "current"
6393 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
6394 changing VERSION in a lily tree less painful.
6396 * input/regression/parenthesize.ly: new file.
6398 * scm/output-lib.scm (parenthesize-element): new function.
6400 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
6402 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
6404 * lily/accidental-engraver.cc (make_standard_accidental): reroute
6405 cause: accidentals are caused by note heads, not note events.
6407 2006-02-08 Graham Percival <gpermus@gmail.com>
6409 * darwin.patch: small patch from Erlend, thanks!
6411 * Documentation/user/basic-notation.itely: add stem-neutral example.
6413 * Documentation/user/putting.itely: clarifications.
6415 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6417 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
6418 note, add more guidelines to what should go into NEWS.
6420 * input/sakura-sakura.ly: document how to override font.
6422 * input/regression/font-family-override.ly: doc -dshow-available-fonts
6424 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6426 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6428 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
6430 * scripts/convert-ly.py (lilypond_version_re_str): Move from
6431 convertrules. Add explicit grouping, needed for python2.2.
6433 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
6435 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6437 2006-02-07 Graham Percival <gpermus@gmail.com>
6439 * Documentation/user/global.itely: fix line-width in (text) docs.
6441 * Documentation/user/lilypond-book.itely: same.
6443 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6445 * VERSION (PACKAGE_NAME): release 2.7.32
6447 * Documentation/topdocs/NEWS.tely (Top): document new variable
6450 * flower/include/array.icc (Message): remove file.
6452 * flower/include/std-vector.hh: make sure vsize and VPOS are
6453 defined for binary_search_bounds().
6455 * flower/std-string.cc (std): add to_string(long unsigned).
6457 * configure.in (gui_b): excise std_string option.
6458 (gui_b): excise std_vector option.
6460 * flower/string.cc (Module): excise flower array & string
6462 * flower/include/std-string.hh: excise flower string.
6464 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6466 * python/convertrules.py (lilypond_version_re_str): require
6467 only numbers and dots in \version string.
6469 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6471 * lily/system-start-delimiter.cc (print): allow style = text too.
6473 * lily/system-start-delimiter-engraver.cc
6474 (acknowledge_system_start_text): new function, also add add to
6475 support of system-start-text (instrument names). This fixes
6476 instrument names on piano staves.
6478 * lily/instrument-name-engraver.cc: rewrite. Use
6479 system-start-delimiter approach. This save memory and cpu.
6481 * scm/define-grobs.scm (all-grob-descriptions): remove
6482 instrument-name from break-alignment.
6484 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6486 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6488 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6491 * configure.in (std_vector): On by default.
6493 * lily/include/font-metric.hh:
6494 * lily/include/tfm-reader.hh:
6495 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6498 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6500 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6502 * VERSION (PACKAGE_NAME): 2.7.31
6504 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6505 EPS edge at 0, but take minimum with left-overshoot. This fixes
6506 cut off system start delims.
6508 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6509 hack: add to axis group if not added yet. This fixes hara kiri'd
6512 * lily/hara-kiri-group-spanner.cc
6513 (force_hara_kiri_in_y_parent_callback): fix signatures.
6515 * lily/hairpin.cc (print): check next hairpin to see whether or
6516 not to be continuing.
6518 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6520 * Remove trailing whitespace from makefiles.
6522 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6525 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6527 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6529 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6531 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6533 * configure.in: Use it.
6535 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6537 * scm/music-functions.scm (pitch-of-note): new function.
6539 * ly/music-functions-init.ly: add \octave and \addquote
6541 * lily/parser.yy (music_function_chord_body): softcode \octave.
6542 (lilypond_header): softcode \addquote
6544 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6546 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6547 array.hh, parray.hh at all. Getting ready to flip the
6550 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6552 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6555 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6557 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6559 * flower/include/array.hh: typo.
6561 2006-02-02 Graham Percival <gpermus@gmail.com>
6563 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6565 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6567 * flower/include/pqueue.hh: Derive from std::vector.
6569 * flower/include/parray.hh: Conform to std::vector interface.
6572 2006-02-02 Graham Percival <gpermus@gmail.com>
6574 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6576 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6578 * flower/file-path.cc (is_file): remove if 0 section.
6580 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6581 selecting afii61352.
6583 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6585 * flower/include/std-vector.hh (boundary): Oops, reverse.
6587 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6588 remove superfluous `d'.
6590 * flower/include/std-vector.hh (boundary, top): Detach from class.
6591 Remove empty vector shell.
6593 * flower/include/array.hh (reverse, swap): Detach from class.
6596 * flower/include/std-vector.hh
6597 * flower/include/array.hh (concat): Globally change to insert ().
6599 * flower/include/std-vector.hh
6600 * flower/include/parray.hh
6601 * flower/include/array.hh (elem, elem_ref): Globally replace by
6604 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6606 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6608 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6609 anticipate on identifier substitutions.
6611 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6613 * flower/include/std-vector.hh (insert): Remove, replace by
6614 std::vector interface. Update callers.
6616 * flower/include/array.icc (insert): Change signature to
6617 match std::vector interface.
6619 * flower/include/array.icc (vector_sort): Bugfix.
6621 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6623 * lily/parser.yy (output_def_head_with_mode_switch): new
6624 production. Result: dashes and underscores may be used in the
6627 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6629 * python/convertrules.py (conv): oops. One slash too much.
6631 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6633 * flower/include/std-vector.hh (sort): Remove, replace by
6634 ::vector_sort. Update callers.
6636 * flower/include/std-vector.hh (slice): Remove. Update callers.
6639 * flower/test-std.cc (vector_sort): New test.
6641 2006-02-01 Graham Percival <gpermus@gmail.com>
6643 * Documentation/user/putting.itely: fixes from Erik.
6645 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6647 * flower/test-std.cc: Add simple unit test for vector migration.
6649 * stepmake/stepmake/test*: Unit test support.
6651 * flower/include/std-vector.hh (del): Remove. Use erase (),
6654 * flower/include/array.hh (begin, end): Add.
6657 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6659 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6660 std::string not String.
6662 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6665 * lily/prob.cc (Prob): copy type_ too.
6667 * lily/lily-guile.cc (mangle_cxx_identifier): new
6668 function. Class_bla::foo_bar_[px] ->
6669 ly:class-bla::foo-bar[?!]. Changes throughout
6671 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6673 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6675 * lily/beam.cc (calc_direction): take dir from visible stem in
6678 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6680 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6681 Fix -1, >=0 boundary checks for unsigned vsize.
6683 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6684 loop for unsigned vsize.
6686 * configure.in (--enable-std-vector): New option.
6687 (--enable-std-string): On by default.
6689 * flower/include/std-vector.hh: New file. Enable switch to
6690 std::vector, update client code.
6692 2006-01-30 Graham Percival <gpermus@gmail.com>
6694 * scm/document-translation.scm: clarify "this context is also
6695 known as". Thanks, Werner!
6697 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6699 * Documentation/user/invoking.itely: small fix from Don.
6701 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6703 * scm/lily.scm (define-scheme-options): rename option
6704 preview-include-book-title to book-title-preview
6705 (define-scheme-options): move force-eps-font-include (from paper
6706 block) to eps-font-include -d option.
6708 * VERSION (PATCH_LEVEL): release 2.7.30
6710 * input/bach-schenker.ly (staffPiano): new file.
6712 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6714 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6717 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6719 * ps/lilyponddefs.ps: remove start-system, stop-system,
6720 start-page fluff. This saves putting { } code on the stack, fixing
6721 stack overflows when including EPS files.
6723 2006-01-29 Graham Percival <gpermus@gmail.com>
6725 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6727 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6729 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6731 2006-01-28 Graham Percival <gpermus@gmail.com>
6733 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6735 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6737 * input/mutopia/claop.py: Update.
6739 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6741 * input/regression/completion-heads.ly (texidoc): fix.
6743 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6745 * lily/tie-formatting-problem.cc
6746 (set_ties_config_standard_directions): use abs iso fabs for ints.
6748 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6750 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6751 little less than noteheight, to prevent overlaps in chords.
6753 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6754 head, and fudge stem-attachment.
6756 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6758 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6760 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6762 * lily/main.cc (main): Debugging aid: catch exceptions.
6764 * flower/std-string.cc (to_string): Robustification. Fixes midi
6765 output with std::string.
6767 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6769 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6771 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6773 * Fix -DSTRING_UTILS_INLINED.
6775 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6777 * VERSION (PATCH_LEVEL): release 2.7.29
6779 * lily/relocate.cc (setup_paths): mingw uses std string too.
6781 * lily/*.cc: various fixes for substr(ARG).
6783 * lily/sustain-pedal.cc (print):
6785 * flower/file-name.cc (slashify): use std strings.
6787 * flower/string-convert.cc: remove publib.h
6789 * scm/define-markup-commands.scm (verbatim-file): new markup
6790 command \verbatim-file
6792 * Documentation/topdocs/NEWS.tely: fixup URLs
6794 * input/regression/alignment-vertical-manual-setting.ly (Module):
6797 * lily/align-interface.cc (align_elements_to_extents): overwrite
6798 translations with numbers in alignment-offsets from left bound
6800 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6801 (page-translate-systems): new function: take into account Y-offset.
6803 * Documentation/topdocs/NEWS.tely (Top): document new features.
6805 * input/regression/page-layout-manual-position.ly (Module): new
6808 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6810 * flower/file-path.cc (path::parse_path): Oops.
6812 * Finish std::string interface. For now, use std:: marker
6813 throughout for easy s/r.
6815 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6817 * Documentation/user/putting.itely (Score is a single musical
6819 (Score is a single musical expression): more typos.
6821 * scm/page.scm (annotate-space-left): thinko.
6822 (annotate-page): more thinkos.
6824 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6826 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6827 for different \score blocks separately.
6828 (post-process-pages): put write-page-layout into paper block.
6830 * lily/output-def.cc (get_parser): new file.
6832 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6835 * lily/include/output-def.hh (class Output_def): add parser_ member.
6837 * input/regression/page-layout-twopass.ly (Module): new file.
6839 * scm/lily.scm: remove cpp hack.
6841 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6843 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6845 * GNUmakefile.in (c-clean): New target.
6847 * flower/include/std-string.hh: String/std::string compatibility:
6848 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6851 * flower/rational.cc:
6852 * flower/include/rational.hh:
6855 * flower/include/offset.hh:
6857 * flower/interval.cc:
6858 * flower/include/interval.hh:
6860 * flower/string-convert.cc:
6861 * flower/include/string-convert.hh: Use std::string [interface].
6864 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6866 * Documentation/index.html.in: clean up.
6868 2006-01-25 Graham Percival <gpermus@gmail.com>
6870 * Documentation/user/putting.itely: another new untested doc section.
6872 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6874 * scm/layout-page-layout.scm (write-page-breaks): write
6875 \spacingTweaks #ALIST. Handle grace timing.
6877 * scm/: more imports.
6879 * scm/page.scm (make-page): add footer/header.
6880 (annotate-space-left): revise: only take page argument.
6881 (layout->page-init): new function.
6883 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6884 version of the system/spacing/linebreak hack writing to the output
6886 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6889 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6892 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6894 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6896 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6898 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6899 handling to page.scm
6901 * lily/prob-scheme.cc (LY_DEFINE): new file.
6902 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6904 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6907 * lily/music.cc (derived_mark): derive Music from Prob.
6909 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6911 * lily/prob.cc (Module): Implement Prob (Property Object), object
6912 with shared and r/w property alists.
6914 * lily/include/prob.hh (Module): new file. Declare Prob.
6916 * flower/string.cc: remove is_empty().
6918 * flower/include/string.hh (class String): remove String:: qualifier.
6920 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6921 substitute appropriate functions.
6923 * flower/include/string.hh (class String): remove to_str0 and
6924 is_empty(). S&R everywhere.
6926 2006-01-23 Graham Percival <gpermus@gmail.com>
6928 * Documentation/user/basic-notation.itely: add hairpin
6929 after-linebreak tweak to commonprop.
6931 * Documentation/user/putting.itely: added two new sections.
6933 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6935 * flower/international.cc:
6936 * flower/include/international.hh:
6938 * flower/getopt-long.cc:
6939 * flower/include/getopt-long.hh: Use std::string [interface].
6942 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6944 * stepmake/stepmake/executable-rules.make: Add dependency on
6947 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6949 * flower/file-path.cc:
6950 * flower/include/file-path.hh: Use std::string [interface].
6953 * flower/direction.cc:
6954 * flower/axis.cc: Unused. Remove.
6956 * configure.in (--enable-std-string): New option.
6958 * flower/std-string.cc:
6959 * flower/include/std-string.hh: New file.
6961 * flower/file-name.cc[STD_STRING]:
6962 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6964 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6966 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6968 * scm/define-markup-commands.scm (with-dimensions):
6969 with-dimensions markup command.
6971 * input/test/font-table.ly: use it.
6973 * lily/open-type-font.cc (glyph_list): new function.
6975 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6977 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6979 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6981 * ly/music-functions-init.ly (parallelMusic): new music function
6982 for parallel music entry.
6984 * scm/define-music-properties.scm (all-music-properties): new
6985 'void music property
6987 * scm/music-functions.scm (ly:music-message): make public, to be
6988 used in music function definitions
6990 * scm/lily-library.scm (collect-music-for-book): discard music
6991 when the 'void property is set.
6993 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6995 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6997 * mf/GNUmakefile: idem.
6999 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
7001 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
7003 * Documentation/user/notation-appendices.itely (The Feta font):
7006 * input/test/font-table.ly: new file. Generate font table within lily.
7008 * Documentation/user/notation-appendices.itely (The Feta font):
7009 use new font-table.ly file.
7011 * stepmake/stepmake/install-out-targets.make
7012 (local-install-outfiles): only create directory if
7013 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
7015 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7017 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
7019 * VERSION (PACKAGE_NAME): release 2.7.28
7021 * scm/framework-ps.scm (write-preamble): use it to pick exactly
7022 the right font from a Mac dfont.
7023 (write-preamble): don't forget directory, only look at files.
7025 This fixes problems with TTF files in dfonts that don't match
7026 their PostScript names.
7028 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
7029 PS name from TTF font.
7031 * input/regression/tie-manual.ly: document new feature.
7033 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
7035 * VERSION (MY_PATCH_LEVEL): bump to .28
7037 * Documentation/user/basic-notation.itely (Ties): add tie examples
7040 * lily/tie-formatting-problem.cc (score_ties_configuration):
7041 symmetry penalties for outer ties.
7043 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7045 * lily/tie-formatting-problem.cc (generate_configuration)
7046 (set_manual_tie_configuration): skip non-pair manual
7047 tie-configuration, so you can set individual ties as
7049 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
7051 * input/regression/tie-chord.ly: use generateTiePattern to
7054 * lily/tie-formatting-problem.cc (peak_around): new function.
7055 (score_configuration): use sliding criterion for staff line collisions.
7056 (score_configuration): idem for dot collisions.
7057 (generate_configuration): use separate stem_gap for gap to stem.
7059 * lily/include/tie-formatting-problem.hh (struct Tie_details):
7060 separate penalty factors for x and y distance.
7061 (struct Tie_details): separate penalties for tip and center line collisions.
7063 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7065 * lily/tie-formatting-problem.cc (generate_configuration): make
7066 large ties avoid stafflines in the horizontal section.
7067 (score_configuration): use softcoded penalties
7068 (score_aptitude): idem.
7070 * lily/tie-helper.cc (from_grob): softcode tie details
7072 * lily/staff-symbol-referencer.cc (on_staff_line): new function
7074 * lily/staff-symbol-referencer.cc (on_line): rename from
7077 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7079 * ly/music-functions-init.ly: remove duplicate tag.
7081 * lily/include/*.hh: GCC 4.1 fixes.
7083 006-01-16 Erlend Aasland <erlenda@gmail.com>
7085 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
7087 * scm/define-music-types.scm: fix bug in desc. string
7088 for OverrideProperty
7090 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
7092 * scripts/lilypond-book.py: bugfix
7094 * scm/define-music-types.scm: fix typos.
7096 2006-01-14 Graham Percival <gpermus@gmail.com>
7098 * Documentation/user/ basic-notation.itely, global.itely,
7099 advanced-notation.itely, instrument-notation.itely: small
7100 additions (bugs and commonly tweaked properties).
7102 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7104 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
7105 detection of mingw build.
7106 (MINGW_BUILD): opps.
7108 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
7110 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
7113 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7115 * scm/music-functions.scm (skip->rest): add skip->rest
7117 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7119 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
7122 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
7123 config dirs. Aids debugging.
7124 (display_config): also display config files.
7126 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7128 * VERSION: release 2.7.27
7130 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
7131 for determining bar size.
7133 * lily/staff-symbol.cc (print): place lines at distance line-positions
7135 * scm/define-grob-properties.scm (all-user-grob-properties): add
7138 * lily/staff-symbol.cc (height): new function.
7140 * input/regression/staff-line-positions.ly: new file.
7142 2006-01-06 Graham Percival <gpermus@gmail.com>
7144 * input/test/add-staccato.ly: remove reference to old file.
7146 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7148 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
7149 lilypond binary too.
7151 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7153 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
7155 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
7157 * scripts/midi2ly.py: Bugfix: Declare datadir.
7159 * make/ly-rules.make:
7160 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
7161 that seems to be gone). Fixes make web.
7163 * The grand 2005-2006 replace.
7165 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
7167 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7169 * make/lilypond-vars.make: set LILYPOND_BINARY variable
7170 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
7171 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
7172 like -dgs-font-load.
7174 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
7175 remove absolute path to lilypond binary.
7177 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
7179 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
7181 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7183 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
7185 * mf/GNUmakefile: remove broken dvips map symlink.
7187 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
7190 * configure.in: Cosmetic fixes.
7192 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
7194 * Documentation/user/music-glossary.tely (Pitch names): Added
7195 Spanish pitch names and durations, thanks to Ernesto Gancedo
7197 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7199 * scm/lily.scm (define-scheme-options): use quasi-quote for option
7200 init. Fixes verbose printing of .scm files.
7202 * stepmake/aclocal.m4: add spaces before - options.
7204 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
7206 * lily/relocate.cc (setup_paths): Bugfix: do not store result
7207 of path search in local block variable.
7209 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7211 * configure.in (NCSB_DIR): --enable-ncsb-dir
7212 (LINK_GXX_STATICALLY): denko.
7214 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
7216 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
7217 use locate to find c059033l.pfb.
7219 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
7221 * lily/tie-formatting-problem.cc
7222 (problem::generate_base_chord_configuration): Use my_round (was
7225 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
7226 do not invoke mbrtowc.
7228 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
7230 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7232 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
7234 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
7236 * Documentation/user/invoking.itely (svg): revise.
7238 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7240 * lily/lexer.ll: use sourcefilename iso. renameinput.
7242 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7244 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
7245 <PostScriptName>.ttf instead of c059XXXttf.
7247 * lily/program-option.cc (LY_DEFINE): special support for
7248 --verbose, so it works before option init too.
7250 * mf/GNUmakefile (local-install): oops.
7252 * lily/lyric-hyphen.cc (print): oops.
7254 * buildscripts/pfx2ttf.fontforge: new file.
7256 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
7257 ($(outdir)/%.ttf): new rule.
7259 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
7262 * lily/lyric-hyphen.cc (print): multiply hyphen height by
7265 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7267 * VERSION: release 2.7.26
7269 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
7271 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7273 * lily/font-config.cc (init_fontconfig): verbosity.
7275 * THANKS: add Muziekacademie Lede.
7277 * scripts/musicxml2ly.py (print_voice_definitions): new function
7278 (print_score_setup): new function
7279 (convert): read part definition to output staves properly.
7281 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
7284 * python/musicexp.py (Output_printer.__init__): use _ in data
7286 (Output_printer.unformatted_output): new function: no formatting,
7288 (Duration.get_length): remove isinstance() checks for
7289 Output_printer everywhere.
7291 * input/regression/lyrics-bar.ly (texidoc): add
7292 Separating_line_group_engraver.
7294 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
7296 * lily/relocate.cc (framework_relocation): New function,
7297 factored from set_relocation ().
7298 (prefix_relocation): Rename from set_relocation ().
7299 (setup_paths): Use it.
7301 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7303 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
7304 numbers. Patch by Erlend Aasland.
7306 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7308 * lily/font-config.cc (init_fontconfig): print warning if cache
7309 file is not existant.
7311 * lily/main.cc: don't use #ifdef but #if
7313 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7315 * lily/grob-property.cc (internal_set_property): don't abort on
7316 calculation-in-progress.
7318 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
7320 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
7321 connect-to-neighbor property not connect-to-other
7323 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
7324 (LY_DEFINE): oops. don't forget protection.
7326 * flower/parse-afm.cc (Module): strip AFM handling completely.
7328 * lily/stencil-expression.cc: idem.
7330 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
7332 * lily/function-documentation.cc (ly_add_function_documentation):
7333 use static member iso. Protected_scm
7335 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
7337 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
7339 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
7341 * lily/relocate.cc (set_env_dir): New function.
7342 (set_relocation): Use it to fix setting PANGO_PREFIX.
7344 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7346 * input/regression/stem-direction-context.ly: remove rest.
7348 * lily/melody-engraver.cc (process_music): restart for bar lines.
7349 (acknowledge_slur): restart for slurs.
7351 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
7353 * Documentation/user/invoking.itely: describe how to view SVG
7354 output using Inkscape which replace embedded fonts with OTF fonts.
7356 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7358 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
7360 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
7362 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
7365 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7367 * VERSION (PACKAGE_NAME): release 2.7.25
7369 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7371 * input/regression/stem-direction-context.ly: new file.
7373 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
7375 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
7378 * ly/engraver-init.ly: add Melody_engraver
7380 * lily/beam.cc (calc_direction): use default-direction
7381 iso. get_default_direction()
7383 * scm/define-grob-properties.scm (all-user-grob-properties): add
7384 default-direction property.
7386 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
7388 * lily/stem.cc (calc_default_direction): remove
7389 Stem::get_default_direction, use default-direction with callback
7392 * lily/melody-spanner.cc (calc_neutral_stem_direction):
7394 * lily/melody-engraver.cc: new file. Acknowledge stems for
7395 interpolated stem directions.
7397 * lily/melody-spanner.cc: new file. Interpolate stem directions.
7399 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
7401 * lily/slur-configuration.cc (fit_factor): more robust check for
7402 point in curve X-extent.
7404 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
7405 (outside_slur_callback): check for 'outside avoidance.
7407 * lily/slur-configuration.cc (score_extra_encompass): don't use
7408 bound->column() == avoid->column() for checking extents, as this
7409 doesn't work for accidentals.
7411 * lily/slur-engraver.cc (acknowledge_extra_object): remove
7412 DynamicText hardcoding.
7414 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
7415 crash if bound stem is NULL
7417 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
7420 2005-12-22 Graham Percival <gpermus@gmail.com>
7422 * scm/define-markup-commands.scm: typo. @code{\raise}
7425 * darwin.patch: now used again, includes a
7426 required patch from fink.
7428 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
7430 * po/TODO: mention gtranslator along with kbabel.
7431 * po/fi.po: update translations.
7433 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7435 * lily/relocate.cc (setup_paths): Bugfix.
7437 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7439 * lily/slur-configuration.cc (score_extra_encompass): don't use
7440 "avoid" choice for avoid-slur.
7442 * stepmake/bin/install.py (dest): don't create existing dir.
7444 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7446 * stepmake/bin/install.py: Remove file before copying.
7449 * stepmake/aclocal.m4: Do not substitute INSTALL.
7451 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7453 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7454 depend on link-tree.
7456 * lily/relocate.cc (setup_paths): only check path for non-absolute
7457 dir without directory part.
7459 * flower/file-name.cc (is_absolute): new method.
7460 (is_absolute): check root_ too.
7462 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7464 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7465 relocation code. Oops, don't comment out too much.
7467 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7470 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7473 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7475 * .cvsignore: Add install-sh.
7477 * autogen.sh (srcdir): Typo.
7479 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7481 * autogen.sh (srcdir): urg. Touch install-sh.
7483 * stepmake/bin/install-sh (Module): remove.
7485 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7487 * lily/include/relocate.hh: new file.
7489 * lily/relocate.cc: new file. Contain relocation logic.
7491 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7492 (main): read LILYPOND_VERBOSE as the first thing.
7494 * stepmake/aclocal.m4: remove INSTALL variable.
7496 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7497 separate target for making font symlinks.
7498 (documentation-dir): use $(if $(findstring )) for switching off
7501 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7502 something if DOCUMENTATION is no.
7504 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7506 * VERSION: release 2.7.24
7508 * lily/script-column-engraver.cc (stop_translation_timestep):
7509 delay adding to script-column.
7511 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7513 * python/convertrules.py (conv): rule for number-visibility
7515 * lily/slur-configuration.cc (score_extra_encompass): different
7516 distance measure for avoid and inside avoidance.
7517 (score_extra_encompass): use 1/(distance+eps) as penalty.
7519 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7520 encompass objects for generating slur curves.
7522 * lily/slur.cc: use details iso. slur-details property.
7524 * input/regression/slur-tuplet.ly: new file.
7526 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7528 * flower/include/offset.hh (class Offset): new operator /=
7530 * lily/tuplet-number.cc (print): new file, new interface.
7532 * scm/define-grob-properties.scm (all-user-grob-properties):
7533 remove number-visibility property.
7535 * lily/tuplet-bracket.cc (calc_control_points): new function
7536 (calc_connect_to_neighbors): new function.
7537 (print): remove text handling for tuplet numberdef.
7539 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7542 * lily/lily-guile.cc (robust_scm2booldrul): new function
7544 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7546 * lily/tuplet-bracket.cc (calc_position_and_height): use
7547 staff-padding to control whether tuplet brackets are over staves.
7549 * lily/grob.cc (suicide): clear dim_caches_.
7551 * lily/dimension-cache.cc (clear): new function.
7553 * lily/grob.cc (extent): swap order of min-extent and extent
7554 calculations. This fixes hara kiri staves.
7556 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7558 * lily/main.cc: Nitpick: relocation is not based on path, but on
7559 directory (location).
7561 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7563 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7565 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7567 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7569 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7571 * stepmake/stepmake/generic-vars.make (Module): idem.
7573 * stepmake/stepmake/executable-targets.make (default): use it.
7575 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7577 * make/GNUmakefile: don't install make rules.
7579 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7581 (prepend_env_path): more verbosity.
7583 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7585 * GNUmakefile.in: add dir argument for find command.
7587 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7588 fixes weird line numbers for point & click.
7590 * lily/source-file.cc (get_counts): init line/column/char counts.
7592 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7594 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7596 2005-12-16 Graham Percival <gpermus@gmail.com>
7598 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7599 minor fixes from Fredric. Thanks!
7601 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7603 * ly/music-functions-init.ly: add \bar and \clef music function
7605 * lily/lily-lexer.cc: idem.
7607 * lily/parser.yy (FIXME): remove BAR and CLEF.
7609 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7611 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7613 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7614 function arguments too
7616 * lily/main.cc (set_relocation): new function.
7618 * scripts/musicxml2ly.py (convert): add \version
7620 * lily/tie.cc: remove get_default_attachments()
7622 * VERSION (PACKAGE_NAME): release 2.7.23
7624 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7625 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7627 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7629 * lily/tie-formatting-problem.cc (score_ties): new function
7630 (get_variations): new function. Try flipping dirs for collisions.
7631 (generate_optimal_chord_configuration): new function. 1-opt search
7632 for better configuration.
7634 * lily/tie-configuration.cc: new file.
7636 * lily/tie.cc: junk Tie::get_configuration()
7638 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7639 (score_ties_configuration): new function.
7640 (generate_ties_configuration): new function.
7641 (generate_base_chord_configuration): new function.
7642 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7643 (set_manual_tie_configuration): Move body from tie-column-format.cc
7645 * input/regression/tie-dot.ly: new file.
7647 * lily/tie-formatting-problem.cc (score_configuration): score
7650 * lily/tie-helper.cc (get_transformed_bezier): new function
7652 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7654 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7655 -undefined suppress iso. -framework Python
7657 * scm/define-grobs.scm (all-grob-descriptions): set
7658 springs-and-rods (thanks Joe Neeman!)
7660 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7662 * input/no-notation/display-lily-tests.ly (test):
7663 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7664 changed from \tag #'(a b) to \tag #'a \tag #'b
7666 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7668 * Documentation/topdocs/NEWS.tely: strip out-www.
7670 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7672 * config.make.in (AR): add AR and RANLIB
7674 * flower/libc-extension.cc: include cassert
7676 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7679 2005-12-11 Graham Percival <gpermus@gmail.com>
7681 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7683 * stepmake/stepmake/python-modules-vars.make: define
7684 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7686 * THANKS: added Johannes Schindelin.
7688 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7690 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7692 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7693 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7695 * lily/parser.yy: reorganize file layout.
7697 * ly/music-functions-init.ly: add tweak music function.
7699 * lily/grob-info.cc (ultimate_music_cause): new function:
7700 recursively lookup causes.
7702 * lily/parser.yy (chord_body_element): allow music functions for
7703 post-events, allow music functions for chord elements.
7705 * lily/font-config-scheme.cc (display_fontset): add cast.
7707 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7708 #'(a b) -> \tag #'a \tag #'b rule.
7710 * python/musicexp.py (Output_printer.dump_version): new function
7712 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7714 * lily/parser.yy (FIXME): remove \tag
7715 (FIXME): remove tag_music() function.
7717 * lily/lily-lexer.cc: remove \tag
7719 * ly/music-functions-init.ly: define music-function "tag"
7721 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7723 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7725 * VERSION (PATCH_LEVEL): release 2.7.22
7727 * input/regression/lyric-hyphen-retain.ly: renew.
7729 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7732 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7733 iso. minimum-length property for rods.
7735 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7736 LyricSpace item to keep lyrics spaced apart.
7738 * ly/engraver-init.ly: remove Separating_line_group_engraver
7740 * Documentation/user/music-glossary.tely: do setfilename before
7743 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7745 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7746 See xref documentation, for example.
7748 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7750 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7751 pending_skip iso. ly_voice[-1]
7752 (main): add if __main__ for debugging.
7754 * python/musicxml.py (Accidental.__init__): new class.
7756 * scripts/musicxml2ly.py (progress): new function
7757 (musicxml_key_to_lily): don't barf on modeless keys.
7758 (create_skip_music): new function.
7759 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7760 (musicxml_note_to_lily_main_event): new function.
7762 * python/musicexp.py (Music.__init__): add comment field.
7763 (NestedMusic.append): new routine.
7764 (SequentialMusic.print_ly): print comment.
7765 (ArpeggioEvent.ly_expression): new class
7766 (BeamEvent.ly_expression): new class
7767 (NoteEvent.__init__): support for cautionary/forced accs.
7769 * lily/lookup.cc (slur): normal order for array loop.
7771 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7774 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7777 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7779 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7781 * scripts/lilypond-book.py: Introduce option
7782 --preserve-line-breaks, for usage with srcltx
7784 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7786 * scm/output-lib.scm (print-circled-text-callback): draw circle
7787 around text using make-circle-markup.
7789 * Documentation/user/*: strip out-www from file names.
7791 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7793 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7794 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7796 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7798 * Documentation/user/GNUmakefile: idem.
7800 * Documentation/user/macros.itexi: strip out-www
7802 * python/rational.py: python 2.3 compat.
7804 * VERSION (PATCH_LEVEL): release 2.7.21
7806 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7807 option formatting, lilypond style.
7809 * python/musicexp.py: grab from Ikebana: a library for composing
7810 ly music expressions.
7811 (Output_printer): class for advanced .ly printing.
7814 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7815 convert to pythonesque structure.
7817 * python/rational.py: PD rational number class.
7819 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7821 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7823 * lily/part-combine-iterator.cc: Minor bugfix
7825 * THANKS: Update bughunters
7827 2005-12-02 Werner Lemberg <wl@gnu.org>
7829 * mf/README: Document process for proper mf2pt1 conversion.
7831 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7834 * mf/feta-harmonica.mf: Removed. Unused.
7836 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7838 * scripts/lilypond-book.py (do_file): fix thinkos.
7840 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7842 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7843 ($(outdir)/parser.cc):
7844 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7846 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7848 * ly/titling-init.ly (tagline): it should be a space between
7849 "Music engraving by LilyPond" and the version number.
7851 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7853 * VERSION (PACKAGE_NAME): release 2.7.20
7855 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7857 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7859 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7861 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7863 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7865 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7867 * kpath-guile/: remove directory
7869 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7870 file. Encapsulate kpathsea using commandline tools.
7872 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7875 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7877 * Documentation/user/advanced-notation.itely (Setting automatic
7878 beam behavior): Correct a few typos. Thanks to David Bobroff.
7880 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7881 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7883 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7885 * scripts/*.py: gmane address for bugs.
7887 2005-11-28 Pal Benko <benkop@freestart.hu>
7889 * make/ly-rules.make: add -f switch to mv
7891 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7893 * lily/bar-line.cc: interpret it
7895 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7897 * configure.in (--disable-documentation): New switch.
7899 * GNUmakefile.in: Use it.
7901 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7903 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7905 * scripts/lilypond-book.py (do_file): search chunks for
7908 * GNUmakefile.in: add copy step in between so we can lose the
7909 out-www directories.
7911 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7913 * lily/pango-font.cc (pango_item_string_stencil): put
7914 geometry.width into glyph-string too.
7916 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7918 * scm/define-music-display-methods.scm (RevertProperty):
7919 (OverrideProperty): Use grob-property-path property, a list of
7920 symbols, instead of grob-property, which used to be a single
7922 (BassFigureEvent): a figure can be a plain number, not necessarily a
7925 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7927 * VERSION: release 2.7.19
7929 * lily/figured-bass-engraver.cc (process_music): check
7930 figuredBassCenterContinuations first.
7932 * scm/translation-functions.scm (format-bass-figure): make double
7935 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7938 * lily/system-start-delimiter-engraver.cc: move from
7939 Nested_system_start_delimiter_engraver, rename
7940 Nested_system_start_delimiter_engraver ->
7941 System_start_delimiter_engraver.
7943 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7944 bracket type from hierarchy.
7946 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7948 * lily/rest.cc (y_offset_callback): read staff-position.
7950 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7951 mark after-line-breaking-callback as internal.
7953 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7955 2005-11-25 Werner Lemberg <wl@gnu.org>
7957 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7959 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7961 * stepmake/bin/add-html-footer.py (do_file): add google
7963 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7964 staff if first_start_ is true.
7966 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7968 * scripts/midi2ly.py (split_track): add __repr__ members.
7969 (track_first_item): only return Item if not None. This fixes a
7970 problem when dumping a track that starts with an empty channel.
7972 * python/midi.c: doc module.
7974 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7976 * Documentation/user/global.itely (Creating MIDI files): Fix
7977 compilation problem.
7979 2005-11-22 Graham Percival <gpermus@gmail.com>
7981 * Documentation/user/basic-notation.itely: clarify dynamic
7984 * Documentation/user/advanced-notation.itely: add unicode
7985 escape control example, whatever that is. :)
7987 * Documentation/user/global.itely: added "removing dynamics
7990 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7992 * VERSION (PATCH_LEVEL): release 2.7.18
7994 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7995 System_start_delimiter_engraver by
7996 Nested_system_start_delimiter_engraver.
7998 * lily/nested-system-start-delimiter-engraver.cc (struct
7999 Bracket_nesting_node): new class.
8000 (struct Bracket_nesting_group): new class
8001 (struct Bracket_nesting_staff): new class.
8002 (process_music): create hierarchy of grobs. This allows separate
8003 tuning of different SSDs.
8005 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
8006 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
8008 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8010 * lily/side-position-interface.cc (aligned_side): multiply
8013 * lily/script-engraver.cc (make_script_from_event): allow setting
8016 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
8018 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
8020 * scm/define-grobs.scm (all-grob-descriptions): new grob
8021 NestedSystemStartDelimiter.
8023 * input/regression/system-start-heavy-bar.ly: new file.
8025 * lily/nested-system-start-delimiter-engraver.cc: new file.
8027 * lily/nested-system-start-delimiter.cc: new file.
8029 * input/regression/system-start-nesting.ly: new file.
8031 * scm/define-grobs.scm (all-grob-descriptions): use X side
8032 positioning for positioning braces for nested contexts.
8034 * lily/system-start-delimiter.cc (print): don't divide extent by
8036 (print): use style iso. glyph.
8037 (staff_bracket): translate glyph inside routine already.
8039 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
8041 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
8044 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8046 * scm/define-context-properties.scm
8047 (all-user-translation-properties): rename figuredBassFormatter
8048 from newFiguredBassFormatter.
8050 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
8052 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
8054 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
8056 * lily/beam.cc (calc_beaming): new function.
8057 (calc_shorten): new function.
8059 * THANKS: add Edward Neeman.
8061 * input/regression/accidental-clef-change.ly: new file.
8063 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
8065 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
8067 * lily/clef-engraver.cc (inspect_clef_properties): reset
8068 localKeySignature for clef changes.
8070 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
8072 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
8073 add dummy definition that works in Linux and add information in
8074 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
8076 * Documentation/user/changing-defaults.itely (Modifying context
8077 plug-ins): Add index for \with.
8079 * Documentation/user/music-glossary.tely (dal segno): Updated
8080 example to version >=2.6.
8082 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
8084 * Documentation/user/instrument-notation.itely (Printing chord
8085 names): Reorder \chordmode and \repeat in one example.
8087 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8089 * VERSION: release 2.7.17
8091 * Documentation/topdocs/NEWS.tely (Top): add note about
8094 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
8095 new function. Search region of 3 positions for best tie.
8096 (score_configuration): new function.
8097 (score_aptitude): new function.
8098 (generate_configuration): new function.
8099 (get_configuration): new function.
8100 (Tie_formatting_problem): new function
8102 * input/regression/page-top-space.ly: a6 for page-top-space demo.
8104 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
8106 * THANKS: add Eduardo Vieira & Ralph Little
8108 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
8111 * lily/include/tie-formatting-problem.hh (class
8112 Tie_formatting_problem): add Tie_details to
8113 Tie_formatting_problem. Update calling conventions.
8115 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
8118 * Documentation/user/lilypond.tely: remove musedata2ly entry.
8120 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
8122 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
8123 scm/define-context-properties.scm: Maintenance bugfix: make
8124 ligature brackets work again by removing obsolete ligature
8125 primitive callback push/pop.
8127 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
8128 not call Tuplet_bracket::calc_direction. Removed obsolete gap
8131 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
8133 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
8134 used and do not call it a path.
8135 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
8137 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8139 * lily/include/tie-formatting-problem.hh (class
8140 Tie_formatting_problem): new file.
8142 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
8144 * Documentation/misc/ChangeLog-2.3: new file.
8146 * lily/audio-staff.cc (output): degarianize.
8148 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
8150 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
8151 Unset PYTHONOPTIMIZE. Fixes install if set.
8153 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8155 * python/convertrules.py (conv): add warning about drums.
8157 * make/stepmake.make: include toplevel-version.make after config.make.
8159 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
8160 also allow python2.4
8162 * config.make.in (configure-srcdir): remove GXX GCC vars.
8164 * stepmake/aclocal.m4: don't do non-srcdir build with
8165 symlinks. Use inclusion, so the src directory name can be changed.
8167 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
8169 * make/mutopia-vars.make:
8170 * make/ly-vars.make: Use src-wildcard iso wildcard for source
8173 2005-11-13 Werner Lemberg <wl@gnu.org>
8175 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
8176 but the affected path. This ensures that the (overlapping) outlines
8177 have the same direction, which is a necessary prerequisite for
8178 FontForge's algorithm to remove overlaps.
8181 * mf/feta-haak.mf: Formatting.
8182 (draw_bracket): Slightly modify outline to avoid an unnecessary
8184 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
8185 them from the affected paths.
8187 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8189 * mf/README: remove xpm / accordion notes.
8191 * lily/tie-column-format.cc (set_chord_outline): add dots into
8192 skyline extents. This fixes tie formatting if the left head has dots.
8194 * lily/tie.cc (get_configuration): only shift tie by a whole staff
8195 space inside the staff.
8196 (get_configuration): shift another position if necessary in case
8199 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8201 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
8202 buildscript-dir iso. $(depth)/buildscripts.
8204 * tex/GNUmakefile (local-uninstall): remove
8205 music-drawing-routines.ps juggling.
8207 * stepmake/stepmake/install-targets.make (local-install-files):
8208 prepend src-dir to install targets.
8210 * lily/system-start-delimiter-engraver.cc
8211 (acknowledge_system_start_delimiter): use
8212 add_offset_callback(). This fixes translation of nested
8215 * lily/grob-closure.cc (add_offset_callback): only encaps in
8216 simple_closure if it's a procedure.
8218 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
8221 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
8222 remove-empty where pertinent.
8224 2005-11-12 Graham Percival <gpermus@gmail.com>
8226 * Documentation/user/instrument-notation.itely: added
8227 Cameron Horsburgh's multiple stanzas docs. Thanks!
8229 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8232 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
8233 make picture in builddir, not srcdir.
8235 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8237 * VERSION: release 2.7.16
8239 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
8242 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
8244 * Documentation/user/examples.itely (Piano templates): Minor
8245 modification to the Piano centered lyrics example.
8247 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8249 * scripts/lilypond-invoke-editor.scm (run-browser): look at
8252 * Documentation/user/point-and-click.itely: simplify p&c
8253 instruction: don't configure firefox. Put lilypond-invoke-editor
8254 in front of the browser.
8256 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
8257 (run-browser): new function.
8259 * lily/parser.yy (Lily_lexer): recognize Book
8261 * lily/book.cc (clone): new function
8263 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
8265 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
8267 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
8268 Maintenance bugfix: reduce number of font related warnings by
8269 updating naming conventions for glyph-name.
8271 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8273 * scm/define-grobs.scm (all-grob-descriptions): add
8274 rhythmic-grob-interface to TabNoteHead.
8276 * scm/layout-beam.scm (check-quant-callbacks): remove
8279 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
8281 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
8282 alignment of centered divisiones.
8284 * scm/scripts.scm (articulations): Maintenance bugfix:
8285 follow-into-staff -> quantize-position.
8287 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
8288 plica head in porrectus deminutus.
8290 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8292 * make/lilypond.fedora.spec.in (Group): add %clean section.
8294 * lily/tuplet-bracket.cc (print): change check: remove bracket if
8295 less then 1/5th of total length.
8296 (print): use gap too. Fixes tupletUp-single-bracket.ly
8298 * scm/music-functions.scm (glue-mm-rest-texts): also put other
8299 events into EventChord. This fixes textspanners on mm rests. Fixes
8302 * lily/side-position-interface.cc (get_axis): read side-axis
8303 (set_axis): set side-axis.
8305 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
8306 properties everywhere.
8308 * lily/spacing-spanner.cc (breakable_column_spacing): add
8309 average-spacing-wishes. Take maximum if not set.
8310 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
8312 * scm/define-grobs.scm (all-grob-descriptions): add
8313 average-spacing-wishes.
8315 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
8316 offset callbacks. This fixes alignment for Fingering objects.
8318 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
8319 space for key - timesig combination.
8321 * input/regression/script-stem-tremolo.ly (Module): new file.
8323 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
8326 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
8327 Fixes: c-tremolo-script.ly.
8329 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
8331 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
8333 * scm/define-grobs.scm (all-grob-descriptions): remove
8334 self-X-offset. Fixes alignment of octavate-8.
8336 * scripts/lilypond-book.py (datadir): look in
8337 LILYPONDPREFIX/share/lilypond/current/
8339 * GNUmakefile.in: symlink current to <VERSION>.
8341 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
8343 * lily/main.cc: eps listed as a backend.
8345 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8347 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
8349 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8351 * lily/include/score.hh (class Score): remove texts_ member.
8353 * lily/beam.cc (set_stem_lengths): force direction callback.
8354 (print): read quantized-positions, so we can force
8355 Beam::set_stem_lengths to occur.
8356 (rest_collision_callback): use common X parent.
8358 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
8360 * flower/file-path.cc (find): Bugfix: Return name of file found.
8362 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
8363 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
8364 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
8366 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8368 * flower/offset.cc: idem.
8370 * mf/*.mf: update email address.
8372 * lily/font-config-scheme.cc: new file.
8374 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
8376 * lily/*: cs.uu.nl -> xs4all.nl
8378 * VERSION (PATCH_LEVEL): release 2.7.15
8380 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
8383 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
8385 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8387 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
8389 * lily/staff-performer.cc (process_music): add audio
8390 elements. This makes MIDI instrument changes work once again.
8392 * lily/main.cc (LY_DEFINE): add gmane address.
8394 * lily/beam.cc: remove calc_positions()
8396 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
8397 original_ in private scope.
8398 (class Grob): drop pscore_ pointer, change to output_def pointer.
8399 (class Grob): cleanup class definition.
8401 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
8403 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
8405 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
8406 absolute. Better diagnostics.
8408 * GNUmakefile.in: Add bin/ to tree and populate with some links.
8409 This makes lilypond run from the build directory using argv0
8410 relocation (without any --prefix or LILYPONDPREFIX setting).
8412 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8414 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
8416 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
8417 with simple-closure.
8419 * lily/self-aligment-interface.cc (set_align_self): new function
8420 (set_center_parent): new function.
8422 * lily/side-position-interface.cc (set_axis): new function.
8424 * lily/new-fingering-engraver.cc (position_scripts): use drul for
8427 * scm/define-grob-properties.scm (all-user-grob-properties):
8428 remove [XY]-offset-callbacks add [YX]-offset
8430 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
8432 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8433 entry for time signatures after breathing signs. Bug report by
8436 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8438 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8439 not absolute, make it absolute using PATH.
8441 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8443 * python/midi.c (initmidi): Fix type for mingw.
8445 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8447 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8449 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8452 * stepmake/aclocal.m4: Support python cross compiling.
8454 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8457 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8459 * scm/output-lib.scm (chain-grob-member-functions): replace
8462 * lily/chained-callback.cc (Module): remove file.
8464 * lily/rest-collision.cc (force_shift_callback_rest): change to
8467 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8469 * lily/grob.cc (y_parent_positioning): remove axis argument from
8470 parent_positioning callbacks.
8471 (Grob): junk init code
8472 (get_offset): use generic property callbacks for
8473 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8474 (axis_parent_positioning): new function
8475 (axis_offset_symbol): new function
8476 (chain_offset_callback): new function
8477 (add_offset_callback): new function
8479 * lily/beam.cc (rest_collision_callback): change signature; this
8480 is now a chained callback.
8482 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8483 callback administration.
8485 * lily/simple-closure.cc: new file. Smob type that allows "grob
8488 (ly:make-simple-closure FUNC A B)
8490 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8493 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8496 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8498 * lily/rest.cc (polyphonic_offset_callback): remove.
8500 * lily/script-engraver.cc (try_music): remove bool* argument.
8502 * scm/script.scm (default-script-alist): set quantize-position
8505 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8507 * lily/side-position-interface.cc (aligned_side): move staff
8508 position quantization from
8509 Side_position_interface::quantised_position().
8510 (quantised_position): remove
8512 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8514 * input/regression/beam-quant-standard.ly: reindent, set
8515 debug-beam-quanting to #t.
8517 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8518 10000 if this is a "hard" concave beam.
8520 * lily/beam.cc (calc_least_squares_positions): change from
8521 calc_least_squares_dy
8522 (set_stem_lengths): this is now a chained callback.
8524 * lily/context-property.cc (execute_general_pushpop_property):
8525 bugfix override with procedure should have effect.
8527 * scm/define-grob-properties.scm (all-internal-grob-properties):
8528 remove position-callbacks.
8530 * scm/define-grobs.scm (all-grob-descriptions): use
8531 ly:make-callback-chain for positions property.
8533 * scm/layout-beam.scm (check-quant-callbacks): return list of
8536 * scm/lily.scm (type-p-name-alist): add callback-chain
8538 * lily/lily-guile.cc (type_check_assignment): type check failure
8539 is warning not message.
8541 * lily/grob-property.cc (try_callback): walk callback chain if
8544 * lily/chained-callback.cc: new file. new smob type.
8546 * lily/lily-guile.cc (procedure_arity): new function.
8548 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8550 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8552 2005-10-25 John Mandereau <john.mandereau@free.fr>
8554 * Documentation/user/instrument-notation.itely (Figured bass):
8555 describe new features
8557 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8559 * lily/beam.cc (calc_least_squares_dy): use property callback.
8561 * lily/beam-concave.cc (calc_concaveness): use property callback.
8563 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8565 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8569 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8571 * scm/layout-page-layout.scm (page-headfoot): annotate
8574 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8576 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8577 doesn't take y-space.
8579 * scm/paper.scm (paper-alist): fix A7 dimensions.
8581 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8583 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8584 src-wildcard, remove $(wildcard).
8586 * po/GNUmakefile (PO_FILES):
8587 * ps/GNUmakefile (PS_FILES):
8588 * tex/GNUmakefile (TEX_FILES):
8589 * cygwin/GNUmakefile (POSTINSTALLS):
8590 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8591 some wildcard calls.
8593 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8595 * THANKS: add Thomas Bushnell.
8597 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8599 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8600 (lilypond-main): Redirect to gui-main if 'gui is set.
8602 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8603 for alternative installations kludging s/share/lib/g
8606 * SConstruct (libdir_package_version): Define.
8608 * python/SConscript:
8609 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8612 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8614 * lily/main.cc: clarify --safe.
8616 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8618 * VERSION: release 2.7.14
8620 * Documentation/user/*.itely: remove minimumVerticalExtent.
8622 * scm/define-grobs.scm (all-grob-descriptions): remove
8623 RemoveEmptyVerticalGroup
8625 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8627 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8630 * python/convertrules.py (conv): add rules.
8632 * lily/grob.cc: remove is_empty()
8634 * lily/grob-property.cc: remove add_to_list_property().
8636 * scripts/convert-ly.py (datadir): add prefix switching hack to
8639 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8640 space-function tweak.
8642 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8644 * scm/define-grob-properties.scm (all-user-grob-properties):
8645 remove callback property.
8647 * lily/include/grob.hh (class Grob): remove property_callbacks_
8648 member. Properties of procedure type are assumed to be callbacks.
8650 * lily/ligature-engraver.cc (override_stencil_callback):
8651 rewrite. Use noteHeadLigaturePrimitive as source.
8653 * scm/define-grob-properties.scm (all-internal-grob-properties):
8654 remove ligature-primitive-callback
8656 * lily/include/dimension-cache.hh (class Dimension_cache): make
8657 class, with Grob as friend.
8659 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8660 has_extent_callback()
8662 * scm/translation-functions.scm (format-new-bass-figure): read
8663 figuredBassPlusDirection
8665 * scm/define-context-properties.scm
8666 (all-user-translation-properties): add figuredBassPlusDirection.
8668 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8670 * lily/align-interface.cc (set_ordered): new function.
8672 * lily/grob.cc (flush_extent_cache): rewrite.
8674 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8675 Interval pointer directly.
8677 * lily/main.cc (setup_paths): insert extra / .
8678 (setup_paths): junk cff entry.
8680 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8683 * lily/axis-group-engraver.cc (finalize): remove
8684 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8686 * lily/grob.cc (Grob): don't set extent from ctor.
8687 (extent): use property callbacks.
8689 * lily/axis-group-interface.cc: remove set_axes() function.
8691 * lily/grob-property.cc (del_property): new function.
8693 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8695 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8697 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8699 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8701 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8703 * mf/SConscript: Updates.
8705 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8707 * stepmake/stepmake/*:
8711 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8712 from any directory in build-dir. Cleanups.
8714 * make/srcdir.make.in: Remove.
8716 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8718 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8721 * lily/SConscript: Remove ttftools.
8723 * SConstruct: Resurrect.
8725 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8727 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8730 * lily/paper-book.cc (add_score_title): put Paper_score title into
8733 * scm/translation-functions.scm (format-new-bass-figure): also
8734 allow plus in combination with _
8736 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8738 * VERSION: 2.7.13 released.
8740 * lily/note-collision.cc (check_meshing_chords): don't wipe
8741 stencil, merely set transparent.
8743 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8744 (Top): document #'callbacks.
8745 (Top): document nested \override.
8747 * input/regression/figured-bass.ly: update for slash and pluses.
8749 * input/regression/figured-bass-continuation-forbid.ly (Module):
8752 * scm/translation-functions.scm (format-new-bass-figure): use
8753 slashed-digit if diminished is set.
8754 (format-new-bass-figure): add + if 'augmented is set.
8756 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8758 * input/test/piano-staff-distance.ly: remove file.
8760 * Documentation/user/advanced-notation.itely (Formatting cue
8761 notes): use length-fraction for making stems/beams smaller.
8763 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8766 * lily/new-figured-bass-engraver.cc: new property
8767 centerFiguredBassContinuations
8769 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8772 * lily/context-property.cc (execute_general_pushpop_property):
8775 * input/regression/override-nest.ly: new file.
8777 * python/convertrules.py (FatalConversionError.subber): conversion
8778 rule for #'callbacks
8780 * input/regression/override-nest.ly: new function.
8782 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8785 * lily/context-property.cc (lookup_nested_property): new function.
8786 (evict_from_alist): new function.
8787 (general_pushpop_property): new function.
8788 (execute_general_pushpop_property): rewrite. Support nested
8791 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8793 * lily/beam.cc: use length-fraction too.
8795 * scm/define-grob-properties.scm (all-user-grob-properties):
8796 remove property flag-width-function
8797 (all-user-grob-properties): remove space-function.
8799 * scm/layout-beam.scm: remove flag-width-function.
8801 * lily/beam.cc: remove flag-width-function
8803 * scm/layout-beam.scm: remove beam dir functions.
8805 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8807 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8808 for easier grace tweaks.
8810 * lily/beam.cc: remove dir-function.
8812 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8814 * lily/grob.cc: remove spacing-procedure.
8816 * lily/note-head.cc (calc_stem_attachment): new function.
8817 (internal_print): use callback to get glyph-name.
8819 * lily/grob-property.cc (get_interfaces): new function.
8821 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8823 * lily/stem.cc (calc_stem_end_position): new function.
8824 (calc_length): new function.
8825 document details for stem.
8826 remove Stem::get_direction()
8828 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8830 * lily/grob-property.cc (set_callback): new function.
8832 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8834 * lily/item-scheme.cc: new file.
8836 * lily/bar-line.cc (before_line_breaking): remove function.
8837 remove bar-size-procedure, break-glyph-function
8839 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8841 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8843 * lily/system-start-delimiter.cc (print): suicide from
8844 here. Remove after_line_breaking_callback.
8846 * lily/script-interface.cc (calc_direction): use callback for direction.
8848 * lily/side-position-interface.cc (aligned_side): don't use
8849 Side_position_interface::get_direction directly. Use callback.
8851 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8853 (get_print_stencil): rename from get_stencil: create stencil with
8854 transparency, color and cause.
8856 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8858 * python/convertrules.py (conv): insert temporary warning rule.
8860 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8862 * lily/grob-property.cc (try_callback): remove marker if applicable.
8864 * lily/grob.cc: elucidate doc about after/before-line-breaking
8866 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8868 * lily/stem.cc (height): idem.
8870 * lily/stem-tremolo.cc: idem.
8872 * lily/slur.cc (height): don't use get_uncached_stencil()
8874 * lily/rest.cc (y_offset_callback): use offset callback
8875 iso. after-line-breaking callback.
8877 * lily/grob.cc: change after/before-line-breaking-callback to
8878 after/before-line-breaking dummy properties.
8880 * lily/include/grob.hh: remove Grob_status.
8882 * scm/define-context-properties.scm
8883 (all-user-translation-properties): remove verticalAlignmentChildCallback
8885 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8886 (calc_direction): use callback
8887 (calc_positions): use callback.
8889 * lily/tie.cc (calc_direction): use callback. Only call parent
8890 positioning for more than one tie.
8892 * lily/tie-column.cc (calc_positioning_done): use callback
8894 * lily/slur-scoring.cc (calc_control_points): use callback
8896 * lily/slur.cc (calc_direction): use callback.
8898 * lily/note-collision.cc (force_shift_callback): remove.
8900 * lily/dot-column.cc (force_shift_callback): remove. Use
8901 other_axis_parent_positioning.
8903 * lily/grob.cc (other_axis_parent_positioning): new function.
8904 (same_axis_parent_positioning): new function
8906 * lily/align-interface.cc (alignment_callback): remove function.
8908 * lily/note-collision.cc (calc_positioning_done): use callback.
8910 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8911 (calc_direction): idem.
8912 remove print function.
8914 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8916 * lily/dot-column.cc (calc_positioning_done): use callback.
8918 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8920 * lily/beam.cc (calc_direction): use pseudo-property for beam
8922 (calc_positions): use callback
8924 * lily/align-interface.cc (calc_positioning_done): use
8925 callback. Fold fixed distance and normal alignment in one function.
8927 * lily/stem.cc (calc_stem_end_position): use callback.
8928 (calc_positioning_done): idem.
8929 (calc_direction): idem.
8930 (calc_stem_end_position): idem
8931 (calc_stem_info): idem.
8933 * lily/grob-property.cc (get_property_data): new function:
8934 (try_callback): new function.
8936 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8939 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8941 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8943 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8947 * lily/include/*.hh (Module): compile fixes.
8949 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8951 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8952 as an argument for char-syntax: use (char-syntax (or nil 0))
8953 instead of (char-syntax nil), thanks to Milan Zamazal.
8955 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8957 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8960 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8963 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8965 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8966 add class_name() method.
8968 * lily/music-scheme.cc: remove ly:music-name.
8970 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8972 * cygwin/postinstall-lilypond.sh: Remove cruft.
8974 * cygwin/postremove-lilypond.sh: Remove.
8976 * cygwin/GNUmakefile (default): Remove postremove rules.
8978 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8980 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8983 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8986 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8987 consider break index for broken spanner.
8989 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8990 characters from string before splitting.
8992 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8994 * scm/framework-ps.scm (output-preview-framework): use
8995 is-book-title to determine whether to chop off the booktitle.
8997 * lily/paper-book.cc (systems): init from book-title-properties
8998 (add_score_title): init score-title-properties.
9000 * ly/paper-defaults.ly: add {score,book}-title-properties.
9002 * scm/document-backend.scm (lookup-interface): error message if
9003 using unknown interface.
9005 * lily/volta-bracket.cc (after_line_breaking): new function. Set
9008 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
9010 (make_bracket): new function.
9012 * scm/lily.scm (define-scheme-options): add paper-size option.
9014 * ly/declarations-init.ly (laissezVibrer): get paper size from
9017 * scm/translation-functions.scm: use \fontsize for changing the
9020 * scm/define-grobs.scm (all-grob-descriptions): set
9021 between-length-limit to 1.0
9023 * lily/tie-helper.cc: add between_length_limit_ detail property.
9025 * mf/feta-bolletjes.mf: typos.
9027 * lily/note-head.cc (internal_print): don't shadow idx
9028 parameter. This fixes wrong attachment for do shape heads.
9030 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
9032 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
9034 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
9036 * scm/layout-slur.scm: rename from slur.scm
9038 * scm/layout-page-layout.scm: rename from page-layout.scm
9040 * scm/layout-beam.scm: rename from beam.scm
9042 * scm/define-grob-interfaces.scm (bass-figure-interface): add
9043 bass-figure-interface
9045 * lily/new-figured-bass-engraver.cc (process_music): add
9046 implicitBassFigures property.
9048 * scm/define-markup-commands.scm (pad-x): new markup.
9050 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
9051 minimumVerticalExtent on FiguredBass context.
9053 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
9054 case the continuation crosses a line break.
9056 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
9058 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
9059 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
9060 absolute file name bug.
9062 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
9064 * VERSION (PACKAGE_NAME): release 2.7.12
9066 * input/regression/figured-bass-continuation-center.ly: new file.
9068 * input/regression/beam-outside-beamlets.ly: new file.
9070 * lily/beam.cc (set_beaming): don't clip edges.
9071 (connect_beams): don't clip edges.
9073 * lily/beaming-info.cc (clip_edges): new function.
9075 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
9077 * Documentation/user/instrument-notation.itely (Figured bass):
9078 demonstrate extenders, update seealso links.
9080 * scm/titling.scm (marked-up-headfoot): change tagline
9081 handling. tagline = ##f will blank the tagline as well.
9083 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
9085 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
9087 * lily/new-figured-bass-engraver.cc (struct
9088 New_figured_bass_engraver): add new_music_found_ member.
9090 * lily/lilypond-version.cc (Lilypond_version): deal with
9091 incorrectly formatted version strings.
9093 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
9094 New_figured_bass_engraver by default.
9096 * lily/ttf.cc (print_trailer): only define glyph names when
9097 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
9099 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9101 * lily/horizontal-bracket.cc (make_bracket): new function.
9103 * scm/define-grobs.scm (all-grob-descriptions): new grobs
9104 NewBassFigure, BassFigureBracket, BassFigureContinuation,
9105 BassFigureLine, BassFigureAlignment
9107 * lily/new-figured-bass-engraver.cc (process_music): new file.
9109 * lily/figured-bass-continuation.cc: new file.
9111 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
9114 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
9116 * scripts/lilypond-book.py: Bug fix, put the quote around the
9117 actual score for LaTeX documents.
9119 * scm/define-grobs.scm (all-grob-descriptions): Change
9120 collapse-height of the SystemStartBracket grob to 5.0,
9121 so the bracket disappears for single stave score lines (similarly
9122 to SystemStartBraces).
9124 * Documentation/user/advanced-notation.itely (Polymetric
9125 notation): Clarify the use of compressMusic.
9127 * Documentation/user/basic-notation.itely (Grace notes): Clarify
9128 that the grace spacer note in other staves need the same duration
9129 and document the stroke-style property.
9131 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
9133 * Documentation/user/global.itely (Vertical spacing): document
9134 alignment-extra-space and fixed-alignment-extra-space.
9136 * Documentation/topdocs/NEWS.tely (Top): add entry.
9138 * input/regression/alignment-vertical-spacing.ly: new file.
9140 * python/convertrules.py (conv): add rule.
9142 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
9144 * lily/align-interface.cc (stretch_after_break): new
9145 function. Read fixed-alignment-extra-space property.
9146 (align_elements_to_extents): read alignment-extra-space property.
9148 * lily/lily-guile.cc (robust_scm2dir): new function.
9150 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
9151 (annotate-space-left): new function. Annotate space left on page.
9152 (annotate-y-interval): new function.
9153 (paper-system-annotate-last): new function. Annotate bottom-space.
9155 * mf/feta-beugel.mf (y):
9157 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
9159 * VERSION (PACKAGE_NAME): release 2.7.11
9161 * scm/lily-library.scm (interval-translate): new function
9162 (interval-center): new function.
9164 * scm/page-layout.scm (paper-system-annotate): new function. Add
9165 arrows for dimensions.
9167 * scm/stencil.scm (dimension-arrows): new function.
9169 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
9171 * input/regression/page-spacing.ly: add annotatespacing
9173 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
9174 (LY_DEFINE): new function ly:paper-system-set-property!
9176 * Documentation/user/global.itely (Paper size): explain how to add
9179 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
9180 correspond to GS's definition.
9182 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
9184 (print): only connect to next bracket if the next one is alive.
9185 (print): set padding to 0.0 if the bound is a breakable
9186 column. This makes tupletFullLength brackets reach up to the staff
9187 line if it doesn't connect to the next line.
9189 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9191 * lily/bar-number-engraver.cc: correct docs.
9193 * scm/output-lib.scm (first-bar-number-invisible): rename from
9194 default-bar-number-visibility
9196 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
9198 * scm/define-music-properties.scm (all-music-properties): remove
9201 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
9203 * po/fi.po: refresh.
9205 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9207 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
9209 (disappear): bugfix.
9211 * lily/stem-tremolo.cc (raw_stencil): read slope property.
9213 * lily/include/paper-system.hh (class Paper_system): remove
9214 staff_extents_ member.
9216 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
9218 * lily/include/paper-system.hh (class Paper_system): remove
9219 number_ variable. Remove is_title_. Remove break_before_penalty_
9221 * lily/paper-book.cc (systems): use 'number property iso. number_
9224 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
9225 remove ly:paper-system-number.
9227 * scm/lily-library.scm (paper-system-title?): new function.
9229 * lily/book.cc (process): bugfix: flip ?: cases.
9231 * Documentation/user/changing-defaults.itely (Difficult tweaks):
9234 * ly/music-functions-init.ly: add outputProperty music function.
9236 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
9238 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
9240 (optimal-page-breaks): rename from ly:optimal-page-breaks.
9242 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
9244 * lily/paper-system.cc (internal_get_property): new function.
9246 * Documentation/user/global.itely (Vertical spacing): refer to
9249 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
9252 * input/regression/page-spacing.ly: new file.
9254 * input/regression/page-top-space.ly: new file.
9256 * lily/spacing-spanner.cc: cmath -> math.h
9258 * lily/paper-system.cc (read_left_bound): new function. Read
9259 line-break-system-details from left bound to determine extents.
9261 * Documentation/user/programming-interface.itely (Using LilyPond
9262 syntax inside Scheme): change applyxxx -> applyXxx.
9264 * ly/music-functions-init.ly: add outputProperty music function.
9266 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
9268 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
9270 * python/convertrules.py (conv): rule
9272 * ly/music-functions-init.ly: applyxxx -> applyXxx
9274 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
9277 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9279 * flower/include/real.hh: include <math.h> iso. <cmath>
9281 * flower/include/offset.hh: include real.hh
9283 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
9285 * Documentation/user/changing-defaults.itely (Difficult tweaks):
9286 fix example, now that 'interfaces is no longer directly available.
9288 * lily/book.cc (process): don't crash if paper == NULL.
9292 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
9294 * scm/define-music-types.scm (music-descriptions): set length and
9295 start-callback for QuoteMusic
9297 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
9299 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
9300 arguments. Fixes compilation error with gcc 3.3.
9302 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
9304 * VERSION: release 2.7.10
9306 * stepmake/stepmake/python-module-rules.make
9307 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
9309 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
9312 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
9314 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
9315 -Werror. Otherwise GCC barfs over various optimizations.
9317 * scm/define-grob-properties.scm (all-internal-grob-properties):
9318 add note-head property
9320 * Documentation/user/instrument-notation.itely (Laissez vibrer
9323 * input/regression/laissez-vibrer-ties.ly: new file.
9325 * lily/laissez-vibrer-engraver.cc: new file.
9327 * lily/include/tie-column-format.hh: new file.
9329 * lily/tie-column-format.cc: new file.
9331 * lily/tie-column.cc (set_manual_tie_configuration): new function.
9333 * lily/laissez-vibrer-tie.cc: new file.
9335 * lily/include/laissez-vibrer-tie.hh: new file.
9337 * ly/engraver-init.ly: add Laissez_vibrer_engraver
9339 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
9341 * scm/define-grobs.scm (all-grob-descriptions): add
9342 LaissezVibrerTie, LaissezVibrerTieColumn
9344 * lily/tie-column.cc (set_tie_config_directions): new function
9345 (final_shape_adjustment): new function.
9346 (shift_small_ties): new function.
9348 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
9350 * lily/include/tie.hh (struct Tie_details): add x_gap_
9351 (struct Tie_configuration): add head_position_
9353 * lily/tie-column.cc (set_chord_outline): new function.
9355 * mf/cmr.enc.in: remove file.
9357 2005-09-11 Graham Percival <gpermus@gmail.com>
9359 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
9361 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
9363 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
9364 reduce aliasing effects.
9366 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
9369 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9371 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
9373 * flower/include/real.hh: std::fabs too.
9375 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
9377 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
9379 * lily, flower: Include C++ iso C headers. Import namespace std
9382 * lily/side-position-interface.cc:
9384 * lily/note-head.cc:
9385 * lily/include/includable-lexer.hh:
9386 * flower/include/string-data.icc: Remove using std::*.
9388 * lily, flower: Include C++ iso C headers. Import namespace std
9391 * lily/side-position-interface.cc:
9393 * lily/note-head.cc:
9394 * lily/include/includable-lexer.hh:
9395 * flower/include/string-data.icc: Remove using std::*.
9397 * Documentation/user/instrument-notation.itely (Entering lyrics):
9398 Multiple latin-1->utf-8 conversion fix.
9400 * Documentation/user/*tely: Update Emacs cookie to utf-8.
9402 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9404 * lily/tie.cc (get_configuration): also avoid dots for non-space
9407 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
9409 * Documentation/user/instrument-notation.itely: Bugfix.
9411 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
9413 * tex/GNUmakefile: don't install texinfo.tex
9415 * tex/ : cleanup: remove unused files.
9417 * lily/general-scheme.cc: remove my_{isinf,isnan}.
9419 * flower/include/real.hh: using std::{isnan,isinf}
9421 * VERSION (PATCH_LEVEL): release 2.7.9
9423 2005-09-05 Graham Percival <gpermus@gmail.com>
9425 * Documentation/user/ instrument-notation.itely,
9426 advanced-notation.itely: minor tweaks.
9428 * input/test/script-chart.ly: add item padding.
9430 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9432 * flower/offset.cc: use math.h iso. <cmath>
9434 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9437 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9438 (widen-left-stencil-edges): new function. Fix alignment problems
9439 with LaTeX includegraphics.
9441 * lily/text-interface.cc (interpret_markup): use abort().
9443 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9445 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9447 * lily/tie.cc (get_configuration): update bezier shape as we
9449 (get_configuration): don't move large ties if we're outside of the
9452 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9454 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9456 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9458 * .cvsignore: Add auto-generated configure files and then some.
9460 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9462 * scm/define-grobs.scm (DynamicLineSpanner): Add
9463 X-extent-callback. Fixes hairpin-slur collision.
9465 2005-08-31 Graham Percival <gpermus@gmail.com>
9467 * Documentation/user/advanced-notation.itely,
9468 basic-notation.itely: minor changes.
9470 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9472 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9473 \linebreak between each .eps file if \betweenLilyPondSystem is
9476 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9477 music): Document the \linebreak
9479 * Documentation/user/lilypond-book.itely,
9480 input/tutorial/lbook-latex-test.tex,
9481 Documentation/user/examples.itely: Remove \usepackage{graphics}
9483 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9485 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9487 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9490 * scripts/lilypond-book.py (PREAMBLE_LY): define
9491 inside-lilypond-book
9492 (modify_preamble): new function. Insert \RequirePackage{graphics}
9493 when no {graphics found in preamble.
9495 2005-08030 Graham Percival <gpermus@gmail.com>
9497 * Documentation/user/basic-notation.itely, global.itely,
9498 tutorial.itely: misc small changes.
9500 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9502 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9505 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9507 * lily/tie-column.cc (new_directions): put Tie down on center
9510 * lily/script-interface.cc (before_line_breaking): use
9511 Grob::programming_error
9513 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9515 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9518 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9520 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9522 2005-08-29 Werner Lemberg <wl@gnu.org>
9524 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9525 the `*.scale.pfa' files to avoid warnings.
9527 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9529 * lily/tempo-performer.cc (process_music): idem.
9531 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9533 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9535 * Documentation/user/advanced-notation.itely (Text markup): not a
9538 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9540 * lily/staff-performer.cc (initialize): add tempo/name to
9543 2005-08-26 Graham Percival <gpermus@gmail.com>
9545 * Documentation/user/advanced.itely: add text-only example.
9547 * Documentation/user/invoking.itely: add index entries for
9550 * Documentation/user/ tutorial.itely, basic-notation.itely:
9551 small fixes suggested by Steve D. Thanks!
9553 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9555 * input/regression/markup-bidi-pango.ly: new file.
9557 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9558 standard. Remove #ifdef. Remove memleak.
9559 (text_stencil): use text_dir to decide how to composite items.
9560 (text_stencil): determine uniform text direction for the entire
9563 * scripts/lilypond-book.py (output_name): remove
9564 latex_filter_cmd. Non-portable to non-Unix systems.
9565 (get_latex_textwidth): use File.write and os.unlink() instead.
9567 * THANKS: add Vicente & Trevor.
9569 * lily/grob.cc (discretionary_processing): look up origin for
9570 programming_error too.
9572 * input/regression/tie-broken.ly: new file.
9574 * lily/tie-column.cc (set_chord_outlines): set outline for line
9577 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9579 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9580 unscaled transform, just translate stencils.
9582 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9585 * scm/define-markup-commands.scm (wordwrap-string): use
9587 (wordwrap-stencils): idem.
9590 (wordwrap-stencils): translate last line to right for
9591 text-direction = LEFT.
9593 * scm/define-grob-properties.scm (all-user-grob-properties): add
9596 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9598 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9599 when copying a Lily_parser object.
9601 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9603 * scm/define-markup-commands.scm (null): add null markup.
9605 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9607 * lily/item.cc: Add documentation of center-invisible
9609 2005-08-24 Graham Percival <gpermus@gmail.com>
9611 * Documentation/user/advanced-notation.itely: add info about
9614 * Documentation/user/programming-interface.itely: fix example
9615 involving raised text.
9617 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9619 * lily/beam.cc (print): fix X start/end points of isolated
9622 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9624 * lily/multi-measure-rest.cc (set_text_rods): new function.
9626 * lily/vertical-align-engraver.cc (process_music): call
9627 Align_interface::set_axis(). This forces #'elements to be ordered,
9628 preventing random vertical reordering of staves.
9630 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9631 add avoid-slur property.
9633 * Documentation/user/basic-notation.itely (Measure repeats): add
9634 countPercentRepeats example.
9636 * Documentation/user/advanced-notation.itely (Other text markup
9637 issues): remove remark about normal-font. We have \normal-text
9639 * input/regression/tie-chord.ly: add note about remaining bugs.
9641 * lily/tie.cc (print): try Tie_column::set_directions () if
9642 control-points not yet defined.
9644 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9646 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9647 extent. This fixes braces falling out of the EPS bbox.
9649 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9652 2005-08-23 Graham Percival <gpermus@gmail.com>
9654 * {various} : change #up->#UP and #down->#DOWN.
9656 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9658 * Documentation/user/advanced-notation.itely: clarify
9659 what objects handles text on a multimeasure rest.
9661 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9663 * VERSION (PATCH_LEVEL): release 2.7.7
9665 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9667 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9669 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9671 * input/regression/*.ly: formatting clean-up. Default layout
9672 before music expression.
9674 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9675 romanze28-2 example.
9677 * scm/ps-to-png.scm: remove dir-re function.
9678 (make-ps-images): generate page names, instead of globbing them.
9679 This brings down LilyPond memory usage for make web by a factor
9682 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9683 don't use glob. With 3000 files, globbing
9684 Documentation/user/out-www/ can take too much time.
9686 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9688 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9690 * input/regression/tie-manual.ly: new file
9692 * input/regression/tie-chord.ly: update.
9694 * flower/include/interval.hh (struct Interval_t):
9696 * lily/tie.cc (distance): new function
9697 (height): new function.
9698 (init): new function
9699 (Tie_details): new struct.
9701 * lily/skyline.cc (skyline_height): new function.
9703 * lily/tie-column.cc (set_chord_outlines): new function.
9704 (new_directions): read tie-configuration
9706 * lily/skyline.cc: fix ASCII art.
9708 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9710 * python/convertrules.py (string_or_scheme): Fix spelling error
9712 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9714 * lily/tie-column.cc (set_directions): set directions only once.
9715 (add_configuration): new function.
9717 * lily/tie.cc (set_control_points): new function
9719 * lily/tie-column.cc (new_directions): new function.
9721 * ly/music-functions-init.ly: set 'pitch property
9722 iso. trill-pitch. This makes \relative work with \pitchedTrill
9724 * lily/tie.cc (get_configuration): new function. Don't generate
9725 control points, rather, generate configuration.
9726 remove head-pair property.
9728 * lily/include/tie.hh (struct Tie_configuration): new struct.
9730 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9732 * Documentation/topdocs/NEWS.tely: clarify.
9734 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9736 * lily/tie.cc: remove minimum-length
9738 * scm/define-grob-properties.scm (all-user-grob-properties):
9739 remove staffline-clearance, y-offset
9741 * input/regression/tie-dots.ly (Module): remove.
9743 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9744 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9746 * input/regression/tie-single.ly: new file.
9748 2005-08-21 Graham Percival <gpermus@gmail.com>
9750 * ly/bagpipe.ly: fix compile problem.
9752 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9754 * lily/midi-item.cc (name): new method.
9756 * lily/staff-performer.cc (acknowledge_audio_element): use
9757 signature of baseclass.
9759 * lily/engraver-group.cc (do_announces): move recursion call out
9762 * lily/drum-note-performer.cc (class Drum_note_performer): use
9763 process_music everywhere.
9765 * ly/performer-init.ly: add default children everywhere.
9767 * lily/paper-book.cc (output): call paper-book-write-midis
9768 directly: always write MIDI, even if no \layout {} block.
9770 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9772 * VERSION (PACKAGE_NAME): release 2.7.6
9774 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9775 about not being able to handle repeat.
9777 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9779 * Documentation/user/examples.itely (Piano templates):
9780 * lily/include/performer-group.hh: Remove last traces of
9781 Performer_group_performer. Fixes make web.
9783 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9785 * Documentation/user/examples.itely (Piano templates): change
9786 Engraver_group_engraver -> Engraver_group
9788 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9789 scm_stand_in_procs is not weak_any.
9791 * lily/volta-bracket.cc (print): don't use strcmp().
9793 * lily/volta-engraver.cc (process_music): use
9794 Text_interface::is_markup() for setting the 'text property of the
9797 * input/mutopia/claop.py (accents): update syntax to 2.6
9799 * scm/define-context-properties.scm
9800 (all-user-translation-properties): add countPercentRepeats.
9802 * Documentation/user/basic-notation.itely (Measure repeats): add
9803 isolated percent example.
9805 2005-08-18 Graham Percival <gpermus@gmail.com>
9807 * input/ {various}: change direction #1, #-1 to
9808 #up/#down or \fooUp, \fooDown.
9810 * Documentation/user/music-glossary.tely: #-1 to #down.
9812 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9813 to #up, #-1 to #down.
9815 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9817 * lily/include/engraver-group.hh: rename.
9819 * lily/include/performer-group.hh: rename.
9821 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9823 * input/test/script-abbreviations.ly: Removed some old LaTeX
9826 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9828 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9829 Remove functions. Remove if 1: constructs, reindent.
9831 * scripts/convert-ly.py (add_version): Add functions from
9834 * scm/script.scm (default-script-alist):
9835 s/priority/script-priority. Fixes script stacking. Backportme.
9836 (Fermata): Very low priority.
9838 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9840 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9842 * input/regression/slur-script.ly: remove padding tweaks. Add
9845 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9846 time sigs and related stuff.
9848 * scm/define-grob-properties.scm (all-user-grob-properties): add