1 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * lily/instrument-name-engraver.cc:
4 * input/regression/instrument-name-dynamic.ly:
5 ignore dynamic and pedal line spanners.
7 * Documentation/topdocs/NEWS.tely:
8 * Documentation/user/advanced-notation.itely:
10 * input/regression/balloon.ly:
12 * ly/music-functions-init.ly:
13 * scm/define-event-classes.scm:
14 * scm/define-grobs.scm:
15 * scm/define-music-properties.scm:
16 * scm/define-music-types.scm:
18 * lily/balloon-engraver.cc:
19 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.
21 * lily/paper-score.cc:
24 * lily/chord-name-engraver.cc:
27 * lily/paper-score.cc:
28 some useless statistics.
30 * buildscripts/git-update-changelog.py:
31 update todo/done after rejection due to removal analysis.
33 * buildscripts/git-update-changelog.py:
34 check whether removals from a diff actually apply.
36 2006-11-05 Joe Neeman <joeneeman@gmail.com>
38 * lily/include/page-turn-page-breaking.hh: remove unused
41 * lily/page-turn-page-breaking.cc (calc_demerits):
42 * lily/optimal-page-breaking.cc (try_page_spacing): remove
45 2006-11-05 Werner Lemberg <wl@gnu.org>
47 * Documentation/user/changing-defaults.itely,
48 Documentation/user/preface.itely: Use `--', not `---'.
51 * Documentation/user/introduction.itely: Minor improvements.
52 (Automated engraving): Make example using \applyOutput work
55 * input/regression/apply-output.ly: Improve.
57 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
59 * lily/dynamic-engraver.cc:
62 * input/regression/note-head-harmonic.ly:
64 * input/regression/note-head-harmonic-whole.ly:
65 Center harmonic heads if stem is invisible. Fixes #140
68 end context snippet with '\n'
71 catch all GUILE exceptions
76 * lily/include/lily-lexer.hh:
78 * lily/lily-parser.cc:
79 Lily_parser* arg for copy ctor too.
82 abc2ly new tempo syntax
84 2006-11-04 Heikki Junes <hjunes@gmail.com>
86 * po/fi.po: update Finnish translation.
88 2006-11-03 Graham Percival <gpermus@gmail.com>
90 * Documentation/user/ {various}: rename page->spacing,
91 global->non-music, invoking->running, example->templates.
93 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
95 * scm/display-lily.scm: add a parser argument to display methods,
96 instead of using a *parser* special variable.
98 * scm/define-music-display-methods.scm: add a parser argument to
99 display methods. Update the methods for \melisma, \melismaEnd,
100 \breathe, \tempo, \partial.
102 * input/no-notation/display-lily-tests.ly: update the test
103 utilities according to the changes in display-lily.scm
105 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
107 * *: The Joy of Merging.
109 * buildscripts/git-update-changelog.py:
110 sort commits, and use .git-commits-done file.
114 dist emacs patches too.
116 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
118 * scm/autochange.scm:
121 * lily/context-def.cc:
122 * lily/include/parse-scm.hh:
123 * lily/include/smobs.hh:
126 * lily/program-option.cc:
128 implement and use ASSERT_LIVE_IS_ALLOWED()
130 * ly/music-functions-init.ly:
131 * scm/autochange.scm:
132 set-part-combine fix for autochange.
134 * lily/include/lily-lexer.hh:
135 * lily/include/lily-parser.hh:
136 * lily/lily-lexer.cc:
137 * lily/lily-parser-scheme.cc:
138 * lily/lily-parser.cc:
139 clear lexer scopes after parsing file. Plugs pseudo memory leak
141 * ly/declarations-init.ly:
142 * ly/music-functions-init.ly:
143 * scm/part-combiner.scm:
144 Remove set-part-combine-listener. This plugs a memory leak.
150 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
155 * lily/part-combine-iterator.cc:
156 don't allocate part combine events statically. Plugs small leak.
158 * lily/lily-parser-scheme.cc:
159 plug memleak in case of failed files.
161 * lily/include/source.hh:
166 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
168 * lily/include/program-option.hh:
169 * lily/program-option.cc:
170 get_program_option() function
172 * ly/titling-init.ly:
173 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
175 * lily/include/translator.hh:
176 * lily/include/translator.icc:
177 * lily/translator.cc:
180 * lily/figured-bass-engraver.cc:
181 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
183 * stepmake/stepmake/compile-vars.make:
184 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
186 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
192 trim warning messages.
197 * input/regression/utf-8.ly:
198 document utf-8 meaning of phrases.
200 * scm/define-markup-commands.scm:
201 make \caps markup default to smallCaps
203 * lily/pango-font.cc:
205 use glyph indexing for glyph name .notdef
207 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
209 * input/regression/utf-8.ly: Fix doc to match order of language
212 2006-11-01 Joe Neeman <joeneeman@gmail.com>
214 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
215 page and line forces.
217 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
219 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
221 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
223 * Documentation/user/GNUmakefile:
224 don't use ImageMagick, use GS directly.
227 otf depends on otf-g?table. Fixes race condition in -j2 build.
228 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
234 remove .deb/.rpm downloading.
236 * buildscripts/git-update-changelog.py:
237 bugfixes for git-update-changelog.py
239 * Documentation/user/GNUmakefile:
242 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
244 * input/regression/tie-semi-single.ly:
245 use position/direction from single tie case too. This fixes
246 overrides and defaults for single laissez-vibrer and repeat ties.
248 * buildscripts/git-update-changelog.py:
249 only prepend header if one patch was successful.
251 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
253 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
254 stuff. Remove cygwin packaging stuff.
256 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
258 * python/convertrules.py (conv): Part 2 fixes vertical extent.
260 * input/test/vertical-extent.ly: Fix and elaborate on vertical
261 staff extent. (Thanks Mats)
263 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
265 * buildscripts/git-update-changelog.py (main): write .msg and cvs
268 * scm/define-grobs.scm:
269 separation-items have width
275 * Documentation/topdocs/NEWS.tely:
276 * lily/separating-group-spanner.cc:
277 * lily/slur-engraver.cc:
278 * lily/slur-scoring.cc:
279 * scm/define-grobs.scm:
280 * input/regression/slur-clef.ly:
281 add breakableSeparationItem to extra encompass for slurs. This
282 fixes slur/clef slur/key collisions etc. Should fix #49
284 * lily/include/slur-scoring.hh:
285 * lily/slur-scoring.cc:
286 Use X of separation item as slur start. Fixes #120
288 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
290 * buildscripts/git-update-changelog.py (changelog_body): don't
293 * lily/grob.cc: add avoid-slur
295 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
299 move server/emacsclient to elisp/
301 * buildscripts/git-update-changelog.py (Commit.note_del_file):
304 * elisp/server.el.patch:
307 * elisp/emacsclient.patch:
310 * buildscripts/git-update-changelog.py:
317 * buildscripts/git-update-changelog.py:
318 script to update ChangeLog with Git messages.
320 * lily/beam-engraver.cc:
321 * input/regression/rest-pitched-beam.ly:
322 don't set callback if staff-position set. Fixes #126.
324 * lily/bar-number-engraver.cc:
326 * lily/fingering-engraver.cc:
327 * lily/grob-property.cc:
329 * lily/include/grob.hh:
330 * lily/include/lily-guile-macros.hh:
331 * lily/mark-engraver.cc:
332 * lily/melody-engraver.cc:
333 * lily/script-column.cc:
334 * lily/tie-formatting-problem.cc:
336 internal_get_property_data() using ly_symbol2scm()
338 * stepmake/stepmake/generic-targets.make:
339 create .gitignore in outdir.
344 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
346 * input/test/vertical-extent.ly:
347 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
349 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
351 * stepmake/bin/add-html-footer.py (compose): remove setgcos
353 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
355 * GNUmakefile.in (install-help2man): install-help2man target.
357 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
359 * SConstruct (configure): Do not check for /bin/sh.
361 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
363 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
366 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
368 * input/regression/fret-boards.ly: new file.
370 * po/de.po: new po courtesy translation team.
372 * scripts/lilypond-book.py (get_option_parser): add newline to doc
375 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
377 * ly/gregorian-init.ly (neumeDemoLayout): update
378 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
380 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
381 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
383 2006-10-27 Erlend Aasland <erlenda@gmail.com>
385 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
386 Yet another build fix.
388 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
390 * SConstruct (lilypondprefix): use sorted() for list_sort()
393 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
395 * flower/SConscript: Unit test rules.
397 * flower/test-std.cc: Compile fix.
399 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
401 * python/midi.c (pymidi_parse_track): warning fixes.
403 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
404 include dot-column.hh
406 2006-10-26 Graham Percival <gpermus@gmail.com>
408 * Documentation/user/{basic-, global}: minor changes from mailist.
410 2006-10-26 Erlend Aasland <erlenda@gmail.com>
412 * scm/define-grobs.scm: trivial beautification
414 * lily/tie-performer.cc: no need to #include "pqueue.hh"
416 * lily/source-file.cc: put multibyte var inside #if clause
418 * scm/define-grob-interfaces.scm:
419 * scm/define-grob-properties.scm:
420 Build fix (string-fret-finger-combinations)
422 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
425 * Documentation/user/lilypond-book.itely: Build fix.
427 2006-10-26 Joe Neeman <joeneeman@gmail.com>
429 * lily/system.cc (get_paper_system):
430 * lily/paper-book.cc (systems):
431 move most of the backwards compatibility stuff into
434 * Documentation/topdocs/NEWS.tely: add 2 entries for the
437 * Documentation/user/page.itely: remove time-scaled-music
438 bug for the Page_turn_engraver
440 * lily/paper-book.cc (set_system_penalty): backwards
441 compatibility (breakbefore) for the old page breaker
443 2006-10-25 Graham Percival <gpermus@gmail.com>
445 * Diocumentation/user/instrument-notation.itely: added more
446 info about stanzas; thanks Geoff!
448 * Documentation/user/ {basic, advanced}: small fixes from
451 * THANKS: add some bug reporters.
453 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
455 * scm/define-context-properties.scm (all-user-translation-properties):
456 noteToFretFunction: Add.
458 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
459 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
461 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
463 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
466 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
467 Remove bashism in delete.
469 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
471 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
473 * scm/translation-functions.scm (determine-frets-mf): flatten let*
475 * scm/define-context-properties.scm
476 (all-user-translation-properties): add maximumFretStretch property.
478 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
480 * lily/source-file.cc (get_counts): use multibyte variable.
482 * scm/translation-functions.scm (determine-frets-mf): new
483 function: compute fret numbers.
485 * scm/output-lib.scm (string-frets->description) new function.
486 (fret-board::calc-stencil): new function
488 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
490 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
492 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
494 * lily/tab-note-heads-engraver.cc: cleanups.
496 * lily/fretboard-engraver.cc: new file
498 * ly/engraver-init.ly: add FretBoards context
500 2006-10-24 Joe Neeman <joeneeman@gmail.com>
502 * lily/grob.cc (pure_relative_y_coordinate)
503 (pure_height): use the new call_pure_function stuff
505 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
508 * lily/side-position-interface.cc (pure_y_aligned_side): add an
511 * lily/simple-closure.cc (ly_eval_simple_closure): make
512 simple-closure evaluatable from scheme
513 (evaluate_with_simple_closure): make simple-closures pure-
516 * lily/slur.cc (pure_outside_slur_callback): new function
518 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
519 fits in with previous changes that made the page forces much
522 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
523 and pure-Y-extent into this new function.
524 (pure-conversions-alist): add outside-slur-callback
526 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
528 * Documentation/user/advanced-notation.itely (Instrument names):
529 Remove obsolete bug workaround for instrument names on piano
532 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
534 * Documentation/user/lilypond-book.itely (Integrating DocBook and
535 music): patch by Bertalan Fodor for docbook.
537 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
538 of $(LILYPOND). Prevents lilypond run for .txt files.
540 * INSTALL.txt: gitness.
542 * .cvsignore: update to force gitness.
544 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
546 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
547 detect suicide in nested tuplets.
549 2006-10-23 Werner Lemberg <wl@gnu.org>
551 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
552 typo in argument to FT_Get_X11_Font_Format.
554 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
556 * stepmake/stepmake/po-vars.make: more gitness.
558 * flower/polynomial.cc (check_sol): no empty if bodies.
560 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
562 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
564 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
566 * Documentation/user/examples.itely (Transcription of mensural
567 music): Added more comments in .ly source. Suggest to remove
568 Forbid_line_break_engraver to allow line breaking at all bars.
570 * Documentation/user/instrument-notation.itely (Ancient
571 articulations): Updated @refbugs regarding episem.
573 * Documentation/user/instrument-notation.itely (Gregorian square
574 neumes ligatures): Added \augmentum dots. Updated @refbugs
575 regarding \augmentum.
577 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
579 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
582 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
585 * ly/gregorian-init.ly: Added \augmentum macro.
587 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
589 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
591 * lily/pango-font.cc (pango_item_string_stencil): use
592 FT_Get_X11_Font_Format()
594 2006-10-22 John Mandereau <john.mandereau@free.fr>
596 * po/fr.po: update translation.
598 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
600 * VERSION (PATCH_LEVEL): bump version
602 * input/regression/horizontal-bracket-break.ly: new file.
604 * scm/define-grobs.scm (all-grob-descriptions): calc
607 * lily/horizontal-bracket.cc (make_bracket): support
608 connect-to-neighbor. Fix #118
610 * VERSION: release 2.9.26-2
612 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
614 * VERSION (PACKAGE_NAME): release 2.9.26
616 * buildscripts/output-distance.py (test_basic_compare): add
618 (FileLink.multi_img_cell): new function, glob multi-page png
621 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
623 * po/lilypond.pot: update.
625 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
627 * Documentation/user/global.itely (File structure): remove
630 * lily/parser.yy (FIXME): remove ADDQUOTE
632 * Documentation/user/global.itely (Extracting fragments of
633 notation): new node, about clip systems.
635 * Documentation/user/lilypond-book.itely (Many quotes of a large
636 score): ref to clip systems.
638 * Documentation/user/instrument-notation.itely (Entering lyrics):
639 add note about lyric ties and required font.
641 * lily/open-type-font.cc (glyph_list): format errors.
643 * Documentation/user/programming-interface.itely (Scheme
644 procedures as properties): more doco on simple-closure and scheme
646 (Input variables and Scheme): use lilypond[verbatim], document
649 * Documentation/user/page.itely (Displaying spacing): use \book
650 explicitly, so arrows show .
651 (Line breaking): add note about Forbid_line_break_engraver
653 * Documentation/user/tweaks.itely (Common tweaks): also set length
654 to prevent tie squeezing.
655 (Default files): use @var{}
657 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
658 (Generating LilyPond files): add FOMUS.
660 2006-10-20 Joe Neeman <joeneeman@gmail.com>
662 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
663 Y-offset for TextScript and Script
665 * lily/text-engraver.cc (make_item):
666 * lily/script-engraver.cc (make_script_from_event):
667 remove call to Side_position_interface::set_axis since all scripts
668 now have this set by default
671 * lily/prob.cc: use variables
673 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
675 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
676 at typography, rather analyse stream event duration.
678 * Documentation/user/page.itely (Page formatting): set a6 paper
679 for system separator example.
681 * lily/arpeggio.cc (Module): idem.
683 * lily/accidental-placement.cc: add script-priority property.
685 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
687 * lily/ttf.cc (print_trailer): if all else fails: use
688 glyphIndexXXXX as glyph name. Fixes #117.
690 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
691 entry if cmap contains glyph.
692 (get_index_to_charcode_map): remove from Pango_font class, use
693 global filename -> font mapping.
694 (get_glyph_index_name): new function.
695 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
698 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
700 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
703 * scm/define-grob-properties.scm (all-user-grob-properties):
704 remove outdated doc. Fixes #116
706 * lily/completion-note-heads-engraver.cc (process_music): always
707 clone input events; otherwise we may overwrite input 'duration
708 property. Fixes #115.
710 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
713 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
716 * VERSION (PATCH_LEVEL): bump version.
718 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
720 * lily/engraver.cc (internal_make_grob): use variables.
722 * flower/string-convert.cc (dec2double): clean-up warnings.
724 * configure.in (CXXFLAGS): add -Werror.
726 * VERSION (PACKAGE_NAME): release 2.9.25
728 2006-10-18 Joe Neeman <joeneeman@gmail.com>
730 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
731 line even if we precede a forced break.
733 * lily/optimal-page-breaking.cc (try_page_spacing): square line
734 forces too. Make page-spacing weight default to 10 because the
735 changes to vertical springs decreased the page force/line force
736 proportions. Also, take the average of line force and page force
737 instead of just the sum.
739 * lily/constrained-breaking.cc (initialize): make the stiffness
740 of the vertical springs depend on the height of the system. This
741 prevents pages with only a few large systems from getting huge
744 * Documentation/user/page.itely (Page formatting): document the
745 change in default page-spacing-weight
747 * lily/include/constrained-breaking.hh: initialise bottom_padding_
749 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
751 * input/typography-demo.ly (melody): remove superfluous slur.
753 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
754 add piano-pedal-script-interface
756 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
758 * scripts/lilypond-book.py: DocBook support.
760 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
762 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
764 (stop_translation_timestep): set bound to currentMusicalColumn if
765 not set yet. Fixes #102
767 * lily/piano-pedal-bracket.cc: formatting.
769 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
771 * lily/piano-pedal-align-engraver.cc: new class
772 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
775 2006-10-18 Heikki Junes <hjunes@gmail.com>
777 * po/fi.po: Update Finnish translation (before the next release).
779 2006-10-17 Joe Neeman <joeneeman@gmail.com>
781 * lily/system.cc (get_paper_system): reinstate the backwards-
782 compatible page breaking for the old page breaker.
784 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
786 * lily/recording-group-engraver.cc: removed
788 * lily/context.cc, lily/translator-group.cc: Don't touch
789 Context::implementation_ if it's null
791 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
793 * scm/paper.scm: only use left-margin if defined.
795 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
797 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
799 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
800 strokeFingerOrientations
802 * lily/script-column.cc (row_before_line_breaking): also handle
803 accidentals and arpeggios in horizontal script stacking.
805 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
808 * input/regression/script-stack-horizontal.ly: trim.
810 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
812 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
815 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
816 'text if string argument.
818 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
820 * scm/define-context-properties.scm
821 (all-user-translation-properties): change to strokeFingerOrientations
823 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
825 * lily/parser.yy: remove debug output
827 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
829 * ly/paper-defaults.ly: set left/right margin.
831 * scm/paper.scm (set-paper-dimensions): use left-margin and
832 right-margin for computing linewidth.
834 * Documentation/topdocs/NEWS.tely (Top): idem.
836 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
839 * scm/define-markup-commands.scm (tied-lyric): increase negative
840 space: space syllables tighter.
842 * VERSION (PATCH_LEVEL): bump version.
844 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
847 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
849 * COPYING: further clarification
851 * VERSION: release 2.9.24
853 * input/regression/script-stack-horizontal.ly: add version.
855 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
857 * input/regression/lyric-tie.ly (texidoc): use different words.
859 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
861 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
863 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
864 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
866 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
868 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
870 * Doxyfile: remove file.
872 * scm/define-grob-interfaces.scm (string-finger-interface): add
873 string-finger-interface
875 * lily/general-scheme.cc (LY_DEFINE): move
876 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
878 * Documentation/topdocs/NEWS.tely (Top): add note for
879 string-finger feature.
881 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
884 * scm/output-lib.scm (string-finger::calc-text): read 'digit
887 * input/regression/script-stack-horizontal.ly: new file.
889 * ly/engraver-init.ly: add Script_row_engraver.
891 * lily/script-column.cc (order_grobs): refactor: separate axis
893 (row_before_line_breaking): new function.
895 * lily/script-row-engraver.cc (Script_row_engraver): new file.
897 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
899 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
901 * Documentation/user/instrument-notation.itely: Cleanup: Remove
902 annoying skip notes from mensural ligature example. Update
903 @refbugs for ligatures and mensural ligatures.
905 * lily/coherent-ligature-engraver.cc,
906 lily/include/coherent-ligature-engraver.hh,
907 lily/mensural-ligature-engraver.cc,
908 lily/vaticana-ligature-engraver.cc: Revise code for item
909 reparentizing. There should now be less programming_error
912 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
914 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
915 Maintenance bugfix: Don't create empty Stencil (), but empty box
916 instead. This fix should eliminate some programming_error
919 * ly/engraver-init.ly (MensuralStaff): Set default accidental
922 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
923 \layout block _before_ score.
925 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
927 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
929 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
931 2006-10-13 Erlend Aasland <erlenda@gmail.com>
933 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
935 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
937 * VERSION (PATCH_LEVEL): bump version.
939 * COPYING: clarify exception note.
941 * lily/main.cc: remove remark about "COPYING".
943 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
944 system-count starts at 0 for each clip-region. Change name to
945 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
946 layout block, per score.
948 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
950 * lily/input-smob.cc: add equal_p for Input
952 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
955 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
957 * lily/prob.cc: Add equal_p predicate for Prob
959 * lily/translator.cc: small cleanup
961 * scm/document-music.cc: use data from translator listener
962 registration to generate documentation for event classes
964 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
966 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
968 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
970 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
972 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
974 * Documentation/topdocs/INSTALL.texi: Thinko.
976 * .cvsignore: Update.
978 * lexer-gcc-3.1.sh: Remove.
980 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
981 Update anonymous cvs access. Remove comment about gcc 3.0.4.
983 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
985 * VERSION: release 2.9.23
987 * lily/paper-column-engraver.cc (stop_translation_timestep): also
990 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
992 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
994 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
996 * input/regression/clip-systems.ly (Notes): new file.
998 * scm/lily.scm (define-scheme-options): add clip-systems option.
1000 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
1002 (dump-stencil-as-EPS): move bbox calculation from previous
1004 (output-framework): use -dclip-systems
1006 * scm/lily-library.scm (filtered-map): new function
1008 * scm/framework-ps.scm (clip-system-EPS): new function.
1009 (clip-system-EPSes): new function.
1011 * lily/paper-column.cc: add rhythmic-location to interface
1013 * scm/define-grob-properties.scm (all-user-grob-properties): add
1014 rhythmic-location property.
1016 * scm/clip-region.scm: new file: rhythmic-location data type and
1017 system-clipped-x-extent function.
1019 * ly/init.ly: use (scm clip-region)
1021 * lily/paper-column-engraver.cc (stop_translation_timestep): set
1022 rhythmic-location for paper column grobs.
1024 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
1026 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
1028 * ly/engraver-init.ly: Remove obsolete comment on
1029 Bar_number_engraver.
1031 * Documentation/user/instrument-notation.itely: Tune Ancient
1032 Articulations figure, such that the episem actually shows.
1034 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1035 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1037 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1040 2006-10-12 Graham Percival <gpermus@gmail.com>
1042 * Documentation/user/ {some}: minor edits that were lost somehow.
1044 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1046 * VERSION (PACKAGE_NAME): bump version.
1048 * input/regression/lyric-tie.ly (texidoc): new file.
1050 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1052 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1054 * scm/define-markup-commands.scm (tied-lyric): new function: split
1055 string along ~ and reattach with U+203F (tie character) and
1058 * scm/output-lib.scm (lyric-text::calc-text): new function.
1060 * lily/lyric-engraver.cc (process_music): don't set 'text.
1062 * scm/output-lib.scm (string-finger::calc-text): new function
1063 (lyric-text::print): new function.
1065 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1066 generic for fingering & string number. Use for string-finger.
1068 * scm/define-music-types.scm (music-descriptions): add
1071 * lily/fingering-engraver.cc (listen_string_finger): new function
1073 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1075 * scm/define-context-properties.scm
1076 (all-user-translation-properties): add stringFingerOrientations
1078 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1080 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1081 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1083 * lily/dots.cc: Added style property for dots.
1085 * mf/parmesan-heads.mf: Fix typo in comment.
1087 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1088 adding longa head to feta font and removing obsolete default
1089 mapping scheme code.
1091 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1093 * scm/output-lib.scm (fingering::calc-text): use origin
1094 event-property, not music-property.
1096 * lily/lilypond.rc.in: spell my name correctly.
1098 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1100 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1101 already have a non-empty extent. Fixes estimation for Hara-kiri
1104 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1106 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1109 * lily/ligature-engraver.cc: Remove unused #include.
1111 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1112 Bugfix: remove method check_for_prefix_loss(Item *) from global
1113 namespace to avoid namespace pollution.
1115 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1117 * VERSION: release 2.9.22
1119 * ly/generate-documentation.ly: update option name.
1121 * lily/dynamic-text-spanner.cc (print): revert fix.
1123 * scm/define-grob-interfaces.scm
1124 (trill-pitch-accidental-interface):
1125 add trill-pitch-accidental-interface
1127 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1128 dereference if it's really a duration.
1130 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1131 useBassFigureExtenders is not set.
1132 (listen_bass_figure): record as new event if
1133 useBassFigureExtenders not set. Fixes #103.
1135 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1136 instead: move circle. Fixes #107.
1138 * scm/define-grobs.scm (all-grob-descriptions): set
1139 allow-loose-spacing for PaperColumn and
1140 NonMusicalPaperColumn. Kludge for #110.
1142 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1144 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1145 allow-loose-spacing property.
1147 * scm/define-markup-commands.scm (postscript): gsave & grestore
1148 around embedded PS. Do setlinewidth too. Fixes #109.
1150 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1152 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1153 code. This patch fixes ligature brackets that were not at all
1156 2006-10-08 Graham Percival <gpermus@gmail.com>
1158 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1160 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1162 * scm/define-context-properties.scm: clarified docs (bug 91).
1164 * Documentation/user/basic-notation.itely: document volta brackets
1165 not aligning (bug 63).
1167 * Documentation/user/ global.itely invoking.itely: ignore or
1168 add warnings about texstr.
1170 2006-10-08 John Mandereau <john.mandereau@free.fr>
1172 * po/fr.po: update translation.
1174 * po/: update msgids.
1176 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1178 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1180 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1182 * Documentation/user/page.itely (Two-pass vertical spacing): add
1183 documentation for two-pass spacing technique.
1185 2006-10-06 Graham Percival <gpermus@gmail.com>
1187 * Documentation/user/convert-ly.txt: new file; new
1188 storage place for this file (moved from bugs/ CVS).
1190 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1192 * lily/note-head.cc: Fixed programming_error message.
1194 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1196 * scm/define-grobs.scm (pure-conversion): move pure-callback
1199 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1200 marcato, stopped, thumb.
1202 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1204 * lily/completion-note-heads-engraver.cc (process_music): don't
1205 skimp on memory usage.
1207 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1210 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1211 parenthesis item. This fixes premature Y-extent triggering. Fixes
1214 * VERSION (PATCH_LEVEL): bump version.
1216 2006-10-04 Graham Percival <gpermus@gmail.com>
1218 * Documentation/user/advanced-notation.itely: added
1219 info about instrument names for piano or other contexts,
1222 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1224 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1225 solfa_base_notewidth as unit for non-DO-notes too.
1227 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1229 * VERSION: release 2.9.21
1231 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1234 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1236 * python/lilylib.py (progress): Minor fix.
1238 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1240 * lily/note-name-engraver.cc: doc engraver.
1242 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1244 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1246 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1249 * lily/stem-engraver.cc (make_stem): don't set duration-log
1251 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1252 write snippet-names binary.
1254 * python/lilylib.py (system): use os.system for mingw32
1256 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1259 * scm/backend-library.scm: update email address.
1261 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1264 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1267 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1268 handle dot creation separately.
1270 * lily/tab-note-heads-engraver.cc (process_music): idem.
1272 * lily/drum-note-engraver.cc (process_music): idem.
1274 * lily/note-heads-engraver.cc (process_music): idem.
1276 * lily/rest-engraver.cc: don't set duration-log.
1278 * scm/output-lib.scm (string-number::calc-text): new function.
1279 (note-head::calc-duration-log): new function.
1281 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1283 * scm/output-lib.scm (fingering::calc-text): new function.
1285 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1287 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1288 and include-eps-font -> include-eps-fonts
1290 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1292 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1294 * lily/timing-translator.cc: list properties.
1295 (start_translation_timestep): update internalBarNumber too.
1297 * scm/define-context-properties.scm
1298 (all-user-translation-properties): add internalBarNumber.
1300 * input/regression/spacing-no-note.ly: new file.
1302 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1304 * lily/book.cc: #include cleanup.
1306 * lily/include/lily-guile-macros.hh: add assert to
1307 scm_or_str2symbol(SCM).
1309 * VERSION (PATCH_LEVEL): bump version.
1311 * lily/spacing-spanner.cc (musical_column_spacing): handle
1312 musical->nonmusical spacing case, where there is no spacing
1313 wish. Fixes issue #61.
1315 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1316 (pango_item_string_stencil): use logical rect horizontally (to
1317 preserve spaces), ink_rect vertically (for time signatures).
1319 * lily/font-metric.cc (word_stencil): new interface function
1321 * input/regression/utf-8-mixed-text.ly: new file.
1323 * lily/percent-repeat-engraver.cc (listen_percent): remove
1326 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1327 non-dynamic scripts. Fixes #30.
1329 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1331 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1333 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1334 SCM_UNDEFINED for non-existent data.
1336 * lily/side-position-interface.cc (general_side_position): allow
1337 optional current_offset argument for chaining, so combinations of side-position
1338 and outside slur callback don't add up. Fixes issue #92.
1340 * lily/pango-font.cc (pango_item_string_stencil): use
1341 logical_rect. This prevents spaces after words from disappearing,
1344 * VERSION: release 2.9.20
1346 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1348 * scm/define-grob-properties.scm (all-user-grob-properties):
1349 mention stencil as user settable.
1351 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1353 * Documentation/user/page.itely (Page formatting):
1354 document auto-first-page-number
1356 * lily/page-breaking.cc (find_chunks_and_breaks):
1357 * lily/paper-score.cc (calc_breaking): Follow changes to the
1358 Constrained_breaking interface
1360 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1361 here backwards, as an optimisation
1362 (initialize): new function; move most of the code in resize () here
1363 (combine_demerits): cache ragged_right_
1364 (Constrained_breaking): constructor now takes the Paper_score
1366 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1368 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1369 avoid parser lookahead for 0-ary functions.
1371 * lily/translator.cc: Extract event classes from
1372 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1374 2006-10-02 Heikki Junes <hjunes@gmail.com>
1376 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1379 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1381 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1382 function. Call the page breaking function selected in the
1383 `page-breaking' \paper variable, then the post processing function
1384 chosen using the `page-post-process' \paper variable.
1385 (line-height): new function. Return the height of a system.
1386 (line-minimum-position-on-page): new function. Return the position
1387 of a system on page (using the previous line position), only
1388 considering between system padding.
1389 (stretchable-line?): new function. Says whether a line can be
1390 stretched (ie. is not a title nor a single staff system).
1391 (page-maximum-space-left): new function. Computes space left on a
1392 page, when all systems are separated by their padding.
1394 * lily/page-breaking.cc (breaking::make_pages): Move page post
1395 processing function call to page breaking wrapper (common to all
1398 * lily/paper-book.cc (book::pages): call the page breaking
1399 wrapper, instead of the page breaker directly
1401 * ly/paper-defaults.ly: Add \paper variables for page breaking
1402 wrapper and page post processing function. Make
1403 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1404 `system-maximum-stretch-procedure' variable for holding a function
1405 computing the maximum stretch a system allows.
1407 * scm/layout-page-dump.scm (write-page-breaks): computes the
1408 stretch to apply to systems on a page to minimize left
1409 space. Dump this stretch length.
1411 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1412 the system-stretch property of the tweak data to stretch the
1414 (includePageLayoutFile): Void function which includes the
1415 generated page-layout file if it exists and if the page layout
1416 dumping is not asked.
1417 (scoreTweak): if the score tweak named by the argument exists,
1420 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1422 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1423 handle correctly the case where there are multiple \noPageBreaks
1426 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1428 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1430 * abc2ly.py fix so that entering " -- " will translate to a -- in
1431 the lilypond instead of a " - - "
1433 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1435 * lily/align-interface.cc: fix typo
1437 * lily/dynamic-text-spanner.cc (print): Add a special case for
1438 trill spanner right sides.
1440 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1442 * lily/align-interface.cc (get_extents_aligned_translates): add
1443 support for padding variable.
1445 * lily/break-align-interface.cc (self_align_callback): oops: use
1446 loop variable in guard.
1448 * input/regression/repeat-percent-grace.ly: new file.
1450 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1451 remember first currentCommandColumn of a grace run. Fixes issue 70.
1453 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1454 move class definition to CC file.
1456 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1458 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1459 measure-long repeats.
1461 * flower/include/international.hh: include stdarg.h
1463 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1465 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1466 put_systems_on_pages to return an empty result, we need to assign
1467 demerits properly in that case.
1468 (put_systems_on_pages): Make the number of pages depend on the
1469 evenness of page_number. Add auto-first-page-number.
1470 (calc_subproblem): ensure that the page-number is even for the
1471 left-hand page. Warn if the first page-turn doesn't fit onto the
1472 first (right-hand) page.
1474 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1475 (min_page_count): make this publicly accessible
1476 (min_page_count): fix a bug when there are forced page breaks that
1477 was introduced when I made this loop run backwards
1478 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1479 replace space_systems_on_min_pages with these two. The logic in
1480 space_systems_on_min_pages was getting too convoluted and is better
1481 contained in page-turn-page-breaking.
1483 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1485 (breakable_column): typo
1487 * lily/source-file.cc (get_line): fix off-by-one error
1488 and clean up some of the logic
1490 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1492 * lily/page-breaking.cc (make_pages): honour the first-page-number
1495 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1497 * VERSION (PACKAGE_NAME): bump version.
1499 2006-09-26 Pal Benko <benko.pal@gmail.com>
1501 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1502 (the latter is the same as petrucci-f which is kept for compatibility)
1504 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1506 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1508 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1510 * lily/global-context.cc (run_iterator_on_me): break out of loop
1511 if moment doesn't increase.
1513 * scm/define-grob-properties.scm (all-user-grob-properties): add
1516 * lily/accidental.cc (after_line_breaking): read forced property.
1518 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1521 * input/regression/accidental-forced-tie.ly: new file.
1523 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1525 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1527 * lily/figured-bass-engraver.cc: only listen to rest events if
1528 ignoreFiguredBassRest is not set.
1530 * scm/define-context-properties.scm
1531 (all-user-translation-properties): add ignoreFiguredBassRest property
1533 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1535 * lily/paper-book.cc (get_system_specs):
1536 (set_system_penalty): fix breakbefore.
1537 We used to set a penalty on the system after the break, now we
1538 set a permission on the system before the break
1540 * lily/grob-property.cc: add scm debugging hooks into
1541 property modification
1543 * lily/context-property.cc:
1545 rename make_foo_from_properties to internal_make_foo and
1546 move it from context-property.cc to a member function of
1549 * lily/include/lily-guile-macros.hh:
1550 overload ly_symbol2scm macro so that there is no more need
1553 * lily/volta-repeat-iterator.cc:
1554 * lily/tweak-engraver.cc:
1555 * lily/tuplet-bracket.cc:
1556 * lily/span-bar-engraver.cc:
1557 * lily/script-engraver.cc:
1558 * lily/prob-scheme.cc:
1559 * lily/pointer-group-interface.cc:
1561 * lily/grob-scheme.cc:
1562 * lily/grob-property.cc:
1564 * lily/context-property.cc:
1565 * lily/break-substitution.cc:
1566 * lily/break-align-engraver.cc:
1567 * lily/axis-group-interface.cc:
1568 * lily/align-interface.cc:
1569 remove calls to internal_FOO
1571 * lily/system-start-delimiter-engraver.cc:
1572 * lily/parenthesis-engraver.cc:
1573 * lily/accidental-engraver.cc:
1574 remove calls to make_foo_from_properties
1576 2006-09-23 Graham Percival <gpermus@gmail.com>
1578 * Documentation/user/programming-iterfaces.itely: fix
1579 def-music-function -> define-music... leftover.
1581 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1583 * lily/page-spacing.cc (min_page_count): by running the loop
1584 backwards, we can calculate ragged_last properly.
1586 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1588 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1589 printfirst-page-number -> print-first-page-number
1591 * python/convertrules.py: corresponding rule.
1593 * Documentation/user/page.itely (Page formatting): Document the
1594 default values of all page layout parameters.
1596 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1598 * lily/lexer.ll: remove limitation on music function arity. New
1599 mode extratoken, which inserts extra EXPECT_* tokens after
1600 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1602 * lily/parser.yy: Change grammar for music function accordingly.
1604 * lily/include/lily-parser.hh: New method get_state, new member
1605 hidden_state. Works around a problem when parser fetches
1606 MUSIC_FUNCTION token but not the following EXPECT_* token.
1608 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1611 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1612 references to Music; use ASSIGN_EVENT_ONCE everywhere
1614 * lily/grob-info.cc: junk *music_cause
1616 * lily/music.cc: copy eventified articulations to stream event
1618 * lily/part-combine-iterator.cc: Cleanup using enums
1620 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1623 * lily/include/engraver.hh: Junk music.hh include
1625 * lily/stream-event.cc: Changed constructors
1627 2006-09-21 Graham Percival <gpermus@gmail.com>
1629 * Documentation/user/tweaks.itely (Fitting music onto fewer
1630 pages): change settings to avoid warning messages.
1632 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1634 * Documentation/user/tweaks.itely (Fitting music onto fewer
1635 pages): Add between-system-space setting.
1637 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1639 * lily/accidental-placement.cc (calc_positioning_done): don't
1640 trigger Y-extent calculation too early. Use pure_height instead.
1642 * lily/scale.cc (LY_DEFINE): new file.
1644 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1646 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1647 that happen at the start of a score: having a zero-length
1648 chunk was messing up min_system_count calculations.
1650 * lily/source-file.cc (get_line): lower_bound, not
1651 binary_search. Fixes problem where point-and-click would
1652 always point to the first line.
1654 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1656 * lily/accidental-placement.cc (calc_positioning_done): also put
1657 stems into accidental support.
1659 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1662 * scm/script.scm (default-script-alist): avoid-slur and
1663 slur-padding for portato script.
1665 * lily/stem-tremolo.cc (translated_stencil): new function.
1666 (height): use new function. Fixes tremolos on whole notes.
1668 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1671 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1673 * scripts/abc2ly.py (try_parse_comment): idem.
1675 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1676 bar_string iso. string.find()
1680 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1683 2006-09-18 Graham Percival <gpermus@gmail.com>
1685 * Documentation/user/basic-notation.itely: add bug
1686 warning about ties and octavation/clef.
1688 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1690 * VERSION (PACKAGE_NAME): release 2.9.18
1692 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1694 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1695 figure out midi file names right here.
1697 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1699 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1701 * scm/backend-library.scm: option naming: gs-font-load*s*
1703 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1706 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1708 * scm/define-music-types.scm (music-descriptions): remove
1709 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1710 Music::to_event doesn't complain.
1712 * lily/accidental-placement.cc (ape_compare):
1713 * lily/semi-tie.cc (compare):
1714 * lily/note-column.cc (shift_compare): replace by XXX_less
1716 * lily/tie-formatting-problem.cc (set_chord_outline):
1717 * lily/tie-column.cc (calc_positioning_done):
1718 * lily/system.cc (post_processing)
1720 * lily/stem.cc (note_head_positions)
1721 (calc_positioning_done):
1722 * lily/spanner.cc (do_break_processing)
1723 (find_broken_piece):
1724 * lily/span-bar.cc (print):
1725 * lily/semi-tie-column.cc (calc_positioning_done):
1726 * lily/rest-collision.cc (calc_positioning_done):
1727 * lily/program-option.cc (get_help_string):
1728 * lily/note-collision.cc (get_clash_groups):
1729 * lily/new-fingering-engraver.cc (position_scripts):
1730 * lily/keyword.cc (Keyword_table):
1731 * lily/hara-kiri-group-spanner.cc (request_suicide):
1732 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1733 * lily/accidental-placement.cc (calc_positioning_done):
1735 * lily/beam.cc (get_beam_segments):
1736 * lily/grob-array.cc (remove_duplicates):
1739 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1740 ragged-last-bottom = ##f (test the new page breaker)
1742 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1744 * scm/define-context-properties.scm
1745 (all-internal-translation-properties): remove properties that
1746 were used to communicate page-turn stuff to the paper-column
1749 * lily/lily-guile.cc (robust_scm2string): new function
1751 * lily/paper-column-engraver.cc: Clean up page turn stuff
1753 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1754 instead of cluttering up paper-column-engraver.cc
1756 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1758 * scm/layout-page-dump.scm (scm): export utility function names,
1759 to allow user writing cutsom dumping functions.
1761 * scm/layout-page-layout.scm: export utility function names to
1762 enable custom page breaking function writing. Tabify.
1763 (line-next-space): use ?-suffix only for predicates
1764 (page-maximum-space-to-fill): new function. Return the space
1765 between first and bottom system of a page, to give to
1767 (space-systems): use a space-to-fill argument (for instance as
1768 computed by page-maximum-space-to-fill) instead of computing
1769 internaly this space with the page height. That way, the caller
1770 can adjust the space to use.
1771 (make-page-from-systems, walk-paths): compute space to fill before
1772 calling space-systems.
1774 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1776 * scm/script.scm (default-script-alist): set paddings for every
1777 type here, increase for portato mark.
1779 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1782 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1784 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1785 use spanner::set-spacing-rods
1787 * lily/note-column.cc: reformat.
1789 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1790 step positioning for note/rest combinations.
1792 * input/regression/rest-note-collision.ly: new file.
1794 * scm/define-grobs.scm (all-grob-descriptions): add
1797 * flower/include/std-vector.hh: switch off again.
1799 * VERSION (PATCH_LEVEL): bump to 2.9.18
1801 * flower/include/std-string.hh: idem.
1803 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1805 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1807 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1810 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1812 * Documentation/user/page.itely: update page breaking documentation
1814 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1816 * lily/note-collision.cc (calc_positioning_done): only access
1817 first head if available.
1819 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1821 * scm/framework-ps.scm (output-preview-framework): use new name.
1823 * lily/program-option.cc (internal_set_option): use new names.
1825 * Documentation/user/SConscript (lilypond_book_flags): update -d
1828 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1829 output into other programs): new variable names.
1831 * scm/lily.scm (define-scheme-options): uniformize var names.
1833 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1834 tuplets_ is non-empty before popping.
1836 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1838 * lily/spanner.cc (find_broken_piece):
1839 * lily/spacing-spanner.cc (get_columns):
1840 * lily/source-file.cc (get_line):
1841 * lily/simple-spacer.cc (get_column_description):
1842 * lily/keyword.cc (lookup):
1843 use the new binary search.
1845 * flower/include/std-vector.hh: replace binary_search with
1846 a more STL-like version
1848 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1850 * lily/tie-performer.cc: remove unused last_event_ property.
1851 (class Tie_performer): add now_tied_heads_ property for
1852 partially-tied heads.
1853 (acknowledge_audio_element): when adding an Audio_note, put the
1854 note in now_tied_heads_ if the audio note is partially tied.
1855 (stop_translation_timestep): always include entries in
1856 now_tied_heads_ in heads_to_tie_.
1858 * lily/drum-note-performer.cc (process_music): look for tie-events
1859 in the articulations; pass to Audio_note constructor.
1861 * lily/note-performer.cc (process_music): look for tie-events in
1862 the articulations; pass to Audio_note constructor.
1864 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1867 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1868 include initializer in constructor.
1870 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1872 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1873 unless they are breakable. This fixes discrepancies between the forces
1874 calculated here and the forces calculated in get_line_configuration.
1876 * lily/grob.cc (pure_relative_y_coordinate): fix some
1877 mis-estimation that was happening with piano staves.
1879 * lily/constrained-breaking.cc (resize): don't choke if we get a
1880 measure that won't fit on a line.
1881 (combine_demerits): don't consider uniformity when ragged
1883 * lily/page-spacing.cc (solve): why the f* were there two of these?
1884 (calc_subproblem): properly handle the case where a system is taller
1887 * lily/system.cc (get_paper_system): ensure that all the permissions
1888 and penalties are passed to the paper systems.
1890 * lily/page-breaking.cc (create_system_list): support system-count.
1892 * scm/define-grobs.scm (pure-print-callbacks): add
1893 ly:script-interface::print
1895 * lily/page-spacing.cc (min_page_count): fix calculation of min
1896 pages if we are ragged and there are non-zero springs.
1898 * scm/layout-page-layout.scm: if the pure-height estimates are under
1899 the real height, allow space-systems to ignore padding if it is
1900 needed in order to fit the systems on one page
1902 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1904 (solve): fix performance problem. Make sure we always get at least
1907 * lily/page-breaking.cc (make_pages): include write-page-breaks
1910 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1912 * scm/define-grobs.scm: add the new slur-callback
1913 fix pure-relevant to not exclude grobs whose extent is already
1916 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1919 * lily/slur.cc (pure_height): new callback to estimate the height
1922 2006-09-02 Graham Percival <gpermus@gmail.com>
1924 * Documentation/user/invoking.itely: small update on
1925 MacOS X notes; thanks Trevor!
1927 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1929 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1931 * lily/lexer.ll: accept EOF in all states.
1933 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1935 * lily/source-file.cc (Source_file): always 0-terminate character
1936 array, to prevent Flex from barfing.
1938 * lily/global-context.cc (get_output): robustness: don't crash if
1939 no Score context found.
1941 * lily/include/book.hh (class Book): idem.
1943 * lily/include/context-def.hh (struct Context_def): idem.
1945 * lily/include/score.hh (class Score): don't derive from Input.
1947 * lily/book.cc (Book): add a copy ctor.
1949 * buildscripts/output-distance.py (FileLink.calc_distance): count
1950 orphans in distance too.
1952 * python/midi.c (midi_parse_track): robustness: don't read past
1955 * ly/performer-init.ly: add Control_track_performer, move
1956 Tempo_performer and Time_signature_performer to Score.
1958 * lily/score-performer.cc (acknowledge_audio_elements): override
1959 from base class: add to audio-columns
1961 * lily/control-track-performer.cc (add_text): new file: generate
1964 * lily/performance.cc: move output_header_track to
1965 Control_track_performer ()
1967 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1969 * lily/include/midi-item.hh (class Midi_channel_item): insert
1970 class into hierarchy, for items that can have a channel setting. Dehungarify.
1972 * lily/include/performer.hh (class Performer): remove
1973 play_element(); move functionality into announce/acknowledge.
1975 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1977 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1978 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1980 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1982 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1985 * lily/all-font-metrics.cc: remove TFM support.
1987 * lily/include/tfm.hh: remove TFM support, TFM reader.
1989 * lily/include/binary-source-file.hh: remove Binary_source_file.
1991 2006-08-27 Graham Percival <gpermus@gmail.com>
1993 * Documentation/topdocs/NEWS.itely: add @c marker for
1994 stuff I've processed.
1996 * Documentation/user/ various: info from NEWS.
1998 2006-08-27 Joe Neeman <joeneeman@gmail.com>
2000 * lily/paper-column-engraver.cc (finalize): Oops, this change
2001 should have gone in on 2006-08-23
2003 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
2005 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
2006 quotes to quote arguments. Fixes Windows problem.
2008 * python/lilylib.py (progress): idem
2010 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2012 * scripts/musicxml2ly.py: fix for importing
2013 minor key signatures from MusicXML. (Phillip Kirlin)
2015 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
2017 * python/musicxml.py:
2018 (Attributes.get_key_signature): now correctly retrieves mode from
2021 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2023 * lily/parser.yy (output_def_body): take ownership of identifier
2026 * Documentation/user/advanced-notation.itely (Metronome marks):
2027 update use of \tempo in \midi.
2029 * VERSION: release 2.9.16
2031 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
2033 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2036 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2038 * input/regression/tie-chord-partial.ly: clarify example.
2040 * scm/define-music-properties.scm (all-music-properties): remove
2043 * ly/music-functions-init.ly: remove \untied.
2045 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2046 stream events and music events.
2047 (stop_translation_timestep): search acknowledged heads for
2050 * input/regression/tie-chord-partial.ly: new file.
2052 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2053 for \char markup command.
2055 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2057 * scm/define-music-types.scm (music-descriptions): consistency:
2058 Use solo-{one,two}-event iso. solo-[12]-event.
2060 * lily/part-combine-engraver.cc (process_music):
2061 Use solo-{one,two}-event iso. solo-[12]-event.
2063 * ly/declarations-init.ly (partCombineListener): add Timing as
2066 * flower/std-string.cc (string_copy): use copy ()
2068 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2070 2006-08-24 Graham Percival <gpermus@gmail.com>
2072 * Documentation/user/changing-defaults.itely, global.itely,
2073 lilypond-book.itely, page.itely: minor changes from mailist.
2075 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2077 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2080 * scm/define-context-properties.scm
2081 (translator-property-description): robustness: detect type errors
2082 in property definitions.
2084 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2085 after getting it from SCM.
2087 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2090 * lily/include/performer.hh (class Performer): strip get_tempo()
2093 * lily/midi-def.cc: strip file.
2095 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2097 * lily/include/context-def.hh (struct Context_def): use
2098 VIRTUAL_COPY_CONSTRUCTOR().
2100 * lily/source-file.cc: smobification.
2102 * lily/include/source-file.hh (class Source_file): smobify
2103 Source_file. Trim redundant members.
2105 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2106 clones after creation. This plugs a huge memory leak.
2108 * python/convertrules.py (FatalConversionError.sub_tempo):
2109 complete rule for \midi{ \tempo }
2111 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2113 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2115 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2117 * input/regression/optimal-page-breaking-hstretch.ly: test for
2118 ragged-last-bottom also
2120 * lily/paper-column-engraver.cc (finalize): make the end of a score
2121 breakable by default. This is to balance out a change in behaviour
2122 of the page-turn-breaker which no longer makes the end of a score
2125 * lily/paper-book.cc (pages): set the systems_ once the pages are
2128 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2129 Page_breaking interface.
2131 * lily/page-breaking.cc (class Page_breaking): make the interface
2132 more consistent and provide abstractions for dealing with
2135 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2136 algorithm. Use the new interface to Page_breaking.
2138 * lily/page-spacing.cc: better support for ragged-bottom and
2141 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2143 * python/convertrules.py (conv): warning on \tempo{}
2145 * ly/performer-init.ly: set tempoWholesPerMinute.
2147 * ly/midi-init.ly: remove \midi
2149 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2152 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2153 tempoUnitDuration for determining what to print.
2155 * lily/lyric-extender.cc: typo.
2157 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2159 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2162 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2164 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2165 eps-pad-boxes is set.
2167 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2169 * THANKS: update sponsors.
2171 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2173 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2175 * input/regression/tie-chord-untied.ly: new file.
2177 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2179 * scm/define-music-properties.scm (all-music-properties): add
2182 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2184 (headertext_nopics): sanitize no-examples text.
2186 * scm/page.scm (make-page-stencil): don't rely on extents of
2187 page-stencil. This fixes spurious space around .EPS files produced
2188 with the EPS backend.
2190 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2192 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2194 * lily/hara-kiri-engraver.cc (process_music): remember
2195 keepAliveInterfaces after processing \set
2197 * lily/lyric-extender.cc (print): support left/right-padding for
2200 * scm/documentation-generate.scm (string-append): revert lilypond/
2203 2006-08-20 Graham Percival <gpermus@gmail.com>
2205 * Documentation/user/lilypond.tely: clarification to
2206 license presentation (not to actual license).
2208 * Documentation/user/basic-notation.itely,
2209 instrument-notation.itely: minor changes.
2211 * input/ {regression, test}/+.ly: clarification to
2212 text (you can click on examples). Thanks, Mats!
2214 * input/manual/bar-lines.ly: adds ||: repeats.
2216 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2218 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2220 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2222 * Documentation/user/lilypond.tely: strip lilypond/ from info
2223 links, rename to category LilyPond
2225 * lily/pango-font.cc (description_string): new function.
2227 * VERSION: release 2.9.15
2229 * lily/spacing-engraver.cc (stop_translation_timestep): use
2230 Dscho's fix for spacing spanner.
2232 * scm/define-music-types.scm (music-descriptions): use
2233 apply-output-event for ApplyOutputEvent
2235 * lily/output-property-engraver.cc (listen_apply_output): rename
2236 from listen_layout_instruction.
2238 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2241 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2243 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2244 commandline args with contains, split by \n.
2246 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2247 write snippet-names file, call with -dread-file-list. Fixes
2248 command limitations on 64-bit systems.
2250 * input/regression/stencil-color-rotation.ly: new file.
2252 * lily/include/translator.hh (struct Acknowledge_information):
2253 revert: don't use Protected_scm in global objects, as GUILE can't
2254 handle gc_unprotect from automated destructors on MacOS X.
2256 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2257 color, not the original stencil. Fixes combinations of
2258 color/transparency/rotation.
2260 * scripts/lilypond-book.py (main): add --formats=eps for
2263 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2264 crash if spacing_ is nonexistent.
2266 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2268 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2269 \catcode`\@=12 in the LaTeX output.
2271 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2273 * scm/define-music-types.scm (music-descriptions):
2274 use sustain-event iso. sustain-pedal-event.
2276 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2278 * scripts/convert-ly.py: honour the -n command-line switch
2280 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2282 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2283 break specification.
2285 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2287 * Documentation/user: convert-ly the user manual
2289 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2291 * stepmake/aclocal.m4: version check patch (thanks MWD)
2293 * ly/music-functions-init.ly: robustness. Don't crash if
2294 currentBarNumber is not a number.
2296 * VERSION (PATCH_LEVEL): bump.
2298 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2300 * stepmake/aclocal.m4: better version check; handle fooX.Y
2303 * ly/performer-init.ly: instrument name fixup.
2305 * input/manual/chord-names-jazz.ly (banterProperties):
2306 instrumentName update
2308 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2310 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2312 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2313 function. Use hash tables to check membership.
2315 * lily/general-scheme.cc (LY_DEFINE): new function.
2317 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2319 * lily/include/translator.hh (struct Acknowledge_information): add
2322 * ly/music-functions-init.ly: change name to BreathingEvent
2324 * input/regression/*.ly: apply it.
2326 * python/convertrules.py (conv): better instrumentName conversion
2329 * scm/define-music-types.scm (music-descriptions): add
2330 line-break-event to LineBreakEvent music
2332 * lily/music.cc (to_event): don't crash if music type not set.
2334 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2337 * lily/spacing-engraver.cc (stop_translation_timestep): set
2338 spacing for proportional notation too.
2340 * scm/translation-functions.scm (format-bass-figure): inspect
2343 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2345 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2347 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2349 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2351 * scm/layout-page-layout.scm (make-page-from-systems): new function
2352 (optimal-page-breaks): use the new page-breaking calling convention
2354 * scm/define-context-properties.scm (all-user-translation-properties):
2357 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2358 revokePageTurns functionality. If there is a special barline within
2359 the breakable region, break there instead of at the end of the region.
2361 * lily/paper-book.cc (pages): use the new page-breaking calling
2364 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2366 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2368 * scripts/lilypond-book.py: insert \sourcefileline command in
2369 output, so lilypond error messages refer to the spot in the
2370 original .lytex / .itely sourcefile.
2372 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2374 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2375 space to next column for distance to fixed col.
2377 * VERSION (PACKAGE_NAME): release 2.9.14
2379 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2382 * lily/accidental-engraver.cc (process_acknowledged): don't create
2383 accidental for trill span event. This fixes spurious accidentals
2386 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2388 * scm/define-grob-properties.scm (all-user-grob-properties):
2389 Clarify documentation of side-axis and direction. Thanks to Paul
2390 for the inspiration.
2392 * lily/bar-line.cc: Add documentation for "||:" also in the
2393 interface documentation.
2395 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2397 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2399 * lily/paper-column.cc (set_system): new function.
2401 * lily/spacing-engraver.cc (stop_translation_timestep): store
2402 SpacingSpanner refs in Paper_column.
2404 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2405 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2407 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2409 * lily/beam-engraver.cc (listen_beam): add method for
2410 Grace_beam_engraver too.
2412 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2414 * python/convertrules.py: Fix indentation bug that broke
2415 conversion of files older than 1.3.117.
2416 Fix escape error in the description for 2.9.6.
2418 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2420 * lily/*-engraver.cc: convert all try_music functions to listen_*
2423 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2424 enums to represent pedal types, and calculate more data statically.
2426 * scm/part-combiner.scm (recording-group-emulate): create a
2427 softcoded substitute for recording-group-engraver.cc.
2429 * lily/music.cc: make a common transpose function for events and
2432 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2433 ManualMelismaEvent, and obsoletes Melisma_translator.
2435 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2437 * input/test/instrument-name-align.ly: update version.
2439 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2441 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2442 Doc the --pdf flag to lilypond-book.
2444 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2446 * Documentation/topdocs/NEWS.tely (Top): add description.
2448 * input/regression/tuplet-full-length-note.ly: add file.
2450 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2451 always store axis group.
2453 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2455 * input/regression/instrument-switch.ly: new file.
2457 * lily/instrument-switch-engraver.cc (process_music): new file.
2459 * ly/engraver-init.ly: add Instrument_switch_engraver
2461 * ly/music-functions-init.ly: \instrumentSwitch
2463 * scm/define-context-properties.scm
2464 (all-user-translation-properties): add instrumentCueName
2466 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2468 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2470 * ly/music-functions-init.ly: music function \transposition.
2472 * lily/parser.yy (command_element): softcode \transposition.
2474 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2475 (process_music): oops.
2477 * lily/instrument-name-engraver.cc (start_spanner): new
2478 function. Create spanner when property changes.
2479 (stop_spanner): new function.
2481 * python/convertrules.py (conv): add rule.
2483 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2484 shortInstrumentName iso. instr.
2486 * scm/output-ps.scm (dashed-line): add phase argument to
2489 * lily/bar-line.cc (dashed_bar_line): new function.
2490 (compound_barline): support \bar "dashed".
2492 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2493 --output=DIR to DIR/BASE if it is a dir.
2495 * flower/file-name.cc (file_part): new function
2496 (dir_part): new function
2498 * lily/lily-parser-scheme.cc (LY_DEFINE):
2500 * DEDICATION: update
2502 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2504 * lily/instrument-name-engraver.cc: formatting.
2506 * python/convertrules.py (conv): bugfix for \epsfile.
2508 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2512 * lily/gourlay-breaking.cc: Oops, these should have been included
2515 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2517 * scripts/*.py (program_name): cleanup relocation snippets.
2519 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2521 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2523 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2524 page-breakable by default
2526 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2527 correctly calculated for a single-system page
2529 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2530 bigger than the second number
2532 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2533 acknowledge that we aren't satisfying constraints)
2535 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2538 * lily/grob.cc (pure_height): add minimum-Y-extent
2540 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2543 * lily/constrained-breaking.cc: convert code to use new Matrix class
2544 (get_best_solution): new function
2546 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2547 is a page with no systems
2549 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2551 * VERSION (PACKAGE_NAME): release 2.9.13
2553 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2556 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2558 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2560 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2563 * scm/define-grob-properties.scm (all-user-grob-properties):
2564 remove grace-space-factor.
2566 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2567 grace-spacing-interface
2568 (spacing-options-interface): add.
2570 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2572 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2574 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2575 GraceSpacing object.
2577 * lily/note-spacing.cc: fix prop list formatting
2579 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2580 beaming for grace notes too.
2582 * input/regression/spacing-grace.ly: update.
2584 * lily/grace-spacing-engraver.cc: new file.
2586 * lily/spacing-spanner.cc: add strict-grace-spacing.
2588 2006-07-20 Graham Percival <gpermus@gmail.com>
2590 * lily/parser.yy: compile fix.
2592 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2594 * scm/define-grobs.scm (all-grob-descriptions): typo.
2596 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2597 .eps extension from includegraphics.
2599 * scripts/lilypond-book.py (main): add support for --pdf.
2601 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2602 callback to compute common shortest duration.
2603 (set_springs): typo.
2605 * scm/define-grob-properties.scm (all-user-grob-properties): add
2606 strict-grace-spacing.
2608 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2609 support float_grace_columns_.
2611 * lily/spacing-options.cc (init_from_grob): new file.
2613 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2615 * input/regression/spacing-loose-grace.ly: new file.
2617 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2619 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2620 tupletFullLengthNote too. Choose right bound depending on value.
2622 * input/regression/tuplet-full-length-note.ly: new file.
2624 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2626 * lily/*-performer.cc: Converted try_music to listen_*
2628 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2629 as a stream-event internally. Introduce event_cause (), deprecate
2632 * scm/define-music-types.scm: Removed BusyPlayingEvent
2634 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2636 * Documentation/user/advanced-notation.itely (Font selection):
2637 Document how to get a list of available fonts using 'lilypond
2638 -dshow-available-fonts blabla'.
2640 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2642 * GNUmakefile.in: filter lily-XXX.pdf files.
2644 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2646 * scm/define-grob-properties.scm (all-internal-grob-properties):
2647 remove delta-pitch. Use delta-position everywhere.
2649 * scm/output-lib.scm (fall::print): use new order.
2651 * scm/output-ps.scm (path): reorder arguments.
2653 * scm/output-svg.scm (path): support for path primitive.
2655 * input/regression/bend-after.ly: new file.
2657 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2658 recipe for eps -> pdf conversion.
2660 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2662 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2665 2006-07-19 Graham Percival <gpermus@gmail.com>
2667 * input/manual/screech-boink.ly: moved to here.
2669 * input/screech-boink.ly: deleted.
2671 * scm/define-grob-properties.scm: clarify doc string.
2673 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2675 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2677 * scm/output-ps.scm (path): define path.
2679 * scm/define-stencil-commands.scm
2680 (ly:register-stencil-expression): add path.
2682 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2684 * ly/engraver-init.ly: add Fall_engraver
2686 * lily/parser.yy (music_function_event): allow musicfunction
2687 without music arg as music_function_event.
2689 * lily/grob-scheme.cc (LY_DEFINE):
2690 ly:grob-robust-relative-extent. New function.
2692 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2694 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2696 * scm/output-lib.scm (fall::print): new function
2698 * lily/fall-engraver.cc (stop_fall): new file.
2700 * ly/music-functions-init.ly: alphabetise.
2702 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2705 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2707 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2709 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2712 * lily/translator-group.cc (connect_to_context): non const error message.
2714 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2716 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2719 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2721 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2723 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2726 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2728 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2730 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2732 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2734 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2736 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2738 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2740 * scm/layout-page-layout.scm: Define module, tidy code, use more
2741 functions iso. a single big one.
2743 * scm/layout-page-dump.scm: move page dump functions used in two
2744 pass spacing to this file. Define module.
2746 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2749 * ly/paper-defaults.ly: use module layout-page-layout.
2751 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2753 * lily/music.cc: Revised MusicEvent event class. It now contains
2754 event data directly instead of encapsulating it in music. The
2755 previously used class is renamed to OldMusicEvent.
2757 * lily/stream-event.cc: Stream events are now probs.
2759 * lily/translator-group.cc, lily/translator.cc: Translators can
2760 now listen directly to stream events, by using macros
2761 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2763 * lily/arpeggio-engraver.cc: Converted to use new event system
2765 * THANKS: Corrected spelling mistake.
2767 2006-07-12 Graham Percival <gpermus@gmail.com>
2769 * Documentation/user/SConscript, make/lilypond-vars.make,
2770 input/GNUmakefile: doc build looks in input/manual instead
2773 * input/manual/ GNUmakefile, SConscript: build files for
2776 * input/test/ various: some files moved to input/manual/
2778 * Documentation/user/basic-notation.itely: small updates;
2779 thanks Kieren and Charles!
2781 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2783 * VERSION (PACKAGE_NAME): release 2.9.11
2785 * Documentation/topdocs/NEWS.tely (Top): update prop value
2787 * Documentation/user/basic-notation.itely (Tuplets): new property
2790 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2792 * python/convertrules.py (conv): tweaks.
2794 * VERSION (PATCH_LEVEL): bump version.
2796 * python/convertrules.py (conv): add rule for
2797 tupletNumberFormatFunction.
2799 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2800 tupletNumberFormatFunction.
2802 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2803 text through 'text callback.
2805 * lily/time-scaled-music-iterator.cc (construct_children): copy
2806 tweaks generated events.
2808 * scm/define-context-properties.scm
2809 (all-user-translation-properties): remove tupletNumberFormatFunction
2811 * lily/tuplet-engraver.cc (process_music): don't read
2812 tupletNumberFormatFunction
2814 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2817 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2819 * lily/global-context-scheme.cc: Separated ly:run-translator into
2822 * lily/score-engraver.cc, lily/score-performer.cc,
2823 scm/define-context-properties.scm: Make paper/midi output
2824 accessable as a context property.
2826 * lily/score-translator.cc, lily/score-context.cc: Removed.
2828 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2830 * scm/ps-to-png.scm (Module):
2831 * scm/framework-tex.scm (Module):
2832 * scm/framework-ps.scm (Module):
2833 * scm/backend-library.scm (Module):
2834 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2835 "dDEVICEHEIGHTPOINTS".
2837 2006-07-04 Graham Percival <gpermus@gmail.com>
2839 * Documentation/user/ various: general improvements to
2840 "working with lilypond files" section.
2842 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2844 * lily/sequential-iterator.cc: Change the default get_music_list
2845 to read elements-callback music property
2847 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2848 processing of multimeasure rests. Softcoded
2849 sequential-music-iterator.
2851 * lily/sequential-music-iterator.cc: Removed.
2853 2006-06-28 Graham Percival <gpermus@gmail.com>
2855 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2857 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2859 * lily/parser.yy: Wrap non-post-events in EventChords before
2860 assigning them to identifiers.
2862 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2864 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2865 gives correct vertical placement of \bar ":" in all staff
2866 sizes. Thanks Martial!
2868 2006-06-26 Graham Percival <gpermus@gmail.com>
2870 * Documentation/user/invoking.itely : minor update from mailist.
2872 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2874 * lily/ various: Introduce stream events of types Prepare,
2875 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2876 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2878 * lily/global-context*.cc: Time is now -inf before iteration
2881 * lily/include/context.hh: Removed unique_, init_
2883 * Documentation/topdocs/NEWS: Make the feathered beam example
2884 avoid triggering a bug.
2886 2006-06-24 Graham Percival <gpermus@gmail.com>
2888 * Documentation/user/ various: small additions from mailist.
2890 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2892 * ly/performer-init.ly: Add some missing links in the context
2893 hierarchy for MIDI output. There are probably some more missing!
2895 2006-06-21 Graham Percival <gpermus@gmail.com>
2897 * Documentation/user/ various: minor spelling fixes;
2898 thanks Dave Luttinen!
2900 * Documentation/user/ various: small clarifications;
2901 thanks Anthony Youngman!
2903 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2905 * po/fr.po: add \n appropriately.
2907 * lily/lexer.ll: remove ? from version-seen?
2909 2006-06-19 John Mandereau <john.mandereau@free.fr>
2911 * po/fr.po; update translation, by Jean-Charles Malahieude and
2914 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2916 * THANKS: add Markus Schneider.
2918 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2919 Staff_symbol_engraver
2921 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2922 replace staff_engraver
2924 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2927 * lily/staff-collecting-engraver.cc
2928 (acknowledge_end_staff_symbol): new function
2930 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2932 * lily/staff-collecting-engraver.cc
2933 (acknowledge_end_staff_symbol): new function.
2935 * lily/main.cc: switch on relocation by default.
2937 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2939 * lily/spacing-spanner.cc (musical_column_spacing): set
2940 compound_fixed_note_space to 0.0. Document why.
2942 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2943 range of inverse_hooke_
2944 (Simple_spacer): init completely.
2946 (get_line_configuration): don't use cols.resize(); it introduces
2949 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2951 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2953 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2954 try. Divide by beatlength.
2956 * input/regression/beaming-ternary-metrum.ly: update doc.
2957 add beatLength hack.
2959 * scm/music-functions.scm (make-time-signature-set): add
2960 standard-beat-grouping.
2962 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2964 * input/regression/tie-whole.ly: new file.
2966 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2967 cross center of note head in case of invisible stem.
2969 2006-06-16 Graham Percival <gpermus@gmail.com>
2971 * Documentation/user/ various: small fixes from mailist.
2973 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2975 * lily/breathing-sign.cc (offset_callback): idem.
2977 * lily/align-interface.cc (align_to_fixed_distance): remove
2980 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2983 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2985 * VERSION (PACKAGE_NAME): release 2.9.9
2987 * ly/lilypond-book-preamble.ly: add \version
2989 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2991 * scripts/lilypond-book.py (PREAMBLE_LY): include
2992 lilypond-book-preamble.ly
2994 * lily/stem.cc (get_beaming): return max of 0 and
2995 scm_ilength. Fixes slurring from/to beams.
2997 * ly/lilypond-book-preamble.ly: new file.
2999 * lily/slur.cc: add inspect-index feature.
3001 2006-06-13 Graham Percival <gpermus@gmail.com>
3003 * Documentation/user/tutorial.itely: trivial fix.
3005 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
3007 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
3008 all non-event music in the parser via MAKE_SYNTAX.
3010 * lily/parser-scheme.cc: Add ly:parser-error function
3012 * scm/paper.scm: fix typo
3014 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
3018 * lily/font-config.cc (init_fontconfig): add warning if cache_file
3021 * buildscripts/output-distance.py (test_compare_signatures):
3023 (read_signature_file): use new signature format.
3025 * scm/stencil.scm (write-system-signature): simpler signature
3028 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
3031 * lily/note-spacing.cc (stem_dir_correction): don't inspect
3032 stem_end_position, but estimate instead.
3034 * lily/tuplet-bracket.cc (calc_positions): look at
3035 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3036 brackets narrower than beams.
3038 * lily/lexer.ll: set version-seen? even if version is
3041 * lily/rest.cc (y_offset_callback): bugfix: decide position
3042 override based on scm_is_number(). Fixes \rest on center staff
3045 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3046 patterns for 16th triplets.
3048 2006-06-10 Graham Percival <gpermus@gmail.com>
3050 * Documentation/user/ page.itely, global.itely: editing
3053 * Documentation/user/ various: findex -> funindex.
3055 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3057 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3058 insert extra tuplet events.
3060 2006-06-10 Graham Percival <gpermus@gmail.com>
3062 * Documentation/user/programming-interfaces.itely: add
3065 * python/convertrules.py: add annotatefoo -> annotate-foo
3068 * Documentation/user/global.itely: start editing.
3070 * Documentation/user/page.itely: major editing, new spacing
3073 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3075 * scm/define-markup-commands.scm (wordwrap-markups): use
3076 output-def 'line-width if undefined.
3078 * HACKING: trim outdated info.
3080 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3082 * scm/define-grobs.scm (all-grob-descriptions): Add
3083 line-spanner-interface to all grobs that already have
3084 text-spanner-interface or dynamic-text-spanner-interface
3086 * scm/page.scm: Rename annotate{headers,systems,page}->
3089 * input/regression/page-spacing.ly,
3090 input/regression/page-layout-manual-position.ly: idem
3092 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3094 * lily/line-spanner.cc: cleanup property list.
3096 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3097 generator expressions (2.3 compat).
3099 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3101 * lily/vertical-align-engraver.cc: Make sure that the
3102 align{Above,Below}Context properties are included in the automatic
3105 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3107 * scm/paper-system.scm (paper-system-annotate): also annotate the
3108 estimated pure-Y-extent
3110 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3112 * lily/system.cc (break_into_pieces): set the estimated height
3113 of each child system
3115 * lily/stem.cc (pure_height): new pure-Y-extent callback
3117 * lily/staff-symbol-referencer.cc (callback): don't destroy
3118 the staff-position property
3120 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3121 consider_suicide into two functions
3123 * lily/constrained-breaking.cc (resize): use the new pure
3124 callbacks to estimate the height of a system
3126 * lily/axis-group-interface.cc (pure_group_height): new
3127 side-effect-free VerticalAxisGroup height-callback
3129 * lily/align-interface.cc (get_extents_aligned_translates):
3130 split align_elements_to_extents into two functions
3131 (get_pure_child_y_translation): new function
3133 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3135 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3137 * lily/paper-score.cc: cache break_indices and columns
3139 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3141 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3143 * lily/font-config.cc (init_fontconfig): do the init if
3144 cache_file, but don't look at cache_file.
3146 * input/regression/quote-tie.ly: new file.
3148 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3149 to Head_event_tuple, so we deal gracefully with ties on
3152 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3155 2006-06-08 Graham Percival <gpermus@gmail.com>
3157 * input/test/ smart-transpose.ly, reverse-music.ly:
3158 \applyMusic to music functions update, thanks Michael!
3160 2006-06-07 Graham Percival <gpermus@gmail.com>
3162 * input/test/ add-staccato.ly, add-text-script.ly,
3163 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3164 music functions update, thanks to Michael Meixner.
3166 * Documentation/user/music-glossary.tely: small fix
3169 * Documentation/user/ various: minor additions from mailist.
3171 * Documentation/user/lilypond.tely, basic-notation.itely:
3172 small test of @funindex. (works here)
3174 * input/test/font-table.ly: reduce size to partially
3175 de-ugly version in manual.
3177 * Documentation/user/page.itely: new file (split former
3178 "global issues" into "page settings" and "non-musical
3181 * Documentation/user/ various: fix @ref{}s to match
3182 new chapter names (above).
3184 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3186 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3188 2006-06-06 Graham Percival <gpermus@gmail.com>
3190 * Documentation/user/advanced-notation.itely: add example
3191 for segno/coda on barline.
3193 * tex/texinfo.tex: merge from upstream.
3195 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3197 * scripts/lilypond-book.py (process_snippets): Argument fix.
3200 * buildscripts/builder.py:
3203 * Documentation/user/SConscript: More SCons fixes.
3205 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3207 * lily/font-config.cc (init_fontconfig): Only initialize if
3208 global cache_file is found.
3210 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3212 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3215 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3217 * VERSION (PACKAGE_NAME): release 2.9.8
3219 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3220 function. Delay ledger modifying ledgered grobs to
3221 stop_translation_timestep(), to ensure that we're ledgering
3222 according to the new spanner.
3223 (acknowledge_staff_symbol): don't check for non-NULL
3224 staff_sym->get_bound()
3226 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3229 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3232 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3233 directly from srcdir/stepmake/aclocal.m4
3235 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3238 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3240 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3242 * lily/simple-spacer.cc (get_line_configuration): add
3243 keep-inside-line rods
3244 (struct Column_desc): add constructor
3245 (struct Rod_desc): add constructor
3246 (get_line_forces): check for forced page breaks here too
3248 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3249 support/elements cycles between InstrumentNames and AxisGroups
3251 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3253 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3255 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3256 make-txt-files target.
3258 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3259 make-txt-files target.
3261 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3263 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3266 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3268 * Documentation/user/instrument-notation.itely,
3269 input/regression/breathing-sign-ancient.ly,
3270 input/test/divisiones.ly: Removed redundant property settings for
3273 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3274 fix lyrics alignment problems. They are implemented now as scheme
3275 functions that add the appropriate unicode char to the first lyric
3276 event rather than adding a separate lyric event. Minor edit of
3279 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3281 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3282 pollute src dir with built .txt files, but install directly from
3283 Documentation/topdocs/out/
3285 * buildscripts/output-distance.py
3286 (ComparisonData.create_html_result_page): put version/directories
3289 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3292 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3293 Patch by Karl Hammar
3295 * buildscripts/readlink.py: add file.
3296 Patch by Karl Hammar
3298 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3300 * lily/tuplet-number.cc (print): prevent stencil from being
3303 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3305 * scm/stencil.scm (write-system-signature): explicitly
3306 -well, superfluously- close output port.
3308 * buildscripts/output-distance.py (main): oops. Add extra argument.
3310 2006-06-05 Graham Percival <gpermus@gmail.com>
3312 * Documentation/user/music-glossary.tely: clarified example
3313 from Francisco Vila, thanks!
3315 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3317 * input/regression/spacing-section.ly: new file.
3319 * lily/input.cc (programming_error): new function.
3321 * lily/spacing-engraver.cc (try_music): new function. Accept
3322 spacing-section-event
3324 * lily/spacing-spanner.cc (set_springs): take slices of all
3325 columns for spacing.
3327 * lily/include/paper-column.hh (class Paper_column): add
3328 Paper_column::compare.
3330 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3332 * scm/define-music-types.scm (music-descriptions): add
3335 * lily/music-iterator.cc (report_event): use programming_error for
3336 sending non-event error.
3338 * lily/input.cc (programming_error): new function
3340 * buildscripts/output-distance.py (main): use compare-XXX for
3342 (main): --threshold option, default at 0.30
3344 * output-distance.py (main): add --threshold option.
3346 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3348 * scm/paper-system.scm (paper-system-annotate): fix problem when
3349 annotating an empty system
3351 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3353 * GNUmakefile.in: reinstate old web tar/copying.
3355 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3357 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3358 nothing changes. (Erik S)
3360 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3363 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3365 * scm/define-markup-commands.scm (whiteout): do not force
3366 foreground color of argument markup to black.
3368 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3369 the left of the arrow, instead of below the arrow name, so that,
3370 when two little arrows are vertically stacked, their dimensions
3371 and name should not overlap. Add a color key parameter.
3373 * scm/paper-system.scm (paper-system-annotate): Annotate
3374 next-space+next-padding instead of next-space. Annotate space
3375 between next-padding and next-space+padding, respectively, and
3376 following system extent and refpoint-Y-extent. Use colors.
3378 * scm/page.scm (annotate-page): translate annotations slightly to
3381 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3383 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3384 fix for x-staff slurs. Thanks Joe!
3386 * buildscripts/output-distance.py
3387 (SystemLink.output_expression_change_count): keep track of changed
3388 details, and dump in details html page.
3390 * input/regression/figured-bass-staff.ly: add note about setting
3391 properties in Staff context.
3393 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3394 add slurs and ties to support too.
3396 * buildscripts/output-distance.py (main): set dest_dir
3397 argument. Add --max-count option.
3399 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3401 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3402 shortcuts for special unicode chars that are useful in chant
3403 notation. Revised exisiting and added new comments.
3405 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3407 * make/mutopia-rules.make: remove duplicate recipe.
3409 2006-06-02 Werner Lemberg <wl@gnu.org>
3411 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3412 Add support for U+0132 (IJ) and U+0133 (ij).
3414 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3416 * buildscripts/output-distance.py (FileLink): new class. collect
3417 info systems from one .ly file.
3418 (FileLink.link_files_for_html): further tweaks.
3420 2006-06-02 Graham Percival <gpermus@gmail.com>
3422 * tex/texinfo.tex: partial fix for @funindex.
3424 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3427 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3429 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3431 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3432 @example too. Backportme.
3434 2006-06-02 Graham Percival <gpermus@gmail.com>
3436 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3437 from Werner Lemberg.
3439 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3441 * Documentation/user/music-glossary.tely: additional spanish
3442 updates and a lyrics fix in an example.
3444 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3446 * scm/define-grob-properties.scm: Previous patch contained
3447 spurious line from another patch not yet committed. Fixed.
3449 * scm/define-grob-properties.scm: Add missing doc strings for
3452 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3454 * buildscripts/output-distance.py
3455 (ComparisonData.write_text_result_page): separate the scores, sort
3458 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3461 * buildscripts/output-distance.py (me_path): use argv[0] for
3463 (ComparisonData.img_cell): use colored borders.
3465 * scm/stencil.scm (write-system-signature): escape newlines too.
3466 (write-system-signature): use (1,-1) interval for empty interval
3468 2006-01-01 Graham Percival <gpermus@gmail.com>
3470 * Documentation/user/music-glossary.tely: Spanish updates
3471 from Francisco Vila.
3473 * Documentation/user/lilypond-book.itely: addition from
3476 * Documentation/user/ various: edits, small additions
3479 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3481 * GNUmakefile.in (tree-lib-prefix-current):
3482 (tree-share-prefix-current): Use version number in tree, add
3485 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3487 * GNUmakefile.in: write VERSION, again.
3489 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3490 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3492 * stepmake/aclocal.m4: robuster version detection.
3494 * buildscripts/output-distance.py
3495 (ComparisonData.create_html_result_page): copy only if file
3496 exists, fixup src paths.
3498 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3500 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3502 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3503 Another datarootdir reto.
3505 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3506 available. This should be moved to postinstall-lilypond-doc.
3508 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3510 * GNUmakefile.in: simplify local-WWW-post.
3511 remove -type l from find.
3513 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3514 fixes. Don't follow symlinks.
3515 (ComparisonData.create_html_result_page): remove previous results.
3516 insert ../python in path.
3518 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3520 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3522 * config.make.in (datadir): Add datarootdir to silence autoconf.
3524 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3526 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3528 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3530 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3531 slash beams too wide.
3533 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3535 * VERSION: release 2.9.7
3537 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3539 * lily/relocate.cc (read_relocation_dir): Do not blindly
3542 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3544 * lily/parser.yy: replace THIS by PARSER
3546 * Documentation/index.html.in: add link to test-results.html page.
3548 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3550 * scm/translation-functions.scm (format-bass-figure): translate
3551 digits over 10 to the left
3553 * scm/define-markup-commands.scm (translate-scaled): new markup.
3555 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3558 * ly/engraver-init.ly: add Figured_bass_engraver
3560 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3562 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3564 * lily/score-engraver.cc (announce_grob): only note START announces.
3566 * lily/include/engraver-group.hh (Translator_group):
3567 acknowledge_hash_table_ is now drul.
3569 * lily/engraver.cc (announce_end_grob): new method.
3571 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3573 * lily/translator-dispatch-list.cc (create): take start_end argument.
3575 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3576 acknowledge_static_array_ to drul
3578 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3580 * scm/define-grob-interfaces.scm
3581 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3583 * scm/define-grobs.scm (all-grob-descriptions): add
3584 BassFigureAlignmentPositioning
3586 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3587 number stays up to date. Backportme.
3589 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3591 * Documentation/user/basic-notation.itely (Bar lines): Document
3594 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3596 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3598 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3599 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3602 * Resurrect `scons lily' build.
3604 * SConstruct (symlink_tree): Bugfix: link
3605 music-drawing-routines.ps to file iso directory.
3607 * lily/SConscript: Remove kpath-guile from LIBS.
3609 * SConstruct (libdir_package_version): Typo.
3610 (configure): Comment-out fontforge for lack of fontforge.pc .
3611 Also add libdir* to environment.
3613 2006-05-30 Graham Percival <gpermus@gmail.com>
3615 * Documentation/user/ various: minor additions from mailist and
3618 2006-05-30 Paco <fravd@ya.com>
3620 * Documentation/user/music-glossary.tely: numerous corrections and
3621 some new translations.
3623 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3627 * buildscripts/output-distance.py
3628 (ComparisonData.create_html_result_page): new routine: summarise
3629 results in HTML page with images.
3630 (ComparisonData.create_text_result_page): create summary text files too.
3632 * GNUmakefile.in (web-ext): package .signature files too. They
3635 * scm/stencil.scm (write-system-signature): typo.
3637 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3639 * scm/stencil.scm (write-system-signature): better escaping.
3640 only write signature for music systems, not for markup systems.
3642 * scm/framework-ps.scm (output-framework): dump-signatures support
3645 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3647 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3648 for -dno-point-and-click
3650 * lily/grob.cc (get_print_stencil): don't read
3651 point_and_click_global to determine whether to set grob-cause.
3653 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3655 * buildscripts/output-distance.py (main): new function.
3656 (ComparisonData): new class.
3658 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3659 careful with generating new LedgerLineSpanners.
3661 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3663 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3664 context. This fixes double ledger lines in output.
3666 * lily/system.cc (get_paper_system): remove 3 layer limit.
3668 * buildscripts/output-distance.py (SystemLink.distance): new
3669 file. Compare signatures.
3671 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3673 * lily/grob-array.cc (remove_duplicates): rename from
3674 uniq(). Sort before calling uniq() so it actually works.
3676 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3678 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3679 \version from lilypond file snippet.
3680 (Lilypond_file_snippet.ly): oops. typo.
3681 (find_toplevel_snippets): urgh. again.
3683 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3684 prevent duplicated broken items in output.
3686 * scm/framework-eps.scm (output-classic-framework): only dump if
3687 dump-signatures is set.
3689 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3691 * scm/stencil.scm (write-system-signature): new routine: write
3692 python parseable signature of a separate paper system.
3695 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3697 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3701 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3703 * translator-group.cc: send music events to engravers in
3704 non-bottom contexts.
3706 * tuplet-engraver.cc: process tuplet brackets in correct order.
3708 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3710 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3711 arg 2 might point us to a new binary (patch by Karl Hammar)
3713 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3715 * VERSION (PACKAGE_NAME): release 2.9.6
3717 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3719 * Documentation/user/*.itely: 2nd
3720 attempt: replace funindex -> findex globally.
3722 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3724 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3725 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3727 * scm/define-music-display-methods.scm: display methods for
3728 breaks. Fix \applyOutput.
3730 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3732 * Documentation/user/macros.itexi: comment out funindex expansion.
3734 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3737 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3738 Karl Hammar. Backportme.
3740 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3742 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3744 * Documentation/user/programming-interface.itely (Running a
3745 function on all layout objects): idem.
3747 * Documentation/user/introduction.itely (Automated engraving):
3748 update \applyOutput syntax
3750 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3751 remove debugging hook.
3753 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3756 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3758 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3759 TEXI2DVI_FLAGS to texi2dvi invocation.
3761 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3763 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3764 works. More work is done by iterator now, and engraver has been
3765 very much simplified.
3767 * lily/translator-group.cc: try_music is now invoked through a
3770 * lily/*-iterator.cc: Massive cleanups. Junked
3771 try_music_in_children globally. Renamed try_music to report_event,
3772 and made that method descend to a bottom context automatically.
3774 * lily/event-iterator.cc: New file.
3776 * lily/output-property-iterator.cc,
3777 lily/old-lyric-combine-music-iterator.cc: Removed.
3779 * python/convert-rules.py: Modified the syntax for \applyOutput.
3781 2006-05-23 Graham Percival <gpermus@gmail.com>
3783 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3786 * Documentation/user/ various: stuff that might have helped
3787 to fix the pdf creation, plus some minor doc additions.
3789 * Documentation/user/changing-defaults.itely: remove @b from
3790 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3792 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3794 * lily/beaming-pattern.cc (beamify): deal with negative start
3795 moments for beaming patterns.
3797 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3799 * lily/beaming-info.cc (beamify): new function: read beatLength
3800 and beatGrouping from context.
3802 * input/regression/beam-beat-grouping.ly (Module): new file.
3804 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3806 * lily/beam.cc (get_beam_segments): generate events for
3807 max_connect_ case too.
3808 (get_beam_segments): read Stem::max-beam-connect.
3810 * input/regression/beam-single-stem.ly: new file.
3812 * lily/stem.cc (set_beaming): use #f as signaling value for
3815 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3817 * lily/beam.cc (set_beaming): read clip-edges property.
3818 (calc_direction): don't suicide for single stem.
3820 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3821 argument, remove 1<<15 hack. Remove clip_edges()
3823 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3825 2006-05-21 Graham Percival <gpermus@gmail.com>
3827 * Documentation/user/basic-notation.itely: reorg.
3829 * Documentation/user/ various: minor fixes.
3831 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3833 * lily/stencil-expression.cc (register_stencil_head): opps, append
3834 to cdr of static SCM object.
3836 2006-05-19 Graham Percival <gpermus@gmail.com>
3838 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3839 update framework for command index. DOC WRITERS: use @funindex
3840 instead of @cindex @code{}.
3842 * Documentation/user/ various: replace @cindex @code{} => @funindex
3844 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3846 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3847 case positions is set manually.
3849 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3851 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3854 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3856 * Documentation/user/changing-defaults.itely (Contexts explained):
3857 use absolute dimension for @image.
3859 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3860 out image for illustration too.
3861 ($(outdir)/%.png): add more png <-> eps rules.
3863 2006-05-17 Graham Percival <gpermus@gmail.com>
3865 * Documentation/user/ various: remove trailing whitespace, cosmetic
3866 change to reduce changes produced by diff.
3868 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3870 * lily/main.cc (do_chroot_jail): correctness tweak.
3872 * python/lilylib.py (system): import subprocess in system () only.
3874 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3876 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3877 variable. Backportme.
3879 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3881 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3883 2006-05-17 Werner Lemberg <wl@gnu.org>
3885 * lily/lexer.ll (init_signature_has_table): Add
3886 `scm-scm-music-music'.
3888 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3889 (Generic_prefix_music_scm): Add rule for it.
3891 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3892 `quoted-transposition' property.
3894 * ly/music-functions-init.ly (transposedCueDuring): New function.
3896 * scm/define-music-properties.scm (all-music-properties): Updated.
3898 * Documenation/topdocs/NEWS.itely: Document it.
3900 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3902 * python/lilylib.py (system): move import subprocess to system()
3905 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3907 * VERSION (PATCH_LEVEL): release 2.9.5
3909 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3912 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3914 2006-05-16 Graham Percival <gpermus@gmail.com>
3916 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3918 * Documentation/user/ various: minor fixes.
3920 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3922 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3924 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3926 * Documentation/user/advanced-notation.itely (Instrument names):
3927 Modified obsolete instruction on how to move instrument names away
3928 from the staves. Hmm, at second thought the bug probably has been
3929 solved, so the full bug description should probably be removed.
3931 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3933 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3934 currentCommandColumn.
3936 * lily/hairpin.cc (print): also add padding for non-neighbor
3939 * scm/define-context-properties.scm
3940 (all-user-translation-properties): add hairpinToBarline
3942 * input/regression/hairpin-to-barline.ly: new file.
3944 * lily/context.cc (internal_send_stream_event): thinko fix.
3946 * lily/tie.cc (set_default_control_points): robustness fix.
3948 * python/musicxml.py (Part.interpret): don't complain about
3949 incomplete measures.
3951 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3952 new music if last_event_chord() returned None.
3954 * python/musicxml.py (Part.interpret): skip back over chord notes.
3956 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3958 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3959 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3960 lily/slash-repeat-engraver.cc,
3961 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3962 iterator sends PercentEvents
3964 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3965 rework tuplets: send start/stop events to engraver
3967 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3968 dispatchers event-source and events-below to Context
3970 2006-05-15 Graham Percival <gpermus@gmail.com>
3972 * Documentation/user/README.txt: update info for doc writers.
3974 * Documentation/user/programming-interface.itely: integrate
3975 Nicolas' fixes for chapter rewrite.
3977 * Documentation/user/ various: minor fixes.
3979 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3981 * lily/clef-engraver.cc: cleanup.
3983 * Documentation/user/GNUmakefile: dist context-example.eps too.
3985 * lily/key-engraver.cc (create_key): use
3986 explicitKeySignatureVisibility for cancellation too.
3988 * lily/font-config.cc (init_fontconfig): don't close file if
3991 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3993 * Documentation/topdocs/NEWS.tely: niente and rotation news
3995 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3997 * lily/include/stencil.hh
3998 * lily/stencil.cc (rotate): new function. Makes it possible
3999 to rotate a stencil around a given offset.
4001 * lily/grob.cc (get_print_stencil): add rotation support
4003 * lily/stencil-interpret.cc (interpret_stencil_expression):
4004 add rotation support
4006 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
4008 * scm/define-grob-properties.scm: add 'rotation property
4010 * scm/define-markup-commands.scm: add rotate markup command
4012 * scm/output-ps.scm: add rotation support in PostScript backend
4014 * scm/output-svg.scm: add rotation support in SVG backend
4016 2006-05-13 Graham Percival <gpermus@gmail.com>
4018 * Documentation/user/music-glossary.itely: French correction.
4020 * Documentation/user/programming-interface.itely: major
4021 new docs, some reorg, some info from Nicolas.
4023 * Documentation/user/ various: small fixes.
4025 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
4027 * Documentation/user/programming-interface.itely (Markup
4028 programmer interface): Remove duplicate text.
4030 2006-05-12 Graham Percival <gpermus@gmail.com>
4032 * Documentation/user/context-example.eps: new file.
4034 * Documentation/user/changing-defaults.itely: set up file to
4037 * Documentation/user/programming-interface.itely: changes
4040 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
4042 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4044 2006-05-11 Graham Percival <gpermus@gmail.com>
4046 * Documentation/user/programming-interface.itely: first round of
4047 editing and merging emails from Nicolas.
4049 * Documentation/user/scheme-tutorial: minor edit.
4051 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4053 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4055 (Xml_node.message): use it.
4057 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4058 oops. Add duration argument.
4060 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4062 * lily/paper-column-engraver.cc (make_columns):
4063 * scm/define-grobs.scm: Revert my previous change and set the default
4064 in define-grobs.scm instead.
4066 2006-05-09 Graham Percival <gpermus@gmail.com>
4068 * Documentation/user/changing-defaults.itely: general editing,
4069 info about \set and \override.
4071 * Documentation/user/tweaking.itely, advanced-notation.itely:
4072 fixes from Dave Luttinen, thanks!
4074 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4076 * lily/paper-column-engraver.cc (make_columns): By default, a column
4077 needs to be breakable.
4079 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4081 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4083 (musicxml_time_to_lily): idem
4084 (musicxml_key_to_lily): idem
4085 (instrument_drumtype_dict): dict for supported drumtypes.
4086 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4087 moments and pending mm rests
4088 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4089 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4090 (musicxml_voice_to_lily_voice): add mode change.
4091 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4092 speed and less memory usage (factor 5 to 10).
4093 (convert): write -defs.ly and driver file separately so people
4094 can script their own part extraction.
4096 * python/musicxml.py (minidom_demarshal_node): new function:
4097 separate minidom handling.
4098 (lxml_demarshal_node): new function: support lxml.etree too.
4099 (Xml_node.message): new function: verbose error message, with XML
4100 path to offending node.
4101 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4102 (Part_list.generate_id_instrument_dict): new method: collect
4103 instrument names, to be able to set drum_type.
4104 (Part.interpret): handle underfull measures
4105 (Part.interpret): assign instrument names.
4107 * python/musicexp.py (Output_printer.close): new method
4108 (MusicWrapper.print_ly): new class: support other modes,
4110 (BarCheck.print_ly): new class. Support bar checks, with comments
4111 and fancy barchecks.
4112 (NoteEvent.__init__): also set drum_type for drum notes.
4113 (MultiMeasureRest.lisp_expression): dump mm rests.
4115 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4116 line-break-permission if forbidBreak is not set.
4118 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4120 * scm/define-context-properties.scm:
4121 * scm/define-grob-properties.scm:
4122 * scm/define-grobs.scm:
4123 * scm/define-music-display-methods.scm:
4124 * scm/define-music-properties.scm:
4125 * scm/define-music-types.scm:
4126 * scm/music-functions.scm:
4127 * ly/declarations-init.ly:
4128 * lily/include/constrained-breaking.hh:
4130 * lily/spaceable-grob.cc:
4131 * lily/simple-spacer.cc:
4132 * lily/paper-score.cc:
4133 * lily/paper-column.cc:
4134 * lily/paper-column-engraver.cc:
4136 * lily/gourlay-breaking.cc:
4137 * lily/constrained-breaking.cc:
4138 * python/convertrules.py:
4139 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4140 "page-break-penalty" and "line-break-permission".
4141 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4142 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4144 * lily/bar-engraver.cc:
4145 * lily/beam-engraver.cc:
4146 * lily/forbid-break-engraver.cc:
4147 * lily/ligature-engraver.cc:
4148 * lily/paper-column-engraver.cc:
4149 * lily/percent-repeat-engraver.cc:
4150 * lily/score-engraver.cc:
4151 * lily/score-engraver.hh:
4152 * lily/paper-column-engraver.hh:
4153 Inter-engraver communication regarding line breaks is done through context
4154 properties (Score.forbidBreak) instead of function calls.
4156 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4158 * VERSION (PACKAGE_NAME): release 2.9.4
4160 2006-05-08 Graham Percival <gpermus@gmail.com>
4162 * Documentation/user/working.itely: proofreading from Dave
4165 * Doucmentation/user/README.txt: updated with manual style info.
4167 * Documentation/user/ various: trim linewidth to 78 chars.
4169 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4171 * scm/define-grob-properties.scm (all-internal-grob-properties):
4172 remove chord-tremolo property.
4174 * lily/beam.cc (get_beam_segments): don't use stem position as
4175 base for broken ends.
4177 2006-05-06 Graham Percival <gpermus@gmail.com>
4179 * Documentation/user/putting.itely: proofreading from Dave
4182 * Documentation/user/ various: more reorg and clarifications.
4184 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4186 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4188 * ly/music-functions-init.ly: new function featherDurations
4190 * lily/beam.cc: read grow-direction for feathered beaming.
4192 * Documentation/topdocs/NEWS.tely (Top): typo.
4194 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4196 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4199 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4200 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4201 used by music streams.
4203 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4204 lily/stream-event.cc, lily/stream-event-scheme.cc,
4205 lily/listener.cc, lily/scheme-listener.cc,
4206 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4207 lily/include/stream-event.hh, lily/include/listener.hh,
4208 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4209 Created data structures for music streams.
4211 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4213 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4214 construction of a beam.
4217 * flower/include/std-vector.hh (default_compare): use only one comparison.
4219 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4220 (note-by-number): further attachment fixes.
4222 * scm/lily-library.scm (ordered-cons): new function.
4223 (interval-index): new function
4225 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4227 * lily/note-head.cc (get_stem_attachment): new function.
4229 * scm/define-markup-commands.scm (note-by-number): read 'style
4232 * input/regression/markup-note.ly: show note-head style option.
4234 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4237 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4239 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4241 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4243 * lily/include/constrained-breaking.hh: GCC 4 fix.
4245 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4247 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4248 Replace it with functions get_line_forces and get_line_configuration.
4249 (class Simple_spacer): Make data private.
4250 Rewrite compression algorithm to be faster and simpler.
4252 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4253 * lily/gourlay-breaking.cc (solve):
4254 * lily/constrained_breaking.cc (space_line):
4255 Change it to the new simple-spacer code.
4257 * lily/paper-score.cc (get_paper_systems):
4260 Delay breaking the systems until they are requested.
4261 (find_break_indices):
4262 Use vsize for indices.
4264 Move the "Calculating line breaks" message here.
4266 * lily/system.cc (pre_processing):
4267 Move the "Calculating line breaks" message away from here.
4268 (break_into_pieces):
4269 Allow multiple calls to this function in sequence (with touching-but-
4270 not-overlapping breakpoints).
4272 * lily/constrained-breaking.cc:
4273 Replace most of the get_XXXX functions with get_line_details.
4274 Only calculate the force for each line. Calculate configurations only
4275 for the lines we will actually use.
4276 Replace cols_ with lines_.
4278 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4280 * mf/GNUmakefile (depth): remove FC_FIND.
4282 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4284 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4286 * scm/framework-ps.scm (write-preamble): new function.
4287 (write-preamble): load mac fonts via fondu, even if gs-font-load
4290 2006-05-03 Werner Lemberg <wl@gnu.org>
4292 * mf/GNUmakefile (FC_FIND): Fix typo.
4294 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4296 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4298 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4300 * stepmake/aclocal.m4: run python-config for crosscompiling
4303 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4304 -f png for HTML, TEXINFO formats.
4306 * input/tutorial/lbook-html-test.html: new file.
4308 * lily/include/tie-formatting-problem.hh (class
4309 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4310 [column, direction]. This fixes laissez vibrer ties.
4312 * flower/include/tuple.hh (struct Tuple2): new file.
4314 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4315 $(FCMATCH), only if $(NCSB_DIR) not set.
4317 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4319 * config.make.in (DOCUMENTATION): set FCMATCH.
4321 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4323 2006-05-03 Graham Percival <gpermus@gmail.com>
4325 * Documentation/user/ various: final round of reorg.
4327 * Documentation/user/instrument-notation.itely: some more
4328 fixes from Eduardo, thanks!
4330 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4332 * VERSION (PACKAGE_NAME): release 2.9.3
4334 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4336 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4338 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4340 * scm/define-grob-properties.scm (all-user-grob-properties):
4341 Correct typo, thanks to Eduardo.
4343 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4345 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4347 * buildscripts/lilypond-words.py (F): indent fix.
4349 * input/regression/tie-arpeggio-collision.ly: new file.
4351 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4352 function: store outlines per column rank.
4354 * lily/include/tie-configuration.hh (class Tie_configuration): add
4355 column_ranks_ to specification and configuration, to distinguish
4356 between ties for different heads in arpegiated chords.
4358 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4360 * *.py: more 4 space indents.
4362 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4364 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4366 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4368 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4370 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4372 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4374 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4376 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4378 * python/convertrules.py (conv): indent 4 for python files.
4380 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4382 * Documentation/user/changing-defaults.itely (Creating contexts):
4383 Clarify \new semantics.
4385 2006-04-28 Graham Percival <gpermus@gmail.com>
4387 * Documentation/user/ various: major new sections in the
4388 Learning manual, slight reorg elsewhere.
4390 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4392 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4394 * scm/framework-ps.scm (output-framework): remove PageMedia
4396 2006-04-27 Graham Percival <gpermus@gmail.com>
4398 * Documentation/user/ tweaks.itely, working.itely: new
4399 files, being more advanced "learning manual" chapters.
4401 * Documentation/user/ tutorial, putting, lilypond: reorg.
4403 2006-04-26 Graham Percival <gpermus@gmail.com>
4405 * input/regression/lyric-combine-polyphonic.ly: fixed test
4406 (no more "can't find context `one'" error).
4408 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4410 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4412 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4414 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4416 * lily/relocate.cc (read_relocation_dir): new function.
4418 2006-04-26 Graham Percival <gpermus@gmail.com>
4420 * Documentation/user/instrument-notation.itely: a few more fixes
4421 from Eduardo, thanks!
4423 * Documentation/user/README.txt: new file; contains info on
4424 style that used to be in lilypond.tely.
4426 * Documentation/user/ various: first round of doc reorg.
4428 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4429 graphic; this probably causes problems on some pdf
4430 viewers, notably Adobe Acrobat.
4432 2006-04-24 Graham Percival <gpermus@gmail.com>
4434 * Documentation/user/instrument-notation.itely: many alterations
4435 to Vocal music, from Eduardo Viera.
4437 2006-04-23 Graham Percival <gpermus@gmail.com>
4439 * Documentation/user/instrument-notation.itely: fix \new
4440 instead of \context problem.
4442 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4444 * lily/relocate.cc (expand_environment_variables): new function.
4446 (read_relocation_file): id.
4448 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4450 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4452 * ly/engraver-init.ly: remove old comments from TabVoice
4454 2006-04-20 Graham Percival <gpermus@gmail.com>
4456 * Documentation/user/instrument-notation.itely: added Erlend's
4457 latest doc patch, thanks!
4459 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4461 * lily/include/slur.hh:
4463 * lily/phrasing-slur-engraver.cc:
4464 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4465 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4466 Slur_engraver:: and putting it in
4467 Slur::auxiliary_acknowledge_extra_object ().
4469 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4471 * lily/note-collision.cc: fix a comment
4473 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4475 * stepmake/bin/add-html-footer.py: fix footer position in
4476 generated html files: before </body> and </html> tags.
4478 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4480 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4481 Earlier successive `make' commands finally compiled ok.
4483 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4485 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4487 * lily/include/stem-tremolo.hh:
4488 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4492 * lily/include/lookup.hh: add rotated_box ()
4494 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4496 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4497 been generated. Fixes "can't get `--help'" bug after make clean.
4499 * THANKS: alphabetize contributors.
4501 2006-04-17 Graham Percival <gpermus@gmail.com>
4503 * Documentation/user/instrument-notation.itely: added Erlend's
4504 tabs and banjo doc patch. Thanks!
4506 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4508 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4510 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4512 * scm/output-lib.scm: add some more predefined string tunings.
4514 * Documentation/user/instrument-notation.itely: and doc them.
4516 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4518 * ly/engraver.ly: Remove obsolete comments.
4520 * ly/gregorian-init.ly: Define default layout block.
4522 * input/puer-fragment.ly: Updated and extended.
4524 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4526 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4527 pdf conversion behaviour.
4529 * flower/file-name.cc (dir_name)
4530 (get_working_directory): Move from relocate.cc.
4532 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4534 * lily/relocate.cc: Encapsulate sys/stat.h in
4537 2006-04-14 Graham Percival <gpermus@gmail.com>
4539 * Documentation/user/ various: small updates from Cameron
4540 and Juergen, thanks!
4542 * Documentation/user/ various: small updates of my own.
4544 * THANKS: 2.7 -> 2.8.
4546 2006-04-11 Graham Percival <gpermus@gmail.com>
4548 * scm/define-context-properties.scm: typo.
4550 * Documentation/user/ : many more small updates.
4552 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4554 * scm/define-music-types.scm: disposed "docme".
4556 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4558 * lily/hairpin.cc: make niente circles a bit smaller.
4560 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4562 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4563 get-pfa and get-*-fonts targets.
4565 2006-04-10 Graham Percival <gpermus@gmail.com>
4567 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4568 music-glossary, programming-interface: more minor fixes
4571 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4573 * scm/define-context-properties.scm: another old \property update.
4574 This time tested for compiling!
4576 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4578 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4580 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4582 * scm/define-context-properties.scm (all-user-translation-properties):
4583 * Documentation/user/global.itely (Page formatting): Compile fix.
4585 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4587 * Documentation/user/advanced-notation.itely (Polymetric
4588 notation): Update the example to use the "+" symbol and add link
4589 to input/test/compound-time.ly.
4591 2006-04-08 Graham Percival <gpermus@gmail.com>
4593 * scm/define-grob-properties.scm: clarify docs for #'direction.
4595 * scm/define-context-properties.scm: update old \property override.
4597 * Documentation/user/ advanced-notation, global, lilypond-book:
4598 more minor doc updates.
4600 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4602 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4604 * scm/backend-library.scm (search-gs): oops.
4606 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4608 * scripts/lilypond-book.py (output): use base, not filename for href.
4610 * scm/backend-library.scm: only look for gs.
4612 * scripts/lilypond-book.py (output): fix printfilename.
4614 * lily/parser.yy (music_function_musicless_prefix): fold together
4615 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4617 * lily/slur.cc (print): only set font-size if not set yet.
4619 * lily/slur-configuration.cc (add_score): improved layout of debug
4622 2006-04-05 David Feuer <David.Feuer@gmail.com>
4624 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4625 (draw_circle): Hopefully fixed regression.
4626 Improved documentation for several procedures.
4628 2006-03-04 Werner Lemberg <wl@gnu.org>
4630 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4632 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4634 * scripts/musicxml2ly.py (bindir): add dynamic
4637 2006-04-04 Graham Percival <gpermus@gmail.com>
4639 * Documentation/user/ basic-notation, advanced-notation, putting,
4640 instrument-notation, invoking, lilypond, THANKS: another ream of small
4641 fixes from the Doc Helpers.
4643 2006-04-03 David Feuer <David.Feuer@gmail.com>
4645 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4647 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4649 * Cleaned up interfaces between PostScript and Scheme, and moved
4650 computations from PostScript to Scheme:
4652 * music-drawing-routines.ps
4653 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4654 with stroke_and_fill throughout.
4655 (euclidean_length, print_letter, draw_box): Deleted unused
4656 procedures. If someone needs draw_box, implement it using
4657 draw_round_box; don't duplicate code.
4658 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4659 Refactored/cleaned up interfaces.
4662 * output-ps.scm: reordered arguments to PostScript functions to
4663 match new interfaces
4664 (glyph-string): Rewrote glyph-string.
4665 (grob-cause): Replaced string-append with format.
4666 (repeat-slash): Rewrote to do computation here.
4667 (round-filled-box): Rewrote to do computation here.
4669 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4671 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4673 * stepmake/stepmake/toplevel- targets.make: print help info about
4676 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4678 * input/regression/hairpin-circled.ly: new file
4680 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4682 * lily/hairpin.cc (print): add support for circled tip
4684 * scm/define-grob-properties.scm: add circled-tip parameter
4686 * scm/define-grobs.scm: init circled-tip to false
4688 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4690 * scm/music-functions.scm (quote-substitute): set
4693 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4695 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4698 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4700 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4702 2006-03-31 David Feuer <david.feuer@gmail.com>
4704 * scm/framework-ps.scm:
4706 * scm/output-ps.scm: glyph-string now produces smaller, more
4707 readable, and probably faster PostScript. Several findfont
4708 scalefont setfont instances changed to selectfont
4709 Hacked-up string-appends changed to formats.
4711 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4713 2006-03-30 Graham Percival <gpermus@gmail.com>
4715 * scm/lily-library.scm: make "no version" warning message more polite.
4717 * lily/music.cc: add double quotes to failed octave check.
4719 * Documentation/user/ advanced-notation, changing-defaults,
4720 instrument-notation, invoking, music-glossary: whole bunch of minor
4723 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4725 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4726 $(buildscriptdir) iso. depth.
4728 * VERSION (PACKAGE_NAME): release 2.9.1
4730 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4732 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4734 * VERSION (PATCH_LEVEL): bump version number.
4736 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4739 * lily/pango-font.cc (pango_item_string_stencil): use
4742 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4743 $(outdir)/emmentaler-%.svg): remove canary.
4745 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4746 glyphnames if we have a ttf font.
4748 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4750 * Documentation/user/advanced-notation.itely (Font selection):
4751 Corrected reference to the font-family-override.ly example.
4753 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4755 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4756 stem-tremolo object in the stem (or else the stem might not be
4759 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4761 * lily/ttf.cc (print_trailer): only print existing glyphs.
4763 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4765 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4766 position the tremolo based on the position of the notehead.
4768 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4769 notes and update the texidoc line with the new positioning rules.
4771 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4773 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4775 * scripts/lilypond-book.py (Module): set default for linewidth if
4778 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4780 * VERSION (PACKAGE_NAME): release 2.9.0.
4782 * input/regression/stem-tremolo-position.ly: new file.
4784 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4786 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4788 * lily/stem-tremolo.cc (print): position
4789 the tremolo depending only on the end of the stem
4790 and not on the notehead
4791 (raw_stencil): center, on the middle staff line, the
4792 flag that is closest to the end of the stem (previously
4794 (calc_width): add this callback to shorten a tremolo when
4795 it is beamed or it is stemup with a flag
4796 (style): add this callback to make a tremolo rectangular when
4797 it is beamed or it is stemup with a flag
4798 (rotated_box): this is like Lookup::beam but makes a rotated
4799 rectangle instead of a parallelogram
4801 * lily/stem.cc (calc_stem_info): make sure the stem
4802 is long enough to fit the tremolo
4803 (calc-length): reduce the length of tremolo stems since the
4804 tremolo code is now capable of better positioning
4806 * scm/define-grobs.scm: make calc_width the default beam-width
4807 callback for stem-tremolo and add the style callback
4809 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4811 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4814 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4816 * lily/ttf.cc (make_index_to_charcode_map): restore old
4819 2006-03-28 Werner Lemberg <wl@gnu.org>
4821 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4823 2006-03-28 Graham Percival <gpermus@gmail.com>
4825 * THANKS: update for 2.9, add section for Documentation helpers.
4827 * Documentation/topdocs/NEWS.tely: compile fix.
4829 * Documentation/user/ basic-notation, global, advanced-notation,
4830 examples.itely: minor fixes from mailist.
4832 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4834 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4837 * lily/ttf.cc (print_trailer): use it.
4839 * lily/pango-font.cc (get_unicode_name): new function.
4841 * lily/ttf.cc (make_index_to_charcode_map): move function from
4843 (print_trailer): substitute uniXXXX name if applicable.
4845 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4846 (pango_item_string_stencil): use it to generate uniXXXX names.
4848 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4849 note heads, for uniform widths in shape note output.
4850 (overdone_heads): hmm. remove them again.
4852 * scripts/lilypond-book.py (output): add links to filenames.
4854 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4856 * lily/note-collision.cc (get_clash_groups): only consider when
4857 Note_column::dir <> CENTER.
4859 * scripts/lilypond-book.py (get_option_parser): init output_name
4862 2006-03-24 Graham Percival <gpermus@gmail.com>
4864 * Documentation/topdocs/NEWS.tely: add @end itemize
4866 * Documentation/user/ global, advanced-notation: minor
4869 2006-03-23 Graham Percival <gpermus@gmail.com>
4871 * Documentation/user/ lilypond.tely, music-glossary,
4872 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4874 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4876 * mf/GNUmakefile: don't install .enc files.
4878 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4880 * VERSION (PATCH_LEVEL): bump to 2.9.0
4882 2006-03-22 Graham Percival <gpermus@gmail.com>
4884 * Documentation/user/advanced-notation.itely: minor fixes
4887 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4889 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4891 * branch lilypond_2_8
4893 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4895 * scripts/lilypond-book.py (samefile): new function, for windoze
4898 2006-03-21 Graham Percival <gpermus@gmail.com>
4900 * ly/engraver-init.ly: add info about StaffGroup.
4902 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4904 * input/regression/stem-direction-context.ly: idem.
4906 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4910 * input/regression/page-layout-twopass.ly: comment out \markup so
4913 * lily/instrument-name-engraver.cc (finalize): add to instrument
4914 name global System. This also fixes chopped instrument names, but
4915 doesn't crash when there are slurs/beams.
4917 * lily/slur-configuration.cc (add_score): disallow negative slur
4920 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4922 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4924 * lily/instrument-name-engraver.cc (process_music): kludge: add
4925 InstrumentName spanner to axis group of left bound. Fixes chopped
4926 off instrument names in EPS images.
4928 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4930 * scripts/abc2ly.py (option_parser): update to 2.7.40
4932 2006-03-20 Graham Percival <gpermus@gmail.com>
4934 * THANKS: move small doc contributors to SUGGESTIONS.
4936 * Documentation/user/ basic-notation, advanced-notation,
4937 global: small changes from mailist.
4939 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4941 * Documentation/user/advanced-notation.itely (Text marks): update
4942 for new rehearsalMarkAlignSymbol convention.
4944 * VERSION (PATCH_LEVEL): bump version.
4946 * input/test/instrument-name-align.ly: new file.
4948 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4950 * input/test/instrument-name-align.ly: new file. Document how to
4951 align instrument names.
4953 * lily/mark-engraver.cc: remove properties.
4955 * scm/define-context-properties.scm
4956 (all-user-translation-properties): remove align symbol properties
4957 for barnumber/reh. mark.
4959 * lily/break-align-interface.cc (self_align_callback): new
4960 interface, new function. Look at complete alignment. This handles
4961 tunable break alignments in case break-align-symbols are missing.
4963 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4965 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4967 * python/convertrules.py (conv): mark/bar number alignment rule.
4969 * lily/break-align-interface.cc (calc_positioning_done): also
4970 store offset from last visible break-alignment to its
4971 neighbor. This makes alignment on non-visible objects more reliable.
4973 * po/lilypond.pot (Module): ran po-replace.
4975 * input/regression/tie-single-manual.ly (Module): new file.
4977 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4978 look at has_manual_position_.
4979 (from_ties): set has_manual_position_ if tie has staff-position set.
4981 * lily/tuplet-bracket.cc (calc_positions): idem.
4983 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4986 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4988 * scm/define-markup-commands.scm (smallCaps): new markup command
4989 for turning a text to small caps using smaller font size and upper
4992 2006-03-17 Graham Percival <gpermus@gmail.com>
4994 * Documentation/user/ examples, instrument-notation,
4995 advnaced-notation: minor fixes from mailist.
4997 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4999 * Documentation/user/tutorial.itely (First steps): change example
5002 2006-03-17 Graham Percival <gpermus@gmail.com>
5004 * Documentation/user/ examples, advanced: minor changes from mailist.
5006 * THANKS: add Geoff Horton, for documentation stuff.
5008 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5010 * python/lilylib.py (system): revert have_select kludge.
5012 * Documentation/user/tutorial.itely (Commenting input files):
5013 update version numbers in doc.
5015 * scm/define-grob-interfaces.scm (multi-measure-interface): add
5016 bound-padding to multi-measure-interface
5018 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5020 * input/test/engraver-example.ily: update version number.
5022 * VERSION (PACKAGE_NAME): release 2.7.39
5024 * lily/note-spacing.cc (get_spacing): heighten threshold where
5025 accidentals/arpeggios influence previous spacing fully.
5027 * lily/rest.cc (y_offset_callback): only use direction if
5028 staff-position wasn't set before.
5030 * lily/bar-number-engraver.cc: add support for
5031 barNumberAlignSymbol.
5032 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
5034 * lily/pointer-group-interface.cc (set_ordered): new function.
5035 (add_unordered_grob): new function.
5037 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5038 to ordered, unless the opposite has been proved. This fixes
5039 random reordering of large object groups across linebreaks,
5042 * lily/main.cc (do_chroot_jail): printf format fix.
5044 * lily/tie-formatting-problem.cc (generate_configuration):
5045 multiply y-shift for dot with direction.
5047 * scm/define-markup-commands.scm (note-by-number): put (magstep
5048 size) in y-attach too.
5050 * Documentation/topdocs/NEWS.tely (Top): show override.
5052 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5053 direction for stems.
5055 2006-03-15 Graham Percival <gpermus@gmail.com>
5057 * Documentation/user/ changing-defaults, global: minor
5060 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5062 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5064 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5065 breakable items after uniformly stretched notes.
5067 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5068 outline with outer edge of note heads. This prevents infinity
5069 problems with tied whole notes.
5071 * scripts/lilypond-book.py (do_file): use os.popen
5073 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5075 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5077 * Documentation/user/invoking.itely: Add ragged-right to bug report
5080 2006-03-14 Graham Percival <gpermus@gmail.com>
5082 * Documentation/user/global.itely: small fix from mailist.
5084 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5086 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5087 file descriptor returned by tempfile.mkstemp() when writing
5088 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5091 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5093 * po/fi.po: newline bugfix.
5095 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5097 * scm/paper.scm (paper-alist): Rounding fixes.
5099 2006-03-13 Graham Percival <gpermus@gmail.com>
5101 * Documentation/user/ changing-defaults, instrument-notation,
5102 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5104 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5108 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5110 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5113 * python/lilylib.py (print_environment): move ps_page_count to
5116 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5118 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5120 * scm/framework-ps.scm (embed-document): new function. Use to
5123 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5125 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5127 * Documentation/user/instrument-notation.itely (Setting simple
5128 songs): Added \book{...} around the full example, so the separate
5129 markups are included in the printed example.
5131 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5133 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5136 * python/lilylib.py (system): rewrite system() using
5137 subprocess. Remove >& redirection trickery.
5139 2006-03-11 Graham Percival <gpermus@gmail.com>
5141 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5142 notation-appendices.itely: minor fixes from mailist.
5144 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5146 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5147 unsplit man also needs images.
5149 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5151 * VERSION (PACKAGE_NAME): 2.7.38 released.
5153 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5155 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5158 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5160 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5161 respects the Score.skipTypesetting property.
5163 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5165 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5166 Prolog. No %%EOF after CFF file.
5168 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5170 * lily/constrained-breaking.cc (get_max_systems): used to return a
5172 (combine_demerits): use pointers to reduce copying data
5173 (calc_subproblem): idem
5174 (get_page_penalty): add page turn penalties
5176 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5178 * Documentation/user/invoking.itely (Invoking lilypond): better
5179 explanation of -e usage.
5181 * lily/main.cc (main_with_guile): don't append to
5182 init_scheme_code_string
5184 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5186 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5188 * scripts/convert-ly.py (do_options): don't print help for
5191 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5192 @code and @example. Update from texinfo.tex from CVS.
5194 2006-03-08 Graham Percival <gpermus@gmail.com>
5196 * Documentation/user/scheme-tutorial.itely: clarifies distances
5197 measured in staff-spaces.
5199 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5201 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5202 consider[k] is true.
5204 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5206 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5207 consider columns that have originals. Unifies spacing for mm
5208 rests around line breaks.
5210 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5211 (set_text_rods): idem.
5212 (calculate_spacing_rods): new function: share code between
5213 set_text_rods and set_spacing_rods.
5214 (set_text_rods): take extents of bounds into account.
5216 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5218 * Documentation/user/basic-notation.itely (Writing music in
5219 parallel): don't use relative.
5221 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5223 * ly/music-functions-init.ly (Module): add shiftDurations
5225 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5227 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5229 * ly/engraver-init.ly: init vocalName to nil.
5231 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5233 * scm/music-functions.scm (music->make-music): bugfix,
5234 KeyChangeEvents are now handled correctly.
5236 * scripts/lilypond-book.py: Add --debug option.
5238 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5240 * python/lilylib.py: add tempfile.
5242 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5244 * VERSION (PACKAGE_NAME): release 2.7.37
5246 * python/lilylib.py (ps_page_count): remove make_ps_images().
5247 (ps_page_count): remove mkdir_p
5248 (system): remove cleanup_temp.
5249 (exit): remove lilypond_version_(check)
5250 (error_log): remove pseudo_filter_p
5255 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5258 * lily/accidental-engraver.cc (make_standard_accidental): only add
5259 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5261 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5262 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5263 Make incompatibilities.
5265 * scm/output-ps.scm (grob-cause): replace backslashes by /
5266 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5268 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5270 * cygwin/GNUmakefile: Install fixes.
5272 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5274 * lily/note-head.cc (head::get_balltype): Compile fix.
5276 * flower/file-name.cc (dos_to_posix): Flower string fix.
5278 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5280 * python/lilylib.py: pychecker cleanups.
5282 * scripts/lilypond-book.py
5283 (Lilypond_snippet.output_print_filename): pychecker cleanups
5285 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5287 * python/lilylib.py (underscore): remove identify() , warranty()
5289 * ps/music-drawing-routines.ps: change Border routine for GSView
5292 * lily/stem.cc (height): use quantize-positions. This triggers
5293 set_stem_lengths, so scripts on beamed stems are handled correctly.
5295 * lily/side-position-interface.cc (aligned_side): check if edges
5296 of script are inside staff. Fixes accent of edge of the staff.
5298 * input/regression/staccato-pos.ly: more examples.
5300 * stepmake/aclocal.m4 (depth): fix bashism.
5302 * lily/lyric-combine-music-iterator.cc: move from
5303 new-lyric-combine-iterator.cc
5304 (process): add pending_grace_lyric_ member to delay lyrics on
5307 * lily/system-start-text.cc (print): suicide if we don't have any
5308 elements. Fixes hara kiri'd instrument names.
5310 * scripts/mup2ly.py (Module): remove.
5312 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5314 * Documentation/user/global.itely (A single music expression):
5315 close @lilypond properly
5317 * lily/volta-bracket.cc (modify_edge_height): change from
5318 after_line_breaking_callback. Suicide last bracket if appropriate.
5320 * python/lilylib.py: strip getopt support
5322 * scripts/etf2ly.py (do_options): use optparse
5324 * scripts/midi2ly.py: optparse, strip lilylib copy.
5326 * scripts/abc2ly.py (voices): use optparse.
5328 * stepmake/stepmake/generic-vars.make: new function absdir.
5330 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5332 * scripts/lilypond-book.py (find_file): use global_options for
5335 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5338 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5340 * python/lilylib.py (get_global_option): ughness for extracting
5341 global options from lilylib.
5342 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5344 * scripts/lilypond-book.py (get_option_parser): use optparse for
5345 option handling. Put options in global_options variable.
5347 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5349 * Documentation/index.html.in: clarify.
5351 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5353 * scm/layout-page-layout.scm (write-page-breaks): add a
5354 music-system-heights property to the page layout output.
5356 * scm/page.scm (make-page-stencil): take footer into account when
5357 computing the 'space-left page property
5358 (annotate-space-left): take footer into account when annonating
5361 2006-02-28 Graham Percival <gpermus@gmail.com>
5363 * Documentation/user/ advanced-notation, global: more (final)
5364 docs for music expressions, removed special fermatas.
5366 2006-02-27 Graham Percival <gpermus@gmail.com>
5368 * Documentation/user/ basic-notation, global: minor changes
5371 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5373 * scm/framework-ps.scm:
5374 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5375 layer for inf? and nan? from framework-ps to lily-library.
5377 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5379 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5380 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5382 * buildscripts/substitute-encoding.py (Module): remove file.
5384 * mf/GNUmakefile: more PFA strippage.
5386 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5388 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5391 * scm/framework-ps.scm: remove font name munging.
5393 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5395 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5397 * scm/markup.scm (define-markup-command): change
5398 def-markup-command to define-markup-command
5400 * scm/music-functions.scm (define-music-function): change
5401 def-music-function to define-music-function.
5403 * python/convertrules.py (conv): rules for def-music-function
5404 and def-markup-commands
5406 * Documentation/user/programming-interface.itely,
5407 input/no-notation/display-lily-tests.ly,
5408 input/regression/lily-in-scheme.ly,
5409 input/regression/markup-user.ly,
5410 input/regression/music-function.ly, input/regression/tie-chord.ly,
5411 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5412 ly/gregorian-init.ly: use new macro names (define-music-function,
5413 define-markup-command).
5415 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5417 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5418 (output): add comments to lp-book latex output.
5420 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5423 2006-02-23 Graham Percival <gpermus@gmail.com>
5425 * Documentation/user/ tutorial, global: minor changes.
5427 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5429 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5430 blocks (for make 3.80)
5432 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5433 \notemode so that user should not have to explicitely type it.
5435 * scm/define-music-display-methods.scm: various
5436 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5439 * input/no-notation/display-lily-tests.ly: new tests for
5440 \applyOutput and \applyContext
5442 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5444 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5445 changed it slightly so that the number of systems returned by
5446 solve () will be the same as the last value passed to resize
5447 (). I've also added more documentation, removed casts, fixed style
5448 problems and put in some recovery if constraints aren't satisfied."
5450 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5452 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5453 for emacs < 22 compatibility.
5454 (count-rexp): Use it.
5455 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5456 substring juggling (Milan Zamazal).
5458 2006-02-23 Graham Percival <gpermus@gmail.com>
5460 * Documentation/user/ basic-notation, advanced-notation,
5461 global.itely, invoking.itely, tutorial,itely:
5462 minor fixes from mailist.
5464 * scm/define-markup-commands.scm: improve docs of \filled-box.
5466 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5468 * Documentation/index.html.in: changes concern the previous release.
5470 * input/regression/+.ly: cultivate typographical terminology.
5472 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5474 * scm/define-grob-interfaces.scm (parentheses-interface): add
5475 padding to parentheses-interface.
5477 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5478 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5480 * VERSION (PATCH_LEVEL): release 2.7.36
5482 * lily/slur.cc: add avoid-slur (ugh.)
5484 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5485 intersection gets smaller. This fixes slurs over extreme points.
5487 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5488 stems with neutral-direction set.
5490 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5492 * lily/open-type-font.cc (load_table): format error.
5494 * lily/change-iterator.cc (process): format fix.
5496 * flower/include/international.hh (_f): idem.
5498 * flower/include/std-string.hh: add format printf attribute.
5500 * scm/define-grobs.scm (all-grob-descriptions): height of all
5501 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5503 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5506 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5508 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5510 * input/regression/: upgraded syntax for some files.
5512 * THANKS: Add bughunters.
5514 2006-02-22 Graham Percival <gpermus@gmail.com>
5516 * Documentation/user/ invoking.itely, advanced-notation.itely,
5517 global.itely: long-awaited "let's make chapter 10 not suck"
5518 update. Rearrange chapter 10; now called "global issues",
5519 addresses file structure, etc. Some info from other files
5520 moved into global.itely.
5522 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5524 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5525 catch trill-span-event notes.
5527 * Documentation/user/examples.itely (Ancient notation templates): typo.
5530 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5532 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5534 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5536 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5538 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5539 froum Laissez_vibrer_engraver.
5541 * ly/declarations-init.ly (repeatTie): add \repeatTie
5543 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5545 * scm/define-grob-properties.scm (all-user-grob-properties): add
5546 head-direction property.
5548 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5549 from_lv_ties. Take head direction argument.
5551 * lily/semi-tie-column.cc: rename from
5552 laissez-vibrer-tie-column.cc. Rename class too.
5554 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5557 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5559 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5561 (find_breaks): idem.
5563 2006-02-21 Graham Percival <gpermus@gmail.com>
5565 * Documentation/user/advanced-notation.itely: fixed make-moment]
5568 * Documentation/user/basic-notation.itely: more clarification to
5571 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5573 * lily/include/constrained-breaking.hh (class
5574 Constrained_breaking): new file.
5576 * lily/constrained-breaking.cc (resize): new file.
5578 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5580 * Documentation/user/advanced-notation.itely (Clusters): insert
5583 * lily/tie-column.cc (calc_positioning_done): support for
5586 * lily/tie-formatting-problem.cc
5587 (generate_extremal_tie_variations): factor out.
5588 (score_ties_configuration): annotate all tie
5589 (print_ties_configuration): new routine.
5590 (generate_configuration): nudge extremal ties outside of the head
5592 (score_ties_configuration): oops. convert to staff-space before
5593 determining position symmetry.
5595 2006-02-20 Graham Percival <gpermus@gmail.com>
5597 * Documentation/user/*-notation.itely: misc minor editing,
5598 shifting doc sections around.
5600 * Documentation/user/*-notation-itely, global.itely,
5601 changing-defaults.itely: added new stuff from NEWS.
5603 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5607 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5609 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5610 lilypond --verbose for lp-book.
5612 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5613 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5615 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5616 $(buildscript-dir) iso. absolute depth.
5618 * buildscripts/genicon.py (dir): thinko.
5620 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5622 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5624 * scm/output-lib.scm: swap darkcyan/darkyellow
5626 * THANKS: Add bughunters.
5628 2006-02-19 Graham Percival <gpermus@gmail.com>
5630 * Documentation/user/programming-interfaces.itely: fixed example.
5632 * Documentation/user/instrument-notation.itely: fix @{ @}.
5634 * scm/script.scm: add avoid-slur for \open.
5636 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * lily/tie-formatting-problem.cc (score_configuration): use
5639 sliding score for min-length.
5641 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5642 spaghetti for icons.
5644 * buildscripts/genicon.py (program_name): new file.
5646 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5648 (generate_configuration): for small ties, also look for collisions
5649 at Y + DIR*h + DELTA_Y.
5650 (get_variations): consider variation for dot positions too.
5652 * lily/side-position-interface.cc (aligned_side): take abs for
5653 quantized rounded position. Fixes tenuto below staff.
5655 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5656 markers when necessary.
5658 * lily/program-option.cc (internal_set_option): add
5659 strict_infinity_checking option.
5661 * scm/output-lib.scm (cyan): swap yellow and cyan.
5663 2006-02-19 Graham Percival <gpermus@gmail.com>
5665 * darwin.patch: trivial linenumber update.
5667 * Documentation/user/ {various}: `\context foo = named' changed
5668 to `\new foo = "name"' in docs.
5670 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5672 * scm/stencil.scm (annotate-y-interval): use it.
5674 * scm/lily-library.scm (interval-sane?): new function.
5676 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5679 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5682 * flower/include/std-vector.hh (iterof): add iterof macro.
5684 * lily/enclosing-bracket.cc (width): new function.
5686 * lily/align-interface.cc (align_elements_to_extents): reinstate
5689 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5691 * Documentation/index.html.in: fix spelling: thankyous.
5693 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5695 * lily/lyric-hyphen.cc: typo.
5697 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5699 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5700 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5703 * VERSION: release 2.7.35
5705 * lily/beam.cc (get_default_dir): oops. Take abs () for
5707 (get_default_dir): use extreme position criterion only in absence
5708 of forced stem directions.
5710 * VERSION (PATCH_LEVEL): bump VERSION.
5712 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5713 dependencies. Necessary for -jX builds.
5715 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5717 * lily/relocate.cc (setup_paths): Yet another const fix.
5719 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5721 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5723 * lily/relocate.cc (setup_paths): oops.
5725 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5727 * Documentation/index.html.in: order links: html before PDF.
5729 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5731 * lily/tie-column-format.cc (Module): remove.
5733 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5735 * lily/text-spanner.cc (print): idem.
5737 * lily/dynamic-text-spanner.cc (print): only print line if longer
5740 * lily/auto-change-iterator.cc (change_to): formatting.
5742 * lily/beam.cc (get_default_dir): take extreme note head as input
5745 * lily/tie.cc (get_default_dir): only look directions for visible
5748 * lily/side-position-interface.cc (aligned_side): oops. Don't
5749 mutiply with direction. This fixes quantized (staccato, tenuto)
5750 scripts below notes.
5752 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5753 direction. Fixes c-lyrics-center-align.ly
5755 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5757 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5760 * lily/std-string.cc:
5761 * lily/include/std-vector.hh (split_string): Move and rename from
5762 lily/include/misc.hh, lily/misc.cc. Update callers.
5764 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5766 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5768 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5770 * flower/test-file.cc: New file.
5772 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5775 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5777 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5779 * flower/include/file-storage.hh: remove file.
5781 * lily/include/midi-item.hh (class Midi_track): idem.
5783 * lily/include/source.hh (class Sources): idem.
5785 * lily/include/performance.hh (class Performance): use vector
5788 * flower/include/cons.hh (class Cons): remove file.
5790 * flower/include/flower-proto.hh: remove template cruft.
5792 * lily/include/font-metric.hh: use size_t not vsize for indices.
5794 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5797 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5799 * lily/include/paper-book.hh (class Paper_book):
5800 make get_system_specs() public.
5802 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5803 the force=10000 case if we don't have a current-best.
5805 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5808 * flower/include/flower-proto.hh: remove outdated templates.
5810 * scm/page.scm: use annotate-spacing
5812 2006-02-15 Graham Percival <gpermus@gmail.com>
5814 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5816 * THANKS: moved Erlend Aasland to contributors.
5818 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5820 * config.hh.in: remove HAVE_PANGO_16
5822 * lily/tuplet-bracket.cc (calc_positions): multiply with
5823 staff-space for beam case. This fixes tuplets+beams on scaled
5826 * config.hh.in: remove all Kpathsea related defines.
5828 * lily/dot-column.cc (side_position): reach stem via dots->
5829 head->stem. Inspect all stems for dot collisions.
5831 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5834 * lily/bar-number-engraver.cc (process_music): document function
5837 * lily/score.cc (default_rendering): add pscore, not systems
5840 * lily/paper-book.cc (get_system_specs): separate generation of
5843 * flower/include/std-vector.hh: don't include config.hh
5845 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5847 * flower/include/std-vector.hh: Better wrapper compatibility with
5850 * flower/include/flower-proto.hh: Remove cheap forward declaration
5853 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5855 2006-02-14 Graham Percival <gpermus@gmail.com>
5857 * Documentation/user/invoking.itely: add warning about command line.
5859 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5861 * lily/include/lily-proto.hh: add Prob, rm Page.
5863 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5865 * VERSION: release 2.7.34
5867 * lily/relocate.cc (framework_relocation): show canary if
5868 GHOSTSCRIPT_VERSION undefined.
5870 * GNUmakefile.in: remove $(VERSION) symlink.
5872 * lily/relocate.cc (setup_paths): add +
5874 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5876 * Documentation/index.html.in: specify sizes for all big HTML pages.
5878 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5880 * config.hh.in: remove @FRAMEWORKDIR@
5882 * lily/system-start-text.cc (get_stencil): new file: separate out
5883 system-start-delimiter text support.
5885 * input/**ly: replace \context with \new where appropriate.
5889 * lily/slur-scoring.cc (get_base_attachments): use
5890 robust_relative_extent. This fixes problems with empty paper-columns.
5892 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5894 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5896 * scm/define-music-properties.scm (all-music-properties):
5897 create-new property.
5899 * lily/context-specced-music-iterator.cc (construct_children):
5900 inspect 'create-new property iso. magical $uniqueContextId context
5903 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5905 * lily/context-key-manager.cc (Module): new file. Encapsulate
5906 object key generation.
5908 * lily/include/context-key-manager.hh (Module): new file.
5910 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5912 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5915 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5917 (reloc_b): excise --enable-framework-dir
5919 * lily/relocate.cc (framework_relocation): use getenv
5920 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5922 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5924 * flower/include/std-string.hh:
5925 * flower/include/std-vector.hh: Finish std:: conversion; move
5926 flower extensions from std:: namespace. Update users.
5928 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5929 their expansion to vector<*>. Update users.
5931 2006-02-10 Graham Percival <gpermus@gmail.com>
5933 * Documentation/user/invoking.itely: add example to File structure.
5935 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5936 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5938 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5940 * ly/paper-defaults.ly: typo.
5942 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5943 set_parent() for parentheses. This will make it show up in bbox
5946 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5947 ly:grob-common* functions.
5949 * lily/grob-scheme.cc (LY_DEFINE):
5950 ly:grob-common-refpoint-of-array: new function
5951 ly:grob-common-refpoint: new function
5952 ly:grob-relative-coordinate: new function
5954 * lily/instrument-name-engraver.cc (process_music): use
5955 Text_interface::is_markup(). This fixes \markup on instrument names.
5957 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5960 * lily/slur.cc (print): idem.
5962 * lily/tie.cc: add line-thickness for ties.
5964 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5966 * scm/output-svg.scm: Document diversion from GNU coding standards
5967 as a workaround for a bug in Microsoft Internet Explorer.
5969 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5971 * lily/instrument-name-engraver.cc (process_music): use
5972 is_markup() iso. is_string()
5974 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5976 * lily/percent-repeat-engraver.cc (process_music): only look at
5977 main_part_ for % repeats.
5979 * lily/stem-tremolo.cc (get_beam_translation): new function.
5980 (calc_slope): new function.
5981 (height): don't use real slope.
5983 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5985 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5986 new connect-to-neighbor, control-points and staff-padding
5987 properties to make ligature brackets showing up again.
5989 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5991 * VERSION: release 2.7.33
5993 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5996 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5997 remove applyOutput example.
5998 (Objects connected to the input): document \tweak, \parenthesize
6000 * lily/relocate.cc (prefix_relocation): allow "current"
6001 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
6002 changing VERSION in a lily tree less painful.
6004 * input/regression/parenthesize.ly: new file.
6006 * scm/output-lib.scm (parenthesize-element): new function.
6008 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
6010 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
6012 * lily/accidental-engraver.cc (make_standard_accidental): reroute
6013 cause: accidentals are caused by note heads, not note events.
6015 2006-02-08 Graham Percival <gpermus@gmail.com>
6017 * darwin.patch: small patch from Erlend, thanks!
6019 * Documentation/user/basic-notation.itely: add stem-neutral example.
6021 * Documentation/user/putting.itely: clarifications.
6023 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6025 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
6026 note, add more guidelines to what should go into NEWS.
6028 * input/sakura-sakura.ly: document how to override font.
6030 * input/regression/font-family-override.ly: doc -dshow-available-fonts
6032 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6034 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6036 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
6038 * scripts/convert-ly.py (lilypond_version_re_str): Move from
6039 convertrules. Add explicit grouping, needed for python2.2.
6041 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
6043 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6045 2006-02-07 Graham Percival <gpermus@gmail.com>
6047 * Documentation/user/global.itely: fix line-width in (text) docs.
6049 * Documentation/user/lilypond-book.itely: same.
6051 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6053 * VERSION (PACKAGE_NAME): release 2.7.32
6055 * Documentation/topdocs/NEWS.tely (Top): document new variable
6058 * flower/include/array.icc (Message): remove file.
6060 * flower/include/std-vector.hh: make sure vsize and VPOS are
6061 defined for binary_search_bounds().
6063 * flower/std-string.cc (std): add to_string(long unsigned).
6065 * configure.in (gui_b): excise std_string option.
6066 (gui_b): excise std_vector option.
6068 * flower/string.cc (Module): excise flower array & string
6070 * flower/include/std-string.hh: excise flower string.
6072 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6074 * python/convertrules.py (lilypond_version_re_str): require
6075 only numbers and dots in \version string.
6077 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6079 * lily/system-start-delimiter.cc (print): allow style = text too.
6081 * lily/system-start-delimiter-engraver.cc
6082 (acknowledge_system_start_text): new function, also add add to
6083 support of system-start-text (instrument names). This fixes
6084 instrument names on piano staves.
6086 * lily/instrument-name-engraver.cc: rewrite. Use
6087 system-start-delimiter approach. This save memory and cpu.
6089 * scm/define-grobs.scm (all-grob-descriptions): remove
6090 instrument-name from break-alignment.
6092 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6094 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6096 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6099 * configure.in (std_vector): On by default.
6101 * lily/include/font-metric.hh:
6102 * lily/include/tfm-reader.hh:
6103 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6106 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6108 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6110 * VERSION (PACKAGE_NAME): 2.7.31
6112 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6113 EPS edge at 0, but take minimum with left-overshoot. This fixes
6114 cut off system start delims.
6116 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6117 hack: add to axis group if not added yet. This fixes hara kiri'd
6120 * lily/hara-kiri-group-spanner.cc
6121 (force_hara_kiri_in_y_parent_callback): fix signatures.
6123 * lily/hairpin.cc (print): check next hairpin to see whether or
6124 not to be continuing.
6126 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6128 * Remove trailing whitespace from makefiles.
6130 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6133 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6135 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6137 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6139 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6141 * configure.in: Use it.
6143 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6145 * scm/music-functions.scm (pitch-of-note): new function.
6147 * ly/music-functions-init.ly: add \octave and \addquote
6149 * lily/parser.yy (music_function_chord_body): softcode \octave.
6150 (lilypond_header): softcode \addquote
6152 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6154 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6155 array.hh, parray.hh at all. Getting ready to flip the
6158 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6160 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6163 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6165 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6167 * flower/include/array.hh: typo.
6169 2006-02-02 Graham Percival <gpermus@gmail.com>
6171 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6173 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6175 * flower/include/pqueue.hh: Derive from std::vector.
6177 * flower/include/parray.hh: Conform to std::vector interface.
6180 2006-02-02 Graham Percival <gpermus@gmail.com>
6182 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6184 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6186 * flower/file-path.cc (is_file): remove if 0 section.
6188 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6189 selecting afii61352.
6191 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6193 * flower/include/std-vector.hh (boundary): Oops, reverse.
6195 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6196 remove superfluous `d'.
6198 * flower/include/std-vector.hh (boundary, top): Detach from class.
6199 Remove empty vector shell.
6201 * flower/include/array.hh (reverse, swap): Detach from class.
6204 * flower/include/std-vector.hh
6205 * flower/include/array.hh (concat): Globally change to insert ().
6207 * flower/include/std-vector.hh
6208 * flower/include/parray.hh
6209 * flower/include/array.hh (elem, elem_ref): Globally replace by
6212 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6214 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6216 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6217 anticipate on identifier substitutions.
6219 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6221 * flower/include/std-vector.hh (insert): Remove, replace by
6222 std::vector interface. Update callers.
6224 * flower/include/array.icc (insert): Change signature to
6225 match std::vector interface.
6227 * flower/include/array.icc (vector_sort): Bugfix.
6229 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6231 * lily/parser.yy (output_def_head_with_mode_switch): new
6232 production. Result: dashes and underscores may be used in the
6235 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6237 * python/convertrules.py (conv): oops. One slash too much.
6239 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6241 * flower/include/std-vector.hh (sort): Remove, replace by
6242 ::vector_sort. Update callers.
6244 * flower/include/std-vector.hh (slice): Remove. Update callers.
6247 * flower/test-std.cc (vector_sort): New test.
6249 2006-02-01 Graham Percival <gpermus@gmail.com>
6251 * Documentation/user/putting.itely: fixes from Erik.
6253 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6255 * flower/test-std.cc: Add simple unit test for vector migration.
6257 * stepmake/stepmake/test*: Unit test support.
6259 * flower/include/std-vector.hh (del): Remove. Use erase (),
6262 * flower/include/array.hh (begin, end): Add.
6265 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6267 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6268 std::string not String.
6270 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6273 * lily/prob.cc (Prob): copy type_ too.
6275 * lily/lily-guile.cc (mangle_cxx_identifier): new
6276 function. Class_bla::foo_bar_[px] ->
6277 ly:class-bla::foo-bar[?!]. Changes throughout
6279 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6281 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6283 * lily/beam.cc (calc_direction): take dir from visible stem in
6286 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6288 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6289 Fix -1, >=0 boundary checks for unsigned vsize.
6291 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6292 loop for unsigned vsize.
6294 * configure.in (--enable-std-vector): New option.
6295 (--enable-std-string): On by default.
6297 * flower/include/std-vector.hh: New file. Enable switch to
6298 std::vector, update client code.
6300 2006-01-30 Graham Percival <gpermus@gmail.com>
6302 * scm/document-translation.scm: clarify "this context is also
6303 known as". Thanks, Werner!
6305 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6307 * Documentation/user/invoking.itely: small fix from Don.
6309 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6311 * scm/lily.scm (define-scheme-options): rename option
6312 preview-include-book-title to book-title-preview
6313 (define-scheme-options): move force-eps-font-include (from paper
6314 block) to eps-font-include -d option.
6316 * VERSION (PATCH_LEVEL): release 2.7.30
6318 * input/bach-schenker.ly (staffPiano): new file.
6320 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6322 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6325 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6327 * ps/lilyponddefs.ps: remove start-system, stop-system,
6328 start-page fluff. This saves putting { } code on the stack, fixing
6329 stack overflows when including EPS files.
6331 2006-01-29 Graham Percival <gpermus@gmail.com>
6333 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6335 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6337 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6339 2006-01-28 Graham Percival <gpermus@gmail.com>
6341 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6343 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6345 * input/mutopia/claop.py: Update.
6347 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6349 * input/regression/completion-heads.ly (texidoc): fix.
6351 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6353 * lily/tie-formatting-problem.cc
6354 (set_ties_config_standard_directions): use abs iso fabs for ints.
6356 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6358 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6359 little less than noteheight, to prevent overlaps in chords.
6361 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6362 head, and fudge stem-attachment.
6364 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6366 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6368 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6370 * lily/main.cc (main): Debugging aid: catch exceptions.
6372 * flower/std-string.cc (to_string): Robustification. Fixes midi
6373 output with std::string.
6375 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6377 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6379 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6381 * Fix -DSTRING_UTILS_INLINED.
6383 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6385 * VERSION (PATCH_LEVEL): release 2.7.29
6387 * lily/relocate.cc (setup_paths): mingw uses std string too.
6389 * lily/*.cc: various fixes for substr(ARG).
6391 * lily/sustain-pedal.cc (print):
6393 * flower/file-name.cc (slashify): use std strings.
6395 * flower/string-convert.cc: remove publib.h
6397 * scm/define-markup-commands.scm (verbatim-file): new markup
6398 command \verbatim-file
6400 * Documentation/topdocs/NEWS.tely: fixup URLs
6402 * input/regression/alignment-vertical-manual-setting.ly (Module):
6405 * lily/align-interface.cc (align_elements_to_extents): overwrite
6406 translations with numbers in alignment-offsets from left bound
6408 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6409 (page-translate-systems): new function: take into account Y-offset.
6411 * Documentation/topdocs/NEWS.tely (Top): document new features.
6413 * input/regression/page-layout-manual-position.ly (Module): new
6416 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6418 * flower/file-path.cc (path::parse_path): Oops.
6420 * Finish std::string interface. For now, use std:: marker
6421 throughout for easy s/r.
6423 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6425 * Documentation/user/putting.itely (Score is a single musical
6427 (Score is a single musical expression): more typos.
6429 * scm/page.scm (annotate-space-left): thinko.
6430 (annotate-page): more thinkos.
6432 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6434 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6435 for different \score blocks separately.
6436 (post-process-pages): put write-page-layout into paper block.
6438 * lily/output-def.cc (get_parser): new file.
6440 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6443 * lily/include/output-def.hh (class Output_def): add parser_ member.
6445 * input/regression/page-layout-twopass.ly (Module): new file.
6447 * scm/lily.scm: remove cpp hack.
6449 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6451 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6453 * GNUmakefile.in (c-clean): New target.
6455 * flower/include/std-string.hh: String/std::string compatibility:
6456 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6459 * flower/rational.cc:
6460 * flower/include/rational.hh:
6463 * flower/include/offset.hh:
6465 * flower/interval.cc:
6466 * flower/include/interval.hh:
6468 * flower/string-convert.cc:
6469 * flower/include/string-convert.hh: Use std::string [interface].
6472 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6474 * Documentation/index.html.in: clean up.
6476 2006-01-25 Graham Percival <gpermus@gmail.com>
6478 * Documentation/user/putting.itely: another new untested doc section.
6480 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6482 * scm/layout-page-layout.scm (write-page-breaks): write
6483 \spacingTweaks #ALIST. Handle grace timing.
6485 * scm/: more imports.
6487 * scm/page.scm (make-page): add footer/header.
6488 (annotate-space-left): revise: only take page argument.
6489 (layout->page-init): new function.
6491 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6492 version of the system/spacing/linebreak hack writing to the output
6494 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6497 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6500 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6502 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6504 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6506 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6507 handling to page.scm
6509 * lily/prob-scheme.cc (LY_DEFINE): new file.
6510 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6512 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6515 * lily/music.cc (derived_mark): derive Music from Prob.
6517 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6519 * lily/prob.cc (Module): Implement Prob (Property Object), object
6520 with shared and r/w property alists.
6522 * lily/include/prob.hh (Module): new file. Declare Prob.
6524 * flower/string.cc: remove is_empty().
6526 * flower/include/string.hh (class String): remove String:: qualifier.
6528 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6529 substitute appropriate functions.
6531 * flower/include/string.hh (class String): remove to_str0 and
6532 is_empty(). S&R everywhere.
6534 2006-01-23 Graham Percival <gpermus@gmail.com>
6536 * Documentation/user/basic-notation.itely: add hairpin
6537 after-linebreak tweak to commonprop.
6539 * Documentation/user/putting.itely: added two new sections.
6541 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6543 * flower/international.cc:
6544 * flower/include/international.hh:
6546 * flower/getopt-long.cc:
6547 * flower/include/getopt-long.hh: Use std::string [interface].
6550 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6552 * stepmake/stepmake/executable-rules.make: Add dependency on
6555 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6557 * flower/file-path.cc:
6558 * flower/include/file-path.hh: Use std::string [interface].
6561 * flower/direction.cc:
6562 * flower/axis.cc: Unused. Remove.
6564 * configure.in (--enable-std-string): New option.
6566 * flower/std-string.cc:
6567 * flower/include/std-string.hh: New file.
6569 * flower/file-name.cc[STD_STRING]:
6570 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6572 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6574 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6576 * scm/define-markup-commands.scm (with-dimensions):
6577 with-dimensions markup command.
6579 * input/test/font-table.ly: use it.
6581 * lily/open-type-font.cc (glyph_list): new function.
6583 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6585 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6587 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6589 * ly/music-functions-init.ly (parallelMusic): new music function
6590 for parallel music entry.
6592 * scm/define-music-properties.scm (all-music-properties): new
6593 'void music property
6595 * scm/music-functions.scm (ly:music-message): make public, to be
6596 used in music function definitions
6598 * scm/lily-library.scm (collect-music-for-book): discard music
6599 when the 'void property is set.
6601 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6603 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6605 * mf/GNUmakefile: idem.
6607 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6609 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6611 * Documentation/user/notation-appendices.itely (The Feta font):
6614 * input/test/font-table.ly: new file. Generate font table within lily.
6616 * Documentation/user/notation-appendices.itely (The Feta font):
6617 use new font-table.ly file.
6619 * stepmake/stepmake/install-out-targets.make
6620 (local-install-outfiles): only create directory if
6621 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6623 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6625 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6627 * VERSION (PACKAGE_NAME): release 2.7.28
6629 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6630 the right font from a Mac dfont.
6631 (write-preamble): don't forget directory, only look at files.
6633 This fixes problems with TTF files in dfonts that don't match
6634 their PostScript names.
6636 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6637 PS name from TTF font.
6639 * input/regression/tie-manual.ly: document new feature.
6641 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6643 * VERSION (MY_PATCH_LEVEL): bump to .28
6645 * Documentation/user/basic-notation.itely (Ties): add tie examples
6648 * lily/tie-formatting-problem.cc (score_ties_configuration):
6649 symmetry penalties for outer ties.
6651 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6653 * lily/tie-formatting-problem.cc (generate_configuration)
6654 (set_manual_tie_configuration): skip non-pair manual
6655 tie-configuration, so you can set individual ties as
6657 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6659 * input/regression/tie-chord.ly: use generateTiePattern to
6662 * lily/tie-formatting-problem.cc (peak_around): new function.
6663 (score_configuration): use sliding criterion for staff line collisions.
6664 (score_configuration): idem for dot collisions.
6665 (generate_configuration): use separate stem_gap for gap to stem.
6667 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6668 separate penalty factors for x and y distance.
6669 (struct Tie_details): separate penalties for tip and center line collisions.
6671 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6673 * lily/tie-formatting-problem.cc (generate_configuration): make
6674 large ties avoid stafflines in the horizontal section.
6675 (score_configuration): use softcoded penalties
6676 (score_aptitude): idem.
6678 * lily/tie-helper.cc (from_grob): softcode tie details
6680 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6682 * lily/staff-symbol-referencer.cc (on_line): rename from
6685 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6687 * ly/music-functions-init.ly: remove duplicate tag.
6689 * lily/include/*.hh: GCC 4.1 fixes.
6691 006-01-16 Erlend Aasland <erlenda@gmail.com>
6693 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6695 * scm/define-music-types.scm: fix bug in desc. string
6696 for OverrideProperty
6698 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6700 * scripts/lilypond-book.py: bugfix
6702 * scm/define-music-types.scm: fix typos.
6704 2006-01-14 Graham Percival <gpermus@gmail.com>
6706 * Documentation/user/ basic-notation.itely, global.itely,
6707 advanced-notation.itely, instrument-notation.itely: small
6708 additions (bugs and commonly tweaked properties).
6710 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6712 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6713 detection of mingw build.
6714 (MINGW_BUILD): opps.
6716 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6718 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6721 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6723 * scm/music-functions.scm (skip->rest): add skip->rest
6725 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6727 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6730 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6731 config dirs. Aids debugging.
6732 (display_config): also display config files.
6734 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6736 * VERSION: release 2.7.27
6738 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6739 for determining bar size.
6741 * lily/staff-symbol.cc (print): place lines at distance line-positions
6743 * scm/define-grob-properties.scm (all-user-grob-properties): add
6746 * lily/staff-symbol.cc (height): new function.
6748 * input/regression/staff-line-positions.ly: new file.
6750 2006-01-06 Graham Percival <gpermus@gmail.com>
6752 * input/test/add-staccato.ly: remove reference to old file.
6754 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6756 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6757 lilypond binary too.
6759 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6761 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6763 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6765 * scripts/midi2ly.py: Bugfix: Declare datadir.
6767 * make/ly-rules.make:
6768 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6769 that seems to be gone). Fixes make web.
6771 * The grand 2005-2006 replace.
6773 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6775 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6777 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6778 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6779 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6780 like -dgs-font-load.
6782 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6783 remove absolute path to lilypond binary.
6785 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6787 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6789 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6791 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6793 * mf/GNUmakefile: remove broken dvips map symlink.
6795 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6798 * configure.in: Cosmetic fixes.
6800 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6802 * Documentation/user/music-glossary.tely (Pitch names): Added
6803 Spanish pitch names and durations, thanks to Ernesto Gancedo
6805 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6807 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6808 init. Fixes verbose printing of .scm files.
6810 * stepmake/aclocal.m4: add spaces before - options.
6812 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6814 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6815 of path search in local block variable.
6817 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6819 * configure.in (NCSB_DIR): --enable-ncsb-dir
6820 (LINK_GXX_STATICALLY): denko.
6822 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6824 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6825 use locate to find c059033l.pfb.
6827 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6829 * lily/tie-formatting-problem.cc
6830 (problem::generate_base_chord_configuration): Use my_round (was
6833 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6834 do not invoke mbrtowc.
6836 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6838 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6840 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6842 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6844 * Documentation/user/invoking.itely (svg): revise.
6846 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6848 * lily/lexer.ll: use sourcefilename iso. renameinput.
6850 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6852 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6853 <PostScriptName>.ttf instead of c059XXXttf.
6855 * lily/program-option.cc (LY_DEFINE): special support for
6856 --verbose, so it works before option init too.
6858 * mf/GNUmakefile (local-install): oops.
6860 * lily/lyric-hyphen.cc (print): oops.
6862 * buildscripts/pfx2ttf.fontforge: new file.
6864 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6865 ($(outdir)/%.ttf): new rule.
6867 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6870 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6873 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6875 * VERSION: release 2.7.26
6877 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6879 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6881 * lily/font-config.cc (init_fontconfig): verbosity.
6883 * THANKS: add Muziekacademie Lede.
6885 * scripts/musicxml2ly.py (print_voice_definitions): new function
6886 (print_score_setup): new function
6887 (convert): read part definition to output staves properly.
6889 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6892 * python/musicexp.py (Output_printer.__init__): use _ in data
6894 (Output_printer.unformatted_output): new function: no formatting,
6896 (Duration.get_length): remove isinstance() checks for
6897 Output_printer everywhere.
6899 * input/regression/lyrics-bar.ly (texidoc): add
6900 Separating_line_group_engraver.
6902 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6904 * lily/relocate.cc (framework_relocation): New function,
6905 factored from set_relocation ().
6906 (prefix_relocation): Rename from set_relocation ().
6907 (setup_paths): Use it.
6909 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6911 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6912 numbers. Patch by Erlend Aasland.
6914 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6916 * lily/font-config.cc (init_fontconfig): print warning if cache
6917 file is not existant.
6919 * lily/main.cc: don't use #ifdef but #if
6921 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6923 * lily/grob-property.cc (internal_set_property): don't abort on
6924 calculation-in-progress.
6926 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6928 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6929 connect-to-neighbor property not connect-to-other
6931 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6932 (LY_DEFINE): oops. don't forget protection.
6934 * flower/parse-afm.cc (Module): strip AFM handling completely.
6936 * lily/stencil-expression.cc: idem.
6938 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6940 * lily/function-documentation.cc (ly_add_function_documentation):
6941 use static member iso. Protected_scm
6943 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6945 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6947 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6949 * lily/relocate.cc (set_env_dir): New function.
6950 (set_relocation): Use it to fix setting PANGO_PREFIX.
6952 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6954 * input/regression/stem-direction-context.ly: remove rest.
6956 * lily/melody-engraver.cc (process_music): restart for bar lines.
6957 (acknowledge_slur): restart for slurs.
6959 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6961 * Documentation/user/invoking.itely: describe how to view SVG
6962 output using Inkscape which replace embedded fonts with OTF fonts.
6964 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6966 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6968 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6970 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6973 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6975 * VERSION (PACKAGE_NAME): release 2.7.25
6977 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6979 * input/regression/stem-direction-context.ly: new file.
6981 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6983 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6986 * ly/engraver-init.ly: add Melody_engraver
6988 * lily/beam.cc (calc_direction): use default-direction
6989 iso. get_default_direction()
6991 * scm/define-grob-properties.scm (all-user-grob-properties): add
6992 default-direction property.
6994 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6996 * lily/stem.cc (calc_default_direction): remove
6997 Stem::get_default_direction, use default-direction with callback
7000 * lily/melody-spanner.cc (calc_neutral_stem_direction):
7002 * lily/melody-engraver.cc: new file. Acknowledge stems for
7003 interpolated stem directions.
7005 * lily/melody-spanner.cc: new file. Interpolate stem directions.
7007 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
7009 * lily/slur-configuration.cc (fit_factor): more robust check for
7010 point in curve X-extent.
7012 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
7013 (outside_slur_callback): check for 'outside avoidance.
7015 * lily/slur-configuration.cc (score_extra_encompass): don't use
7016 bound->column() == avoid->column() for checking extents, as this
7017 doesn't work for accidentals.
7019 * lily/slur-engraver.cc (acknowledge_extra_object): remove
7020 DynamicText hardcoding.
7022 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
7023 crash if bound stem is NULL
7025 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
7028 2005-12-22 Graham Percival <gpermus@gmail.com>
7030 * scm/define-markup-commands.scm: typo. @code{\raise}
7033 * darwin.patch: now used again, includes a
7034 required patch from fink.
7036 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
7038 * po/TODO: mention gtranslator along with kbabel.
7039 * po/fi.po: update translations.
7041 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7043 * lily/relocate.cc (setup_paths): Bugfix.
7045 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7047 * lily/slur-configuration.cc (score_extra_encompass): don't use
7048 "avoid" choice for avoid-slur.
7050 * stepmake/bin/install.py (dest): don't create existing dir.
7052 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7054 * stepmake/bin/install.py: Remove file before copying.
7057 * stepmake/aclocal.m4: Do not substitute INSTALL.
7059 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7061 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7062 depend on link-tree.
7064 * lily/relocate.cc (setup_paths): only check path for non-absolute
7065 dir without directory part.
7067 * flower/file-name.cc (is_absolute): new method.
7068 (is_absolute): check root_ too.
7070 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7072 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7073 relocation code. Oops, don't comment out too much.
7075 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7078 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7081 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7083 * .cvsignore: Add install-sh.
7085 * autogen.sh (srcdir): Typo.
7087 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7089 * autogen.sh (srcdir): urg. Touch install-sh.
7091 * stepmake/bin/install-sh (Module): remove.
7093 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7095 * lily/include/relocate.hh: new file.
7097 * lily/relocate.cc: new file. Contain relocation logic.
7099 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7100 (main): read LILYPOND_VERBOSE as the first thing.
7102 * stepmake/aclocal.m4: remove INSTALL variable.
7104 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7105 separate target for making font symlinks.
7106 (documentation-dir): use $(if $(findstring )) for switching off
7109 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7110 something if DOCUMENTATION is no.
7112 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7114 * VERSION: release 2.7.24
7116 * lily/script-column-engraver.cc (stop_translation_timestep):
7117 delay adding to script-column.
7119 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7121 * python/convertrules.py (conv): rule for number-visibility
7123 * lily/slur-configuration.cc (score_extra_encompass): different
7124 distance measure for avoid and inside avoidance.
7125 (score_extra_encompass): use 1/(distance+eps) as penalty.
7127 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7128 encompass objects for generating slur curves.
7130 * lily/slur.cc: use details iso. slur-details property.
7132 * input/regression/slur-tuplet.ly: new file.
7134 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7136 * flower/include/offset.hh (class Offset): new operator /=
7138 * lily/tuplet-number.cc (print): new file, new interface.
7140 * scm/define-grob-properties.scm (all-user-grob-properties):
7141 remove number-visibility property.
7143 * lily/tuplet-bracket.cc (calc_control_points): new function
7144 (calc_connect_to_neighbors): new function.
7145 (print): remove text handling for tuplet numberdef.
7147 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7150 * lily/lily-guile.cc (robust_scm2booldrul): new function
7152 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7154 * lily/tuplet-bracket.cc (calc_position_and_height): use
7155 staff-padding to control whether tuplet brackets are over staves.
7157 * lily/grob.cc (suicide): clear dim_caches_.
7159 * lily/dimension-cache.cc (clear): new function.
7161 * lily/grob.cc (extent): swap order of min-extent and extent
7162 calculations. This fixes hara kiri staves.
7164 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7166 * lily/main.cc: Nitpick: relocation is not based on path, but on
7167 directory (location).
7169 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7171 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7173 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7175 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7177 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7179 * stepmake/stepmake/generic-vars.make (Module): idem.
7181 * stepmake/stepmake/executable-targets.make (default): use it.
7183 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7185 * make/GNUmakefile: don't install make rules.
7187 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7189 (prepend_env_path): more verbosity.
7191 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7193 * GNUmakefile.in: add dir argument for find command.
7195 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7196 fixes weird line numbers for point & click.
7198 * lily/source-file.cc (get_counts): init line/column/char counts.
7200 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7202 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7204 2005-12-16 Graham Percival <gpermus@gmail.com>
7206 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7207 minor fixes from Fredric. Thanks!
7209 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7211 * ly/music-functions-init.ly: add \bar and \clef music function
7213 * lily/lily-lexer.cc: idem.
7215 * lily/parser.yy (FIXME): remove BAR and CLEF.
7217 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7219 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7221 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7222 function arguments too
7224 * lily/main.cc (set_relocation): new function.
7226 * scripts/musicxml2ly.py (convert): add \version
7228 * lily/tie.cc: remove get_default_attachments()
7230 * VERSION (PACKAGE_NAME): release 2.7.23
7232 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7233 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7235 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7237 * lily/tie-formatting-problem.cc (score_ties): new function
7238 (get_variations): new function. Try flipping dirs for collisions.
7239 (generate_optimal_chord_configuration): new function. 1-opt search
7240 for better configuration.
7242 * lily/tie-configuration.cc: new file.
7244 * lily/tie.cc: junk Tie::get_configuration()
7246 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7247 (score_ties_configuration): new function.
7248 (generate_ties_configuration): new function.
7249 (generate_base_chord_configuration): new function.
7250 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7251 (set_manual_tie_configuration): Move body from tie-column-format.cc
7253 * input/regression/tie-dot.ly: new file.
7255 * lily/tie-formatting-problem.cc (score_configuration): score
7258 * lily/tie-helper.cc (get_transformed_bezier): new function
7260 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7262 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7263 -undefined suppress iso. -framework Python
7265 * scm/define-grobs.scm (all-grob-descriptions): set
7266 springs-and-rods (thanks Joe Neeman!)
7268 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7270 * input/no-notation/display-lily-tests.ly (test):
7271 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7272 changed from \tag #'(a b) to \tag #'a \tag #'b
7274 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7276 * Documentation/topdocs/NEWS.tely: strip out-www.
7278 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7280 * config.make.in (AR): add AR and RANLIB
7282 * flower/libc-extension.cc: include cassert
7284 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7287 2005-12-11 Graham Percival <gpermus@gmail.com>
7289 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7291 * stepmake/stepmake/python-modules-vars.make: define
7292 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7294 * THANKS: added Johannes Schindelin.
7296 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7298 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7300 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7301 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7303 * lily/parser.yy: reorganize file layout.
7305 * ly/music-functions-init.ly: add tweak music function.
7307 * lily/grob-info.cc (ultimate_music_cause): new function:
7308 recursively lookup causes.
7310 * lily/parser.yy (chord_body_element): allow music functions for
7311 post-events, allow music functions for chord elements.
7313 * lily/font-config-scheme.cc (display_fontset): add cast.
7315 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7316 #'(a b) -> \tag #'a \tag #'b rule.
7318 * python/musicexp.py (Output_printer.dump_version): new function
7320 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7322 * lily/parser.yy (FIXME): remove \tag
7323 (FIXME): remove tag_music() function.
7325 * lily/lily-lexer.cc: remove \tag
7327 * ly/music-functions-init.ly: define music-function "tag"
7329 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7331 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7333 * VERSION (PATCH_LEVEL): release 2.7.22
7335 * input/regression/lyric-hyphen-retain.ly: renew.
7337 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7340 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7341 iso. minimum-length property for rods.
7343 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7344 LyricSpace item to keep lyrics spaced apart.
7346 * ly/engraver-init.ly: remove Separating_line_group_engraver
7348 * Documentation/user/music-glossary.tely: do setfilename before
7351 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7353 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7354 See xref documentation, for example.
7356 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7358 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7359 pending_skip iso. ly_voice[-1]
7360 (main): add if __main__ for debugging.
7362 * python/musicxml.py (Accidental.__init__): new class.
7364 * scripts/musicxml2ly.py (progress): new function
7365 (musicxml_key_to_lily): don't barf on modeless keys.
7366 (create_skip_music): new function.
7367 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7368 (musicxml_note_to_lily_main_event): new function.
7370 * python/musicexp.py (Music.__init__): add comment field.
7371 (NestedMusic.append): new routine.
7372 (SequentialMusic.print_ly): print comment.
7373 (ArpeggioEvent.ly_expression): new class
7374 (BeamEvent.ly_expression): new class
7375 (NoteEvent.__init__): support for cautionary/forced accs.
7377 * lily/lookup.cc (slur): normal order for array loop.
7379 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7382 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7385 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7387 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7389 * scripts/lilypond-book.py: Introduce option
7390 --preserve-line-breaks, for usage with srcltx
7392 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7394 * scm/output-lib.scm (print-circled-text-callback): draw circle
7395 around text using make-circle-markup.
7397 * Documentation/user/*: strip out-www from file names.
7399 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7401 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7402 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7404 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7406 * Documentation/user/GNUmakefile: idem.
7408 * Documentation/user/macros.itexi: strip out-www
7410 * python/rational.py: python 2.3 compat.
7412 * VERSION (PATCH_LEVEL): release 2.7.21
7414 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7415 option formatting, lilypond style.
7417 * python/musicexp.py: grab from Ikebana: a library for composing
7418 ly music expressions.
7419 (Output_printer): class for advanced .ly printing.
7422 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7423 convert to pythonesque structure.
7425 * python/rational.py: PD rational number class.
7427 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7429 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7431 * lily/part-combine-iterator.cc: Minor bugfix
7433 * THANKS: Update bughunters
7435 2005-12-02 Werner Lemberg <wl@gnu.org>
7437 * mf/README: Document process for proper mf2pt1 conversion.
7439 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7442 * mf/feta-harmonica.mf: Removed. Unused.
7444 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7446 * scripts/lilypond-book.py (do_file): fix thinkos.
7448 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7450 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7451 ($(outdir)/parser.cc):
7452 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7454 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7456 * ly/titling-init.ly (tagline): it should be a space between
7457 "Music engraving by LilyPond" and the version number.
7459 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7461 * VERSION (PACKAGE_NAME): release 2.7.20
7463 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7465 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7467 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7469 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7471 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7473 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7475 * kpath-guile/: remove directory
7477 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7478 file. Encapsulate kpathsea using commandline tools.
7480 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7483 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7485 * Documentation/user/advanced-notation.itely (Setting automatic
7486 beam behavior): Correct a few typos. Thanks to David Bobroff.
7488 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7489 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7491 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7493 * scripts/*.py: gmane address for bugs.
7495 2005-11-28 Pal Benko <benkop@freestart.hu>
7497 * make/ly-rules.make: add -f switch to mv
7499 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7501 * lily/bar-line.cc: interpret it
7503 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7505 * configure.in (--disable-documentation): New switch.
7507 * GNUmakefile.in: Use it.
7509 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7511 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7513 * scripts/lilypond-book.py (do_file): search chunks for
7516 * GNUmakefile.in: add copy step in between so we can lose the
7517 out-www directories.
7519 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7521 * lily/pango-font.cc (pango_item_string_stencil): put
7522 geometry.width into glyph-string too.
7524 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7526 * scm/define-music-display-methods.scm (RevertProperty):
7527 (OverrideProperty): Use grob-property-path property, a list of
7528 symbols, instead of grob-property, which used to be a single
7530 (BassFigureEvent): a figure can be a plain number, not necessarily a
7533 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7535 * VERSION: release 2.7.19
7537 * lily/figured-bass-engraver.cc (process_music): check
7538 figuredBassCenterContinuations first.
7540 * scm/translation-functions.scm (format-bass-figure): make double
7543 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7546 * lily/system-start-delimiter-engraver.cc: move from
7547 Nested_system_start_delimiter_engraver, rename
7548 Nested_system_start_delimiter_engraver ->
7549 System_start_delimiter_engraver.
7551 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7552 bracket type from hierarchy.
7554 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7556 * lily/rest.cc (y_offset_callback): read staff-position.
7558 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7559 mark after-line-breaking-callback as internal.
7561 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7563 2005-11-25 Werner Lemberg <wl@gnu.org>
7565 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7567 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7569 * stepmake/bin/add-html-footer.py (do_file): add google
7571 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7572 staff if first_start_ is true.
7574 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7576 * scripts/midi2ly.py (split_track): add __repr__ members.
7577 (track_first_item): only return Item if not None. This fixes a
7578 problem when dumping a track that starts with an empty channel.
7580 * python/midi.c: doc module.
7582 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7584 * Documentation/user/global.itely (Creating MIDI files): Fix
7585 compilation problem.
7587 2005-11-22 Graham Percival <gpermus@gmail.com>
7589 * Documentation/user/basic-notation.itely: clarify dynamic
7592 * Documentation/user/advanced-notation.itely: add unicode
7593 escape control example, whatever that is. :)
7595 * Documentation/user/global.itely: added "removing dynamics
7598 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7600 * VERSION (PATCH_LEVEL): release 2.7.18
7602 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7603 System_start_delimiter_engraver by
7604 Nested_system_start_delimiter_engraver.
7606 * lily/nested-system-start-delimiter-engraver.cc (struct
7607 Bracket_nesting_node): new class.
7608 (struct Bracket_nesting_group): new class
7609 (struct Bracket_nesting_staff): new class.
7610 (process_music): create hierarchy of grobs. This allows separate
7611 tuning of different SSDs.
7613 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7614 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7616 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7618 * lily/side-position-interface.cc (aligned_side): multiply
7621 * lily/script-engraver.cc (make_script_from_event): allow setting
7624 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7626 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7628 * scm/define-grobs.scm (all-grob-descriptions): new grob
7629 NestedSystemStartDelimiter.
7631 * input/regression/system-start-heavy-bar.ly: new file.
7633 * lily/nested-system-start-delimiter-engraver.cc: new file.
7635 * lily/nested-system-start-delimiter.cc: new file.
7637 * input/regression/system-start-nesting.ly: new file.
7639 * scm/define-grobs.scm (all-grob-descriptions): use X side
7640 positioning for positioning braces for nested contexts.
7642 * lily/system-start-delimiter.cc (print): don't divide extent by
7644 (print): use style iso. glyph.
7645 (staff_bracket): translate glyph inside routine already.
7647 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7649 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7652 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7654 * scm/define-context-properties.scm
7655 (all-user-translation-properties): rename figuredBassFormatter
7656 from newFiguredBassFormatter.
7658 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7660 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7662 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7664 * lily/beam.cc (calc_beaming): new function.
7665 (calc_shorten): new function.
7667 * THANKS: add Edward Neeman.
7669 * input/regression/accidental-clef-change.ly: new file.
7671 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7673 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7675 * lily/clef-engraver.cc (inspect_clef_properties): reset
7676 localKeySignature for clef changes.
7678 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7680 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7681 add dummy definition that works in Linux and add information in
7682 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7684 * Documentation/user/changing-defaults.itely (Modifying context
7685 plug-ins): Add index for \with.
7687 * Documentation/user/music-glossary.tely (dal segno): Updated
7688 example to version >=2.6.
7690 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7692 * Documentation/user/instrument-notation.itely (Printing chord
7693 names): Reorder \chordmode and \repeat in one example.
7695 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7697 * VERSION: release 2.7.17
7699 * Documentation/topdocs/NEWS.tely (Top): add note about
7702 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7703 new function. Search region of 3 positions for best tie.
7704 (score_configuration): new function.
7705 (score_aptitude): new function.
7706 (generate_configuration): new function.
7707 (get_configuration): new function.
7708 (Tie_formatting_problem): new function
7710 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7712 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7714 * THANKS: add Eduardo Vieira & Ralph Little
7716 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7719 * lily/include/tie-formatting-problem.hh (class
7720 Tie_formatting_problem): add Tie_details to
7721 Tie_formatting_problem. Update calling conventions.
7723 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7726 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7728 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7730 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7731 scm/define-context-properties.scm: Maintenance bugfix: make
7732 ligature brackets work again by removing obsolete ligature
7733 primitive callback push/pop.
7735 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7736 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7739 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7741 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7742 used and do not call it a path.
7743 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7745 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7747 * lily/include/tie-formatting-problem.hh (class
7748 Tie_formatting_problem): new file.
7750 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7752 * Documentation/misc/ChangeLog-2.3: new file.
7754 * lily/audio-staff.cc (output): degarianize.
7756 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7758 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7759 Unset PYTHONOPTIMIZE. Fixes install if set.
7761 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7763 * python/convertrules.py (conv): add warning about drums.
7765 * make/stepmake.make: include toplevel-version.make after config.make.
7767 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7768 also allow python2.4
7770 * config.make.in (configure-srcdir): remove GXX GCC vars.
7772 * stepmake/aclocal.m4: don't do non-srcdir build with
7773 symlinks. Use inclusion, so the src directory name can be changed.
7775 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7777 * make/mutopia-vars.make:
7778 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7781 2005-11-13 Werner Lemberg <wl@gnu.org>
7783 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7784 but the affected path. This ensures that the (overlapping) outlines
7785 have the same direction, which is a necessary prerequisite for
7786 FontForge's algorithm to remove overlaps.
7789 * mf/feta-haak.mf: Formatting.
7790 (draw_bracket): Slightly modify outline to avoid an unnecessary
7792 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7793 them from the affected paths.
7795 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7797 * mf/README: remove xpm / accordion notes.
7799 * lily/tie-column-format.cc (set_chord_outline): add dots into
7800 skyline extents. This fixes tie formatting if the left head has dots.
7802 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7803 space inside the staff.
7804 (get_configuration): shift another position if necessary in case
7807 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7809 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7810 buildscript-dir iso. $(depth)/buildscripts.
7812 * tex/GNUmakefile (local-uninstall): remove
7813 music-drawing-routines.ps juggling.
7815 * stepmake/stepmake/install-targets.make (local-install-files):
7816 prepend src-dir to install targets.
7818 * lily/system-start-delimiter-engraver.cc
7819 (acknowledge_system_start_delimiter): use
7820 add_offset_callback(). This fixes translation of nested
7823 * lily/grob-closure.cc (add_offset_callback): only encaps in
7824 simple_closure if it's a procedure.
7826 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7829 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7830 remove-empty where pertinent.
7832 2005-11-12 Graham Percival <gpermus@gmail.com>
7834 * Documentation/user/instrument-notation.itely: added
7835 Cameron Horsburgh's multiple stanzas docs. Thanks!
7837 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7840 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7841 make picture in builddir, not srcdir.
7843 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7845 * VERSION: release 2.7.16
7847 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7850 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7852 * Documentation/user/examples.itely (Piano templates): Minor
7853 modification to the Piano centered lyrics example.
7855 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7857 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7860 * Documentation/user/point-and-click.itely: simplify p&c
7861 instruction: don't configure firefox. Put lilypond-invoke-editor
7862 in front of the browser.
7864 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7865 (run-browser): new function.
7867 * lily/parser.yy (Lily_lexer): recognize Book
7869 * lily/book.cc (clone): new function
7871 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7873 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7875 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7876 Maintenance bugfix: reduce number of font related warnings by
7877 updating naming conventions for glyph-name.
7879 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7881 * scm/define-grobs.scm (all-grob-descriptions): add
7882 rhythmic-grob-interface to TabNoteHead.
7884 * scm/layout-beam.scm (check-quant-callbacks): remove
7887 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7889 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7890 alignment of centered divisiones.
7892 * scm/scripts.scm (articulations): Maintenance bugfix:
7893 follow-into-staff -> quantize-position.
7895 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7896 plica head in porrectus deminutus.
7898 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7900 * make/lilypond.fedora.spec.in (Group): add %clean section.
7902 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7903 less then 1/5th of total length.
7904 (print): use gap too. Fixes tupletUp-single-bracket.ly
7906 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7907 events into EventChord. This fixes textspanners on mm rests. Fixes
7910 * lily/side-position-interface.cc (get_axis): read side-axis
7911 (set_axis): set side-axis.
7913 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7914 properties everywhere.
7916 * lily/spacing-spanner.cc (breakable_column_spacing): add
7917 average-spacing-wishes. Take maximum if not set.
7918 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7920 * scm/define-grobs.scm (all-grob-descriptions): add
7921 average-spacing-wishes.
7923 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7924 offset callbacks. This fixes alignment for Fingering objects.
7926 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7927 space for key - timesig combination.
7929 * input/regression/script-stem-tremolo.ly (Module): new file.
7931 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7934 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7935 Fixes: c-tremolo-script.ly.
7937 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7939 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7941 * scm/define-grobs.scm (all-grob-descriptions): remove
7942 self-X-offset. Fixes alignment of octavate-8.
7944 * scripts/lilypond-book.py (datadir): look in
7945 LILYPONDPREFIX/share/lilypond/current/
7947 * GNUmakefile.in: symlink current to <VERSION>.
7949 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7951 * lily/main.cc: eps listed as a backend.
7953 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7955 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7957 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7959 * lily/include/score.hh (class Score): remove texts_ member.
7961 * lily/beam.cc (set_stem_lengths): force direction callback.
7962 (print): read quantized-positions, so we can force
7963 Beam::set_stem_lengths to occur.
7964 (rest_collision_callback): use common X parent.
7966 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7968 * flower/file-path.cc (find): Bugfix: Return name of file found.
7970 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7971 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7972 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7974 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7976 * flower/offset.cc: idem.
7978 * mf/*.mf: update email address.
7980 * lily/font-config-scheme.cc: new file.
7982 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7984 * lily/*: cs.uu.nl -> xs4all.nl
7986 * VERSION (PATCH_LEVEL): release 2.7.15
7988 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7991 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7993 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7995 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7997 * lily/staff-performer.cc (process_music): add audio
7998 elements. This makes MIDI instrument changes work once again.
8000 * lily/main.cc (LY_DEFINE): add gmane address.
8002 * lily/beam.cc: remove calc_positions()
8004 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
8005 original_ in private scope.
8006 (class Grob): drop pscore_ pointer, change to output_def pointer.
8007 (class Grob): cleanup class definition.
8009 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
8011 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
8013 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
8014 absolute. Better diagnostics.
8016 * GNUmakefile.in: Add bin/ to tree and populate with some links.
8017 This makes lilypond run from the build directory using argv0
8018 relocation (without any --prefix or LILYPONDPREFIX setting).
8020 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8022 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
8024 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
8025 with simple-closure.
8027 * lily/self-aligment-interface.cc (set_align_self): new function
8028 (set_center_parent): new function.
8030 * lily/side-position-interface.cc (set_axis): new function.
8032 * lily/new-fingering-engraver.cc (position_scripts): use drul for
8035 * scm/define-grob-properties.scm (all-user-grob-properties):
8036 remove [XY]-offset-callbacks add [YX]-offset
8038 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
8040 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8041 entry for time signatures after breathing signs. Bug report by
8044 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8046 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8047 not absolute, make it absolute using PATH.
8049 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8051 * python/midi.c (initmidi): Fix type for mingw.
8053 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8055 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8057 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8060 * stepmake/aclocal.m4: Support python cross compiling.
8062 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8065 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8067 * scm/output-lib.scm (chain-grob-member-functions): replace
8070 * lily/chained-callback.cc (Module): remove file.
8072 * lily/rest-collision.cc (force_shift_callback_rest): change to
8075 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8077 * lily/grob.cc (y_parent_positioning): remove axis argument from
8078 parent_positioning callbacks.
8079 (Grob): junk init code
8080 (get_offset): use generic property callbacks for
8081 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8082 (axis_parent_positioning): new function
8083 (axis_offset_symbol): new function
8084 (chain_offset_callback): new function
8085 (add_offset_callback): new function
8087 * lily/beam.cc (rest_collision_callback): change signature; this
8088 is now a chained callback.
8090 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8091 callback administration.
8093 * lily/simple-closure.cc: new file. Smob type that allows "grob
8096 (ly:make-simple-closure FUNC A B)
8098 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8101 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8104 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8106 * lily/rest.cc (polyphonic_offset_callback): remove.
8108 * lily/script-engraver.cc (try_music): remove bool* argument.
8110 * scm/script.scm (default-script-alist): set quantize-position
8113 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8115 * lily/side-position-interface.cc (aligned_side): move staff
8116 position quantization from
8117 Side_position_interface::quantised_position().
8118 (quantised_position): remove
8120 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8122 * input/regression/beam-quant-standard.ly: reindent, set
8123 debug-beam-quanting to #t.
8125 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8126 10000 if this is a "hard" concave beam.
8128 * lily/beam.cc (calc_least_squares_positions): change from
8129 calc_least_squares_dy
8130 (set_stem_lengths): this is now a chained callback.
8132 * lily/context-property.cc (execute_general_pushpop_property):
8133 bugfix override with procedure should have effect.
8135 * scm/define-grob-properties.scm (all-internal-grob-properties):
8136 remove position-callbacks.
8138 * scm/define-grobs.scm (all-grob-descriptions): use
8139 ly:make-callback-chain for positions property.
8141 * scm/layout-beam.scm (check-quant-callbacks): return list of
8144 * scm/lily.scm (type-p-name-alist): add callback-chain
8146 * lily/lily-guile.cc (type_check_assignment): type check failure
8147 is warning not message.
8149 * lily/grob-property.cc (try_callback): walk callback chain if
8152 * lily/chained-callback.cc: new file. new smob type.
8154 * lily/lily-guile.cc (procedure_arity): new function.
8156 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8158 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8160 2005-10-25 John Mandereau <john.mandereau@free.fr>
8162 * Documentation/user/instrument-notation.itely (Figured bass):
8163 describe new features
8165 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8167 * lily/beam.cc (calc_least_squares_dy): use property callback.
8169 * lily/beam-concave.cc (calc_concaveness): use property callback.
8171 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8173 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8177 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8179 * scm/layout-page-layout.scm (page-headfoot): annotate
8182 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8184 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8185 doesn't take y-space.
8187 * scm/paper.scm (paper-alist): fix A7 dimensions.
8189 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8191 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8192 src-wildcard, remove $(wildcard).
8194 * po/GNUmakefile (PO_FILES):
8195 * ps/GNUmakefile (PS_FILES):
8196 * tex/GNUmakefile (TEX_FILES):
8197 * cygwin/GNUmakefile (POSTINSTALLS):
8198 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8199 some wildcard calls.
8201 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8203 * THANKS: add Thomas Bushnell.
8205 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8207 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8208 (lilypond-main): Redirect to gui-main if 'gui is set.
8210 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8211 for alternative installations kludging s/share/lib/g
8214 * SConstruct (libdir_package_version): Define.
8216 * python/SConscript:
8217 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8220 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8222 * lily/main.cc: clarify --safe.
8224 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8226 * VERSION: release 2.7.14
8228 * Documentation/user/*.itely: remove minimumVerticalExtent.
8230 * scm/define-grobs.scm (all-grob-descriptions): remove
8231 RemoveEmptyVerticalGroup
8233 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8235 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8238 * python/convertrules.py (conv): add rules.
8240 * lily/grob.cc: remove is_empty()
8242 * lily/grob-property.cc: remove add_to_list_property().
8244 * scripts/convert-ly.py (datadir): add prefix switching hack to
8247 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8248 space-function tweak.
8250 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8252 * scm/define-grob-properties.scm (all-user-grob-properties):
8253 remove callback property.
8255 * lily/include/grob.hh (class Grob): remove property_callbacks_
8256 member. Properties of procedure type are assumed to be callbacks.
8258 * lily/ligature-engraver.cc (override_stencil_callback):
8259 rewrite. Use noteHeadLigaturePrimitive as source.
8261 * scm/define-grob-properties.scm (all-internal-grob-properties):
8262 remove ligature-primitive-callback
8264 * lily/include/dimension-cache.hh (class Dimension_cache): make
8265 class, with Grob as friend.
8267 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8268 has_extent_callback()
8270 * scm/translation-functions.scm (format-new-bass-figure): read
8271 figuredBassPlusDirection
8273 * scm/define-context-properties.scm
8274 (all-user-translation-properties): add figuredBassPlusDirection.
8276 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8278 * lily/align-interface.cc (set_ordered): new function.
8280 * lily/grob.cc (flush_extent_cache): rewrite.
8282 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8283 Interval pointer directly.
8285 * lily/main.cc (setup_paths): insert extra / .
8286 (setup_paths): junk cff entry.
8288 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8291 * lily/axis-group-engraver.cc (finalize): remove
8292 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8294 * lily/grob.cc (Grob): don't set extent from ctor.
8295 (extent): use property callbacks.
8297 * lily/axis-group-interface.cc: remove set_axes() function.
8299 * lily/grob-property.cc (del_property): new function.
8301 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8303 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8305 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8307 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8309 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8311 * mf/SConscript: Updates.
8313 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8315 * stepmake/stepmake/*:
8319 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8320 from any directory in build-dir. Cleanups.
8322 * make/srcdir.make.in: Remove.
8324 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8326 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8329 * lily/SConscript: Remove ttftools.
8331 * SConstruct: Resurrect.
8333 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8335 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8338 * lily/paper-book.cc (add_score_title): put Paper_score title into
8341 * scm/translation-functions.scm (format-new-bass-figure): also
8342 allow plus in combination with _
8344 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8346 * VERSION: 2.7.13 released.
8348 * lily/note-collision.cc (check_meshing_chords): don't wipe
8349 stencil, merely set transparent.
8351 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8352 (Top): document #'callbacks.
8353 (Top): document nested \override.
8355 * input/regression/figured-bass.ly: update for slash and pluses.
8357 * input/regression/figured-bass-continuation-forbid.ly (Module):
8360 * scm/translation-functions.scm (format-new-bass-figure): use
8361 slashed-digit if diminished is set.
8362 (format-new-bass-figure): add + if 'augmented is set.
8364 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8366 * input/test/piano-staff-distance.ly: remove file.
8368 * Documentation/user/advanced-notation.itely (Formatting cue
8369 notes): use length-fraction for making stems/beams smaller.
8371 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8374 * lily/new-figured-bass-engraver.cc: new property
8375 centerFiguredBassContinuations
8377 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8380 * lily/context-property.cc (execute_general_pushpop_property):
8383 * input/regression/override-nest.ly: new file.
8385 * python/convertrules.py (FatalConversionError.subber): conversion
8386 rule for #'callbacks
8388 * input/regression/override-nest.ly: new function.
8390 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8393 * lily/context-property.cc (lookup_nested_property): new function.
8394 (evict_from_alist): new function.
8395 (general_pushpop_property): new function.
8396 (execute_general_pushpop_property): rewrite. Support nested
8399 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8401 * lily/beam.cc: use length-fraction too.
8403 * scm/define-grob-properties.scm (all-user-grob-properties):
8404 remove property flag-width-function
8405 (all-user-grob-properties): remove space-function.
8407 * scm/layout-beam.scm: remove flag-width-function.
8409 * lily/beam.cc: remove flag-width-function
8411 * scm/layout-beam.scm: remove beam dir functions.
8413 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8415 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8416 for easier grace tweaks.
8418 * lily/beam.cc: remove dir-function.
8420 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8422 * lily/grob.cc: remove spacing-procedure.
8424 * lily/note-head.cc (calc_stem_attachment): new function.
8425 (internal_print): use callback to get glyph-name.
8427 * lily/grob-property.cc (get_interfaces): new function.
8429 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8431 * lily/stem.cc (calc_stem_end_position): new function.
8432 (calc_length): new function.
8433 document details for stem.
8434 remove Stem::get_direction()
8436 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8438 * lily/grob-property.cc (set_callback): new function.
8440 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8442 * lily/item-scheme.cc: new file.
8444 * lily/bar-line.cc (before_line_breaking): remove function.
8445 remove bar-size-procedure, break-glyph-function
8447 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8449 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8451 * lily/system-start-delimiter.cc (print): suicide from
8452 here. Remove after_line_breaking_callback.
8454 * lily/script-interface.cc (calc_direction): use callback for direction.
8456 * lily/side-position-interface.cc (aligned_side): don't use
8457 Side_position_interface::get_direction directly. Use callback.
8459 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8461 (get_print_stencil): rename from get_stencil: create stencil with
8462 transparency, color and cause.
8464 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8466 * python/convertrules.py (conv): insert temporary warning rule.
8468 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8470 * lily/grob-property.cc (try_callback): remove marker if applicable.
8472 * lily/grob.cc: elucidate doc about after/before-line-breaking
8474 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8476 * lily/stem.cc (height): idem.
8478 * lily/stem-tremolo.cc: idem.
8480 * lily/slur.cc (height): don't use get_uncached_stencil()
8482 * lily/rest.cc (y_offset_callback): use offset callback
8483 iso. after-line-breaking callback.
8485 * lily/grob.cc: change after/before-line-breaking-callback to
8486 after/before-line-breaking dummy properties.
8488 * lily/include/grob.hh: remove Grob_status.
8490 * scm/define-context-properties.scm
8491 (all-user-translation-properties): remove verticalAlignmentChildCallback
8493 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8494 (calc_direction): use callback
8495 (calc_positions): use callback.
8497 * lily/tie.cc (calc_direction): use callback. Only call parent
8498 positioning for more than one tie.
8500 * lily/tie-column.cc (calc_positioning_done): use callback
8502 * lily/slur-scoring.cc (calc_control_points): use callback
8504 * lily/slur.cc (calc_direction): use callback.
8506 * lily/note-collision.cc (force_shift_callback): remove.
8508 * lily/dot-column.cc (force_shift_callback): remove. Use
8509 other_axis_parent_positioning.
8511 * lily/grob.cc (other_axis_parent_positioning): new function.
8512 (same_axis_parent_positioning): new function
8514 * lily/align-interface.cc (alignment_callback): remove function.
8516 * lily/note-collision.cc (calc_positioning_done): use callback.
8518 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8519 (calc_direction): idem.
8520 remove print function.
8522 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8524 * lily/dot-column.cc (calc_positioning_done): use callback.
8526 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8528 * lily/beam.cc (calc_direction): use pseudo-property for beam
8530 (calc_positions): use callback
8532 * lily/align-interface.cc (calc_positioning_done): use
8533 callback. Fold fixed distance and normal alignment in one function.
8535 * lily/stem.cc (calc_stem_end_position): use callback.
8536 (calc_positioning_done): idem.
8537 (calc_direction): idem.
8538 (calc_stem_end_position): idem
8539 (calc_stem_info): idem.
8541 * lily/grob-property.cc (get_property_data): new function:
8542 (try_callback): new function.
8544 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8547 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8549 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8551 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8555 * lily/include/*.hh (Module): compile fixes.
8557 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8559 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8560 as an argument for char-syntax: use (char-syntax (or nil 0))
8561 instead of (char-syntax nil), thanks to Milan Zamazal.
8563 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8565 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8568 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8571 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8573 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8574 add class_name() method.
8576 * lily/music-scheme.cc: remove ly:music-name.
8578 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8580 * cygwin/postinstall-lilypond.sh: Remove cruft.
8582 * cygwin/postremove-lilypond.sh: Remove.
8584 * cygwin/GNUmakefile (default): Remove postremove rules.
8586 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8588 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8591 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8594 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8595 consider break index for broken spanner.
8597 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8598 characters from string before splitting.
8600 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8602 * scm/framework-ps.scm (output-preview-framework): use
8603 is-book-title to determine whether to chop off the booktitle.
8605 * lily/paper-book.cc (systems): init from book-title-properties
8606 (add_score_title): init score-title-properties.
8608 * ly/paper-defaults.ly: add {score,book}-title-properties.
8610 * scm/document-backend.scm (lookup-interface): error message if
8611 using unknown interface.
8613 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8616 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8618 (make_bracket): new function.
8620 * scm/lily.scm (define-scheme-options): add paper-size option.
8622 * ly/declarations-init.ly (laissezVibrer): get paper size from
8625 * scm/translation-functions.scm: use \fontsize for changing the
8628 * scm/define-grobs.scm (all-grob-descriptions): set
8629 between-length-limit to 1.0
8631 * lily/tie-helper.cc: add between_length_limit_ detail property.
8633 * mf/feta-bolletjes.mf: typos.
8635 * lily/note-head.cc (internal_print): don't shadow idx
8636 parameter. This fixes wrong attachment for do shape heads.
8638 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8640 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8642 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8644 * scm/layout-slur.scm: rename from slur.scm
8646 * scm/layout-page-layout.scm: rename from page-layout.scm
8648 * scm/layout-beam.scm: rename from beam.scm
8650 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8651 bass-figure-interface
8653 * lily/new-figured-bass-engraver.cc (process_music): add
8654 implicitBassFigures property.
8656 * scm/define-markup-commands.scm (pad-x): new markup.
8658 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8659 minimumVerticalExtent on FiguredBass context.
8661 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8662 case the continuation crosses a line break.
8664 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8666 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8667 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8668 absolute file name bug.
8670 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8672 * VERSION (PACKAGE_NAME): release 2.7.12
8674 * input/regression/figured-bass-continuation-center.ly: new file.
8676 * input/regression/beam-outside-beamlets.ly: new file.
8678 * lily/beam.cc (set_beaming): don't clip edges.
8679 (connect_beams): don't clip edges.
8681 * lily/beaming-info.cc (clip_edges): new function.
8683 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8685 * Documentation/user/instrument-notation.itely (Figured bass):
8686 demonstrate extenders, update seealso links.
8688 * scm/titling.scm (marked-up-headfoot): change tagline
8689 handling. tagline = ##f will blank the tagline as well.
8691 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8693 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8695 * lily/new-figured-bass-engraver.cc (struct
8696 New_figured_bass_engraver): add new_music_found_ member.
8698 * lily/lilypond-version.cc (Lilypond_version): deal with
8699 incorrectly formatted version strings.
8701 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8702 New_figured_bass_engraver by default.
8704 * lily/ttf.cc (print_trailer): only define glyph names when
8705 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8707 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8709 * lily/horizontal-bracket.cc (make_bracket): new function.
8711 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8712 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8713 BassFigureLine, BassFigureAlignment
8715 * lily/new-figured-bass-engraver.cc (process_music): new file.
8717 * lily/figured-bass-continuation.cc: new file.
8719 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8722 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8724 * scripts/lilypond-book.py: Bug fix, put the quote around the
8725 actual score for LaTeX documents.
8727 * scm/define-grobs.scm (all-grob-descriptions): Change
8728 collapse-height of the SystemStartBracket grob to 5.0,
8729 so the bracket disappears for single stave score lines (similarly
8730 to SystemStartBraces).
8732 * Documentation/user/advanced-notation.itely (Polymetric
8733 notation): Clarify the use of compressMusic.
8735 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8736 that the grace spacer note in other staves need the same duration
8737 and document the stroke-style property.
8739 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8741 * Documentation/user/global.itely (Vertical spacing): document
8742 alignment-extra-space and fixed-alignment-extra-space.
8744 * Documentation/topdocs/NEWS.tely (Top): add entry.
8746 * input/regression/alignment-vertical-spacing.ly: new file.
8748 * python/convertrules.py (conv): add rule.
8750 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8752 * lily/align-interface.cc (stretch_after_break): new
8753 function. Read fixed-alignment-extra-space property.
8754 (align_elements_to_extents): read alignment-extra-space property.
8756 * lily/lily-guile.cc (robust_scm2dir): new function.
8758 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8759 (annotate-space-left): new function. Annotate space left on page.
8760 (annotate-y-interval): new function.
8761 (paper-system-annotate-last): new function. Annotate bottom-space.
8763 * mf/feta-beugel.mf (y):
8765 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8767 * VERSION (PACKAGE_NAME): release 2.7.11
8769 * scm/lily-library.scm (interval-translate): new function
8770 (interval-center): new function.
8772 * scm/page-layout.scm (paper-system-annotate): new function. Add
8773 arrows for dimensions.
8775 * scm/stencil.scm (dimension-arrows): new function.
8777 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8779 * input/regression/page-spacing.ly: add annotatespacing
8781 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8782 (LY_DEFINE): new function ly:paper-system-set-property!
8784 * Documentation/user/global.itely (Paper size): explain how to add
8787 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8788 correspond to GS's definition.
8790 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8792 (print): only connect to next bracket if the next one is alive.
8793 (print): set padding to 0.0 if the bound is a breakable
8794 column. This makes tupletFullLength brackets reach up to the staff
8795 line if it doesn't connect to the next line.
8797 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8799 * lily/bar-number-engraver.cc: correct docs.
8801 * scm/output-lib.scm (first-bar-number-invisible): rename from
8802 default-bar-number-visibility
8804 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8806 * scm/define-music-properties.scm (all-music-properties): remove
8809 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8811 * po/fi.po: refresh.
8813 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8815 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8817 (disappear): bugfix.
8819 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8821 * lily/include/paper-system.hh (class Paper_system): remove
8822 staff_extents_ member.
8824 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8826 * lily/include/paper-system.hh (class Paper_system): remove
8827 number_ variable. Remove is_title_. Remove break_before_penalty_
8829 * lily/paper-book.cc (systems): use 'number property iso. number_
8832 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8833 remove ly:paper-system-number.
8835 * scm/lily-library.scm (paper-system-title?): new function.
8837 * lily/book.cc (process): bugfix: flip ?: cases.
8839 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8842 * ly/music-functions-init.ly: add outputProperty music function.
8844 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8846 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8848 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8850 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8852 * lily/paper-system.cc (internal_get_property): new function.
8854 * Documentation/user/global.itely (Vertical spacing): refer to
8857 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8860 * input/regression/page-spacing.ly: new file.
8862 * input/regression/page-top-space.ly: new file.
8864 * lily/spacing-spanner.cc: cmath -> math.h
8866 * lily/paper-system.cc (read_left_bound): new function. Read
8867 line-break-system-details from left bound to determine extents.
8869 * Documentation/user/programming-interface.itely (Using LilyPond
8870 syntax inside Scheme): change applyxxx -> applyXxx.
8872 * ly/music-functions-init.ly: add outputProperty music function.
8874 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8876 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8878 * python/convertrules.py (conv): rule
8880 * ly/music-functions-init.ly: applyxxx -> applyXxx
8882 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8885 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8887 * flower/include/real.hh: include <math.h> iso. <cmath>
8889 * flower/include/offset.hh: include real.hh
8891 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8893 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8894 fix example, now that 'interfaces is no longer directly available.
8896 * lily/book.cc (process): don't crash if paper == NULL.
8900 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8902 * scm/define-music-types.scm (music-descriptions): set length and
8903 start-callback for QuoteMusic
8905 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8907 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8908 arguments. Fixes compilation error with gcc 3.3.
8910 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8912 * VERSION: release 2.7.10
8914 * stepmake/stepmake/python-module-rules.make
8915 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8917 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8920 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8922 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8923 -Werror. Otherwise GCC barfs over various optimizations.
8925 * scm/define-grob-properties.scm (all-internal-grob-properties):
8926 add note-head property
8928 * Documentation/user/instrument-notation.itely (Laissez vibrer
8931 * input/regression/laissez-vibrer-ties.ly: new file.
8933 * lily/laissez-vibrer-engraver.cc: new file.
8935 * lily/include/tie-column-format.hh: new file.
8937 * lily/tie-column-format.cc: new file.
8939 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8941 * lily/laissez-vibrer-tie.cc: new file.
8943 * lily/include/laissez-vibrer-tie.hh: new file.
8945 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8947 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8949 * scm/define-grobs.scm (all-grob-descriptions): add
8950 LaissezVibrerTie, LaissezVibrerTieColumn
8952 * lily/tie-column.cc (set_tie_config_directions): new function
8953 (final_shape_adjustment): new function.
8954 (shift_small_ties): new function.
8956 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8958 * lily/include/tie.hh (struct Tie_details): add x_gap_
8959 (struct Tie_configuration): add head_position_
8961 * lily/tie-column.cc (set_chord_outline): new function.
8963 * mf/cmr.enc.in: remove file.
8965 2005-09-11 Graham Percival <gpermus@gmail.com>
8967 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8969 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8971 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8972 reduce aliasing effects.
8974 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8977 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8979 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8981 * flower/include/real.hh: std::fabs too.
8983 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8985 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8987 * lily, flower: Include C++ iso C headers. Import namespace std
8990 * lily/side-position-interface.cc:
8992 * lily/note-head.cc:
8993 * lily/include/includable-lexer.hh:
8994 * flower/include/string-data.icc: Remove using std::*.
8996 * lily, flower: Include C++ iso C headers. Import namespace std
8999 * lily/side-position-interface.cc:
9001 * lily/note-head.cc:
9002 * lily/include/includable-lexer.hh:
9003 * flower/include/string-data.icc: Remove using std::*.
9005 * Documentation/user/instrument-notation.itely (Entering lyrics):
9006 Multiple latin-1->utf-8 conversion fix.
9008 * Documentation/user/*tely: Update Emacs cookie to utf-8.
9010 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9012 * lily/tie.cc (get_configuration): also avoid dots for non-space
9015 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
9017 * Documentation/user/instrument-notation.itely: Bugfix.
9019 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
9021 * tex/GNUmakefile: don't install texinfo.tex
9023 * tex/ : cleanup: remove unused files.
9025 * lily/general-scheme.cc: remove my_{isinf,isnan}.
9027 * flower/include/real.hh: using std::{isnan,isinf}
9029 * VERSION (PATCH_LEVEL): release 2.7.9
9031 2005-09-05 Graham Percival <gpermus@gmail.com>
9033 * Documentation/user/ instrument-notation.itely,
9034 advanced-notation.itely: minor tweaks.
9036 * input/test/script-chart.ly: add item padding.
9038 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9040 * flower/offset.cc: use math.h iso. <cmath>
9042 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9045 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9046 (widen-left-stencil-edges): new function. Fix alignment problems
9047 with LaTeX includegraphics.
9049 * lily/text-interface.cc (interpret_markup): use abort().
9051 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9053 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9055 * lily/tie.cc (get_configuration): update bezier shape as we
9057 (get_configuration): don't move large ties if we're outside of the
9060 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9062 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9064 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9066 * .cvsignore: Add auto-generated configure files and then some.
9068 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9070 * scm/define-grobs.scm (DynamicLineSpanner): Add
9071 X-extent-callback. Fixes hairpin-slur collision.
9073 2005-08-31 Graham Percival <gpermus@gmail.com>
9075 * Documentation/user/advanced-notation.itely,
9076 basic-notation.itely: minor changes.
9078 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9080 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9081 \linebreak between each .eps file if \betweenLilyPondSystem is
9084 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9085 music): Document the \linebreak
9087 * Documentation/user/lilypond-book.itely,
9088 input/tutorial/lbook-latex-test.tex,
9089 Documentation/user/examples.itely: Remove \usepackage{graphics}
9091 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9093 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9095 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9098 * scripts/lilypond-book.py (PREAMBLE_LY): define
9099 inside-lilypond-book
9100 (modify_preamble): new function. Insert \RequirePackage{graphics}
9101 when no {graphics found in preamble.
9103 2005-08030 Graham Percival <gpermus@gmail.com>
9105 * Documentation/user/basic-notation.itely, global.itely,
9106 tutorial.itely: misc small changes.
9108 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9110 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9113 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9115 * lily/tie-column.cc (new_directions): put Tie down on center
9118 * lily/script-interface.cc (before_line_breaking): use
9119 Grob::programming_error
9121 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9123 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9126 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9128 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9130 2005-08-29 Werner Lemberg <wl@gnu.org>
9132 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9133 the `*.scale.pfa' files to avoid warnings.
9135 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9137 * lily/tempo-performer.cc (process_music): idem.
9139 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9141 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9143 * Documentation/user/advanced-notation.itely (Text markup): not a
9146 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9148 * lily/staff-performer.cc (initialize): add tempo/name to
9151 2005-08-26 Graham Percival <gpermus@gmail.com>
9153 * Documentation/user/advanced.itely: add text-only example.
9155 * Documentation/user/invoking.itely: add index entries for
9158 * Documentation/user/ tutorial.itely, basic-notation.itely:
9159 small fixes suggested by Steve D. Thanks!
9161 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9163 * input/regression/markup-bidi-pango.ly: new file.
9165 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9166 standard. Remove #ifdef. Remove memleak.
9167 (text_stencil): use text_dir to decide how to composite items.
9168 (text_stencil): determine uniform text direction for the entire
9171 * scripts/lilypond-book.py (output_name): remove
9172 latex_filter_cmd. Non-portable to non-Unix systems.
9173 (get_latex_textwidth): use File.write and os.unlink() instead.
9175 * THANKS: add Vicente & Trevor.
9177 * lily/grob.cc (discretionary_processing): look up origin for
9178 programming_error too.
9180 * input/regression/tie-broken.ly: new file.
9182 * lily/tie-column.cc (set_chord_outlines): set outline for line
9185 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9187 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9188 unscaled transform, just translate stencils.
9190 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9193 * scm/define-markup-commands.scm (wordwrap-string): use
9195 (wordwrap-stencils): idem.
9198 (wordwrap-stencils): translate last line to right for
9199 text-direction = LEFT.
9201 * scm/define-grob-properties.scm (all-user-grob-properties): add
9204 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9206 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9207 when copying a Lily_parser object.
9209 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9211 * scm/define-markup-commands.scm (null): add null markup.
9213 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9215 * lily/item.cc: Add documentation of center-invisible
9217 2005-08-24 Graham Percival <gpermus@gmail.com>
9219 * Documentation/user/advanced-notation.itely: add info about
9222 * Documentation/user/programming-interface.itely: fix example
9223 involving raised text.
9225 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9227 * lily/beam.cc (print): fix X start/end points of isolated
9230 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9232 * lily/multi-measure-rest.cc (set_text_rods): new function.
9234 * lily/vertical-align-engraver.cc (process_music): call
9235 Align_interface::set_axis(). This forces #'elements to be ordered,
9236 preventing random vertical reordering of staves.
9238 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9239 add avoid-slur property.
9241 * Documentation/user/basic-notation.itely (Measure repeats): add
9242 countPercentRepeats example.
9244 * Documentation/user/advanced-notation.itely (Other text markup
9245 issues): remove remark about normal-font. We have \normal-text
9247 * input/regression/tie-chord.ly: add note about remaining bugs.
9249 * lily/tie.cc (print): try Tie_column::set_directions () if
9250 control-points not yet defined.
9252 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9254 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9255 extent. This fixes braces falling out of the EPS bbox.
9257 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9260 2005-08-23 Graham Percival <gpermus@gmail.com>
9262 * {various} : change #up->#UP and #down->#DOWN.
9264 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9266 * Documentation/user/advanced-notation.itely: clarify
9267 what objects handles text on a multimeasure rest.
9269 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9271 * VERSION (PATCH_LEVEL): release 2.7.7
9273 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9275 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9277 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9279 * input/regression/*.ly: formatting clean-up. Default layout
9280 before music expression.
9282 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9283 romanze28-2 example.
9285 * scm/ps-to-png.scm: remove dir-re function.
9286 (make-ps-images): generate page names, instead of globbing them.
9287 This brings down LilyPond memory usage for make web by a factor
9290 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9291 don't use glob. With 3000 files, globbing
9292 Documentation/user/out-www/ can take too much time.
9294 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9296 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9298 * input/regression/tie-manual.ly: new file
9300 * input/regression/tie-chord.ly: update.
9302 * flower/include/interval.hh (struct Interval_t):
9304 * lily/tie.cc (distance): new function
9305 (height): new function.
9306 (init): new function
9307 (Tie_details): new struct.
9309 * lily/skyline.cc (skyline_height): new function.
9311 * lily/tie-column.cc (set_chord_outlines): new function.
9312 (new_directions): read tie-configuration
9314 * lily/skyline.cc: fix ASCII art.
9316 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9318 * python/convertrules.py (string_or_scheme): Fix spelling error
9320 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9322 * lily/tie-column.cc (set_directions): set directions only once.
9323 (add_configuration): new function.
9325 * lily/tie.cc (set_control_points): new function
9327 * lily/tie-column.cc (new_directions): new function.
9329 * ly/music-functions-init.ly: set 'pitch property
9330 iso. trill-pitch. This makes \relative work with \pitchedTrill
9332 * lily/tie.cc (get_configuration): new function. Don't generate
9333 control points, rather, generate configuration.
9334 remove head-pair property.
9336 * lily/include/tie.hh (struct Tie_configuration): new struct.
9338 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9340 * Documentation/topdocs/NEWS.tely: clarify.
9342 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9344 * lily/tie.cc: remove minimum-length
9346 * scm/define-grob-properties.scm (all-user-grob-properties):
9347 remove staffline-clearance, y-offset
9349 * input/regression/tie-dots.ly (Module): remove.
9351 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9352 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9354 * input/regression/tie-single.ly: new file.
9356 2005-08-21 Graham Percival <gpermus@gmail.com>
9358 * ly/bagpipe.ly: fix compile problem.
9360 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9362 * lily/midi-item.cc (name): new method.
9364 * lily/staff-performer.cc (acknowledge_audio_element): use
9365 signature of baseclass.
9367 * lily/engraver-group.cc (do_announces): move recursion call out
9370 * lily/drum-note-performer.cc (class Drum_note_performer): use
9371 process_music everywhere.
9373 * ly/performer-init.ly: add default children everywhere.
9375 * lily/paper-book.cc (output): call paper-book-write-midis
9376 directly: always write MIDI, even if no \layout {} block.
9378 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9380 * VERSION (PACKAGE_NAME): release 2.7.6
9382 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9383 about not being able to handle repeat.
9385 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9387 * Documentation/user/examples.itely (Piano templates):
9388 * lily/include/performer-group.hh: Remove last traces of
9389 Performer_group_performer. Fixes make web.
9391 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9393 * Documentation/user/examples.itely (Piano templates): change
9394 Engraver_group_engraver -> Engraver_group
9396 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9397 scm_stand_in_procs is not weak_any.
9399 * lily/volta-bracket.cc (print): don't use strcmp().
9401 * lily/volta-engraver.cc (process_music): use
9402 Text_interface::is_markup() for setting the 'text property of the
9405 * input/mutopia/claop.py (accents): update syntax to 2.6
9407 * scm/define-context-properties.scm
9408 (all-user-translation-properties): add countPercentRepeats.
9410 * Documentation/user/basic-notation.itely (Measure repeats): add
9411 isolated percent example.
9413 2005-08-18 Graham Percival <gpermus@gmail.com>
9415 * input/ {various}: change direction #1, #-1 to
9416 #up/#down or \fooUp, \fooDown.
9418 * Documentation/user/music-glossary.tely: #-1 to #down.
9420 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9421 to #up, #-1 to #down.
9423 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9425 * lily/include/engraver-group.hh: rename.
9427 * lily/include/performer-group.hh: rename.
9429 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9431 * input/test/script-abbreviations.ly: Removed some old LaTeX
9434 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9436 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9437 Remove functions. Remove if 1: constructs, reindent.
9439 * scripts/convert-ly.py (add_version): Add functions from
9442 * scm/script.scm (default-script-alist):
9443 s/priority/script-priority. Fixes script stacking. Backportme.
9444 (Fermata): Very low priority.
9446 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9448 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9450 * input/regression/slur-script.ly: remove padding tweaks. Add
9453 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9454 time sigs and related stuff.
9456 * scm/define-grob-properties.scm (all-user-grob-properties): add