1 2006-11-06 Nicolas Sceaux <nicolas.sceaux@free.fr>
3 * scm/music-functions.scm (markup-expression->make-markup): fix
4 the case when a markup found in a markup list is a simple
7 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
9 * lily/instrument-name-engraver.cc:
10 * input/regression/instrument-name-dynamic.ly:
11 ignore dynamic and pedal line spanners.
13 * Documentation/topdocs/NEWS.tely:
14 * Documentation/user/advanced-notation.itely:
16 * input/regression/balloon.ly:
18 * ly/music-functions-init.ly:
19 * scm/define-event-classes.scm:
20 * scm/define-grobs.scm:
21 * scm/define-music-properties.scm:
22 * scm/define-music-types.scm:
24 * lily/balloon-engraver.cc:
25 rewrite balloon-text support. This is now a separate grob, with itsvictim as the parent. This involves addingBalloon_engraver, AnnotateOutputEvent, annotate-output-event,\balloonText, \balloonGrobText, and modifying Balloon_interface::print.
27 * lily/paper-score.cc:
30 * lily/chord-name-engraver.cc:
33 * lily/paper-score.cc:
34 some useless statistics.
36 * buildscripts/git-update-changelog.py:
37 update todo/done after rejection due to removal analysis.
39 * buildscripts/git-update-changelog.py:
40 check whether removals from a diff actually apply.
42 2006-11-05 Joe Neeman <joeneeman@gmail.com>
44 * lily/include/page-turn-page-breaking.hh: remove unused
47 * lily/page-turn-page-breaking.cc (calc_demerits):
48 * lily/optimal-page-breaking.cc (try_page_spacing): remove
51 2006-11-05 Werner Lemberg <wl@gnu.org>
53 * Documentation/user/changing-defaults.itely,
54 Documentation/user/preface.itely: Use `--', not `---'.
57 * Documentation/user/introduction.itely: Minor improvements.
58 (Automated engraving): Make example using \applyOutput work
61 * input/regression/apply-output.ly: Improve.
63 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
65 * lily/dynamic-engraver.cc:
68 * input/regression/note-head-harmonic.ly:
70 * input/regression/note-head-harmonic-whole.ly:
71 Center harmonic heads if stem is invisible. Fixes #140
74 end context snippet with '\n'
77 catch all GUILE exceptions
82 * lily/include/lily-lexer.hh:
84 * lily/lily-parser.cc:
85 Lily_parser* arg for copy ctor too.
88 abc2ly new tempo syntax
90 2006-11-04 Heikki Junes <hjunes@gmail.com>
92 * po/fi.po: update Finnish translation.
94 2006-11-03 Graham Percival <gpermus@gmail.com>
96 * Documentation/user/ {various}: rename page->spacing,
97 global->non-music, invoking->running, example->templates.
99 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
101 * scm/display-lily.scm: add a parser argument to display methods,
102 instead of using a *parser* special variable.
104 * scm/define-music-display-methods.scm: add a parser argument to
105 display methods. Update the methods for \melisma, \melismaEnd,
106 \breathe, \tempo, \partial.
108 * input/no-notation/display-lily-tests.ly: update the test
109 utilities according to the changes in display-lily.scm
111 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
113 * *: The Joy of Merging.
115 * buildscripts/git-update-changelog.py:
116 sort commits, and use .git-commits-done file.
120 dist emacs patches too.
122 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
124 * scm/autochange.scm:
127 * lily/context-def.cc:
128 * lily/include/parse-scm.hh:
129 * lily/include/smobs.hh:
132 * lily/program-option.cc:
134 implement and use ASSERT_LIVE_IS_ALLOWED()
136 * ly/music-functions-init.ly:
137 * scm/autochange.scm:
138 set-part-combine fix for autochange.
140 * lily/include/lily-lexer.hh:
141 * lily/include/lily-parser.hh:
142 * lily/lily-lexer.cc:
143 * lily/lily-parser-scheme.cc:
144 * lily/lily-parser.cc:
145 clear lexer scopes after parsing file. Plugs pseudo memory leak
147 * ly/declarations-init.ly:
148 * ly/music-functions-init.ly:
149 * scm/part-combiner.scm:
150 Remove set-part-combine-listener. This plugs a memory leak.
156 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
161 * lily/part-combine-iterator.cc:
162 don't allocate part combine events statically. Plugs small leak.
164 * lily/lily-parser-scheme.cc:
165 plug memleak in case of failed files.
167 * lily/include/source.hh:
172 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
174 * lily/include/program-option.hh:
175 * lily/program-option.cc:
176 get_program_option() function
178 * ly/titling-init.ly:
179 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
181 * lily/include/translator.hh:
182 * lily/include/translator.icc:
183 * lily/translator.cc:
186 * lily/figured-bass-engraver.cc:
187 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
189 * stepmake/stepmake/compile-vars.make:
190 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
192 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
198 trim warning messages.
203 * input/regression/utf-8.ly:
204 document utf-8 meaning of phrases.
206 * scm/define-markup-commands.scm:
207 make \caps markup default to smallCaps
209 * lily/pango-font.cc:
211 use glyph indexing for glyph name .notdef
213 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
215 * input/regression/utf-8.ly: Fix doc to match order of language
218 2006-11-01 Joe Neeman <joeneeman@gmail.com>
220 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
221 page and line forces.
223 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
225 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
227 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
229 * Documentation/user/GNUmakefile:
230 don't use ImageMagick, use GS directly.
233 otf depends on otf-g?table. Fixes race condition in -j2 build.
234 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
240 remove .deb/.rpm downloading.
242 * buildscripts/git-update-changelog.py:
243 bugfixes for git-update-changelog.py
245 * Documentation/user/GNUmakefile:
248 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
250 * input/regression/tie-semi-single.ly:
251 use position/direction from single tie case too. This fixes
252 overrides and defaults for single laissez-vibrer and repeat ties.
254 * buildscripts/git-update-changelog.py:
255 only prepend header if one patch was successful.
257 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
259 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
260 stuff. Remove cygwin packaging stuff.
262 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
264 * python/convertrules.py (conv): Part 2 fixes vertical extent.
266 * input/test/vertical-extent.ly: Fix and elaborate on vertical
267 staff extent. (Thanks Mats)
269 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
271 * buildscripts/git-update-changelog.py (main): write .msg and cvs
274 * scm/define-grobs.scm:
275 separation-items have width
281 * Documentation/topdocs/NEWS.tely:
282 * lily/separating-group-spanner.cc:
283 * lily/slur-engraver.cc:
284 * lily/slur-scoring.cc:
285 * scm/define-grobs.scm:
286 * input/regression/slur-clef.ly:
287 add breakableSeparationItem to extra encompass for slurs. This
288 fixes slur/clef slur/key collisions etc. Should fix #49
290 * lily/include/slur-scoring.hh:
291 * lily/slur-scoring.cc:
292 Use X of separation item as slur start. Fixes #120
294 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
296 * buildscripts/git-update-changelog.py (changelog_body): don't
299 * lily/grob.cc: add avoid-slur
301 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
305 move server/emacsclient to elisp/
307 * buildscripts/git-update-changelog.py (Commit.note_del_file):
310 * elisp/server.el.patch:
313 * elisp/emacsclient.patch:
316 * buildscripts/git-update-changelog.py:
323 * buildscripts/git-update-changelog.py:
324 script to update ChangeLog with Git messages.
326 * lily/beam-engraver.cc:
327 * input/regression/rest-pitched-beam.ly:
328 don't set callback if staff-position set. Fixes #126.
330 * lily/bar-number-engraver.cc:
332 * lily/fingering-engraver.cc:
333 * lily/grob-property.cc:
335 * lily/include/grob.hh:
336 * lily/include/lily-guile-macros.hh:
337 * lily/mark-engraver.cc:
338 * lily/melody-engraver.cc:
339 * lily/script-column.cc:
340 * lily/tie-formatting-problem.cc:
342 internal_get_property_data() using ly_symbol2scm()
344 * stepmake/stepmake/generic-targets.make:
345 create .gitignore in outdir.
350 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
352 * input/test/vertical-extent.ly:
353 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
355 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
357 * stepmake/bin/add-html-footer.py (compose): remove setgcos
359 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
361 * GNUmakefile.in (install-help2man): install-help2man target.
363 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
365 * SConstruct (configure): Do not check for /bin/sh.
367 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
369 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
372 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
374 * input/regression/fret-boards.ly: new file.
376 * po/de.po: new po courtesy translation team.
378 * scripts/lilypond-book.py (get_option_parser): add newline to doc
381 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
383 * ly/gregorian-init.ly (neumeDemoLayout): update
384 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
386 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
387 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
389 2006-10-27 Erlend Aasland <erlenda@gmail.com>
391 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
392 Yet another build fix.
394 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
396 * SConstruct (lilypondprefix): use sorted() for list_sort()
399 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
401 * flower/SConscript: Unit test rules.
403 * flower/test-std.cc: Compile fix.
405 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
407 * python/midi.c (pymidi_parse_track): warning fixes.
409 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
410 include dot-column.hh
412 2006-10-26 Graham Percival <gpermus@gmail.com>
414 * Documentation/user/{basic-, global}: minor changes from mailist.
416 2006-10-26 Erlend Aasland <erlenda@gmail.com>
418 * scm/define-grobs.scm: trivial beautification
420 * lily/tie-performer.cc: no need to #include "pqueue.hh"
422 * lily/source-file.cc: put multibyte var inside #if clause
424 * scm/define-grob-interfaces.scm:
425 * scm/define-grob-properties.scm:
426 Build fix (string-fret-finger-combinations)
428 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
431 * Documentation/user/lilypond-book.itely: Build fix.
433 2006-10-26 Joe Neeman <joeneeman@gmail.com>
435 * lily/system.cc (get_paper_system):
436 * lily/paper-book.cc (systems):
437 move most of the backwards compatibility stuff into
440 * Documentation/topdocs/NEWS.tely: add 2 entries for the
443 * Documentation/user/page.itely: remove time-scaled-music
444 bug for the Page_turn_engraver
446 * lily/paper-book.cc (set_system_penalty): backwards
447 compatibility (breakbefore) for the old page breaker
449 2006-10-25 Graham Percival <gpermus@gmail.com>
451 * Diocumentation/user/instrument-notation.itely: added more
452 info about stanzas; thanks Geoff!
454 * Documentation/user/ {basic, advanced}: small fixes from
457 * THANKS: add some bug reporters.
459 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
461 * scm/define-context-properties.scm (all-user-translation-properties):
462 noteToFretFunction: Add.
464 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
465 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
467 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
469 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
472 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
473 Remove bashism in delete.
475 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
477 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
479 * scm/translation-functions.scm (determine-frets-mf): flatten let*
481 * scm/define-context-properties.scm
482 (all-user-translation-properties): add maximumFretStretch property.
484 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
486 * lily/source-file.cc (get_counts): use multibyte variable.
488 * scm/translation-functions.scm (determine-frets-mf): new
489 function: compute fret numbers.
491 * scm/output-lib.scm (string-frets->description) new function.
492 (fret-board::calc-stencil): new function
494 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
496 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
498 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
500 * lily/tab-note-heads-engraver.cc: cleanups.
502 * lily/fretboard-engraver.cc: new file
504 * ly/engraver-init.ly: add FretBoards context
506 2006-10-24 Joe Neeman <joeneeman@gmail.com>
508 * lily/grob.cc (pure_relative_y_coordinate)
509 (pure_height): use the new call_pure_function stuff
511 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
514 * lily/side-position-interface.cc (pure_y_aligned_side): add an
517 * lily/simple-closure.cc (ly_eval_simple_closure): make
518 simple-closure evaluatable from scheme
519 (evaluate_with_simple_closure): make simple-closures pure-
522 * lily/slur.cc (pure_outside_slur_callback): new function
524 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
525 fits in with previous changes that made the page forces much
528 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
529 and pure-Y-extent into this new function.
530 (pure-conversions-alist): add outside-slur-callback
532 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
534 * Documentation/user/advanced-notation.itely (Instrument names):
535 Remove obsolete bug workaround for instrument names on piano
538 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
540 * Documentation/user/lilypond-book.itely (Integrating DocBook and
541 music): patch by Bertalan Fodor for docbook.
543 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
544 of $(LILYPOND). Prevents lilypond run for .txt files.
546 * INSTALL.txt: gitness.
548 * .cvsignore: update to force gitness.
550 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
552 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
553 detect suicide in nested tuplets.
555 2006-10-23 Werner Lemberg <wl@gnu.org>
557 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
558 typo in argument to FT_Get_X11_Font_Format.
560 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
562 * stepmake/stepmake/po-vars.make: more gitness.
564 * flower/polynomial.cc (check_sol): no empty if bodies.
566 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
568 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
570 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
572 * Documentation/user/examples.itely (Transcription of mensural
573 music): Added more comments in .ly source. Suggest to remove
574 Forbid_line_break_engraver to allow line breaking at all bars.
576 * Documentation/user/instrument-notation.itely (Ancient
577 articulations): Updated @refbugs regarding episem.
579 * Documentation/user/instrument-notation.itely (Gregorian square
580 neumes ligatures): Added \augmentum dots. Updated @refbugs
581 regarding \augmentum.
583 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
585 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
588 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
591 * ly/gregorian-init.ly: Added \augmentum macro.
593 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
595 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
597 * lily/pango-font.cc (pango_item_string_stencil): use
598 FT_Get_X11_Font_Format()
600 2006-10-22 John Mandereau <john.mandereau@free.fr>
602 * po/fr.po: update translation.
604 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
606 * VERSION (PATCH_LEVEL): bump version
608 * input/regression/horizontal-bracket-break.ly: new file.
610 * scm/define-grobs.scm (all-grob-descriptions): calc
613 * lily/horizontal-bracket.cc (make_bracket): support
614 connect-to-neighbor. Fix #118
616 * VERSION: release 2.9.26-2
618 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
620 * VERSION (PACKAGE_NAME): release 2.9.26
622 * buildscripts/output-distance.py (test_basic_compare): add
624 (FileLink.multi_img_cell): new function, glob multi-page png
627 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
629 * po/lilypond.pot: update.
631 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
633 * Documentation/user/global.itely (File structure): remove
636 * lily/parser.yy (FIXME): remove ADDQUOTE
638 * Documentation/user/global.itely (Extracting fragments of
639 notation): new node, about clip systems.
641 * Documentation/user/lilypond-book.itely (Many quotes of a large
642 score): ref to clip systems.
644 * Documentation/user/instrument-notation.itely (Entering lyrics):
645 add note about lyric ties and required font.
647 * lily/open-type-font.cc (glyph_list): format errors.
649 * Documentation/user/programming-interface.itely (Scheme
650 procedures as properties): more doco on simple-closure and scheme
652 (Input variables and Scheme): use lilypond[verbatim], document
655 * Documentation/user/page.itely (Displaying spacing): use \book
656 explicitly, so arrows show .
657 (Line breaking): add note about Forbid_line_break_engraver
659 * Documentation/user/tweaks.itely (Common tweaks): also set length
660 to prevent tie squeezing.
661 (Default files): use @var{}
663 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
664 (Generating LilyPond files): add FOMUS.
666 2006-10-20 Joe Neeman <joeneeman@gmail.com>
668 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
669 Y-offset for TextScript and Script
671 * lily/text-engraver.cc (make_item):
672 * lily/script-engraver.cc (make_script_from_event):
673 remove call to Side_position_interface::set_axis since all scripts
674 now have this set by default
677 * lily/prob.cc: use variables
679 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
681 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
682 at typography, rather analyse stream event duration.
684 * Documentation/user/page.itely (Page formatting): set a6 paper
685 for system separator example.
687 * lily/arpeggio.cc (Module): idem.
689 * lily/accidental-placement.cc: add script-priority property.
691 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
693 * lily/ttf.cc (print_trailer): if all else fails: use
694 glyphIndexXXXX as glyph name. Fixes #117.
696 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
697 entry if cmap contains glyph.
698 (get_index_to_charcode_map): remove from Pango_font class, use
699 global filename -> font mapping.
700 (get_glyph_index_name): new function.
701 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
704 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
706 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
709 * scm/define-grob-properties.scm (all-user-grob-properties):
710 remove outdated doc. Fixes #116
712 * lily/completion-note-heads-engraver.cc (process_music): always
713 clone input events; otherwise we may overwrite input 'duration
714 property. Fixes #115.
716 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
719 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
722 * VERSION (PATCH_LEVEL): bump version.
724 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
726 * lily/engraver.cc (internal_make_grob): use variables.
728 * flower/string-convert.cc (dec2double): clean-up warnings.
730 * configure.in (CXXFLAGS): add -Werror.
732 * VERSION (PACKAGE_NAME): release 2.9.25
734 2006-10-18 Joe Neeman <joeneeman@gmail.com>
736 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
737 line even if we precede a forced break.
739 * lily/optimal-page-breaking.cc (try_page_spacing): square line
740 forces too. Make page-spacing weight default to 10 because the
741 changes to vertical springs decreased the page force/line force
742 proportions. Also, take the average of line force and page force
743 instead of just the sum.
745 * lily/constrained-breaking.cc (initialize): make the stiffness
746 of the vertical springs depend on the height of the system. This
747 prevents pages with only a few large systems from getting huge
750 * Documentation/user/page.itely (Page formatting): document the
751 change in default page-spacing-weight
753 * lily/include/constrained-breaking.hh: initialise bottom_padding_
755 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
757 * input/typography-demo.ly (melody): remove superfluous slur.
759 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
760 add piano-pedal-script-interface
762 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
764 * scripts/lilypond-book.py: DocBook support.
766 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
768 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
770 (stop_translation_timestep): set bound to currentMusicalColumn if
771 not set yet. Fixes #102
773 * lily/piano-pedal-bracket.cc: formatting.
775 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
777 * lily/piano-pedal-align-engraver.cc: new class
778 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
781 2006-10-18 Heikki Junes <hjunes@gmail.com>
783 * po/fi.po: Update Finnish translation (before the next release).
785 2006-10-17 Joe Neeman <joeneeman@gmail.com>
787 * lily/system.cc (get_paper_system): reinstate the backwards-
788 compatible page breaking for the old page breaker.
790 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
792 * lily/recording-group-engraver.cc: removed
794 * lily/context.cc, lily/translator-group.cc: Don't touch
795 Context::implementation_ if it's null
797 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
799 * scm/paper.scm: only use left-margin if defined.
801 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
803 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
805 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
806 strokeFingerOrientations
808 * lily/script-column.cc (row_before_line_breaking): also handle
809 accidentals and arpeggios in horizontal script stacking.
811 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
814 * input/regression/script-stack-horizontal.ly: trim.
816 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
818 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
821 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
822 'text if string argument.
824 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
826 * scm/define-context-properties.scm
827 (all-user-translation-properties): change to strokeFingerOrientations
829 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
831 * lily/parser.yy: remove debug output
833 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
835 * ly/paper-defaults.ly: set left/right margin.
837 * scm/paper.scm (set-paper-dimensions): use left-margin and
838 right-margin for computing linewidth.
840 * Documentation/topdocs/NEWS.tely (Top): idem.
842 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
845 * scm/define-markup-commands.scm (tied-lyric): increase negative
846 space: space syllables tighter.
848 * VERSION (PATCH_LEVEL): bump version.
850 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
853 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
855 * COPYING: further clarification
857 * VERSION: release 2.9.24
859 * input/regression/script-stack-horizontal.ly: add version.
861 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
863 * input/regression/lyric-tie.ly (texidoc): use different words.
865 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
867 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
869 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
870 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
872 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
874 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
876 * Doxyfile: remove file.
878 * scm/define-grob-interfaces.scm (string-finger-interface): add
879 string-finger-interface
881 * lily/general-scheme.cc (LY_DEFINE): move
882 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
884 * Documentation/topdocs/NEWS.tely (Top): add note for
885 string-finger feature.
887 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
890 * scm/output-lib.scm (string-finger::calc-text): read 'digit
893 * input/regression/script-stack-horizontal.ly: new file.
895 * ly/engraver-init.ly: add Script_row_engraver.
897 * lily/script-column.cc (order_grobs): refactor: separate axis
899 (row_before_line_breaking): new function.
901 * lily/script-row-engraver.cc (Script_row_engraver): new file.
903 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
905 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
907 * Documentation/user/instrument-notation.itely: Cleanup: Remove
908 annoying skip notes from mensural ligature example. Update
909 @refbugs for ligatures and mensural ligatures.
911 * lily/coherent-ligature-engraver.cc,
912 lily/include/coherent-ligature-engraver.hh,
913 lily/mensural-ligature-engraver.cc,
914 lily/vaticana-ligature-engraver.cc: Revise code for item
915 reparentizing. There should now be less programming_error
918 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
920 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
921 Maintenance bugfix: Don't create empty Stencil (), but empty box
922 instead. This fix should eliminate some programming_error
925 * ly/engraver-init.ly (MensuralStaff): Set default accidental
928 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
929 \layout block _before_ score.
931 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
933 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
935 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
937 2006-10-13 Erlend Aasland <erlenda@gmail.com>
939 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
941 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
943 * VERSION (PATCH_LEVEL): bump version.
945 * COPYING: clarify exception note.
947 * lily/main.cc: remove remark about "COPYING".
949 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
950 system-count starts at 0 for each clip-region. Change name to
951 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
952 layout block, per score.
954 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
956 * lily/input-smob.cc: add equal_p for Input
958 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
961 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
963 * lily/prob.cc: Add equal_p predicate for Prob
965 * lily/translator.cc: small cleanup
967 * scm/document-music.cc: use data from translator listener
968 registration to generate documentation for event classes
970 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
972 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
974 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
976 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
978 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
980 * Documentation/topdocs/INSTALL.texi: Thinko.
982 * .cvsignore: Update.
984 * lexer-gcc-3.1.sh: Remove.
986 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
987 Update anonymous cvs access. Remove comment about gcc 3.0.4.
989 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
991 * VERSION: release 2.9.23
993 * lily/paper-column-engraver.cc (stop_translation_timestep): also
996 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
998 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
1000 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
1002 * input/regression/clip-systems.ly (Notes): new file.
1004 * scm/lily.scm (define-scheme-options): add clip-systems option.
1006 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
1008 (dump-stencil-as-EPS): move bbox calculation from previous
1010 (output-framework): use -dclip-systems
1012 * scm/lily-library.scm (filtered-map): new function
1014 * scm/framework-ps.scm (clip-system-EPS): new function.
1015 (clip-system-EPSes): new function.
1017 * lily/paper-column.cc: add rhythmic-location to interface
1019 * scm/define-grob-properties.scm (all-user-grob-properties): add
1020 rhythmic-location property.
1022 * scm/clip-region.scm: new file: rhythmic-location data type and
1023 system-clipped-x-extent function.
1025 * ly/init.ly: use (scm clip-region)
1027 * lily/paper-column-engraver.cc (stop_translation_timestep): set
1028 rhythmic-location for paper column grobs.
1030 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
1032 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
1034 * ly/engraver-init.ly: Remove obsolete comment on
1035 Bar_number_engraver.
1037 * Documentation/user/instrument-notation.itely: Tune Ancient
1038 Articulations figure, such that the episem actually shows.
1040 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1041 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1043 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1046 2006-10-12 Graham Percival <gpermus@gmail.com>
1048 * Documentation/user/ {some}: minor edits that were lost somehow.
1050 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1052 * VERSION (PACKAGE_NAME): bump version.
1054 * input/regression/lyric-tie.ly (texidoc): new file.
1056 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1058 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1060 * scm/define-markup-commands.scm (tied-lyric): new function: split
1061 string along ~ and reattach with U+203F (tie character) and
1064 * scm/output-lib.scm (lyric-text::calc-text): new function.
1066 * lily/lyric-engraver.cc (process_music): don't set 'text.
1068 * scm/output-lib.scm (string-finger::calc-text): new function
1069 (lyric-text::print): new function.
1071 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1072 generic for fingering & string number. Use for string-finger.
1074 * scm/define-music-types.scm (music-descriptions): add
1077 * lily/fingering-engraver.cc (listen_string_finger): new function
1079 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1081 * scm/define-context-properties.scm
1082 (all-user-translation-properties): add stringFingerOrientations
1084 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1086 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1087 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1089 * lily/dots.cc: Added style property for dots.
1091 * mf/parmesan-heads.mf: Fix typo in comment.
1093 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1094 adding longa head to feta font and removing obsolete default
1095 mapping scheme code.
1097 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1099 * scm/output-lib.scm (fingering::calc-text): use origin
1100 event-property, not music-property.
1102 * lily/lilypond.rc.in: spell my name correctly.
1104 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1106 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1107 already have a non-empty extent. Fixes estimation for Hara-kiri
1110 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1112 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1115 * lily/ligature-engraver.cc: Remove unused #include.
1117 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1118 Bugfix: remove method check_for_prefix_loss(Item *) from global
1119 namespace to avoid namespace pollution.
1121 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1123 * VERSION: release 2.9.22
1125 * ly/generate-documentation.ly: update option name.
1127 * lily/dynamic-text-spanner.cc (print): revert fix.
1129 * scm/define-grob-interfaces.scm
1130 (trill-pitch-accidental-interface):
1131 add trill-pitch-accidental-interface
1133 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1134 dereference if it's really a duration.
1136 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1137 useBassFigureExtenders is not set.
1138 (listen_bass_figure): record as new event if
1139 useBassFigureExtenders not set. Fixes #103.
1141 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1142 instead: move circle. Fixes #107.
1144 * scm/define-grobs.scm (all-grob-descriptions): set
1145 allow-loose-spacing for PaperColumn and
1146 NonMusicalPaperColumn. Kludge for #110.
1148 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1150 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1151 allow-loose-spacing property.
1153 * scm/define-markup-commands.scm (postscript): gsave & grestore
1154 around embedded PS. Do setlinewidth too. Fixes #109.
1156 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1158 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1159 code. This patch fixes ligature brackets that were not at all
1162 2006-10-08 Graham Percival <gpermus@gmail.com>
1164 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1166 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1168 * scm/define-context-properties.scm: clarified docs (bug 91).
1170 * Documentation/user/basic-notation.itely: document volta brackets
1171 not aligning (bug 63).
1173 * Documentation/user/ global.itely invoking.itely: ignore or
1174 add warnings about texstr.
1176 2006-10-08 John Mandereau <john.mandereau@free.fr>
1178 * po/fr.po: update translation.
1180 * po/: update msgids.
1182 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1184 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1186 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1188 * Documentation/user/page.itely (Two-pass vertical spacing): add
1189 documentation for two-pass spacing technique.
1191 2006-10-06 Graham Percival <gpermus@gmail.com>
1193 * Documentation/user/convert-ly.txt: new file; new
1194 storage place for this file (moved from bugs/ CVS).
1196 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1198 * lily/note-head.cc: Fixed programming_error message.
1200 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1202 * scm/define-grobs.scm (pure-conversion): move pure-callback
1205 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1206 marcato, stopped, thumb.
1208 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1210 * lily/completion-note-heads-engraver.cc (process_music): don't
1211 skimp on memory usage.
1213 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1216 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1217 parenthesis item. This fixes premature Y-extent triggering. Fixes
1220 * VERSION (PATCH_LEVEL): bump version.
1222 2006-10-04 Graham Percival <gpermus@gmail.com>
1224 * Documentation/user/advanced-notation.itely: added
1225 info about instrument names for piano or other contexts,
1228 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1230 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1231 solfa_base_notewidth as unit for non-DO-notes too.
1233 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1235 * VERSION: release 2.9.21
1237 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1240 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1242 * python/lilylib.py (progress): Minor fix.
1244 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1246 * lily/note-name-engraver.cc: doc engraver.
1248 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1250 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1252 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1255 * lily/stem-engraver.cc (make_stem): don't set duration-log
1257 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1258 write snippet-names binary.
1260 * python/lilylib.py (system): use os.system for mingw32
1262 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1265 * scm/backend-library.scm: update email address.
1267 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1270 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1273 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1274 handle dot creation separately.
1276 * lily/tab-note-heads-engraver.cc (process_music): idem.
1278 * lily/drum-note-engraver.cc (process_music): idem.
1280 * lily/note-heads-engraver.cc (process_music): idem.
1282 * lily/rest-engraver.cc: don't set duration-log.
1284 * scm/output-lib.scm (string-number::calc-text): new function.
1285 (note-head::calc-duration-log): new function.
1287 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1289 * scm/output-lib.scm (fingering::calc-text): new function.
1291 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1293 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1294 and include-eps-font -> include-eps-fonts
1296 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1298 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1300 * lily/timing-translator.cc: list properties.
1301 (start_translation_timestep): update internalBarNumber too.
1303 * scm/define-context-properties.scm
1304 (all-user-translation-properties): add internalBarNumber.
1306 * input/regression/spacing-no-note.ly: new file.
1308 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1310 * lily/book.cc: #include cleanup.
1312 * lily/include/lily-guile-macros.hh: add assert to
1313 scm_or_str2symbol(SCM).
1315 * VERSION (PATCH_LEVEL): bump version.
1317 * lily/spacing-spanner.cc (musical_column_spacing): handle
1318 musical->nonmusical spacing case, where there is no spacing
1319 wish. Fixes issue #61.
1321 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1322 (pango_item_string_stencil): use logical rect horizontally (to
1323 preserve spaces), ink_rect vertically (for time signatures).
1325 * lily/font-metric.cc (word_stencil): new interface function
1327 * input/regression/utf-8-mixed-text.ly: new file.
1329 * lily/percent-repeat-engraver.cc (listen_percent): remove
1332 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1333 non-dynamic scripts. Fixes #30.
1335 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1337 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1339 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1340 SCM_UNDEFINED for non-existent data.
1342 * lily/side-position-interface.cc (general_side_position): allow
1343 optional current_offset argument for chaining, so combinations of side-position
1344 and outside slur callback don't add up. Fixes issue #92.
1346 * lily/pango-font.cc (pango_item_string_stencil): use
1347 logical_rect. This prevents spaces after words from disappearing,
1350 * VERSION: release 2.9.20
1352 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1354 * scm/define-grob-properties.scm (all-user-grob-properties):
1355 mention stencil as user settable.
1357 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1359 * Documentation/user/page.itely (Page formatting):
1360 document auto-first-page-number
1362 * lily/page-breaking.cc (find_chunks_and_breaks):
1363 * lily/paper-score.cc (calc_breaking): Follow changes to the
1364 Constrained_breaking interface
1366 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1367 here backwards, as an optimisation
1368 (initialize): new function; move most of the code in resize () here
1369 (combine_demerits): cache ragged_right_
1370 (Constrained_breaking): constructor now takes the Paper_score
1372 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1374 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1375 avoid parser lookahead for 0-ary functions.
1377 * lily/translator.cc: Extract event classes from
1378 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1380 2006-10-02 Heikki Junes <hjunes@gmail.com>
1382 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1385 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1387 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1388 function. Call the page breaking function selected in the
1389 `page-breaking' \paper variable, then the post processing function
1390 chosen using the `page-post-process' \paper variable.
1391 (line-height): new function. Return the height of a system.
1392 (line-minimum-position-on-page): new function. Return the position
1393 of a system on page (using the previous line position), only
1394 considering between system padding.
1395 (stretchable-line?): new function. Says whether a line can be
1396 stretched (ie. is not a title nor a single staff system).
1397 (page-maximum-space-left): new function. Computes space left on a
1398 page, when all systems are separated by their padding.
1400 * lily/page-breaking.cc (breaking::make_pages): Move page post
1401 processing function call to page breaking wrapper (common to all
1404 * lily/paper-book.cc (book::pages): call the page breaking
1405 wrapper, instead of the page breaker directly
1407 * ly/paper-defaults.ly: Add \paper variables for page breaking
1408 wrapper and page post processing function. Make
1409 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1410 `system-maximum-stretch-procedure' variable for holding a function
1411 computing the maximum stretch a system allows.
1413 * scm/layout-page-dump.scm (write-page-breaks): computes the
1414 stretch to apply to systems on a page to minimize left
1415 space. Dump this stretch length.
1417 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1418 the system-stretch property of the tweak data to stretch the
1420 (includePageLayoutFile): Void function which includes the
1421 generated page-layout file if it exists and if the page layout
1422 dumping is not asked.
1423 (scoreTweak): if the score tweak named by the argument exists,
1426 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1428 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1429 handle correctly the case where there are multiple \noPageBreaks
1432 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1434 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1436 * abc2ly.py fix so that entering " -- " will translate to a -- in
1437 the lilypond instead of a " - - "
1439 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1441 * lily/align-interface.cc: fix typo
1443 * lily/dynamic-text-spanner.cc (print): Add a special case for
1444 trill spanner right sides.
1446 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1448 * lily/align-interface.cc (get_extents_aligned_translates): add
1449 support for padding variable.
1451 * lily/break-align-interface.cc (self_align_callback): oops: use
1452 loop variable in guard.
1454 * input/regression/repeat-percent-grace.ly: new file.
1456 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1457 remember first currentCommandColumn of a grace run. Fixes issue 70.
1459 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1460 move class definition to CC file.
1462 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1464 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1465 measure-long repeats.
1467 * flower/include/international.hh: include stdarg.h
1469 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1471 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1472 put_systems_on_pages to return an empty result, we need to assign
1473 demerits properly in that case.
1474 (put_systems_on_pages): Make the number of pages depend on the
1475 evenness of page_number. Add auto-first-page-number.
1476 (calc_subproblem): ensure that the page-number is even for the
1477 left-hand page. Warn if the first page-turn doesn't fit onto the
1478 first (right-hand) page.
1480 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1481 (min_page_count): make this publicly accessible
1482 (min_page_count): fix a bug when there are forced page breaks that
1483 was introduced when I made this loop run backwards
1484 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1485 replace space_systems_on_min_pages with these two. The logic in
1486 space_systems_on_min_pages was getting too convoluted and is better
1487 contained in page-turn-page-breaking.
1489 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1491 (breakable_column): typo
1493 * lily/source-file.cc (get_line): fix off-by-one error
1494 and clean up some of the logic
1496 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1498 * lily/page-breaking.cc (make_pages): honour the first-page-number
1501 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1503 * VERSION (PACKAGE_NAME): bump version.
1505 2006-09-26 Pal Benko <benko.pal@gmail.com>
1507 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1508 (the latter is the same as petrucci-f which is kept for compatibility)
1510 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1512 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1514 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1516 * lily/global-context.cc (run_iterator_on_me): break out of loop
1517 if moment doesn't increase.
1519 * scm/define-grob-properties.scm (all-user-grob-properties): add
1522 * lily/accidental.cc (after_line_breaking): read forced property.
1524 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1527 * input/regression/accidental-forced-tie.ly: new file.
1529 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1531 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1533 * lily/figured-bass-engraver.cc: only listen to rest events if
1534 ignoreFiguredBassRest is not set.
1536 * scm/define-context-properties.scm
1537 (all-user-translation-properties): add ignoreFiguredBassRest property
1539 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1541 * lily/paper-book.cc (get_system_specs):
1542 (set_system_penalty): fix breakbefore.
1543 We used to set a penalty on the system after the break, now we
1544 set a permission on the system before the break
1546 * lily/grob-property.cc: add scm debugging hooks into
1547 property modification
1549 * lily/context-property.cc:
1551 rename make_foo_from_properties to internal_make_foo and
1552 move it from context-property.cc to a member function of
1555 * lily/include/lily-guile-macros.hh:
1556 overload ly_symbol2scm macro so that there is no more need
1559 * lily/volta-repeat-iterator.cc:
1560 * lily/tweak-engraver.cc:
1561 * lily/tuplet-bracket.cc:
1562 * lily/span-bar-engraver.cc:
1563 * lily/script-engraver.cc:
1564 * lily/prob-scheme.cc:
1565 * lily/pointer-group-interface.cc:
1567 * lily/grob-scheme.cc:
1568 * lily/grob-property.cc:
1570 * lily/context-property.cc:
1571 * lily/break-substitution.cc:
1572 * lily/break-align-engraver.cc:
1573 * lily/axis-group-interface.cc:
1574 * lily/align-interface.cc:
1575 remove calls to internal_FOO
1577 * lily/system-start-delimiter-engraver.cc:
1578 * lily/parenthesis-engraver.cc:
1579 * lily/accidental-engraver.cc:
1580 remove calls to make_foo_from_properties
1582 2006-09-23 Graham Percival <gpermus@gmail.com>
1584 * Documentation/user/programming-iterfaces.itely: fix
1585 def-music-function -> define-music... leftover.
1587 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1589 * lily/page-spacing.cc (min_page_count): by running the loop
1590 backwards, we can calculate ragged_last properly.
1592 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1594 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1595 printfirst-page-number -> print-first-page-number
1597 * python/convertrules.py: corresponding rule.
1599 * Documentation/user/page.itely (Page formatting): Document the
1600 default values of all page layout parameters.
1602 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1604 * lily/lexer.ll: remove limitation on music function arity. New
1605 mode extratoken, which inserts extra EXPECT_* tokens after
1606 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1608 * lily/parser.yy: Change grammar for music function accordingly.
1610 * lily/include/lily-parser.hh: New method get_state, new member
1611 hidden_state. Works around a problem when parser fetches
1612 MUSIC_FUNCTION token but not the following EXPECT_* token.
1614 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1617 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1618 references to Music; use ASSIGN_EVENT_ONCE everywhere
1620 * lily/grob-info.cc: junk *music_cause
1622 * lily/music.cc: copy eventified articulations to stream event
1624 * lily/part-combine-iterator.cc: Cleanup using enums
1626 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1629 * lily/include/engraver.hh: Junk music.hh include
1631 * lily/stream-event.cc: Changed constructors
1633 2006-09-21 Graham Percival <gpermus@gmail.com>
1635 * Documentation/user/tweaks.itely (Fitting music onto fewer
1636 pages): change settings to avoid warning messages.
1638 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1640 * Documentation/user/tweaks.itely (Fitting music onto fewer
1641 pages): Add between-system-space setting.
1643 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1645 * lily/accidental-placement.cc (calc_positioning_done): don't
1646 trigger Y-extent calculation too early. Use pure_height instead.
1648 * lily/scale.cc (LY_DEFINE): new file.
1650 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1652 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1653 that happen at the start of a score: having a zero-length
1654 chunk was messing up min_system_count calculations.
1656 * lily/source-file.cc (get_line): lower_bound, not
1657 binary_search. Fixes problem where point-and-click would
1658 always point to the first line.
1660 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1662 * lily/accidental-placement.cc (calc_positioning_done): also put
1663 stems into accidental support.
1665 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1668 * scm/script.scm (default-script-alist): avoid-slur and
1669 slur-padding for portato script.
1671 * lily/stem-tremolo.cc (translated_stencil): new function.
1672 (height): use new function. Fixes tremolos on whole notes.
1674 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1677 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1679 * scripts/abc2ly.py (try_parse_comment): idem.
1681 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1682 bar_string iso. string.find()
1686 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1689 2006-09-18 Graham Percival <gpermus@gmail.com>
1691 * Documentation/user/basic-notation.itely: add bug
1692 warning about ties and octavation/clef.
1694 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1696 * VERSION (PACKAGE_NAME): release 2.9.18
1698 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1700 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1701 figure out midi file names right here.
1703 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1705 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1707 * scm/backend-library.scm: option naming: gs-font-load*s*
1709 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1712 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1714 * scm/define-music-types.scm (music-descriptions): remove
1715 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1716 Music::to_event doesn't complain.
1718 * lily/accidental-placement.cc (ape_compare):
1719 * lily/semi-tie.cc (compare):
1720 * lily/note-column.cc (shift_compare): replace by XXX_less
1722 * lily/tie-formatting-problem.cc (set_chord_outline):
1723 * lily/tie-column.cc (calc_positioning_done):
1724 * lily/system.cc (post_processing)
1726 * lily/stem.cc (note_head_positions)
1727 (calc_positioning_done):
1728 * lily/spanner.cc (do_break_processing)
1729 (find_broken_piece):
1730 * lily/span-bar.cc (print):
1731 * lily/semi-tie-column.cc (calc_positioning_done):
1732 * lily/rest-collision.cc (calc_positioning_done):
1733 * lily/program-option.cc (get_help_string):
1734 * lily/note-collision.cc (get_clash_groups):
1735 * lily/new-fingering-engraver.cc (position_scripts):
1736 * lily/keyword.cc (Keyword_table):
1737 * lily/hara-kiri-group-spanner.cc (request_suicide):
1738 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1739 * lily/accidental-placement.cc (calc_positioning_done):
1741 * lily/beam.cc (get_beam_segments):
1742 * lily/grob-array.cc (remove_duplicates):
1745 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1746 ragged-last-bottom = ##f (test the new page breaker)
1748 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1750 * scm/define-context-properties.scm
1751 (all-internal-translation-properties): remove properties that
1752 were used to communicate page-turn stuff to the paper-column
1755 * lily/lily-guile.cc (robust_scm2string): new function
1757 * lily/paper-column-engraver.cc: Clean up page turn stuff
1759 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1760 instead of cluttering up paper-column-engraver.cc
1762 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1764 * scm/layout-page-dump.scm (scm): export utility function names,
1765 to allow user writing cutsom dumping functions.
1767 * scm/layout-page-layout.scm: export utility function names to
1768 enable custom page breaking function writing. Tabify.
1769 (line-next-space): use ?-suffix only for predicates
1770 (page-maximum-space-to-fill): new function. Return the space
1771 between first and bottom system of a page, to give to
1773 (space-systems): use a space-to-fill argument (for instance as
1774 computed by page-maximum-space-to-fill) instead of computing
1775 internaly this space with the page height. That way, the caller
1776 can adjust the space to use.
1777 (make-page-from-systems, walk-paths): compute space to fill before
1778 calling space-systems.
1780 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1782 * scm/script.scm (default-script-alist): set paddings for every
1783 type here, increase for portato mark.
1785 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1788 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1790 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1791 use spanner::set-spacing-rods
1793 * lily/note-column.cc: reformat.
1795 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1796 step positioning for note/rest combinations.
1798 * input/regression/rest-note-collision.ly: new file.
1800 * scm/define-grobs.scm (all-grob-descriptions): add
1803 * flower/include/std-vector.hh: switch off again.
1805 * VERSION (PATCH_LEVEL): bump to 2.9.18
1807 * flower/include/std-string.hh: idem.
1809 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1811 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1813 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1816 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1818 * Documentation/user/page.itely: update page breaking documentation
1820 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1822 * lily/note-collision.cc (calc_positioning_done): only access
1823 first head if available.
1825 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1827 * scm/framework-ps.scm (output-preview-framework): use new name.
1829 * lily/program-option.cc (internal_set_option): use new names.
1831 * Documentation/user/SConscript (lilypond_book_flags): update -d
1834 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1835 output into other programs): new variable names.
1837 * scm/lily.scm (define-scheme-options): uniformize var names.
1839 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1840 tuplets_ is non-empty before popping.
1842 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1844 * lily/spanner.cc (find_broken_piece):
1845 * lily/spacing-spanner.cc (get_columns):
1846 * lily/source-file.cc (get_line):
1847 * lily/simple-spacer.cc (get_column_description):
1848 * lily/keyword.cc (lookup):
1849 use the new binary search.
1851 * flower/include/std-vector.hh: replace binary_search with
1852 a more STL-like version
1854 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1856 * lily/tie-performer.cc: remove unused last_event_ property.
1857 (class Tie_performer): add now_tied_heads_ property for
1858 partially-tied heads.
1859 (acknowledge_audio_element): when adding an Audio_note, put the
1860 note in now_tied_heads_ if the audio note is partially tied.
1861 (stop_translation_timestep): always include entries in
1862 now_tied_heads_ in heads_to_tie_.
1864 * lily/drum-note-performer.cc (process_music): look for tie-events
1865 in the articulations; pass to Audio_note constructor.
1867 * lily/note-performer.cc (process_music): look for tie-events in
1868 the articulations; pass to Audio_note constructor.
1870 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1873 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1874 include initializer in constructor.
1876 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1878 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1879 unless they are breakable. This fixes discrepancies between the forces
1880 calculated here and the forces calculated in get_line_configuration.
1882 * lily/grob.cc (pure_relative_y_coordinate): fix some
1883 mis-estimation that was happening with piano staves.
1885 * lily/constrained-breaking.cc (resize): don't choke if we get a
1886 measure that won't fit on a line.
1887 (combine_demerits): don't consider uniformity when ragged
1889 * lily/page-spacing.cc (solve): why the f* were there two of these?
1890 (calc_subproblem): properly handle the case where a system is taller
1893 * lily/system.cc (get_paper_system): ensure that all the permissions
1894 and penalties are passed to the paper systems.
1896 * lily/page-breaking.cc (create_system_list): support system-count.
1898 * scm/define-grobs.scm (pure-print-callbacks): add
1899 ly:script-interface::print
1901 * lily/page-spacing.cc (min_page_count): fix calculation of min
1902 pages if we are ragged and there are non-zero springs.
1904 * scm/layout-page-layout.scm: if the pure-height estimates are under
1905 the real height, allow space-systems to ignore padding if it is
1906 needed in order to fit the systems on one page
1908 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1910 (solve): fix performance problem. Make sure we always get at least
1913 * lily/page-breaking.cc (make_pages): include write-page-breaks
1916 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1918 * scm/define-grobs.scm: add the new slur-callback
1919 fix pure-relevant to not exclude grobs whose extent is already
1922 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1925 * lily/slur.cc (pure_height): new callback to estimate the height
1928 2006-09-02 Graham Percival <gpermus@gmail.com>
1930 * Documentation/user/invoking.itely: small update on
1931 MacOS X notes; thanks Trevor!
1933 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1935 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1937 * lily/lexer.ll: accept EOF in all states.
1939 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1941 * lily/source-file.cc (Source_file): always 0-terminate character
1942 array, to prevent Flex from barfing.
1944 * lily/global-context.cc (get_output): robustness: don't crash if
1945 no Score context found.
1947 * lily/include/book.hh (class Book): idem.
1949 * lily/include/context-def.hh (struct Context_def): idem.
1951 * lily/include/score.hh (class Score): don't derive from Input.
1953 * lily/book.cc (Book): add a copy ctor.
1955 * buildscripts/output-distance.py (FileLink.calc_distance): count
1956 orphans in distance too.
1958 * python/midi.c (midi_parse_track): robustness: don't read past
1961 * ly/performer-init.ly: add Control_track_performer, move
1962 Tempo_performer and Time_signature_performer to Score.
1964 * lily/score-performer.cc (acknowledge_audio_elements): override
1965 from base class: add to audio-columns
1967 * lily/control-track-performer.cc (add_text): new file: generate
1970 * lily/performance.cc: move output_header_track to
1971 Control_track_performer ()
1973 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1975 * lily/include/midi-item.hh (class Midi_channel_item): insert
1976 class into hierarchy, for items that can have a channel setting. Dehungarify.
1978 * lily/include/performer.hh (class Performer): remove
1979 play_element(); move functionality into announce/acknowledge.
1981 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1983 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1984 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1986 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1988 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1991 * lily/all-font-metrics.cc: remove TFM support.
1993 * lily/include/tfm.hh: remove TFM support, TFM reader.
1995 * lily/include/binary-source-file.hh: remove Binary_source_file.
1997 2006-08-27 Graham Percival <gpermus@gmail.com>
1999 * Documentation/topdocs/NEWS.itely: add @c marker for
2000 stuff I've processed.
2002 * Documentation/user/ various: info from NEWS.
2004 2006-08-27 Joe Neeman <joeneeman@gmail.com>
2006 * lily/paper-column-engraver.cc (finalize): Oops, this change
2007 should have gone in on 2006-08-23
2009 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
2011 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
2012 quotes to quote arguments. Fixes Windows problem.
2014 * python/lilylib.py (progress): idem
2016 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2018 * scripts/musicxml2ly.py: fix for importing
2019 minor key signatures from MusicXML. (Phillip Kirlin)
2021 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
2023 * python/musicxml.py:
2024 (Attributes.get_key_signature): now correctly retrieves mode from
2027 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2029 * lily/parser.yy (output_def_body): take ownership of identifier
2032 * Documentation/user/advanced-notation.itely (Metronome marks):
2033 update use of \tempo in \midi.
2035 * VERSION: release 2.9.16
2037 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
2039 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2042 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2044 * input/regression/tie-chord-partial.ly: clarify example.
2046 * scm/define-music-properties.scm (all-music-properties): remove
2049 * ly/music-functions-init.ly: remove \untied.
2051 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2052 stream events and music events.
2053 (stop_translation_timestep): search acknowledged heads for
2056 * input/regression/tie-chord-partial.ly: new file.
2058 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2059 for \char markup command.
2061 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2063 * scm/define-music-types.scm (music-descriptions): consistency:
2064 Use solo-{one,two}-event iso. solo-[12]-event.
2066 * lily/part-combine-engraver.cc (process_music):
2067 Use solo-{one,two}-event iso. solo-[12]-event.
2069 * ly/declarations-init.ly (partCombineListener): add Timing as
2072 * flower/std-string.cc (string_copy): use copy ()
2074 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2076 2006-08-24 Graham Percival <gpermus@gmail.com>
2078 * Documentation/user/changing-defaults.itely, global.itely,
2079 lilypond-book.itely, page.itely: minor changes from mailist.
2081 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2083 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2086 * scm/define-context-properties.scm
2087 (translator-property-description): robustness: detect type errors
2088 in property definitions.
2090 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2091 after getting it from SCM.
2093 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2096 * lily/include/performer.hh (class Performer): strip get_tempo()
2099 * lily/midi-def.cc: strip file.
2101 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2103 * lily/include/context-def.hh (struct Context_def): use
2104 VIRTUAL_COPY_CONSTRUCTOR().
2106 * lily/source-file.cc: smobification.
2108 * lily/include/source-file.hh (class Source_file): smobify
2109 Source_file. Trim redundant members.
2111 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2112 clones after creation. This plugs a huge memory leak.
2114 * python/convertrules.py (FatalConversionError.sub_tempo):
2115 complete rule for \midi{ \tempo }
2117 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2119 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2121 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2123 * input/regression/optimal-page-breaking-hstretch.ly: test for
2124 ragged-last-bottom also
2126 * lily/paper-column-engraver.cc (finalize): make the end of a score
2127 breakable by default. This is to balance out a change in behaviour
2128 of the page-turn-breaker which no longer makes the end of a score
2131 * lily/paper-book.cc (pages): set the systems_ once the pages are
2134 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2135 Page_breaking interface.
2137 * lily/page-breaking.cc (class Page_breaking): make the interface
2138 more consistent and provide abstractions for dealing with
2141 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2142 algorithm. Use the new interface to Page_breaking.
2144 * lily/page-spacing.cc: better support for ragged-bottom and
2147 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2149 * python/convertrules.py (conv): warning on \tempo{}
2151 * ly/performer-init.ly: set tempoWholesPerMinute.
2153 * ly/midi-init.ly: remove \midi
2155 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2158 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2159 tempoUnitDuration for determining what to print.
2161 * lily/lyric-extender.cc: typo.
2163 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2165 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2168 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2170 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2171 eps-pad-boxes is set.
2173 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2175 * THANKS: update sponsors.
2177 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2179 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2181 * input/regression/tie-chord-untied.ly: new file.
2183 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2185 * scm/define-music-properties.scm (all-music-properties): add
2188 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2190 (headertext_nopics): sanitize no-examples text.
2192 * scm/page.scm (make-page-stencil): don't rely on extents of
2193 page-stencil. This fixes spurious space around .EPS files produced
2194 with the EPS backend.
2196 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2198 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2200 * lily/hara-kiri-engraver.cc (process_music): remember
2201 keepAliveInterfaces after processing \set
2203 * lily/lyric-extender.cc (print): support left/right-padding for
2206 * scm/documentation-generate.scm (string-append): revert lilypond/
2209 2006-08-20 Graham Percival <gpermus@gmail.com>
2211 * Documentation/user/lilypond.tely: clarification to
2212 license presentation (not to actual license).
2214 * Documentation/user/basic-notation.itely,
2215 instrument-notation.itely: minor changes.
2217 * input/ {regression, test}/+.ly: clarification to
2218 text (you can click on examples). Thanks, Mats!
2220 * input/manual/bar-lines.ly: adds ||: repeats.
2222 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2224 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2226 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2228 * Documentation/user/lilypond.tely: strip lilypond/ from info
2229 links, rename to category LilyPond
2231 * lily/pango-font.cc (description_string): new function.
2233 * VERSION: release 2.9.15
2235 * lily/spacing-engraver.cc (stop_translation_timestep): use
2236 Dscho's fix for spacing spanner.
2238 * scm/define-music-types.scm (music-descriptions): use
2239 apply-output-event for ApplyOutputEvent
2241 * lily/output-property-engraver.cc (listen_apply_output): rename
2242 from listen_layout_instruction.
2244 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2247 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2249 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2250 commandline args with contains, split by \n.
2252 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2253 write snippet-names file, call with -dread-file-list. Fixes
2254 command limitations on 64-bit systems.
2256 * input/regression/stencil-color-rotation.ly: new file.
2258 * lily/include/translator.hh (struct Acknowledge_information):
2259 revert: don't use Protected_scm in global objects, as GUILE can't
2260 handle gc_unprotect from automated destructors on MacOS X.
2262 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2263 color, not the original stencil. Fixes combinations of
2264 color/transparency/rotation.
2266 * scripts/lilypond-book.py (main): add --formats=eps for
2269 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2270 crash if spacing_ is nonexistent.
2272 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2274 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2275 \catcode`\@=12 in the LaTeX output.
2277 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2279 * scm/define-music-types.scm (music-descriptions):
2280 use sustain-event iso. sustain-pedal-event.
2282 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2284 * scripts/convert-ly.py: honour the -n command-line switch
2286 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2288 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2289 break specification.
2291 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2293 * Documentation/user: convert-ly the user manual
2295 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2297 * stepmake/aclocal.m4: version check patch (thanks MWD)
2299 * ly/music-functions-init.ly: robustness. Don't crash if
2300 currentBarNumber is not a number.
2302 * VERSION (PATCH_LEVEL): bump.
2304 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2306 * stepmake/aclocal.m4: better version check; handle fooX.Y
2309 * ly/performer-init.ly: instrument name fixup.
2311 * input/manual/chord-names-jazz.ly (banterProperties):
2312 instrumentName update
2314 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2316 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2318 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2319 function. Use hash tables to check membership.
2321 * lily/general-scheme.cc (LY_DEFINE): new function.
2323 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2325 * lily/include/translator.hh (struct Acknowledge_information): add
2328 * ly/music-functions-init.ly: change name to BreathingEvent
2330 * input/regression/*.ly: apply it.
2332 * python/convertrules.py (conv): better instrumentName conversion
2335 * scm/define-music-types.scm (music-descriptions): add
2336 line-break-event to LineBreakEvent music
2338 * lily/music.cc (to_event): don't crash if music type not set.
2340 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2343 * lily/spacing-engraver.cc (stop_translation_timestep): set
2344 spacing for proportional notation too.
2346 * scm/translation-functions.scm (format-bass-figure): inspect
2349 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2351 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2353 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2355 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2357 * scm/layout-page-layout.scm (make-page-from-systems): new function
2358 (optimal-page-breaks): use the new page-breaking calling convention
2360 * scm/define-context-properties.scm (all-user-translation-properties):
2363 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2364 revokePageTurns functionality. If there is a special barline within
2365 the breakable region, break there instead of at the end of the region.
2367 * lily/paper-book.cc (pages): use the new page-breaking calling
2370 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2372 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2374 * scripts/lilypond-book.py: insert \sourcefileline command in
2375 output, so lilypond error messages refer to the spot in the
2376 original .lytex / .itely sourcefile.
2378 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2380 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2381 space to next column for distance to fixed col.
2383 * VERSION (PACKAGE_NAME): release 2.9.14
2385 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2388 * lily/accidental-engraver.cc (process_acknowledged): don't create
2389 accidental for trill span event. This fixes spurious accidentals
2392 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2394 * scm/define-grob-properties.scm (all-user-grob-properties):
2395 Clarify documentation of side-axis and direction. Thanks to Paul
2396 for the inspiration.
2398 * lily/bar-line.cc: Add documentation for "||:" also in the
2399 interface documentation.
2401 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2403 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2405 * lily/paper-column.cc (set_system): new function.
2407 * lily/spacing-engraver.cc (stop_translation_timestep): store
2408 SpacingSpanner refs in Paper_column.
2410 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2411 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2413 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2415 * lily/beam-engraver.cc (listen_beam): add method for
2416 Grace_beam_engraver too.
2418 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2420 * python/convertrules.py: Fix indentation bug that broke
2421 conversion of files older than 1.3.117.
2422 Fix escape error in the description for 2.9.6.
2424 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2426 * lily/*-engraver.cc: convert all try_music functions to listen_*
2429 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2430 enums to represent pedal types, and calculate more data statically.
2432 * scm/part-combiner.scm (recording-group-emulate): create a
2433 softcoded substitute for recording-group-engraver.cc.
2435 * lily/music.cc: make a common transpose function for events and
2438 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2439 ManualMelismaEvent, and obsoletes Melisma_translator.
2441 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2443 * input/test/instrument-name-align.ly: update version.
2445 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2447 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2448 Doc the --pdf flag to lilypond-book.
2450 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2452 * Documentation/topdocs/NEWS.tely (Top): add description.
2454 * input/regression/tuplet-full-length-note.ly: add file.
2456 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2457 always store axis group.
2459 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2461 * input/regression/instrument-switch.ly: new file.
2463 * lily/instrument-switch-engraver.cc (process_music): new file.
2465 * ly/engraver-init.ly: add Instrument_switch_engraver
2467 * ly/music-functions-init.ly: \instrumentSwitch
2469 * scm/define-context-properties.scm
2470 (all-user-translation-properties): add instrumentCueName
2472 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2474 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2476 * ly/music-functions-init.ly: music function \transposition.
2478 * lily/parser.yy (command_element): softcode \transposition.
2480 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2481 (process_music): oops.
2483 * lily/instrument-name-engraver.cc (start_spanner): new
2484 function. Create spanner when property changes.
2485 (stop_spanner): new function.
2487 * python/convertrules.py (conv): add rule.
2489 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2490 shortInstrumentName iso. instr.
2492 * scm/output-ps.scm (dashed-line): add phase argument to
2495 * lily/bar-line.cc (dashed_bar_line): new function.
2496 (compound_barline): support \bar "dashed".
2498 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2499 --output=DIR to DIR/BASE if it is a dir.
2501 * flower/file-name.cc (file_part): new function
2502 (dir_part): new function
2504 * lily/lily-parser-scheme.cc (LY_DEFINE):
2506 * DEDICATION: update
2508 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2510 * lily/instrument-name-engraver.cc: formatting.
2512 * python/convertrules.py (conv): bugfix for \epsfile.
2514 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2518 * lily/gourlay-breaking.cc: Oops, these should have been included
2521 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2523 * scripts/*.py (program_name): cleanup relocation snippets.
2525 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2527 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2529 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2530 page-breakable by default
2532 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2533 correctly calculated for a single-system page
2535 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2536 bigger than the second number
2538 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2539 acknowledge that we aren't satisfying constraints)
2541 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2544 * lily/grob.cc (pure_height): add minimum-Y-extent
2546 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2549 * lily/constrained-breaking.cc: convert code to use new Matrix class
2550 (get_best_solution): new function
2552 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2553 is a page with no systems
2555 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2557 * VERSION (PACKAGE_NAME): release 2.9.13
2559 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2562 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2564 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2566 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2569 * scm/define-grob-properties.scm (all-user-grob-properties):
2570 remove grace-space-factor.
2572 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2573 grace-spacing-interface
2574 (spacing-options-interface): add.
2576 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2578 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2580 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2581 GraceSpacing object.
2583 * lily/note-spacing.cc: fix prop list formatting
2585 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2586 beaming for grace notes too.
2588 * input/regression/spacing-grace.ly: update.
2590 * lily/grace-spacing-engraver.cc: new file.
2592 * lily/spacing-spanner.cc: add strict-grace-spacing.
2594 2006-07-20 Graham Percival <gpermus@gmail.com>
2596 * lily/parser.yy: compile fix.
2598 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2600 * scm/define-grobs.scm (all-grob-descriptions): typo.
2602 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2603 .eps extension from includegraphics.
2605 * scripts/lilypond-book.py (main): add support for --pdf.
2607 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2608 callback to compute common shortest duration.
2609 (set_springs): typo.
2611 * scm/define-grob-properties.scm (all-user-grob-properties): add
2612 strict-grace-spacing.
2614 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2615 support float_grace_columns_.
2617 * lily/spacing-options.cc (init_from_grob): new file.
2619 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2621 * input/regression/spacing-loose-grace.ly: new file.
2623 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2625 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2626 tupletFullLengthNote too. Choose right bound depending on value.
2628 * input/regression/tuplet-full-length-note.ly: new file.
2630 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2632 * lily/*-performer.cc: Converted try_music to listen_*
2634 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2635 as a stream-event internally. Introduce event_cause (), deprecate
2638 * scm/define-music-types.scm: Removed BusyPlayingEvent
2640 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2642 * Documentation/user/advanced-notation.itely (Font selection):
2643 Document how to get a list of available fonts using 'lilypond
2644 -dshow-available-fonts blabla'.
2646 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2648 * GNUmakefile.in: filter lily-XXX.pdf files.
2650 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2652 * scm/define-grob-properties.scm (all-internal-grob-properties):
2653 remove delta-pitch. Use delta-position everywhere.
2655 * scm/output-lib.scm (fall::print): use new order.
2657 * scm/output-ps.scm (path): reorder arguments.
2659 * scm/output-svg.scm (path): support for path primitive.
2661 * input/regression/bend-after.ly: new file.
2663 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2664 recipe for eps -> pdf conversion.
2666 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2668 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2671 2006-07-19 Graham Percival <gpermus@gmail.com>
2673 * input/manual/screech-boink.ly: moved to here.
2675 * input/screech-boink.ly: deleted.
2677 * scm/define-grob-properties.scm: clarify doc string.
2679 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2681 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2683 * scm/output-ps.scm (path): define path.
2685 * scm/define-stencil-commands.scm
2686 (ly:register-stencil-expression): add path.
2688 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2690 * ly/engraver-init.ly: add Fall_engraver
2692 * lily/parser.yy (music_function_event): allow musicfunction
2693 without music arg as music_function_event.
2695 * lily/grob-scheme.cc (LY_DEFINE):
2696 ly:grob-robust-relative-extent. New function.
2698 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2700 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2702 * scm/output-lib.scm (fall::print): new function
2704 * lily/fall-engraver.cc (stop_fall): new file.
2706 * ly/music-functions-init.ly: alphabetise.
2708 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2711 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2713 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2715 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2718 * lily/translator-group.cc (connect_to_context): non const error message.
2720 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2722 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2725 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2727 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2729 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2732 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2734 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2736 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2738 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2740 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2742 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2744 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2746 * scm/layout-page-layout.scm: Define module, tidy code, use more
2747 functions iso. a single big one.
2749 * scm/layout-page-dump.scm: move page dump functions used in two
2750 pass spacing to this file. Define module.
2752 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2755 * ly/paper-defaults.ly: use module layout-page-layout.
2757 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2759 * lily/music.cc: Revised MusicEvent event class. It now contains
2760 event data directly instead of encapsulating it in music. The
2761 previously used class is renamed to OldMusicEvent.
2763 * lily/stream-event.cc: Stream events are now probs.
2765 * lily/translator-group.cc, lily/translator.cc: Translators can
2766 now listen directly to stream events, by using macros
2767 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2769 * lily/arpeggio-engraver.cc: Converted to use new event system
2771 * THANKS: Corrected spelling mistake.
2773 2006-07-12 Graham Percival <gpermus@gmail.com>
2775 * Documentation/user/SConscript, make/lilypond-vars.make,
2776 input/GNUmakefile: doc build looks in input/manual instead
2779 * input/manual/ GNUmakefile, SConscript: build files for
2782 * input/test/ various: some files moved to input/manual/
2784 * Documentation/user/basic-notation.itely: small updates;
2785 thanks Kieren and Charles!
2787 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2789 * VERSION (PACKAGE_NAME): release 2.9.11
2791 * Documentation/topdocs/NEWS.tely (Top): update prop value
2793 * Documentation/user/basic-notation.itely (Tuplets): new property
2796 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2798 * python/convertrules.py (conv): tweaks.
2800 * VERSION (PATCH_LEVEL): bump version.
2802 * python/convertrules.py (conv): add rule for
2803 tupletNumberFormatFunction.
2805 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2806 tupletNumberFormatFunction.
2808 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2809 text through 'text callback.
2811 * lily/time-scaled-music-iterator.cc (construct_children): copy
2812 tweaks generated events.
2814 * scm/define-context-properties.scm
2815 (all-user-translation-properties): remove tupletNumberFormatFunction
2817 * lily/tuplet-engraver.cc (process_music): don't read
2818 tupletNumberFormatFunction
2820 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2823 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2825 * lily/global-context-scheme.cc: Separated ly:run-translator into
2828 * lily/score-engraver.cc, lily/score-performer.cc,
2829 scm/define-context-properties.scm: Make paper/midi output
2830 accessable as a context property.
2832 * lily/score-translator.cc, lily/score-context.cc: Removed.
2834 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2836 * scm/ps-to-png.scm (Module):
2837 * scm/framework-tex.scm (Module):
2838 * scm/framework-ps.scm (Module):
2839 * scm/backend-library.scm (Module):
2840 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2841 "dDEVICEHEIGHTPOINTS".
2843 2006-07-04 Graham Percival <gpermus@gmail.com>
2845 * Documentation/user/ various: general improvements to
2846 "working with lilypond files" section.
2848 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2850 * lily/sequential-iterator.cc: Change the default get_music_list
2851 to read elements-callback music property
2853 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2854 processing of multimeasure rests. Softcoded
2855 sequential-music-iterator.
2857 * lily/sequential-music-iterator.cc: Removed.
2859 2006-06-28 Graham Percival <gpermus@gmail.com>
2861 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2863 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2865 * lily/parser.yy: Wrap non-post-events in EventChords before
2866 assigning them to identifiers.
2868 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2870 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2871 gives correct vertical placement of \bar ":" in all staff
2872 sizes. Thanks Martial!
2874 2006-06-26 Graham Percival <gpermus@gmail.com>
2876 * Documentation/user/invoking.itely : minor update from mailist.
2878 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2880 * lily/ various: Introduce stream events of types Prepare,
2881 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2882 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2884 * lily/global-context*.cc: Time is now -inf before iteration
2887 * lily/include/context.hh: Removed unique_, init_
2889 * Documentation/topdocs/NEWS: Make the feathered beam example
2890 avoid triggering a bug.
2892 2006-06-24 Graham Percival <gpermus@gmail.com>
2894 * Documentation/user/ various: small additions from mailist.
2896 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2898 * ly/performer-init.ly: Add some missing links in the context
2899 hierarchy for MIDI output. There are probably some more missing!
2901 2006-06-21 Graham Percival <gpermus@gmail.com>
2903 * Documentation/user/ various: minor spelling fixes;
2904 thanks Dave Luttinen!
2906 * Documentation/user/ various: small clarifications;
2907 thanks Anthony Youngman!
2909 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2911 * po/fr.po: add \n appropriately.
2913 * lily/lexer.ll: remove ? from version-seen?
2915 2006-06-19 John Mandereau <john.mandereau@free.fr>
2917 * po/fr.po; update translation, by Jean-Charles Malahieude and
2920 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2922 * THANKS: add Markus Schneider.
2924 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2925 Staff_symbol_engraver
2927 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2928 replace staff_engraver
2930 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2933 * lily/staff-collecting-engraver.cc
2934 (acknowledge_end_staff_symbol): new function
2936 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2938 * lily/staff-collecting-engraver.cc
2939 (acknowledge_end_staff_symbol): new function.
2941 * lily/main.cc: switch on relocation by default.
2943 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2945 * lily/spacing-spanner.cc (musical_column_spacing): set
2946 compound_fixed_note_space to 0.0. Document why.
2948 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2949 range of inverse_hooke_
2950 (Simple_spacer): init completely.
2952 (get_line_configuration): don't use cols.resize(); it introduces
2955 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2957 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2959 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2960 try. Divide by beatlength.
2962 * input/regression/beaming-ternary-metrum.ly: update doc.
2963 add beatLength hack.
2965 * scm/music-functions.scm (make-time-signature-set): add
2966 standard-beat-grouping.
2968 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2970 * input/regression/tie-whole.ly: new file.
2972 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2973 cross center of note head in case of invisible stem.
2975 2006-06-16 Graham Percival <gpermus@gmail.com>
2977 * Documentation/user/ various: small fixes from mailist.
2979 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2981 * lily/breathing-sign.cc (offset_callback): idem.
2983 * lily/align-interface.cc (align_to_fixed_distance): remove
2986 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2989 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2991 * VERSION (PACKAGE_NAME): release 2.9.9
2993 * ly/lilypond-book-preamble.ly: add \version
2995 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2997 * scripts/lilypond-book.py (PREAMBLE_LY): include
2998 lilypond-book-preamble.ly
3000 * lily/stem.cc (get_beaming): return max of 0 and
3001 scm_ilength. Fixes slurring from/to beams.
3003 * ly/lilypond-book-preamble.ly: new file.
3005 * lily/slur.cc: add inspect-index feature.
3007 2006-06-13 Graham Percival <gpermus@gmail.com>
3009 * Documentation/user/tutorial.itely: trivial fix.
3011 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
3013 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
3014 all non-event music in the parser via MAKE_SYNTAX.
3016 * lily/parser-scheme.cc: Add ly:parser-error function
3018 * scm/paper.scm: fix typo
3020 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
3024 * lily/font-config.cc (init_fontconfig): add warning if cache_file
3027 * buildscripts/output-distance.py (test_compare_signatures):
3029 (read_signature_file): use new signature format.
3031 * scm/stencil.scm (write-system-signature): simpler signature
3034 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
3037 * lily/note-spacing.cc (stem_dir_correction): don't inspect
3038 stem_end_position, but estimate instead.
3040 * lily/tuplet-bracket.cc (calc_positions): look at
3041 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3042 brackets narrower than beams.
3044 * lily/lexer.ll: set version-seen? even if version is
3047 * lily/rest.cc (y_offset_callback): bugfix: decide position
3048 override based on scm_is_number(). Fixes \rest on center staff
3051 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3052 patterns for 16th triplets.
3054 2006-06-10 Graham Percival <gpermus@gmail.com>
3056 * Documentation/user/ page.itely, global.itely: editing
3059 * Documentation/user/ various: findex -> funindex.
3061 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3063 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3064 insert extra tuplet events.
3066 2006-06-10 Graham Percival <gpermus@gmail.com>
3068 * Documentation/user/programming-interfaces.itely: add
3071 * python/convertrules.py: add annotatefoo -> annotate-foo
3074 * Documentation/user/global.itely: start editing.
3076 * Documentation/user/page.itely: major editing, new spacing
3079 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3081 * scm/define-markup-commands.scm (wordwrap-markups): use
3082 output-def 'line-width if undefined.
3084 * HACKING: trim outdated info.
3086 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3088 * scm/define-grobs.scm (all-grob-descriptions): Add
3089 line-spanner-interface to all grobs that already have
3090 text-spanner-interface or dynamic-text-spanner-interface
3092 * scm/page.scm: Rename annotate{headers,systems,page}->
3095 * input/regression/page-spacing.ly,
3096 input/regression/page-layout-manual-position.ly: idem
3098 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3100 * lily/line-spanner.cc: cleanup property list.
3102 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3103 generator expressions (2.3 compat).
3105 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3107 * lily/vertical-align-engraver.cc: Make sure that the
3108 align{Above,Below}Context properties are included in the automatic
3111 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3113 * scm/paper-system.scm (paper-system-annotate): also annotate the
3114 estimated pure-Y-extent
3116 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3118 * lily/system.cc (break_into_pieces): set the estimated height
3119 of each child system
3121 * lily/stem.cc (pure_height): new pure-Y-extent callback
3123 * lily/staff-symbol-referencer.cc (callback): don't destroy
3124 the staff-position property
3126 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3127 consider_suicide into two functions
3129 * lily/constrained-breaking.cc (resize): use the new pure
3130 callbacks to estimate the height of a system
3132 * lily/axis-group-interface.cc (pure_group_height): new
3133 side-effect-free VerticalAxisGroup height-callback
3135 * lily/align-interface.cc (get_extents_aligned_translates):
3136 split align_elements_to_extents into two functions
3137 (get_pure_child_y_translation): new function
3139 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3141 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3143 * lily/paper-score.cc: cache break_indices and columns
3145 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3147 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3149 * lily/font-config.cc (init_fontconfig): do the init if
3150 cache_file, but don't look at cache_file.
3152 * input/regression/quote-tie.ly: new file.
3154 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3155 to Head_event_tuple, so we deal gracefully with ties on
3158 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3161 2006-06-08 Graham Percival <gpermus@gmail.com>
3163 * input/test/ smart-transpose.ly, reverse-music.ly:
3164 \applyMusic to music functions update, thanks Michael!
3166 2006-06-07 Graham Percival <gpermus@gmail.com>
3168 * input/test/ add-staccato.ly, add-text-script.ly,
3169 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3170 music functions update, thanks to Michael Meixner.
3172 * Documentation/user/music-glossary.tely: small fix
3175 * Documentation/user/ various: minor additions from mailist.
3177 * Documentation/user/lilypond.tely, basic-notation.itely:
3178 small test of @funindex. (works here)
3180 * input/test/font-table.ly: reduce size to partially
3181 de-ugly version in manual.
3183 * Documentation/user/page.itely: new file (split former
3184 "global issues" into "page settings" and "non-musical
3187 * Documentation/user/ various: fix @ref{}s to match
3188 new chapter names (above).
3190 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3192 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3194 2006-06-06 Graham Percival <gpermus@gmail.com>
3196 * Documentation/user/advanced-notation.itely: add example
3197 for segno/coda on barline.
3199 * tex/texinfo.tex: merge from upstream.
3201 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3203 * scripts/lilypond-book.py (process_snippets): Argument fix.
3206 * buildscripts/builder.py:
3209 * Documentation/user/SConscript: More SCons fixes.
3211 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3213 * lily/font-config.cc (init_fontconfig): Only initialize if
3214 global cache_file is found.
3216 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3218 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3221 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3223 * VERSION (PACKAGE_NAME): release 2.9.8
3225 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3226 function. Delay ledger modifying ledgered grobs to
3227 stop_translation_timestep(), to ensure that we're ledgering
3228 according to the new spanner.
3229 (acknowledge_staff_symbol): don't check for non-NULL
3230 staff_sym->get_bound()
3232 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3235 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3238 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3239 directly from srcdir/stepmake/aclocal.m4
3241 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3244 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3246 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3248 * lily/simple-spacer.cc (get_line_configuration): add
3249 keep-inside-line rods
3250 (struct Column_desc): add constructor
3251 (struct Rod_desc): add constructor
3252 (get_line_forces): check for forced page breaks here too
3254 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3255 support/elements cycles between InstrumentNames and AxisGroups
3257 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3259 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3261 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3262 make-txt-files target.
3264 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3265 make-txt-files target.
3267 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3269 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3272 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3274 * Documentation/user/instrument-notation.itely,
3275 input/regression/breathing-sign-ancient.ly,
3276 input/test/divisiones.ly: Removed redundant property settings for
3279 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3280 fix lyrics alignment problems. They are implemented now as scheme
3281 functions that add the appropriate unicode char to the first lyric
3282 event rather than adding a separate lyric event. Minor edit of
3285 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3287 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3288 pollute src dir with built .txt files, but install directly from
3289 Documentation/topdocs/out/
3291 * buildscripts/output-distance.py
3292 (ComparisonData.create_html_result_page): put version/directories
3295 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3298 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3299 Patch by Karl Hammar
3301 * buildscripts/readlink.py: add file.
3302 Patch by Karl Hammar
3304 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3306 * lily/tuplet-number.cc (print): prevent stencil from being
3309 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3311 * scm/stencil.scm (write-system-signature): explicitly
3312 -well, superfluously- close output port.
3314 * buildscripts/output-distance.py (main): oops. Add extra argument.
3316 2006-06-05 Graham Percival <gpermus@gmail.com>
3318 * Documentation/user/music-glossary.tely: clarified example
3319 from Francisco Vila, thanks!
3321 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3323 * input/regression/spacing-section.ly: new file.
3325 * lily/input.cc (programming_error): new function.
3327 * lily/spacing-engraver.cc (try_music): new function. Accept
3328 spacing-section-event
3330 * lily/spacing-spanner.cc (set_springs): take slices of all
3331 columns for spacing.
3333 * lily/include/paper-column.hh (class Paper_column): add
3334 Paper_column::compare.
3336 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3338 * scm/define-music-types.scm (music-descriptions): add
3341 * lily/music-iterator.cc (report_event): use programming_error for
3342 sending non-event error.
3344 * lily/input.cc (programming_error): new function
3346 * buildscripts/output-distance.py (main): use compare-XXX for
3348 (main): --threshold option, default at 0.30
3350 * output-distance.py (main): add --threshold option.
3352 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3354 * scm/paper-system.scm (paper-system-annotate): fix problem when
3355 annotating an empty system
3357 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3359 * GNUmakefile.in: reinstate old web tar/copying.
3361 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3363 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3364 nothing changes. (Erik S)
3366 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3369 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3371 * scm/define-markup-commands.scm (whiteout): do not force
3372 foreground color of argument markup to black.
3374 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3375 the left of the arrow, instead of below the arrow name, so that,
3376 when two little arrows are vertically stacked, their dimensions
3377 and name should not overlap. Add a color key parameter.
3379 * scm/paper-system.scm (paper-system-annotate): Annotate
3380 next-space+next-padding instead of next-space. Annotate space
3381 between next-padding and next-space+padding, respectively, and
3382 following system extent and refpoint-Y-extent. Use colors.
3384 * scm/page.scm (annotate-page): translate annotations slightly to
3387 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3389 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3390 fix for x-staff slurs. Thanks Joe!
3392 * buildscripts/output-distance.py
3393 (SystemLink.output_expression_change_count): keep track of changed
3394 details, and dump in details html page.
3396 * input/regression/figured-bass-staff.ly: add note about setting
3397 properties in Staff context.
3399 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3400 add slurs and ties to support too.
3402 * buildscripts/output-distance.py (main): set dest_dir
3403 argument. Add --max-count option.
3405 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3407 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3408 shortcuts for special unicode chars that are useful in chant
3409 notation. Revised exisiting and added new comments.
3411 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3413 * make/mutopia-rules.make: remove duplicate recipe.
3415 2006-06-02 Werner Lemberg <wl@gnu.org>
3417 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3418 Add support for U+0132 (IJ) and U+0133 (ij).
3420 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3422 * buildscripts/output-distance.py (FileLink): new class. collect
3423 info systems from one .ly file.
3424 (FileLink.link_files_for_html): further tweaks.
3426 2006-06-02 Graham Percival <gpermus@gmail.com>
3428 * tex/texinfo.tex: partial fix for @funindex.
3430 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3433 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3435 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3437 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3438 @example too. Backportme.
3440 2006-06-02 Graham Percival <gpermus@gmail.com>
3442 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3443 from Werner Lemberg.
3445 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3447 * Documentation/user/music-glossary.tely: additional spanish
3448 updates and a lyrics fix in an example.
3450 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3452 * scm/define-grob-properties.scm: Previous patch contained
3453 spurious line from another patch not yet committed. Fixed.
3455 * scm/define-grob-properties.scm: Add missing doc strings for
3458 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3460 * buildscripts/output-distance.py
3461 (ComparisonData.write_text_result_page): separate the scores, sort
3464 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3467 * buildscripts/output-distance.py (me_path): use argv[0] for
3469 (ComparisonData.img_cell): use colored borders.
3471 * scm/stencil.scm (write-system-signature): escape newlines too.
3472 (write-system-signature): use (1,-1) interval for empty interval
3474 2006-01-01 Graham Percival <gpermus@gmail.com>
3476 * Documentation/user/music-glossary.tely: Spanish updates
3477 from Francisco Vila.
3479 * Documentation/user/lilypond-book.itely: addition from
3482 * Documentation/user/ various: edits, small additions
3485 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3487 * GNUmakefile.in (tree-lib-prefix-current):
3488 (tree-share-prefix-current): Use version number in tree, add
3491 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3493 * GNUmakefile.in: write VERSION, again.
3495 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3496 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3498 * stepmake/aclocal.m4: robuster version detection.
3500 * buildscripts/output-distance.py
3501 (ComparisonData.create_html_result_page): copy only if file
3502 exists, fixup src paths.
3504 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3506 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3508 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3509 Another datarootdir reto.
3511 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3512 available. This should be moved to postinstall-lilypond-doc.
3514 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3516 * GNUmakefile.in: simplify local-WWW-post.
3517 remove -type l from find.
3519 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3520 fixes. Don't follow symlinks.
3521 (ComparisonData.create_html_result_page): remove previous results.
3522 insert ../python in path.
3524 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3526 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3528 * config.make.in (datadir): Add datarootdir to silence autoconf.
3530 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3532 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3534 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3536 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3537 slash beams too wide.
3539 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3541 * VERSION: release 2.9.7
3543 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3545 * lily/relocate.cc (read_relocation_dir): Do not blindly
3548 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3550 * lily/parser.yy: replace THIS by PARSER
3552 * Documentation/index.html.in: add link to test-results.html page.
3554 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3556 * scm/translation-functions.scm (format-bass-figure): translate
3557 digits over 10 to the left
3559 * scm/define-markup-commands.scm (translate-scaled): new markup.
3561 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3564 * ly/engraver-init.ly: add Figured_bass_engraver
3566 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3568 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3570 * lily/score-engraver.cc (announce_grob): only note START announces.
3572 * lily/include/engraver-group.hh (Translator_group):
3573 acknowledge_hash_table_ is now drul.
3575 * lily/engraver.cc (announce_end_grob): new method.
3577 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3579 * lily/translator-dispatch-list.cc (create): take start_end argument.
3581 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3582 acknowledge_static_array_ to drul
3584 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3586 * scm/define-grob-interfaces.scm
3587 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3589 * scm/define-grobs.scm (all-grob-descriptions): add
3590 BassFigureAlignmentPositioning
3592 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3593 number stays up to date. Backportme.
3595 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3597 * Documentation/user/basic-notation.itely (Bar lines): Document
3600 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3602 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3604 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3605 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3608 * Resurrect `scons lily' build.
3610 * SConstruct (symlink_tree): Bugfix: link
3611 music-drawing-routines.ps to file iso directory.
3613 * lily/SConscript: Remove kpath-guile from LIBS.
3615 * SConstruct (libdir_package_version): Typo.
3616 (configure): Comment-out fontforge for lack of fontforge.pc .
3617 Also add libdir* to environment.
3619 2006-05-30 Graham Percival <gpermus@gmail.com>
3621 * Documentation/user/ various: minor additions from mailist and
3624 2006-05-30 Paco <fravd@ya.com>
3626 * Documentation/user/music-glossary.tely: numerous corrections and
3627 some new translations.
3629 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3633 * buildscripts/output-distance.py
3634 (ComparisonData.create_html_result_page): new routine: summarise
3635 results in HTML page with images.
3636 (ComparisonData.create_text_result_page): create summary text files too.
3638 * GNUmakefile.in (web-ext): package .signature files too. They
3641 * scm/stencil.scm (write-system-signature): typo.
3643 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3645 * scm/stencil.scm (write-system-signature): better escaping.
3646 only write signature for music systems, not for markup systems.
3648 * scm/framework-ps.scm (output-framework): dump-signatures support
3651 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3653 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3654 for -dno-point-and-click
3656 * lily/grob.cc (get_print_stencil): don't read
3657 point_and_click_global to determine whether to set grob-cause.
3659 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3661 * buildscripts/output-distance.py (main): new function.
3662 (ComparisonData): new class.
3664 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3665 careful with generating new LedgerLineSpanners.
3667 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3669 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3670 context. This fixes double ledger lines in output.
3672 * lily/system.cc (get_paper_system): remove 3 layer limit.
3674 * buildscripts/output-distance.py (SystemLink.distance): new
3675 file. Compare signatures.
3677 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3679 * lily/grob-array.cc (remove_duplicates): rename from
3680 uniq(). Sort before calling uniq() so it actually works.
3682 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3684 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3685 \version from lilypond file snippet.
3686 (Lilypond_file_snippet.ly): oops. typo.
3687 (find_toplevel_snippets): urgh. again.
3689 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3690 prevent duplicated broken items in output.
3692 * scm/framework-eps.scm (output-classic-framework): only dump if
3693 dump-signatures is set.
3695 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3697 * scm/stencil.scm (write-system-signature): new routine: write
3698 python parseable signature of a separate paper system.
3701 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3703 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3707 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3709 * translator-group.cc: send music events to engravers in
3710 non-bottom contexts.
3712 * tuplet-engraver.cc: process tuplet brackets in correct order.
3714 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3716 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3717 arg 2 might point us to a new binary (patch by Karl Hammar)
3719 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3721 * VERSION (PACKAGE_NAME): release 2.9.6
3723 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3725 * Documentation/user/*.itely: 2nd
3726 attempt: replace funindex -> findex globally.
3728 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3730 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3731 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3733 * scm/define-music-display-methods.scm: display methods for
3734 breaks. Fix \applyOutput.
3736 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3738 * Documentation/user/macros.itexi: comment out funindex expansion.
3740 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3743 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3744 Karl Hammar. Backportme.
3746 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3748 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3750 * Documentation/user/programming-interface.itely (Running a
3751 function on all layout objects): idem.
3753 * Documentation/user/introduction.itely (Automated engraving):
3754 update \applyOutput syntax
3756 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3757 remove debugging hook.
3759 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3762 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3764 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3765 TEXI2DVI_FLAGS to texi2dvi invocation.
3767 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3769 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3770 works. More work is done by iterator now, and engraver has been
3771 very much simplified.
3773 * lily/translator-group.cc: try_music is now invoked through a
3776 * lily/*-iterator.cc: Massive cleanups. Junked
3777 try_music_in_children globally. Renamed try_music to report_event,
3778 and made that method descend to a bottom context automatically.
3780 * lily/event-iterator.cc: New file.
3782 * lily/output-property-iterator.cc,
3783 lily/old-lyric-combine-music-iterator.cc: Removed.
3785 * python/convert-rules.py: Modified the syntax for \applyOutput.
3787 2006-05-23 Graham Percival <gpermus@gmail.com>
3789 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3792 * Documentation/user/ various: stuff that might have helped
3793 to fix the pdf creation, plus some minor doc additions.
3795 * Documentation/user/changing-defaults.itely: remove @b from
3796 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3798 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3800 * lily/beaming-pattern.cc (beamify): deal with negative start
3801 moments for beaming patterns.
3803 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3805 * lily/beaming-info.cc (beamify): new function: read beatLength
3806 and beatGrouping from context.
3808 * input/regression/beam-beat-grouping.ly (Module): new file.
3810 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3812 * lily/beam.cc (get_beam_segments): generate events for
3813 max_connect_ case too.
3814 (get_beam_segments): read Stem::max-beam-connect.
3816 * input/regression/beam-single-stem.ly: new file.
3818 * lily/stem.cc (set_beaming): use #f as signaling value for
3821 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3823 * lily/beam.cc (set_beaming): read clip-edges property.
3824 (calc_direction): don't suicide for single stem.
3826 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3827 argument, remove 1<<15 hack. Remove clip_edges()
3829 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3831 2006-05-21 Graham Percival <gpermus@gmail.com>
3833 * Documentation/user/basic-notation.itely: reorg.
3835 * Documentation/user/ various: minor fixes.
3837 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3839 * lily/stencil-expression.cc (register_stencil_head): opps, append
3840 to cdr of static SCM object.
3842 2006-05-19 Graham Percival <gpermus@gmail.com>
3844 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3845 update framework for command index. DOC WRITERS: use @funindex
3846 instead of @cindex @code{}.
3848 * Documentation/user/ various: replace @cindex @code{} => @funindex
3850 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3852 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3853 case positions is set manually.
3855 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3857 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3860 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3862 * Documentation/user/changing-defaults.itely (Contexts explained):
3863 use absolute dimension for @image.
3865 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3866 out image for illustration too.
3867 ($(outdir)/%.png): add more png <-> eps rules.
3869 2006-05-17 Graham Percival <gpermus@gmail.com>
3871 * Documentation/user/ various: remove trailing whitespace, cosmetic
3872 change to reduce changes produced by diff.
3874 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3876 * lily/main.cc (do_chroot_jail): correctness tweak.
3878 * python/lilylib.py (system): import subprocess in system () only.
3880 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3882 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3883 variable. Backportme.
3885 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3887 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3889 2006-05-17 Werner Lemberg <wl@gnu.org>
3891 * lily/lexer.ll (init_signature_has_table): Add
3892 `scm-scm-music-music'.
3894 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3895 (Generic_prefix_music_scm): Add rule for it.
3897 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3898 `quoted-transposition' property.
3900 * ly/music-functions-init.ly (transposedCueDuring): New function.
3902 * scm/define-music-properties.scm (all-music-properties): Updated.
3904 * Documenation/topdocs/NEWS.itely: Document it.
3906 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3908 * python/lilylib.py (system): move import subprocess to system()
3911 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3913 * VERSION (PATCH_LEVEL): release 2.9.5
3915 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3918 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3920 2006-05-16 Graham Percival <gpermus@gmail.com>
3922 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3924 * Documentation/user/ various: minor fixes.
3926 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3928 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3930 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3932 * Documentation/user/advanced-notation.itely (Instrument names):
3933 Modified obsolete instruction on how to move instrument names away
3934 from the staves. Hmm, at second thought the bug probably has been
3935 solved, so the full bug description should probably be removed.
3937 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3939 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3940 currentCommandColumn.
3942 * lily/hairpin.cc (print): also add padding for non-neighbor
3945 * scm/define-context-properties.scm
3946 (all-user-translation-properties): add hairpinToBarline
3948 * input/regression/hairpin-to-barline.ly: new file.
3950 * lily/context.cc (internal_send_stream_event): thinko fix.
3952 * lily/tie.cc (set_default_control_points): robustness fix.
3954 * python/musicxml.py (Part.interpret): don't complain about
3955 incomplete measures.
3957 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3958 new music if last_event_chord() returned None.
3960 * python/musicxml.py (Part.interpret): skip back over chord notes.
3962 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3964 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3965 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3966 lily/slash-repeat-engraver.cc,
3967 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3968 iterator sends PercentEvents
3970 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3971 rework tuplets: send start/stop events to engraver
3973 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3974 dispatchers event-source and events-below to Context
3976 2006-05-15 Graham Percival <gpermus@gmail.com>
3978 * Documentation/user/README.txt: update info for doc writers.
3980 * Documentation/user/programming-interface.itely: integrate
3981 Nicolas' fixes for chapter rewrite.
3983 * Documentation/user/ various: minor fixes.
3985 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3987 * lily/clef-engraver.cc: cleanup.
3989 * Documentation/user/GNUmakefile: dist context-example.eps too.
3991 * lily/key-engraver.cc (create_key): use
3992 explicitKeySignatureVisibility for cancellation too.
3994 * lily/font-config.cc (init_fontconfig): don't close file if
3997 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3999 * Documentation/topdocs/NEWS.tely: niente and rotation news
4001 2006-05-14 Erlend Aasland <erlenda@gmail.com>
4003 * lily/include/stencil.hh
4004 * lily/stencil.cc (rotate): new function. Makes it possible
4005 to rotate a stencil around a given offset.
4007 * lily/grob.cc (get_print_stencil): add rotation support
4009 * lily/stencil-interpret.cc (interpret_stencil_expression):
4010 add rotation support
4012 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
4014 * scm/define-grob-properties.scm: add 'rotation property
4016 * scm/define-markup-commands.scm: add rotate markup command
4018 * scm/output-ps.scm: add rotation support in PostScript backend
4020 * scm/output-svg.scm: add rotation support in SVG backend
4022 2006-05-13 Graham Percival <gpermus@gmail.com>
4024 * Documentation/user/music-glossary.itely: French correction.
4026 * Documentation/user/programming-interface.itely: major
4027 new docs, some reorg, some info from Nicolas.
4029 * Documentation/user/ various: small fixes.
4031 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
4033 * Documentation/user/programming-interface.itely (Markup
4034 programmer interface): Remove duplicate text.
4036 2006-05-12 Graham Percival <gpermus@gmail.com>
4038 * Documentation/user/context-example.eps: new file.
4040 * Documentation/user/changing-defaults.itely: set up file to
4043 * Documentation/user/programming-interface.itely: changes
4046 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
4048 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4050 2006-05-11 Graham Percival <gpermus@gmail.com>
4052 * Documentation/user/programming-interface.itely: first round of
4053 editing and merging emails from Nicolas.
4055 * Documentation/user/scheme-tutorial: minor edit.
4057 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4059 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4061 (Xml_node.message): use it.
4063 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4064 oops. Add duration argument.
4066 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4068 * lily/paper-column-engraver.cc (make_columns):
4069 * scm/define-grobs.scm: Revert my previous change and set the default
4070 in define-grobs.scm instead.
4072 2006-05-09 Graham Percival <gpermus@gmail.com>
4074 * Documentation/user/changing-defaults.itely: general editing,
4075 info about \set and \override.
4077 * Documentation/user/tweaking.itely, advanced-notation.itely:
4078 fixes from Dave Luttinen, thanks!
4080 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4082 * lily/paper-column-engraver.cc (make_columns): By default, a column
4083 needs to be breakable.
4085 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4087 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4089 (musicxml_time_to_lily): idem
4090 (musicxml_key_to_lily): idem
4091 (instrument_drumtype_dict): dict for supported drumtypes.
4092 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4093 moments and pending mm rests
4094 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4095 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4096 (musicxml_voice_to_lily_voice): add mode change.
4097 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4098 speed and less memory usage (factor 5 to 10).
4099 (convert): write -defs.ly and driver file separately so people
4100 can script their own part extraction.
4102 * python/musicxml.py (minidom_demarshal_node): new function:
4103 separate minidom handling.
4104 (lxml_demarshal_node): new function: support lxml.etree too.
4105 (Xml_node.message): new function: verbose error message, with XML
4106 path to offending node.
4107 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4108 (Part_list.generate_id_instrument_dict): new method: collect
4109 instrument names, to be able to set drum_type.
4110 (Part.interpret): handle underfull measures
4111 (Part.interpret): assign instrument names.
4113 * python/musicexp.py (Output_printer.close): new method
4114 (MusicWrapper.print_ly): new class: support other modes,
4116 (BarCheck.print_ly): new class. Support bar checks, with comments
4117 and fancy barchecks.
4118 (NoteEvent.__init__): also set drum_type for drum notes.
4119 (MultiMeasureRest.lisp_expression): dump mm rests.
4121 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4122 line-break-permission if forbidBreak is not set.
4124 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4126 * scm/define-context-properties.scm:
4127 * scm/define-grob-properties.scm:
4128 * scm/define-grobs.scm:
4129 * scm/define-music-display-methods.scm:
4130 * scm/define-music-properties.scm:
4131 * scm/define-music-types.scm:
4132 * scm/music-functions.scm:
4133 * ly/declarations-init.ly:
4134 * lily/include/constrained-breaking.hh:
4136 * lily/spaceable-grob.cc:
4137 * lily/simple-spacer.cc:
4138 * lily/paper-score.cc:
4139 * lily/paper-column.cc:
4140 * lily/paper-column-engraver.cc:
4142 * lily/gourlay-breaking.cc:
4143 * lily/constrained-breaking.cc:
4144 * python/convertrules.py:
4145 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4146 "page-break-penalty" and "line-break-permission".
4147 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4148 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4150 * lily/bar-engraver.cc:
4151 * lily/beam-engraver.cc:
4152 * lily/forbid-break-engraver.cc:
4153 * lily/ligature-engraver.cc:
4154 * lily/paper-column-engraver.cc:
4155 * lily/percent-repeat-engraver.cc:
4156 * lily/score-engraver.cc:
4157 * lily/score-engraver.hh:
4158 * lily/paper-column-engraver.hh:
4159 Inter-engraver communication regarding line breaks is done through context
4160 properties (Score.forbidBreak) instead of function calls.
4162 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4164 * VERSION (PACKAGE_NAME): release 2.9.4
4166 2006-05-08 Graham Percival <gpermus@gmail.com>
4168 * Documentation/user/working.itely: proofreading from Dave
4171 * Doucmentation/user/README.txt: updated with manual style info.
4173 * Documentation/user/ various: trim linewidth to 78 chars.
4175 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4177 * scm/define-grob-properties.scm (all-internal-grob-properties):
4178 remove chord-tremolo property.
4180 * lily/beam.cc (get_beam_segments): don't use stem position as
4181 base for broken ends.
4183 2006-05-06 Graham Percival <gpermus@gmail.com>
4185 * Documentation/user/putting.itely: proofreading from Dave
4188 * Documentation/user/ various: more reorg and clarifications.
4190 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4192 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4194 * ly/music-functions-init.ly: new function featherDurations
4196 * lily/beam.cc: read grow-direction for feathered beaming.
4198 * Documentation/topdocs/NEWS.tely (Top): typo.
4200 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4202 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4205 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4206 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4207 used by music streams.
4209 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4210 lily/stream-event.cc, lily/stream-event-scheme.cc,
4211 lily/listener.cc, lily/scheme-listener.cc,
4212 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4213 lily/include/stream-event.hh, lily/include/listener.hh,
4214 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4215 Created data structures for music streams.
4217 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4219 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4220 construction of a beam.
4223 * flower/include/std-vector.hh (default_compare): use only one comparison.
4225 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4226 (note-by-number): further attachment fixes.
4228 * scm/lily-library.scm (ordered-cons): new function.
4229 (interval-index): new function
4231 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4233 * lily/note-head.cc (get_stem_attachment): new function.
4235 * scm/define-markup-commands.scm (note-by-number): read 'style
4238 * input/regression/markup-note.ly: show note-head style option.
4240 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4243 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4245 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4247 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4249 * lily/include/constrained-breaking.hh: GCC 4 fix.
4251 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4253 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4254 Replace it with functions get_line_forces and get_line_configuration.
4255 (class Simple_spacer): Make data private.
4256 Rewrite compression algorithm to be faster and simpler.
4258 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4259 * lily/gourlay-breaking.cc (solve):
4260 * lily/constrained_breaking.cc (space_line):
4261 Change it to the new simple-spacer code.
4263 * lily/paper-score.cc (get_paper_systems):
4266 Delay breaking the systems until they are requested.
4267 (find_break_indices):
4268 Use vsize for indices.
4270 Move the "Calculating line breaks" message here.
4272 * lily/system.cc (pre_processing):
4273 Move the "Calculating line breaks" message away from here.
4274 (break_into_pieces):
4275 Allow multiple calls to this function in sequence (with touching-but-
4276 not-overlapping breakpoints).
4278 * lily/constrained-breaking.cc:
4279 Replace most of the get_XXXX functions with get_line_details.
4280 Only calculate the force for each line. Calculate configurations only
4281 for the lines we will actually use.
4282 Replace cols_ with lines_.
4284 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4286 * mf/GNUmakefile (depth): remove FC_FIND.
4288 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4290 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4292 * scm/framework-ps.scm (write-preamble): new function.
4293 (write-preamble): load mac fonts via fondu, even if gs-font-load
4296 2006-05-03 Werner Lemberg <wl@gnu.org>
4298 * mf/GNUmakefile (FC_FIND): Fix typo.
4300 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4302 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4304 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4306 * stepmake/aclocal.m4: run python-config for crosscompiling
4309 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4310 -f png for HTML, TEXINFO formats.
4312 * input/tutorial/lbook-html-test.html: new file.
4314 * lily/include/tie-formatting-problem.hh (class
4315 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4316 [column, direction]. This fixes laissez vibrer ties.
4318 * flower/include/tuple.hh (struct Tuple2): new file.
4320 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4321 $(FCMATCH), only if $(NCSB_DIR) not set.
4323 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4325 * config.make.in (DOCUMENTATION): set FCMATCH.
4327 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4329 2006-05-03 Graham Percival <gpermus@gmail.com>
4331 * Documentation/user/ various: final round of reorg.
4333 * Documentation/user/instrument-notation.itely: some more
4334 fixes from Eduardo, thanks!
4336 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4338 * VERSION (PACKAGE_NAME): release 2.9.3
4340 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4342 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4344 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4346 * scm/define-grob-properties.scm (all-user-grob-properties):
4347 Correct typo, thanks to Eduardo.
4349 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4351 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4353 * buildscripts/lilypond-words.py (F): indent fix.
4355 * input/regression/tie-arpeggio-collision.ly: new file.
4357 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4358 function: store outlines per column rank.
4360 * lily/include/tie-configuration.hh (class Tie_configuration): add
4361 column_ranks_ to specification and configuration, to distinguish
4362 between ties for different heads in arpegiated chords.
4364 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4366 * *.py: more 4 space indents.
4368 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4370 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4372 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4374 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4376 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4378 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4380 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4382 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4384 * python/convertrules.py (conv): indent 4 for python files.
4386 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4388 * Documentation/user/changing-defaults.itely (Creating contexts):
4389 Clarify \new semantics.
4391 2006-04-28 Graham Percival <gpermus@gmail.com>
4393 * Documentation/user/ various: major new sections in the
4394 Learning manual, slight reorg elsewhere.
4396 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4398 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4400 * scm/framework-ps.scm (output-framework): remove PageMedia
4402 2006-04-27 Graham Percival <gpermus@gmail.com>
4404 * Documentation/user/ tweaks.itely, working.itely: new
4405 files, being more advanced "learning manual" chapters.
4407 * Documentation/user/ tutorial, putting, lilypond: reorg.
4409 2006-04-26 Graham Percival <gpermus@gmail.com>
4411 * input/regression/lyric-combine-polyphonic.ly: fixed test
4412 (no more "can't find context `one'" error).
4414 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4416 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4418 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4420 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4422 * lily/relocate.cc (read_relocation_dir): new function.
4424 2006-04-26 Graham Percival <gpermus@gmail.com>
4426 * Documentation/user/instrument-notation.itely: a few more fixes
4427 from Eduardo, thanks!
4429 * Documentation/user/README.txt: new file; contains info on
4430 style that used to be in lilypond.tely.
4432 * Documentation/user/ various: first round of doc reorg.
4434 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4435 graphic; this probably causes problems on some pdf
4436 viewers, notably Adobe Acrobat.
4438 2006-04-24 Graham Percival <gpermus@gmail.com>
4440 * Documentation/user/instrument-notation.itely: many alterations
4441 to Vocal music, from Eduardo Viera.
4443 2006-04-23 Graham Percival <gpermus@gmail.com>
4445 * Documentation/user/instrument-notation.itely: fix \new
4446 instead of \context problem.
4448 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4450 * lily/relocate.cc (expand_environment_variables): new function.
4452 (read_relocation_file): id.
4454 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4456 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4458 * ly/engraver-init.ly: remove old comments from TabVoice
4460 2006-04-20 Graham Percival <gpermus@gmail.com>
4462 * Documentation/user/instrument-notation.itely: added Erlend's
4463 latest doc patch, thanks!
4465 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4467 * lily/include/slur.hh:
4469 * lily/phrasing-slur-engraver.cc:
4470 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4471 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4472 Slur_engraver:: and putting it in
4473 Slur::auxiliary_acknowledge_extra_object ().
4475 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4477 * lily/note-collision.cc: fix a comment
4479 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4481 * stepmake/bin/add-html-footer.py: fix footer position in
4482 generated html files: before </body> and </html> tags.
4484 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4486 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4487 Earlier successive `make' commands finally compiled ok.
4489 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4491 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4493 * lily/include/stem-tremolo.hh:
4494 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4498 * lily/include/lookup.hh: add rotated_box ()
4500 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4502 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4503 been generated. Fixes "can't get `--help'" bug after make clean.
4505 * THANKS: alphabetize contributors.
4507 2006-04-17 Graham Percival <gpermus@gmail.com>
4509 * Documentation/user/instrument-notation.itely: added Erlend's
4510 tabs and banjo doc patch. Thanks!
4512 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4514 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4516 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4518 * scm/output-lib.scm: add some more predefined string tunings.
4520 * Documentation/user/instrument-notation.itely: and doc them.
4522 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4524 * ly/engraver.ly: Remove obsolete comments.
4526 * ly/gregorian-init.ly: Define default layout block.
4528 * input/puer-fragment.ly: Updated and extended.
4530 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4532 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4533 pdf conversion behaviour.
4535 * flower/file-name.cc (dir_name)
4536 (get_working_directory): Move from relocate.cc.
4538 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4540 * lily/relocate.cc: Encapsulate sys/stat.h in
4543 2006-04-14 Graham Percival <gpermus@gmail.com>
4545 * Documentation/user/ various: small updates from Cameron
4546 and Juergen, thanks!
4548 * Documentation/user/ various: small updates of my own.
4550 * THANKS: 2.7 -> 2.8.
4552 2006-04-11 Graham Percival <gpermus@gmail.com>
4554 * scm/define-context-properties.scm: typo.
4556 * Documentation/user/ : many more small updates.
4558 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4560 * scm/define-music-types.scm: disposed "docme".
4562 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4564 * lily/hairpin.cc: make niente circles a bit smaller.
4566 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4568 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4569 get-pfa and get-*-fonts targets.
4571 2006-04-10 Graham Percival <gpermus@gmail.com>
4573 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4574 music-glossary, programming-interface: more minor fixes
4577 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4579 * scm/define-context-properties.scm: another old \property update.
4580 This time tested for compiling!
4582 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4584 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4586 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4588 * scm/define-context-properties.scm (all-user-translation-properties):
4589 * Documentation/user/global.itely (Page formatting): Compile fix.
4591 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4593 * Documentation/user/advanced-notation.itely (Polymetric
4594 notation): Update the example to use the "+" symbol and add link
4595 to input/test/compound-time.ly.
4597 2006-04-08 Graham Percival <gpermus@gmail.com>
4599 * scm/define-grob-properties.scm: clarify docs for #'direction.
4601 * scm/define-context-properties.scm: update old \property override.
4603 * Documentation/user/ advanced-notation, global, lilypond-book:
4604 more minor doc updates.
4606 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4608 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4610 * scm/backend-library.scm (search-gs): oops.
4612 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4614 * scripts/lilypond-book.py (output): use base, not filename for href.
4616 * scm/backend-library.scm: only look for gs.
4618 * scripts/lilypond-book.py (output): fix printfilename.
4620 * lily/parser.yy (music_function_musicless_prefix): fold together
4621 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4623 * lily/slur.cc (print): only set font-size if not set yet.
4625 * lily/slur-configuration.cc (add_score): improved layout of debug
4628 2006-04-05 David Feuer <David.Feuer@gmail.com>
4630 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4631 (draw_circle): Hopefully fixed regression.
4632 Improved documentation for several procedures.
4634 2006-03-04 Werner Lemberg <wl@gnu.org>
4636 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4638 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4640 * scripts/musicxml2ly.py (bindir): add dynamic
4643 2006-04-04 Graham Percival <gpermus@gmail.com>
4645 * Documentation/user/ basic-notation, advanced-notation, putting,
4646 instrument-notation, invoking, lilypond, THANKS: another ream of small
4647 fixes from the Doc Helpers.
4649 2006-04-03 David Feuer <David.Feuer@gmail.com>
4651 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4653 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4655 * Cleaned up interfaces between PostScript and Scheme, and moved
4656 computations from PostScript to Scheme:
4658 * music-drawing-routines.ps
4659 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4660 with stroke_and_fill throughout.
4661 (euclidean_length, print_letter, draw_box): Deleted unused
4662 procedures. If someone needs draw_box, implement it using
4663 draw_round_box; don't duplicate code.
4664 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4665 Refactored/cleaned up interfaces.
4668 * output-ps.scm: reordered arguments to PostScript functions to
4669 match new interfaces
4670 (glyph-string): Rewrote glyph-string.
4671 (grob-cause): Replaced string-append with format.
4672 (repeat-slash): Rewrote to do computation here.
4673 (round-filled-box): Rewrote to do computation here.
4675 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4677 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4679 * stepmake/stepmake/toplevel- targets.make: print help info about
4682 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4684 * input/regression/hairpin-circled.ly: new file
4686 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4688 * lily/hairpin.cc (print): add support for circled tip
4690 * scm/define-grob-properties.scm: add circled-tip parameter
4692 * scm/define-grobs.scm: init circled-tip to false
4694 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4696 * scm/music-functions.scm (quote-substitute): set
4699 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4701 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4704 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4706 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4708 2006-03-31 David Feuer <david.feuer@gmail.com>
4710 * scm/framework-ps.scm:
4712 * scm/output-ps.scm: glyph-string now produces smaller, more
4713 readable, and probably faster PostScript. Several findfont
4714 scalefont setfont instances changed to selectfont
4715 Hacked-up string-appends changed to formats.
4717 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4719 2006-03-30 Graham Percival <gpermus@gmail.com>
4721 * scm/lily-library.scm: make "no version" warning message more polite.
4723 * lily/music.cc: add double quotes to failed octave check.
4725 * Documentation/user/ advanced-notation, changing-defaults,
4726 instrument-notation, invoking, music-glossary: whole bunch of minor
4729 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4731 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4732 $(buildscriptdir) iso. depth.
4734 * VERSION (PACKAGE_NAME): release 2.9.1
4736 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4738 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4740 * VERSION (PATCH_LEVEL): bump version number.
4742 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4745 * lily/pango-font.cc (pango_item_string_stencil): use
4748 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4749 $(outdir)/emmentaler-%.svg): remove canary.
4751 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4752 glyphnames if we have a ttf font.
4754 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4756 * Documentation/user/advanced-notation.itely (Font selection):
4757 Corrected reference to the font-family-override.ly example.
4759 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4761 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4762 stem-tremolo object in the stem (or else the stem might not be
4765 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4767 * lily/ttf.cc (print_trailer): only print existing glyphs.
4769 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4771 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4772 position the tremolo based on the position of the notehead.
4774 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4775 notes and update the texidoc line with the new positioning rules.
4777 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4779 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4781 * scripts/lilypond-book.py (Module): set default for linewidth if
4784 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4786 * VERSION (PACKAGE_NAME): release 2.9.0.
4788 * input/regression/stem-tremolo-position.ly: new file.
4790 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4792 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4794 * lily/stem-tremolo.cc (print): position
4795 the tremolo depending only on the end of the stem
4796 and not on the notehead
4797 (raw_stencil): center, on the middle staff line, the
4798 flag that is closest to the end of the stem (previously
4800 (calc_width): add this callback to shorten a tremolo when
4801 it is beamed or it is stemup with a flag
4802 (style): add this callback to make a tremolo rectangular when
4803 it is beamed or it is stemup with a flag
4804 (rotated_box): this is like Lookup::beam but makes a rotated
4805 rectangle instead of a parallelogram
4807 * lily/stem.cc (calc_stem_info): make sure the stem
4808 is long enough to fit the tremolo
4809 (calc-length): reduce the length of tremolo stems since the
4810 tremolo code is now capable of better positioning
4812 * scm/define-grobs.scm: make calc_width the default beam-width
4813 callback for stem-tremolo and add the style callback
4815 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4817 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4820 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4822 * lily/ttf.cc (make_index_to_charcode_map): restore old
4825 2006-03-28 Werner Lemberg <wl@gnu.org>
4827 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4829 2006-03-28 Graham Percival <gpermus@gmail.com>
4831 * THANKS: update for 2.9, add section for Documentation helpers.
4833 * Documentation/topdocs/NEWS.tely: compile fix.
4835 * Documentation/user/ basic-notation, global, advanced-notation,
4836 examples.itely: minor fixes from mailist.
4838 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4840 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4843 * lily/ttf.cc (print_trailer): use it.
4845 * lily/pango-font.cc (get_unicode_name): new function.
4847 * lily/ttf.cc (make_index_to_charcode_map): move function from
4849 (print_trailer): substitute uniXXXX name if applicable.
4851 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4852 (pango_item_string_stencil): use it to generate uniXXXX names.
4854 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4855 note heads, for uniform widths in shape note output.
4856 (overdone_heads): hmm. remove them again.
4858 * scripts/lilypond-book.py (output): add links to filenames.
4860 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4862 * lily/note-collision.cc (get_clash_groups): only consider when
4863 Note_column::dir <> CENTER.
4865 * scripts/lilypond-book.py (get_option_parser): init output_name
4868 2006-03-24 Graham Percival <gpermus@gmail.com>
4870 * Documentation/topdocs/NEWS.tely: add @end itemize
4872 * Documentation/user/ global, advanced-notation: minor
4875 2006-03-23 Graham Percival <gpermus@gmail.com>
4877 * Documentation/user/ lilypond.tely, music-glossary,
4878 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4880 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4882 * mf/GNUmakefile: don't install .enc files.
4884 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4886 * VERSION (PATCH_LEVEL): bump to 2.9.0
4888 2006-03-22 Graham Percival <gpermus@gmail.com>
4890 * Documentation/user/advanced-notation.itely: minor fixes
4893 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4895 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4897 * branch lilypond_2_8
4899 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4901 * scripts/lilypond-book.py (samefile): new function, for windoze
4904 2006-03-21 Graham Percival <gpermus@gmail.com>
4906 * ly/engraver-init.ly: add info about StaffGroup.
4908 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4910 * input/regression/stem-direction-context.ly: idem.
4912 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4916 * input/regression/page-layout-twopass.ly: comment out \markup so
4919 * lily/instrument-name-engraver.cc (finalize): add to instrument
4920 name global System. This also fixes chopped instrument names, but
4921 doesn't crash when there are slurs/beams.
4923 * lily/slur-configuration.cc (add_score): disallow negative slur
4926 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4928 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4930 * lily/instrument-name-engraver.cc (process_music): kludge: add
4931 InstrumentName spanner to axis group of left bound. Fixes chopped
4932 off instrument names in EPS images.
4934 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4936 * scripts/abc2ly.py (option_parser): update to 2.7.40
4938 2006-03-20 Graham Percival <gpermus@gmail.com>
4940 * THANKS: move small doc contributors to SUGGESTIONS.
4942 * Documentation/user/ basic-notation, advanced-notation,
4943 global: small changes from mailist.
4945 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4947 * Documentation/user/advanced-notation.itely (Text marks): update
4948 for new rehearsalMarkAlignSymbol convention.
4950 * VERSION (PATCH_LEVEL): bump version.
4952 * input/test/instrument-name-align.ly: new file.
4954 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4956 * input/test/instrument-name-align.ly: new file. Document how to
4957 align instrument names.
4959 * lily/mark-engraver.cc: remove properties.
4961 * scm/define-context-properties.scm
4962 (all-user-translation-properties): remove align symbol properties
4963 for barnumber/reh. mark.
4965 * lily/break-align-interface.cc (self_align_callback): new
4966 interface, new function. Look at complete alignment. This handles
4967 tunable break alignments in case break-align-symbols are missing.
4969 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4971 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4973 * python/convertrules.py (conv): mark/bar number alignment rule.
4975 * lily/break-align-interface.cc (calc_positioning_done): also
4976 store offset from last visible break-alignment to its
4977 neighbor. This makes alignment on non-visible objects more reliable.
4979 * po/lilypond.pot (Module): ran po-replace.
4981 * input/regression/tie-single-manual.ly (Module): new file.
4983 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4984 look at has_manual_position_.
4985 (from_ties): set has_manual_position_ if tie has staff-position set.
4987 * lily/tuplet-bracket.cc (calc_positions): idem.
4989 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4992 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4994 * scm/define-markup-commands.scm (smallCaps): new markup command
4995 for turning a text to small caps using smaller font size and upper
4998 2006-03-17 Graham Percival <gpermus@gmail.com>
5000 * Documentation/user/ examples, instrument-notation,
5001 advnaced-notation: minor fixes from mailist.
5003 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5005 * Documentation/user/tutorial.itely (First steps): change example
5008 2006-03-17 Graham Percival <gpermus@gmail.com>
5010 * Documentation/user/ examples, advanced: minor changes from mailist.
5012 * THANKS: add Geoff Horton, for documentation stuff.
5014 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5016 * python/lilylib.py (system): revert have_select kludge.
5018 * Documentation/user/tutorial.itely (Commenting input files):
5019 update version numbers in doc.
5021 * scm/define-grob-interfaces.scm (multi-measure-interface): add
5022 bound-padding to multi-measure-interface
5024 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5026 * input/test/engraver-example.ily: update version number.
5028 * VERSION (PACKAGE_NAME): release 2.7.39
5030 * lily/note-spacing.cc (get_spacing): heighten threshold where
5031 accidentals/arpeggios influence previous spacing fully.
5033 * lily/rest.cc (y_offset_callback): only use direction if
5034 staff-position wasn't set before.
5036 * lily/bar-number-engraver.cc: add support for
5037 barNumberAlignSymbol.
5038 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
5040 * lily/pointer-group-interface.cc (set_ordered): new function.
5041 (add_unordered_grob): new function.
5043 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5044 to ordered, unless the opposite has been proved. This fixes
5045 random reordering of large object groups across linebreaks,
5048 * lily/main.cc (do_chroot_jail): printf format fix.
5050 * lily/tie-formatting-problem.cc (generate_configuration):
5051 multiply y-shift for dot with direction.
5053 * scm/define-markup-commands.scm (note-by-number): put (magstep
5054 size) in y-attach too.
5056 * Documentation/topdocs/NEWS.tely (Top): show override.
5058 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5059 direction for stems.
5061 2006-03-15 Graham Percival <gpermus@gmail.com>
5063 * Documentation/user/ changing-defaults, global: minor
5066 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5068 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5070 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5071 breakable items after uniformly stretched notes.
5073 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5074 outline with outer edge of note heads. This prevents infinity
5075 problems with tied whole notes.
5077 * scripts/lilypond-book.py (do_file): use os.popen
5079 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5081 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5083 * Documentation/user/invoking.itely: Add ragged-right to bug report
5086 2006-03-14 Graham Percival <gpermus@gmail.com>
5088 * Documentation/user/global.itely: small fix from mailist.
5090 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5092 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5093 file descriptor returned by tempfile.mkstemp() when writing
5094 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5097 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5099 * po/fi.po: newline bugfix.
5101 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5103 * scm/paper.scm (paper-alist): Rounding fixes.
5105 2006-03-13 Graham Percival <gpermus@gmail.com>
5107 * Documentation/user/ changing-defaults, instrument-notation,
5108 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5110 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5114 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5116 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5119 * python/lilylib.py (print_environment): move ps_page_count to
5122 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5124 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5126 * scm/framework-ps.scm (embed-document): new function. Use to
5129 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5131 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5133 * Documentation/user/instrument-notation.itely (Setting simple
5134 songs): Added \book{...} around the full example, so the separate
5135 markups are included in the printed example.
5137 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5139 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5142 * python/lilylib.py (system): rewrite system() using
5143 subprocess. Remove >& redirection trickery.
5145 2006-03-11 Graham Percival <gpermus@gmail.com>
5147 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5148 notation-appendices.itely: minor fixes from mailist.
5150 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5152 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5153 unsplit man also needs images.
5155 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5157 * VERSION (PACKAGE_NAME): 2.7.38 released.
5159 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5161 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5164 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5166 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5167 respects the Score.skipTypesetting property.
5169 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5171 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5172 Prolog. No %%EOF after CFF file.
5174 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5176 * lily/constrained-breaking.cc (get_max_systems): used to return a
5178 (combine_demerits): use pointers to reduce copying data
5179 (calc_subproblem): idem
5180 (get_page_penalty): add page turn penalties
5182 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5184 * Documentation/user/invoking.itely (Invoking lilypond): better
5185 explanation of -e usage.
5187 * lily/main.cc (main_with_guile): don't append to
5188 init_scheme_code_string
5190 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5192 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5194 * scripts/convert-ly.py (do_options): don't print help for
5197 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5198 @code and @example. Update from texinfo.tex from CVS.
5200 2006-03-08 Graham Percival <gpermus@gmail.com>
5202 * Documentation/user/scheme-tutorial.itely: clarifies distances
5203 measured in staff-spaces.
5205 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5207 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5208 consider[k] is true.
5210 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5212 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5213 consider columns that have originals. Unifies spacing for mm
5214 rests around line breaks.
5216 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5217 (set_text_rods): idem.
5218 (calculate_spacing_rods): new function: share code between
5219 set_text_rods and set_spacing_rods.
5220 (set_text_rods): take extents of bounds into account.
5222 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5224 * Documentation/user/basic-notation.itely (Writing music in
5225 parallel): don't use relative.
5227 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5229 * ly/music-functions-init.ly (Module): add shiftDurations
5231 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5233 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5235 * ly/engraver-init.ly: init vocalName to nil.
5237 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5239 * scm/music-functions.scm (music->make-music): bugfix,
5240 KeyChangeEvents are now handled correctly.
5242 * scripts/lilypond-book.py: Add --debug option.
5244 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5246 * python/lilylib.py: add tempfile.
5248 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5250 * VERSION (PACKAGE_NAME): release 2.7.37
5252 * python/lilylib.py (ps_page_count): remove make_ps_images().
5253 (ps_page_count): remove mkdir_p
5254 (system): remove cleanup_temp.
5255 (exit): remove lilypond_version_(check)
5256 (error_log): remove pseudo_filter_p
5261 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5264 * lily/accidental-engraver.cc (make_standard_accidental): only add
5265 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5267 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5268 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5269 Make incompatibilities.
5271 * scm/output-ps.scm (grob-cause): replace backslashes by /
5272 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5274 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5276 * cygwin/GNUmakefile: Install fixes.
5278 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5280 * lily/note-head.cc (head::get_balltype): Compile fix.
5282 * flower/file-name.cc (dos_to_posix): Flower string fix.
5284 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5286 * python/lilylib.py: pychecker cleanups.
5288 * scripts/lilypond-book.py
5289 (Lilypond_snippet.output_print_filename): pychecker cleanups
5291 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5293 * python/lilylib.py (underscore): remove identify() , warranty()
5295 * ps/music-drawing-routines.ps: change Border routine for GSView
5298 * lily/stem.cc (height): use quantize-positions. This triggers
5299 set_stem_lengths, so scripts on beamed stems are handled correctly.
5301 * lily/side-position-interface.cc (aligned_side): check if edges
5302 of script are inside staff. Fixes accent of edge of the staff.
5304 * input/regression/staccato-pos.ly: more examples.
5306 * stepmake/aclocal.m4 (depth): fix bashism.
5308 * lily/lyric-combine-music-iterator.cc: move from
5309 new-lyric-combine-iterator.cc
5310 (process): add pending_grace_lyric_ member to delay lyrics on
5313 * lily/system-start-text.cc (print): suicide if we don't have any
5314 elements. Fixes hara kiri'd instrument names.
5316 * scripts/mup2ly.py (Module): remove.
5318 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5320 * Documentation/user/global.itely (A single music expression):
5321 close @lilypond properly
5323 * lily/volta-bracket.cc (modify_edge_height): change from
5324 after_line_breaking_callback. Suicide last bracket if appropriate.
5326 * python/lilylib.py: strip getopt support
5328 * scripts/etf2ly.py (do_options): use optparse
5330 * scripts/midi2ly.py: optparse, strip lilylib copy.
5332 * scripts/abc2ly.py (voices): use optparse.
5334 * stepmake/stepmake/generic-vars.make: new function absdir.
5336 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5338 * scripts/lilypond-book.py (find_file): use global_options for
5341 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5344 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5346 * python/lilylib.py (get_global_option): ughness for extracting
5347 global options from lilylib.
5348 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5350 * scripts/lilypond-book.py (get_option_parser): use optparse for
5351 option handling. Put options in global_options variable.
5353 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5355 * Documentation/index.html.in: clarify.
5357 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5359 * scm/layout-page-layout.scm (write-page-breaks): add a
5360 music-system-heights property to the page layout output.
5362 * scm/page.scm (make-page-stencil): take footer into account when
5363 computing the 'space-left page property
5364 (annotate-space-left): take footer into account when annonating
5367 2006-02-28 Graham Percival <gpermus@gmail.com>
5369 * Documentation/user/ advanced-notation, global: more (final)
5370 docs for music expressions, removed special fermatas.
5372 2006-02-27 Graham Percival <gpermus@gmail.com>
5374 * Documentation/user/ basic-notation, global: minor changes
5377 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5379 * scm/framework-ps.scm:
5380 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5381 layer for inf? and nan? from framework-ps to lily-library.
5383 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5385 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5386 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5388 * buildscripts/substitute-encoding.py (Module): remove file.
5390 * mf/GNUmakefile: more PFA strippage.
5392 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5394 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5397 * scm/framework-ps.scm: remove font name munging.
5399 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5401 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5403 * scm/markup.scm (define-markup-command): change
5404 def-markup-command to define-markup-command
5406 * scm/music-functions.scm (define-music-function): change
5407 def-music-function to define-music-function.
5409 * python/convertrules.py (conv): rules for def-music-function
5410 and def-markup-commands
5412 * Documentation/user/programming-interface.itely,
5413 input/no-notation/display-lily-tests.ly,
5414 input/regression/lily-in-scheme.ly,
5415 input/regression/markup-user.ly,
5416 input/regression/music-function.ly, input/regression/tie-chord.ly,
5417 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5418 ly/gregorian-init.ly: use new macro names (define-music-function,
5419 define-markup-command).
5421 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5423 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5424 (output): add comments to lp-book latex output.
5426 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5429 2006-02-23 Graham Percival <gpermus@gmail.com>
5431 * Documentation/user/ tutorial, global: minor changes.
5433 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5435 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5436 blocks (for make 3.80)
5438 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5439 \notemode so that user should not have to explicitely type it.
5441 * scm/define-music-display-methods.scm: various
5442 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5445 * input/no-notation/display-lily-tests.ly: new tests for
5446 \applyOutput and \applyContext
5448 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5450 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5451 changed it slightly so that the number of systems returned by
5452 solve () will be the same as the last value passed to resize
5453 (). I've also added more documentation, removed casts, fixed style
5454 problems and put in some recovery if constraints aren't satisfied."
5456 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5458 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5459 for emacs < 22 compatibility.
5460 (count-rexp): Use it.
5461 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5462 substring juggling (Milan Zamazal).
5464 2006-02-23 Graham Percival <gpermus@gmail.com>
5466 * Documentation/user/ basic-notation, advanced-notation,
5467 global.itely, invoking.itely, tutorial,itely:
5468 minor fixes from mailist.
5470 * scm/define-markup-commands.scm: improve docs of \filled-box.
5472 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5474 * Documentation/index.html.in: changes concern the previous release.
5476 * input/regression/+.ly: cultivate typographical terminology.
5478 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5480 * scm/define-grob-interfaces.scm (parentheses-interface): add
5481 padding to parentheses-interface.
5483 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5484 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5486 * VERSION (PATCH_LEVEL): release 2.7.36
5488 * lily/slur.cc: add avoid-slur (ugh.)
5490 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5491 intersection gets smaller. This fixes slurs over extreme points.
5493 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5494 stems with neutral-direction set.
5496 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5498 * lily/open-type-font.cc (load_table): format error.
5500 * lily/change-iterator.cc (process): format fix.
5502 * flower/include/international.hh (_f): idem.
5504 * flower/include/std-string.hh: add format printf attribute.
5506 * scm/define-grobs.scm (all-grob-descriptions): height of all
5507 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5509 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5512 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5514 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5516 * input/regression/: upgraded syntax for some files.
5518 * THANKS: Add bughunters.
5520 2006-02-22 Graham Percival <gpermus@gmail.com>
5522 * Documentation/user/ invoking.itely, advanced-notation.itely,
5523 global.itely: long-awaited "let's make chapter 10 not suck"
5524 update. Rearrange chapter 10; now called "global issues",
5525 addresses file structure, etc. Some info from other files
5526 moved into global.itely.
5528 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5530 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5531 catch trill-span-event notes.
5533 * Documentation/user/examples.itely (Ancient notation templates): typo.
5536 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5538 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5540 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5542 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5544 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5545 froum Laissez_vibrer_engraver.
5547 * ly/declarations-init.ly (repeatTie): add \repeatTie
5549 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5551 * scm/define-grob-properties.scm (all-user-grob-properties): add
5552 head-direction property.
5554 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5555 from_lv_ties. Take head direction argument.
5557 * lily/semi-tie-column.cc: rename from
5558 laissez-vibrer-tie-column.cc. Rename class too.
5560 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5563 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5565 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5567 (find_breaks): idem.
5569 2006-02-21 Graham Percival <gpermus@gmail.com>
5571 * Documentation/user/advanced-notation.itely: fixed make-moment]
5574 * Documentation/user/basic-notation.itely: more clarification to
5577 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5579 * lily/include/constrained-breaking.hh (class
5580 Constrained_breaking): new file.
5582 * lily/constrained-breaking.cc (resize): new file.
5584 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5586 * Documentation/user/advanced-notation.itely (Clusters): insert
5589 * lily/tie-column.cc (calc_positioning_done): support for
5592 * lily/tie-formatting-problem.cc
5593 (generate_extremal_tie_variations): factor out.
5594 (score_ties_configuration): annotate all tie
5595 (print_ties_configuration): new routine.
5596 (generate_configuration): nudge extremal ties outside of the head
5598 (score_ties_configuration): oops. convert to staff-space before
5599 determining position symmetry.
5601 2006-02-20 Graham Percival <gpermus@gmail.com>
5603 * Documentation/user/*-notation.itely: misc minor editing,
5604 shifting doc sections around.
5606 * Documentation/user/*-notation-itely, global.itely,
5607 changing-defaults.itely: added new stuff from NEWS.
5609 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5613 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5615 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5616 lilypond --verbose for lp-book.
5618 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5619 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5621 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5622 $(buildscript-dir) iso. absolute depth.
5624 * buildscripts/genicon.py (dir): thinko.
5626 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5628 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5630 * scm/output-lib.scm: swap darkcyan/darkyellow
5632 * THANKS: Add bughunters.
5634 2006-02-19 Graham Percival <gpermus@gmail.com>
5636 * Documentation/user/programming-interfaces.itely: fixed example.
5638 * Documentation/user/instrument-notation.itely: fix @{ @}.
5640 * scm/script.scm: add avoid-slur for \open.
5642 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5644 * lily/tie-formatting-problem.cc (score_configuration): use
5645 sliding score for min-length.
5647 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5648 spaghetti for icons.
5650 * buildscripts/genicon.py (program_name): new file.
5652 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5654 (generate_configuration): for small ties, also look for collisions
5655 at Y + DIR*h + DELTA_Y.
5656 (get_variations): consider variation for dot positions too.
5658 * lily/side-position-interface.cc (aligned_side): take abs for
5659 quantized rounded position. Fixes tenuto below staff.
5661 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5662 markers when necessary.
5664 * lily/program-option.cc (internal_set_option): add
5665 strict_infinity_checking option.
5667 * scm/output-lib.scm (cyan): swap yellow and cyan.
5669 2006-02-19 Graham Percival <gpermus@gmail.com>
5671 * darwin.patch: trivial linenumber update.
5673 * Documentation/user/ {various}: `\context foo = named' changed
5674 to `\new foo = "name"' in docs.
5676 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5678 * scm/stencil.scm (annotate-y-interval): use it.
5680 * scm/lily-library.scm (interval-sane?): new function.
5682 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5685 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5688 * flower/include/std-vector.hh (iterof): add iterof macro.
5690 * lily/enclosing-bracket.cc (width): new function.
5692 * lily/align-interface.cc (align_elements_to_extents): reinstate
5695 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5697 * Documentation/index.html.in: fix spelling: thankyous.
5699 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5701 * lily/lyric-hyphen.cc: typo.
5703 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5705 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5706 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5709 * VERSION: release 2.7.35
5711 * lily/beam.cc (get_default_dir): oops. Take abs () for
5713 (get_default_dir): use extreme position criterion only in absence
5714 of forced stem directions.
5716 * VERSION (PATCH_LEVEL): bump VERSION.
5718 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5719 dependencies. Necessary for -jX builds.
5721 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5723 * lily/relocate.cc (setup_paths): Yet another const fix.
5725 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5727 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5729 * lily/relocate.cc (setup_paths): oops.
5731 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5733 * Documentation/index.html.in: order links: html before PDF.
5735 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5737 * lily/tie-column-format.cc (Module): remove.
5739 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5741 * lily/text-spanner.cc (print): idem.
5743 * lily/dynamic-text-spanner.cc (print): only print line if longer
5746 * lily/auto-change-iterator.cc (change_to): formatting.
5748 * lily/beam.cc (get_default_dir): take extreme note head as input
5751 * lily/tie.cc (get_default_dir): only look directions for visible
5754 * lily/side-position-interface.cc (aligned_side): oops. Don't
5755 mutiply with direction. This fixes quantized (staccato, tenuto)
5756 scripts below notes.
5758 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5759 direction. Fixes c-lyrics-center-align.ly
5761 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5763 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5766 * lily/std-string.cc:
5767 * lily/include/std-vector.hh (split_string): Move and rename from
5768 lily/include/misc.hh, lily/misc.cc. Update callers.
5770 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5772 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5774 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5776 * flower/test-file.cc: New file.
5778 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5781 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5783 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5785 * flower/include/file-storage.hh: remove file.
5787 * lily/include/midi-item.hh (class Midi_track): idem.
5789 * lily/include/source.hh (class Sources): idem.
5791 * lily/include/performance.hh (class Performance): use vector
5794 * flower/include/cons.hh (class Cons): remove file.
5796 * flower/include/flower-proto.hh: remove template cruft.
5798 * lily/include/font-metric.hh: use size_t not vsize for indices.
5800 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5803 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5805 * lily/include/paper-book.hh (class Paper_book):
5806 make get_system_specs() public.
5808 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5809 the force=10000 case if we don't have a current-best.
5811 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5814 * flower/include/flower-proto.hh: remove outdated templates.
5816 * scm/page.scm: use annotate-spacing
5818 2006-02-15 Graham Percival <gpermus@gmail.com>
5820 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5822 * THANKS: moved Erlend Aasland to contributors.
5824 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5826 * config.hh.in: remove HAVE_PANGO_16
5828 * lily/tuplet-bracket.cc (calc_positions): multiply with
5829 staff-space for beam case. This fixes tuplets+beams on scaled
5832 * config.hh.in: remove all Kpathsea related defines.
5834 * lily/dot-column.cc (side_position): reach stem via dots->
5835 head->stem. Inspect all stems for dot collisions.
5837 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5840 * lily/bar-number-engraver.cc (process_music): document function
5843 * lily/score.cc (default_rendering): add pscore, not systems
5846 * lily/paper-book.cc (get_system_specs): separate generation of
5849 * flower/include/std-vector.hh: don't include config.hh
5851 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5853 * flower/include/std-vector.hh: Better wrapper compatibility with
5856 * flower/include/flower-proto.hh: Remove cheap forward declaration
5859 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5861 2006-02-14 Graham Percival <gpermus@gmail.com>
5863 * Documentation/user/invoking.itely: add warning about command line.
5865 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5867 * lily/include/lily-proto.hh: add Prob, rm Page.
5869 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5871 * VERSION: release 2.7.34
5873 * lily/relocate.cc (framework_relocation): show canary if
5874 GHOSTSCRIPT_VERSION undefined.
5876 * GNUmakefile.in: remove $(VERSION) symlink.
5878 * lily/relocate.cc (setup_paths): add +
5880 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5882 * Documentation/index.html.in: specify sizes for all big HTML pages.
5884 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5886 * config.hh.in: remove @FRAMEWORKDIR@
5888 * lily/system-start-text.cc (get_stencil): new file: separate out
5889 system-start-delimiter text support.
5891 * input/**ly: replace \context with \new where appropriate.
5895 * lily/slur-scoring.cc (get_base_attachments): use
5896 robust_relative_extent. This fixes problems with empty paper-columns.
5898 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5900 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5902 * scm/define-music-properties.scm (all-music-properties):
5903 create-new property.
5905 * lily/context-specced-music-iterator.cc (construct_children):
5906 inspect 'create-new property iso. magical $uniqueContextId context
5909 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5911 * lily/context-key-manager.cc (Module): new file. Encapsulate
5912 object key generation.
5914 * lily/include/context-key-manager.hh (Module): new file.
5916 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5918 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5921 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5923 (reloc_b): excise --enable-framework-dir
5925 * lily/relocate.cc (framework_relocation): use getenv
5926 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5928 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5930 * flower/include/std-string.hh:
5931 * flower/include/std-vector.hh: Finish std:: conversion; move
5932 flower extensions from std:: namespace. Update users.
5934 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5935 their expansion to vector<*>. Update users.
5937 2006-02-10 Graham Percival <gpermus@gmail.com>
5939 * Documentation/user/invoking.itely: add example to File structure.
5941 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5942 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5944 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5946 * ly/paper-defaults.ly: typo.
5948 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5949 set_parent() for parentheses. This will make it show up in bbox
5952 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5953 ly:grob-common* functions.
5955 * lily/grob-scheme.cc (LY_DEFINE):
5956 ly:grob-common-refpoint-of-array: new function
5957 ly:grob-common-refpoint: new function
5958 ly:grob-relative-coordinate: new function
5960 * lily/instrument-name-engraver.cc (process_music): use
5961 Text_interface::is_markup(). This fixes \markup on instrument names.
5963 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5966 * lily/slur.cc (print): idem.
5968 * lily/tie.cc: add line-thickness for ties.
5970 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5972 * scm/output-svg.scm: Document diversion from GNU coding standards
5973 as a workaround for a bug in Microsoft Internet Explorer.
5975 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5977 * lily/instrument-name-engraver.cc (process_music): use
5978 is_markup() iso. is_string()
5980 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5982 * lily/percent-repeat-engraver.cc (process_music): only look at
5983 main_part_ for % repeats.
5985 * lily/stem-tremolo.cc (get_beam_translation): new function.
5986 (calc_slope): new function.
5987 (height): don't use real slope.
5989 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5991 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5992 new connect-to-neighbor, control-points and staff-padding
5993 properties to make ligature brackets showing up again.
5995 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5997 * VERSION: release 2.7.33
5999 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
6002 * Documentation/user/changing-defaults.itely (Difficult tweaks):
6003 remove applyOutput example.
6004 (Objects connected to the input): document \tweak, \parenthesize
6006 * lily/relocate.cc (prefix_relocation): allow "current"
6007 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
6008 changing VERSION in a lily tree less painful.
6010 * input/regression/parenthesize.ly: new file.
6012 * scm/output-lib.scm (parenthesize-element): new function.
6014 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
6016 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
6018 * lily/accidental-engraver.cc (make_standard_accidental): reroute
6019 cause: accidentals are caused by note heads, not note events.
6021 2006-02-08 Graham Percival <gpermus@gmail.com>
6023 * darwin.patch: small patch from Erlend, thanks!
6025 * Documentation/user/basic-notation.itely: add stem-neutral example.
6027 * Documentation/user/putting.itely: clarifications.
6029 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6031 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
6032 note, add more guidelines to what should go into NEWS.
6034 * input/sakura-sakura.ly: document how to override font.
6036 * input/regression/font-family-override.ly: doc -dshow-available-fonts
6038 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6040 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6042 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
6044 * scripts/convert-ly.py (lilypond_version_re_str): Move from
6045 convertrules. Add explicit grouping, needed for python2.2.
6047 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
6049 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6051 2006-02-07 Graham Percival <gpermus@gmail.com>
6053 * Documentation/user/global.itely: fix line-width in (text) docs.
6055 * Documentation/user/lilypond-book.itely: same.
6057 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6059 * VERSION (PACKAGE_NAME): release 2.7.32
6061 * Documentation/topdocs/NEWS.tely (Top): document new variable
6064 * flower/include/array.icc (Message): remove file.
6066 * flower/include/std-vector.hh: make sure vsize and VPOS are
6067 defined for binary_search_bounds().
6069 * flower/std-string.cc (std): add to_string(long unsigned).
6071 * configure.in (gui_b): excise std_string option.
6072 (gui_b): excise std_vector option.
6074 * flower/string.cc (Module): excise flower array & string
6076 * flower/include/std-string.hh: excise flower string.
6078 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6080 * python/convertrules.py (lilypond_version_re_str): require
6081 only numbers and dots in \version string.
6083 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6085 * lily/system-start-delimiter.cc (print): allow style = text too.
6087 * lily/system-start-delimiter-engraver.cc
6088 (acknowledge_system_start_text): new function, also add add to
6089 support of system-start-text (instrument names). This fixes
6090 instrument names on piano staves.
6092 * lily/instrument-name-engraver.cc: rewrite. Use
6093 system-start-delimiter approach. This save memory and cpu.
6095 * scm/define-grobs.scm (all-grob-descriptions): remove
6096 instrument-name from break-alignment.
6098 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6100 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6102 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6105 * configure.in (std_vector): On by default.
6107 * lily/include/font-metric.hh:
6108 * lily/include/tfm-reader.hh:
6109 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6112 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6114 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6116 * VERSION (PACKAGE_NAME): 2.7.31
6118 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6119 EPS edge at 0, but take minimum with left-overshoot. This fixes
6120 cut off system start delims.
6122 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6123 hack: add to axis group if not added yet. This fixes hara kiri'd
6126 * lily/hara-kiri-group-spanner.cc
6127 (force_hara_kiri_in_y_parent_callback): fix signatures.
6129 * lily/hairpin.cc (print): check next hairpin to see whether or
6130 not to be continuing.
6132 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6134 * Remove trailing whitespace from makefiles.
6136 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6139 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6141 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6143 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6145 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6147 * configure.in: Use it.
6149 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6151 * scm/music-functions.scm (pitch-of-note): new function.
6153 * ly/music-functions-init.ly: add \octave and \addquote
6155 * lily/parser.yy (music_function_chord_body): softcode \octave.
6156 (lilypond_header): softcode \addquote
6158 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6160 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6161 array.hh, parray.hh at all. Getting ready to flip the
6164 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6166 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6169 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6171 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6173 * flower/include/array.hh: typo.
6175 2006-02-02 Graham Percival <gpermus@gmail.com>
6177 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6179 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6181 * flower/include/pqueue.hh: Derive from std::vector.
6183 * flower/include/parray.hh: Conform to std::vector interface.
6186 2006-02-02 Graham Percival <gpermus@gmail.com>
6188 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6190 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6192 * flower/file-path.cc (is_file): remove if 0 section.
6194 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6195 selecting afii61352.
6197 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6199 * flower/include/std-vector.hh (boundary): Oops, reverse.
6201 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6202 remove superfluous `d'.
6204 * flower/include/std-vector.hh (boundary, top): Detach from class.
6205 Remove empty vector shell.
6207 * flower/include/array.hh (reverse, swap): Detach from class.
6210 * flower/include/std-vector.hh
6211 * flower/include/array.hh (concat): Globally change to insert ().
6213 * flower/include/std-vector.hh
6214 * flower/include/parray.hh
6215 * flower/include/array.hh (elem, elem_ref): Globally replace by
6218 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6220 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6222 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6223 anticipate on identifier substitutions.
6225 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6227 * flower/include/std-vector.hh (insert): Remove, replace by
6228 std::vector interface. Update callers.
6230 * flower/include/array.icc (insert): Change signature to
6231 match std::vector interface.
6233 * flower/include/array.icc (vector_sort): Bugfix.
6235 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6237 * lily/parser.yy (output_def_head_with_mode_switch): new
6238 production. Result: dashes and underscores may be used in the
6241 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6243 * python/convertrules.py (conv): oops. One slash too much.
6245 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6247 * flower/include/std-vector.hh (sort): Remove, replace by
6248 ::vector_sort. Update callers.
6250 * flower/include/std-vector.hh (slice): Remove. Update callers.
6253 * flower/test-std.cc (vector_sort): New test.
6255 2006-02-01 Graham Percival <gpermus@gmail.com>
6257 * Documentation/user/putting.itely: fixes from Erik.
6259 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6261 * flower/test-std.cc: Add simple unit test for vector migration.
6263 * stepmake/stepmake/test*: Unit test support.
6265 * flower/include/std-vector.hh (del): Remove. Use erase (),
6268 * flower/include/array.hh (begin, end): Add.
6271 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6273 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6274 std::string not String.
6276 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6279 * lily/prob.cc (Prob): copy type_ too.
6281 * lily/lily-guile.cc (mangle_cxx_identifier): new
6282 function. Class_bla::foo_bar_[px] ->
6283 ly:class-bla::foo-bar[?!]. Changes throughout
6285 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6287 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6289 * lily/beam.cc (calc_direction): take dir from visible stem in
6292 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6294 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6295 Fix -1, >=0 boundary checks for unsigned vsize.
6297 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6298 loop for unsigned vsize.
6300 * configure.in (--enable-std-vector): New option.
6301 (--enable-std-string): On by default.
6303 * flower/include/std-vector.hh: New file. Enable switch to
6304 std::vector, update client code.
6306 2006-01-30 Graham Percival <gpermus@gmail.com>
6308 * scm/document-translation.scm: clarify "this context is also
6309 known as". Thanks, Werner!
6311 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6313 * Documentation/user/invoking.itely: small fix from Don.
6315 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6317 * scm/lily.scm (define-scheme-options): rename option
6318 preview-include-book-title to book-title-preview
6319 (define-scheme-options): move force-eps-font-include (from paper
6320 block) to eps-font-include -d option.
6322 * VERSION (PATCH_LEVEL): release 2.7.30
6324 * input/bach-schenker.ly (staffPiano): new file.
6326 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6328 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6331 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6333 * ps/lilyponddefs.ps: remove start-system, stop-system,
6334 start-page fluff. This saves putting { } code on the stack, fixing
6335 stack overflows when including EPS files.
6337 2006-01-29 Graham Percival <gpermus@gmail.com>
6339 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6341 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6343 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6345 2006-01-28 Graham Percival <gpermus@gmail.com>
6347 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6349 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6351 * input/mutopia/claop.py: Update.
6353 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6355 * input/regression/completion-heads.ly (texidoc): fix.
6357 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6359 * lily/tie-formatting-problem.cc
6360 (set_ties_config_standard_directions): use abs iso fabs for ints.
6362 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6364 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6365 little less than noteheight, to prevent overlaps in chords.
6367 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6368 head, and fudge stem-attachment.
6370 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6372 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6374 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6376 * lily/main.cc (main): Debugging aid: catch exceptions.
6378 * flower/std-string.cc (to_string): Robustification. Fixes midi
6379 output with std::string.
6381 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6383 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6385 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6387 * Fix -DSTRING_UTILS_INLINED.
6389 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6391 * VERSION (PATCH_LEVEL): release 2.7.29
6393 * lily/relocate.cc (setup_paths): mingw uses std string too.
6395 * lily/*.cc: various fixes for substr(ARG).
6397 * lily/sustain-pedal.cc (print):
6399 * flower/file-name.cc (slashify): use std strings.
6401 * flower/string-convert.cc: remove publib.h
6403 * scm/define-markup-commands.scm (verbatim-file): new markup
6404 command \verbatim-file
6406 * Documentation/topdocs/NEWS.tely: fixup URLs
6408 * input/regression/alignment-vertical-manual-setting.ly (Module):
6411 * lily/align-interface.cc (align_elements_to_extents): overwrite
6412 translations with numbers in alignment-offsets from left bound
6414 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6415 (page-translate-systems): new function: take into account Y-offset.
6417 * Documentation/topdocs/NEWS.tely (Top): document new features.
6419 * input/regression/page-layout-manual-position.ly (Module): new
6422 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6424 * flower/file-path.cc (path::parse_path): Oops.
6426 * Finish std::string interface. For now, use std:: marker
6427 throughout for easy s/r.
6429 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6431 * Documentation/user/putting.itely (Score is a single musical
6433 (Score is a single musical expression): more typos.
6435 * scm/page.scm (annotate-space-left): thinko.
6436 (annotate-page): more thinkos.
6438 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6440 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6441 for different \score blocks separately.
6442 (post-process-pages): put write-page-layout into paper block.
6444 * lily/output-def.cc (get_parser): new file.
6446 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6449 * lily/include/output-def.hh (class Output_def): add parser_ member.
6451 * input/regression/page-layout-twopass.ly (Module): new file.
6453 * scm/lily.scm: remove cpp hack.
6455 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6457 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6459 * GNUmakefile.in (c-clean): New target.
6461 * flower/include/std-string.hh: String/std::string compatibility:
6462 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6465 * flower/rational.cc:
6466 * flower/include/rational.hh:
6469 * flower/include/offset.hh:
6471 * flower/interval.cc:
6472 * flower/include/interval.hh:
6474 * flower/string-convert.cc:
6475 * flower/include/string-convert.hh: Use std::string [interface].
6478 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6480 * Documentation/index.html.in: clean up.
6482 2006-01-25 Graham Percival <gpermus@gmail.com>
6484 * Documentation/user/putting.itely: another new untested doc section.
6486 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6488 * scm/layout-page-layout.scm (write-page-breaks): write
6489 \spacingTweaks #ALIST. Handle grace timing.
6491 * scm/: more imports.
6493 * scm/page.scm (make-page): add footer/header.
6494 (annotate-space-left): revise: only take page argument.
6495 (layout->page-init): new function.
6497 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6498 version of the system/spacing/linebreak hack writing to the output
6500 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6503 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6506 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6508 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6510 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6512 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6513 handling to page.scm
6515 * lily/prob-scheme.cc (LY_DEFINE): new file.
6516 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6518 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6521 * lily/music.cc (derived_mark): derive Music from Prob.
6523 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6525 * lily/prob.cc (Module): Implement Prob (Property Object), object
6526 with shared and r/w property alists.
6528 * lily/include/prob.hh (Module): new file. Declare Prob.
6530 * flower/string.cc: remove is_empty().
6532 * flower/include/string.hh (class String): remove String:: qualifier.
6534 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6535 substitute appropriate functions.
6537 * flower/include/string.hh (class String): remove to_str0 and
6538 is_empty(). S&R everywhere.
6540 2006-01-23 Graham Percival <gpermus@gmail.com>
6542 * Documentation/user/basic-notation.itely: add hairpin
6543 after-linebreak tweak to commonprop.
6545 * Documentation/user/putting.itely: added two new sections.
6547 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6549 * flower/international.cc:
6550 * flower/include/international.hh:
6552 * flower/getopt-long.cc:
6553 * flower/include/getopt-long.hh: Use std::string [interface].
6556 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6558 * stepmake/stepmake/executable-rules.make: Add dependency on
6561 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6563 * flower/file-path.cc:
6564 * flower/include/file-path.hh: Use std::string [interface].
6567 * flower/direction.cc:
6568 * flower/axis.cc: Unused. Remove.
6570 * configure.in (--enable-std-string): New option.
6572 * flower/std-string.cc:
6573 * flower/include/std-string.hh: New file.
6575 * flower/file-name.cc[STD_STRING]:
6576 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6578 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6580 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6582 * scm/define-markup-commands.scm (with-dimensions):
6583 with-dimensions markup command.
6585 * input/test/font-table.ly: use it.
6587 * lily/open-type-font.cc (glyph_list): new function.
6589 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6591 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6593 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6595 * ly/music-functions-init.ly (parallelMusic): new music function
6596 for parallel music entry.
6598 * scm/define-music-properties.scm (all-music-properties): new
6599 'void music property
6601 * scm/music-functions.scm (ly:music-message): make public, to be
6602 used in music function definitions
6604 * scm/lily-library.scm (collect-music-for-book): discard music
6605 when the 'void property is set.
6607 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6609 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6611 * mf/GNUmakefile: idem.
6613 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6615 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6617 * Documentation/user/notation-appendices.itely (The Feta font):
6620 * input/test/font-table.ly: new file. Generate font table within lily.
6622 * Documentation/user/notation-appendices.itely (The Feta font):
6623 use new font-table.ly file.
6625 * stepmake/stepmake/install-out-targets.make
6626 (local-install-outfiles): only create directory if
6627 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6629 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6631 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6633 * VERSION (PACKAGE_NAME): release 2.7.28
6635 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6636 the right font from a Mac dfont.
6637 (write-preamble): don't forget directory, only look at files.
6639 This fixes problems with TTF files in dfonts that don't match
6640 their PostScript names.
6642 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6643 PS name from TTF font.
6645 * input/regression/tie-manual.ly: document new feature.
6647 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6649 * VERSION (MY_PATCH_LEVEL): bump to .28
6651 * Documentation/user/basic-notation.itely (Ties): add tie examples
6654 * lily/tie-formatting-problem.cc (score_ties_configuration):
6655 symmetry penalties for outer ties.
6657 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6659 * lily/tie-formatting-problem.cc (generate_configuration)
6660 (set_manual_tie_configuration): skip non-pair manual
6661 tie-configuration, so you can set individual ties as
6663 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6665 * input/regression/tie-chord.ly: use generateTiePattern to
6668 * lily/tie-formatting-problem.cc (peak_around): new function.
6669 (score_configuration): use sliding criterion for staff line collisions.
6670 (score_configuration): idem for dot collisions.
6671 (generate_configuration): use separate stem_gap for gap to stem.
6673 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6674 separate penalty factors for x and y distance.
6675 (struct Tie_details): separate penalties for tip and center line collisions.
6677 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6679 * lily/tie-formatting-problem.cc (generate_configuration): make
6680 large ties avoid stafflines in the horizontal section.
6681 (score_configuration): use softcoded penalties
6682 (score_aptitude): idem.
6684 * lily/tie-helper.cc (from_grob): softcode tie details
6686 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6688 * lily/staff-symbol-referencer.cc (on_line): rename from
6691 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6693 * ly/music-functions-init.ly: remove duplicate tag.
6695 * lily/include/*.hh: GCC 4.1 fixes.
6697 006-01-16 Erlend Aasland <erlenda@gmail.com>
6699 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6701 * scm/define-music-types.scm: fix bug in desc. string
6702 for OverrideProperty
6704 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6706 * scripts/lilypond-book.py: bugfix
6708 * scm/define-music-types.scm: fix typos.
6710 2006-01-14 Graham Percival <gpermus@gmail.com>
6712 * Documentation/user/ basic-notation.itely, global.itely,
6713 advanced-notation.itely, instrument-notation.itely: small
6714 additions (bugs and commonly tweaked properties).
6716 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6718 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6719 detection of mingw build.
6720 (MINGW_BUILD): opps.
6722 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6724 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6727 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6729 * scm/music-functions.scm (skip->rest): add skip->rest
6731 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6733 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6736 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6737 config dirs. Aids debugging.
6738 (display_config): also display config files.
6740 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6742 * VERSION: release 2.7.27
6744 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6745 for determining bar size.
6747 * lily/staff-symbol.cc (print): place lines at distance line-positions
6749 * scm/define-grob-properties.scm (all-user-grob-properties): add
6752 * lily/staff-symbol.cc (height): new function.
6754 * input/regression/staff-line-positions.ly: new file.
6756 2006-01-06 Graham Percival <gpermus@gmail.com>
6758 * input/test/add-staccato.ly: remove reference to old file.
6760 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6762 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6763 lilypond binary too.
6765 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6767 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6769 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6771 * scripts/midi2ly.py: Bugfix: Declare datadir.
6773 * make/ly-rules.make:
6774 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6775 that seems to be gone). Fixes make web.
6777 * The grand 2005-2006 replace.
6779 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6781 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6783 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6784 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6785 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6786 like -dgs-font-load.
6788 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6789 remove absolute path to lilypond binary.
6791 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6793 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6795 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6797 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6799 * mf/GNUmakefile: remove broken dvips map symlink.
6801 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6804 * configure.in: Cosmetic fixes.
6806 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6808 * Documentation/user/music-glossary.tely (Pitch names): Added
6809 Spanish pitch names and durations, thanks to Ernesto Gancedo
6811 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6813 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6814 init. Fixes verbose printing of .scm files.
6816 * stepmake/aclocal.m4: add spaces before - options.
6818 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6820 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6821 of path search in local block variable.
6823 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6825 * configure.in (NCSB_DIR): --enable-ncsb-dir
6826 (LINK_GXX_STATICALLY): denko.
6828 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6830 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6831 use locate to find c059033l.pfb.
6833 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6835 * lily/tie-formatting-problem.cc
6836 (problem::generate_base_chord_configuration): Use my_round (was
6839 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6840 do not invoke mbrtowc.
6842 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6844 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6846 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6848 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6850 * Documentation/user/invoking.itely (svg): revise.
6852 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6854 * lily/lexer.ll: use sourcefilename iso. renameinput.
6856 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6858 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6859 <PostScriptName>.ttf instead of c059XXXttf.
6861 * lily/program-option.cc (LY_DEFINE): special support for
6862 --verbose, so it works before option init too.
6864 * mf/GNUmakefile (local-install): oops.
6866 * lily/lyric-hyphen.cc (print): oops.
6868 * buildscripts/pfx2ttf.fontforge: new file.
6870 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6871 ($(outdir)/%.ttf): new rule.
6873 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6876 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6879 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6881 * VERSION: release 2.7.26
6883 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6885 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6887 * lily/font-config.cc (init_fontconfig): verbosity.
6889 * THANKS: add Muziekacademie Lede.
6891 * scripts/musicxml2ly.py (print_voice_definitions): new function
6892 (print_score_setup): new function
6893 (convert): read part definition to output staves properly.
6895 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6898 * python/musicexp.py (Output_printer.__init__): use _ in data
6900 (Output_printer.unformatted_output): new function: no formatting,
6902 (Duration.get_length): remove isinstance() checks for
6903 Output_printer everywhere.
6905 * input/regression/lyrics-bar.ly (texidoc): add
6906 Separating_line_group_engraver.
6908 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6910 * lily/relocate.cc (framework_relocation): New function,
6911 factored from set_relocation ().
6912 (prefix_relocation): Rename from set_relocation ().
6913 (setup_paths): Use it.
6915 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6917 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6918 numbers. Patch by Erlend Aasland.
6920 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6922 * lily/font-config.cc (init_fontconfig): print warning if cache
6923 file is not existant.
6925 * lily/main.cc: don't use #ifdef but #if
6927 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6929 * lily/grob-property.cc (internal_set_property): don't abort on
6930 calculation-in-progress.
6932 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6934 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6935 connect-to-neighbor property not connect-to-other
6937 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6938 (LY_DEFINE): oops. don't forget protection.
6940 * flower/parse-afm.cc (Module): strip AFM handling completely.
6942 * lily/stencil-expression.cc: idem.
6944 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6946 * lily/function-documentation.cc (ly_add_function_documentation):
6947 use static member iso. Protected_scm
6949 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6951 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6953 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6955 * lily/relocate.cc (set_env_dir): New function.
6956 (set_relocation): Use it to fix setting PANGO_PREFIX.
6958 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6960 * input/regression/stem-direction-context.ly: remove rest.
6962 * lily/melody-engraver.cc (process_music): restart for bar lines.
6963 (acknowledge_slur): restart for slurs.
6965 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6967 * Documentation/user/invoking.itely: describe how to view SVG
6968 output using Inkscape which replace embedded fonts with OTF fonts.
6970 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6972 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6974 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6976 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6979 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6981 * VERSION (PACKAGE_NAME): release 2.7.25
6983 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6985 * input/regression/stem-direction-context.ly: new file.
6987 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6989 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6992 * ly/engraver-init.ly: add Melody_engraver
6994 * lily/beam.cc (calc_direction): use default-direction
6995 iso. get_default_direction()
6997 * scm/define-grob-properties.scm (all-user-grob-properties): add
6998 default-direction property.
7000 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
7002 * lily/stem.cc (calc_default_direction): remove
7003 Stem::get_default_direction, use default-direction with callback
7006 * lily/melody-spanner.cc (calc_neutral_stem_direction):
7008 * lily/melody-engraver.cc: new file. Acknowledge stems for
7009 interpolated stem directions.
7011 * lily/melody-spanner.cc: new file. Interpolate stem directions.
7013 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
7015 * lily/slur-configuration.cc (fit_factor): more robust check for
7016 point in curve X-extent.
7018 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
7019 (outside_slur_callback): check for 'outside avoidance.
7021 * lily/slur-configuration.cc (score_extra_encompass): don't use
7022 bound->column() == avoid->column() for checking extents, as this
7023 doesn't work for accidentals.
7025 * lily/slur-engraver.cc (acknowledge_extra_object): remove
7026 DynamicText hardcoding.
7028 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
7029 crash if bound stem is NULL
7031 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
7034 2005-12-22 Graham Percival <gpermus@gmail.com>
7036 * scm/define-markup-commands.scm: typo. @code{\raise}
7039 * darwin.patch: now used again, includes a
7040 required patch from fink.
7042 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
7044 * po/TODO: mention gtranslator along with kbabel.
7045 * po/fi.po: update translations.
7047 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7049 * lily/relocate.cc (setup_paths): Bugfix.
7051 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7053 * lily/slur-configuration.cc (score_extra_encompass): don't use
7054 "avoid" choice for avoid-slur.
7056 * stepmake/bin/install.py (dest): don't create existing dir.
7058 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7060 * stepmake/bin/install.py: Remove file before copying.
7063 * stepmake/aclocal.m4: Do not substitute INSTALL.
7065 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7067 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7068 depend on link-tree.
7070 * lily/relocate.cc (setup_paths): only check path for non-absolute
7071 dir without directory part.
7073 * flower/file-name.cc (is_absolute): new method.
7074 (is_absolute): check root_ too.
7076 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7078 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7079 relocation code. Oops, don't comment out too much.
7081 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7084 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7087 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7089 * .cvsignore: Add install-sh.
7091 * autogen.sh (srcdir): Typo.
7093 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7095 * autogen.sh (srcdir): urg. Touch install-sh.
7097 * stepmake/bin/install-sh (Module): remove.
7099 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7101 * lily/include/relocate.hh: new file.
7103 * lily/relocate.cc: new file. Contain relocation logic.
7105 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7106 (main): read LILYPOND_VERBOSE as the first thing.
7108 * stepmake/aclocal.m4: remove INSTALL variable.
7110 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7111 separate target for making font symlinks.
7112 (documentation-dir): use $(if $(findstring )) for switching off
7115 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7116 something if DOCUMENTATION is no.
7118 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7120 * VERSION: release 2.7.24
7122 * lily/script-column-engraver.cc (stop_translation_timestep):
7123 delay adding to script-column.
7125 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7127 * python/convertrules.py (conv): rule for number-visibility
7129 * lily/slur-configuration.cc (score_extra_encompass): different
7130 distance measure for avoid and inside avoidance.
7131 (score_extra_encompass): use 1/(distance+eps) as penalty.
7133 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7134 encompass objects for generating slur curves.
7136 * lily/slur.cc: use details iso. slur-details property.
7138 * input/regression/slur-tuplet.ly: new file.
7140 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7142 * flower/include/offset.hh (class Offset): new operator /=
7144 * lily/tuplet-number.cc (print): new file, new interface.
7146 * scm/define-grob-properties.scm (all-user-grob-properties):
7147 remove number-visibility property.
7149 * lily/tuplet-bracket.cc (calc_control_points): new function
7150 (calc_connect_to_neighbors): new function.
7151 (print): remove text handling for tuplet numberdef.
7153 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7156 * lily/lily-guile.cc (robust_scm2booldrul): new function
7158 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7160 * lily/tuplet-bracket.cc (calc_position_and_height): use
7161 staff-padding to control whether tuplet brackets are over staves.
7163 * lily/grob.cc (suicide): clear dim_caches_.
7165 * lily/dimension-cache.cc (clear): new function.
7167 * lily/grob.cc (extent): swap order of min-extent and extent
7168 calculations. This fixes hara kiri staves.
7170 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7172 * lily/main.cc: Nitpick: relocation is not based on path, but on
7173 directory (location).
7175 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7177 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7179 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7181 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7183 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7185 * stepmake/stepmake/generic-vars.make (Module): idem.
7187 * stepmake/stepmake/executable-targets.make (default): use it.
7189 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7191 * make/GNUmakefile: don't install make rules.
7193 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7195 (prepend_env_path): more verbosity.
7197 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7199 * GNUmakefile.in: add dir argument for find command.
7201 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7202 fixes weird line numbers for point & click.
7204 * lily/source-file.cc (get_counts): init line/column/char counts.
7206 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7208 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7210 2005-12-16 Graham Percival <gpermus@gmail.com>
7212 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7213 minor fixes from Fredric. Thanks!
7215 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7217 * ly/music-functions-init.ly: add \bar and \clef music function
7219 * lily/lily-lexer.cc: idem.
7221 * lily/parser.yy (FIXME): remove BAR and CLEF.
7223 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7225 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7227 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7228 function arguments too
7230 * lily/main.cc (set_relocation): new function.
7232 * scripts/musicxml2ly.py (convert): add \version
7234 * lily/tie.cc: remove get_default_attachments()
7236 * VERSION (PACKAGE_NAME): release 2.7.23
7238 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7239 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7241 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7243 * lily/tie-formatting-problem.cc (score_ties): new function
7244 (get_variations): new function. Try flipping dirs for collisions.
7245 (generate_optimal_chord_configuration): new function. 1-opt search
7246 for better configuration.
7248 * lily/tie-configuration.cc: new file.
7250 * lily/tie.cc: junk Tie::get_configuration()
7252 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7253 (score_ties_configuration): new function.
7254 (generate_ties_configuration): new function.
7255 (generate_base_chord_configuration): new function.
7256 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7257 (set_manual_tie_configuration): Move body from tie-column-format.cc
7259 * input/regression/tie-dot.ly: new file.
7261 * lily/tie-formatting-problem.cc (score_configuration): score
7264 * lily/tie-helper.cc (get_transformed_bezier): new function
7266 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7268 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7269 -undefined suppress iso. -framework Python
7271 * scm/define-grobs.scm (all-grob-descriptions): set
7272 springs-and-rods (thanks Joe Neeman!)
7274 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7276 * input/no-notation/display-lily-tests.ly (test):
7277 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7278 changed from \tag #'(a b) to \tag #'a \tag #'b
7280 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7282 * Documentation/topdocs/NEWS.tely: strip out-www.
7284 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7286 * config.make.in (AR): add AR and RANLIB
7288 * flower/libc-extension.cc: include cassert
7290 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7293 2005-12-11 Graham Percival <gpermus@gmail.com>
7295 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7297 * stepmake/stepmake/python-modules-vars.make: define
7298 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7300 * THANKS: added Johannes Schindelin.
7302 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7304 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7306 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7307 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7309 * lily/parser.yy: reorganize file layout.
7311 * ly/music-functions-init.ly: add tweak music function.
7313 * lily/grob-info.cc (ultimate_music_cause): new function:
7314 recursively lookup causes.
7316 * lily/parser.yy (chord_body_element): allow music functions for
7317 post-events, allow music functions for chord elements.
7319 * lily/font-config-scheme.cc (display_fontset): add cast.
7321 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7322 #'(a b) -> \tag #'a \tag #'b rule.
7324 * python/musicexp.py (Output_printer.dump_version): new function
7326 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7328 * lily/parser.yy (FIXME): remove \tag
7329 (FIXME): remove tag_music() function.
7331 * lily/lily-lexer.cc: remove \tag
7333 * ly/music-functions-init.ly: define music-function "tag"
7335 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7337 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7339 * VERSION (PATCH_LEVEL): release 2.7.22
7341 * input/regression/lyric-hyphen-retain.ly: renew.
7343 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7346 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7347 iso. minimum-length property for rods.
7349 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7350 LyricSpace item to keep lyrics spaced apart.
7352 * ly/engraver-init.ly: remove Separating_line_group_engraver
7354 * Documentation/user/music-glossary.tely: do setfilename before
7357 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7359 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7360 See xref documentation, for example.
7362 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7364 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7365 pending_skip iso. ly_voice[-1]
7366 (main): add if __main__ for debugging.
7368 * python/musicxml.py (Accidental.__init__): new class.
7370 * scripts/musicxml2ly.py (progress): new function
7371 (musicxml_key_to_lily): don't barf on modeless keys.
7372 (create_skip_music): new function.
7373 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7374 (musicxml_note_to_lily_main_event): new function.
7376 * python/musicexp.py (Music.__init__): add comment field.
7377 (NestedMusic.append): new routine.
7378 (SequentialMusic.print_ly): print comment.
7379 (ArpeggioEvent.ly_expression): new class
7380 (BeamEvent.ly_expression): new class
7381 (NoteEvent.__init__): support for cautionary/forced accs.
7383 * lily/lookup.cc (slur): normal order for array loop.
7385 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7388 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7391 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7393 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7395 * scripts/lilypond-book.py: Introduce option
7396 --preserve-line-breaks, for usage with srcltx
7398 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7400 * scm/output-lib.scm (print-circled-text-callback): draw circle
7401 around text using make-circle-markup.
7403 * Documentation/user/*: strip out-www from file names.
7405 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7407 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7408 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7410 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7412 * Documentation/user/GNUmakefile: idem.
7414 * Documentation/user/macros.itexi: strip out-www
7416 * python/rational.py: python 2.3 compat.
7418 * VERSION (PATCH_LEVEL): release 2.7.21
7420 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7421 option formatting, lilypond style.
7423 * python/musicexp.py: grab from Ikebana: a library for composing
7424 ly music expressions.
7425 (Output_printer): class for advanced .ly printing.
7428 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7429 convert to pythonesque structure.
7431 * python/rational.py: PD rational number class.
7433 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7435 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7437 * lily/part-combine-iterator.cc: Minor bugfix
7439 * THANKS: Update bughunters
7441 2005-12-02 Werner Lemberg <wl@gnu.org>
7443 * mf/README: Document process for proper mf2pt1 conversion.
7445 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7448 * mf/feta-harmonica.mf: Removed. Unused.
7450 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7452 * scripts/lilypond-book.py (do_file): fix thinkos.
7454 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7456 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7457 ($(outdir)/parser.cc):
7458 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7460 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7462 * ly/titling-init.ly (tagline): it should be a space between
7463 "Music engraving by LilyPond" and the version number.
7465 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7467 * VERSION (PACKAGE_NAME): release 2.7.20
7469 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7471 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7473 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7475 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7477 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7479 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7481 * kpath-guile/: remove directory
7483 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7484 file. Encapsulate kpathsea using commandline tools.
7486 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7489 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7491 * Documentation/user/advanced-notation.itely (Setting automatic
7492 beam behavior): Correct a few typos. Thanks to David Bobroff.
7494 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7495 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7497 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7499 * scripts/*.py: gmane address for bugs.
7501 2005-11-28 Pal Benko <benkop@freestart.hu>
7503 * make/ly-rules.make: add -f switch to mv
7505 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7507 * lily/bar-line.cc: interpret it
7509 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7511 * configure.in (--disable-documentation): New switch.
7513 * GNUmakefile.in: Use it.
7515 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7517 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7519 * scripts/lilypond-book.py (do_file): search chunks for
7522 * GNUmakefile.in: add copy step in between so we can lose the
7523 out-www directories.
7525 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7527 * lily/pango-font.cc (pango_item_string_stencil): put
7528 geometry.width into glyph-string too.
7530 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7532 * scm/define-music-display-methods.scm (RevertProperty):
7533 (OverrideProperty): Use grob-property-path property, a list of
7534 symbols, instead of grob-property, which used to be a single
7536 (BassFigureEvent): a figure can be a plain number, not necessarily a
7539 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7541 * VERSION: release 2.7.19
7543 * lily/figured-bass-engraver.cc (process_music): check
7544 figuredBassCenterContinuations first.
7546 * scm/translation-functions.scm (format-bass-figure): make double
7549 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7552 * lily/system-start-delimiter-engraver.cc: move from
7553 Nested_system_start_delimiter_engraver, rename
7554 Nested_system_start_delimiter_engraver ->
7555 System_start_delimiter_engraver.
7557 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7558 bracket type from hierarchy.
7560 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7562 * lily/rest.cc (y_offset_callback): read staff-position.
7564 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7565 mark after-line-breaking-callback as internal.
7567 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7569 2005-11-25 Werner Lemberg <wl@gnu.org>
7571 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7573 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7575 * stepmake/bin/add-html-footer.py (do_file): add google
7577 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7578 staff if first_start_ is true.
7580 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * scripts/midi2ly.py (split_track): add __repr__ members.
7583 (track_first_item): only return Item if not None. This fixes a
7584 problem when dumping a track that starts with an empty channel.
7586 * python/midi.c: doc module.
7588 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7590 * Documentation/user/global.itely (Creating MIDI files): Fix
7591 compilation problem.
7593 2005-11-22 Graham Percival <gpermus@gmail.com>
7595 * Documentation/user/basic-notation.itely: clarify dynamic
7598 * Documentation/user/advanced-notation.itely: add unicode
7599 escape control example, whatever that is. :)
7601 * Documentation/user/global.itely: added "removing dynamics
7604 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7606 * VERSION (PATCH_LEVEL): release 2.7.18
7608 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7609 System_start_delimiter_engraver by
7610 Nested_system_start_delimiter_engraver.
7612 * lily/nested-system-start-delimiter-engraver.cc (struct
7613 Bracket_nesting_node): new class.
7614 (struct Bracket_nesting_group): new class
7615 (struct Bracket_nesting_staff): new class.
7616 (process_music): create hierarchy of grobs. This allows separate
7617 tuning of different SSDs.
7619 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7620 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7622 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7624 * lily/side-position-interface.cc (aligned_side): multiply
7627 * lily/script-engraver.cc (make_script_from_event): allow setting
7630 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7632 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7634 * scm/define-grobs.scm (all-grob-descriptions): new grob
7635 NestedSystemStartDelimiter.
7637 * input/regression/system-start-heavy-bar.ly: new file.
7639 * lily/nested-system-start-delimiter-engraver.cc: new file.
7641 * lily/nested-system-start-delimiter.cc: new file.
7643 * input/regression/system-start-nesting.ly: new file.
7645 * scm/define-grobs.scm (all-grob-descriptions): use X side
7646 positioning for positioning braces for nested contexts.
7648 * lily/system-start-delimiter.cc (print): don't divide extent by
7650 (print): use style iso. glyph.
7651 (staff_bracket): translate glyph inside routine already.
7653 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7655 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7658 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7660 * scm/define-context-properties.scm
7661 (all-user-translation-properties): rename figuredBassFormatter
7662 from newFiguredBassFormatter.
7664 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7666 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7668 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7670 * lily/beam.cc (calc_beaming): new function.
7671 (calc_shorten): new function.
7673 * THANKS: add Edward Neeman.
7675 * input/regression/accidental-clef-change.ly: new file.
7677 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7679 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7681 * lily/clef-engraver.cc (inspect_clef_properties): reset
7682 localKeySignature for clef changes.
7684 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7686 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7687 add dummy definition that works in Linux and add information in
7688 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7690 * Documentation/user/changing-defaults.itely (Modifying context
7691 plug-ins): Add index for \with.
7693 * Documentation/user/music-glossary.tely (dal segno): Updated
7694 example to version >=2.6.
7696 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7698 * Documentation/user/instrument-notation.itely (Printing chord
7699 names): Reorder \chordmode and \repeat in one example.
7701 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7703 * VERSION: release 2.7.17
7705 * Documentation/topdocs/NEWS.tely (Top): add note about
7708 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7709 new function. Search region of 3 positions for best tie.
7710 (score_configuration): new function.
7711 (score_aptitude): new function.
7712 (generate_configuration): new function.
7713 (get_configuration): new function.
7714 (Tie_formatting_problem): new function
7716 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7718 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7720 * THANKS: add Eduardo Vieira & Ralph Little
7722 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7725 * lily/include/tie-formatting-problem.hh (class
7726 Tie_formatting_problem): add Tie_details to
7727 Tie_formatting_problem. Update calling conventions.
7729 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7732 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7734 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7736 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7737 scm/define-context-properties.scm: Maintenance bugfix: make
7738 ligature brackets work again by removing obsolete ligature
7739 primitive callback push/pop.
7741 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7742 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7745 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7747 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7748 used and do not call it a path.
7749 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7751 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7753 * lily/include/tie-formatting-problem.hh (class
7754 Tie_formatting_problem): new file.
7756 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7758 * Documentation/misc/ChangeLog-2.3: new file.
7760 * lily/audio-staff.cc (output): degarianize.
7762 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7764 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7765 Unset PYTHONOPTIMIZE. Fixes install if set.
7767 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7769 * python/convertrules.py (conv): add warning about drums.
7771 * make/stepmake.make: include toplevel-version.make after config.make.
7773 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7774 also allow python2.4
7776 * config.make.in (configure-srcdir): remove GXX GCC vars.
7778 * stepmake/aclocal.m4: don't do non-srcdir build with
7779 symlinks. Use inclusion, so the src directory name can be changed.
7781 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7783 * make/mutopia-vars.make:
7784 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7787 2005-11-13 Werner Lemberg <wl@gnu.org>
7789 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7790 but the affected path. This ensures that the (overlapping) outlines
7791 have the same direction, which is a necessary prerequisite for
7792 FontForge's algorithm to remove overlaps.
7795 * mf/feta-haak.mf: Formatting.
7796 (draw_bracket): Slightly modify outline to avoid an unnecessary
7798 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7799 them from the affected paths.
7801 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7803 * mf/README: remove xpm / accordion notes.
7805 * lily/tie-column-format.cc (set_chord_outline): add dots into
7806 skyline extents. This fixes tie formatting if the left head has dots.
7808 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7809 space inside the staff.
7810 (get_configuration): shift another position if necessary in case
7813 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7815 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7816 buildscript-dir iso. $(depth)/buildscripts.
7818 * tex/GNUmakefile (local-uninstall): remove
7819 music-drawing-routines.ps juggling.
7821 * stepmake/stepmake/install-targets.make (local-install-files):
7822 prepend src-dir to install targets.
7824 * lily/system-start-delimiter-engraver.cc
7825 (acknowledge_system_start_delimiter): use
7826 add_offset_callback(). This fixes translation of nested
7829 * lily/grob-closure.cc (add_offset_callback): only encaps in
7830 simple_closure if it's a procedure.
7832 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7835 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7836 remove-empty where pertinent.
7838 2005-11-12 Graham Percival <gpermus@gmail.com>
7840 * Documentation/user/instrument-notation.itely: added
7841 Cameron Horsburgh's multiple stanzas docs. Thanks!
7843 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7846 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7847 make picture in builddir, not srcdir.
7849 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7851 * VERSION: release 2.7.16
7853 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7856 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7858 * Documentation/user/examples.itely (Piano templates): Minor
7859 modification to the Piano centered lyrics example.
7861 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7863 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7866 * Documentation/user/point-and-click.itely: simplify p&c
7867 instruction: don't configure firefox. Put lilypond-invoke-editor
7868 in front of the browser.
7870 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7871 (run-browser): new function.
7873 * lily/parser.yy (Lily_lexer): recognize Book
7875 * lily/book.cc (clone): new function
7877 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7879 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7881 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7882 Maintenance bugfix: reduce number of font related warnings by
7883 updating naming conventions for glyph-name.
7885 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7887 * scm/define-grobs.scm (all-grob-descriptions): add
7888 rhythmic-grob-interface to TabNoteHead.
7890 * scm/layout-beam.scm (check-quant-callbacks): remove
7893 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7895 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7896 alignment of centered divisiones.
7898 * scm/scripts.scm (articulations): Maintenance bugfix:
7899 follow-into-staff -> quantize-position.
7901 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7902 plica head in porrectus deminutus.
7904 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7906 * make/lilypond.fedora.spec.in (Group): add %clean section.
7908 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7909 less then 1/5th of total length.
7910 (print): use gap too. Fixes tupletUp-single-bracket.ly
7912 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7913 events into EventChord. This fixes textspanners on mm rests. Fixes
7916 * lily/side-position-interface.cc (get_axis): read side-axis
7917 (set_axis): set side-axis.
7919 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7920 properties everywhere.
7922 * lily/spacing-spanner.cc (breakable_column_spacing): add
7923 average-spacing-wishes. Take maximum if not set.
7924 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7926 * scm/define-grobs.scm (all-grob-descriptions): add
7927 average-spacing-wishes.
7929 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7930 offset callbacks. This fixes alignment for Fingering objects.
7932 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7933 space for key - timesig combination.
7935 * input/regression/script-stem-tremolo.ly (Module): new file.
7937 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7940 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7941 Fixes: c-tremolo-script.ly.
7943 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7945 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7947 * scm/define-grobs.scm (all-grob-descriptions): remove
7948 self-X-offset. Fixes alignment of octavate-8.
7950 * scripts/lilypond-book.py (datadir): look in
7951 LILYPONDPREFIX/share/lilypond/current/
7953 * GNUmakefile.in: symlink current to <VERSION>.
7955 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7957 * lily/main.cc: eps listed as a backend.
7959 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7961 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7963 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7965 * lily/include/score.hh (class Score): remove texts_ member.
7967 * lily/beam.cc (set_stem_lengths): force direction callback.
7968 (print): read quantized-positions, so we can force
7969 Beam::set_stem_lengths to occur.
7970 (rest_collision_callback): use common X parent.
7972 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7974 * flower/file-path.cc (find): Bugfix: Return name of file found.
7976 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7977 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7978 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7980 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7982 * flower/offset.cc: idem.
7984 * mf/*.mf: update email address.
7986 * lily/font-config-scheme.cc: new file.
7988 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7990 * lily/*: cs.uu.nl -> xs4all.nl
7992 * VERSION (PATCH_LEVEL): release 2.7.15
7994 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7997 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7999 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8001 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
8003 * lily/staff-performer.cc (process_music): add audio
8004 elements. This makes MIDI instrument changes work once again.
8006 * lily/main.cc (LY_DEFINE): add gmane address.
8008 * lily/beam.cc: remove calc_positions()
8010 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
8011 original_ in private scope.
8012 (class Grob): drop pscore_ pointer, change to output_def pointer.
8013 (class Grob): cleanup class definition.
8015 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
8017 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
8019 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
8020 absolute. Better diagnostics.
8022 * GNUmakefile.in: Add bin/ to tree and populate with some links.
8023 This makes lilypond run from the build directory using argv0
8024 relocation (without any --prefix or LILYPONDPREFIX setting).
8026 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8028 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
8030 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
8031 with simple-closure.
8033 * lily/self-aligment-interface.cc (set_align_self): new function
8034 (set_center_parent): new function.
8036 * lily/side-position-interface.cc (set_axis): new function.
8038 * lily/new-fingering-engraver.cc (position_scripts): use drul for
8041 * scm/define-grob-properties.scm (all-user-grob-properties):
8042 remove [XY]-offset-callbacks add [YX]-offset
8044 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
8046 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8047 entry for time signatures after breathing signs. Bug report by
8050 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8052 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8053 not absolute, make it absolute using PATH.
8055 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8057 * python/midi.c (initmidi): Fix type for mingw.
8059 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8061 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8063 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8066 * stepmake/aclocal.m4: Support python cross compiling.
8068 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8071 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8073 * scm/output-lib.scm (chain-grob-member-functions): replace
8076 * lily/chained-callback.cc (Module): remove file.
8078 * lily/rest-collision.cc (force_shift_callback_rest): change to
8081 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8083 * lily/grob.cc (y_parent_positioning): remove axis argument from
8084 parent_positioning callbacks.
8085 (Grob): junk init code
8086 (get_offset): use generic property callbacks for
8087 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8088 (axis_parent_positioning): new function
8089 (axis_offset_symbol): new function
8090 (chain_offset_callback): new function
8091 (add_offset_callback): new function
8093 * lily/beam.cc (rest_collision_callback): change signature; this
8094 is now a chained callback.
8096 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8097 callback administration.
8099 * lily/simple-closure.cc: new file. Smob type that allows "grob
8102 (ly:make-simple-closure FUNC A B)
8104 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8107 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8110 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8112 * lily/rest.cc (polyphonic_offset_callback): remove.
8114 * lily/script-engraver.cc (try_music): remove bool* argument.
8116 * scm/script.scm (default-script-alist): set quantize-position
8119 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8121 * lily/side-position-interface.cc (aligned_side): move staff
8122 position quantization from
8123 Side_position_interface::quantised_position().
8124 (quantised_position): remove
8126 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8128 * input/regression/beam-quant-standard.ly: reindent, set
8129 debug-beam-quanting to #t.
8131 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8132 10000 if this is a "hard" concave beam.
8134 * lily/beam.cc (calc_least_squares_positions): change from
8135 calc_least_squares_dy
8136 (set_stem_lengths): this is now a chained callback.
8138 * lily/context-property.cc (execute_general_pushpop_property):
8139 bugfix override with procedure should have effect.
8141 * scm/define-grob-properties.scm (all-internal-grob-properties):
8142 remove position-callbacks.
8144 * scm/define-grobs.scm (all-grob-descriptions): use
8145 ly:make-callback-chain for positions property.
8147 * scm/layout-beam.scm (check-quant-callbacks): return list of
8150 * scm/lily.scm (type-p-name-alist): add callback-chain
8152 * lily/lily-guile.cc (type_check_assignment): type check failure
8153 is warning not message.
8155 * lily/grob-property.cc (try_callback): walk callback chain if
8158 * lily/chained-callback.cc: new file. new smob type.
8160 * lily/lily-guile.cc (procedure_arity): new function.
8162 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8164 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8166 2005-10-25 John Mandereau <john.mandereau@free.fr>
8168 * Documentation/user/instrument-notation.itely (Figured bass):
8169 describe new features
8171 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8173 * lily/beam.cc (calc_least_squares_dy): use property callback.
8175 * lily/beam-concave.cc (calc_concaveness): use property callback.
8177 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8179 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8183 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8185 * scm/layout-page-layout.scm (page-headfoot): annotate
8188 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8190 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8191 doesn't take y-space.
8193 * scm/paper.scm (paper-alist): fix A7 dimensions.
8195 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8197 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8198 src-wildcard, remove $(wildcard).
8200 * po/GNUmakefile (PO_FILES):
8201 * ps/GNUmakefile (PS_FILES):
8202 * tex/GNUmakefile (TEX_FILES):
8203 * cygwin/GNUmakefile (POSTINSTALLS):
8204 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8205 some wildcard calls.
8207 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8209 * THANKS: add Thomas Bushnell.
8211 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8213 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8214 (lilypond-main): Redirect to gui-main if 'gui is set.
8216 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8217 for alternative installations kludging s/share/lib/g
8220 * SConstruct (libdir_package_version): Define.
8222 * python/SConscript:
8223 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8226 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8228 * lily/main.cc: clarify --safe.
8230 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8232 * VERSION: release 2.7.14
8234 * Documentation/user/*.itely: remove minimumVerticalExtent.
8236 * scm/define-grobs.scm (all-grob-descriptions): remove
8237 RemoveEmptyVerticalGroup
8239 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8241 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8244 * python/convertrules.py (conv): add rules.
8246 * lily/grob.cc: remove is_empty()
8248 * lily/grob-property.cc: remove add_to_list_property().
8250 * scripts/convert-ly.py (datadir): add prefix switching hack to
8253 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8254 space-function tweak.
8256 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8258 * scm/define-grob-properties.scm (all-user-grob-properties):
8259 remove callback property.
8261 * lily/include/grob.hh (class Grob): remove property_callbacks_
8262 member. Properties of procedure type are assumed to be callbacks.
8264 * lily/ligature-engraver.cc (override_stencil_callback):
8265 rewrite. Use noteHeadLigaturePrimitive as source.
8267 * scm/define-grob-properties.scm (all-internal-grob-properties):
8268 remove ligature-primitive-callback
8270 * lily/include/dimension-cache.hh (class Dimension_cache): make
8271 class, with Grob as friend.
8273 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8274 has_extent_callback()
8276 * scm/translation-functions.scm (format-new-bass-figure): read
8277 figuredBassPlusDirection
8279 * scm/define-context-properties.scm
8280 (all-user-translation-properties): add figuredBassPlusDirection.
8282 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8284 * lily/align-interface.cc (set_ordered): new function.
8286 * lily/grob.cc (flush_extent_cache): rewrite.
8288 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8289 Interval pointer directly.
8291 * lily/main.cc (setup_paths): insert extra / .
8292 (setup_paths): junk cff entry.
8294 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8297 * lily/axis-group-engraver.cc (finalize): remove
8298 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8300 * lily/grob.cc (Grob): don't set extent from ctor.
8301 (extent): use property callbacks.
8303 * lily/axis-group-interface.cc: remove set_axes() function.
8305 * lily/grob-property.cc (del_property): new function.
8307 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8309 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8311 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8313 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8315 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8317 * mf/SConscript: Updates.
8319 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8321 * stepmake/stepmake/*:
8325 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8326 from any directory in build-dir. Cleanups.
8328 * make/srcdir.make.in: Remove.
8330 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8332 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8335 * lily/SConscript: Remove ttftools.
8337 * SConstruct: Resurrect.
8339 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8341 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8344 * lily/paper-book.cc (add_score_title): put Paper_score title into
8347 * scm/translation-functions.scm (format-new-bass-figure): also
8348 allow plus in combination with _
8350 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8352 * VERSION: 2.7.13 released.
8354 * lily/note-collision.cc (check_meshing_chords): don't wipe
8355 stencil, merely set transparent.
8357 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8358 (Top): document #'callbacks.
8359 (Top): document nested \override.
8361 * input/regression/figured-bass.ly: update for slash and pluses.
8363 * input/regression/figured-bass-continuation-forbid.ly (Module):
8366 * scm/translation-functions.scm (format-new-bass-figure): use
8367 slashed-digit if diminished is set.
8368 (format-new-bass-figure): add + if 'augmented is set.
8370 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8372 * input/test/piano-staff-distance.ly: remove file.
8374 * Documentation/user/advanced-notation.itely (Formatting cue
8375 notes): use length-fraction for making stems/beams smaller.
8377 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8380 * lily/new-figured-bass-engraver.cc: new property
8381 centerFiguredBassContinuations
8383 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8386 * lily/context-property.cc (execute_general_pushpop_property):
8389 * input/regression/override-nest.ly: new file.
8391 * python/convertrules.py (FatalConversionError.subber): conversion
8392 rule for #'callbacks
8394 * input/regression/override-nest.ly: new function.
8396 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8399 * lily/context-property.cc (lookup_nested_property): new function.
8400 (evict_from_alist): new function.
8401 (general_pushpop_property): new function.
8402 (execute_general_pushpop_property): rewrite. Support nested
8405 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8407 * lily/beam.cc: use length-fraction too.
8409 * scm/define-grob-properties.scm (all-user-grob-properties):
8410 remove property flag-width-function
8411 (all-user-grob-properties): remove space-function.
8413 * scm/layout-beam.scm: remove flag-width-function.
8415 * lily/beam.cc: remove flag-width-function
8417 * scm/layout-beam.scm: remove beam dir functions.
8419 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8421 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8422 for easier grace tweaks.
8424 * lily/beam.cc: remove dir-function.
8426 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8428 * lily/grob.cc: remove spacing-procedure.
8430 * lily/note-head.cc (calc_stem_attachment): new function.
8431 (internal_print): use callback to get glyph-name.
8433 * lily/grob-property.cc (get_interfaces): new function.
8435 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8437 * lily/stem.cc (calc_stem_end_position): new function.
8438 (calc_length): new function.
8439 document details for stem.
8440 remove Stem::get_direction()
8442 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8444 * lily/grob-property.cc (set_callback): new function.
8446 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8448 * lily/item-scheme.cc: new file.
8450 * lily/bar-line.cc (before_line_breaking): remove function.
8451 remove bar-size-procedure, break-glyph-function
8453 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8455 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8457 * lily/system-start-delimiter.cc (print): suicide from
8458 here. Remove after_line_breaking_callback.
8460 * lily/script-interface.cc (calc_direction): use callback for direction.
8462 * lily/side-position-interface.cc (aligned_side): don't use
8463 Side_position_interface::get_direction directly. Use callback.
8465 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8467 (get_print_stencil): rename from get_stencil: create stencil with
8468 transparency, color and cause.
8470 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8472 * python/convertrules.py (conv): insert temporary warning rule.
8474 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8476 * lily/grob-property.cc (try_callback): remove marker if applicable.
8478 * lily/grob.cc: elucidate doc about after/before-line-breaking
8480 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8482 * lily/stem.cc (height): idem.
8484 * lily/stem-tremolo.cc: idem.
8486 * lily/slur.cc (height): don't use get_uncached_stencil()
8488 * lily/rest.cc (y_offset_callback): use offset callback
8489 iso. after-line-breaking callback.
8491 * lily/grob.cc: change after/before-line-breaking-callback to
8492 after/before-line-breaking dummy properties.
8494 * lily/include/grob.hh: remove Grob_status.
8496 * scm/define-context-properties.scm
8497 (all-user-translation-properties): remove verticalAlignmentChildCallback
8499 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8500 (calc_direction): use callback
8501 (calc_positions): use callback.
8503 * lily/tie.cc (calc_direction): use callback. Only call parent
8504 positioning for more than one tie.
8506 * lily/tie-column.cc (calc_positioning_done): use callback
8508 * lily/slur-scoring.cc (calc_control_points): use callback
8510 * lily/slur.cc (calc_direction): use callback.
8512 * lily/note-collision.cc (force_shift_callback): remove.
8514 * lily/dot-column.cc (force_shift_callback): remove. Use
8515 other_axis_parent_positioning.
8517 * lily/grob.cc (other_axis_parent_positioning): new function.
8518 (same_axis_parent_positioning): new function
8520 * lily/align-interface.cc (alignment_callback): remove function.
8522 * lily/note-collision.cc (calc_positioning_done): use callback.
8524 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8525 (calc_direction): idem.
8526 remove print function.
8528 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8530 * lily/dot-column.cc (calc_positioning_done): use callback.
8532 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8534 * lily/beam.cc (calc_direction): use pseudo-property for beam
8536 (calc_positions): use callback
8538 * lily/align-interface.cc (calc_positioning_done): use
8539 callback. Fold fixed distance and normal alignment in one function.
8541 * lily/stem.cc (calc_stem_end_position): use callback.
8542 (calc_positioning_done): idem.
8543 (calc_direction): idem.
8544 (calc_stem_end_position): idem
8545 (calc_stem_info): idem.
8547 * lily/grob-property.cc (get_property_data): new function:
8548 (try_callback): new function.
8550 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8553 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8555 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8557 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8561 * lily/include/*.hh (Module): compile fixes.
8563 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8565 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8566 as an argument for char-syntax: use (char-syntax (or nil 0))
8567 instead of (char-syntax nil), thanks to Milan Zamazal.
8569 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8571 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8574 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8577 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8579 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8580 add class_name() method.
8582 * lily/music-scheme.cc: remove ly:music-name.
8584 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8586 * cygwin/postinstall-lilypond.sh: Remove cruft.
8588 * cygwin/postremove-lilypond.sh: Remove.
8590 * cygwin/GNUmakefile (default): Remove postremove rules.
8592 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8594 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8597 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8600 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8601 consider break index for broken spanner.
8603 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8604 characters from string before splitting.
8606 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8608 * scm/framework-ps.scm (output-preview-framework): use
8609 is-book-title to determine whether to chop off the booktitle.
8611 * lily/paper-book.cc (systems): init from book-title-properties
8612 (add_score_title): init score-title-properties.
8614 * ly/paper-defaults.ly: add {score,book}-title-properties.
8616 * scm/document-backend.scm (lookup-interface): error message if
8617 using unknown interface.
8619 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8622 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8624 (make_bracket): new function.
8626 * scm/lily.scm (define-scheme-options): add paper-size option.
8628 * ly/declarations-init.ly (laissezVibrer): get paper size from
8631 * scm/translation-functions.scm: use \fontsize for changing the
8634 * scm/define-grobs.scm (all-grob-descriptions): set
8635 between-length-limit to 1.0
8637 * lily/tie-helper.cc: add between_length_limit_ detail property.
8639 * mf/feta-bolletjes.mf: typos.
8641 * lily/note-head.cc (internal_print): don't shadow idx
8642 parameter. This fixes wrong attachment for do shape heads.
8644 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8646 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8648 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8650 * scm/layout-slur.scm: rename from slur.scm
8652 * scm/layout-page-layout.scm: rename from page-layout.scm
8654 * scm/layout-beam.scm: rename from beam.scm
8656 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8657 bass-figure-interface
8659 * lily/new-figured-bass-engraver.cc (process_music): add
8660 implicitBassFigures property.
8662 * scm/define-markup-commands.scm (pad-x): new markup.
8664 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8665 minimumVerticalExtent on FiguredBass context.
8667 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8668 case the continuation crosses a line break.
8670 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8672 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8673 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8674 absolute file name bug.
8676 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8678 * VERSION (PACKAGE_NAME): release 2.7.12
8680 * input/regression/figured-bass-continuation-center.ly: new file.
8682 * input/regression/beam-outside-beamlets.ly: new file.
8684 * lily/beam.cc (set_beaming): don't clip edges.
8685 (connect_beams): don't clip edges.
8687 * lily/beaming-info.cc (clip_edges): new function.
8689 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8691 * Documentation/user/instrument-notation.itely (Figured bass):
8692 demonstrate extenders, update seealso links.
8694 * scm/titling.scm (marked-up-headfoot): change tagline
8695 handling. tagline = ##f will blank the tagline as well.
8697 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8699 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8701 * lily/new-figured-bass-engraver.cc (struct
8702 New_figured_bass_engraver): add new_music_found_ member.
8704 * lily/lilypond-version.cc (Lilypond_version): deal with
8705 incorrectly formatted version strings.
8707 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8708 New_figured_bass_engraver by default.
8710 * lily/ttf.cc (print_trailer): only define glyph names when
8711 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8713 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8715 * lily/horizontal-bracket.cc (make_bracket): new function.
8717 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8718 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8719 BassFigureLine, BassFigureAlignment
8721 * lily/new-figured-bass-engraver.cc (process_music): new file.
8723 * lily/figured-bass-continuation.cc: new file.
8725 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8728 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8730 * scripts/lilypond-book.py: Bug fix, put the quote around the
8731 actual score for LaTeX documents.
8733 * scm/define-grobs.scm (all-grob-descriptions): Change
8734 collapse-height of the SystemStartBracket grob to 5.0,
8735 so the bracket disappears for single stave score lines (similarly
8736 to SystemStartBraces).
8738 * Documentation/user/advanced-notation.itely (Polymetric
8739 notation): Clarify the use of compressMusic.
8741 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8742 that the grace spacer note in other staves need the same duration
8743 and document the stroke-style property.
8745 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8747 * Documentation/user/global.itely (Vertical spacing): document
8748 alignment-extra-space and fixed-alignment-extra-space.
8750 * Documentation/topdocs/NEWS.tely (Top): add entry.
8752 * input/regression/alignment-vertical-spacing.ly: new file.
8754 * python/convertrules.py (conv): add rule.
8756 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8758 * lily/align-interface.cc (stretch_after_break): new
8759 function. Read fixed-alignment-extra-space property.
8760 (align_elements_to_extents): read alignment-extra-space property.
8762 * lily/lily-guile.cc (robust_scm2dir): new function.
8764 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8765 (annotate-space-left): new function. Annotate space left on page.
8766 (annotate-y-interval): new function.
8767 (paper-system-annotate-last): new function. Annotate bottom-space.
8769 * mf/feta-beugel.mf (y):
8771 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8773 * VERSION (PACKAGE_NAME): release 2.7.11
8775 * scm/lily-library.scm (interval-translate): new function
8776 (interval-center): new function.
8778 * scm/page-layout.scm (paper-system-annotate): new function. Add
8779 arrows for dimensions.
8781 * scm/stencil.scm (dimension-arrows): new function.
8783 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8785 * input/regression/page-spacing.ly: add annotatespacing
8787 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8788 (LY_DEFINE): new function ly:paper-system-set-property!
8790 * Documentation/user/global.itely (Paper size): explain how to add
8793 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8794 correspond to GS's definition.
8796 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8798 (print): only connect to next bracket if the next one is alive.
8799 (print): set padding to 0.0 if the bound is a breakable
8800 column. This makes tupletFullLength brackets reach up to the staff
8801 line if it doesn't connect to the next line.
8803 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8805 * lily/bar-number-engraver.cc: correct docs.
8807 * scm/output-lib.scm (first-bar-number-invisible): rename from
8808 default-bar-number-visibility
8810 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8812 * scm/define-music-properties.scm (all-music-properties): remove
8815 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8817 * po/fi.po: refresh.
8819 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8821 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8823 (disappear): bugfix.
8825 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8827 * lily/include/paper-system.hh (class Paper_system): remove
8828 staff_extents_ member.
8830 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8832 * lily/include/paper-system.hh (class Paper_system): remove
8833 number_ variable. Remove is_title_. Remove break_before_penalty_
8835 * lily/paper-book.cc (systems): use 'number property iso. number_
8838 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8839 remove ly:paper-system-number.
8841 * scm/lily-library.scm (paper-system-title?): new function.
8843 * lily/book.cc (process): bugfix: flip ?: cases.
8845 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8848 * ly/music-functions-init.ly: add outputProperty music function.
8850 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8852 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8854 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8856 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8858 * lily/paper-system.cc (internal_get_property): new function.
8860 * Documentation/user/global.itely (Vertical spacing): refer to
8863 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8866 * input/regression/page-spacing.ly: new file.
8868 * input/regression/page-top-space.ly: new file.
8870 * lily/spacing-spanner.cc: cmath -> math.h
8872 * lily/paper-system.cc (read_left_bound): new function. Read
8873 line-break-system-details from left bound to determine extents.
8875 * Documentation/user/programming-interface.itely (Using LilyPond
8876 syntax inside Scheme): change applyxxx -> applyXxx.
8878 * ly/music-functions-init.ly: add outputProperty music function.
8880 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8882 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8884 * python/convertrules.py (conv): rule
8886 * ly/music-functions-init.ly: applyxxx -> applyXxx
8888 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8891 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8893 * flower/include/real.hh: include <math.h> iso. <cmath>
8895 * flower/include/offset.hh: include real.hh
8897 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8899 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8900 fix example, now that 'interfaces is no longer directly available.
8902 * lily/book.cc (process): don't crash if paper == NULL.
8906 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8908 * scm/define-music-types.scm (music-descriptions): set length and
8909 start-callback for QuoteMusic
8911 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8913 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8914 arguments. Fixes compilation error with gcc 3.3.
8916 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8918 * VERSION: release 2.7.10
8920 * stepmake/stepmake/python-module-rules.make
8921 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8923 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8926 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8928 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8929 -Werror. Otherwise GCC barfs over various optimizations.
8931 * scm/define-grob-properties.scm (all-internal-grob-properties):
8932 add note-head property
8934 * Documentation/user/instrument-notation.itely (Laissez vibrer
8937 * input/regression/laissez-vibrer-ties.ly: new file.
8939 * lily/laissez-vibrer-engraver.cc: new file.
8941 * lily/include/tie-column-format.hh: new file.
8943 * lily/tie-column-format.cc: new file.
8945 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8947 * lily/laissez-vibrer-tie.cc: new file.
8949 * lily/include/laissez-vibrer-tie.hh: new file.
8951 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8953 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8955 * scm/define-grobs.scm (all-grob-descriptions): add
8956 LaissezVibrerTie, LaissezVibrerTieColumn
8958 * lily/tie-column.cc (set_tie_config_directions): new function
8959 (final_shape_adjustment): new function.
8960 (shift_small_ties): new function.
8962 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8964 * lily/include/tie.hh (struct Tie_details): add x_gap_
8965 (struct Tie_configuration): add head_position_
8967 * lily/tie-column.cc (set_chord_outline): new function.
8969 * mf/cmr.enc.in: remove file.
8971 2005-09-11 Graham Percival <gpermus@gmail.com>
8973 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8975 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8977 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8978 reduce aliasing effects.
8980 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8983 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8985 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8987 * flower/include/real.hh: std::fabs too.
8989 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8991 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8993 * lily, flower: Include C++ iso C headers. Import namespace std
8996 * lily/side-position-interface.cc:
8998 * lily/note-head.cc:
8999 * lily/include/includable-lexer.hh:
9000 * flower/include/string-data.icc: Remove using std::*.
9002 * lily, flower: Include C++ iso C headers. Import namespace std
9005 * lily/side-position-interface.cc:
9007 * lily/note-head.cc:
9008 * lily/include/includable-lexer.hh:
9009 * flower/include/string-data.icc: Remove using std::*.
9011 * Documentation/user/instrument-notation.itely (Entering lyrics):
9012 Multiple latin-1->utf-8 conversion fix.
9014 * Documentation/user/*tely: Update Emacs cookie to utf-8.
9016 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9018 * lily/tie.cc (get_configuration): also avoid dots for non-space
9021 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
9023 * Documentation/user/instrument-notation.itely: Bugfix.
9025 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
9027 * tex/GNUmakefile: don't install texinfo.tex
9029 * tex/ : cleanup: remove unused files.
9031 * lily/general-scheme.cc: remove my_{isinf,isnan}.
9033 * flower/include/real.hh: using std::{isnan,isinf}
9035 * VERSION (PATCH_LEVEL): release 2.7.9
9037 2005-09-05 Graham Percival <gpermus@gmail.com>
9039 * Documentation/user/ instrument-notation.itely,
9040 advanced-notation.itely: minor tweaks.
9042 * input/test/script-chart.ly: add item padding.
9044 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9046 * flower/offset.cc: use math.h iso. <cmath>
9048 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9051 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9052 (widen-left-stencil-edges): new function. Fix alignment problems
9053 with LaTeX includegraphics.
9055 * lily/text-interface.cc (interpret_markup): use abort().
9057 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9059 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9061 * lily/tie.cc (get_configuration): update bezier shape as we
9063 (get_configuration): don't move large ties if we're outside of the
9066 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9068 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9070 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9072 * .cvsignore: Add auto-generated configure files and then some.
9074 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9076 * scm/define-grobs.scm (DynamicLineSpanner): Add
9077 X-extent-callback. Fixes hairpin-slur collision.
9079 2005-08-31 Graham Percival <gpermus@gmail.com>
9081 * Documentation/user/advanced-notation.itely,
9082 basic-notation.itely: minor changes.
9084 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9086 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9087 \linebreak between each .eps file if \betweenLilyPondSystem is
9090 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9091 music): Document the \linebreak
9093 * Documentation/user/lilypond-book.itely,
9094 input/tutorial/lbook-latex-test.tex,
9095 Documentation/user/examples.itely: Remove \usepackage{graphics}
9097 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9099 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9101 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9104 * scripts/lilypond-book.py (PREAMBLE_LY): define
9105 inside-lilypond-book
9106 (modify_preamble): new function. Insert \RequirePackage{graphics}
9107 when no {graphics found in preamble.
9109 2005-08030 Graham Percival <gpermus@gmail.com>
9111 * Documentation/user/basic-notation.itely, global.itely,
9112 tutorial.itely: misc small changes.
9114 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9116 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9119 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9121 * lily/tie-column.cc (new_directions): put Tie down on center
9124 * lily/script-interface.cc (before_line_breaking): use
9125 Grob::programming_error
9127 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9129 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9132 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9134 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9136 2005-08-29 Werner Lemberg <wl@gnu.org>
9138 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9139 the `*.scale.pfa' files to avoid warnings.
9141 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9143 * lily/tempo-performer.cc (process_music): idem.
9145 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9147 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9149 * Documentation/user/advanced-notation.itely (Text markup): not a
9152 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9154 * lily/staff-performer.cc (initialize): add tempo/name to
9157 2005-08-26 Graham Percival <gpermus@gmail.com>
9159 * Documentation/user/advanced.itely: add text-only example.
9161 * Documentation/user/invoking.itely: add index entries for
9164 * Documentation/user/ tutorial.itely, basic-notation.itely:
9165 small fixes suggested by Steve D. Thanks!
9167 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9169 * input/regression/markup-bidi-pango.ly: new file.
9171 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9172 standard. Remove #ifdef. Remove memleak.
9173 (text_stencil): use text_dir to decide how to composite items.
9174 (text_stencil): determine uniform text direction for the entire
9177 * scripts/lilypond-book.py (output_name): remove
9178 latex_filter_cmd. Non-portable to non-Unix systems.
9179 (get_latex_textwidth): use File.write and os.unlink() instead.
9181 * THANKS: add Vicente & Trevor.
9183 * lily/grob.cc (discretionary_processing): look up origin for
9184 programming_error too.
9186 * input/regression/tie-broken.ly: new file.
9188 * lily/tie-column.cc (set_chord_outlines): set outline for line
9191 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9193 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9194 unscaled transform, just translate stencils.
9196 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9199 * scm/define-markup-commands.scm (wordwrap-string): use
9201 (wordwrap-stencils): idem.
9204 (wordwrap-stencils): translate last line to right for
9205 text-direction = LEFT.
9207 * scm/define-grob-properties.scm (all-user-grob-properties): add
9210 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9212 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9213 when copying a Lily_parser object.
9215 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9217 * scm/define-markup-commands.scm (null): add null markup.
9219 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9221 * lily/item.cc: Add documentation of center-invisible
9223 2005-08-24 Graham Percival <gpermus@gmail.com>
9225 * Documentation/user/advanced-notation.itely: add info about
9228 * Documentation/user/programming-interface.itely: fix example
9229 involving raised text.
9231 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9233 * lily/beam.cc (print): fix X start/end points of isolated
9236 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9238 * lily/multi-measure-rest.cc (set_text_rods): new function.
9240 * lily/vertical-align-engraver.cc (process_music): call
9241 Align_interface::set_axis(). This forces #'elements to be ordered,
9242 preventing random vertical reordering of staves.
9244 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9245 add avoid-slur property.
9247 * Documentation/user/basic-notation.itely (Measure repeats): add
9248 countPercentRepeats example.
9250 * Documentation/user/advanced-notation.itely (Other text markup
9251 issues): remove remark about normal-font. We have \normal-text
9253 * input/regression/tie-chord.ly: add note about remaining bugs.
9255 * lily/tie.cc (print): try Tie_column::set_directions () if
9256 control-points not yet defined.
9258 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9260 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9261 extent. This fixes braces falling out of the EPS bbox.
9263 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9266 2005-08-23 Graham Percival <gpermus@gmail.com>
9268 * {various} : change #up->#UP and #down->#DOWN.
9270 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9272 * Documentation/user/advanced-notation.itely: clarify
9273 what objects handles text on a multimeasure rest.
9275 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9277 * VERSION (PATCH_LEVEL): release 2.7.7
9279 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9281 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9283 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9285 * input/regression/*.ly: formatting clean-up. Default layout
9286 before music expression.
9288 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9289 romanze28-2 example.
9291 * scm/ps-to-png.scm: remove dir-re function.
9292 (make-ps-images): generate page names, instead of globbing them.
9293 This brings down LilyPond memory usage for make web by a factor
9296 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9297 don't use glob. With 3000 files, globbing
9298 Documentation/user/out-www/ can take too much time.
9300 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9302 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9304 * input/regression/tie-manual.ly: new file
9306 * input/regression/tie-chord.ly: update.
9308 * flower/include/interval.hh (struct Interval_t):
9310 * lily/tie.cc (distance): new function
9311 (height): new function.
9312 (init): new function
9313 (Tie_details): new struct.
9315 * lily/skyline.cc (skyline_height): new function.
9317 * lily/tie-column.cc (set_chord_outlines): new function.
9318 (new_directions): read tie-configuration
9320 * lily/skyline.cc: fix ASCII art.
9322 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9324 * python/convertrules.py (string_or_scheme): Fix spelling error
9326 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9328 * lily/tie-column.cc (set_directions): set directions only once.
9329 (add_configuration): new function.
9331 * lily/tie.cc (set_control_points): new function
9333 * lily/tie-column.cc (new_directions): new function.
9335 * ly/music-functions-init.ly: set 'pitch property
9336 iso. trill-pitch. This makes \relative work with \pitchedTrill
9338 * lily/tie.cc (get_configuration): new function. Don't generate
9339 control points, rather, generate configuration.
9340 remove head-pair property.
9342 * lily/include/tie.hh (struct Tie_configuration): new struct.
9344 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9346 * Documentation/topdocs/NEWS.tely: clarify.
9348 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9350 * lily/tie.cc: remove minimum-length
9352 * scm/define-grob-properties.scm (all-user-grob-properties):
9353 remove staffline-clearance, y-offset
9355 * input/regression/tie-dots.ly (Module): remove.
9357 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9358 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9360 * input/regression/tie-single.ly: new file.
9362 2005-08-21 Graham Percival <gpermus@gmail.com>
9364 * ly/bagpipe.ly: fix compile problem.
9366 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9368 * lily/midi-item.cc (name): new method.
9370 * lily/staff-performer.cc (acknowledge_audio_element): use
9371 signature of baseclass.
9373 * lily/engraver-group.cc (do_announces): move recursion call out
9376 * lily/drum-note-performer.cc (class Drum_note_performer): use
9377 process_music everywhere.
9379 * ly/performer-init.ly: add default children everywhere.
9381 * lily/paper-book.cc (output): call paper-book-write-midis
9382 directly: always write MIDI, even if no \layout {} block.
9384 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9386 * VERSION (PACKAGE_NAME): release 2.7.6
9388 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9389 about not being able to handle repeat.
9391 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9393 * Documentation/user/examples.itely (Piano templates):
9394 * lily/include/performer-group.hh: Remove last traces of
9395 Performer_group_performer. Fixes make web.
9397 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9399 * Documentation/user/examples.itely (Piano templates): change
9400 Engraver_group_engraver -> Engraver_group
9402 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9403 scm_stand_in_procs is not weak_any.
9405 * lily/volta-bracket.cc (print): don't use strcmp().
9407 * lily/volta-engraver.cc (process_music): use
9408 Text_interface::is_markup() for setting the 'text property of the
9411 * input/mutopia/claop.py (accents): update syntax to 2.6
9413 * scm/define-context-properties.scm
9414 (all-user-translation-properties): add countPercentRepeats.
9416 * Documentation/user/basic-notation.itely (Measure repeats): add
9417 isolated percent example.
9419 2005-08-18 Graham Percival <gpermus@gmail.com>
9421 * input/ {various}: change direction #1, #-1 to
9422 #up/#down or \fooUp, \fooDown.
9424 * Documentation/user/music-glossary.tely: #-1 to #down.
9426 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9427 to #up, #-1 to #down.
9429 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9431 * lily/include/engraver-group.hh: rename.
9433 * lily/include/performer-group.hh: rename.
9435 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9437 * input/test/script-abbreviations.ly: Removed some old LaTeX
9440 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9442 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9443 Remove functions. Remove if 1: constructs, reindent.
9445 * scripts/convert-ly.py (add_version): Add functions from
9448 * scm/script.scm (default-script-alist):
9449 s/priority/script-priority. Fixes script stacking. Backportme.
9450 (Fermata): Very low priority.
9452 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9454 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9456 * input/regression/slur-script.ly: remove padding tweaks. Add
9459 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9460 time sigs and related stuff.
9462 * scm/define-grob-properties.scm (all-user-grob-properties): add