1 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4 end context snippet with '\n'
7 catch all GUILE exceptions
12 * lily/include/lily-lexer.hh:
14 * lily/lily-parser.cc:
15 Lily_parser* arg for copy ctor too.
18 abc2ly new tempo syntax
20 2006-11-04 Heikki Junes <hjunes@gmail.com>
22 * po/fi.po: update Finnish translation.
24 2006-11-03 Graham Percival <gpermus@gmail.com>
26 * Documentation/user/ {various}: rename page->spacing,
27 global->non-music, invoking->running, example->templates.
29 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
31 * scm/display-lily.scm: add a parser argument to display methods,
32 instead of using a *parser* special variable.
34 * scm/define-music-display-methods.scm: add a parser argument to
35 display methods. Update the methods for \melisma, \melismaEnd,
36 \breathe, \tempo, \partial.
38 * input/no-notation/display-lily-tests.ly: update the test
39 utilities according to the changes in display-lily.scm
41 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
43 * *: The Joy of Merging.
45 * buildscripts/git-update-changelog.py:
46 sort commits, and use .git-commits-done file.
50 dist emacs patches too.
52 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
57 * lily/context-def.cc:
58 * lily/include/parse-scm.hh:
59 * lily/include/smobs.hh:
62 * lily/program-option.cc:
64 implement and use ASSERT_LIVE_IS_ALLOWED()
66 * ly/music-functions-init.ly:
68 set-part-combine fix for autochange.
70 * lily/include/lily-lexer.hh:
71 * lily/include/lily-parser.hh:
73 * lily/lily-parser-scheme.cc:
74 * lily/lily-parser.cc:
75 clear lexer scopes after parsing file. Plugs pseudo memory leak
77 * ly/declarations-init.ly:
78 * ly/music-functions-init.ly:
79 * scm/part-combiner.scm:
80 Remove set-part-combine-listener. This plugs a memory leak.
86 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
91 * lily/part-combine-iterator.cc:
92 don't allocate part combine events statically. Plugs small leak.
94 * lily/lily-parser-scheme.cc:
95 plug memleak in case of failed files.
97 * lily/include/source.hh:
102 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
104 * lily/include/program-option.hh:
105 * lily/program-option.cc:
106 get_program_option() function
108 * ly/titling-init.ly:
109 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
111 * lily/include/translator.hh:
112 * lily/include/translator.icc:
113 * lily/translator.cc:
116 * lily/figured-bass-engraver.cc:
117 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
119 * stepmake/stepmake/compile-vars.make:
120 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
122 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
128 trim warning messages.
133 * input/regression/utf-8.ly:
134 document utf-8 meaning of phrases.
136 * scm/define-markup-commands.scm:
137 make \caps markup default to smallCaps
139 * lily/pango-font.cc:
141 use glyph indexing for glyph name .notdef
143 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
145 * input/regression/utf-8.ly: Fix doc to match order of language
148 2006-11-01 Joe Neeman <joeneeman@gmail.com>
150 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
151 page and line forces.
153 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
155 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
157 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
159 * Documentation/user/GNUmakefile:
160 don't use ImageMagick, use GS directly.
163 otf depends on otf-g?table. Fixes race condition in -j2 build.
164 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
170 remove .deb/.rpm downloading.
172 * buildscripts/git-update-changelog.py:
173 bugfixes for git-update-changelog.py
175 * Documentation/user/GNUmakefile:
178 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
180 * input/regression/tie-semi-single.ly:
181 use position/direction from single tie case too. This fixes
182 overrides and defaults for single laissez-vibrer and repeat ties.
184 * buildscripts/git-update-changelog.py:
185 only prepend header if one patch was successful.
187 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
189 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
190 stuff. Remove cygwin packaging stuff.
192 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
194 * python/convertrules.py (conv): Part 2 fixes vertical extent.
196 * input/test/vertical-extent.ly: Fix and elaborate on vertical
197 staff extent. (Thanks Mats)
199 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
201 * buildscripts/git-update-changelog.py (main): write .msg and cvs
204 * scm/define-grobs.scm:
205 separation-items have width
211 * Documentation/topdocs/NEWS.tely:
212 * lily/separating-group-spanner.cc:
213 * lily/slur-engraver.cc:
214 * lily/slur-scoring.cc:
215 * scm/define-grobs.scm:
216 * input/regression/slur-clef.ly:
217 add breakableSeparationItem to extra encompass for slurs. This
218 fixes slur/clef slur/key collisions etc. Should fix #49
220 * lily/include/slur-scoring.hh:
221 * lily/slur-scoring.cc:
222 Use X of separation item as slur start. Fixes #120
224 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
226 * buildscripts/git-update-changelog.py (changelog_body): don't
229 * lily/grob.cc: add avoid-slur
231 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
235 move server/emacsclient to elisp/
237 * buildscripts/git-update-changelog.py (Commit.note_del_file):
240 * elisp/server.el.patch:
243 * elisp/emacsclient.patch:
246 * buildscripts/git-update-changelog.py:
253 * buildscripts/git-update-changelog.py:
254 script to update ChangeLog with Git messages.
256 * lily/beam-engraver.cc:
257 * input/regression/rest-pitched-beam.ly:
258 don't set callback if staff-position set. Fixes #126.
260 * lily/bar-number-engraver.cc:
262 * lily/fingering-engraver.cc:
263 * lily/grob-property.cc:
265 * lily/include/grob.hh:
266 * lily/include/lily-guile-macros.hh:
267 * lily/mark-engraver.cc:
268 * lily/melody-engraver.cc:
269 * lily/script-column.cc:
270 * lily/tie-formatting-problem.cc:
272 internal_get_property_data() using ly_symbol2scm()
274 * stepmake/stepmake/generic-targets.make:
275 create .gitignore in outdir.
280 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
282 * input/test/vertical-extent.ly:
283 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
285 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
287 * stepmake/bin/add-html-footer.py (compose): remove setgcos
289 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
291 * GNUmakefile.in (install-help2man): install-help2man target.
293 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
295 * SConstruct (configure): Do not check for /bin/sh.
297 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
299 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
302 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
304 * input/regression/fret-boards.ly: new file.
306 * po/de.po: new po courtesy translation team.
308 * scripts/lilypond-book.py (get_option_parser): add newline to doc
311 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
313 * ly/gregorian-init.ly (neumeDemoLayout): update
314 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
316 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
317 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
319 2006-10-27 Erlend Aasland <erlenda@gmail.com>
321 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
322 Yet another build fix.
324 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
326 * SConstruct (lilypondprefix): use sorted() for list_sort()
329 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
331 * flower/SConscript: Unit test rules.
333 * flower/test-std.cc: Compile fix.
335 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
337 * python/midi.c (pymidi_parse_track): warning fixes.
339 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
340 include dot-column.hh
342 2006-10-26 Graham Percival <gpermus@gmail.com>
344 * Documentation/user/{basic-, global}: minor changes from mailist.
346 2006-10-26 Erlend Aasland <erlenda@gmail.com>
348 * scm/define-grobs.scm: trivial beautification
350 * lily/tie-performer.cc: no need to #include "pqueue.hh"
352 * lily/source-file.cc: put multibyte var inside #if clause
354 * scm/define-grob-interfaces.scm:
355 * scm/define-grob-properties.scm:
356 Build fix (string-fret-finger-combinations)
358 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
361 * Documentation/user/lilypond-book.itely: Build fix.
363 2006-10-26 Joe Neeman <joeneeman@gmail.com>
365 * lily/system.cc (get_paper_system):
366 * lily/paper-book.cc (systems):
367 move most of the backwards compatibility stuff into
370 * Documentation/topdocs/NEWS.tely: add 2 entries for the
373 * Documentation/user/page.itely: remove time-scaled-music
374 bug for the Page_turn_engraver
376 * lily/paper-book.cc (set_system_penalty): backwards
377 compatibility (breakbefore) for the old page breaker
379 2006-10-25 Graham Percival <gpermus@gmail.com>
381 * Diocumentation/user/instrument-notation.itely: added more
382 info about stanzas; thanks Geoff!
384 * Documentation/user/ {basic, advanced}: small fixes from
387 * THANKS: add some bug reporters.
389 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
391 * scm/define-context-properties.scm (all-user-translation-properties):
392 noteToFretFunction: Add.
394 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
395 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
397 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
399 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
402 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
403 Remove bashism in delete.
405 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
407 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
409 * scm/translation-functions.scm (determine-frets-mf): flatten let*
411 * scm/define-context-properties.scm
412 (all-user-translation-properties): add maximumFretStretch property.
414 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
416 * lily/source-file.cc (get_counts): use multibyte variable.
418 * scm/translation-functions.scm (determine-frets-mf): new
419 function: compute fret numbers.
421 * scm/output-lib.scm (string-frets->description) new function.
422 (fret-board::calc-stencil): new function
424 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
426 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
428 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
430 * lily/tab-note-heads-engraver.cc: cleanups.
432 * lily/fretboard-engraver.cc: new file
434 * ly/engraver-init.ly: add FretBoards context
436 2006-10-24 Joe Neeman <joeneeman@gmail.com>
438 * lily/grob.cc (pure_relative_y_coordinate)
439 (pure_height): use the new call_pure_function stuff
441 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
444 * lily/side-position-interface.cc (pure_y_aligned_side): add an
447 * lily/simple-closure.cc (ly_eval_simple_closure): make
448 simple-closure evaluatable from scheme
449 (evaluate_with_simple_closure): make simple-closures pure-
452 * lily/slur.cc (pure_outside_slur_callback): new function
454 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
455 fits in with previous changes that made the page forces much
458 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
459 and pure-Y-extent into this new function.
460 (pure-conversions-alist): add outside-slur-callback
462 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
464 * Documentation/user/advanced-notation.itely (Instrument names):
465 Remove obsolete bug workaround for instrument names on piano
468 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
470 * Documentation/user/lilypond-book.itely (Integrating DocBook and
471 music): patch by Bertalan Fodor for docbook.
473 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
474 of $(LILYPOND). Prevents lilypond run for .txt files.
476 * INSTALL.txt: gitness.
478 * .cvsignore: update to force gitness.
480 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
482 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
483 detect suicide in nested tuplets.
485 2006-10-23 Werner Lemberg <wl@gnu.org>
487 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
488 typo in argument to FT_Get_X11_Font_Format.
490 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
492 * stepmake/stepmake/po-vars.make: more gitness.
494 * flower/polynomial.cc (check_sol): no empty if bodies.
496 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
498 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
500 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
502 * Documentation/user/examples.itely (Transcription of mensural
503 music): Added more comments in .ly source. Suggest to remove
504 Forbid_line_break_engraver to allow line breaking at all bars.
506 * Documentation/user/instrument-notation.itely (Ancient
507 articulations): Updated @refbugs regarding episem.
509 * Documentation/user/instrument-notation.itely (Gregorian square
510 neumes ligatures): Added \augmentum dots. Updated @refbugs
511 regarding \augmentum.
513 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
515 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
518 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
521 * ly/gregorian-init.ly: Added \augmentum macro.
523 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
525 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
527 * lily/pango-font.cc (pango_item_string_stencil): use
528 FT_Get_X11_Font_Format()
530 2006-10-22 John Mandereau <john.mandereau@free.fr>
532 * po/fr.po: update translation.
534 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
536 * VERSION (PATCH_LEVEL): bump version
538 * input/regression/horizontal-bracket-break.ly: new file.
540 * scm/define-grobs.scm (all-grob-descriptions): calc
543 * lily/horizontal-bracket.cc (make_bracket): support
544 connect-to-neighbor. Fix #118
546 * VERSION: release 2.9.26-2
548 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
550 * VERSION (PACKAGE_NAME): release 2.9.26
552 * buildscripts/output-distance.py (test_basic_compare): add
554 (FileLink.multi_img_cell): new function, glob multi-page png
557 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
559 * po/lilypond.pot: update.
561 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
563 * Documentation/user/global.itely (File structure): remove
566 * lily/parser.yy (FIXME): remove ADDQUOTE
568 * Documentation/user/global.itely (Extracting fragments of
569 notation): new node, about clip systems.
571 * Documentation/user/lilypond-book.itely (Many quotes of a large
572 score): ref to clip systems.
574 * Documentation/user/instrument-notation.itely (Entering lyrics):
575 add note about lyric ties and required font.
577 * lily/open-type-font.cc (glyph_list): format errors.
579 * Documentation/user/programming-interface.itely (Scheme
580 procedures as properties): more doco on simple-closure and scheme
582 (Input variables and Scheme): use lilypond[verbatim], document
585 * Documentation/user/page.itely (Displaying spacing): use \book
586 explicitly, so arrows show .
587 (Line breaking): add note about Forbid_line_break_engraver
589 * Documentation/user/tweaks.itely (Common tweaks): also set length
590 to prevent tie squeezing.
591 (Default files): use @var{}
593 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
594 (Generating LilyPond files): add FOMUS.
596 2006-10-20 Joe Neeman <joeneeman@gmail.com>
598 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
599 Y-offset for TextScript and Script
601 * lily/text-engraver.cc (make_item):
602 * lily/script-engraver.cc (make_script_from_event):
603 remove call to Side_position_interface::set_axis since all scripts
604 now have this set by default
607 * lily/prob.cc: use variables
609 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
611 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
612 at typography, rather analyse stream event duration.
614 * Documentation/user/page.itely (Page formatting): set a6 paper
615 for system separator example.
617 * lily/arpeggio.cc (Module): idem.
619 * lily/accidental-placement.cc: add script-priority property.
621 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
623 * lily/ttf.cc (print_trailer): if all else fails: use
624 glyphIndexXXXX as glyph name. Fixes #117.
626 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
627 entry if cmap contains glyph.
628 (get_index_to_charcode_map): remove from Pango_font class, use
629 global filename -> font mapping.
630 (get_glyph_index_name): new function.
631 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
634 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
636 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
639 * scm/define-grob-properties.scm (all-user-grob-properties):
640 remove outdated doc. Fixes #116
642 * lily/completion-note-heads-engraver.cc (process_music): always
643 clone input events; otherwise we may overwrite input 'duration
644 property. Fixes #115.
646 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
649 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
652 * VERSION (PATCH_LEVEL): bump version.
654 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
656 * lily/engraver.cc (internal_make_grob): use variables.
658 * flower/string-convert.cc (dec2double): clean-up warnings.
660 * configure.in (CXXFLAGS): add -Werror.
662 * VERSION (PACKAGE_NAME): release 2.9.25
664 2006-10-18 Joe Neeman <joeneeman@gmail.com>
666 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
667 line even if we precede a forced break.
669 * lily/optimal-page-breaking.cc (try_page_spacing): square line
670 forces too. Make page-spacing weight default to 10 because the
671 changes to vertical springs decreased the page force/line force
672 proportions. Also, take the average of line force and page force
673 instead of just the sum.
675 * lily/constrained-breaking.cc (initialize): make the stiffness
676 of the vertical springs depend on the height of the system. This
677 prevents pages with only a few large systems from getting huge
680 * Documentation/user/page.itely (Page formatting): document the
681 change in default page-spacing-weight
683 * lily/include/constrained-breaking.hh: initialise bottom_padding_
685 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
687 * input/typography-demo.ly (melody): remove superfluous slur.
689 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
690 add piano-pedal-script-interface
692 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
694 * scripts/lilypond-book.py: DocBook support.
696 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
698 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
700 (stop_translation_timestep): set bound to currentMusicalColumn if
701 not set yet. Fixes #102
703 * lily/piano-pedal-bracket.cc: formatting.
705 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
707 * lily/piano-pedal-align-engraver.cc: new class
708 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
711 2006-10-18 Heikki Junes <hjunes@gmail.com>
713 * po/fi.po: Update Finnish translation (before the next release).
715 2006-10-17 Joe Neeman <joeneeman@gmail.com>
717 * lily/system.cc (get_paper_system): reinstate the backwards-
718 compatible page breaking for the old page breaker.
720 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
722 * lily/recording-group-engraver.cc: removed
724 * lily/context.cc, lily/translator-group.cc: Don't touch
725 Context::implementation_ if it's null
727 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
729 * scm/paper.scm: only use left-margin if defined.
731 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
733 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
735 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
736 strokeFingerOrientations
738 * lily/script-column.cc (row_before_line_breaking): also handle
739 accidentals and arpeggios in horizontal script stacking.
741 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
744 * input/regression/script-stack-horizontal.ly: trim.
746 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
748 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
751 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
752 'text if string argument.
754 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
756 * scm/define-context-properties.scm
757 (all-user-translation-properties): change to strokeFingerOrientations
759 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
761 * lily/parser.yy: remove debug output
763 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
765 * ly/paper-defaults.ly: set left/right margin.
767 * scm/paper.scm (set-paper-dimensions): use left-margin and
768 right-margin for computing linewidth.
770 * Documentation/topdocs/NEWS.tely (Top): idem.
772 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
775 * scm/define-markup-commands.scm (tied-lyric): increase negative
776 space: space syllables tighter.
778 * VERSION (PATCH_LEVEL): bump version.
780 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
783 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
785 * COPYING: further clarification
787 * VERSION: release 2.9.24
789 * input/regression/script-stack-horizontal.ly: add version.
791 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
793 * input/regression/lyric-tie.ly (texidoc): use different words.
795 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
797 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
799 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
800 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
802 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
804 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
806 * Doxyfile: remove file.
808 * scm/define-grob-interfaces.scm (string-finger-interface): add
809 string-finger-interface
811 * lily/general-scheme.cc (LY_DEFINE): move
812 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
814 * Documentation/topdocs/NEWS.tely (Top): add note for
815 string-finger feature.
817 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
820 * scm/output-lib.scm (string-finger::calc-text): read 'digit
823 * input/regression/script-stack-horizontal.ly: new file.
825 * ly/engraver-init.ly: add Script_row_engraver.
827 * lily/script-column.cc (order_grobs): refactor: separate axis
829 (row_before_line_breaking): new function.
831 * lily/script-row-engraver.cc (Script_row_engraver): new file.
833 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
835 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
837 * Documentation/user/instrument-notation.itely: Cleanup: Remove
838 annoying skip notes from mensural ligature example. Update
839 @refbugs for ligatures and mensural ligatures.
841 * lily/coherent-ligature-engraver.cc,
842 lily/include/coherent-ligature-engraver.hh,
843 lily/mensural-ligature-engraver.cc,
844 lily/vaticana-ligature-engraver.cc: Revise code for item
845 reparentizing. There should now be less programming_error
848 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
850 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
851 Maintenance bugfix: Don't create empty Stencil (), but empty box
852 instead. This fix should eliminate some programming_error
855 * ly/engraver-init.ly (MensuralStaff): Set default accidental
858 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
859 \layout block _before_ score.
861 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
863 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
865 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
867 2006-10-13 Erlend Aasland <erlenda@gmail.com>
869 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
871 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
873 * VERSION (PATCH_LEVEL): bump version.
875 * COPYING: clarify exception note.
877 * lily/main.cc: remove remark about "COPYING".
879 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
880 system-count starts at 0 for each clip-region. Change name to
881 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
882 layout block, per score.
884 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
886 * lily/input-smob.cc: add equal_p for Input
888 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
891 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
893 * lily/prob.cc: Add equal_p predicate for Prob
895 * lily/translator.cc: small cleanup
897 * scm/document-music.cc: use data from translator listener
898 registration to generate documentation for event classes
900 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
902 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
904 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
906 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
908 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
910 * Documentation/topdocs/INSTALL.texi: Thinko.
912 * .cvsignore: Update.
914 * lexer-gcc-3.1.sh: Remove.
916 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
917 Update anonymous cvs access. Remove comment about gcc 3.0.4.
919 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
921 * VERSION: release 2.9.23
923 * lily/paper-column-engraver.cc (stop_translation_timestep): also
926 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
928 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
930 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
932 * input/regression/clip-systems.ly (Notes): new file.
934 * scm/lily.scm (define-scheme-options): add clip-systems option.
936 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
938 (dump-stencil-as-EPS): move bbox calculation from previous
940 (output-framework): use -dclip-systems
942 * scm/lily-library.scm (filtered-map): new function
944 * scm/framework-ps.scm (clip-system-EPS): new function.
945 (clip-system-EPSes): new function.
947 * lily/paper-column.cc: add rhythmic-location to interface
949 * scm/define-grob-properties.scm (all-user-grob-properties): add
950 rhythmic-location property.
952 * scm/clip-region.scm: new file: rhythmic-location data type and
953 system-clipped-x-extent function.
955 * ly/init.ly: use (scm clip-region)
957 * lily/paper-column-engraver.cc (stop_translation_timestep): set
958 rhythmic-location for paper column grobs.
960 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
962 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
964 * ly/engraver-init.ly: Remove obsolete comment on
967 * Documentation/user/instrument-notation.itely: Tune Ancient
968 Articulations figure, such that the episem actually shows.
970 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
971 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
973 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
976 2006-10-12 Graham Percival <gpermus@gmail.com>
978 * Documentation/user/ {some}: minor edits that were lost somehow.
980 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
982 * VERSION (PACKAGE_NAME): bump version.
984 * input/regression/lyric-tie.ly (texidoc): new file.
986 * Documentation/topdocs/NEWS.tely (Top): add new feature.
988 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
990 * scm/define-markup-commands.scm (tied-lyric): new function: split
991 string along ~ and reattach with U+203F (tie character) and
994 * scm/output-lib.scm (lyric-text::calc-text): new function.
996 * lily/lyric-engraver.cc (process_music): don't set 'text.
998 * scm/output-lib.scm (string-finger::calc-text): new function
999 (lyric-text::print): new function.
1001 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1002 generic for fingering & string number. Use for string-finger.
1004 * scm/define-music-types.scm (music-descriptions): add
1007 * lily/fingering-engraver.cc (listen_string_finger): new function
1009 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1011 * scm/define-context-properties.scm
1012 (all-user-translation-properties): add stringFingerOrientations
1014 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1016 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1017 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1019 * lily/dots.cc: Added style property for dots.
1021 * mf/parmesan-heads.mf: Fix typo in comment.
1023 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1024 adding longa head to feta font and removing obsolete default
1025 mapping scheme code.
1027 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1029 * scm/output-lib.scm (fingering::calc-text): use origin
1030 event-property, not music-property.
1032 * lily/lilypond.rc.in: spell my name correctly.
1034 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1036 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1037 already have a non-empty extent. Fixes estimation for Hara-kiri
1040 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1042 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1045 * lily/ligature-engraver.cc: Remove unused #include.
1047 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1048 Bugfix: remove method check_for_prefix_loss(Item *) from global
1049 namespace to avoid namespace pollution.
1051 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1053 * VERSION: release 2.9.22
1055 * ly/generate-documentation.ly: update option name.
1057 * lily/dynamic-text-spanner.cc (print): revert fix.
1059 * scm/define-grob-interfaces.scm
1060 (trill-pitch-accidental-interface):
1061 add trill-pitch-accidental-interface
1063 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1064 dereference if it's really a duration.
1066 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1067 useBassFigureExtenders is not set.
1068 (listen_bass_figure): record as new event if
1069 useBassFigureExtenders not set. Fixes #103.
1071 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1072 instead: move circle. Fixes #107.
1074 * scm/define-grobs.scm (all-grob-descriptions): set
1075 allow-loose-spacing for PaperColumn and
1076 NonMusicalPaperColumn. Kludge for #110.
1078 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1080 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1081 allow-loose-spacing property.
1083 * scm/define-markup-commands.scm (postscript): gsave & grestore
1084 around embedded PS. Do setlinewidth too. Fixes #109.
1086 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1088 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1089 code. This patch fixes ligature brackets that were not at all
1092 2006-10-08 Graham Percival <gpermus@gmail.com>
1094 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1096 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1098 * scm/define-context-properties.scm: clarified docs (bug 91).
1100 * Documentation/user/basic-notation.itely: document volta brackets
1101 not aligning (bug 63).
1103 * Documentation/user/ global.itely invoking.itely: ignore or
1104 add warnings about texstr.
1106 2006-10-08 John Mandereau <john.mandereau@free.fr>
1108 * po/fr.po: update translation.
1110 * po/: update msgids.
1112 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1114 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1116 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1118 * Documentation/user/page.itely (Two-pass vertical spacing): add
1119 documentation for two-pass spacing technique.
1121 2006-10-06 Graham Percival <gpermus@gmail.com>
1123 * Documentation/user/convert-ly.txt: new file; new
1124 storage place for this file (moved from bugs/ CVS).
1126 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1128 * lily/note-head.cc: Fixed programming_error message.
1130 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1132 * scm/define-grobs.scm (pure-conversion): move pure-callback
1135 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1136 marcato, stopped, thumb.
1138 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1140 * lily/completion-note-heads-engraver.cc (process_music): don't
1141 skimp on memory usage.
1143 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1146 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1147 parenthesis item. This fixes premature Y-extent triggering. Fixes
1150 * VERSION (PATCH_LEVEL): bump version.
1152 2006-10-04 Graham Percival <gpermus@gmail.com>
1154 * Documentation/user/advanced-notation.itely: added
1155 info about instrument names for piano or other contexts,
1158 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1160 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1161 solfa_base_notewidth as unit for non-DO-notes too.
1163 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1165 * VERSION: release 2.9.21
1167 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1170 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1172 * python/lilylib.py (progress): Minor fix.
1174 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1176 * lily/note-name-engraver.cc: doc engraver.
1178 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1180 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1182 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1185 * lily/stem-engraver.cc (make_stem): don't set duration-log
1187 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1188 write snippet-names binary.
1190 * python/lilylib.py (system): use os.system for mingw32
1192 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1195 * scm/backend-library.scm: update email address.
1197 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1200 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1203 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1204 handle dot creation separately.
1206 * lily/tab-note-heads-engraver.cc (process_music): idem.
1208 * lily/drum-note-engraver.cc (process_music): idem.
1210 * lily/note-heads-engraver.cc (process_music): idem.
1212 * lily/rest-engraver.cc: don't set duration-log.
1214 * scm/output-lib.scm (string-number::calc-text): new function.
1215 (note-head::calc-duration-log): new function.
1217 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1219 * scm/output-lib.scm (fingering::calc-text): new function.
1221 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1223 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1224 and include-eps-font -> include-eps-fonts
1226 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1228 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1230 * lily/timing-translator.cc: list properties.
1231 (start_translation_timestep): update internalBarNumber too.
1233 * scm/define-context-properties.scm
1234 (all-user-translation-properties): add internalBarNumber.
1236 * input/regression/spacing-no-note.ly: new file.
1238 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1240 * lily/book.cc: #include cleanup.
1242 * lily/include/lily-guile-macros.hh: add assert to
1243 scm_or_str2symbol(SCM).
1245 * VERSION (PATCH_LEVEL): bump version.
1247 * lily/spacing-spanner.cc (musical_column_spacing): handle
1248 musical->nonmusical spacing case, where there is no spacing
1249 wish. Fixes issue #61.
1251 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1252 (pango_item_string_stencil): use logical rect horizontally (to
1253 preserve spaces), ink_rect vertically (for time signatures).
1255 * lily/font-metric.cc (word_stencil): new interface function
1257 * input/regression/utf-8-mixed-text.ly: new file.
1259 * lily/percent-repeat-engraver.cc (listen_percent): remove
1262 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1263 non-dynamic scripts. Fixes #30.
1265 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1267 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1269 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1270 SCM_UNDEFINED for non-existent data.
1272 * lily/side-position-interface.cc (general_side_position): allow
1273 optional current_offset argument for chaining, so combinations of side-position
1274 and outside slur callback don't add up. Fixes issue #92.
1276 * lily/pango-font.cc (pango_item_string_stencil): use
1277 logical_rect. This prevents spaces after words from disappearing,
1280 * VERSION: release 2.9.20
1282 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1284 * scm/define-grob-properties.scm (all-user-grob-properties):
1285 mention stencil as user settable.
1287 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1289 * Documentation/user/page.itely (Page formatting):
1290 document auto-first-page-number
1292 * lily/page-breaking.cc (find_chunks_and_breaks):
1293 * lily/paper-score.cc (calc_breaking): Follow changes to the
1294 Constrained_breaking interface
1296 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1297 here backwards, as an optimisation
1298 (initialize): new function; move most of the code in resize () here
1299 (combine_demerits): cache ragged_right_
1300 (Constrained_breaking): constructor now takes the Paper_score
1302 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1304 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1305 avoid parser lookahead for 0-ary functions.
1307 * lily/translator.cc: Extract event classes from
1308 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1310 2006-10-02 Heikki Junes <hjunes@gmail.com>
1312 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1315 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1317 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1318 function. Call the page breaking function selected in the
1319 `page-breaking' \paper variable, then the post processing function
1320 chosen using the `page-post-process' \paper variable.
1321 (line-height): new function. Return the height of a system.
1322 (line-minimum-position-on-page): new function. Return the position
1323 of a system on page (using the previous line position), only
1324 considering between system padding.
1325 (stretchable-line?): new function. Says whether a line can be
1326 stretched (ie. is not a title nor a single staff system).
1327 (page-maximum-space-left): new function. Computes space left on a
1328 page, when all systems are separated by their padding.
1330 * lily/page-breaking.cc (breaking::make_pages): Move page post
1331 processing function call to page breaking wrapper (common to all
1334 * lily/paper-book.cc (book::pages): call the page breaking
1335 wrapper, instead of the page breaker directly
1337 * ly/paper-defaults.ly: Add \paper variables for page breaking
1338 wrapper and page post processing function. Make
1339 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1340 `system-maximum-stretch-procedure' variable for holding a function
1341 computing the maximum stretch a system allows.
1343 * scm/layout-page-dump.scm (write-page-breaks): computes the
1344 stretch to apply to systems on a page to minimize left
1345 space. Dump this stretch length.
1347 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1348 the system-stretch property of the tweak data to stretch the
1350 (includePageLayoutFile): Void function which includes the
1351 generated page-layout file if it exists and if the page layout
1352 dumping is not asked.
1353 (scoreTweak): if the score tweak named by the argument exists,
1356 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1358 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1359 handle correctly the case where there are multiple \noPageBreaks
1362 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1364 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1366 * abc2ly.py fix so that entering " -- " will translate to a -- in
1367 the lilypond instead of a " - - "
1369 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1371 * lily/align-interface.cc: fix typo
1373 * lily/dynamic-text-spanner.cc (print): Add a special case for
1374 trill spanner right sides.
1376 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1378 * lily/align-interface.cc (get_extents_aligned_translates): add
1379 support for padding variable.
1381 * lily/break-align-interface.cc (self_align_callback): oops: use
1382 loop variable in guard.
1384 * input/regression/repeat-percent-grace.ly: new file.
1386 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1387 remember first currentCommandColumn of a grace run. Fixes issue 70.
1389 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1390 move class definition to CC file.
1392 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1394 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1395 measure-long repeats.
1397 * flower/include/international.hh: include stdarg.h
1399 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1401 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1402 put_systems_on_pages to return an empty result, we need to assign
1403 demerits properly in that case.
1404 (put_systems_on_pages): Make the number of pages depend on the
1405 evenness of page_number. Add auto-first-page-number.
1406 (calc_subproblem): ensure that the page-number is even for the
1407 left-hand page. Warn if the first page-turn doesn't fit onto the
1408 first (right-hand) page.
1410 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1411 (min_page_count): make this publicly accessible
1412 (min_page_count): fix a bug when there are forced page breaks that
1413 was introduced when I made this loop run backwards
1414 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1415 replace space_systems_on_min_pages with these two. The logic in
1416 space_systems_on_min_pages was getting too convoluted and is better
1417 contained in page-turn-page-breaking.
1419 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1421 (breakable_column): typo
1423 * lily/source-file.cc (get_line): fix off-by-one error
1424 and clean up some of the logic
1426 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1428 * lily/page-breaking.cc (make_pages): honour the first-page-number
1431 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1433 * VERSION (PACKAGE_NAME): bump version.
1435 2006-09-26 Pal Benko <benko.pal@gmail.com>
1437 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1438 (the latter is the same as petrucci-f which is kept for compatibility)
1440 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1442 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1444 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1446 * lily/global-context.cc (run_iterator_on_me): break out of loop
1447 if moment doesn't increase.
1449 * scm/define-grob-properties.scm (all-user-grob-properties): add
1452 * lily/accidental.cc (after_line_breaking): read forced property.
1454 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1457 * input/regression/accidental-forced-tie.ly: new file.
1459 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1461 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1463 * lily/figured-bass-engraver.cc: only listen to rest events if
1464 ignoreFiguredBassRest is not set.
1466 * scm/define-context-properties.scm
1467 (all-user-translation-properties): add ignoreFiguredBassRest property
1469 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1471 * lily/paper-book.cc (get_system_specs):
1472 (set_system_penalty): fix breakbefore.
1473 We used to set a penalty on the system after the break, now we
1474 set a permission on the system before the break
1476 * lily/grob-property.cc: add scm debugging hooks into
1477 property modification
1479 * lily/context-property.cc:
1481 rename make_foo_from_properties to internal_make_foo and
1482 move it from context-property.cc to a member function of
1485 * lily/include/lily-guile-macros.hh:
1486 overload ly_symbol2scm macro so that there is no more need
1489 * lily/volta-repeat-iterator.cc:
1490 * lily/tweak-engraver.cc:
1491 * lily/tuplet-bracket.cc:
1492 * lily/span-bar-engraver.cc:
1493 * lily/script-engraver.cc:
1494 * lily/prob-scheme.cc:
1495 * lily/pointer-group-interface.cc:
1497 * lily/grob-scheme.cc:
1498 * lily/grob-property.cc:
1500 * lily/context-property.cc:
1501 * lily/break-substitution.cc:
1502 * lily/break-align-engraver.cc:
1503 * lily/axis-group-interface.cc:
1504 * lily/align-interface.cc:
1505 remove calls to internal_FOO
1507 * lily/system-start-delimiter-engraver.cc:
1508 * lily/parenthesis-engraver.cc:
1509 * lily/accidental-engraver.cc:
1510 remove calls to make_foo_from_properties
1512 2006-09-23 Graham Percival <gpermus@gmail.com>
1514 * Documentation/user/programming-iterfaces.itely: fix
1515 def-music-function -> define-music... leftover.
1517 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1519 * lily/page-spacing.cc (min_page_count): by running the loop
1520 backwards, we can calculate ragged_last properly.
1522 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1524 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1525 printfirst-page-number -> print-first-page-number
1527 * python/convertrules.py: corresponding rule.
1529 * Documentation/user/page.itely (Page formatting): Document the
1530 default values of all page layout parameters.
1532 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1534 * lily/lexer.ll: remove limitation on music function arity. New
1535 mode extratoken, which inserts extra EXPECT_* tokens after
1536 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1538 * lily/parser.yy: Change grammar for music function accordingly.
1540 * lily/include/lily-parser.hh: New method get_state, new member
1541 hidden_state. Works around a problem when parser fetches
1542 MUSIC_FUNCTION token but not the following EXPECT_* token.
1544 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1547 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1548 references to Music; use ASSIGN_EVENT_ONCE everywhere
1550 * lily/grob-info.cc: junk *music_cause
1552 * lily/music.cc: copy eventified articulations to stream event
1554 * lily/part-combine-iterator.cc: Cleanup using enums
1556 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1559 * lily/include/engraver.hh: Junk music.hh include
1561 * lily/stream-event.cc: Changed constructors
1563 2006-09-21 Graham Percival <gpermus@gmail.com>
1565 * Documentation/user/tweaks.itely (Fitting music onto fewer
1566 pages): change settings to avoid warning messages.
1568 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1570 * Documentation/user/tweaks.itely (Fitting music onto fewer
1571 pages): Add between-system-space setting.
1573 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1575 * lily/accidental-placement.cc (calc_positioning_done): don't
1576 trigger Y-extent calculation too early. Use pure_height instead.
1578 * lily/scale.cc (LY_DEFINE): new file.
1580 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1582 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1583 that happen at the start of a score: having a zero-length
1584 chunk was messing up min_system_count calculations.
1586 * lily/source-file.cc (get_line): lower_bound, not
1587 binary_search. Fixes problem where point-and-click would
1588 always point to the first line.
1590 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1592 * lily/accidental-placement.cc (calc_positioning_done): also put
1593 stems into accidental support.
1595 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1598 * scm/script.scm (default-script-alist): avoid-slur and
1599 slur-padding for portato script.
1601 * lily/stem-tremolo.cc (translated_stencil): new function.
1602 (height): use new function. Fixes tremolos on whole notes.
1604 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1607 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1609 * scripts/abc2ly.py (try_parse_comment): idem.
1611 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1612 bar_string iso. string.find()
1616 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1619 2006-09-18 Graham Percival <gpermus@gmail.com>
1621 * Documentation/user/basic-notation.itely: add bug
1622 warning about ties and octavation/clef.
1624 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1626 * VERSION (PACKAGE_NAME): release 2.9.18
1628 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1630 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1631 figure out midi file names right here.
1633 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1635 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1637 * scm/backend-library.scm: option naming: gs-font-load*s*
1639 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1642 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1644 * scm/define-music-types.scm (music-descriptions): remove
1645 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1646 Music::to_event doesn't complain.
1648 * lily/accidental-placement.cc (ape_compare):
1649 * lily/semi-tie.cc (compare):
1650 * lily/note-column.cc (shift_compare): replace by XXX_less
1652 * lily/tie-formatting-problem.cc (set_chord_outline):
1653 * lily/tie-column.cc (calc_positioning_done):
1654 * lily/system.cc (post_processing)
1656 * lily/stem.cc (note_head_positions)
1657 (calc_positioning_done):
1658 * lily/spanner.cc (do_break_processing)
1659 (find_broken_piece):
1660 * lily/span-bar.cc (print):
1661 * lily/semi-tie-column.cc (calc_positioning_done):
1662 * lily/rest-collision.cc (calc_positioning_done):
1663 * lily/program-option.cc (get_help_string):
1664 * lily/note-collision.cc (get_clash_groups):
1665 * lily/new-fingering-engraver.cc (position_scripts):
1666 * lily/keyword.cc (Keyword_table):
1667 * lily/hara-kiri-group-spanner.cc (request_suicide):
1668 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1669 * lily/accidental-placement.cc (calc_positioning_done):
1671 * lily/beam.cc (get_beam_segments):
1672 * lily/grob-array.cc (remove_duplicates):
1675 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1676 ragged-last-bottom = ##f (test the new page breaker)
1678 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1680 * scm/define-context-properties.scm
1681 (all-internal-translation-properties): remove properties that
1682 were used to communicate page-turn stuff to the paper-column
1685 * lily/lily-guile.cc (robust_scm2string): new function
1687 * lily/paper-column-engraver.cc: Clean up page turn stuff
1689 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1690 instead of cluttering up paper-column-engraver.cc
1692 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1694 * scm/layout-page-dump.scm (scm): export utility function names,
1695 to allow user writing cutsom dumping functions.
1697 * scm/layout-page-layout.scm: export utility function names to
1698 enable custom page breaking function writing. Tabify.
1699 (line-next-space): use ?-suffix only for predicates
1700 (page-maximum-space-to-fill): new function. Return the space
1701 between first and bottom system of a page, to give to
1703 (space-systems): use a space-to-fill argument (for instance as
1704 computed by page-maximum-space-to-fill) instead of computing
1705 internaly this space with the page height. That way, the caller
1706 can adjust the space to use.
1707 (make-page-from-systems, walk-paths): compute space to fill before
1708 calling space-systems.
1710 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1712 * scm/script.scm (default-script-alist): set paddings for every
1713 type here, increase for portato mark.
1715 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1718 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1720 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1721 use spanner::set-spacing-rods
1723 * lily/note-column.cc: reformat.
1725 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1726 step positioning for note/rest combinations.
1728 * input/regression/rest-note-collision.ly: new file.
1730 * scm/define-grobs.scm (all-grob-descriptions): add
1733 * flower/include/std-vector.hh: switch off again.
1735 * VERSION (PATCH_LEVEL): bump to 2.9.18
1737 * flower/include/std-string.hh: idem.
1739 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1741 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1743 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1746 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1748 * Documentation/user/page.itely: update page breaking documentation
1750 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1752 * lily/note-collision.cc (calc_positioning_done): only access
1753 first head if available.
1755 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1757 * scm/framework-ps.scm (output-preview-framework): use new name.
1759 * lily/program-option.cc (internal_set_option): use new names.
1761 * Documentation/user/SConscript (lilypond_book_flags): update -d
1764 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1765 output into other programs): new variable names.
1767 * scm/lily.scm (define-scheme-options): uniformize var names.
1769 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1770 tuplets_ is non-empty before popping.
1772 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1774 * lily/spanner.cc (find_broken_piece):
1775 * lily/spacing-spanner.cc (get_columns):
1776 * lily/source-file.cc (get_line):
1777 * lily/simple-spacer.cc (get_column_description):
1778 * lily/keyword.cc (lookup):
1779 use the new binary search.
1781 * flower/include/std-vector.hh: replace binary_search with
1782 a more STL-like version
1784 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1786 * lily/tie-performer.cc: remove unused last_event_ property.
1787 (class Tie_performer): add now_tied_heads_ property for
1788 partially-tied heads.
1789 (acknowledge_audio_element): when adding an Audio_note, put the
1790 note in now_tied_heads_ if the audio note is partially tied.
1791 (stop_translation_timestep): always include entries in
1792 now_tied_heads_ in heads_to_tie_.
1794 * lily/drum-note-performer.cc (process_music): look for tie-events
1795 in the articulations; pass to Audio_note constructor.
1797 * lily/note-performer.cc (process_music): look for tie-events in
1798 the articulations; pass to Audio_note constructor.
1800 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1803 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1804 include initializer in constructor.
1806 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1808 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1809 unless they are breakable. This fixes discrepancies between the forces
1810 calculated here and the forces calculated in get_line_configuration.
1812 * lily/grob.cc (pure_relative_y_coordinate): fix some
1813 mis-estimation that was happening with piano staves.
1815 * lily/constrained-breaking.cc (resize): don't choke if we get a
1816 measure that won't fit on a line.
1817 (combine_demerits): don't consider uniformity when ragged
1819 * lily/page-spacing.cc (solve): why the f* were there two of these?
1820 (calc_subproblem): properly handle the case where a system is taller
1823 * lily/system.cc (get_paper_system): ensure that all the permissions
1824 and penalties are passed to the paper systems.
1826 * lily/page-breaking.cc (create_system_list): support system-count.
1828 * scm/define-grobs.scm (pure-print-callbacks): add
1829 ly:script-interface::print
1831 * lily/page-spacing.cc (min_page_count): fix calculation of min
1832 pages if we are ragged and there are non-zero springs.
1834 * scm/layout-page-layout.scm: if the pure-height estimates are under
1835 the real height, allow space-systems to ignore padding if it is
1836 needed in order to fit the systems on one page
1838 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1840 (solve): fix performance problem. Make sure we always get at least
1843 * lily/page-breaking.cc (make_pages): include write-page-breaks
1846 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1848 * scm/define-grobs.scm: add the new slur-callback
1849 fix pure-relevant to not exclude grobs whose extent is already
1852 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1855 * lily/slur.cc (pure_height): new callback to estimate the height
1858 2006-09-02 Graham Percival <gpermus@gmail.com>
1860 * Documentation/user/invoking.itely: small update on
1861 MacOS X notes; thanks Trevor!
1863 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1865 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1867 * lily/lexer.ll: accept EOF in all states.
1869 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1871 * lily/source-file.cc (Source_file): always 0-terminate character
1872 array, to prevent Flex from barfing.
1874 * lily/global-context.cc (get_output): robustness: don't crash if
1875 no Score context found.
1877 * lily/include/book.hh (class Book): idem.
1879 * lily/include/context-def.hh (struct Context_def): idem.
1881 * lily/include/score.hh (class Score): don't derive from Input.
1883 * lily/book.cc (Book): add a copy ctor.
1885 * buildscripts/output-distance.py (FileLink.calc_distance): count
1886 orphans in distance too.
1888 * python/midi.c (midi_parse_track): robustness: don't read past
1891 * ly/performer-init.ly: add Control_track_performer, move
1892 Tempo_performer and Time_signature_performer to Score.
1894 * lily/score-performer.cc (acknowledge_audio_elements): override
1895 from base class: add to audio-columns
1897 * lily/control-track-performer.cc (add_text): new file: generate
1900 * lily/performance.cc: move output_header_track to
1901 Control_track_performer ()
1903 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1905 * lily/include/midi-item.hh (class Midi_channel_item): insert
1906 class into hierarchy, for items that can have a channel setting. Dehungarify.
1908 * lily/include/performer.hh (class Performer): remove
1909 play_element(); move functionality into announce/acknowledge.
1911 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1913 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1914 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1916 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1918 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1921 * lily/all-font-metrics.cc: remove TFM support.
1923 * lily/include/tfm.hh: remove TFM support, TFM reader.
1925 * lily/include/binary-source-file.hh: remove Binary_source_file.
1927 2006-08-27 Graham Percival <gpermus@gmail.com>
1929 * Documentation/topdocs/NEWS.itely: add @c marker for
1930 stuff I've processed.
1932 * Documentation/user/ various: info from NEWS.
1934 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1936 * lily/paper-column-engraver.cc (finalize): Oops, this change
1937 should have gone in on 2006-08-23
1939 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1941 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1942 quotes to quote arguments. Fixes Windows problem.
1944 * python/lilylib.py (progress): idem
1946 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1948 * scripts/musicxml2ly.py: fix for importing
1949 minor key signatures from MusicXML. (Phillip Kirlin)
1951 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1953 * python/musicxml.py:
1954 (Attributes.get_key_signature): now correctly retrieves mode from
1957 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1959 * lily/parser.yy (output_def_body): take ownership of identifier
1962 * Documentation/user/advanced-notation.itely (Metronome marks):
1963 update use of \tempo in \midi.
1965 * VERSION: release 2.9.16
1967 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1969 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1972 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1974 * input/regression/tie-chord-partial.ly: clarify example.
1976 * scm/define-music-properties.scm (all-music-properties): remove
1979 * ly/music-functions-init.ly: remove \untied.
1981 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1982 stream events and music events.
1983 (stop_translation_timestep): search acknowledged heads for
1986 * input/regression/tie-chord-partial.ly: new file.
1988 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1989 for \char markup command.
1991 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1993 * scm/define-music-types.scm (music-descriptions): consistency:
1994 Use solo-{one,two}-event iso. solo-[12]-event.
1996 * lily/part-combine-engraver.cc (process_music):
1997 Use solo-{one,two}-event iso. solo-[12]-event.
1999 * ly/declarations-init.ly (partCombineListener): add Timing as
2002 * flower/std-string.cc (string_copy): use copy ()
2004 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2006 2006-08-24 Graham Percival <gpermus@gmail.com>
2008 * Documentation/user/changing-defaults.itely, global.itely,
2009 lilypond-book.itely, page.itely: minor changes from mailist.
2011 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2013 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2016 * scm/define-context-properties.scm
2017 (translator-property-description): robustness: detect type errors
2018 in property definitions.
2020 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2021 after getting it from SCM.
2023 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2026 * lily/include/performer.hh (class Performer): strip get_tempo()
2029 * lily/midi-def.cc: strip file.
2031 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2033 * lily/include/context-def.hh (struct Context_def): use
2034 VIRTUAL_COPY_CONSTRUCTOR().
2036 * lily/source-file.cc: smobification.
2038 * lily/include/source-file.hh (class Source_file): smobify
2039 Source_file. Trim redundant members.
2041 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2042 clones after creation. This plugs a huge memory leak.
2044 * python/convertrules.py (FatalConversionError.sub_tempo):
2045 complete rule for \midi{ \tempo }
2047 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2049 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2051 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2053 * input/regression/optimal-page-breaking-hstretch.ly: test for
2054 ragged-last-bottom also
2056 * lily/paper-column-engraver.cc (finalize): make the end of a score
2057 breakable by default. This is to balance out a change in behaviour
2058 of the page-turn-breaker which no longer makes the end of a score
2061 * lily/paper-book.cc (pages): set the systems_ once the pages are
2064 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2065 Page_breaking interface.
2067 * lily/page-breaking.cc (class Page_breaking): make the interface
2068 more consistent and provide abstractions for dealing with
2071 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2072 algorithm. Use the new interface to Page_breaking.
2074 * lily/page-spacing.cc: better support for ragged-bottom and
2077 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2079 * python/convertrules.py (conv): warning on \tempo{}
2081 * ly/performer-init.ly: set tempoWholesPerMinute.
2083 * ly/midi-init.ly: remove \midi
2085 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2088 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2089 tempoUnitDuration for determining what to print.
2091 * lily/lyric-extender.cc: typo.
2093 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2095 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2098 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2100 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2101 eps-pad-boxes is set.
2103 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2105 * THANKS: update sponsors.
2107 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2109 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2111 * input/regression/tie-chord-untied.ly: new file.
2113 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2115 * scm/define-music-properties.scm (all-music-properties): add
2118 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2120 (headertext_nopics): sanitize no-examples text.
2122 * scm/page.scm (make-page-stencil): don't rely on extents of
2123 page-stencil. This fixes spurious space around .EPS files produced
2124 with the EPS backend.
2126 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2128 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2130 * lily/hara-kiri-engraver.cc (process_music): remember
2131 keepAliveInterfaces after processing \set
2133 * lily/lyric-extender.cc (print): support left/right-padding for
2136 * scm/documentation-generate.scm (string-append): revert lilypond/
2139 2006-08-20 Graham Percival <gpermus@gmail.com>
2141 * Documentation/user/lilypond.tely: clarification to
2142 license presentation (not to actual license).
2144 * Documentation/user/basic-notation.itely,
2145 instrument-notation.itely: minor changes.
2147 * input/ {regression, test}/+.ly: clarification to
2148 text (you can click on examples). Thanks, Mats!
2150 * input/manual/bar-lines.ly: adds ||: repeats.
2152 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2154 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2156 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2158 * Documentation/user/lilypond.tely: strip lilypond/ from info
2159 links, rename to category LilyPond
2161 * lily/pango-font.cc (description_string): new function.
2163 * VERSION: release 2.9.15
2165 * lily/spacing-engraver.cc (stop_translation_timestep): use
2166 Dscho's fix for spacing spanner.
2168 * scm/define-music-types.scm (music-descriptions): use
2169 apply-output-event for ApplyOutputEvent
2171 * lily/output-property-engraver.cc (listen_apply_output): rename
2172 from listen_layout_instruction.
2174 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2177 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2179 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2180 commandline args with contains, split by \n.
2182 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2183 write snippet-names file, call with -dread-file-list. Fixes
2184 command limitations on 64-bit systems.
2186 * input/regression/stencil-color-rotation.ly: new file.
2188 * lily/include/translator.hh (struct Acknowledge_information):
2189 revert: don't use Protected_scm in global objects, as GUILE can't
2190 handle gc_unprotect from automated destructors on MacOS X.
2192 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2193 color, not the original stencil. Fixes combinations of
2194 color/transparency/rotation.
2196 * scripts/lilypond-book.py (main): add --formats=eps for
2199 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2200 crash if spacing_ is nonexistent.
2202 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2204 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2205 \catcode`\@=12 in the LaTeX output.
2207 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2209 * scm/define-music-types.scm (music-descriptions):
2210 use sustain-event iso. sustain-pedal-event.
2212 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2214 * scripts/convert-ly.py: honour the -n command-line switch
2216 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2218 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2219 break specification.
2221 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2223 * Documentation/user: convert-ly the user manual
2225 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2227 * stepmake/aclocal.m4: version check patch (thanks MWD)
2229 * ly/music-functions-init.ly: robustness. Don't crash if
2230 currentBarNumber is not a number.
2232 * VERSION (PATCH_LEVEL): bump.
2234 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2236 * stepmake/aclocal.m4: better version check; handle fooX.Y
2239 * ly/performer-init.ly: instrument name fixup.
2241 * input/manual/chord-names-jazz.ly (banterProperties):
2242 instrumentName update
2244 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2246 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2248 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2249 function. Use hash tables to check membership.
2251 * lily/general-scheme.cc (LY_DEFINE): new function.
2253 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2255 * lily/include/translator.hh (struct Acknowledge_information): add
2258 * ly/music-functions-init.ly: change name to BreathingEvent
2260 * input/regression/*.ly: apply it.
2262 * python/convertrules.py (conv): better instrumentName conversion
2265 * scm/define-music-types.scm (music-descriptions): add
2266 line-break-event to LineBreakEvent music
2268 * lily/music.cc (to_event): don't crash if music type not set.
2270 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2273 * lily/spacing-engraver.cc (stop_translation_timestep): set
2274 spacing for proportional notation too.
2276 * scm/translation-functions.scm (format-bass-figure): inspect
2279 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2281 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2283 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2285 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2287 * scm/layout-page-layout.scm (make-page-from-systems): new function
2288 (optimal-page-breaks): use the new page-breaking calling convention
2290 * scm/define-context-properties.scm (all-user-translation-properties):
2293 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2294 revokePageTurns functionality. If there is a special barline within
2295 the breakable region, break there instead of at the end of the region.
2297 * lily/paper-book.cc (pages): use the new page-breaking calling
2300 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2302 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2304 * scripts/lilypond-book.py: insert \sourcefileline command in
2305 output, so lilypond error messages refer to the spot in the
2306 original .lytex / .itely sourcefile.
2308 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2310 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2311 space to next column for distance to fixed col.
2313 * VERSION (PACKAGE_NAME): release 2.9.14
2315 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2318 * lily/accidental-engraver.cc (process_acknowledged): don't create
2319 accidental for trill span event. This fixes spurious accidentals
2322 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2324 * scm/define-grob-properties.scm (all-user-grob-properties):
2325 Clarify documentation of side-axis and direction. Thanks to Paul
2326 for the inspiration.
2328 * lily/bar-line.cc: Add documentation for "||:" also in the
2329 interface documentation.
2331 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2333 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2335 * lily/paper-column.cc (set_system): new function.
2337 * lily/spacing-engraver.cc (stop_translation_timestep): store
2338 SpacingSpanner refs in Paper_column.
2340 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2341 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2343 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2345 * lily/beam-engraver.cc (listen_beam): add method for
2346 Grace_beam_engraver too.
2348 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2350 * python/convertrules.py: Fix indentation bug that broke
2351 conversion of files older than 1.3.117.
2352 Fix escape error in the description for 2.9.6.
2354 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2356 * lily/*-engraver.cc: convert all try_music functions to listen_*
2359 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2360 enums to represent pedal types, and calculate more data statically.
2362 * scm/part-combiner.scm (recording-group-emulate): create a
2363 softcoded substitute for recording-group-engraver.cc.
2365 * lily/music.cc: make a common transpose function for events and
2368 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2369 ManualMelismaEvent, and obsoletes Melisma_translator.
2371 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2373 * input/test/instrument-name-align.ly: update version.
2375 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2377 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2378 Doc the --pdf flag to lilypond-book.
2380 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2382 * Documentation/topdocs/NEWS.tely (Top): add description.
2384 * input/regression/tuplet-full-length-note.ly: add file.
2386 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2387 always store axis group.
2389 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2391 * input/regression/instrument-switch.ly: new file.
2393 * lily/instrument-switch-engraver.cc (process_music): new file.
2395 * ly/engraver-init.ly: add Instrument_switch_engraver
2397 * ly/music-functions-init.ly: \instrumentSwitch
2399 * scm/define-context-properties.scm
2400 (all-user-translation-properties): add instrumentCueName
2402 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2404 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2406 * ly/music-functions-init.ly: music function \transposition.
2408 * lily/parser.yy (command_element): softcode \transposition.
2410 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2411 (process_music): oops.
2413 * lily/instrument-name-engraver.cc (start_spanner): new
2414 function. Create spanner when property changes.
2415 (stop_spanner): new function.
2417 * python/convertrules.py (conv): add rule.
2419 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2420 shortInstrumentName iso. instr.
2422 * scm/output-ps.scm (dashed-line): add phase argument to
2425 * lily/bar-line.cc (dashed_bar_line): new function.
2426 (compound_barline): support \bar "dashed".
2428 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2429 --output=DIR to DIR/BASE if it is a dir.
2431 * flower/file-name.cc (file_part): new function
2432 (dir_part): new function
2434 * lily/lily-parser-scheme.cc (LY_DEFINE):
2436 * DEDICATION: update
2438 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2440 * lily/instrument-name-engraver.cc: formatting.
2442 * python/convertrules.py (conv): bugfix for \epsfile.
2444 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2448 * lily/gourlay-breaking.cc: Oops, these should have been included
2451 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2453 * scripts/*.py (program_name): cleanup relocation snippets.
2455 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2457 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2459 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2460 page-breakable by default
2462 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2463 correctly calculated for a single-system page
2465 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2466 bigger than the second number
2468 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2469 acknowledge that we aren't satisfying constraints)
2471 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2474 * lily/grob.cc (pure_height): add minimum-Y-extent
2476 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2479 * lily/constrained-breaking.cc: convert code to use new Matrix class
2480 (get_best_solution): new function
2482 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2483 is a page with no systems
2485 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2487 * VERSION (PACKAGE_NAME): release 2.9.13
2489 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2492 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2494 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2496 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2499 * scm/define-grob-properties.scm (all-user-grob-properties):
2500 remove grace-space-factor.
2502 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2503 grace-spacing-interface
2504 (spacing-options-interface): add.
2506 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2508 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2510 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2511 GraceSpacing object.
2513 * lily/note-spacing.cc: fix prop list formatting
2515 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2516 beaming for grace notes too.
2518 * input/regression/spacing-grace.ly: update.
2520 * lily/grace-spacing-engraver.cc: new file.
2522 * lily/spacing-spanner.cc: add strict-grace-spacing.
2524 2006-07-20 Graham Percival <gpermus@gmail.com>
2526 * lily/parser.yy: compile fix.
2528 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2530 * scm/define-grobs.scm (all-grob-descriptions): typo.
2532 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2533 .eps extension from includegraphics.
2535 * scripts/lilypond-book.py (main): add support for --pdf.
2537 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2538 callback to compute common shortest duration.
2539 (set_springs): typo.
2541 * scm/define-grob-properties.scm (all-user-grob-properties): add
2542 strict-grace-spacing.
2544 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2545 support float_grace_columns_.
2547 * lily/spacing-options.cc (init_from_grob): new file.
2549 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2551 * input/regression/spacing-loose-grace.ly: new file.
2553 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2555 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2556 tupletFullLengthNote too. Choose right bound depending on value.
2558 * input/regression/tuplet-full-length-note.ly: new file.
2560 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2562 * lily/*-performer.cc: Converted try_music to listen_*
2564 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2565 as a stream-event internally. Introduce event_cause (), deprecate
2568 * scm/define-music-types.scm: Removed BusyPlayingEvent
2570 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2572 * Documentation/user/advanced-notation.itely (Font selection):
2573 Document how to get a list of available fonts using 'lilypond
2574 -dshow-available-fonts blabla'.
2576 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2578 * GNUmakefile.in: filter lily-XXX.pdf files.
2580 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2582 * scm/define-grob-properties.scm (all-internal-grob-properties):
2583 remove delta-pitch. Use delta-position everywhere.
2585 * scm/output-lib.scm (fall::print): use new order.
2587 * scm/output-ps.scm (path): reorder arguments.
2589 * scm/output-svg.scm (path): support for path primitive.
2591 * input/regression/bend-after.ly: new file.
2593 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2594 recipe for eps -> pdf conversion.
2596 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2598 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2601 2006-07-19 Graham Percival <gpermus@gmail.com>
2603 * input/manual/screech-boink.ly: moved to here.
2605 * input/screech-boink.ly: deleted.
2607 * scm/define-grob-properties.scm: clarify doc string.
2609 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2611 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2613 * scm/output-ps.scm (path): define path.
2615 * scm/define-stencil-commands.scm
2616 (ly:register-stencil-expression): add path.
2618 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2620 * ly/engraver-init.ly: add Fall_engraver
2622 * lily/parser.yy (music_function_event): allow musicfunction
2623 without music arg as music_function_event.
2625 * lily/grob-scheme.cc (LY_DEFINE):
2626 ly:grob-robust-relative-extent. New function.
2628 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2630 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2632 * scm/output-lib.scm (fall::print): new function
2634 * lily/fall-engraver.cc (stop_fall): new file.
2636 * ly/music-functions-init.ly: alphabetise.
2638 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2641 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2643 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2645 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2648 * lily/translator-group.cc (connect_to_context): non const error message.
2650 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2652 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2655 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2657 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2659 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2662 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2664 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2666 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2668 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2670 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2672 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2674 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2676 * scm/layout-page-layout.scm: Define module, tidy code, use more
2677 functions iso. a single big one.
2679 * scm/layout-page-dump.scm: move page dump functions used in two
2680 pass spacing to this file. Define module.
2682 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2685 * ly/paper-defaults.ly: use module layout-page-layout.
2687 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2689 * lily/music.cc: Revised MusicEvent event class. It now contains
2690 event data directly instead of encapsulating it in music. The
2691 previously used class is renamed to OldMusicEvent.
2693 * lily/stream-event.cc: Stream events are now probs.
2695 * lily/translator-group.cc, lily/translator.cc: Translators can
2696 now listen directly to stream events, by using macros
2697 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2699 * lily/arpeggio-engraver.cc: Converted to use new event system
2701 * THANKS: Corrected spelling mistake.
2703 2006-07-12 Graham Percival <gpermus@gmail.com>
2705 * Documentation/user/SConscript, make/lilypond-vars.make,
2706 input/GNUmakefile: doc build looks in input/manual instead
2709 * input/manual/ GNUmakefile, SConscript: build files for
2712 * input/test/ various: some files moved to input/manual/
2714 * Documentation/user/basic-notation.itely: small updates;
2715 thanks Kieren and Charles!
2717 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2719 * VERSION (PACKAGE_NAME): release 2.9.11
2721 * Documentation/topdocs/NEWS.tely (Top): update prop value
2723 * Documentation/user/basic-notation.itely (Tuplets): new property
2726 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2728 * python/convertrules.py (conv): tweaks.
2730 * VERSION (PATCH_LEVEL): bump version.
2732 * python/convertrules.py (conv): add rule for
2733 tupletNumberFormatFunction.
2735 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2736 tupletNumberFormatFunction.
2738 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2739 text through 'text callback.
2741 * lily/time-scaled-music-iterator.cc (construct_children): copy
2742 tweaks generated events.
2744 * scm/define-context-properties.scm
2745 (all-user-translation-properties): remove tupletNumberFormatFunction
2747 * lily/tuplet-engraver.cc (process_music): don't read
2748 tupletNumberFormatFunction
2750 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2753 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2755 * lily/global-context-scheme.cc: Separated ly:run-translator into
2758 * lily/score-engraver.cc, lily/score-performer.cc,
2759 scm/define-context-properties.scm: Make paper/midi output
2760 accessable as a context property.
2762 * lily/score-translator.cc, lily/score-context.cc: Removed.
2764 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2766 * scm/ps-to-png.scm (Module):
2767 * scm/framework-tex.scm (Module):
2768 * scm/framework-ps.scm (Module):
2769 * scm/backend-library.scm (Module):
2770 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2771 "dDEVICEHEIGHTPOINTS".
2773 2006-07-04 Graham Percival <gpermus@gmail.com>
2775 * Documentation/user/ various: general improvements to
2776 "working with lilypond files" section.
2778 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2780 * lily/sequential-iterator.cc: Change the default get_music_list
2781 to read elements-callback music property
2783 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2784 processing of multimeasure rests. Softcoded
2785 sequential-music-iterator.
2787 * lily/sequential-music-iterator.cc: Removed.
2789 2006-06-28 Graham Percival <gpermus@gmail.com>
2791 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2793 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2795 * lily/parser.yy: Wrap non-post-events in EventChords before
2796 assigning them to identifiers.
2798 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2800 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2801 gives correct vertical placement of \bar ":" in all staff
2802 sizes. Thanks Martial!
2804 2006-06-26 Graham Percival <gpermus@gmail.com>
2806 * Documentation/user/invoking.itely : minor update from mailist.
2808 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2810 * lily/ various: Introduce stream events of types Prepare,
2811 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2812 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2814 * lily/global-context*.cc: Time is now -inf before iteration
2817 * lily/include/context.hh: Removed unique_, init_
2819 * Documentation/topdocs/NEWS: Make the feathered beam example
2820 avoid triggering a bug.
2822 2006-06-24 Graham Percival <gpermus@gmail.com>
2824 * Documentation/user/ various: small additions from mailist.
2826 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2828 * ly/performer-init.ly: Add some missing links in the context
2829 hierarchy for MIDI output. There are probably some more missing!
2831 2006-06-21 Graham Percival <gpermus@gmail.com>
2833 * Documentation/user/ various: minor spelling fixes;
2834 thanks Dave Luttinen!
2836 * Documentation/user/ various: small clarifications;
2837 thanks Anthony Youngman!
2839 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2841 * po/fr.po: add \n appropriately.
2843 * lily/lexer.ll: remove ? from version-seen?
2845 2006-06-19 John Mandereau <john.mandereau@free.fr>
2847 * po/fr.po; update translation, by Jean-Charles Malahieude and
2850 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2852 * THANKS: add Markus Schneider.
2854 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2855 Staff_symbol_engraver
2857 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2858 replace staff_engraver
2860 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2863 * lily/staff-collecting-engraver.cc
2864 (acknowledge_end_staff_symbol): new function
2866 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2868 * lily/staff-collecting-engraver.cc
2869 (acknowledge_end_staff_symbol): new function.
2871 * lily/main.cc: switch on relocation by default.
2873 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2875 * lily/spacing-spanner.cc (musical_column_spacing): set
2876 compound_fixed_note_space to 0.0. Document why.
2878 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2879 range of inverse_hooke_
2880 (Simple_spacer): init completely.
2882 (get_line_configuration): don't use cols.resize(); it introduces
2885 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2887 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2889 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2890 try. Divide by beatlength.
2892 * input/regression/beaming-ternary-metrum.ly: update doc.
2893 add beatLength hack.
2895 * scm/music-functions.scm (make-time-signature-set): add
2896 standard-beat-grouping.
2898 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2900 * input/regression/tie-whole.ly: new file.
2902 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2903 cross center of note head in case of invisible stem.
2905 2006-06-16 Graham Percival <gpermus@gmail.com>
2907 * Documentation/user/ various: small fixes from mailist.
2909 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2911 * lily/breathing-sign.cc (offset_callback): idem.
2913 * lily/align-interface.cc (align_to_fixed_distance): remove
2916 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2919 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2921 * VERSION (PACKAGE_NAME): release 2.9.9
2923 * ly/lilypond-book-preamble.ly: add \version
2925 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2927 * scripts/lilypond-book.py (PREAMBLE_LY): include
2928 lilypond-book-preamble.ly
2930 * lily/stem.cc (get_beaming): return max of 0 and
2931 scm_ilength. Fixes slurring from/to beams.
2933 * ly/lilypond-book-preamble.ly: new file.
2935 * lily/slur.cc: add inspect-index feature.
2937 2006-06-13 Graham Percival <gpermus@gmail.com>
2939 * Documentation/user/tutorial.itely: trivial fix.
2941 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2943 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2944 all non-event music in the parser via MAKE_SYNTAX.
2946 * lily/parser-scheme.cc: Add ly:parser-error function
2948 * scm/paper.scm: fix typo
2950 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2954 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2957 * buildscripts/output-distance.py (test_compare_signatures):
2959 (read_signature_file): use new signature format.
2961 * scm/stencil.scm (write-system-signature): simpler signature
2964 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2967 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2968 stem_end_position, but estimate instead.
2970 * lily/tuplet-bracket.cc (calc_positions): look at
2971 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2972 brackets narrower than beams.
2974 * lily/lexer.ll: set version-seen? even if version is
2977 * lily/rest.cc (y_offset_callback): bugfix: decide position
2978 override based on scm_is_number(). Fixes \rest on center staff
2981 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2982 patterns for 16th triplets.
2984 2006-06-10 Graham Percival <gpermus@gmail.com>
2986 * Documentation/user/ page.itely, global.itely: editing
2989 * Documentation/user/ various: findex -> funindex.
2991 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2993 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2994 insert extra tuplet events.
2996 2006-06-10 Graham Percival <gpermus@gmail.com>
2998 * Documentation/user/programming-interfaces.itely: add
3001 * python/convertrules.py: add annotatefoo -> annotate-foo
3004 * Documentation/user/global.itely: start editing.
3006 * Documentation/user/page.itely: major editing, new spacing
3009 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3011 * scm/define-markup-commands.scm (wordwrap-markups): use
3012 output-def 'line-width if undefined.
3014 * HACKING: trim outdated info.
3016 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3018 * scm/define-grobs.scm (all-grob-descriptions): Add
3019 line-spanner-interface to all grobs that already have
3020 text-spanner-interface or dynamic-text-spanner-interface
3022 * scm/page.scm: Rename annotate{headers,systems,page}->
3025 * input/regression/page-spacing.ly,
3026 input/regression/page-layout-manual-position.ly: idem
3028 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3030 * lily/line-spanner.cc: cleanup property list.
3032 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3033 generator expressions (2.3 compat).
3035 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3037 * lily/vertical-align-engraver.cc: Make sure that the
3038 align{Above,Below}Context properties are included in the automatic
3041 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3043 * scm/paper-system.scm (paper-system-annotate): also annotate the
3044 estimated pure-Y-extent
3046 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3048 * lily/system.cc (break_into_pieces): set the estimated height
3049 of each child system
3051 * lily/stem.cc (pure_height): new pure-Y-extent callback
3053 * lily/staff-symbol-referencer.cc (callback): don't destroy
3054 the staff-position property
3056 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3057 consider_suicide into two functions
3059 * lily/constrained-breaking.cc (resize): use the new pure
3060 callbacks to estimate the height of a system
3062 * lily/axis-group-interface.cc (pure_group_height): new
3063 side-effect-free VerticalAxisGroup height-callback
3065 * lily/align-interface.cc (get_extents_aligned_translates):
3066 split align_elements_to_extents into two functions
3067 (get_pure_child_y_translation): new function
3069 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3071 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3073 * lily/paper-score.cc: cache break_indices and columns
3075 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3077 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3079 * lily/font-config.cc (init_fontconfig): do the init if
3080 cache_file, but don't look at cache_file.
3082 * input/regression/quote-tie.ly: new file.
3084 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3085 to Head_event_tuple, so we deal gracefully with ties on
3088 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3091 2006-06-08 Graham Percival <gpermus@gmail.com>
3093 * input/test/ smart-transpose.ly, reverse-music.ly:
3094 \applyMusic to music functions update, thanks Michael!
3096 2006-06-07 Graham Percival <gpermus@gmail.com>
3098 * input/test/ add-staccato.ly, add-text-script.ly,
3099 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3100 music functions update, thanks to Michael Meixner.
3102 * Documentation/user/music-glossary.tely: small fix
3105 * Documentation/user/ various: minor additions from mailist.
3107 * Documentation/user/lilypond.tely, basic-notation.itely:
3108 small test of @funindex. (works here)
3110 * input/test/font-table.ly: reduce size to partially
3111 de-ugly version in manual.
3113 * Documentation/user/page.itely: new file (split former
3114 "global issues" into "page settings" and "non-musical
3117 * Documentation/user/ various: fix @ref{}s to match
3118 new chapter names (above).
3120 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3122 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3124 2006-06-06 Graham Percival <gpermus@gmail.com>
3126 * Documentation/user/advanced-notation.itely: add example
3127 for segno/coda on barline.
3129 * tex/texinfo.tex: merge from upstream.
3131 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3133 * scripts/lilypond-book.py (process_snippets): Argument fix.
3136 * buildscripts/builder.py:
3139 * Documentation/user/SConscript: More SCons fixes.
3141 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3143 * lily/font-config.cc (init_fontconfig): Only initialize if
3144 global cache_file is found.
3146 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3148 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3151 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3153 * VERSION (PACKAGE_NAME): release 2.9.8
3155 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3156 function. Delay ledger modifying ledgered grobs to
3157 stop_translation_timestep(), to ensure that we're ledgering
3158 according to the new spanner.
3159 (acknowledge_staff_symbol): don't check for non-NULL
3160 staff_sym->get_bound()
3162 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3165 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3168 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3169 directly from srcdir/stepmake/aclocal.m4
3171 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3174 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3176 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3178 * lily/simple-spacer.cc (get_line_configuration): add
3179 keep-inside-line rods
3180 (struct Column_desc): add constructor
3181 (struct Rod_desc): add constructor
3182 (get_line_forces): check for forced page breaks here too
3184 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3185 support/elements cycles between InstrumentNames and AxisGroups
3187 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3189 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3191 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3192 make-txt-files target.
3194 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3195 make-txt-files target.
3197 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3199 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3202 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3204 * Documentation/user/instrument-notation.itely,
3205 input/regression/breathing-sign-ancient.ly,
3206 input/test/divisiones.ly: Removed redundant property settings for
3209 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3210 fix lyrics alignment problems. They are implemented now as scheme
3211 functions that add the appropriate unicode char to the first lyric
3212 event rather than adding a separate lyric event. Minor edit of
3215 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3217 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3218 pollute src dir with built .txt files, but install directly from
3219 Documentation/topdocs/out/
3221 * buildscripts/output-distance.py
3222 (ComparisonData.create_html_result_page): put version/directories
3225 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3228 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3229 Patch by Karl Hammar
3231 * buildscripts/readlink.py: add file.
3232 Patch by Karl Hammar
3234 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3236 * lily/tuplet-number.cc (print): prevent stencil from being
3239 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3241 * scm/stencil.scm (write-system-signature): explicitly
3242 -well, superfluously- close output port.
3244 * buildscripts/output-distance.py (main): oops. Add extra argument.
3246 2006-06-05 Graham Percival <gpermus@gmail.com>
3248 * Documentation/user/music-glossary.tely: clarified example
3249 from Francisco Vila, thanks!
3251 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3253 * input/regression/spacing-section.ly: new file.
3255 * lily/input.cc (programming_error): new function.
3257 * lily/spacing-engraver.cc (try_music): new function. Accept
3258 spacing-section-event
3260 * lily/spacing-spanner.cc (set_springs): take slices of all
3261 columns for spacing.
3263 * lily/include/paper-column.hh (class Paper_column): add
3264 Paper_column::compare.
3266 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3268 * scm/define-music-types.scm (music-descriptions): add
3271 * lily/music-iterator.cc (report_event): use programming_error for
3272 sending non-event error.
3274 * lily/input.cc (programming_error): new function
3276 * buildscripts/output-distance.py (main): use compare-XXX for
3278 (main): --threshold option, default at 0.30
3280 * output-distance.py (main): add --threshold option.
3282 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3284 * scm/paper-system.scm (paper-system-annotate): fix problem when
3285 annotating an empty system
3287 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3289 * GNUmakefile.in: reinstate old web tar/copying.
3291 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3293 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3294 nothing changes. (Erik S)
3296 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3299 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3301 * scm/define-markup-commands.scm (whiteout): do not force
3302 foreground color of argument markup to black.
3304 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3305 the left of the arrow, instead of below the arrow name, so that,
3306 when two little arrows are vertically stacked, their dimensions
3307 and name should not overlap. Add a color key parameter.
3309 * scm/paper-system.scm (paper-system-annotate): Annotate
3310 next-space+next-padding instead of next-space. Annotate space
3311 between next-padding and next-space+padding, respectively, and
3312 following system extent and refpoint-Y-extent. Use colors.
3314 * scm/page.scm (annotate-page): translate annotations slightly to
3317 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3319 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3320 fix for x-staff slurs. Thanks Joe!
3322 * buildscripts/output-distance.py
3323 (SystemLink.output_expression_change_count): keep track of changed
3324 details, and dump in details html page.
3326 * input/regression/figured-bass-staff.ly: add note about setting
3327 properties in Staff context.
3329 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3330 add slurs and ties to support too.
3332 * buildscripts/output-distance.py (main): set dest_dir
3333 argument. Add --max-count option.
3335 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3337 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3338 shortcuts for special unicode chars that are useful in chant
3339 notation. Revised exisiting and added new comments.
3341 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3343 * make/mutopia-rules.make: remove duplicate recipe.
3345 2006-06-02 Werner Lemberg <wl@gnu.org>
3347 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3348 Add support for U+0132 (IJ) and U+0133 (ij).
3350 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3352 * buildscripts/output-distance.py (FileLink): new class. collect
3353 info systems from one .ly file.
3354 (FileLink.link_files_for_html): further tweaks.
3356 2006-06-02 Graham Percival <gpermus@gmail.com>
3358 * tex/texinfo.tex: partial fix for @funindex.
3360 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3363 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3365 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3367 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3368 @example too. Backportme.
3370 2006-06-02 Graham Percival <gpermus@gmail.com>
3372 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3373 from Werner Lemberg.
3375 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3377 * Documentation/user/music-glossary.tely: additional spanish
3378 updates and a lyrics fix in an example.
3380 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3382 * scm/define-grob-properties.scm: Previous patch contained
3383 spurious line from another patch not yet committed. Fixed.
3385 * scm/define-grob-properties.scm: Add missing doc strings for
3388 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3390 * buildscripts/output-distance.py
3391 (ComparisonData.write_text_result_page): separate the scores, sort
3394 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3397 * buildscripts/output-distance.py (me_path): use argv[0] for
3399 (ComparisonData.img_cell): use colored borders.
3401 * scm/stencil.scm (write-system-signature): escape newlines too.
3402 (write-system-signature): use (1,-1) interval for empty interval
3404 2006-01-01 Graham Percival <gpermus@gmail.com>
3406 * Documentation/user/music-glossary.tely: Spanish updates
3407 from Francisco Vila.
3409 * Documentation/user/lilypond-book.itely: addition from
3412 * Documentation/user/ various: edits, small additions
3415 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3417 * GNUmakefile.in (tree-lib-prefix-current):
3418 (tree-share-prefix-current): Use version number in tree, add
3421 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3423 * GNUmakefile.in: write VERSION, again.
3425 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3426 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3428 * stepmake/aclocal.m4: robuster version detection.
3430 * buildscripts/output-distance.py
3431 (ComparisonData.create_html_result_page): copy only if file
3432 exists, fixup src paths.
3434 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3436 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3438 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3439 Another datarootdir reto.
3441 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3442 available. This should be moved to postinstall-lilypond-doc.
3444 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3446 * GNUmakefile.in: simplify local-WWW-post.
3447 remove -type l from find.
3449 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3450 fixes. Don't follow symlinks.
3451 (ComparisonData.create_html_result_page): remove previous results.
3452 insert ../python in path.
3454 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3456 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3458 * config.make.in (datadir): Add datarootdir to silence autoconf.
3460 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3462 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3464 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3466 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3467 slash beams too wide.
3469 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3471 * VERSION: release 2.9.7
3473 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3475 * lily/relocate.cc (read_relocation_dir): Do not blindly
3478 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3480 * lily/parser.yy: replace THIS by PARSER
3482 * Documentation/index.html.in: add link to test-results.html page.
3484 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3486 * scm/translation-functions.scm (format-bass-figure): translate
3487 digits over 10 to the left
3489 * scm/define-markup-commands.scm (translate-scaled): new markup.
3491 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3494 * ly/engraver-init.ly: add Figured_bass_engraver
3496 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3498 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3500 * lily/score-engraver.cc (announce_grob): only note START announces.
3502 * lily/include/engraver-group.hh (Translator_group):
3503 acknowledge_hash_table_ is now drul.
3505 * lily/engraver.cc (announce_end_grob): new method.
3507 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3509 * lily/translator-dispatch-list.cc (create): take start_end argument.
3511 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3512 acknowledge_static_array_ to drul
3514 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3516 * scm/define-grob-interfaces.scm
3517 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3519 * scm/define-grobs.scm (all-grob-descriptions): add
3520 BassFigureAlignmentPositioning
3522 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3523 number stays up to date. Backportme.
3525 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3527 * Documentation/user/basic-notation.itely (Bar lines): Document
3530 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3532 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3534 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3535 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3538 * Resurrect `scons lily' build.
3540 * SConstruct (symlink_tree): Bugfix: link
3541 music-drawing-routines.ps to file iso directory.
3543 * lily/SConscript: Remove kpath-guile from LIBS.
3545 * SConstruct (libdir_package_version): Typo.
3546 (configure): Comment-out fontforge for lack of fontforge.pc .
3547 Also add libdir* to environment.
3549 2006-05-30 Graham Percival <gpermus@gmail.com>
3551 * Documentation/user/ various: minor additions from mailist and
3554 2006-05-30 Paco <fravd@ya.com>
3556 * Documentation/user/music-glossary.tely: numerous corrections and
3557 some new translations.
3559 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3563 * buildscripts/output-distance.py
3564 (ComparisonData.create_html_result_page): new routine: summarise
3565 results in HTML page with images.
3566 (ComparisonData.create_text_result_page): create summary text files too.
3568 * GNUmakefile.in (web-ext): package .signature files too. They
3571 * scm/stencil.scm (write-system-signature): typo.
3573 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3575 * scm/stencil.scm (write-system-signature): better escaping.
3576 only write signature for music systems, not for markup systems.
3578 * scm/framework-ps.scm (output-framework): dump-signatures support
3581 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3583 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3584 for -dno-point-and-click
3586 * lily/grob.cc (get_print_stencil): don't read
3587 point_and_click_global to determine whether to set grob-cause.
3589 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3591 * buildscripts/output-distance.py (main): new function.
3592 (ComparisonData): new class.
3594 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3595 careful with generating new LedgerLineSpanners.
3597 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3599 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3600 context. This fixes double ledger lines in output.
3602 * lily/system.cc (get_paper_system): remove 3 layer limit.
3604 * buildscripts/output-distance.py (SystemLink.distance): new
3605 file. Compare signatures.
3607 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3609 * lily/grob-array.cc (remove_duplicates): rename from
3610 uniq(). Sort before calling uniq() so it actually works.
3612 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3614 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3615 \version from lilypond file snippet.
3616 (Lilypond_file_snippet.ly): oops. typo.
3617 (find_toplevel_snippets): urgh. again.
3619 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3620 prevent duplicated broken items in output.
3622 * scm/framework-eps.scm (output-classic-framework): only dump if
3623 dump-signatures is set.
3625 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3627 * scm/stencil.scm (write-system-signature): new routine: write
3628 python parseable signature of a separate paper system.
3631 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3633 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3637 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3639 * translator-group.cc: send music events to engravers in
3640 non-bottom contexts.
3642 * tuplet-engraver.cc: process tuplet brackets in correct order.
3644 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3646 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3647 arg 2 might point us to a new binary (patch by Karl Hammar)
3649 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3651 * VERSION (PACKAGE_NAME): release 2.9.6
3653 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3655 * Documentation/user/*.itely: 2nd
3656 attempt: replace funindex -> findex globally.
3658 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3660 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3661 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3663 * scm/define-music-display-methods.scm: display methods for
3664 breaks. Fix \applyOutput.
3666 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3668 * Documentation/user/macros.itexi: comment out funindex expansion.
3670 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3673 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3674 Karl Hammar. Backportme.
3676 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3678 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3680 * Documentation/user/programming-interface.itely (Running a
3681 function on all layout objects): idem.
3683 * Documentation/user/introduction.itely (Automated engraving):
3684 update \applyOutput syntax
3686 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3687 remove debugging hook.
3689 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3692 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3694 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3695 TEXI2DVI_FLAGS to texi2dvi invocation.
3697 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3699 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3700 works. More work is done by iterator now, and engraver has been
3701 very much simplified.
3703 * lily/translator-group.cc: try_music is now invoked through a
3706 * lily/*-iterator.cc: Massive cleanups. Junked
3707 try_music_in_children globally. Renamed try_music to report_event,
3708 and made that method descend to a bottom context automatically.
3710 * lily/event-iterator.cc: New file.
3712 * lily/output-property-iterator.cc,
3713 lily/old-lyric-combine-music-iterator.cc: Removed.
3715 * python/convert-rules.py: Modified the syntax for \applyOutput.
3717 2006-05-23 Graham Percival <gpermus@gmail.com>
3719 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3722 * Documentation/user/ various: stuff that might have helped
3723 to fix the pdf creation, plus some minor doc additions.
3725 * Documentation/user/changing-defaults.itely: remove @b from
3726 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3728 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3730 * lily/beaming-pattern.cc (beamify): deal with negative start
3731 moments for beaming patterns.
3733 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3735 * lily/beaming-info.cc (beamify): new function: read beatLength
3736 and beatGrouping from context.
3738 * input/regression/beam-beat-grouping.ly (Module): new file.
3740 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3742 * lily/beam.cc (get_beam_segments): generate events for
3743 max_connect_ case too.
3744 (get_beam_segments): read Stem::max-beam-connect.
3746 * input/regression/beam-single-stem.ly: new file.
3748 * lily/stem.cc (set_beaming): use #f as signaling value for
3751 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3753 * lily/beam.cc (set_beaming): read clip-edges property.
3754 (calc_direction): don't suicide for single stem.
3756 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3757 argument, remove 1<<15 hack. Remove clip_edges()
3759 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3761 2006-05-21 Graham Percival <gpermus@gmail.com>
3763 * Documentation/user/basic-notation.itely: reorg.
3765 * Documentation/user/ various: minor fixes.
3767 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3769 * lily/stencil-expression.cc (register_stencil_head): opps, append
3770 to cdr of static SCM object.
3772 2006-05-19 Graham Percival <gpermus@gmail.com>
3774 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3775 update framework for command index. DOC WRITERS: use @funindex
3776 instead of @cindex @code{}.
3778 * Documentation/user/ various: replace @cindex @code{} => @funindex
3780 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3782 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3783 case positions is set manually.
3785 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3787 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3790 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3792 * Documentation/user/changing-defaults.itely (Contexts explained):
3793 use absolute dimension for @image.
3795 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3796 out image for illustration too.
3797 ($(outdir)/%.png): add more png <-> eps rules.
3799 2006-05-17 Graham Percival <gpermus@gmail.com>
3801 * Documentation/user/ various: remove trailing whitespace, cosmetic
3802 change to reduce changes produced by diff.
3804 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3806 * lily/main.cc (do_chroot_jail): correctness tweak.
3808 * python/lilylib.py (system): import subprocess in system () only.
3810 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3812 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3813 variable. Backportme.
3815 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3817 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3819 2006-05-17 Werner Lemberg <wl@gnu.org>
3821 * lily/lexer.ll (init_signature_has_table): Add
3822 `scm-scm-music-music'.
3824 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3825 (Generic_prefix_music_scm): Add rule for it.
3827 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3828 `quoted-transposition' property.
3830 * ly/music-functions-init.ly (transposedCueDuring): New function.
3832 * scm/define-music-properties.scm (all-music-properties): Updated.
3834 * Documenation/topdocs/NEWS.itely: Document it.
3836 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3838 * python/lilylib.py (system): move import subprocess to system()
3841 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3843 * VERSION (PATCH_LEVEL): release 2.9.5
3845 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3848 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3850 2006-05-16 Graham Percival <gpermus@gmail.com>
3852 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3854 * Documentation/user/ various: minor fixes.
3856 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3858 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3860 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3862 * Documentation/user/advanced-notation.itely (Instrument names):
3863 Modified obsolete instruction on how to move instrument names away
3864 from the staves. Hmm, at second thought the bug probably has been
3865 solved, so the full bug description should probably be removed.
3867 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3869 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3870 currentCommandColumn.
3872 * lily/hairpin.cc (print): also add padding for non-neighbor
3875 * scm/define-context-properties.scm
3876 (all-user-translation-properties): add hairpinToBarline
3878 * input/regression/hairpin-to-barline.ly: new file.
3880 * lily/context.cc (internal_send_stream_event): thinko fix.
3882 * lily/tie.cc (set_default_control_points): robustness fix.
3884 * python/musicxml.py (Part.interpret): don't complain about
3885 incomplete measures.
3887 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3888 new music if last_event_chord() returned None.
3890 * python/musicxml.py (Part.interpret): skip back over chord notes.
3892 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3894 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3895 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3896 lily/slash-repeat-engraver.cc,
3897 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3898 iterator sends PercentEvents
3900 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3901 rework tuplets: send start/stop events to engraver
3903 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3904 dispatchers event-source and events-below to Context
3906 2006-05-15 Graham Percival <gpermus@gmail.com>
3908 * Documentation/user/README.txt: update info for doc writers.
3910 * Documentation/user/programming-interface.itely: integrate
3911 Nicolas' fixes for chapter rewrite.
3913 * Documentation/user/ various: minor fixes.
3915 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3917 * lily/clef-engraver.cc: cleanup.
3919 * Documentation/user/GNUmakefile: dist context-example.eps too.
3921 * lily/key-engraver.cc (create_key): use
3922 explicitKeySignatureVisibility for cancellation too.
3924 * lily/font-config.cc (init_fontconfig): don't close file if
3927 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3929 * Documentation/topdocs/NEWS.tely: niente and rotation news
3931 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3933 * lily/include/stencil.hh
3934 * lily/stencil.cc (rotate): new function. Makes it possible
3935 to rotate a stencil around a given offset.
3937 * lily/grob.cc (get_print_stencil): add rotation support
3939 * lily/stencil-interpret.cc (interpret_stencil_expression):
3940 add rotation support
3942 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3944 * scm/define-grob-properties.scm: add 'rotation property
3946 * scm/define-markup-commands.scm: add rotate markup command
3948 * scm/output-ps.scm: add rotation support in PostScript backend
3950 * scm/output-svg.scm: add rotation support in SVG backend
3952 2006-05-13 Graham Percival <gpermus@gmail.com>
3954 * Documentation/user/music-glossary.itely: French correction.
3956 * Documentation/user/programming-interface.itely: major
3957 new docs, some reorg, some info from Nicolas.
3959 * Documentation/user/ various: small fixes.
3961 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3963 * Documentation/user/programming-interface.itely (Markup
3964 programmer interface): Remove duplicate text.
3966 2006-05-12 Graham Percival <gpermus@gmail.com>
3968 * Documentation/user/context-example.eps: new file.
3970 * Documentation/user/changing-defaults.itely: set up file to
3973 * Documentation/user/programming-interface.itely: changes
3976 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3978 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3980 2006-05-11 Graham Percival <gpermus@gmail.com>
3982 * Documentation/user/programming-interface.itely: first round of
3983 editing and merging emails from Nicolas.
3985 * Documentation/user/scheme-tutorial: minor edit.
3987 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3989 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3991 (Xml_node.message): use it.
3993 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3994 oops. Add duration argument.
3996 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3998 * lily/paper-column-engraver.cc (make_columns):
3999 * scm/define-grobs.scm: Revert my previous change and set the default
4000 in define-grobs.scm instead.
4002 2006-05-09 Graham Percival <gpermus@gmail.com>
4004 * Documentation/user/changing-defaults.itely: general editing,
4005 info about \set and \override.
4007 * Documentation/user/tweaking.itely, advanced-notation.itely:
4008 fixes from Dave Luttinen, thanks!
4010 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4012 * lily/paper-column-engraver.cc (make_columns): By default, a column
4013 needs to be breakable.
4015 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4017 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4019 (musicxml_time_to_lily): idem
4020 (musicxml_key_to_lily): idem
4021 (instrument_drumtype_dict): dict for supported drumtypes.
4022 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4023 moments and pending mm rests
4024 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4025 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4026 (musicxml_voice_to_lily_voice): add mode change.
4027 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4028 speed and less memory usage (factor 5 to 10).
4029 (convert): write -defs.ly and driver file separately so people
4030 can script their own part extraction.
4032 * python/musicxml.py (minidom_demarshal_node): new function:
4033 separate minidom handling.
4034 (lxml_demarshal_node): new function: support lxml.etree too.
4035 (Xml_node.message): new function: verbose error message, with XML
4036 path to offending node.
4037 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4038 (Part_list.generate_id_instrument_dict): new method: collect
4039 instrument names, to be able to set drum_type.
4040 (Part.interpret): handle underfull measures
4041 (Part.interpret): assign instrument names.
4043 * python/musicexp.py (Output_printer.close): new method
4044 (MusicWrapper.print_ly): new class: support other modes,
4046 (BarCheck.print_ly): new class. Support bar checks, with comments
4047 and fancy barchecks.
4048 (NoteEvent.__init__): also set drum_type for drum notes.
4049 (MultiMeasureRest.lisp_expression): dump mm rests.
4051 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4052 line-break-permission if forbidBreak is not set.
4054 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4056 * scm/define-context-properties.scm:
4057 * scm/define-grob-properties.scm:
4058 * scm/define-grobs.scm:
4059 * scm/define-music-display-methods.scm:
4060 * scm/define-music-properties.scm:
4061 * scm/define-music-types.scm:
4062 * scm/music-functions.scm:
4063 * ly/declarations-init.ly:
4064 * lily/include/constrained-breaking.hh:
4066 * lily/spaceable-grob.cc:
4067 * lily/simple-spacer.cc:
4068 * lily/paper-score.cc:
4069 * lily/paper-column.cc:
4070 * lily/paper-column-engraver.cc:
4072 * lily/gourlay-breaking.cc:
4073 * lily/constrained-breaking.cc:
4074 * python/convertrules.py:
4075 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4076 "page-break-penalty" and "line-break-permission".
4077 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4078 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4080 * lily/bar-engraver.cc:
4081 * lily/beam-engraver.cc:
4082 * lily/forbid-break-engraver.cc:
4083 * lily/ligature-engraver.cc:
4084 * lily/paper-column-engraver.cc:
4085 * lily/percent-repeat-engraver.cc:
4086 * lily/score-engraver.cc:
4087 * lily/score-engraver.hh:
4088 * lily/paper-column-engraver.hh:
4089 Inter-engraver communication regarding line breaks is done through context
4090 properties (Score.forbidBreak) instead of function calls.
4092 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4094 * VERSION (PACKAGE_NAME): release 2.9.4
4096 2006-05-08 Graham Percival <gpermus@gmail.com>
4098 * Documentation/user/working.itely: proofreading from Dave
4101 * Doucmentation/user/README.txt: updated with manual style info.
4103 * Documentation/user/ various: trim linewidth to 78 chars.
4105 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4107 * scm/define-grob-properties.scm (all-internal-grob-properties):
4108 remove chord-tremolo property.
4110 * lily/beam.cc (get_beam_segments): don't use stem position as
4111 base for broken ends.
4113 2006-05-06 Graham Percival <gpermus@gmail.com>
4115 * Documentation/user/putting.itely: proofreading from Dave
4118 * Documentation/user/ various: more reorg and clarifications.
4120 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4122 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4124 * ly/music-functions-init.ly: new function featherDurations
4126 * lily/beam.cc: read grow-direction for feathered beaming.
4128 * Documentation/topdocs/NEWS.tely (Top): typo.
4130 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4132 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4135 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4136 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4137 used by music streams.
4139 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4140 lily/stream-event.cc, lily/stream-event-scheme.cc,
4141 lily/listener.cc, lily/scheme-listener.cc,
4142 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4143 lily/include/stream-event.hh, lily/include/listener.hh,
4144 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4145 Created data structures for music streams.
4147 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4149 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4150 construction of a beam.
4153 * flower/include/std-vector.hh (default_compare): use only one comparison.
4155 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4156 (note-by-number): further attachment fixes.
4158 * scm/lily-library.scm (ordered-cons): new function.
4159 (interval-index): new function
4161 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4163 * lily/note-head.cc (get_stem_attachment): new function.
4165 * scm/define-markup-commands.scm (note-by-number): read 'style
4168 * input/regression/markup-note.ly: show note-head style option.
4170 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4173 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4175 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4177 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4179 * lily/include/constrained-breaking.hh: GCC 4 fix.
4181 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4183 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4184 Replace it with functions get_line_forces and get_line_configuration.
4185 (class Simple_spacer): Make data private.
4186 Rewrite compression algorithm to be faster and simpler.
4188 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4189 * lily/gourlay-breaking.cc (solve):
4190 * lily/constrained_breaking.cc (space_line):
4191 Change it to the new simple-spacer code.
4193 * lily/paper-score.cc (get_paper_systems):
4196 Delay breaking the systems until they are requested.
4197 (find_break_indices):
4198 Use vsize for indices.
4200 Move the "Calculating line breaks" message here.
4202 * lily/system.cc (pre_processing):
4203 Move the "Calculating line breaks" message away from here.
4204 (break_into_pieces):
4205 Allow multiple calls to this function in sequence (with touching-but-
4206 not-overlapping breakpoints).
4208 * lily/constrained-breaking.cc:
4209 Replace most of the get_XXXX functions with get_line_details.
4210 Only calculate the force for each line. Calculate configurations only
4211 for the lines we will actually use.
4212 Replace cols_ with lines_.
4214 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4216 * mf/GNUmakefile (depth): remove FC_FIND.
4218 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4220 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4222 * scm/framework-ps.scm (write-preamble): new function.
4223 (write-preamble): load mac fonts via fondu, even if gs-font-load
4226 2006-05-03 Werner Lemberg <wl@gnu.org>
4228 * mf/GNUmakefile (FC_FIND): Fix typo.
4230 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4232 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4234 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4236 * stepmake/aclocal.m4: run python-config for crosscompiling
4239 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4240 -f png for HTML, TEXINFO formats.
4242 * input/tutorial/lbook-html-test.html: new file.
4244 * lily/include/tie-formatting-problem.hh (class
4245 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4246 [column, direction]. This fixes laissez vibrer ties.
4248 * flower/include/tuple.hh (struct Tuple2): new file.
4250 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4251 $(FCMATCH), only if $(NCSB_DIR) not set.
4253 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4255 * config.make.in (DOCUMENTATION): set FCMATCH.
4257 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4259 2006-05-03 Graham Percival <gpermus@gmail.com>
4261 * Documentation/user/ various: final round of reorg.
4263 * Documentation/user/instrument-notation.itely: some more
4264 fixes from Eduardo, thanks!
4266 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4268 * VERSION (PACKAGE_NAME): release 2.9.3
4270 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4272 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4274 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4276 * scm/define-grob-properties.scm (all-user-grob-properties):
4277 Correct typo, thanks to Eduardo.
4279 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4281 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4283 * buildscripts/lilypond-words.py (F): indent fix.
4285 * input/regression/tie-arpeggio-collision.ly: new file.
4287 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4288 function: store outlines per column rank.
4290 * lily/include/tie-configuration.hh (class Tie_configuration): add
4291 column_ranks_ to specification and configuration, to distinguish
4292 between ties for different heads in arpegiated chords.
4294 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4296 * *.py: more 4 space indents.
4298 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4300 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4302 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4304 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4306 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4308 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4310 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4312 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4314 * python/convertrules.py (conv): indent 4 for python files.
4316 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4318 * Documentation/user/changing-defaults.itely (Creating contexts):
4319 Clarify \new semantics.
4321 2006-04-28 Graham Percival <gpermus@gmail.com>
4323 * Documentation/user/ various: major new sections in the
4324 Learning manual, slight reorg elsewhere.
4326 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4328 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4330 * scm/framework-ps.scm (output-framework): remove PageMedia
4332 2006-04-27 Graham Percival <gpermus@gmail.com>
4334 * Documentation/user/ tweaks.itely, working.itely: new
4335 files, being more advanced "learning manual" chapters.
4337 * Documentation/user/ tutorial, putting, lilypond: reorg.
4339 2006-04-26 Graham Percival <gpermus@gmail.com>
4341 * input/regression/lyric-combine-polyphonic.ly: fixed test
4342 (no more "can't find context `one'" error).
4344 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4346 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4348 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4350 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4352 * lily/relocate.cc (read_relocation_dir): new function.
4354 2006-04-26 Graham Percival <gpermus@gmail.com>
4356 * Documentation/user/instrument-notation.itely: a few more fixes
4357 from Eduardo, thanks!
4359 * Documentation/user/README.txt: new file; contains info on
4360 style that used to be in lilypond.tely.
4362 * Documentation/user/ various: first round of doc reorg.
4364 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4365 graphic; this probably causes problems on some pdf
4366 viewers, notably Adobe Acrobat.
4368 2006-04-24 Graham Percival <gpermus@gmail.com>
4370 * Documentation/user/instrument-notation.itely: many alterations
4371 to Vocal music, from Eduardo Viera.
4373 2006-04-23 Graham Percival <gpermus@gmail.com>
4375 * Documentation/user/instrument-notation.itely: fix \new
4376 instead of \context problem.
4378 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4380 * lily/relocate.cc (expand_environment_variables): new function.
4382 (read_relocation_file): id.
4384 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4386 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4388 * ly/engraver-init.ly: remove old comments from TabVoice
4390 2006-04-20 Graham Percival <gpermus@gmail.com>
4392 * Documentation/user/instrument-notation.itely: added Erlend's
4393 latest doc patch, thanks!
4395 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4397 * lily/include/slur.hh:
4399 * lily/phrasing-slur-engraver.cc:
4400 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4401 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4402 Slur_engraver:: and putting it in
4403 Slur::auxiliary_acknowledge_extra_object ().
4405 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4407 * lily/note-collision.cc: fix a comment
4409 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4411 * stepmake/bin/add-html-footer.py: fix footer position in
4412 generated html files: before </body> and </html> tags.
4414 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4416 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4417 Earlier successive `make' commands finally compiled ok.
4419 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4421 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4423 * lily/include/stem-tremolo.hh:
4424 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4428 * lily/include/lookup.hh: add rotated_box ()
4430 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4432 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4433 been generated. Fixes "can't get `--help'" bug after make clean.
4435 * THANKS: alphabetize contributors.
4437 2006-04-17 Graham Percival <gpermus@gmail.com>
4439 * Documentation/user/instrument-notation.itely: added Erlend's
4440 tabs and banjo doc patch. Thanks!
4442 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4444 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4446 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4448 * scm/output-lib.scm: add some more predefined string tunings.
4450 * Documentation/user/instrument-notation.itely: and doc them.
4452 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4454 * ly/engraver.ly: Remove obsolete comments.
4456 * ly/gregorian-init.ly: Define default layout block.
4458 * input/puer-fragment.ly: Updated and extended.
4460 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4462 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4463 pdf conversion behaviour.
4465 * flower/file-name.cc (dir_name)
4466 (get_working_directory): Move from relocate.cc.
4468 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4470 * lily/relocate.cc: Encapsulate sys/stat.h in
4473 2006-04-14 Graham Percival <gpermus@gmail.com>
4475 * Documentation/user/ various: small updates from Cameron
4476 and Juergen, thanks!
4478 * Documentation/user/ various: small updates of my own.
4480 * THANKS: 2.7 -> 2.8.
4482 2006-04-11 Graham Percival <gpermus@gmail.com>
4484 * scm/define-context-properties.scm: typo.
4486 * Documentation/user/ : many more small updates.
4488 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4490 * scm/define-music-types.scm: disposed "docme".
4492 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4494 * lily/hairpin.cc: make niente circles a bit smaller.
4496 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4498 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4499 get-pfa and get-*-fonts targets.
4501 2006-04-10 Graham Percival <gpermus@gmail.com>
4503 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4504 music-glossary, programming-interface: more minor fixes
4507 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4509 * scm/define-context-properties.scm: another old \property update.
4510 This time tested for compiling!
4512 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4514 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4516 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4518 * scm/define-context-properties.scm (all-user-translation-properties):
4519 * Documentation/user/global.itely (Page formatting): Compile fix.
4521 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4523 * Documentation/user/advanced-notation.itely (Polymetric
4524 notation): Update the example to use the "+" symbol and add link
4525 to input/test/compound-time.ly.
4527 2006-04-08 Graham Percival <gpermus@gmail.com>
4529 * scm/define-grob-properties.scm: clarify docs for #'direction.
4531 * scm/define-context-properties.scm: update old \property override.
4533 * Documentation/user/ advanced-notation, global, lilypond-book:
4534 more minor doc updates.
4536 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4538 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4540 * scm/backend-library.scm (search-gs): oops.
4542 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4544 * scripts/lilypond-book.py (output): use base, not filename for href.
4546 * scm/backend-library.scm: only look for gs.
4548 * scripts/lilypond-book.py (output): fix printfilename.
4550 * lily/parser.yy (music_function_musicless_prefix): fold together
4551 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4553 * lily/slur.cc (print): only set font-size if not set yet.
4555 * lily/slur-configuration.cc (add_score): improved layout of debug
4558 2006-04-05 David Feuer <David.Feuer@gmail.com>
4560 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4561 (draw_circle): Hopefully fixed regression.
4562 Improved documentation for several procedures.
4564 2006-03-04 Werner Lemberg <wl@gnu.org>
4566 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4568 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4570 * scripts/musicxml2ly.py (bindir): add dynamic
4573 2006-04-04 Graham Percival <gpermus@gmail.com>
4575 * Documentation/user/ basic-notation, advanced-notation, putting,
4576 instrument-notation, invoking, lilypond, THANKS: another ream of small
4577 fixes from the Doc Helpers.
4579 2006-04-03 David Feuer <David.Feuer@gmail.com>
4581 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4583 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4585 * Cleaned up interfaces between PostScript and Scheme, and moved
4586 computations from PostScript to Scheme:
4588 * music-drawing-routines.ps
4589 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4590 with stroke_and_fill throughout.
4591 (euclidean_length, print_letter, draw_box): Deleted unused
4592 procedures. If someone needs draw_box, implement it using
4593 draw_round_box; don't duplicate code.
4594 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4595 Refactored/cleaned up interfaces.
4598 * output-ps.scm: reordered arguments to PostScript functions to
4599 match new interfaces
4600 (glyph-string): Rewrote glyph-string.
4601 (grob-cause): Replaced string-append with format.
4602 (repeat-slash): Rewrote to do computation here.
4603 (round-filled-box): Rewrote to do computation here.
4605 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4607 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4609 * stepmake/stepmake/toplevel- targets.make: print help info about
4612 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4614 * input/regression/hairpin-circled.ly: new file
4616 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4618 * lily/hairpin.cc (print): add support for circled tip
4620 * scm/define-grob-properties.scm: add circled-tip parameter
4622 * scm/define-grobs.scm: init circled-tip to false
4624 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4626 * scm/music-functions.scm (quote-substitute): set
4629 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4631 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4634 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4636 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4638 2006-03-31 David Feuer <david.feuer@gmail.com>
4640 * scm/framework-ps.scm:
4642 * scm/output-ps.scm: glyph-string now produces smaller, more
4643 readable, and probably faster PostScript. Several findfont
4644 scalefont setfont instances changed to selectfont
4645 Hacked-up string-appends changed to formats.
4647 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4649 2006-03-30 Graham Percival <gpermus@gmail.com>
4651 * scm/lily-library.scm: make "no version" warning message more polite.
4653 * lily/music.cc: add double quotes to failed octave check.
4655 * Documentation/user/ advanced-notation, changing-defaults,
4656 instrument-notation, invoking, music-glossary: whole bunch of minor
4659 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4661 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4662 $(buildscriptdir) iso. depth.
4664 * VERSION (PACKAGE_NAME): release 2.9.1
4666 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4668 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4670 * VERSION (PATCH_LEVEL): bump version number.
4672 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4675 * lily/pango-font.cc (pango_item_string_stencil): use
4678 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4679 $(outdir)/emmentaler-%.svg): remove canary.
4681 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4682 glyphnames if we have a ttf font.
4684 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4686 * Documentation/user/advanced-notation.itely (Font selection):
4687 Corrected reference to the font-family-override.ly example.
4689 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4691 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4692 stem-tremolo object in the stem (or else the stem might not be
4695 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4697 * lily/ttf.cc (print_trailer): only print existing glyphs.
4699 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4701 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4702 position the tremolo based on the position of the notehead.
4704 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4705 notes and update the texidoc line with the new positioning rules.
4707 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4709 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4711 * scripts/lilypond-book.py (Module): set default for linewidth if
4714 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4716 * VERSION (PACKAGE_NAME): release 2.9.0.
4718 * input/regression/stem-tremolo-position.ly: new file.
4720 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4722 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4724 * lily/stem-tremolo.cc (print): position
4725 the tremolo depending only on the end of the stem
4726 and not on the notehead
4727 (raw_stencil): center, on the middle staff line, the
4728 flag that is closest to the end of the stem (previously
4730 (calc_width): add this callback to shorten a tremolo when
4731 it is beamed or it is stemup with a flag
4732 (style): add this callback to make a tremolo rectangular when
4733 it is beamed or it is stemup with a flag
4734 (rotated_box): this is like Lookup::beam but makes a rotated
4735 rectangle instead of a parallelogram
4737 * lily/stem.cc (calc_stem_info): make sure the stem
4738 is long enough to fit the tremolo
4739 (calc-length): reduce the length of tremolo stems since the
4740 tremolo code is now capable of better positioning
4742 * scm/define-grobs.scm: make calc_width the default beam-width
4743 callback for stem-tremolo and add the style callback
4745 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4747 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4750 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4752 * lily/ttf.cc (make_index_to_charcode_map): restore old
4755 2006-03-28 Werner Lemberg <wl@gnu.org>
4757 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4759 2006-03-28 Graham Percival <gpermus@gmail.com>
4761 * THANKS: update for 2.9, add section for Documentation helpers.
4763 * Documentation/topdocs/NEWS.tely: compile fix.
4765 * Documentation/user/ basic-notation, global, advanced-notation,
4766 examples.itely: minor fixes from mailist.
4768 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4770 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4773 * lily/ttf.cc (print_trailer): use it.
4775 * lily/pango-font.cc (get_unicode_name): new function.
4777 * lily/ttf.cc (make_index_to_charcode_map): move function from
4779 (print_trailer): substitute uniXXXX name if applicable.
4781 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4782 (pango_item_string_stencil): use it to generate uniXXXX names.
4784 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4785 note heads, for uniform widths in shape note output.
4786 (overdone_heads): hmm. remove them again.
4788 * scripts/lilypond-book.py (output): add links to filenames.
4790 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4792 * lily/note-collision.cc (get_clash_groups): only consider when
4793 Note_column::dir <> CENTER.
4795 * scripts/lilypond-book.py (get_option_parser): init output_name
4798 2006-03-24 Graham Percival <gpermus@gmail.com>
4800 * Documentation/topdocs/NEWS.tely: add @end itemize
4802 * Documentation/user/ global, advanced-notation: minor
4805 2006-03-23 Graham Percival <gpermus@gmail.com>
4807 * Documentation/user/ lilypond.tely, music-glossary,
4808 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4810 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4812 * mf/GNUmakefile: don't install .enc files.
4814 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4816 * VERSION (PATCH_LEVEL): bump to 2.9.0
4818 2006-03-22 Graham Percival <gpermus@gmail.com>
4820 * Documentation/user/advanced-notation.itely: minor fixes
4823 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4825 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4827 * branch lilypond_2_8
4829 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4831 * scripts/lilypond-book.py (samefile): new function, for windoze
4834 2006-03-21 Graham Percival <gpermus@gmail.com>
4836 * ly/engraver-init.ly: add info about StaffGroup.
4838 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4840 * input/regression/stem-direction-context.ly: idem.
4842 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4846 * input/regression/page-layout-twopass.ly: comment out \markup so
4849 * lily/instrument-name-engraver.cc (finalize): add to instrument
4850 name global System. This also fixes chopped instrument names, but
4851 doesn't crash when there are slurs/beams.
4853 * lily/slur-configuration.cc (add_score): disallow negative slur
4856 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4858 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4860 * lily/instrument-name-engraver.cc (process_music): kludge: add
4861 InstrumentName spanner to axis group of left bound. Fixes chopped
4862 off instrument names in EPS images.
4864 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4866 * scripts/abc2ly.py (option_parser): update to 2.7.40
4868 2006-03-20 Graham Percival <gpermus@gmail.com>
4870 * THANKS: move small doc contributors to SUGGESTIONS.
4872 * Documentation/user/ basic-notation, advanced-notation,
4873 global: small changes from mailist.
4875 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4877 * Documentation/user/advanced-notation.itely (Text marks): update
4878 for new rehearsalMarkAlignSymbol convention.
4880 * VERSION (PATCH_LEVEL): bump version.
4882 * input/test/instrument-name-align.ly: new file.
4884 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4886 * input/test/instrument-name-align.ly: new file. Document how to
4887 align instrument names.
4889 * lily/mark-engraver.cc: remove properties.
4891 * scm/define-context-properties.scm
4892 (all-user-translation-properties): remove align symbol properties
4893 for barnumber/reh. mark.
4895 * lily/break-align-interface.cc (self_align_callback): new
4896 interface, new function. Look at complete alignment. This handles
4897 tunable break alignments in case break-align-symbols are missing.
4899 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4901 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4903 * python/convertrules.py (conv): mark/bar number alignment rule.
4905 * lily/break-align-interface.cc (calc_positioning_done): also
4906 store offset from last visible break-alignment to its
4907 neighbor. This makes alignment on non-visible objects more reliable.
4909 * po/lilypond.pot (Module): ran po-replace.
4911 * input/regression/tie-single-manual.ly (Module): new file.
4913 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4914 look at has_manual_position_.
4915 (from_ties): set has_manual_position_ if tie has staff-position set.
4917 * lily/tuplet-bracket.cc (calc_positions): idem.
4919 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4922 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4924 * scm/define-markup-commands.scm (smallCaps): new markup command
4925 for turning a text to small caps using smaller font size and upper
4928 2006-03-17 Graham Percival <gpermus@gmail.com>
4930 * Documentation/user/ examples, instrument-notation,
4931 advnaced-notation: minor fixes from mailist.
4933 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4935 * Documentation/user/tutorial.itely (First steps): change example
4938 2006-03-17 Graham Percival <gpermus@gmail.com>
4940 * Documentation/user/ examples, advanced: minor changes from mailist.
4942 * THANKS: add Geoff Horton, for documentation stuff.
4944 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4946 * python/lilylib.py (system): revert have_select kludge.
4948 * Documentation/user/tutorial.itely (Commenting input files):
4949 update version numbers in doc.
4951 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4952 bound-padding to multi-measure-interface
4954 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4956 * input/test/engraver-example.ily: update version number.
4958 * VERSION (PACKAGE_NAME): release 2.7.39
4960 * lily/note-spacing.cc (get_spacing): heighten threshold where
4961 accidentals/arpeggios influence previous spacing fully.
4963 * lily/rest.cc (y_offset_callback): only use direction if
4964 staff-position wasn't set before.
4966 * lily/bar-number-engraver.cc: add support for
4967 barNumberAlignSymbol.
4968 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4970 * lily/pointer-group-interface.cc (set_ordered): new function.
4971 (add_unordered_grob): new function.
4973 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4974 to ordered, unless the opposite has been proved. This fixes
4975 random reordering of large object groups across linebreaks,
4978 * lily/main.cc (do_chroot_jail): printf format fix.
4980 * lily/tie-formatting-problem.cc (generate_configuration):
4981 multiply y-shift for dot with direction.
4983 * scm/define-markup-commands.scm (note-by-number): put (magstep
4984 size) in y-attach too.
4986 * Documentation/topdocs/NEWS.tely (Top): show override.
4988 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4989 direction for stems.
4991 2006-03-15 Graham Percival <gpermus@gmail.com>
4993 * Documentation/user/ changing-defaults, global: minor
4996 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4998 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5000 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5001 breakable items after uniformly stretched notes.
5003 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5004 outline with outer edge of note heads. This prevents infinity
5005 problems with tied whole notes.
5007 * scripts/lilypond-book.py (do_file): use os.popen
5009 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5011 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5013 * Documentation/user/invoking.itely: Add ragged-right to bug report
5016 2006-03-14 Graham Percival <gpermus@gmail.com>
5018 * Documentation/user/global.itely: small fix from mailist.
5020 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5022 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5023 file descriptor returned by tempfile.mkstemp() when writing
5024 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5027 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5029 * po/fi.po: newline bugfix.
5031 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5033 * scm/paper.scm (paper-alist): Rounding fixes.
5035 2006-03-13 Graham Percival <gpermus@gmail.com>
5037 * Documentation/user/ changing-defaults, instrument-notation,
5038 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5040 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5044 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5046 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5049 * python/lilylib.py (print_environment): move ps_page_count to
5052 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5054 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5056 * scm/framework-ps.scm (embed-document): new function. Use to
5059 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5061 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5063 * Documentation/user/instrument-notation.itely (Setting simple
5064 songs): Added \book{...} around the full example, so the separate
5065 markups are included in the printed example.
5067 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5069 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5072 * python/lilylib.py (system): rewrite system() using
5073 subprocess. Remove >& redirection trickery.
5075 2006-03-11 Graham Percival <gpermus@gmail.com>
5077 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5078 notation-appendices.itely: minor fixes from mailist.
5080 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5082 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5083 unsplit man also needs images.
5085 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5087 * VERSION (PACKAGE_NAME): 2.7.38 released.
5089 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5091 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5094 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5096 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5097 respects the Score.skipTypesetting property.
5099 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5101 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5102 Prolog. No %%EOF after CFF file.
5104 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5106 * lily/constrained-breaking.cc (get_max_systems): used to return a
5108 (combine_demerits): use pointers to reduce copying data
5109 (calc_subproblem): idem
5110 (get_page_penalty): add page turn penalties
5112 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5114 * Documentation/user/invoking.itely (Invoking lilypond): better
5115 explanation of -e usage.
5117 * lily/main.cc (main_with_guile): don't append to
5118 init_scheme_code_string
5120 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5122 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5124 * scripts/convert-ly.py (do_options): don't print help for
5127 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5128 @code and @example. Update from texinfo.tex from CVS.
5130 2006-03-08 Graham Percival <gpermus@gmail.com>
5132 * Documentation/user/scheme-tutorial.itely: clarifies distances
5133 measured in staff-spaces.
5135 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5137 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5138 consider[k] is true.
5140 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5142 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5143 consider columns that have originals. Unifies spacing for mm
5144 rests around line breaks.
5146 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5147 (set_text_rods): idem.
5148 (calculate_spacing_rods): new function: share code between
5149 set_text_rods and set_spacing_rods.
5150 (set_text_rods): take extents of bounds into account.
5152 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5154 * Documentation/user/basic-notation.itely (Writing music in
5155 parallel): don't use relative.
5157 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5159 * ly/music-functions-init.ly (Module): add shiftDurations
5161 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5163 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5165 * ly/engraver-init.ly: init vocalName to nil.
5167 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5169 * scm/music-functions.scm (music->make-music): bugfix,
5170 KeyChangeEvents are now handled correctly.
5172 * scripts/lilypond-book.py: Add --debug option.
5174 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5176 * python/lilylib.py: add tempfile.
5178 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5180 * VERSION (PACKAGE_NAME): release 2.7.37
5182 * python/lilylib.py (ps_page_count): remove make_ps_images().
5183 (ps_page_count): remove mkdir_p
5184 (system): remove cleanup_temp.
5185 (exit): remove lilypond_version_(check)
5186 (error_log): remove pseudo_filter_p
5191 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5194 * lily/accidental-engraver.cc (make_standard_accidental): only add
5195 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5197 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5198 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5199 Make incompatibilities.
5201 * scm/output-ps.scm (grob-cause): replace backslashes by /
5202 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5204 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5206 * cygwin/GNUmakefile: Install fixes.
5208 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5210 * lily/note-head.cc (head::get_balltype): Compile fix.
5212 * flower/file-name.cc (dos_to_posix): Flower string fix.
5214 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5216 * python/lilylib.py: pychecker cleanups.
5218 * scripts/lilypond-book.py
5219 (Lilypond_snippet.output_print_filename): pychecker cleanups
5221 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5223 * python/lilylib.py (underscore): remove identify() , warranty()
5225 * ps/music-drawing-routines.ps: change Border routine for GSView
5228 * lily/stem.cc (height): use quantize-positions. This triggers
5229 set_stem_lengths, so scripts on beamed stems are handled correctly.
5231 * lily/side-position-interface.cc (aligned_side): check if edges
5232 of script are inside staff. Fixes accent of edge of the staff.
5234 * input/regression/staccato-pos.ly: more examples.
5236 * stepmake/aclocal.m4 (depth): fix bashism.
5238 * lily/lyric-combine-music-iterator.cc: move from
5239 new-lyric-combine-iterator.cc
5240 (process): add pending_grace_lyric_ member to delay lyrics on
5243 * lily/system-start-text.cc (print): suicide if we don't have any
5244 elements. Fixes hara kiri'd instrument names.
5246 * scripts/mup2ly.py (Module): remove.
5248 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5250 * Documentation/user/global.itely (A single music expression):
5251 close @lilypond properly
5253 * lily/volta-bracket.cc (modify_edge_height): change from
5254 after_line_breaking_callback. Suicide last bracket if appropriate.
5256 * python/lilylib.py: strip getopt support
5258 * scripts/etf2ly.py (do_options): use optparse
5260 * scripts/midi2ly.py: optparse, strip lilylib copy.
5262 * scripts/abc2ly.py (voices): use optparse.
5264 * stepmake/stepmake/generic-vars.make: new function absdir.
5266 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5268 * scripts/lilypond-book.py (find_file): use global_options for
5271 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5274 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5276 * python/lilylib.py (get_global_option): ughness for extracting
5277 global options from lilylib.
5278 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5280 * scripts/lilypond-book.py (get_option_parser): use optparse for
5281 option handling. Put options in global_options variable.
5283 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5285 * Documentation/index.html.in: clarify.
5287 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5289 * scm/layout-page-layout.scm (write-page-breaks): add a
5290 music-system-heights property to the page layout output.
5292 * scm/page.scm (make-page-stencil): take footer into account when
5293 computing the 'space-left page property
5294 (annotate-space-left): take footer into account when annonating
5297 2006-02-28 Graham Percival <gpermus@gmail.com>
5299 * Documentation/user/ advanced-notation, global: more (final)
5300 docs for music expressions, removed special fermatas.
5302 2006-02-27 Graham Percival <gpermus@gmail.com>
5304 * Documentation/user/ basic-notation, global: minor changes
5307 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5309 * scm/framework-ps.scm:
5310 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5311 layer for inf? and nan? from framework-ps to lily-library.
5313 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5315 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5316 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5318 * buildscripts/substitute-encoding.py (Module): remove file.
5320 * mf/GNUmakefile: more PFA strippage.
5322 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5324 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5327 * scm/framework-ps.scm: remove font name munging.
5329 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5331 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5333 * scm/markup.scm (define-markup-command): change
5334 def-markup-command to define-markup-command
5336 * scm/music-functions.scm (define-music-function): change
5337 def-music-function to define-music-function.
5339 * python/convertrules.py (conv): rules for def-music-function
5340 and def-markup-commands
5342 * Documentation/user/programming-interface.itely,
5343 input/no-notation/display-lily-tests.ly,
5344 input/regression/lily-in-scheme.ly,
5345 input/regression/markup-user.ly,
5346 input/regression/music-function.ly, input/regression/tie-chord.ly,
5347 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5348 ly/gregorian-init.ly: use new macro names (define-music-function,
5349 define-markup-command).
5351 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5353 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5354 (output): add comments to lp-book latex output.
5356 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5359 2006-02-23 Graham Percival <gpermus@gmail.com>
5361 * Documentation/user/ tutorial, global: minor changes.
5363 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5365 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5366 blocks (for make 3.80)
5368 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5369 \notemode so that user should not have to explicitely type it.
5371 * scm/define-music-display-methods.scm: various
5372 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5375 * input/no-notation/display-lily-tests.ly: new tests for
5376 \applyOutput and \applyContext
5378 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5380 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5381 changed it slightly so that the number of systems returned by
5382 solve () will be the same as the last value passed to resize
5383 (). I've also added more documentation, removed casts, fixed style
5384 problems and put in some recovery if constraints aren't satisfied."
5386 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5388 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5389 for emacs < 22 compatibility.
5390 (count-rexp): Use it.
5391 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5392 substring juggling (Milan Zamazal).
5394 2006-02-23 Graham Percival <gpermus@gmail.com>
5396 * Documentation/user/ basic-notation, advanced-notation,
5397 global.itely, invoking.itely, tutorial,itely:
5398 minor fixes from mailist.
5400 * scm/define-markup-commands.scm: improve docs of \filled-box.
5402 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5404 * Documentation/index.html.in: changes concern the previous release.
5406 * input/regression/+.ly: cultivate typographical terminology.
5408 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5410 * scm/define-grob-interfaces.scm (parentheses-interface): add
5411 padding to parentheses-interface.
5413 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5414 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5416 * VERSION (PATCH_LEVEL): release 2.7.36
5418 * lily/slur.cc: add avoid-slur (ugh.)
5420 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5421 intersection gets smaller. This fixes slurs over extreme points.
5423 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5424 stems with neutral-direction set.
5426 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5428 * lily/open-type-font.cc (load_table): format error.
5430 * lily/change-iterator.cc (process): format fix.
5432 * flower/include/international.hh (_f): idem.
5434 * flower/include/std-string.hh: add format printf attribute.
5436 * scm/define-grobs.scm (all-grob-descriptions): height of all
5437 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5439 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5442 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5444 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5446 * input/regression/: upgraded syntax for some files.
5448 * THANKS: Add bughunters.
5450 2006-02-22 Graham Percival <gpermus@gmail.com>
5452 * Documentation/user/ invoking.itely, advanced-notation.itely,
5453 global.itely: long-awaited "let's make chapter 10 not suck"
5454 update. Rearrange chapter 10; now called "global issues",
5455 addresses file structure, etc. Some info from other files
5456 moved into global.itely.
5458 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5460 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5461 catch trill-span-event notes.
5463 * Documentation/user/examples.itely (Ancient notation templates): typo.
5466 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5468 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5470 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5472 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5474 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5475 froum Laissez_vibrer_engraver.
5477 * ly/declarations-init.ly (repeatTie): add \repeatTie
5479 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5481 * scm/define-grob-properties.scm (all-user-grob-properties): add
5482 head-direction property.
5484 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5485 from_lv_ties. Take head direction argument.
5487 * lily/semi-tie-column.cc: rename from
5488 laissez-vibrer-tie-column.cc. Rename class too.
5490 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5493 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5495 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5497 (find_breaks): idem.
5499 2006-02-21 Graham Percival <gpermus@gmail.com>
5501 * Documentation/user/advanced-notation.itely: fixed make-moment]
5504 * Documentation/user/basic-notation.itely: more clarification to
5507 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5509 * lily/include/constrained-breaking.hh (class
5510 Constrained_breaking): new file.
5512 * lily/constrained-breaking.cc (resize): new file.
5514 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5516 * Documentation/user/advanced-notation.itely (Clusters): insert
5519 * lily/tie-column.cc (calc_positioning_done): support for
5522 * lily/tie-formatting-problem.cc
5523 (generate_extremal_tie_variations): factor out.
5524 (score_ties_configuration): annotate all tie
5525 (print_ties_configuration): new routine.
5526 (generate_configuration): nudge extremal ties outside of the head
5528 (score_ties_configuration): oops. convert to staff-space before
5529 determining position symmetry.
5531 2006-02-20 Graham Percival <gpermus@gmail.com>
5533 * Documentation/user/*-notation.itely: misc minor editing,
5534 shifting doc sections around.
5536 * Documentation/user/*-notation-itely, global.itely,
5537 changing-defaults.itely: added new stuff from NEWS.
5539 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5543 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5545 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5546 lilypond --verbose for lp-book.
5548 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5549 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5551 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5552 $(buildscript-dir) iso. absolute depth.
5554 * buildscripts/genicon.py (dir): thinko.
5556 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5558 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5560 * scm/output-lib.scm: swap darkcyan/darkyellow
5562 * THANKS: Add bughunters.
5564 2006-02-19 Graham Percival <gpermus@gmail.com>
5566 * Documentation/user/programming-interfaces.itely: fixed example.
5568 * Documentation/user/instrument-notation.itely: fix @{ @}.
5570 * scm/script.scm: add avoid-slur for \open.
5572 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5574 * lily/tie-formatting-problem.cc (score_configuration): use
5575 sliding score for min-length.
5577 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5578 spaghetti for icons.
5580 * buildscripts/genicon.py (program_name): new file.
5582 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5584 (generate_configuration): for small ties, also look for collisions
5585 at Y + DIR*h + DELTA_Y.
5586 (get_variations): consider variation for dot positions too.
5588 * lily/side-position-interface.cc (aligned_side): take abs for
5589 quantized rounded position. Fixes tenuto below staff.
5591 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5592 markers when necessary.
5594 * lily/program-option.cc (internal_set_option): add
5595 strict_infinity_checking option.
5597 * scm/output-lib.scm (cyan): swap yellow and cyan.
5599 2006-02-19 Graham Percival <gpermus@gmail.com>
5601 * darwin.patch: trivial linenumber update.
5603 * Documentation/user/ {various}: `\context foo = named' changed
5604 to `\new foo = "name"' in docs.
5606 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5608 * scm/stencil.scm (annotate-y-interval): use it.
5610 * scm/lily-library.scm (interval-sane?): new function.
5612 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5615 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5618 * flower/include/std-vector.hh (iterof): add iterof macro.
5620 * lily/enclosing-bracket.cc (width): new function.
5622 * lily/align-interface.cc (align_elements_to_extents): reinstate
5625 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5627 * Documentation/index.html.in: fix spelling: thankyous.
5629 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5631 * lily/lyric-hyphen.cc: typo.
5633 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5635 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5636 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5639 * VERSION: release 2.7.35
5641 * lily/beam.cc (get_default_dir): oops. Take abs () for
5643 (get_default_dir): use extreme position criterion only in absence
5644 of forced stem directions.
5646 * VERSION (PATCH_LEVEL): bump VERSION.
5648 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5649 dependencies. Necessary for -jX builds.
5651 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5653 * lily/relocate.cc (setup_paths): Yet another const fix.
5655 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5657 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5659 * lily/relocate.cc (setup_paths): oops.
5661 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5663 * Documentation/index.html.in: order links: html before PDF.
5665 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5667 * lily/tie-column-format.cc (Module): remove.
5669 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5671 * lily/text-spanner.cc (print): idem.
5673 * lily/dynamic-text-spanner.cc (print): only print line if longer
5676 * lily/auto-change-iterator.cc (change_to): formatting.
5678 * lily/beam.cc (get_default_dir): take extreme note head as input
5681 * lily/tie.cc (get_default_dir): only look directions for visible
5684 * lily/side-position-interface.cc (aligned_side): oops. Don't
5685 mutiply with direction. This fixes quantized (staccato, tenuto)
5686 scripts below notes.
5688 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5689 direction. Fixes c-lyrics-center-align.ly
5691 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5693 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5696 * lily/std-string.cc:
5697 * lily/include/std-vector.hh (split_string): Move and rename from
5698 lily/include/misc.hh, lily/misc.cc. Update callers.
5700 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5702 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5704 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5706 * flower/test-file.cc: New file.
5708 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5711 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5713 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5715 * flower/include/file-storage.hh: remove file.
5717 * lily/include/midi-item.hh (class Midi_track): idem.
5719 * lily/include/source.hh (class Sources): idem.
5721 * lily/include/performance.hh (class Performance): use vector
5724 * flower/include/cons.hh (class Cons): remove file.
5726 * flower/include/flower-proto.hh: remove template cruft.
5728 * lily/include/font-metric.hh: use size_t not vsize for indices.
5730 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5733 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5735 * lily/include/paper-book.hh (class Paper_book):
5736 make get_system_specs() public.
5738 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5739 the force=10000 case if we don't have a current-best.
5741 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5744 * flower/include/flower-proto.hh: remove outdated templates.
5746 * scm/page.scm: use annotate-spacing
5748 2006-02-15 Graham Percival <gpermus@gmail.com>
5750 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5752 * THANKS: moved Erlend Aasland to contributors.
5754 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5756 * config.hh.in: remove HAVE_PANGO_16
5758 * lily/tuplet-bracket.cc (calc_positions): multiply with
5759 staff-space for beam case. This fixes tuplets+beams on scaled
5762 * config.hh.in: remove all Kpathsea related defines.
5764 * lily/dot-column.cc (side_position): reach stem via dots->
5765 head->stem. Inspect all stems for dot collisions.
5767 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5770 * lily/bar-number-engraver.cc (process_music): document function
5773 * lily/score.cc (default_rendering): add pscore, not systems
5776 * lily/paper-book.cc (get_system_specs): separate generation of
5779 * flower/include/std-vector.hh: don't include config.hh
5781 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5783 * flower/include/std-vector.hh: Better wrapper compatibility with
5786 * flower/include/flower-proto.hh: Remove cheap forward declaration
5789 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5791 2006-02-14 Graham Percival <gpermus@gmail.com>
5793 * Documentation/user/invoking.itely: add warning about command line.
5795 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5797 * lily/include/lily-proto.hh: add Prob, rm Page.
5799 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5801 * VERSION: release 2.7.34
5803 * lily/relocate.cc (framework_relocation): show canary if
5804 GHOSTSCRIPT_VERSION undefined.
5806 * GNUmakefile.in: remove $(VERSION) symlink.
5808 * lily/relocate.cc (setup_paths): add +
5810 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5812 * Documentation/index.html.in: specify sizes for all big HTML pages.
5814 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5816 * config.hh.in: remove @FRAMEWORKDIR@
5818 * lily/system-start-text.cc (get_stencil): new file: separate out
5819 system-start-delimiter text support.
5821 * input/**ly: replace \context with \new where appropriate.
5825 * lily/slur-scoring.cc (get_base_attachments): use
5826 robust_relative_extent. This fixes problems with empty paper-columns.
5828 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5830 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5832 * scm/define-music-properties.scm (all-music-properties):
5833 create-new property.
5835 * lily/context-specced-music-iterator.cc (construct_children):
5836 inspect 'create-new property iso. magical $uniqueContextId context
5839 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5841 * lily/context-key-manager.cc (Module): new file. Encapsulate
5842 object key generation.
5844 * lily/include/context-key-manager.hh (Module): new file.
5846 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5848 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5851 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5853 (reloc_b): excise --enable-framework-dir
5855 * lily/relocate.cc (framework_relocation): use getenv
5856 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5858 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5860 * flower/include/std-string.hh:
5861 * flower/include/std-vector.hh: Finish std:: conversion; move
5862 flower extensions from std:: namespace. Update users.
5864 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5865 their expansion to vector<*>. Update users.
5867 2006-02-10 Graham Percival <gpermus@gmail.com>
5869 * Documentation/user/invoking.itely: add example to File structure.
5871 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5872 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5874 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5876 * ly/paper-defaults.ly: typo.
5878 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5879 set_parent() for parentheses. This will make it show up in bbox
5882 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5883 ly:grob-common* functions.
5885 * lily/grob-scheme.cc (LY_DEFINE):
5886 ly:grob-common-refpoint-of-array: new function
5887 ly:grob-common-refpoint: new function
5888 ly:grob-relative-coordinate: new function
5890 * lily/instrument-name-engraver.cc (process_music): use
5891 Text_interface::is_markup(). This fixes \markup on instrument names.
5893 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5896 * lily/slur.cc (print): idem.
5898 * lily/tie.cc: add line-thickness for ties.
5900 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5902 * scm/output-svg.scm: Document diversion from GNU coding standards
5903 as a workaround for a bug in Microsoft Internet Explorer.
5905 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5907 * lily/instrument-name-engraver.cc (process_music): use
5908 is_markup() iso. is_string()
5910 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5912 * lily/percent-repeat-engraver.cc (process_music): only look at
5913 main_part_ for % repeats.
5915 * lily/stem-tremolo.cc (get_beam_translation): new function.
5916 (calc_slope): new function.
5917 (height): don't use real slope.
5919 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5921 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5922 new connect-to-neighbor, control-points and staff-padding
5923 properties to make ligature brackets showing up again.
5925 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5927 * VERSION: release 2.7.33
5929 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5932 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5933 remove applyOutput example.
5934 (Objects connected to the input): document \tweak, \parenthesize
5936 * lily/relocate.cc (prefix_relocation): allow "current"
5937 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5938 changing VERSION in a lily tree less painful.
5940 * input/regression/parenthesize.ly: new file.
5942 * scm/output-lib.scm (parenthesize-element): new function.
5944 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5946 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5948 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5949 cause: accidentals are caused by note heads, not note events.
5951 2006-02-08 Graham Percival <gpermus@gmail.com>
5953 * darwin.patch: small patch from Erlend, thanks!
5955 * Documentation/user/basic-notation.itely: add stem-neutral example.
5957 * Documentation/user/putting.itely: clarifications.
5959 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5961 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5962 note, add more guidelines to what should go into NEWS.
5964 * input/sakura-sakura.ly: document how to override font.
5966 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5968 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5970 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5972 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5974 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5975 convertrules. Add explicit grouping, needed for python2.2.
5977 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5979 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5981 2006-02-07 Graham Percival <gpermus@gmail.com>
5983 * Documentation/user/global.itely: fix line-width in (text) docs.
5985 * Documentation/user/lilypond-book.itely: same.
5987 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5989 * VERSION (PACKAGE_NAME): release 2.7.32
5991 * Documentation/topdocs/NEWS.tely (Top): document new variable
5994 * flower/include/array.icc (Message): remove file.
5996 * flower/include/std-vector.hh: make sure vsize and VPOS are
5997 defined for binary_search_bounds().
5999 * flower/std-string.cc (std): add to_string(long unsigned).
6001 * configure.in (gui_b): excise std_string option.
6002 (gui_b): excise std_vector option.
6004 * flower/string.cc (Module): excise flower array & string
6006 * flower/include/std-string.hh: excise flower string.
6008 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6010 * python/convertrules.py (lilypond_version_re_str): require
6011 only numbers and dots in \version string.
6013 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6015 * lily/system-start-delimiter.cc (print): allow style = text too.
6017 * lily/system-start-delimiter-engraver.cc
6018 (acknowledge_system_start_text): new function, also add add to
6019 support of system-start-text (instrument names). This fixes
6020 instrument names on piano staves.
6022 * lily/instrument-name-engraver.cc: rewrite. Use
6023 system-start-delimiter approach. This save memory and cpu.
6025 * scm/define-grobs.scm (all-grob-descriptions): remove
6026 instrument-name from break-alignment.
6028 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6030 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6032 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6035 * configure.in (std_vector): On by default.
6037 * lily/include/font-metric.hh:
6038 * lily/include/tfm-reader.hh:
6039 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6042 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6044 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6046 * VERSION (PACKAGE_NAME): 2.7.31
6048 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6049 EPS edge at 0, but take minimum with left-overshoot. This fixes
6050 cut off system start delims.
6052 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6053 hack: add to axis group if not added yet. This fixes hara kiri'd
6056 * lily/hara-kiri-group-spanner.cc
6057 (force_hara_kiri_in_y_parent_callback): fix signatures.
6059 * lily/hairpin.cc (print): check next hairpin to see whether or
6060 not to be continuing.
6062 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6064 * Remove trailing whitespace from makefiles.
6066 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6069 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6071 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6073 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6075 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6077 * configure.in: Use it.
6079 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6081 * scm/music-functions.scm (pitch-of-note): new function.
6083 * ly/music-functions-init.ly: add \octave and \addquote
6085 * lily/parser.yy (music_function_chord_body): softcode \octave.
6086 (lilypond_header): softcode \addquote
6088 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6090 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6091 array.hh, parray.hh at all. Getting ready to flip the
6094 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6096 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6099 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6101 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6103 * flower/include/array.hh: typo.
6105 2006-02-02 Graham Percival <gpermus@gmail.com>
6107 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6109 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6111 * flower/include/pqueue.hh: Derive from std::vector.
6113 * flower/include/parray.hh: Conform to std::vector interface.
6116 2006-02-02 Graham Percival <gpermus@gmail.com>
6118 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6120 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6122 * flower/file-path.cc (is_file): remove if 0 section.
6124 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6125 selecting afii61352.
6127 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6129 * flower/include/std-vector.hh (boundary): Oops, reverse.
6131 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6132 remove superfluous `d'.
6134 * flower/include/std-vector.hh (boundary, top): Detach from class.
6135 Remove empty vector shell.
6137 * flower/include/array.hh (reverse, swap): Detach from class.
6140 * flower/include/std-vector.hh
6141 * flower/include/array.hh (concat): Globally change to insert ().
6143 * flower/include/std-vector.hh
6144 * flower/include/parray.hh
6145 * flower/include/array.hh (elem, elem_ref): Globally replace by
6148 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6150 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6152 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6153 anticipate on identifier substitutions.
6155 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6157 * flower/include/std-vector.hh (insert): Remove, replace by
6158 std::vector interface. Update callers.
6160 * flower/include/array.icc (insert): Change signature to
6161 match std::vector interface.
6163 * flower/include/array.icc (vector_sort): Bugfix.
6165 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6167 * lily/parser.yy (output_def_head_with_mode_switch): new
6168 production. Result: dashes and underscores may be used in the
6171 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6173 * python/convertrules.py (conv): oops. One slash too much.
6175 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6177 * flower/include/std-vector.hh (sort): Remove, replace by
6178 ::vector_sort. Update callers.
6180 * flower/include/std-vector.hh (slice): Remove. Update callers.
6183 * flower/test-std.cc (vector_sort): New test.
6185 2006-02-01 Graham Percival <gpermus@gmail.com>
6187 * Documentation/user/putting.itely: fixes from Erik.
6189 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6191 * flower/test-std.cc: Add simple unit test for vector migration.
6193 * stepmake/stepmake/test*: Unit test support.
6195 * flower/include/std-vector.hh (del): Remove. Use erase (),
6198 * flower/include/array.hh (begin, end): Add.
6201 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6203 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6204 std::string not String.
6206 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6209 * lily/prob.cc (Prob): copy type_ too.
6211 * lily/lily-guile.cc (mangle_cxx_identifier): new
6212 function. Class_bla::foo_bar_[px] ->
6213 ly:class-bla::foo-bar[?!]. Changes throughout
6215 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6217 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6219 * lily/beam.cc (calc_direction): take dir from visible stem in
6222 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6224 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6225 Fix -1, >=0 boundary checks for unsigned vsize.
6227 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6228 loop for unsigned vsize.
6230 * configure.in (--enable-std-vector): New option.
6231 (--enable-std-string): On by default.
6233 * flower/include/std-vector.hh: New file. Enable switch to
6234 std::vector, update client code.
6236 2006-01-30 Graham Percival <gpermus@gmail.com>
6238 * scm/document-translation.scm: clarify "this context is also
6239 known as". Thanks, Werner!
6241 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6243 * Documentation/user/invoking.itely: small fix from Don.
6245 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6247 * scm/lily.scm (define-scheme-options): rename option
6248 preview-include-book-title to book-title-preview
6249 (define-scheme-options): move force-eps-font-include (from paper
6250 block) to eps-font-include -d option.
6252 * VERSION (PATCH_LEVEL): release 2.7.30
6254 * input/bach-schenker.ly (staffPiano): new file.
6256 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6258 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6261 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6263 * ps/lilyponddefs.ps: remove start-system, stop-system,
6264 start-page fluff. This saves putting { } code on the stack, fixing
6265 stack overflows when including EPS files.
6267 2006-01-29 Graham Percival <gpermus@gmail.com>
6269 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6271 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6273 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6275 2006-01-28 Graham Percival <gpermus@gmail.com>
6277 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6279 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6281 * input/mutopia/claop.py: Update.
6283 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6285 * input/regression/completion-heads.ly (texidoc): fix.
6287 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6289 * lily/tie-formatting-problem.cc
6290 (set_ties_config_standard_directions): use abs iso fabs for ints.
6292 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6294 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6295 little less than noteheight, to prevent overlaps in chords.
6297 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6298 head, and fudge stem-attachment.
6300 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6302 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6304 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6306 * lily/main.cc (main): Debugging aid: catch exceptions.
6308 * flower/std-string.cc (to_string): Robustification. Fixes midi
6309 output with std::string.
6311 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6313 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6315 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6317 * Fix -DSTRING_UTILS_INLINED.
6319 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6321 * VERSION (PATCH_LEVEL): release 2.7.29
6323 * lily/relocate.cc (setup_paths): mingw uses std string too.
6325 * lily/*.cc: various fixes for substr(ARG).
6327 * lily/sustain-pedal.cc (print):
6329 * flower/file-name.cc (slashify): use std strings.
6331 * flower/string-convert.cc: remove publib.h
6333 * scm/define-markup-commands.scm (verbatim-file): new markup
6334 command \verbatim-file
6336 * Documentation/topdocs/NEWS.tely: fixup URLs
6338 * input/regression/alignment-vertical-manual-setting.ly (Module):
6341 * lily/align-interface.cc (align_elements_to_extents): overwrite
6342 translations with numbers in alignment-offsets from left bound
6344 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6345 (page-translate-systems): new function: take into account Y-offset.
6347 * Documentation/topdocs/NEWS.tely (Top): document new features.
6349 * input/regression/page-layout-manual-position.ly (Module): new
6352 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6354 * flower/file-path.cc (path::parse_path): Oops.
6356 * Finish std::string interface. For now, use std:: marker
6357 throughout for easy s/r.
6359 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6361 * Documentation/user/putting.itely (Score is a single musical
6363 (Score is a single musical expression): more typos.
6365 * scm/page.scm (annotate-space-left): thinko.
6366 (annotate-page): more thinkos.
6368 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6370 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6371 for different \score blocks separately.
6372 (post-process-pages): put write-page-layout into paper block.
6374 * lily/output-def.cc (get_parser): new file.
6376 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6379 * lily/include/output-def.hh (class Output_def): add parser_ member.
6381 * input/regression/page-layout-twopass.ly (Module): new file.
6383 * scm/lily.scm: remove cpp hack.
6385 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6387 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6389 * GNUmakefile.in (c-clean): New target.
6391 * flower/include/std-string.hh: String/std::string compatibility:
6392 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6395 * flower/rational.cc:
6396 * flower/include/rational.hh:
6399 * flower/include/offset.hh:
6401 * flower/interval.cc:
6402 * flower/include/interval.hh:
6404 * flower/string-convert.cc:
6405 * flower/include/string-convert.hh: Use std::string [interface].
6408 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6410 * Documentation/index.html.in: clean up.
6412 2006-01-25 Graham Percival <gpermus@gmail.com>
6414 * Documentation/user/putting.itely: another new untested doc section.
6416 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6418 * scm/layout-page-layout.scm (write-page-breaks): write
6419 \spacingTweaks #ALIST. Handle grace timing.
6421 * scm/: more imports.
6423 * scm/page.scm (make-page): add footer/header.
6424 (annotate-space-left): revise: only take page argument.
6425 (layout->page-init): new function.
6427 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6428 version of the system/spacing/linebreak hack writing to the output
6430 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6433 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6436 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6438 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6440 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6442 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6443 handling to page.scm
6445 * lily/prob-scheme.cc (LY_DEFINE): new file.
6446 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6448 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6451 * lily/music.cc (derived_mark): derive Music from Prob.
6453 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6455 * lily/prob.cc (Module): Implement Prob (Property Object), object
6456 with shared and r/w property alists.
6458 * lily/include/prob.hh (Module): new file. Declare Prob.
6460 * flower/string.cc: remove is_empty().
6462 * flower/include/string.hh (class String): remove String:: qualifier.
6464 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6465 substitute appropriate functions.
6467 * flower/include/string.hh (class String): remove to_str0 and
6468 is_empty(). S&R everywhere.
6470 2006-01-23 Graham Percival <gpermus@gmail.com>
6472 * Documentation/user/basic-notation.itely: add hairpin
6473 after-linebreak tweak to commonprop.
6475 * Documentation/user/putting.itely: added two new sections.
6477 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6479 * flower/international.cc:
6480 * flower/include/international.hh:
6482 * flower/getopt-long.cc:
6483 * flower/include/getopt-long.hh: Use std::string [interface].
6486 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6488 * stepmake/stepmake/executable-rules.make: Add dependency on
6491 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6493 * flower/file-path.cc:
6494 * flower/include/file-path.hh: Use std::string [interface].
6497 * flower/direction.cc:
6498 * flower/axis.cc: Unused. Remove.
6500 * configure.in (--enable-std-string): New option.
6502 * flower/std-string.cc:
6503 * flower/include/std-string.hh: New file.
6505 * flower/file-name.cc[STD_STRING]:
6506 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6508 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6510 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6512 * scm/define-markup-commands.scm (with-dimensions):
6513 with-dimensions markup command.
6515 * input/test/font-table.ly: use it.
6517 * lily/open-type-font.cc (glyph_list): new function.
6519 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6521 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6523 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6525 * ly/music-functions-init.ly (parallelMusic): new music function
6526 for parallel music entry.
6528 * scm/define-music-properties.scm (all-music-properties): new
6529 'void music property
6531 * scm/music-functions.scm (ly:music-message): make public, to be
6532 used in music function definitions
6534 * scm/lily-library.scm (collect-music-for-book): discard music
6535 when the 'void property is set.
6537 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6539 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6541 * mf/GNUmakefile: idem.
6543 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6545 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6547 * Documentation/user/notation-appendices.itely (The Feta font):
6550 * input/test/font-table.ly: new file. Generate font table within lily.
6552 * Documentation/user/notation-appendices.itely (The Feta font):
6553 use new font-table.ly file.
6555 * stepmake/stepmake/install-out-targets.make
6556 (local-install-outfiles): only create directory if
6557 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6559 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6561 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6563 * VERSION (PACKAGE_NAME): release 2.7.28
6565 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6566 the right font from a Mac dfont.
6567 (write-preamble): don't forget directory, only look at files.
6569 This fixes problems with TTF files in dfonts that don't match
6570 their PostScript names.
6572 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6573 PS name from TTF font.
6575 * input/regression/tie-manual.ly: document new feature.
6577 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6579 * VERSION (MY_PATCH_LEVEL): bump to .28
6581 * Documentation/user/basic-notation.itely (Ties): add tie examples
6584 * lily/tie-formatting-problem.cc (score_ties_configuration):
6585 symmetry penalties for outer ties.
6587 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6589 * lily/tie-formatting-problem.cc (generate_configuration)
6590 (set_manual_tie_configuration): skip non-pair manual
6591 tie-configuration, so you can set individual ties as
6593 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6595 * input/regression/tie-chord.ly: use generateTiePattern to
6598 * lily/tie-formatting-problem.cc (peak_around): new function.
6599 (score_configuration): use sliding criterion for staff line collisions.
6600 (score_configuration): idem for dot collisions.
6601 (generate_configuration): use separate stem_gap for gap to stem.
6603 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6604 separate penalty factors for x and y distance.
6605 (struct Tie_details): separate penalties for tip and center line collisions.
6607 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6609 * lily/tie-formatting-problem.cc (generate_configuration): make
6610 large ties avoid stafflines in the horizontal section.
6611 (score_configuration): use softcoded penalties
6612 (score_aptitude): idem.
6614 * lily/tie-helper.cc (from_grob): softcode tie details
6616 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6618 * lily/staff-symbol-referencer.cc (on_line): rename from
6621 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6623 * ly/music-functions-init.ly: remove duplicate tag.
6625 * lily/include/*.hh: GCC 4.1 fixes.
6627 006-01-16 Erlend Aasland <erlenda@gmail.com>
6629 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6631 * scm/define-music-types.scm: fix bug in desc. string
6632 for OverrideProperty
6634 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6636 * scripts/lilypond-book.py: bugfix
6638 * scm/define-music-types.scm: fix typos.
6640 2006-01-14 Graham Percival <gpermus@gmail.com>
6642 * Documentation/user/ basic-notation.itely, global.itely,
6643 advanced-notation.itely, instrument-notation.itely: small
6644 additions (bugs and commonly tweaked properties).
6646 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6648 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6649 detection of mingw build.
6650 (MINGW_BUILD): opps.
6652 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6654 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6657 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6659 * scm/music-functions.scm (skip->rest): add skip->rest
6661 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6663 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6666 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6667 config dirs. Aids debugging.
6668 (display_config): also display config files.
6670 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6672 * VERSION: release 2.7.27
6674 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6675 for determining bar size.
6677 * lily/staff-symbol.cc (print): place lines at distance line-positions
6679 * scm/define-grob-properties.scm (all-user-grob-properties): add
6682 * lily/staff-symbol.cc (height): new function.
6684 * input/regression/staff-line-positions.ly: new file.
6686 2006-01-06 Graham Percival <gpermus@gmail.com>
6688 * input/test/add-staccato.ly: remove reference to old file.
6690 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6692 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6693 lilypond binary too.
6695 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6697 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6699 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6701 * scripts/midi2ly.py: Bugfix: Declare datadir.
6703 * make/ly-rules.make:
6704 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6705 that seems to be gone). Fixes make web.
6707 * The grand 2005-2006 replace.
6709 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6711 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6713 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6714 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6715 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6716 like -dgs-font-load.
6718 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6719 remove absolute path to lilypond binary.
6721 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6723 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6725 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6727 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6729 * mf/GNUmakefile: remove broken dvips map symlink.
6731 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6734 * configure.in: Cosmetic fixes.
6736 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6738 * Documentation/user/music-glossary.tely (Pitch names): Added
6739 Spanish pitch names and durations, thanks to Ernesto Gancedo
6741 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6743 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6744 init. Fixes verbose printing of .scm files.
6746 * stepmake/aclocal.m4: add spaces before - options.
6748 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6750 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6751 of path search in local block variable.
6753 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6755 * configure.in (NCSB_DIR): --enable-ncsb-dir
6756 (LINK_GXX_STATICALLY): denko.
6758 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6760 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6761 use locate to find c059033l.pfb.
6763 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6765 * lily/tie-formatting-problem.cc
6766 (problem::generate_base_chord_configuration): Use my_round (was
6769 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6770 do not invoke mbrtowc.
6772 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6774 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6776 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6778 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6780 * Documentation/user/invoking.itely (svg): revise.
6782 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6784 * lily/lexer.ll: use sourcefilename iso. renameinput.
6786 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6788 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6789 <PostScriptName>.ttf instead of c059XXXttf.
6791 * lily/program-option.cc (LY_DEFINE): special support for
6792 --verbose, so it works before option init too.
6794 * mf/GNUmakefile (local-install): oops.
6796 * lily/lyric-hyphen.cc (print): oops.
6798 * buildscripts/pfx2ttf.fontforge: new file.
6800 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6801 ($(outdir)/%.ttf): new rule.
6803 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6806 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6809 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6811 * VERSION: release 2.7.26
6813 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6815 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6817 * lily/font-config.cc (init_fontconfig): verbosity.
6819 * THANKS: add Muziekacademie Lede.
6821 * scripts/musicxml2ly.py (print_voice_definitions): new function
6822 (print_score_setup): new function
6823 (convert): read part definition to output staves properly.
6825 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6828 * python/musicexp.py (Output_printer.__init__): use _ in data
6830 (Output_printer.unformatted_output): new function: no formatting,
6832 (Duration.get_length): remove isinstance() checks for
6833 Output_printer everywhere.
6835 * input/regression/lyrics-bar.ly (texidoc): add
6836 Separating_line_group_engraver.
6838 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6840 * lily/relocate.cc (framework_relocation): New function,
6841 factored from set_relocation ().
6842 (prefix_relocation): Rename from set_relocation ().
6843 (setup_paths): Use it.
6845 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6847 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6848 numbers. Patch by Erlend Aasland.
6850 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6852 * lily/font-config.cc (init_fontconfig): print warning if cache
6853 file is not existant.
6855 * lily/main.cc: don't use #ifdef but #if
6857 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6859 * lily/grob-property.cc (internal_set_property): don't abort on
6860 calculation-in-progress.
6862 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6864 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6865 connect-to-neighbor property not connect-to-other
6867 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6868 (LY_DEFINE): oops. don't forget protection.
6870 * flower/parse-afm.cc (Module): strip AFM handling completely.
6872 * lily/stencil-expression.cc: idem.
6874 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6876 * lily/function-documentation.cc (ly_add_function_documentation):
6877 use static member iso. Protected_scm
6879 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6881 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6883 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6885 * lily/relocate.cc (set_env_dir): New function.
6886 (set_relocation): Use it to fix setting PANGO_PREFIX.
6888 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6890 * input/regression/stem-direction-context.ly: remove rest.
6892 * lily/melody-engraver.cc (process_music): restart for bar lines.
6893 (acknowledge_slur): restart for slurs.
6895 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6897 * Documentation/user/invoking.itely: describe how to view SVG
6898 output using Inkscape which replace embedded fonts with OTF fonts.
6900 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6902 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6904 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6906 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6909 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6911 * VERSION (PACKAGE_NAME): release 2.7.25
6913 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6915 * input/regression/stem-direction-context.ly: new file.
6917 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6919 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6922 * ly/engraver-init.ly: add Melody_engraver
6924 * lily/beam.cc (calc_direction): use default-direction
6925 iso. get_default_direction()
6927 * scm/define-grob-properties.scm (all-user-grob-properties): add
6928 default-direction property.
6930 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6932 * lily/stem.cc (calc_default_direction): remove
6933 Stem::get_default_direction, use default-direction with callback
6936 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6938 * lily/melody-engraver.cc: new file. Acknowledge stems for
6939 interpolated stem directions.
6941 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6943 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6945 * lily/slur-configuration.cc (fit_factor): more robust check for
6946 point in curve X-extent.
6948 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6949 (outside_slur_callback): check for 'outside avoidance.
6951 * lily/slur-configuration.cc (score_extra_encompass): don't use
6952 bound->column() == avoid->column() for checking extents, as this
6953 doesn't work for accidentals.
6955 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6956 DynamicText hardcoding.
6958 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6959 crash if bound stem is NULL
6961 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6964 2005-12-22 Graham Percival <gpermus@gmail.com>
6966 * scm/define-markup-commands.scm: typo. @code{\raise}
6969 * darwin.patch: now used again, includes a
6970 required patch from fink.
6972 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6974 * po/TODO: mention gtranslator along with kbabel.
6975 * po/fi.po: update translations.
6977 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6979 * lily/relocate.cc (setup_paths): Bugfix.
6981 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6983 * lily/slur-configuration.cc (score_extra_encompass): don't use
6984 "avoid" choice for avoid-slur.
6986 * stepmake/bin/install.py (dest): don't create existing dir.
6988 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6990 * stepmake/bin/install.py: Remove file before copying.
6993 * stepmake/aclocal.m4: Do not substitute INSTALL.
6995 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6997 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6998 depend on link-tree.
7000 * lily/relocate.cc (setup_paths): only check path for non-absolute
7001 dir without directory part.
7003 * flower/file-name.cc (is_absolute): new method.
7004 (is_absolute): check root_ too.
7006 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7008 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7009 relocation code. Oops, don't comment out too much.
7011 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7014 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7017 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7019 * .cvsignore: Add install-sh.
7021 * autogen.sh (srcdir): Typo.
7023 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7025 * autogen.sh (srcdir): urg. Touch install-sh.
7027 * stepmake/bin/install-sh (Module): remove.
7029 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7031 * lily/include/relocate.hh: new file.
7033 * lily/relocate.cc: new file. Contain relocation logic.
7035 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7036 (main): read LILYPOND_VERBOSE as the first thing.
7038 * stepmake/aclocal.m4: remove INSTALL variable.
7040 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7041 separate target for making font symlinks.
7042 (documentation-dir): use $(if $(findstring )) for switching off
7045 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7046 something if DOCUMENTATION is no.
7048 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7050 * VERSION: release 2.7.24
7052 * lily/script-column-engraver.cc (stop_translation_timestep):
7053 delay adding to script-column.
7055 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7057 * python/convertrules.py (conv): rule for number-visibility
7059 * lily/slur-configuration.cc (score_extra_encompass): different
7060 distance measure for avoid and inside avoidance.
7061 (score_extra_encompass): use 1/(distance+eps) as penalty.
7063 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7064 encompass objects for generating slur curves.
7066 * lily/slur.cc: use details iso. slur-details property.
7068 * input/regression/slur-tuplet.ly: new file.
7070 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7072 * flower/include/offset.hh (class Offset): new operator /=
7074 * lily/tuplet-number.cc (print): new file, new interface.
7076 * scm/define-grob-properties.scm (all-user-grob-properties):
7077 remove number-visibility property.
7079 * lily/tuplet-bracket.cc (calc_control_points): new function
7080 (calc_connect_to_neighbors): new function.
7081 (print): remove text handling for tuplet numberdef.
7083 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7086 * lily/lily-guile.cc (robust_scm2booldrul): new function
7088 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7090 * lily/tuplet-bracket.cc (calc_position_and_height): use
7091 staff-padding to control whether tuplet brackets are over staves.
7093 * lily/grob.cc (suicide): clear dim_caches_.
7095 * lily/dimension-cache.cc (clear): new function.
7097 * lily/grob.cc (extent): swap order of min-extent and extent
7098 calculations. This fixes hara kiri staves.
7100 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7102 * lily/main.cc: Nitpick: relocation is not based on path, but on
7103 directory (location).
7105 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7107 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7109 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7111 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7113 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7115 * stepmake/stepmake/generic-vars.make (Module): idem.
7117 * stepmake/stepmake/executable-targets.make (default): use it.
7119 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7121 * make/GNUmakefile: don't install make rules.
7123 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7125 (prepend_env_path): more verbosity.
7127 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7129 * GNUmakefile.in: add dir argument for find command.
7131 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7132 fixes weird line numbers for point & click.
7134 * lily/source-file.cc (get_counts): init line/column/char counts.
7136 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7138 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7140 2005-12-16 Graham Percival <gpermus@gmail.com>
7142 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7143 minor fixes from Fredric. Thanks!
7145 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7147 * ly/music-functions-init.ly: add \bar and \clef music function
7149 * lily/lily-lexer.cc: idem.
7151 * lily/parser.yy (FIXME): remove BAR and CLEF.
7153 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7155 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7157 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7158 function arguments too
7160 * lily/main.cc (set_relocation): new function.
7162 * scripts/musicxml2ly.py (convert): add \version
7164 * lily/tie.cc: remove get_default_attachments()
7166 * VERSION (PACKAGE_NAME): release 2.7.23
7168 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7169 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7171 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7173 * lily/tie-formatting-problem.cc (score_ties): new function
7174 (get_variations): new function. Try flipping dirs for collisions.
7175 (generate_optimal_chord_configuration): new function. 1-opt search
7176 for better configuration.
7178 * lily/tie-configuration.cc: new file.
7180 * lily/tie.cc: junk Tie::get_configuration()
7182 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7183 (score_ties_configuration): new function.
7184 (generate_ties_configuration): new function.
7185 (generate_base_chord_configuration): new function.
7186 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7187 (set_manual_tie_configuration): Move body from tie-column-format.cc
7189 * input/regression/tie-dot.ly: new file.
7191 * lily/tie-formatting-problem.cc (score_configuration): score
7194 * lily/tie-helper.cc (get_transformed_bezier): new function
7196 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7198 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7199 -undefined suppress iso. -framework Python
7201 * scm/define-grobs.scm (all-grob-descriptions): set
7202 springs-and-rods (thanks Joe Neeman!)
7204 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7206 * input/no-notation/display-lily-tests.ly (test):
7207 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7208 changed from \tag #'(a b) to \tag #'a \tag #'b
7210 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7212 * Documentation/topdocs/NEWS.tely: strip out-www.
7214 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7216 * config.make.in (AR): add AR and RANLIB
7218 * flower/libc-extension.cc: include cassert
7220 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7223 2005-12-11 Graham Percival <gpermus@gmail.com>
7225 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7227 * stepmake/stepmake/python-modules-vars.make: define
7228 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7230 * THANKS: added Johannes Schindelin.
7232 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7234 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7236 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7237 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7239 * lily/parser.yy: reorganize file layout.
7241 * ly/music-functions-init.ly: add tweak music function.
7243 * lily/grob-info.cc (ultimate_music_cause): new function:
7244 recursively lookup causes.
7246 * lily/parser.yy (chord_body_element): allow music functions for
7247 post-events, allow music functions for chord elements.
7249 * lily/font-config-scheme.cc (display_fontset): add cast.
7251 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7252 #'(a b) -> \tag #'a \tag #'b rule.
7254 * python/musicexp.py (Output_printer.dump_version): new function
7256 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7258 * lily/parser.yy (FIXME): remove \tag
7259 (FIXME): remove tag_music() function.
7261 * lily/lily-lexer.cc: remove \tag
7263 * ly/music-functions-init.ly: define music-function "tag"
7265 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7267 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7269 * VERSION (PATCH_LEVEL): release 2.7.22
7271 * input/regression/lyric-hyphen-retain.ly: renew.
7273 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7276 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7277 iso. minimum-length property for rods.
7279 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7280 LyricSpace item to keep lyrics spaced apart.
7282 * ly/engraver-init.ly: remove Separating_line_group_engraver
7284 * Documentation/user/music-glossary.tely: do setfilename before
7287 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7289 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7290 See xref documentation, for example.
7292 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7294 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7295 pending_skip iso. ly_voice[-1]
7296 (main): add if __main__ for debugging.
7298 * python/musicxml.py (Accidental.__init__): new class.
7300 * scripts/musicxml2ly.py (progress): new function
7301 (musicxml_key_to_lily): don't barf on modeless keys.
7302 (create_skip_music): new function.
7303 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7304 (musicxml_note_to_lily_main_event): new function.
7306 * python/musicexp.py (Music.__init__): add comment field.
7307 (NestedMusic.append): new routine.
7308 (SequentialMusic.print_ly): print comment.
7309 (ArpeggioEvent.ly_expression): new class
7310 (BeamEvent.ly_expression): new class
7311 (NoteEvent.__init__): support for cautionary/forced accs.
7313 * lily/lookup.cc (slur): normal order for array loop.
7315 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7318 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7321 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7323 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7325 * scripts/lilypond-book.py: Introduce option
7326 --preserve-line-breaks, for usage with srcltx
7328 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7330 * scm/output-lib.scm (print-circled-text-callback): draw circle
7331 around text using make-circle-markup.
7333 * Documentation/user/*: strip out-www from file names.
7335 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7337 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7338 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7340 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7342 * Documentation/user/GNUmakefile: idem.
7344 * Documentation/user/macros.itexi: strip out-www
7346 * python/rational.py: python 2.3 compat.
7348 * VERSION (PATCH_LEVEL): release 2.7.21
7350 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7351 option formatting, lilypond style.
7353 * python/musicexp.py: grab from Ikebana: a library for composing
7354 ly music expressions.
7355 (Output_printer): class for advanced .ly printing.
7358 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7359 convert to pythonesque structure.
7361 * python/rational.py: PD rational number class.
7363 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7365 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7367 * lily/part-combine-iterator.cc: Minor bugfix
7369 * THANKS: Update bughunters
7371 2005-12-02 Werner Lemberg <wl@gnu.org>
7373 * mf/README: Document process for proper mf2pt1 conversion.
7375 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7378 * mf/feta-harmonica.mf: Removed. Unused.
7380 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7382 * scripts/lilypond-book.py (do_file): fix thinkos.
7384 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7386 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7387 ($(outdir)/parser.cc):
7388 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7390 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7392 * ly/titling-init.ly (tagline): it should be a space between
7393 "Music engraving by LilyPond" and the version number.
7395 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7397 * VERSION (PACKAGE_NAME): release 2.7.20
7399 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7401 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7403 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7405 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7407 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7409 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7411 * kpath-guile/: remove directory
7413 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7414 file. Encapsulate kpathsea using commandline tools.
7416 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7419 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7421 * Documentation/user/advanced-notation.itely (Setting automatic
7422 beam behavior): Correct a few typos. Thanks to David Bobroff.
7424 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7425 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7427 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7429 * scripts/*.py: gmane address for bugs.
7431 2005-11-28 Pal Benko <benkop@freestart.hu>
7433 * make/ly-rules.make: add -f switch to mv
7435 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7437 * lily/bar-line.cc: interpret it
7439 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7441 * configure.in (--disable-documentation): New switch.
7443 * GNUmakefile.in: Use it.
7445 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7447 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7449 * scripts/lilypond-book.py (do_file): search chunks for
7452 * GNUmakefile.in: add copy step in between so we can lose the
7453 out-www directories.
7455 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7457 * lily/pango-font.cc (pango_item_string_stencil): put
7458 geometry.width into glyph-string too.
7460 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7462 * scm/define-music-display-methods.scm (RevertProperty):
7463 (OverrideProperty): Use grob-property-path property, a list of
7464 symbols, instead of grob-property, which used to be a single
7466 (BassFigureEvent): a figure can be a plain number, not necessarily a
7469 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7471 * VERSION: release 2.7.19
7473 * lily/figured-bass-engraver.cc (process_music): check
7474 figuredBassCenterContinuations first.
7476 * scm/translation-functions.scm (format-bass-figure): make double
7479 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7482 * lily/system-start-delimiter-engraver.cc: move from
7483 Nested_system_start_delimiter_engraver, rename
7484 Nested_system_start_delimiter_engraver ->
7485 System_start_delimiter_engraver.
7487 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7488 bracket type from hierarchy.
7490 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7492 * lily/rest.cc (y_offset_callback): read staff-position.
7494 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7495 mark after-line-breaking-callback as internal.
7497 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7499 2005-11-25 Werner Lemberg <wl@gnu.org>
7501 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7503 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7505 * stepmake/bin/add-html-footer.py (do_file): add google
7507 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7508 staff if first_start_ is true.
7510 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7512 * scripts/midi2ly.py (split_track): add __repr__ members.
7513 (track_first_item): only return Item if not None. This fixes a
7514 problem when dumping a track that starts with an empty channel.
7516 * python/midi.c: doc module.
7518 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7520 * Documentation/user/global.itely (Creating MIDI files): Fix
7521 compilation problem.
7523 2005-11-22 Graham Percival <gpermus@gmail.com>
7525 * Documentation/user/basic-notation.itely: clarify dynamic
7528 * Documentation/user/advanced-notation.itely: add unicode
7529 escape control example, whatever that is. :)
7531 * Documentation/user/global.itely: added "removing dynamics
7534 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7536 * VERSION (PATCH_LEVEL): release 2.7.18
7538 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7539 System_start_delimiter_engraver by
7540 Nested_system_start_delimiter_engraver.
7542 * lily/nested-system-start-delimiter-engraver.cc (struct
7543 Bracket_nesting_node): new class.
7544 (struct Bracket_nesting_group): new class
7545 (struct Bracket_nesting_staff): new class.
7546 (process_music): create hierarchy of grobs. This allows separate
7547 tuning of different SSDs.
7549 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7550 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7552 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7554 * lily/side-position-interface.cc (aligned_side): multiply
7557 * lily/script-engraver.cc (make_script_from_event): allow setting
7560 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7562 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7564 * scm/define-grobs.scm (all-grob-descriptions): new grob
7565 NestedSystemStartDelimiter.
7567 * input/regression/system-start-heavy-bar.ly: new file.
7569 * lily/nested-system-start-delimiter-engraver.cc: new file.
7571 * lily/nested-system-start-delimiter.cc: new file.
7573 * input/regression/system-start-nesting.ly: new file.
7575 * scm/define-grobs.scm (all-grob-descriptions): use X side
7576 positioning for positioning braces for nested contexts.
7578 * lily/system-start-delimiter.cc (print): don't divide extent by
7580 (print): use style iso. glyph.
7581 (staff_bracket): translate glyph inside routine already.
7583 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7585 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7588 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7590 * scm/define-context-properties.scm
7591 (all-user-translation-properties): rename figuredBassFormatter
7592 from newFiguredBassFormatter.
7594 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7596 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7598 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7600 * lily/beam.cc (calc_beaming): new function.
7601 (calc_shorten): new function.
7603 * THANKS: add Edward Neeman.
7605 * input/regression/accidental-clef-change.ly: new file.
7607 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7609 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7611 * lily/clef-engraver.cc (inspect_clef_properties): reset
7612 localKeySignature for clef changes.
7614 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7616 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7617 add dummy definition that works in Linux and add information in
7618 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7620 * Documentation/user/changing-defaults.itely (Modifying context
7621 plug-ins): Add index for \with.
7623 * Documentation/user/music-glossary.tely (dal segno): Updated
7624 example to version >=2.6.
7626 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7628 * Documentation/user/instrument-notation.itely (Printing chord
7629 names): Reorder \chordmode and \repeat in one example.
7631 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7633 * VERSION: release 2.7.17
7635 * Documentation/topdocs/NEWS.tely (Top): add note about
7638 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7639 new function. Search region of 3 positions for best tie.
7640 (score_configuration): new function.
7641 (score_aptitude): new function.
7642 (generate_configuration): new function.
7643 (get_configuration): new function.
7644 (Tie_formatting_problem): new function
7646 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7648 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7650 * THANKS: add Eduardo Vieira & Ralph Little
7652 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7655 * lily/include/tie-formatting-problem.hh (class
7656 Tie_formatting_problem): add Tie_details to
7657 Tie_formatting_problem. Update calling conventions.
7659 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7662 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7664 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7666 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7667 scm/define-context-properties.scm: Maintenance bugfix: make
7668 ligature brackets work again by removing obsolete ligature
7669 primitive callback push/pop.
7671 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7672 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7675 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7677 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7678 used and do not call it a path.
7679 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7681 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7683 * lily/include/tie-formatting-problem.hh (class
7684 Tie_formatting_problem): new file.
7686 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7688 * Documentation/misc/ChangeLog-2.3: new file.
7690 * lily/audio-staff.cc (output): degarianize.
7692 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7694 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7695 Unset PYTHONOPTIMIZE. Fixes install if set.
7697 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7699 * python/convertrules.py (conv): add warning about drums.
7701 * make/stepmake.make: include toplevel-version.make after config.make.
7703 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7704 also allow python2.4
7706 * config.make.in (configure-srcdir): remove GXX GCC vars.
7708 * stepmake/aclocal.m4: don't do non-srcdir build with
7709 symlinks. Use inclusion, so the src directory name can be changed.
7711 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7713 * make/mutopia-vars.make:
7714 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7717 2005-11-13 Werner Lemberg <wl@gnu.org>
7719 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7720 but the affected path. This ensures that the (overlapping) outlines
7721 have the same direction, which is a necessary prerequisite for
7722 FontForge's algorithm to remove overlaps.
7725 * mf/feta-haak.mf: Formatting.
7726 (draw_bracket): Slightly modify outline to avoid an unnecessary
7728 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7729 them from the affected paths.
7731 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7733 * mf/README: remove xpm / accordion notes.
7735 * lily/tie-column-format.cc (set_chord_outline): add dots into
7736 skyline extents. This fixes tie formatting if the left head has dots.
7738 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7739 space inside the staff.
7740 (get_configuration): shift another position if necessary in case
7743 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7745 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7746 buildscript-dir iso. $(depth)/buildscripts.
7748 * tex/GNUmakefile (local-uninstall): remove
7749 music-drawing-routines.ps juggling.
7751 * stepmake/stepmake/install-targets.make (local-install-files):
7752 prepend src-dir to install targets.
7754 * lily/system-start-delimiter-engraver.cc
7755 (acknowledge_system_start_delimiter): use
7756 add_offset_callback(). This fixes translation of nested
7759 * lily/grob-closure.cc (add_offset_callback): only encaps in
7760 simple_closure if it's a procedure.
7762 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7765 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7766 remove-empty where pertinent.
7768 2005-11-12 Graham Percival <gpermus@gmail.com>
7770 * Documentation/user/instrument-notation.itely: added
7771 Cameron Horsburgh's multiple stanzas docs. Thanks!
7773 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7776 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7777 make picture in builddir, not srcdir.
7779 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7781 * VERSION: release 2.7.16
7783 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7786 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7788 * Documentation/user/examples.itely (Piano templates): Minor
7789 modification to the Piano centered lyrics example.
7791 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7793 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7796 * Documentation/user/point-and-click.itely: simplify p&c
7797 instruction: don't configure firefox. Put lilypond-invoke-editor
7798 in front of the browser.
7800 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7801 (run-browser): new function.
7803 * lily/parser.yy (Lily_lexer): recognize Book
7805 * lily/book.cc (clone): new function
7807 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7809 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7811 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7812 Maintenance bugfix: reduce number of font related warnings by
7813 updating naming conventions for glyph-name.
7815 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7817 * scm/define-grobs.scm (all-grob-descriptions): add
7818 rhythmic-grob-interface to TabNoteHead.
7820 * scm/layout-beam.scm (check-quant-callbacks): remove
7823 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7825 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7826 alignment of centered divisiones.
7828 * scm/scripts.scm (articulations): Maintenance bugfix:
7829 follow-into-staff -> quantize-position.
7831 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7832 plica head in porrectus deminutus.
7834 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7836 * make/lilypond.fedora.spec.in (Group): add %clean section.
7838 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7839 less then 1/5th of total length.
7840 (print): use gap too. Fixes tupletUp-single-bracket.ly
7842 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7843 events into EventChord. This fixes textspanners on mm rests. Fixes
7846 * lily/side-position-interface.cc (get_axis): read side-axis
7847 (set_axis): set side-axis.
7849 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7850 properties everywhere.
7852 * lily/spacing-spanner.cc (breakable_column_spacing): add
7853 average-spacing-wishes. Take maximum if not set.
7854 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7856 * scm/define-grobs.scm (all-grob-descriptions): add
7857 average-spacing-wishes.
7859 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7860 offset callbacks. This fixes alignment for Fingering objects.
7862 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7863 space for key - timesig combination.
7865 * input/regression/script-stem-tremolo.ly (Module): new file.
7867 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7870 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7871 Fixes: c-tremolo-script.ly.
7873 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7875 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7877 * scm/define-grobs.scm (all-grob-descriptions): remove
7878 self-X-offset. Fixes alignment of octavate-8.
7880 * scripts/lilypond-book.py (datadir): look in
7881 LILYPONDPREFIX/share/lilypond/current/
7883 * GNUmakefile.in: symlink current to <VERSION>.
7885 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7887 * lily/main.cc: eps listed as a backend.
7889 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7891 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7893 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7895 * lily/include/score.hh (class Score): remove texts_ member.
7897 * lily/beam.cc (set_stem_lengths): force direction callback.
7898 (print): read quantized-positions, so we can force
7899 Beam::set_stem_lengths to occur.
7900 (rest_collision_callback): use common X parent.
7902 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7904 * flower/file-path.cc (find): Bugfix: Return name of file found.
7906 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7907 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7908 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7910 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7912 * flower/offset.cc: idem.
7914 * mf/*.mf: update email address.
7916 * lily/font-config-scheme.cc: new file.
7918 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7920 * lily/*: cs.uu.nl -> xs4all.nl
7922 * VERSION (PATCH_LEVEL): release 2.7.15
7924 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7927 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7929 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7931 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7933 * lily/staff-performer.cc (process_music): add audio
7934 elements. This makes MIDI instrument changes work once again.
7936 * lily/main.cc (LY_DEFINE): add gmane address.
7938 * lily/beam.cc: remove calc_positions()
7940 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7941 original_ in private scope.
7942 (class Grob): drop pscore_ pointer, change to output_def pointer.
7943 (class Grob): cleanup class definition.
7945 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7947 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7949 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7950 absolute. Better diagnostics.
7952 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7953 This makes lilypond run from the build directory using argv0
7954 relocation (without any --prefix or LILYPONDPREFIX setting).
7956 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7958 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7960 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7961 with simple-closure.
7963 * lily/self-aligment-interface.cc (set_align_self): new function
7964 (set_center_parent): new function.
7966 * lily/side-position-interface.cc (set_axis): new function.
7968 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7971 * scm/define-grob-properties.scm (all-user-grob-properties):
7972 remove [XY]-offset-callbacks add [YX]-offset
7974 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7976 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7977 entry for time signatures after breathing signs. Bug report by
7980 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7982 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7983 not absolute, make it absolute using PATH.
7985 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7987 * python/midi.c (initmidi): Fix type for mingw.
7989 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7991 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7993 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7996 * stepmake/aclocal.m4: Support python cross compiling.
7998 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8001 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8003 * scm/output-lib.scm (chain-grob-member-functions): replace
8006 * lily/chained-callback.cc (Module): remove file.
8008 * lily/rest-collision.cc (force_shift_callback_rest): change to
8011 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8013 * lily/grob.cc (y_parent_positioning): remove axis argument from
8014 parent_positioning callbacks.
8015 (Grob): junk init code
8016 (get_offset): use generic property callbacks for
8017 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8018 (axis_parent_positioning): new function
8019 (axis_offset_symbol): new function
8020 (chain_offset_callback): new function
8021 (add_offset_callback): new function
8023 * lily/beam.cc (rest_collision_callback): change signature; this
8024 is now a chained callback.
8026 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8027 callback administration.
8029 * lily/simple-closure.cc: new file. Smob type that allows "grob
8032 (ly:make-simple-closure FUNC A B)
8034 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8037 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8040 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8042 * lily/rest.cc (polyphonic_offset_callback): remove.
8044 * lily/script-engraver.cc (try_music): remove bool* argument.
8046 * scm/script.scm (default-script-alist): set quantize-position
8049 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8051 * lily/side-position-interface.cc (aligned_side): move staff
8052 position quantization from
8053 Side_position_interface::quantised_position().
8054 (quantised_position): remove
8056 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8058 * input/regression/beam-quant-standard.ly: reindent, set
8059 debug-beam-quanting to #t.
8061 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8062 10000 if this is a "hard" concave beam.
8064 * lily/beam.cc (calc_least_squares_positions): change from
8065 calc_least_squares_dy
8066 (set_stem_lengths): this is now a chained callback.
8068 * lily/context-property.cc (execute_general_pushpop_property):
8069 bugfix override with procedure should have effect.
8071 * scm/define-grob-properties.scm (all-internal-grob-properties):
8072 remove position-callbacks.
8074 * scm/define-grobs.scm (all-grob-descriptions): use
8075 ly:make-callback-chain for positions property.
8077 * scm/layout-beam.scm (check-quant-callbacks): return list of
8080 * scm/lily.scm (type-p-name-alist): add callback-chain
8082 * lily/lily-guile.cc (type_check_assignment): type check failure
8083 is warning not message.
8085 * lily/grob-property.cc (try_callback): walk callback chain if
8088 * lily/chained-callback.cc: new file. new smob type.
8090 * lily/lily-guile.cc (procedure_arity): new function.
8092 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8094 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8096 2005-10-25 John Mandereau <john.mandereau@free.fr>
8098 * Documentation/user/instrument-notation.itely (Figured bass):
8099 describe new features
8101 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8103 * lily/beam.cc (calc_least_squares_dy): use property callback.
8105 * lily/beam-concave.cc (calc_concaveness): use property callback.
8107 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8109 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8113 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8115 * scm/layout-page-layout.scm (page-headfoot): annotate
8118 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8120 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8121 doesn't take y-space.
8123 * scm/paper.scm (paper-alist): fix A7 dimensions.
8125 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8127 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8128 src-wildcard, remove $(wildcard).
8130 * po/GNUmakefile (PO_FILES):
8131 * ps/GNUmakefile (PS_FILES):
8132 * tex/GNUmakefile (TEX_FILES):
8133 * cygwin/GNUmakefile (POSTINSTALLS):
8134 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8135 some wildcard calls.
8137 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8139 * THANKS: add Thomas Bushnell.
8141 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8143 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8144 (lilypond-main): Redirect to gui-main if 'gui is set.
8146 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8147 for alternative installations kludging s/share/lib/g
8150 * SConstruct (libdir_package_version): Define.
8152 * python/SConscript:
8153 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8156 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8158 * lily/main.cc: clarify --safe.
8160 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8162 * VERSION: release 2.7.14
8164 * Documentation/user/*.itely: remove minimumVerticalExtent.
8166 * scm/define-grobs.scm (all-grob-descriptions): remove
8167 RemoveEmptyVerticalGroup
8169 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8171 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8174 * python/convertrules.py (conv): add rules.
8176 * lily/grob.cc: remove is_empty()
8178 * lily/grob-property.cc: remove add_to_list_property().
8180 * scripts/convert-ly.py (datadir): add prefix switching hack to
8183 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8184 space-function tweak.
8186 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8188 * scm/define-grob-properties.scm (all-user-grob-properties):
8189 remove callback property.
8191 * lily/include/grob.hh (class Grob): remove property_callbacks_
8192 member. Properties of procedure type are assumed to be callbacks.
8194 * lily/ligature-engraver.cc (override_stencil_callback):
8195 rewrite. Use noteHeadLigaturePrimitive as source.
8197 * scm/define-grob-properties.scm (all-internal-grob-properties):
8198 remove ligature-primitive-callback
8200 * lily/include/dimension-cache.hh (class Dimension_cache): make
8201 class, with Grob as friend.
8203 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8204 has_extent_callback()
8206 * scm/translation-functions.scm (format-new-bass-figure): read
8207 figuredBassPlusDirection
8209 * scm/define-context-properties.scm
8210 (all-user-translation-properties): add figuredBassPlusDirection.
8212 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8214 * lily/align-interface.cc (set_ordered): new function.
8216 * lily/grob.cc (flush_extent_cache): rewrite.
8218 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8219 Interval pointer directly.
8221 * lily/main.cc (setup_paths): insert extra / .
8222 (setup_paths): junk cff entry.
8224 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8227 * lily/axis-group-engraver.cc (finalize): remove
8228 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8230 * lily/grob.cc (Grob): don't set extent from ctor.
8231 (extent): use property callbacks.
8233 * lily/axis-group-interface.cc: remove set_axes() function.
8235 * lily/grob-property.cc (del_property): new function.
8237 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8239 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8241 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8243 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8245 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8247 * mf/SConscript: Updates.
8249 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8251 * stepmake/stepmake/*:
8255 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8256 from any directory in build-dir. Cleanups.
8258 * make/srcdir.make.in: Remove.
8260 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8262 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8265 * lily/SConscript: Remove ttftools.
8267 * SConstruct: Resurrect.
8269 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8271 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8274 * lily/paper-book.cc (add_score_title): put Paper_score title into
8277 * scm/translation-functions.scm (format-new-bass-figure): also
8278 allow plus in combination with _
8280 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8282 * VERSION: 2.7.13 released.
8284 * lily/note-collision.cc (check_meshing_chords): don't wipe
8285 stencil, merely set transparent.
8287 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8288 (Top): document #'callbacks.
8289 (Top): document nested \override.
8291 * input/regression/figured-bass.ly: update for slash and pluses.
8293 * input/regression/figured-bass-continuation-forbid.ly (Module):
8296 * scm/translation-functions.scm (format-new-bass-figure): use
8297 slashed-digit if diminished is set.
8298 (format-new-bass-figure): add + if 'augmented is set.
8300 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8302 * input/test/piano-staff-distance.ly: remove file.
8304 * Documentation/user/advanced-notation.itely (Formatting cue
8305 notes): use length-fraction for making stems/beams smaller.
8307 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8310 * lily/new-figured-bass-engraver.cc: new property
8311 centerFiguredBassContinuations
8313 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8316 * lily/context-property.cc (execute_general_pushpop_property):
8319 * input/regression/override-nest.ly: new file.
8321 * python/convertrules.py (FatalConversionError.subber): conversion
8322 rule for #'callbacks
8324 * input/regression/override-nest.ly: new function.
8326 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8329 * lily/context-property.cc (lookup_nested_property): new function.
8330 (evict_from_alist): new function.
8331 (general_pushpop_property): new function.
8332 (execute_general_pushpop_property): rewrite. Support nested
8335 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8337 * lily/beam.cc: use length-fraction too.
8339 * scm/define-grob-properties.scm (all-user-grob-properties):
8340 remove property flag-width-function
8341 (all-user-grob-properties): remove space-function.
8343 * scm/layout-beam.scm: remove flag-width-function.
8345 * lily/beam.cc: remove flag-width-function
8347 * scm/layout-beam.scm: remove beam dir functions.
8349 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8351 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8352 for easier grace tweaks.
8354 * lily/beam.cc: remove dir-function.
8356 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8358 * lily/grob.cc: remove spacing-procedure.
8360 * lily/note-head.cc (calc_stem_attachment): new function.
8361 (internal_print): use callback to get glyph-name.
8363 * lily/grob-property.cc (get_interfaces): new function.
8365 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8367 * lily/stem.cc (calc_stem_end_position): new function.
8368 (calc_length): new function.
8369 document details for stem.
8370 remove Stem::get_direction()
8372 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8374 * lily/grob-property.cc (set_callback): new function.
8376 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8378 * lily/item-scheme.cc: new file.
8380 * lily/bar-line.cc (before_line_breaking): remove function.
8381 remove bar-size-procedure, break-glyph-function
8383 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8385 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8387 * lily/system-start-delimiter.cc (print): suicide from
8388 here. Remove after_line_breaking_callback.
8390 * lily/script-interface.cc (calc_direction): use callback for direction.
8392 * lily/side-position-interface.cc (aligned_side): don't use
8393 Side_position_interface::get_direction directly. Use callback.
8395 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8397 (get_print_stencil): rename from get_stencil: create stencil with
8398 transparency, color and cause.
8400 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8402 * python/convertrules.py (conv): insert temporary warning rule.
8404 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8406 * lily/grob-property.cc (try_callback): remove marker if applicable.
8408 * lily/grob.cc: elucidate doc about after/before-line-breaking
8410 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8412 * lily/stem.cc (height): idem.
8414 * lily/stem-tremolo.cc: idem.
8416 * lily/slur.cc (height): don't use get_uncached_stencil()
8418 * lily/rest.cc (y_offset_callback): use offset callback
8419 iso. after-line-breaking callback.
8421 * lily/grob.cc: change after/before-line-breaking-callback to
8422 after/before-line-breaking dummy properties.
8424 * lily/include/grob.hh: remove Grob_status.
8426 * scm/define-context-properties.scm
8427 (all-user-translation-properties): remove verticalAlignmentChildCallback
8429 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8430 (calc_direction): use callback
8431 (calc_positions): use callback.
8433 * lily/tie.cc (calc_direction): use callback. Only call parent
8434 positioning for more than one tie.
8436 * lily/tie-column.cc (calc_positioning_done): use callback
8438 * lily/slur-scoring.cc (calc_control_points): use callback
8440 * lily/slur.cc (calc_direction): use callback.
8442 * lily/note-collision.cc (force_shift_callback): remove.
8444 * lily/dot-column.cc (force_shift_callback): remove. Use
8445 other_axis_parent_positioning.
8447 * lily/grob.cc (other_axis_parent_positioning): new function.
8448 (same_axis_parent_positioning): new function
8450 * lily/align-interface.cc (alignment_callback): remove function.
8452 * lily/note-collision.cc (calc_positioning_done): use callback.
8454 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8455 (calc_direction): idem.
8456 remove print function.
8458 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8460 * lily/dot-column.cc (calc_positioning_done): use callback.
8462 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8464 * lily/beam.cc (calc_direction): use pseudo-property for beam
8466 (calc_positions): use callback
8468 * lily/align-interface.cc (calc_positioning_done): use
8469 callback. Fold fixed distance and normal alignment in one function.
8471 * lily/stem.cc (calc_stem_end_position): use callback.
8472 (calc_positioning_done): idem.
8473 (calc_direction): idem.
8474 (calc_stem_end_position): idem
8475 (calc_stem_info): idem.
8477 * lily/grob-property.cc (get_property_data): new function:
8478 (try_callback): new function.
8480 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8483 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8485 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8487 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8491 * lily/include/*.hh (Module): compile fixes.
8493 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8495 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8496 as an argument for char-syntax: use (char-syntax (or nil 0))
8497 instead of (char-syntax nil), thanks to Milan Zamazal.
8499 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8501 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8504 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8507 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8509 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8510 add class_name() method.
8512 * lily/music-scheme.cc: remove ly:music-name.
8514 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8516 * cygwin/postinstall-lilypond.sh: Remove cruft.
8518 * cygwin/postremove-lilypond.sh: Remove.
8520 * cygwin/GNUmakefile (default): Remove postremove rules.
8522 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8524 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8527 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8530 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8531 consider break index for broken spanner.
8533 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8534 characters from string before splitting.
8536 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8538 * scm/framework-ps.scm (output-preview-framework): use
8539 is-book-title to determine whether to chop off the booktitle.
8541 * lily/paper-book.cc (systems): init from book-title-properties
8542 (add_score_title): init score-title-properties.
8544 * ly/paper-defaults.ly: add {score,book}-title-properties.
8546 * scm/document-backend.scm (lookup-interface): error message if
8547 using unknown interface.
8549 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8552 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8554 (make_bracket): new function.
8556 * scm/lily.scm (define-scheme-options): add paper-size option.
8558 * ly/declarations-init.ly (laissezVibrer): get paper size from
8561 * scm/translation-functions.scm: use \fontsize for changing the
8564 * scm/define-grobs.scm (all-grob-descriptions): set
8565 between-length-limit to 1.0
8567 * lily/tie-helper.cc: add between_length_limit_ detail property.
8569 * mf/feta-bolletjes.mf: typos.
8571 * lily/note-head.cc (internal_print): don't shadow idx
8572 parameter. This fixes wrong attachment for do shape heads.
8574 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8576 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8578 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8580 * scm/layout-slur.scm: rename from slur.scm
8582 * scm/layout-page-layout.scm: rename from page-layout.scm
8584 * scm/layout-beam.scm: rename from beam.scm
8586 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8587 bass-figure-interface
8589 * lily/new-figured-bass-engraver.cc (process_music): add
8590 implicitBassFigures property.
8592 * scm/define-markup-commands.scm (pad-x): new markup.
8594 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8595 minimumVerticalExtent on FiguredBass context.
8597 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8598 case the continuation crosses a line break.
8600 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8602 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8603 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8604 absolute file name bug.
8606 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8608 * VERSION (PACKAGE_NAME): release 2.7.12
8610 * input/regression/figured-bass-continuation-center.ly: new file.
8612 * input/regression/beam-outside-beamlets.ly: new file.
8614 * lily/beam.cc (set_beaming): don't clip edges.
8615 (connect_beams): don't clip edges.
8617 * lily/beaming-info.cc (clip_edges): new function.
8619 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8621 * Documentation/user/instrument-notation.itely (Figured bass):
8622 demonstrate extenders, update seealso links.
8624 * scm/titling.scm (marked-up-headfoot): change tagline
8625 handling. tagline = ##f will blank the tagline as well.
8627 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8629 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8631 * lily/new-figured-bass-engraver.cc (struct
8632 New_figured_bass_engraver): add new_music_found_ member.
8634 * lily/lilypond-version.cc (Lilypond_version): deal with
8635 incorrectly formatted version strings.
8637 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8638 New_figured_bass_engraver by default.
8640 * lily/ttf.cc (print_trailer): only define glyph names when
8641 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8643 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8645 * lily/horizontal-bracket.cc (make_bracket): new function.
8647 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8648 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8649 BassFigureLine, BassFigureAlignment
8651 * lily/new-figured-bass-engraver.cc (process_music): new file.
8653 * lily/figured-bass-continuation.cc: new file.
8655 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8658 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8660 * scripts/lilypond-book.py: Bug fix, put the quote around the
8661 actual score for LaTeX documents.
8663 * scm/define-grobs.scm (all-grob-descriptions): Change
8664 collapse-height of the SystemStartBracket grob to 5.0,
8665 so the bracket disappears for single stave score lines (similarly
8666 to SystemStartBraces).
8668 * Documentation/user/advanced-notation.itely (Polymetric
8669 notation): Clarify the use of compressMusic.
8671 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8672 that the grace spacer note in other staves need the same duration
8673 and document the stroke-style property.
8675 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8677 * Documentation/user/global.itely (Vertical spacing): document
8678 alignment-extra-space and fixed-alignment-extra-space.
8680 * Documentation/topdocs/NEWS.tely (Top): add entry.
8682 * input/regression/alignment-vertical-spacing.ly: new file.
8684 * python/convertrules.py (conv): add rule.
8686 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8688 * lily/align-interface.cc (stretch_after_break): new
8689 function. Read fixed-alignment-extra-space property.
8690 (align_elements_to_extents): read alignment-extra-space property.
8692 * lily/lily-guile.cc (robust_scm2dir): new function.
8694 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8695 (annotate-space-left): new function. Annotate space left on page.
8696 (annotate-y-interval): new function.
8697 (paper-system-annotate-last): new function. Annotate bottom-space.
8699 * mf/feta-beugel.mf (y):
8701 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8703 * VERSION (PACKAGE_NAME): release 2.7.11
8705 * scm/lily-library.scm (interval-translate): new function
8706 (interval-center): new function.
8708 * scm/page-layout.scm (paper-system-annotate): new function. Add
8709 arrows for dimensions.
8711 * scm/stencil.scm (dimension-arrows): new function.
8713 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8715 * input/regression/page-spacing.ly: add annotatespacing
8717 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8718 (LY_DEFINE): new function ly:paper-system-set-property!
8720 * Documentation/user/global.itely (Paper size): explain how to add
8723 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8724 correspond to GS's definition.
8726 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8728 (print): only connect to next bracket if the next one is alive.
8729 (print): set padding to 0.0 if the bound is a breakable
8730 column. This makes tupletFullLength brackets reach up to the staff
8731 line if it doesn't connect to the next line.
8733 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8735 * lily/bar-number-engraver.cc: correct docs.
8737 * scm/output-lib.scm (first-bar-number-invisible): rename from
8738 default-bar-number-visibility
8740 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8742 * scm/define-music-properties.scm (all-music-properties): remove
8745 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8747 * po/fi.po: refresh.
8749 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8751 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8753 (disappear): bugfix.
8755 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8757 * lily/include/paper-system.hh (class Paper_system): remove
8758 staff_extents_ member.
8760 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8762 * lily/include/paper-system.hh (class Paper_system): remove
8763 number_ variable. Remove is_title_. Remove break_before_penalty_
8765 * lily/paper-book.cc (systems): use 'number property iso. number_
8768 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8769 remove ly:paper-system-number.
8771 * scm/lily-library.scm (paper-system-title?): new function.
8773 * lily/book.cc (process): bugfix: flip ?: cases.
8775 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8778 * ly/music-functions-init.ly: add outputProperty music function.
8780 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8782 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8784 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8786 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8788 * lily/paper-system.cc (internal_get_property): new function.
8790 * Documentation/user/global.itely (Vertical spacing): refer to
8793 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8796 * input/regression/page-spacing.ly: new file.
8798 * input/regression/page-top-space.ly: new file.
8800 * lily/spacing-spanner.cc: cmath -> math.h
8802 * lily/paper-system.cc (read_left_bound): new function. Read
8803 line-break-system-details from left bound to determine extents.
8805 * Documentation/user/programming-interface.itely (Using LilyPond
8806 syntax inside Scheme): change applyxxx -> applyXxx.
8808 * ly/music-functions-init.ly: add outputProperty music function.
8810 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8812 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8814 * python/convertrules.py (conv): rule
8816 * ly/music-functions-init.ly: applyxxx -> applyXxx
8818 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8821 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8823 * flower/include/real.hh: include <math.h> iso. <cmath>
8825 * flower/include/offset.hh: include real.hh
8827 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8829 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8830 fix example, now that 'interfaces is no longer directly available.
8832 * lily/book.cc (process): don't crash if paper == NULL.
8836 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8838 * scm/define-music-types.scm (music-descriptions): set length and
8839 start-callback for QuoteMusic
8841 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8843 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8844 arguments. Fixes compilation error with gcc 3.3.
8846 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8848 * VERSION: release 2.7.10
8850 * stepmake/stepmake/python-module-rules.make
8851 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8853 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8856 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8858 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8859 -Werror. Otherwise GCC barfs over various optimizations.
8861 * scm/define-grob-properties.scm (all-internal-grob-properties):
8862 add note-head property
8864 * Documentation/user/instrument-notation.itely (Laissez vibrer
8867 * input/regression/laissez-vibrer-ties.ly: new file.
8869 * lily/laissez-vibrer-engraver.cc: new file.
8871 * lily/include/tie-column-format.hh: new file.
8873 * lily/tie-column-format.cc: new file.
8875 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8877 * lily/laissez-vibrer-tie.cc: new file.
8879 * lily/include/laissez-vibrer-tie.hh: new file.
8881 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8883 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8885 * scm/define-grobs.scm (all-grob-descriptions): add
8886 LaissezVibrerTie, LaissezVibrerTieColumn
8888 * lily/tie-column.cc (set_tie_config_directions): new function
8889 (final_shape_adjustment): new function.
8890 (shift_small_ties): new function.
8892 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8894 * lily/include/tie.hh (struct Tie_details): add x_gap_
8895 (struct Tie_configuration): add head_position_
8897 * lily/tie-column.cc (set_chord_outline): new function.
8899 * mf/cmr.enc.in: remove file.
8901 2005-09-11 Graham Percival <gpermus@gmail.com>
8903 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8905 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8907 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8908 reduce aliasing effects.
8910 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8913 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8915 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8917 * flower/include/real.hh: std::fabs too.
8919 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8921 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8923 * lily, flower: Include C++ iso C headers. Import namespace std
8926 * lily/side-position-interface.cc:
8928 * lily/note-head.cc:
8929 * lily/include/includable-lexer.hh:
8930 * flower/include/string-data.icc: Remove using std::*.
8932 * lily, flower: Include C++ iso C headers. Import namespace std
8935 * lily/side-position-interface.cc:
8937 * lily/note-head.cc:
8938 * lily/include/includable-lexer.hh:
8939 * flower/include/string-data.icc: Remove using std::*.
8941 * Documentation/user/instrument-notation.itely (Entering lyrics):
8942 Multiple latin-1->utf-8 conversion fix.
8944 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8946 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8948 * lily/tie.cc (get_configuration): also avoid dots for non-space
8951 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8953 * Documentation/user/instrument-notation.itely: Bugfix.
8955 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8957 * tex/GNUmakefile: don't install texinfo.tex
8959 * tex/ : cleanup: remove unused files.
8961 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8963 * flower/include/real.hh: using std::{isnan,isinf}
8965 * VERSION (PATCH_LEVEL): release 2.7.9
8967 2005-09-05 Graham Percival <gpermus@gmail.com>
8969 * Documentation/user/ instrument-notation.itely,
8970 advanced-notation.itely: minor tweaks.
8972 * input/test/script-chart.ly: add item padding.
8974 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8976 * flower/offset.cc: use math.h iso. <cmath>
8978 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8981 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8982 (widen-left-stencil-edges): new function. Fix alignment problems
8983 with LaTeX includegraphics.
8985 * lily/text-interface.cc (interpret_markup): use abort().
8987 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8989 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8991 * lily/tie.cc (get_configuration): update bezier shape as we
8993 (get_configuration): don't move large ties if we're outside of the
8996 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8998 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9000 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9002 * .cvsignore: Add auto-generated configure files and then some.
9004 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9006 * scm/define-grobs.scm (DynamicLineSpanner): Add
9007 X-extent-callback. Fixes hairpin-slur collision.
9009 2005-08-31 Graham Percival <gpermus@gmail.com>
9011 * Documentation/user/advanced-notation.itely,
9012 basic-notation.itely: minor changes.
9014 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9016 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9017 \linebreak between each .eps file if \betweenLilyPondSystem is
9020 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9021 music): Document the \linebreak
9023 * Documentation/user/lilypond-book.itely,
9024 input/tutorial/lbook-latex-test.tex,
9025 Documentation/user/examples.itely: Remove \usepackage{graphics}
9027 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9029 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9031 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9034 * scripts/lilypond-book.py (PREAMBLE_LY): define
9035 inside-lilypond-book
9036 (modify_preamble): new function. Insert \RequirePackage{graphics}
9037 when no {graphics found in preamble.
9039 2005-08030 Graham Percival <gpermus@gmail.com>
9041 * Documentation/user/basic-notation.itely, global.itely,
9042 tutorial.itely: misc small changes.
9044 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9046 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9049 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9051 * lily/tie-column.cc (new_directions): put Tie down on center
9054 * lily/script-interface.cc (before_line_breaking): use
9055 Grob::programming_error
9057 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9059 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9062 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9064 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9066 2005-08-29 Werner Lemberg <wl@gnu.org>
9068 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9069 the `*.scale.pfa' files to avoid warnings.
9071 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9073 * lily/tempo-performer.cc (process_music): idem.
9075 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9077 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9079 * Documentation/user/advanced-notation.itely (Text markup): not a
9082 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9084 * lily/staff-performer.cc (initialize): add tempo/name to
9087 2005-08-26 Graham Percival <gpermus@gmail.com>
9089 * Documentation/user/advanced.itely: add text-only example.
9091 * Documentation/user/invoking.itely: add index entries for
9094 * Documentation/user/ tutorial.itely, basic-notation.itely:
9095 small fixes suggested by Steve D. Thanks!
9097 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9099 * input/regression/markup-bidi-pango.ly: new file.
9101 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9102 standard. Remove #ifdef. Remove memleak.
9103 (text_stencil): use text_dir to decide how to composite items.
9104 (text_stencil): determine uniform text direction for the entire
9107 * scripts/lilypond-book.py (output_name): remove
9108 latex_filter_cmd. Non-portable to non-Unix systems.
9109 (get_latex_textwidth): use File.write and os.unlink() instead.
9111 * THANKS: add Vicente & Trevor.
9113 * lily/grob.cc (discretionary_processing): look up origin for
9114 programming_error too.
9116 * input/regression/tie-broken.ly: new file.
9118 * lily/tie-column.cc (set_chord_outlines): set outline for line
9121 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9123 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9124 unscaled transform, just translate stencils.
9126 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9129 * scm/define-markup-commands.scm (wordwrap-string): use
9131 (wordwrap-stencils): idem.
9134 (wordwrap-stencils): translate last line to right for
9135 text-direction = LEFT.
9137 * scm/define-grob-properties.scm (all-user-grob-properties): add
9140 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9142 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9143 when copying a Lily_parser object.
9145 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9147 * scm/define-markup-commands.scm (null): add null markup.
9149 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9151 * lily/item.cc: Add documentation of center-invisible
9153 2005-08-24 Graham Percival <gpermus@gmail.com>
9155 * Documentation/user/advanced-notation.itely: add info about
9158 * Documentation/user/programming-interface.itely: fix example
9159 involving raised text.
9161 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9163 * lily/beam.cc (print): fix X start/end points of isolated
9166 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9168 * lily/multi-measure-rest.cc (set_text_rods): new function.
9170 * lily/vertical-align-engraver.cc (process_music): call
9171 Align_interface::set_axis(). This forces #'elements to be ordered,
9172 preventing random vertical reordering of staves.
9174 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9175 add avoid-slur property.
9177 * Documentation/user/basic-notation.itely (Measure repeats): add
9178 countPercentRepeats example.
9180 * Documentation/user/advanced-notation.itely (Other text markup
9181 issues): remove remark about normal-font. We have \normal-text
9183 * input/regression/tie-chord.ly: add note about remaining bugs.
9185 * lily/tie.cc (print): try Tie_column::set_directions () if
9186 control-points not yet defined.
9188 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9190 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9191 extent. This fixes braces falling out of the EPS bbox.
9193 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9196 2005-08-23 Graham Percival <gpermus@gmail.com>
9198 * {various} : change #up->#UP and #down->#DOWN.
9200 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9202 * Documentation/user/advanced-notation.itely: clarify
9203 what objects handles text on a multimeasure rest.
9205 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9207 * VERSION (PATCH_LEVEL): release 2.7.7
9209 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9211 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9213 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9215 * input/regression/*.ly: formatting clean-up. Default layout
9216 before music expression.
9218 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9219 romanze28-2 example.
9221 * scm/ps-to-png.scm: remove dir-re function.
9222 (make-ps-images): generate page names, instead of globbing them.
9223 This brings down LilyPond memory usage for make web by a factor
9226 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9227 don't use glob. With 3000 files, globbing
9228 Documentation/user/out-www/ can take too much time.
9230 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9232 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9234 * input/regression/tie-manual.ly: new file
9236 * input/regression/tie-chord.ly: update.
9238 * flower/include/interval.hh (struct Interval_t):
9240 * lily/tie.cc (distance): new function
9241 (height): new function.
9242 (init): new function
9243 (Tie_details): new struct.
9245 * lily/skyline.cc (skyline_height): new function.
9247 * lily/tie-column.cc (set_chord_outlines): new function.
9248 (new_directions): read tie-configuration
9250 * lily/skyline.cc: fix ASCII art.
9252 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9254 * python/convertrules.py (string_or_scheme): Fix spelling error
9256 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9258 * lily/tie-column.cc (set_directions): set directions only once.
9259 (add_configuration): new function.
9261 * lily/tie.cc (set_control_points): new function
9263 * lily/tie-column.cc (new_directions): new function.
9265 * ly/music-functions-init.ly: set 'pitch property
9266 iso. trill-pitch. This makes \relative work with \pitchedTrill
9268 * lily/tie.cc (get_configuration): new function. Don't generate
9269 control points, rather, generate configuration.
9270 remove head-pair property.
9272 * lily/include/tie.hh (struct Tie_configuration): new struct.
9274 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9276 * Documentation/topdocs/NEWS.tely: clarify.
9278 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9280 * lily/tie.cc: remove minimum-length
9282 * scm/define-grob-properties.scm (all-user-grob-properties):
9283 remove staffline-clearance, y-offset
9285 * input/regression/tie-dots.ly (Module): remove.
9287 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9288 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9290 * input/regression/tie-single.ly: new file.
9292 2005-08-21 Graham Percival <gpermus@gmail.com>
9294 * ly/bagpipe.ly: fix compile problem.
9296 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9298 * lily/midi-item.cc (name): new method.
9300 * lily/staff-performer.cc (acknowledge_audio_element): use
9301 signature of baseclass.
9303 * lily/engraver-group.cc (do_announces): move recursion call out
9306 * lily/drum-note-performer.cc (class Drum_note_performer): use
9307 process_music everywhere.
9309 * ly/performer-init.ly: add default children everywhere.
9311 * lily/paper-book.cc (output): call paper-book-write-midis
9312 directly: always write MIDI, even if no \layout {} block.
9314 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9316 * VERSION (PACKAGE_NAME): release 2.7.6
9318 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9319 about not being able to handle repeat.
9321 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9323 * Documentation/user/examples.itely (Piano templates):
9324 * lily/include/performer-group.hh: Remove last traces of
9325 Performer_group_performer. Fixes make web.
9327 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9329 * Documentation/user/examples.itely (Piano templates): change
9330 Engraver_group_engraver -> Engraver_group
9332 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9333 scm_stand_in_procs is not weak_any.
9335 * lily/volta-bracket.cc (print): don't use strcmp().
9337 * lily/volta-engraver.cc (process_music): use
9338 Text_interface::is_markup() for setting the 'text property of the
9341 * input/mutopia/claop.py (accents): update syntax to 2.6
9343 * scm/define-context-properties.scm
9344 (all-user-translation-properties): add countPercentRepeats.
9346 * Documentation/user/basic-notation.itely (Measure repeats): add
9347 isolated percent example.
9349 2005-08-18 Graham Percival <gpermus@gmail.com>
9351 * input/ {various}: change direction #1, #-1 to
9352 #up/#down or \fooUp, \fooDown.
9354 * Documentation/user/music-glossary.tely: #-1 to #down.
9356 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9357 to #up, #-1 to #down.
9359 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9361 * lily/include/engraver-group.hh: rename.
9363 * lily/include/performer-group.hh: rename.
9365 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9367 * input/test/script-abbreviations.ly: Removed some old LaTeX
9370 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9372 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9373 Remove functions. Remove if 1: constructs, reindent.
9375 * scripts/convert-ly.py (add_version): Add functions from
9378 * scm/script.scm (default-script-alist):
9379 s/priority/script-priority. Fixes script stacking. Backportme.
9380 (Fermata): Very low priority.
9382 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9384 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9386 * input/regression/slur-script.ly: remove padding tweaks. Add
9389 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9390 time sigs and related stuff.
9392 * scm/define-grob-properties.scm (all-user-grob-properties): add