1 2006-11-04 Heikki Junes <hjunes@gmail.com>
3 * po/fi.po: update Finnish translation.
5 2006-11-03 Graham Percival <gpermus@gmail.com>
7 * Documentation/user/ {various}: rename page->spacing,
8 global->non-music, invoking->running, example->templates.
10 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
12 * scm/display-lily.scm: add a parser argument to display methods,
13 instead of using a *parser* special variable.
15 * scm/define-music-display-methods.scm: add a parser argument to
16 display methods. Update the methods for \melisma, \melismaEnd,
17 \breathe, \tempo, \partial.
19 * input/no-notation/display-lily-tests.ly: update the test
20 utilities according to the changes in display-lily.scm
22 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
24 * *: The Joy of Merging.
26 * buildscripts/git-update-changelog.py:
27 sort commits, and use .git-commits-done file.
31 dist emacs patches too.
33 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
38 * lily/context-def.cc:
39 * lily/include/parse-scm.hh:
40 * lily/include/smobs.hh:
43 * lily/program-option.cc:
45 implement and use ASSERT_LIVE_IS_ALLOWED()
47 * ly/music-functions-init.ly:
49 set-part-combine fix for autochange.
51 * lily/include/lily-lexer.hh:
52 * lily/include/lily-parser.hh:
54 * lily/lily-parser-scheme.cc:
55 * lily/lily-parser.cc:
56 clear lexer scopes after parsing file. Plugs pseudo memory leak
58 * ly/declarations-init.ly:
59 * ly/music-functions-init.ly:
60 * scm/part-combiner.scm:
61 Remove set-part-combine-listener. This plugs a memory leak.
67 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
72 * lily/part-combine-iterator.cc:
73 don't allocate part combine events statically. Plugs small leak.
75 * lily/lily-parser-scheme.cc:
76 plug memleak in case of failed files.
78 * lily/include/source.hh:
83 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
85 * lily/include/program-option.hh:
86 * lily/program-option.cc:
87 get_program_option() function
90 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
92 * lily/include/translator.hh:
93 * lily/include/translator.icc:
97 * lily/figured-bass-engraver.cc:
98 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
100 * stepmake/stepmake/compile-vars.make:
101 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
103 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
109 trim warning messages.
114 * input/regression/utf-8.ly:
115 document utf-8 meaning of phrases.
117 * scm/define-markup-commands.scm:
118 make \caps markup default to smallCaps
120 * lily/pango-font.cc:
122 use glyph indexing for glyph name .notdef
124 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
126 * input/regression/utf-8.ly: Fix doc to match order of language
129 2006-11-01 Joe Neeman <joeneeman@gmail.com>
131 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
132 page and line forces.
134 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
136 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
138 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
140 * Documentation/user/GNUmakefile:
141 don't use ImageMagick, use GS directly.
144 otf depends on otf-g?table. Fixes race condition in -j2 build.
145 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
151 remove .deb/.rpm downloading.
153 * buildscripts/git-update-changelog.py:
154 bugfixes for git-update-changelog.py
156 * Documentation/user/GNUmakefile:
159 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
161 * input/regression/tie-semi-single.ly:
162 use position/direction from single tie case too. This fixes
163 overrides and defaults for single laissez-vibrer and repeat ties.
165 * buildscripts/git-update-changelog.py:
166 only prepend header if one patch was successful.
168 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
170 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
171 stuff. Remove cygwin packaging stuff.
173 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
175 * python/convertrules.py (conv): Part 2 fixes vertical extent.
177 * input/test/vertical-extent.ly: Fix and elaborate on vertical
178 staff extent. (Thanks Mats)
180 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
182 * buildscripts/git-update-changelog.py (main): write .msg and cvs
185 * scm/define-grobs.scm:
186 separation-items have width
192 * Documentation/topdocs/NEWS.tely:
193 * lily/separating-group-spanner.cc:
194 * lily/slur-engraver.cc:
195 * lily/slur-scoring.cc:
196 * scm/define-grobs.scm:
197 * input/regression/slur-clef.ly:
198 add breakableSeparationItem to extra encompass for slurs. This
199 fixes slur/clef slur/key collisions etc. Should fix #49
201 * lily/include/slur-scoring.hh:
202 * lily/slur-scoring.cc:
203 Use X of separation item as slur start. Fixes #120
205 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
207 * buildscripts/git-update-changelog.py (changelog_body): don't
210 * lily/grob.cc: add avoid-slur
212 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
216 move server/emacsclient to elisp/
218 * buildscripts/git-update-changelog.py (Commit.note_del_file):
221 * elisp/server.el.patch:
224 * elisp/emacsclient.patch:
227 * buildscripts/git-update-changelog.py:
234 * buildscripts/git-update-changelog.py:
235 script to update ChangeLog with Git messages.
237 * lily/beam-engraver.cc:
238 * input/regression/rest-pitched-beam.ly:
239 don't set callback if staff-position set. Fixes #126.
241 * lily/bar-number-engraver.cc:
243 * lily/fingering-engraver.cc:
244 * lily/grob-property.cc:
246 * lily/include/grob.hh:
247 * lily/include/lily-guile-macros.hh:
248 * lily/mark-engraver.cc:
249 * lily/melody-engraver.cc:
250 * lily/script-column.cc:
251 * lily/tie-formatting-problem.cc:
253 internal_get_property_data() using ly_symbol2scm()
255 * stepmake/stepmake/generic-targets.make:
256 create .gitignore in outdir.
261 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
263 * input/test/vertical-extent.ly:
264 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
266 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
268 * stepmake/bin/add-html-footer.py (compose): remove setgcos
270 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
272 * GNUmakefile.in (install-help2man): install-help2man target.
274 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
276 * SConstruct (configure): Do not check for /bin/sh.
278 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
280 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
283 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
285 * input/regression/fret-boards.ly: new file.
287 * po/de.po: new po courtesy translation team.
289 * scripts/lilypond-book.py (get_option_parser): add newline to doc
292 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
294 * ly/gregorian-init.ly (neumeDemoLayout): update
295 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
297 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
298 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
300 2006-10-27 Erlend Aasland <erlenda@gmail.com>
302 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
303 Yet another build fix.
305 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
307 * SConstruct (lilypondprefix): use sorted() for list_sort()
310 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
312 * flower/SConscript: Unit test rules.
314 * flower/test-std.cc: Compile fix.
316 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
318 * python/midi.c (pymidi_parse_track): warning fixes.
320 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
321 include dot-column.hh
323 2006-10-26 Graham Percival <gpermus@gmail.com>
325 * Documentation/user/{basic-, global}: minor changes from mailist.
327 2006-10-26 Erlend Aasland <erlenda@gmail.com>
329 * scm/define-grobs.scm: trivial beautification
331 * lily/tie-performer.cc: no need to #include "pqueue.hh"
333 * lily/source-file.cc: put multibyte var inside #if clause
335 * scm/define-grob-interfaces.scm:
336 * scm/define-grob-properties.scm:
337 Build fix (string-fret-finger-combinations)
339 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
342 * Documentation/user/lilypond-book.itely: Build fix.
344 2006-10-26 Joe Neeman <joeneeman@gmail.com>
346 * lily/system.cc (get_paper_system):
347 * lily/paper-book.cc (systems):
348 move most of the backwards compatibility stuff into
351 * Documentation/topdocs/NEWS.tely: add 2 entries for the
354 * Documentation/user/page.itely: remove time-scaled-music
355 bug for the Page_turn_engraver
357 * lily/paper-book.cc (set_system_penalty): backwards
358 compatibility (breakbefore) for the old page breaker
360 2006-10-25 Graham Percival <gpermus@gmail.com>
362 * Diocumentation/user/instrument-notation.itely: added more
363 info about stanzas; thanks Geoff!
365 * Documentation/user/ {basic, advanced}: small fixes from
368 * THANKS: add some bug reporters.
370 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
372 * scm/define-context-properties.scm (all-user-translation-properties):
373 noteToFretFunction: Add.
375 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
376 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
378 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
380 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
383 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
384 Remove bashism in delete.
386 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
388 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
390 * scm/translation-functions.scm (determine-frets-mf): flatten let*
392 * scm/define-context-properties.scm
393 (all-user-translation-properties): add maximumFretStretch property.
395 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
397 * lily/source-file.cc (get_counts): use multibyte variable.
399 * scm/translation-functions.scm (determine-frets-mf): new
400 function: compute fret numbers.
402 * scm/output-lib.scm (string-frets->description) new function.
403 (fret-board::calc-stencil): new function
405 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
407 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
409 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
411 * lily/tab-note-heads-engraver.cc: cleanups.
413 * lily/fretboard-engraver.cc: new file
415 * ly/engraver-init.ly: add FretBoards context
417 2006-10-24 Joe Neeman <joeneeman@gmail.com>
419 * lily/grob.cc (pure_relative_y_coordinate)
420 (pure_height): use the new call_pure_function stuff
422 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
425 * lily/side-position-interface.cc (pure_y_aligned_side): add an
428 * lily/simple-closure.cc (ly_eval_simple_closure): make
429 simple-closure evaluatable from scheme
430 (evaluate_with_simple_closure): make simple-closures pure-
433 * lily/slur.cc (pure_outside_slur_callback): new function
435 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
436 fits in with previous changes that made the page forces much
439 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
440 and pure-Y-extent into this new function.
441 (pure-conversions-alist): add outside-slur-callback
443 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
445 * Documentation/user/advanced-notation.itely (Instrument names):
446 Remove obsolete bug workaround for instrument names on piano
449 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
451 * Documentation/user/lilypond-book.itely (Integrating DocBook and
452 music): patch by Bertalan Fodor for docbook.
454 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
455 of $(LILYPOND). Prevents lilypond run for .txt files.
457 * INSTALL.txt: gitness.
459 * .cvsignore: update to force gitness.
461 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
463 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
464 detect suicide in nested tuplets.
466 2006-10-23 Werner Lemberg <wl@gnu.org>
468 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
469 typo in argument to FT_Get_X11_Font_Format.
471 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
473 * stepmake/stepmake/po-vars.make: more gitness.
475 * flower/polynomial.cc (check_sol): no empty if bodies.
477 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
479 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
481 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
483 * Documentation/user/examples.itely (Transcription of mensural
484 music): Added more comments in .ly source. Suggest to remove
485 Forbid_line_break_engraver to allow line breaking at all bars.
487 * Documentation/user/instrument-notation.itely (Ancient
488 articulations): Updated @refbugs regarding episem.
490 * Documentation/user/instrument-notation.itely (Gregorian square
491 neumes ligatures): Added \augmentum dots. Updated @refbugs
492 regarding \augmentum.
494 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
496 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
499 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
502 * ly/gregorian-init.ly: Added \augmentum macro.
504 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
506 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
508 * lily/pango-font.cc (pango_item_string_stencil): use
509 FT_Get_X11_Font_Format()
511 2006-10-22 John Mandereau <john.mandereau@free.fr>
513 * po/fr.po: update translation.
515 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
517 * VERSION (PATCH_LEVEL): bump version
519 * input/regression/horizontal-bracket-break.ly: new file.
521 * scm/define-grobs.scm (all-grob-descriptions): calc
524 * lily/horizontal-bracket.cc (make_bracket): support
525 connect-to-neighbor. Fix #118
527 * VERSION: release 2.9.26-2
529 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
531 * VERSION (PACKAGE_NAME): release 2.9.26
533 * buildscripts/output-distance.py (test_basic_compare): add
535 (FileLink.multi_img_cell): new function, glob multi-page png
538 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
540 * po/lilypond.pot: update.
542 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
544 * Documentation/user/global.itely (File structure): remove
547 * lily/parser.yy (FIXME): remove ADDQUOTE
549 * Documentation/user/global.itely (Extracting fragments of
550 notation): new node, about clip systems.
552 * Documentation/user/lilypond-book.itely (Many quotes of a large
553 score): ref to clip systems.
555 * Documentation/user/instrument-notation.itely (Entering lyrics):
556 add note about lyric ties and required font.
558 * lily/open-type-font.cc (glyph_list): format errors.
560 * Documentation/user/programming-interface.itely (Scheme
561 procedures as properties): more doco on simple-closure and scheme
563 (Input variables and Scheme): use lilypond[verbatim], document
566 * Documentation/user/page.itely (Displaying spacing): use \book
567 explicitly, so arrows show .
568 (Line breaking): add note about Forbid_line_break_engraver
570 * Documentation/user/tweaks.itely (Common tweaks): also set length
571 to prevent tie squeezing.
572 (Default files): use @var{}
574 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
575 (Generating LilyPond files): add FOMUS.
577 2006-10-20 Joe Neeman <joeneeman@gmail.com>
579 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
580 Y-offset for TextScript and Script
582 * lily/text-engraver.cc (make_item):
583 * lily/script-engraver.cc (make_script_from_event):
584 remove call to Side_position_interface::set_axis since all scripts
585 now have this set by default
588 * lily/prob.cc: use variables
590 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
592 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
593 at typography, rather analyse stream event duration.
595 * Documentation/user/page.itely (Page formatting): set a6 paper
596 for system separator example.
598 * lily/arpeggio.cc (Module): idem.
600 * lily/accidental-placement.cc: add script-priority property.
602 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
604 * lily/ttf.cc (print_trailer): if all else fails: use
605 glyphIndexXXXX as glyph name. Fixes #117.
607 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
608 entry if cmap contains glyph.
609 (get_index_to_charcode_map): remove from Pango_font class, use
610 global filename -> font mapping.
611 (get_glyph_index_name): new function.
612 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
615 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
617 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
620 * scm/define-grob-properties.scm (all-user-grob-properties):
621 remove outdated doc. Fixes #116
623 * lily/completion-note-heads-engraver.cc (process_music): always
624 clone input events; otherwise we may overwrite input 'duration
625 property. Fixes #115.
627 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
630 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
633 * VERSION (PATCH_LEVEL): bump version.
635 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
637 * lily/engraver.cc (internal_make_grob): use variables.
639 * flower/string-convert.cc (dec2double): clean-up warnings.
641 * configure.in (CXXFLAGS): add -Werror.
643 * VERSION (PACKAGE_NAME): release 2.9.25
645 2006-10-18 Joe Neeman <joeneeman@gmail.com>
647 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
648 line even if we precede a forced break.
650 * lily/optimal-page-breaking.cc (try_page_spacing): square line
651 forces too. Make page-spacing weight default to 10 because the
652 changes to vertical springs decreased the page force/line force
653 proportions. Also, take the average of line force and page force
654 instead of just the sum.
656 * lily/constrained-breaking.cc (initialize): make the stiffness
657 of the vertical springs depend on the height of the system. This
658 prevents pages with only a few large systems from getting huge
661 * Documentation/user/page.itely (Page formatting): document the
662 change in default page-spacing-weight
664 * lily/include/constrained-breaking.hh: initialise bottom_padding_
666 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
668 * input/typography-demo.ly (melody): remove superfluous slur.
670 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
671 add piano-pedal-script-interface
673 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
675 * scripts/lilypond-book.py: DocBook support.
677 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
679 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
681 (stop_translation_timestep): set bound to currentMusicalColumn if
682 not set yet. Fixes #102
684 * lily/piano-pedal-bracket.cc: formatting.
686 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
688 * lily/piano-pedal-align-engraver.cc: new class
689 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
692 2006-10-18 Heikki Junes <hjunes@gmail.com>
694 * po/fi.po: Update Finnish translation (before the next release).
696 2006-10-17 Joe Neeman <joeneeman@gmail.com>
698 * lily/system.cc (get_paper_system): reinstate the backwards-
699 compatible page breaking for the old page breaker.
701 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
703 * lily/recording-group-engraver.cc: removed
705 * lily/context.cc, lily/translator-group.cc: Don't touch
706 Context::implementation_ if it's null
708 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
710 * scm/paper.scm: only use left-margin if defined.
712 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
714 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
716 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
717 strokeFingerOrientations
719 * lily/script-column.cc (row_before_line_breaking): also handle
720 accidentals and arpeggios in horizontal script stacking.
722 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
725 * input/regression/script-stack-horizontal.ly: trim.
727 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
729 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
732 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
733 'text if string argument.
735 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
737 * scm/define-context-properties.scm
738 (all-user-translation-properties): change to strokeFingerOrientations
740 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
742 * lily/parser.yy: remove debug output
744 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
746 * ly/paper-defaults.ly: set left/right margin.
748 * scm/paper.scm (set-paper-dimensions): use left-margin and
749 right-margin for computing linewidth.
751 * Documentation/topdocs/NEWS.tely (Top): idem.
753 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
756 * scm/define-markup-commands.scm (tied-lyric): increase negative
757 space: space syllables tighter.
759 * VERSION (PATCH_LEVEL): bump version.
761 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
764 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
766 * COPYING: further clarification
768 * VERSION: release 2.9.24
770 * input/regression/script-stack-horizontal.ly: add version.
772 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
774 * input/regression/lyric-tie.ly (texidoc): use different words.
776 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
778 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
780 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
781 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
783 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
785 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
787 * Doxyfile: remove file.
789 * scm/define-grob-interfaces.scm (string-finger-interface): add
790 string-finger-interface
792 * lily/general-scheme.cc (LY_DEFINE): move
793 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
795 * Documentation/topdocs/NEWS.tely (Top): add note for
796 string-finger feature.
798 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
801 * scm/output-lib.scm (string-finger::calc-text): read 'digit
804 * input/regression/script-stack-horizontal.ly: new file.
806 * ly/engraver-init.ly: add Script_row_engraver.
808 * lily/script-column.cc (order_grobs): refactor: separate axis
810 (row_before_line_breaking): new function.
812 * lily/script-row-engraver.cc (Script_row_engraver): new file.
814 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
816 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
818 * Documentation/user/instrument-notation.itely: Cleanup: Remove
819 annoying skip notes from mensural ligature example. Update
820 @refbugs for ligatures and mensural ligatures.
822 * lily/coherent-ligature-engraver.cc,
823 lily/include/coherent-ligature-engraver.hh,
824 lily/mensural-ligature-engraver.cc,
825 lily/vaticana-ligature-engraver.cc: Revise code for item
826 reparentizing. There should now be less programming_error
829 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
831 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
832 Maintenance bugfix: Don't create empty Stencil (), but empty box
833 instead. This fix should eliminate some programming_error
836 * ly/engraver-init.ly (MensuralStaff): Set default accidental
839 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
840 \layout block _before_ score.
842 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
844 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
846 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
848 2006-10-13 Erlend Aasland <erlenda@gmail.com>
850 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
852 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
854 * VERSION (PATCH_LEVEL): bump version.
856 * COPYING: clarify exception note.
858 * lily/main.cc: remove remark about "COPYING".
860 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
861 system-count starts at 0 for each clip-region. Change name to
862 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
863 layout block, per score.
865 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
867 * lily/input-smob.cc: add equal_p for Input
869 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
872 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
874 * lily/prob.cc: Add equal_p predicate for Prob
876 * lily/translator.cc: small cleanup
878 * scm/document-music.cc: use data from translator listener
879 registration to generate documentation for event classes
881 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
883 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
885 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
887 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
889 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
891 * Documentation/topdocs/INSTALL.texi: Thinko.
893 * .cvsignore: Update.
895 * lexer-gcc-3.1.sh: Remove.
897 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
898 Update anonymous cvs access. Remove comment about gcc 3.0.4.
900 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
902 * VERSION: release 2.9.23
904 * lily/paper-column-engraver.cc (stop_translation_timestep): also
907 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
909 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
911 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
913 * input/regression/clip-systems.ly (Notes): new file.
915 * scm/lily.scm (define-scheme-options): add clip-systems option.
917 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
919 (dump-stencil-as-EPS): move bbox calculation from previous
921 (output-framework): use -dclip-systems
923 * scm/lily-library.scm (filtered-map): new function
925 * scm/framework-ps.scm (clip-system-EPS): new function.
926 (clip-system-EPSes): new function.
928 * lily/paper-column.cc: add rhythmic-location to interface
930 * scm/define-grob-properties.scm (all-user-grob-properties): add
931 rhythmic-location property.
933 * scm/clip-region.scm: new file: rhythmic-location data type and
934 system-clipped-x-extent function.
936 * ly/init.ly: use (scm clip-region)
938 * lily/paper-column-engraver.cc (stop_translation_timestep): set
939 rhythmic-location for paper column grobs.
941 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
943 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
945 * ly/engraver-init.ly: Remove obsolete comment on
948 * Documentation/user/instrument-notation.itely: Tune Ancient
949 Articulations figure, such that the episem actually shows.
951 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
952 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
954 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
957 2006-10-12 Graham Percival <gpermus@gmail.com>
959 * Documentation/user/ {some}: minor edits that were lost somehow.
961 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
963 * VERSION (PACKAGE_NAME): bump version.
965 * input/regression/lyric-tie.ly (texidoc): new file.
967 * Documentation/topdocs/NEWS.tely (Top): add new feature.
969 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
971 * scm/define-markup-commands.scm (tied-lyric): new function: split
972 string along ~ and reattach with U+203F (tie character) and
975 * scm/output-lib.scm (lyric-text::calc-text): new function.
977 * lily/lyric-engraver.cc (process_music): don't set 'text.
979 * scm/output-lib.scm (string-finger::calc-text): new function
980 (lyric-text::print): new function.
982 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
983 generic for fingering & string number. Use for string-finger.
985 * scm/define-music-types.scm (music-descriptions): add
988 * lily/fingering-engraver.cc (listen_string_finger): new function
990 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
992 * scm/define-context-properties.scm
993 (all-user-translation-properties): add stringFingerOrientations
995 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
997 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
998 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1000 * lily/dots.cc: Added style property for dots.
1002 * mf/parmesan-heads.mf: Fix typo in comment.
1004 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1005 adding longa head to feta font and removing obsolete default
1006 mapping scheme code.
1008 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1010 * scm/output-lib.scm (fingering::calc-text): use origin
1011 event-property, not music-property.
1013 * lily/lilypond.rc.in: spell my name correctly.
1015 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1017 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1018 already have a non-empty extent. Fixes estimation for Hara-kiri
1021 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1023 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1026 * lily/ligature-engraver.cc: Remove unused #include.
1028 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1029 Bugfix: remove method check_for_prefix_loss(Item *) from global
1030 namespace to avoid namespace pollution.
1032 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1034 * VERSION: release 2.9.22
1036 * ly/generate-documentation.ly: update option name.
1038 * lily/dynamic-text-spanner.cc (print): revert fix.
1040 * scm/define-grob-interfaces.scm
1041 (trill-pitch-accidental-interface):
1042 add trill-pitch-accidental-interface
1044 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1045 dereference if it's really a duration.
1047 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1048 useBassFigureExtenders is not set.
1049 (listen_bass_figure): record as new event if
1050 useBassFigureExtenders not set. Fixes #103.
1052 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1053 instead: move circle. Fixes #107.
1055 * scm/define-grobs.scm (all-grob-descriptions): set
1056 allow-loose-spacing for PaperColumn and
1057 NonMusicalPaperColumn. Kludge for #110.
1059 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1061 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1062 allow-loose-spacing property.
1064 * scm/define-markup-commands.scm (postscript): gsave & grestore
1065 around embedded PS. Do setlinewidth too. Fixes #109.
1067 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1069 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1070 code. This patch fixes ligature brackets that were not at all
1073 2006-10-08 Graham Percival <gpermus@gmail.com>
1075 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1077 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1079 * scm/define-context-properties.scm: clarified docs (bug 91).
1081 * Documentation/user/basic-notation.itely: document volta brackets
1082 not aligning (bug 63).
1084 * Documentation/user/ global.itely invoking.itely: ignore or
1085 add warnings about texstr.
1087 2006-10-08 John Mandereau <john.mandereau@free.fr>
1089 * po/fr.po: update translation.
1091 * po/: update msgids.
1093 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1095 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1097 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1099 * Documentation/user/page.itely (Two-pass vertical spacing): add
1100 documentation for two-pass spacing technique.
1102 2006-10-06 Graham Percival <gpermus@gmail.com>
1104 * Documentation/user/convert-ly.txt: new file; new
1105 storage place for this file (moved from bugs/ CVS).
1107 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1109 * lily/note-head.cc: Fixed programming_error message.
1111 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1113 * scm/define-grobs.scm (pure-conversion): move pure-callback
1116 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1117 marcato, stopped, thumb.
1119 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1121 * lily/completion-note-heads-engraver.cc (process_music): don't
1122 skimp on memory usage.
1124 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1127 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1128 parenthesis item. This fixes premature Y-extent triggering. Fixes
1131 * VERSION (PATCH_LEVEL): bump version.
1133 2006-10-04 Graham Percival <gpermus@gmail.com>
1135 * Documentation/user/advanced-notation.itely: added
1136 info about instrument names for piano or other contexts,
1139 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1141 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1142 solfa_base_notewidth as unit for non-DO-notes too.
1144 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1146 * VERSION: release 2.9.21
1148 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1151 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1153 * python/lilylib.py (progress): Minor fix.
1155 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1157 * lily/note-name-engraver.cc: doc engraver.
1159 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1161 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1163 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1166 * lily/stem-engraver.cc (make_stem): don't set duration-log
1168 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1169 write snippet-names binary.
1171 * python/lilylib.py (system): use os.system for mingw32
1173 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1176 * scm/backend-library.scm: update email address.
1178 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1181 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1184 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1185 handle dot creation separately.
1187 * lily/tab-note-heads-engraver.cc (process_music): idem.
1189 * lily/drum-note-engraver.cc (process_music): idem.
1191 * lily/note-heads-engraver.cc (process_music): idem.
1193 * lily/rest-engraver.cc: don't set duration-log.
1195 * scm/output-lib.scm (string-number::calc-text): new function.
1196 (note-head::calc-duration-log): new function.
1198 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1200 * scm/output-lib.scm (fingering::calc-text): new function.
1202 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1204 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1205 and include-eps-font -> include-eps-fonts
1207 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1209 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1211 * lily/timing-translator.cc: list properties.
1212 (start_translation_timestep): update internalBarNumber too.
1214 * scm/define-context-properties.scm
1215 (all-user-translation-properties): add internalBarNumber.
1217 * input/regression/spacing-no-note.ly: new file.
1219 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1221 * lily/book.cc: #include cleanup.
1223 * lily/include/lily-guile-macros.hh: add assert to
1224 scm_or_str2symbol(SCM).
1226 * VERSION (PATCH_LEVEL): bump version.
1228 * lily/spacing-spanner.cc (musical_column_spacing): handle
1229 musical->nonmusical spacing case, where there is no spacing
1230 wish. Fixes issue #61.
1232 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1233 (pango_item_string_stencil): use logical rect horizontally (to
1234 preserve spaces), ink_rect vertically (for time signatures).
1236 * lily/font-metric.cc (word_stencil): new interface function
1238 * input/regression/utf-8-mixed-text.ly: new file.
1240 * lily/percent-repeat-engraver.cc (listen_percent): remove
1243 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1244 non-dynamic scripts. Fixes #30.
1246 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1248 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1250 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1251 SCM_UNDEFINED for non-existent data.
1253 * lily/side-position-interface.cc (general_side_position): allow
1254 optional current_offset argument for chaining, so combinations of side-position
1255 and outside slur callback don't add up. Fixes issue #92.
1257 * lily/pango-font.cc (pango_item_string_stencil): use
1258 logical_rect. This prevents spaces after words from disappearing,
1261 * VERSION: release 2.9.20
1263 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1265 * scm/define-grob-properties.scm (all-user-grob-properties):
1266 mention stencil as user settable.
1268 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1270 * Documentation/user/page.itely (Page formatting):
1271 document auto-first-page-number
1273 * lily/page-breaking.cc (find_chunks_and_breaks):
1274 * lily/paper-score.cc (calc_breaking): Follow changes to the
1275 Constrained_breaking interface
1277 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1278 here backwards, as an optimisation
1279 (initialize): new function; move most of the code in resize () here
1280 (combine_demerits): cache ragged_right_
1281 (Constrained_breaking): constructor now takes the Paper_score
1283 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1285 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1286 avoid parser lookahead for 0-ary functions.
1288 * lily/translator.cc: Extract event classes from
1289 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1291 2006-10-02 Heikki Junes <hjunes@gmail.com>
1293 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1296 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1298 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1299 function. Call the page breaking function selected in the
1300 `page-breaking' \paper variable, then the post processing function
1301 chosen using the `page-post-process' \paper variable.
1302 (line-height): new function. Return the height of a system.
1303 (line-minimum-position-on-page): new function. Return the position
1304 of a system on page (using the previous line position), only
1305 considering between system padding.
1306 (stretchable-line?): new function. Says whether a line can be
1307 stretched (ie. is not a title nor a single staff system).
1308 (page-maximum-space-left): new function. Computes space left on a
1309 page, when all systems are separated by their padding.
1311 * lily/page-breaking.cc (breaking::make_pages): Move page post
1312 processing function call to page breaking wrapper (common to all
1315 * lily/paper-book.cc (book::pages): call the page breaking
1316 wrapper, instead of the page breaker directly
1318 * ly/paper-defaults.ly: Add \paper variables for page breaking
1319 wrapper and page post processing function. Make
1320 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1321 `system-maximum-stretch-procedure' variable for holding a function
1322 computing the maximum stretch a system allows.
1324 * scm/layout-page-dump.scm (write-page-breaks): computes the
1325 stretch to apply to systems on a page to minimize left
1326 space. Dump this stretch length.
1328 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1329 the system-stretch property of the tweak data to stretch the
1331 (includePageLayoutFile): Void function which includes the
1332 generated page-layout file if it exists and if the page layout
1333 dumping is not asked.
1334 (scoreTweak): if the score tweak named by the argument exists,
1337 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1339 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1340 handle correctly the case where there are multiple \noPageBreaks
1343 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1345 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1347 * abc2ly.py fix so that entering " -- " will translate to a -- in
1348 the lilypond instead of a " - - "
1350 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1352 * lily/align-interface.cc: fix typo
1354 * lily/dynamic-text-spanner.cc (print): Add a special case for
1355 trill spanner right sides.
1357 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1359 * lily/align-interface.cc (get_extents_aligned_translates): add
1360 support for padding variable.
1362 * lily/break-align-interface.cc (self_align_callback): oops: use
1363 loop variable in guard.
1365 * input/regression/repeat-percent-grace.ly: new file.
1367 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1368 remember first currentCommandColumn of a grace run. Fixes issue 70.
1370 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1371 move class definition to CC file.
1373 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1375 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1376 measure-long repeats.
1378 * flower/include/international.hh: include stdarg.h
1380 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1382 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1383 put_systems_on_pages to return an empty result, we need to assign
1384 demerits properly in that case.
1385 (put_systems_on_pages): Make the number of pages depend on the
1386 evenness of page_number. Add auto-first-page-number.
1387 (calc_subproblem): ensure that the page-number is even for the
1388 left-hand page. Warn if the first page-turn doesn't fit onto the
1389 first (right-hand) page.
1391 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1392 (min_page_count): make this publicly accessible
1393 (min_page_count): fix a bug when there are forced page breaks that
1394 was introduced when I made this loop run backwards
1395 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1396 replace space_systems_on_min_pages with these two. The logic in
1397 space_systems_on_min_pages was getting too convoluted and is better
1398 contained in page-turn-page-breaking.
1400 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1402 (breakable_column): typo
1404 * lily/source-file.cc (get_line): fix off-by-one error
1405 and clean up some of the logic
1407 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1409 * lily/page-breaking.cc (make_pages): honour the first-page-number
1412 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1414 * VERSION (PACKAGE_NAME): bump version.
1416 2006-09-26 Pal Benko <benko.pal@gmail.com>
1418 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1419 (the latter is the same as petrucci-f which is kept for compatibility)
1421 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1423 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1425 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1427 * lily/global-context.cc (run_iterator_on_me): break out of loop
1428 if moment doesn't increase.
1430 * scm/define-grob-properties.scm (all-user-grob-properties): add
1433 * lily/accidental.cc (after_line_breaking): read forced property.
1435 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1438 * input/regression/accidental-forced-tie.ly: new file.
1440 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1442 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1444 * lily/figured-bass-engraver.cc: only listen to rest events if
1445 ignoreFiguredBassRest is not set.
1447 * scm/define-context-properties.scm
1448 (all-user-translation-properties): add ignoreFiguredBassRest property
1450 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1452 * lily/paper-book.cc (get_system_specs):
1453 (set_system_penalty): fix breakbefore.
1454 We used to set a penalty on the system after the break, now we
1455 set a permission on the system before the break
1457 * lily/grob-property.cc: add scm debugging hooks into
1458 property modification
1460 * lily/context-property.cc:
1462 rename make_foo_from_properties to internal_make_foo and
1463 move it from context-property.cc to a member function of
1466 * lily/include/lily-guile-macros.hh:
1467 overload ly_symbol2scm macro so that there is no more need
1470 * lily/volta-repeat-iterator.cc:
1471 * lily/tweak-engraver.cc:
1472 * lily/tuplet-bracket.cc:
1473 * lily/span-bar-engraver.cc:
1474 * lily/script-engraver.cc:
1475 * lily/prob-scheme.cc:
1476 * lily/pointer-group-interface.cc:
1478 * lily/grob-scheme.cc:
1479 * lily/grob-property.cc:
1481 * lily/context-property.cc:
1482 * lily/break-substitution.cc:
1483 * lily/break-align-engraver.cc:
1484 * lily/axis-group-interface.cc:
1485 * lily/align-interface.cc:
1486 remove calls to internal_FOO
1488 * lily/system-start-delimiter-engraver.cc:
1489 * lily/parenthesis-engraver.cc:
1490 * lily/accidental-engraver.cc:
1491 remove calls to make_foo_from_properties
1493 2006-09-23 Graham Percival <gpermus@gmail.com>
1495 * Documentation/user/programming-iterfaces.itely: fix
1496 def-music-function -> define-music... leftover.
1498 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1500 * lily/page-spacing.cc (min_page_count): by running the loop
1501 backwards, we can calculate ragged_last properly.
1503 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1505 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1506 printfirst-page-number -> print-first-page-number
1508 * python/convertrules.py: corresponding rule.
1510 * Documentation/user/page.itely (Page formatting): Document the
1511 default values of all page layout parameters.
1513 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1515 * lily/lexer.ll: remove limitation on music function arity. New
1516 mode extratoken, which inserts extra EXPECT_* tokens after
1517 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1519 * lily/parser.yy: Change grammar for music function accordingly.
1521 * lily/include/lily-parser.hh: New method get_state, new member
1522 hidden_state. Works around a problem when parser fetches
1523 MUSIC_FUNCTION token but not the following EXPECT_* token.
1525 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1528 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1529 references to Music; use ASSIGN_EVENT_ONCE everywhere
1531 * lily/grob-info.cc: junk *music_cause
1533 * lily/music.cc: copy eventified articulations to stream event
1535 * lily/part-combine-iterator.cc: Cleanup using enums
1537 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1540 * lily/include/engraver.hh: Junk music.hh include
1542 * lily/stream-event.cc: Changed constructors
1544 2006-09-21 Graham Percival <gpermus@gmail.com>
1546 * Documentation/user/tweaks.itely (Fitting music onto fewer
1547 pages): change settings to avoid warning messages.
1549 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1551 * Documentation/user/tweaks.itely (Fitting music onto fewer
1552 pages): Add between-system-space setting.
1554 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1556 * lily/accidental-placement.cc (calc_positioning_done): don't
1557 trigger Y-extent calculation too early. Use pure_height instead.
1559 * lily/scale.cc (LY_DEFINE): new file.
1561 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1563 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1564 that happen at the start of a score: having a zero-length
1565 chunk was messing up min_system_count calculations.
1567 * lily/source-file.cc (get_line): lower_bound, not
1568 binary_search. Fixes problem where point-and-click would
1569 always point to the first line.
1571 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1573 * lily/accidental-placement.cc (calc_positioning_done): also put
1574 stems into accidental support.
1576 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1579 * scm/script.scm (default-script-alist): avoid-slur and
1580 slur-padding for portato script.
1582 * lily/stem-tremolo.cc (translated_stencil): new function.
1583 (height): use new function. Fixes tremolos on whole notes.
1585 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1588 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1590 * scripts/abc2ly.py (try_parse_comment): idem.
1592 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1593 bar_string iso. string.find()
1597 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1600 2006-09-18 Graham Percival <gpermus@gmail.com>
1602 * Documentation/user/basic-notation.itely: add bug
1603 warning about ties and octavation/clef.
1605 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1607 * VERSION (PACKAGE_NAME): release 2.9.18
1609 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1611 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1612 figure out midi file names right here.
1614 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1616 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1618 * scm/backend-library.scm: option naming: gs-font-load*s*
1620 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1623 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1625 * scm/define-music-types.scm (music-descriptions): remove
1626 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1627 Music::to_event doesn't complain.
1629 * lily/accidental-placement.cc (ape_compare):
1630 * lily/semi-tie.cc (compare):
1631 * lily/note-column.cc (shift_compare): replace by XXX_less
1633 * lily/tie-formatting-problem.cc (set_chord_outline):
1634 * lily/tie-column.cc (calc_positioning_done):
1635 * lily/system.cc (post_processing)
1637 * lily/stem.cc (note_head_positions)
1638 (calc_positioning_done):
1639 * lily/spanner.cc (do_break_processing)
1640 (find_broken_piece):
1641 * lily/span-bar.cc (print):
1642 * lily/semi-tie-column.cc (calc_positioning_done):
1643 * lily/rest-collision.cc (calc_positioning_done):
1644 * lily/program-option.cc (get_help_string):
1645 * lily/note-collision.cc (get_clash_groups):
1646 * lily/new-fingering-engraver.cc (position_scripts):
1647 * lily/keyword.cc (Keyword_table):
1648 * lily/hara-kiri-group-spanner.cc (request_suicide):
1649 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1650 * lily/accidental-placement.cc (calc_positioning_done):
1652 * lily/beam.cc (get_beam_segments):
1653 * lily/grob-array.cc (remove_duplicates):
1656 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1657 ragged-last-bottom = ##f (test the new page breaker)
1659 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1661 * scm/define-context-properties.scm
1662 (all-internal-translation-properties): remove properties that
1663 were used to communicate page-turn stuff to the paper-column
1666 * lily/lily-guile.cc (robust_scm2string): new function
1668 * lily/paper-column-engraver.cc: Clean up page turn stuff
1670 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1671 instead of cluttering up paper-column-engraver.cc
1673 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1675 * scm/layout-page-dump.scm (scm): export utility function names,
1676 to allow user writing cutsom dumping functions.
1678 * scm/layout-page-layout.scm: export utility function names to
1679 enable custom page breaking function writing. Tabify.
1680 (line-next-space): use ?-suffix only for predicates
1681 (page-maximum-space-to-fill): new function. Return the space
1682 between first and bottom system of a page, to give to
1684 (space-systems): use a space-to-fill argument (for instance as
1685 computed by page-maximum-space-to-fill) instead of computing
1686 internaly this space with the page height. That way, the caller
1687 can adjust the space to use.
1688 (make-page-from-systems, walk-paths): compute space to fill before
1689 calling space-systems.
1691 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1693 * scm/script.scm (default-script-alist): set paddings for every
1694 type here, increase for portato mark.
1696 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1699 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1701 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1702 use spanner::set-spacing-rods
1704 * lily/note-column.cc: reformat.
1706 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1707 step positioning for note/rest combinations.
1709 * input/regression/rest-note-collision.ly: new file.
1711 * scm/define-grobs.scm (all-grob-descriptions): add
1714 * flower/include/std-vector.hh: switch off again.
1716 * VERSION (PATCH_LEVEL): bump to 2.9.18
1718 * flower/include/std-string.hh: idem.
1720 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1722 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1724 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1727 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1729 * Documentation/user/page.itely: update page breaking documentation
1731 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1733 * lily/note-collision.cc (calc_positioning_done): only access
1734 first head if available.
1736 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1738 * scm/framework-ps.scm (output-preview-framework): use new name.
1740 * lily/program-option.cc (internal_set_option): use new names.
1742 * Documentation/user/SConscript (lilypond_book_flags): update -d
1745 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1746 output into other programs): new variable names.
1748 * scm/lily.scm (define-scheme-options): uniformize var names.
1750 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1751 tuplets_ is non-empty before popping.
1753 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1755 * lily/spanner.cc (find_broken_piece):
1756 * lily/spacing-spanner.cc (get_columns):
1757 * lily/source-file.cc (get_line):
1758 * lily/simple-spacer.cc (get_column_description):
1759 * lily/keyword.cc (lookup):
1760 use the new binary search.
1762 * flower/include/std-vector.hh: replace binary_search with
1763 a more STL-like version
1765 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1767 * lily/tie-performer.cc: remove unused last_event_ property.
1768 (class Tie_performer): add now_tied_heads_ property for
1769 partially-tied heads.
1770 (acknowledge_audio_element): when adding an Audio_note, put the
1771 note in now_tied_heads_ if the audio note is partially tied.
1772 (stop_translation_timestep): always include entries in
1773 now_tied_heads_ in heads_to_tie_.
1775 * lily/drum-note-performer.cc (process_music): look for tie-events
1776 in the articulations; pass to Audio_note constructor.
1778 * lily/note-performer.cc (process_music): look for tie-events in
1779 the articulations; pass to Audio_note constructor.
1781 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1784 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1785 include initializer in constructor.
1787 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1789 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1790 unless they are breakable. This fixes discrepancies between the forces
1791 calculated here and the forces calculated in get_line_configuration.
1793 * lily/grob.cc (pure_relative_y_coordinate): fix some
1794 mis-estimation that was happening with piano staves.
1796 * lily/constrained-breaking.cc (resize): don't choke if we get a
1797 measure that won't fit on a line.
1798 (combine_demerits): don't consider uniformity when ragged
1800 * lily/page-spacing.cc (solve): why the f* were there two of these?
1801 (calc_subproblem): properly handle the case where a system is taller
1804 * lily/system.cc (get_paper_system): ensure that all the permissions
1805 and penalties are passed to the paper systems.
1807 * lily/page-breaking.cc (create_system_list): support system-count.
1809 * scm/define-grobs.scm (pure-print-callbacks): add
1810 ly:script-interface::print
1812 * lily/page-spacing.cc (min_page_count): fix calculation of min
1813 pages if we are ragged and there are non-zero springs.
1815 * scm/layout-page-layout.scm: if the pure-height estimates are under
1816 the real height, allow space-systems to ignore padding if it is
1817 needed in order to fit the systems on one page
1819 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1821 (solve): fix performance problem. Make sure we always get at least
1824 * lily/page-breaking.cc (make_pages): include write-page-breaks
1827 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1829 * scm/define-grobs.scm: add the new slur-callback
1830 fix pure-relevant to not exclude grobs whose extent is already
1833 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1836 * lily/slur.cc (pure_height): new callback to estimate the height
1839 2006-09-02 Graham Percival <gpermus@gmail.com>
1841 * Documentation/user/invoking.itely: small update on
1842 MacOS X notes; thanks Trevor!
1844 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1846 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1848 * lily/lexer.ll: accept EOF in all states.
1850 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1852 * lily/source-file.cc (Source_file): always 0-terminate character
1853 array, to prevent Flex from barfing.
1855 * lily/global-context.cc (get_output): robustness: don't crash if
1856 no Score context found.
1858 * lily/include/book.hh (class Book): idem.
1860 * lily/include/context-def.hh (struct Context_def): idem.
1862 * lily/include/score.hh (class Score): don't derive from Input.
1864 * lily/book.cc (Book): add a copy ctor.
1866 * buildscripts/output-distance.py (FileLink.calc_distance): count
1867 orphans in distance too.
1869 * python/midi.c (midi_parse_track): robustness: don't read past
1872 * ly/performer-init.ly: add Control_track_performer, move
1873 Tempo_performer and Time_signature_performer to Score.
1875 * lily/score-performer.cc (acknowledge_audio_elements): override
1876 from base class: add to audio-columns
1878 * lily/control-track-performer.cc (add_text): new file: generate
1881 * lily/performance.cc: move output_header_track to
1882 Control_track_performer ()
1884 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1886 * lily/include/midi-item.hh (class Midi_channel_item): insert
1887 class into hierarchy, for items that can have a channel setting. Dehungarify.
1889 * lily/include/performer.hh (class Performer): remove
1890 play_element(); move functionality into announce/acknowledge.
1892 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1894 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1895 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1897 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1899 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1902 * lily/all-font-metrics.cc: remove TFM support.
1904 * lily/include/tfm.hh: remove TFM support, TFM reader.
1906 * lily/include/binary-source-file.hh: remove Binary_source_file.
1908 2006-08-27 Graham Percival <gpermus@gmail.com>
1910 * Documentation/topdocs/NEWS.itely: add @c marker for
1911 stuff I've processed.
1913 * Documentation/user/ various: info from NEWS.
1915 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1917 * lily/paper-column-engraver.cc (finalize): Oops, this change
1918 should have gone in on 2006-08-23
1920 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1922 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1923 quotes to quote arguments. Fixes Windows problem.
1925 * python/lilylib.py (progress): idem
1927 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1929 * scripts/musicxml2ly.py: fix for importing
1930 minor key signatures from MusicXML. (Phillip Kirlin)
1932 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1934 * python/musicxml.py:
1935 (Attributes.get_key_signature): now correctly retrieves mode from
1938 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1940 * lily/parser.yy (output_def_body): take ownership of identifier
1943 * Documentation/user/advanced-notation.itely (Metronome marks):
1944 update use of \tempo in \midi.
1946 * VERSION: release 2.9.16
1948 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1950 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1953 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1955 * input/regression/tie-chord-partial.ly: clarify example.
1957 * scm/define-music-properties.scm (all-music-properties): remove
1960 * ly/music-functions-init.ly: remove \untied.
1962 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1963 stream events and music events.
1964 (stop_translation_timestep): search acknowledged heads for
1967 * input/regression/tie-chord-partial.ly: new file.
1969 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1970 for \char markup command.
1972 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1974 * scm/define-music-types.scm (music-descriptions): consistency:
1975 Use solo-{one,two}-event iso. solo-[12]-event.
1977 * lily/part-combine-engraver.cc (process_music):
1978 Use solo-{one,two}-event iso. solo-[12]-event.
1980 * ly/declarations-init.ly (partCombineListener): add Timing as
1983 * flower/std-string.cc (string_copy): use copy ()
1985 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1987 2006-08-24 Graham Percival <gpermus@gmail.com>
1989 * Documentation/user/changing-defaults.itely, global.itely,
1990 lilypond-book.itely, page.itely: minor changes from mailist.
1992 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1994 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1997 * scm/define-context-properties.scm
1998 (translator-property-description): robustness: detect type errors
1999 in property definitions.
2001 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2002 after getting it from SCM.
2004 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2007 * lily/include/performer.hh (class Performer): strip get_tempo()
2010 * lily/midi-def.cc: strip file.
2012 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2014 * lily/include/context-def.hh (struct Context_def): use
2015 VIRTUAL_COPY_CONSTRUCTOR().
2017 * lily/source-file.cc: smobification.
2019 * lily/include/source-file.hh (class Source_file): smobify
2020 Source_file. Trim redundant members.
2022 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2023 clones after creation. This plugs a huge memory leak.
2025 * python/convertrules.py (FatalConversionError.sub_tempo):
2026 complete rule for \midi{ \tempo }
2028 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2030 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2032 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2034 * input/regression/optimal-page-breaking-hstretch.ly: test for
2035 ragged-last-bottom also
2037 * lily/paper-column-engraver.cc (finalize): make the end of a score
2038 breakable by default. This is to balance out a change in behaviour
2039 of the page-turn-breaker which no longer makes the end of a score
2042 * lily/paper-book.cc (pages): set the systems_ once the pages are
2045 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2046 Page_breaking interface.
2048 * lily/page-breaking.cc (class Page_breaking): make the interface
2049 more consistent and provide abstractions for dealing with
2052 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2053 algorithm. Use the new interface to Page_breaking.
2055 * lily/page-spacing.cc: better support for ragged-bottom and
2058 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2060 * python/convertrules.py (conv): warning on \tempo{}
2062 * ly/performer-init.ly: set tempoWholesPerMinute.
2064 * ly/midi-init.ly: remove \midi
2066 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2069 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2070 tempoUnitDuration for determining what to print.
2072 * lily/lyric-extender.cc: typo.
2074 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2076 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2079 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2081 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2082 eps-pad-boxes is set.
2084 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2086 * THANKS: update sponsors.
2088 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2090 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2092 * input/regression/tie-chord-untied.ly: new file.
2094 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2096 * scm/define-music-properties.scm (all-music-properties): add
2099 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2101 (headertext_nopics): sanitize no-examples text.
2103 * scm/page.scm (make-page-stencil): don't rely on extents of
2104 page-stencil. This fixes spurious space around .EPS files produced
2105 with the EPS backend.
2107 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2109 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2111 * lily/hara-kiri-engraver.cc (process_music): remember
2112 keepAliveInterfaces after processing \set
2114 * lily/lyric-extender.cc (print): support left/right-padding for
2117 * scm/documentation-generate.scm (string-append): revert lilypond/
2120 2006-08-20 Graham Percival <gpermus@gmail.com>
2122 * Documentation/user/lilypond.tely: clarification to
2123 license presentation (not to actual license).
2125 * Documentation/user/basic-notation.itely,
2126 instrument-notation.itely: minor changes.
2128 * input/ {regression, test}/+.ly: clarification to
2129 text (you can click on examples). Thanks, Mats!
2131 * input/manual/bar-lines.ly: adds ||: repeats.
2133 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2135 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2137 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2139 * Documentation/user/lilypond.tely: strip lilypond/ from info
2140 links, rename to category LilyPond
2142 * lily/pango-font.cc (description_string): new function.
2144 * VERSION: release 2.9.15
2146 * lily/spacing-engraver.cc (stop_translation_timestep): use
2147 Dscho's fix for spacing spanner.
2149 * scm/define-music-types.scm (music-descriptions): use
2150 apply-output-event for ApplyOutputEvent
2152 * lily/output-property-engraver.cc (listen_apply_output): rename
2153 from listen_layout_instruction.
2155 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2158 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2160 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2161 commandline args with contains, split by \n.
2163 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2164 write snippet-names file, call with -dread-file-list. Fixes
2165 command limitations on 64-bit systems.
2167 * input/regression/stencil-color-rotation.ly: new file.
2169 * lily/include/translator.hh (struct Acknowledge_information):
2170 revert: don't use Protected_scm in global objects, as GUILE can't
2171 handle gc_unprotect from automated destructors on MacOS X.
2173 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2174 color, not the original stencil. Fixes combinations of
2175 color/transparency/rotation.
2177 * scripts/lilypond-book.py (main): add --formats=eps for
2180 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2181 crash if spacing_ is nonexistent.
2183 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2185 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2186 \catcode`\@=12 in the LaTeX output.
2188 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2190 * scm/define-music-types.scm (music-descriptions):
2191 use sustain-event iso. sustain-pedal-event.
2193 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2195 * scripts/convert-ly.py: honour the -n command-line switch
2197 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2199 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2200 break specification.
2202 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2204 * Documentation/user: convert-ly the user manual
2206 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2208 * stepmake/aclocal.m4: version check patch (thanks MWD)
2210 * ly/music-functions-init.ly: robustness. Don't crash if
2211 currentBarNumber is not a number.
2213 * VERSION (PATCH_LEVEL): bump.
2215 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2217 * stepmake/aclocal.m4: better version check; handle fooX.Y
2220 * ly/performer-init.ly: instrument name fixup.
2222 * input/manual/chord-names-jazz.ly (banterProperties):
2223 instrumentName update
2225 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2227 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2229 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2230 function. Use hash tables to check membership.
2232 * lily/general-scheme.cc (LY_DEFINE): new function.
2234 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2236 * lily/include/translator.hh (struct Acknowledge_information): add
2239 * ly/music-functions-init.ly: change name to BreathingEvent
2241 * input/regression/*.ly: apply it.
2243 * python/convertrules.py (conv): better instrumentName conversion
2246 * scm/define-music-types.scm (music-descriptions): add
2247 line-break-event to LineBreakEvent music
2249 * lily/music.cc (to_event): don't crash if music type not set.
2251 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2254 * lily/spacing-engraver.cc (stop_translation_timestep): set
2255 spacing for proportional notation too.
2257 * scm/translation-functions.scm (format-bass-figure): inspect
2260 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2262 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2264 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2266 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2268 * scm/layout-page-layout.scm (make-page-from-systems): new function
2269 (optimal-page-breaks): use the new page-breaking calling convention
2271 * scm/define-context-properties.scm (all-user-translation-properties):
2274 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2275 revokePageTurns functionality. If there is a special barline within
2276 the breakable region, break there instead of at the end of the region.
2278 * lily/paper-book.cc (pages): use the new page-breaking calling
2281 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2283 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2285 * scripts/lilypond-book.py: insert \sourcefileline command in
2286 output, so lilypond error messages refer to the spot in the
2287 original .lytex / .itely sourcefile.
2289 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2291 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2292 space to next column for distance to fixed col.
2294 * VERSION (PACKAGE_NAME): release 2.9.14
2296 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2299 * lily/accidental-engraver.cc (process_acknowledged): don't create
2300 accidental for trill span event. This fixes spurious accidentals
2303 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2305 * scm/define-grob-properties.scm (all-user-grob-properties):
2306 Clarify documentation of side-axis and direction. Thanks to Paul
2307 for the inspiration.
2309 * lily/bar-line.cc: Add documentation for "||:" also in the
2310 interface documentation.
2312 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2314 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2316 * lily/paper-column.cc (set_system): new function.
2318 * lily/spacing-engraver.cc (stop_translation_timestep): store
2319 SpacingSpanner refs in Paper_column.
2321 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2322 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2324 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2326 * lily/beam-engraver.cc (listen_beam): add method for
2327 Grace_beam_engraver too.
2329 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2331 * python/convertrules.py: Fix indentation bug that broke
2332 conversion of files older than 1.3.117.
2333 Fix escape error in the description for 2.9.6.
2335 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2337 * lily/*-engraver.cc: convert all try_music functions to listen_*
2340 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2341 enums to represent pedal types, and calculate more data statically.
2343 * scm/part-combiner.scm (recording-group-emulate): create a
2344 softcoded substitute for recording-group-engraver.cc.
2346 * lily/music.cc: make a common transpose function for events and
2349 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2350 ManualMelismaEvent, and obsoletes Melisma_translator.
2352 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2354 * input/test/instrument-name-align.ly: update version.
2356 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2358 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2359 Doc the --pdf flag to lilypond-book.
2361 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2363 * Documentation/topdocs/NEWS.tely (Top): add description.
2365 * input/regression/tuplet-full-length-note.ly: add file.
2367 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2368 always store axis group.
2370 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2372 * input/regression/instrument-switch.ly: new file.
2374 * lily/instrument-switch-engraver.cc (process_music): new file.
2376 * ly/engraver-init.ly: add Instrument_switch_engraver
2378 * ly/music-functions-init.ly: \instrumentSwitch
2380 * scm/define-context-properties.scm
2381 (all-user-translation-properties): add instrumentCueName
2383 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2385 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2387 * ly/music-functions-init.ly: music function \transposition.
2389 * lily/parser.yy (command_element): softcode \transposition.
2391 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2392 (process_music): oops.
2394 * lily/instrument-name-engraver.cc (start_spanner): new
2395 function. Create spanner when property changes.
2396 (stop_spanner): new function.
2398 * python/convertrules.py (conv): add rule.
2400 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2401 shortInstrumentName iso. instr.
2403 * scm/output-ps.scm (dashed-line): add phase argument to
2406 * lily/bar-line.cc (dashed_bar_line): new function.
2407 (compound_barline): support \bar "dashed".
2409 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2410 --output=DIR to DIR/BASE if it is a dir.
2412 * flower/file-name.cc (file_part): new function
2413 (dir_part): new function
2415 * lily/lily-parser-scheme.cc (LY_DEFINE):
2417 * DEDICATION: update
2419 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2421 * lily/instrument-name-engraver.cc: formatting.
2423 * python/convertrules.py (conv): bugfix for \epsfile.
2425 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2429 * lily/gourlay-breaking.cc: Oops, these should have been included
2432 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2434 * scripts/*.py (program_name): cleanup relocation snippets.
2436 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2438 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2440 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2441 page-breakable by default
2443 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2444 correctly calculated for a single-system page
2446 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2447 bigger than the second number
2449 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2450 acknowledge that we aren't satisfying constraints)
2452 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2455 * lily/grob.cc (pure_height): add minimum-Y-extent
2457 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2460 * lily/constrained-breaking.cc: convert code to use new Matrix class
2461 (get_best_solution): new function
2463 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2464 is a page with no systems
2466 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2468 * VERSION (PACKAGE_NAME): release 2.9.13
2470 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2473 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2475 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2477 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2480 * scm/define-grob-properties.scm (all-user-grob-properties):
2481 remove grace-space-factor.
2483 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2484 grace-spacing-interface
2485 (spacing-options-interface): add.
2487 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2489 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2491 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2492 GraceSpacing object.
2494 * lily/note-spacing.cc: fix prop list formatting
2496 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2497 beaming for grace notes too.
2499 * input/regression/spacing-grace.ly: update.
2501 * lily/grace-spacing-engraver.cc: new file.
2503 * lily/spacing-spanner.cc: add strict-grace-spacing.
2505 2006-07-20 Graham Percival <gpermus@gmail.com>
2507 * lily/parser.yy: compile fix.
2509 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2511 * scm/define-grobs.scm (all-grob-descriptions): typo.
2513 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2514 .eps extension from includegraphics.
2516 * scripts/lilypond-book.py (main): add support for --pdf.
2518 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2519 callback to compute common shortest duration.
2520 (set_springs): typo.
2522 * scm/define-grob-properties.scm (all-user-grob-properties): add
2523 strict-grace-spacing.
2525 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2526 support float_grace_columns_.
2528 * lily/spacing-options.cc (init_from_grob): new file.
2530 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2532 * input/regression/spacing-loose-grace.ly: new file.
2534 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2536 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2537 tupletFullLengthNote too. Choose right bound depending on value.
2539 * input/regression/tuplet-full-length-note.ly: new file.
2541 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2543 * lily/*-performer.cc: Converted try_music to listen_*
2545 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2546 as a stream-event internally. Introduce event_cause (), deprecate
2549 * scm/define-music-types.scm: Removed BusyPlayingEvent
2551 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2553 * Documentation/user/advanced-notation.itely (Font selection):
2554 Document how to get a list of available fonts using 'lilypond
2555 -dshow-available-fonts blabla'.
2557 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2559 * GNUmakefile.in: filter lily-XXX.pdf files.
2561 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2563 * scm/define-grob-properties.scm (all-internal-grob-properties):
2564 remove delta-pitch. Use delta-position everywhere.
2566 * scm/output-lib.scm (fall::print): use new order.
2568 * scm/output-ps.scm (path): reorder arguments.
2570 * scm/output-svg.scm (path): support for path primitive.
2572 * input/regression/bend-after.ly: new file.
2574 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2575 recipe for eps -> pdf conversion.
2577 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2579 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2582 2006-07-19 Graham Percival <gpermus@gmail.com>
2584 * input/manual/screech-boink.ly: moved to here.
2586 * input/screech-boink.ly: deleted.
2588 * scm/define-grob-properties.scm: clarify doc string.
2590 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2592 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2594 * scm/output-ps.scm (path): define path.
2596 * scm/define-stencil-commands.scm
2597 (ly:register-stencil-expression): add path.
2599 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2601 * ly/engraver-init.ly: add Fall_engraver
2603 * lily/parser.yy (music_function_event): allow musicfunction
2604 without music arg as music_function_event.
2606 * lily/grob-scheme.cc (LY_DEFINE):
2607 ly:grob-robust-relative-extent. New function.
2609 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2611 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2613 * scm/output-lib.scm (fall::print): new function
2615 * lily/fall-engraver.cc (stop_fall): new file.
2617 * ly/music-functions-init.ly: alphabetise.
2619 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2622 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2624 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2626 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2629 * lily/translator-group.cc (connect_to_context): non const error message.
2631 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2633 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2636 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2638 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2640 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2643 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2645 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2647 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2649 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2651 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2653 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2655 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2657 * scm/layout-page-layout.scm: Define module, tidy code, use more
2658 functions iso. a single big one.
2660 * scm/layout-page-dump.scm: move page dump functions used in two
2661 pass spacing to this file. Define module.
2663 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2666 * ly/paper-defaults.ly: use module layout-page-layout.
2668 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2670 * lily/music.cc: Revised MusicEvent event class. It now contains
2671 event data directly instead of encapsulating it in music. The
2672 previously used class is renamed to OldMusicEvent.
2674 * lily/stream-event.cc: Stream events are now probs.
2676 * lily/translator-group.cc, lily/translator.cc: Translators can
2677 now listen directly to stream events, by using macros
2678 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2680 * lily/arpeggio-engraver.cc: Converted to use new event system
2682 * THANKS: Corrected spelling mistake.
2684 2006-07-12 Graham Percival <gpermus@gmail.com>
2686 * Documentation/user/SConscript, make/lilypond-vars.make,
2687 input/GNUmakefile: doc build looks in input/manual instead
2690 * input/manual/ GNUmakefile, SConscript: build files for
2693 * input/test/ various: some files moved to input/manual/
2695 * Documentation/user/basic-notation.itely: small updates;
2696 thanks Kieren and Charles!
2698 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2700 * VERSION (PACKAGE_NAME): release 2.9.11
2702 * Documentation/topdocs/NEWS.tely (Top): update prop value
2704 * Documentation/user/basic-notation.itely (Tuplets): new property
2707 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2709 * python/convertrules.py (conv): tweaks.
2711 * VERSION (PATCH_LEVEL): bump version.
2713 * python/convertrules.py (conv): add rule for
2714 tupletNumberFormatFunction.
2716 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2717 tupletNumberFormatFunction.
2719 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2720 text through 'text callback.
2722 * lily/time-scaled-music-iterator.cc (construct_children): copy
2723 tweaks generated events.
2725 * scm/define-context-properties.scm
2726 (all-user-translation-properties): remove tupletNumberFormatFunction
2728 * lily/tuplet-engraver.cc (process_music): don't read
2729 tupletNumberFormatFunction
2731 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2734 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2736 * lily/global-context-scheme.cc: Separated ly:run-translator into
2739 * lily/score-engraver.cc, lily/score-performer.cc,
2740 scm/define-context-properties.scm: Make paper/midi output
2741 accessable as a context property.
2743 * lily/score-translator.cc, lily/score-context.cc: Removed.
2745 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2747 * scm/ps-to-png.scm (Module):
2748 * scm/framework-tex.scm (Module):
2749 * scm/framework-ps.scm (Module):
2750 * scm/backend-library.scm (Module):
2751 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2752 "dDEVICEHEIGHTPOINTS".
2754 2006-07-04 Graham Percival <gpermus@gmail.com>
2756 * Documentation/user/ various: general improvements to
2757 "working with lilypond files" section.
2759 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2761 * lily/sequential-iterator.cc: Change the default get_music_list
2762 to read elements-callback music property
2764 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2765 processing of multimeasure rests. Softcoded
2766 sequential-music-iterator.
2768 * lily/sequential-music-iterator.cc: Removed.
2770 2006-06-28 Graham Percival <gpermus@gmail.com>
2772 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2774 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2776 * lily/parser.yy: Wrap non-post-events in EventChords before
2777 assigning them to identifiers.
2779 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2781 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2782 gives correct vertical placement of \bar ":" in all staff
2783 sizes. Thanks Martial!
2785 2006-06-26 Graham Percival <gpermus@gmail.com>
2787 * Documentation/user/invoking.itely : minor update from mailist.
2789 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2791 * lily/ various: Introduce stream events of types Prepare,
2792 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2793 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2795 * lily/global-context*.cc: Time is now -inf before iteration
2798 * lily/include/context.hh: Removed unique_, init_
2800 * Documentation/topdocs/NEWS: Make the feathered beam example
2801 avoid triggering a bug.
2803 2006-06-24 Graham Percival <gpermus@gmail.com>
2805 * Documentation/user/ various: small additions from mailist.
2807 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2809 * ly/performer-init.ly: Add some missing links in the context
2810 hierarchy for MIDI output. There are probably some more missing!
2812 2006-06-21 Graham Percival <gpermus@gmail.com>
2814 * Documentation/user/ various: minor spelling fixes;
2815 thanks Dave Luttinen!
2817 * Documentation/user/ various: small clarifications;
2818 thanks Anthony Youngman!
2820 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2822 * po/fr.po: add \n appropriately.
2824 * lily/lexer.ll: remove ? from version-seen?
2826 2006-06-19 John Mandereau <john.mandereau@free.fr>
2828 * po/fr.po; update translation, by Jean-Charles Malahieude and
2831 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2833 * THANKS: add Markus Schneider.
2835 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2836 Staff_symbol_engraver
2838 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2839 replace staff_engraver
2841 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2844 * lily/staff-collecting-engraver.cc
2845 (acknowledge_end_staff_symbol): new function
2847 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2849 * lily/staff-collecting-engraver.cc
2850 (acknowledge_end_staff_symbol): new function.
2852 * lily/main.cc: switch on relocation by default.
2854 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2856 * lily/spacing-spanner.cc (musical_column_spacing): set
2857 compound_fixed_note_space to 0.0. Document why.
2859 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2860 range of inverse_hooke_
2861 (Simple_spacer): init completely.
2863 (get_line_configuration): don't use cols.resize(); it introduces
2866 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2868 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2870 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2871 try. Divide by beatlength.
2873 * input/regression/beaming-ternary-metrum.ly: update doc.
2874 add beatLength hack.
2876 * scm/music-functions.scm (make-time-signature-set): add
2877 standard-beat-grouping.
2879 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2881 * input/regression/tie-whole.ly: new file.
2883 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2884 cross center of note head in case of invisible stem.
2886 2006-06-16 Graham Percival <gpermus@gmail.com>
2888 * Documentation/user/ various: small fixes from mailist.
2890 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2892 * lily/breathing-sign.cc (offset_callback): idem.
2894 * lily/align-interface.cc (align_to_fixed_distance): remove
2897 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2900 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2902 * VERSION (PACKAGE_NAME): release 2.9.9
2904 * ly/lilypond-book-preamble.ly: add \version
2906 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2908 * scripts/lilypond-book.py (PREAMBLE_LY): include
2909 lilypond-book-preamble.ly
2911 * lily/stem.cc (get_beaming): return max of 0 and
2912 scm_ilength. Fixes slurring from/to beams.
2914 * ly/lilypond-book-preamble.ly: new file.
2916 * lily/slur.cc: add inspect-index feature.
2918 2006-06-13 Graham Percival <gpermus@gmail.com>
2920 * Documentation/user/tutorial.itely: trivial fix.
2922 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2924 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2925 all non-event music in the parser via MAKE_SYNTAX.
2927 * lily/parser-scheme.cc: Add ly:parser-error function
2929 * scm/paper.scm: fix typo
2931 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2935 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2938 * buildscripts/output-distance.py (test_compare_signatures):
2940 (read_signature_file): use new signature format.
2942 * scm/stencil.scm (write-system-signature): simpler signature
2945 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2948 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2949 stem_end_position, but estimate instead.
2951 * lily/tuplet-bracket.cc (calc_positions): look at
2952 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2953 brackets narrower than beams.
2955 * lily/lexer.ll: set version-seen? even if version is
2958 * lily/rest.cc (y_offset_callback): bugfix: decide position
2959 override based on scm_is_number(). Fixes \rest on center staff
2962 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2963 patterns for 16th triplets.
2965 2006-06-10 Graham Percival <gpermus@gmail.com>
2967 * Documentation/user/ page.itely, global.itely: editing
2970 * Documentation/user/ various: findex -> funindex.
2972 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2974 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2975 insert extra tuplet events.
2977 2006-06-10 Graham Percival <gpermus@gmail.com>
2979 * Documentation/user/programming-interfaces.itely: add
2982 * python/convertrules.py: add annotatefoo -> annotate-foo
2985 * Documentation/user/global.itely: start editing.
2987 * Documentation/user/page.itely: major editing, new spacing
2990 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2992 * scm/define-markup-commands.scm (wordwrap-markups): use
2993 output-def 'line-width if undefined.
2995 * HACKING: trim outdated info.
2997 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2999 * scm/define-grobs.scm (all-grob-descriptions): Add
3000 line-spanner-interface to all grobs that already have
3001 text-spanner-interface or dynamic-text-spanner-interface
3003 * scm/page.scm: Rename annotate{headers,systems,page}->
3006 * input/regression/page-spacing.ly,
3007 input/regression/page-layout-manual-position.ly: idem
3009 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3011 * lily/line-spanner.cc: cleanup property list.
3013 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3014 generator expressions (2.3 compat).
3016 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3018 * lily/vertical-align-engraver.cc: Make sure that the
3019 align{Above,Below}Context properties are included in the automatic
3022 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3024 * scm/paper-system.scm (paper-system-annotate): also annotate the
3025 estimated pure-Y-extent
3027 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3029 * lily/system.cc (break_into_pieces): set the estimated height
3030 of each child system
3032 * lily/stem.cc (pure_height): new pure-Y-extent callback
3034 * lily/staff-symbol-referencer.cc (callback): don't destroy
3035 the staff-position property
3037 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3038 consider_suicide into two functions
3040 * lily/constrained-breaking.cc (resize): use the new pure
3041 callbacks to estimate the height of a system
3043 * lily/axis-group-interface.cc (pure_group_height): new
3044 side-effect-free VerticalAxisGroup height-callback
3046 * lily/align-interface.cc (get_extents_aligned_translates):
3047 split align_elements_to_extents into two functions
3048 (get_pure_child_y_translation): new function
3050 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3052 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3054 * lily/paper-score.cc: cache break_indices and columns
3056 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3058 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3060 * lily/font-config.cc (init_fontconfig): do the init if
3061 cache_file, but don't look at cache_file.
3063 * input/regression/quote-tie.ly: new file.
3065 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3066 to Head_event_tuple, so we deal gracefully with ties on
3069 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3072 2006-06-08 Graham Percival <gpermus@gmail.com>
3074 * input/test/ smart-transpose.ly, reverse-music.ly:
3075 \applyMusic to music functions update, thanks Michael!
3077 2006-06-07 Graham Percival <gpermus@gmail.com>
3079 * input/test/ add-staccato.ly, add-text-script.ly,
3080 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3081 music functions update, thanks to Michael Meixner.
3083 * Documentation/user/music-glossary.tely: small fix
3086 * Documentation/user/ various: minor additions from mailist.
3088 * Documentation/user/lilypond.tely, basic-notation.itely:
3089 small test of @funindex. (works here)
3091 * input/test/font-table.ly: reduce size to partially
3092 de-ugly version in manual.
3094 * Documentation/user/page.itely: new file (split former
3095 "global issues" into "page settings" and "non-musical
3098 * Documentation/user/ various: fix @ref{}s to match
3099 new chapter names (above).
3101 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3103 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3105 2006-06-06 Graham Percival <gpermus@gmail.com>
3107 * Documentation/user/advanced-notation.itely: add example
3108 for segno/coda on barline.
3110 * tex/texinfo.tex: merge from upstream.
3112 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3114 * scripts/lilypond-book.py (process_snippets): Argument fix.
3117 * buildscripts/builder.py:
3120 * Documentation/user/SConscript: More SCons fixes.
3122 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3124 * lily/font-config.cc (init_fontconfig): Only initialize if
3125 global cache_file is found.
3127 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3129 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3132 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3134 * VERSION (PACKAGE_NAME): release 2.9.8
3136 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3137 function. Delay ledger modifying ledgered grobs to
3138 stop_translation_timestep(), to ensure that we're ledgering
3139 according to the new spanner.
3140 (acknowledge_staff_symbol): don't check for non-NULL
3141 staff_sym->get_bound()
3143 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3146 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3149 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3150 directly from srcdir/stepmake/aclocal.m4
3152 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3155 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3157 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3159 * lily/simple-spacer.cc (get_line_configuration): add
3160 keep-inside-line rods
3161 (struct Column_desc): add constructor
3162 (struct Rod_desc): add constructor
3163 (get_line_forces): check for forced page breaks here too
3165 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3166 support/elements cycles between InstrumentNames and AxisGroups
3168 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3170 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3172 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3173 make-txt-files target.
3175 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3176 make-txt-files target.
3178 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3180 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3183 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3185 * Documentation/user/instrument-notation.itely,
3186 input/regression/breathing-sign-ancient.ly,
3187 input/test/divisiones.ly: Removed redundant property settings for
3190 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3191 fix lyrics alignment problems. They are implemented now as scheme
3192 functions that add the appropriate unicode char to the first lyric
3193 event rather than adding a separate lyric event. Minor edit of
3196 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3198 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3199 pollute src dir with built .txt files, but install directly from
3200 Documentation/topdocs/out/
3202 * buildscripts/output-distance.py
3203 (ComparisonData.create_html_result_page): put version/directories
3206 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3209 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3210 Patch by Karl Hammar
3212 * buildscripts/readlink.py: add file.
3213 Patch by Karl Hammar
3215 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3217 * lily/tuplet-number.cc (print): prevent stencil from being
3220 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3222 * scm/stencil.scm (write-system-signature): explicitly
3223 -well, superfluously- close output port.
3225 * buildscripts/output-distance.py (main): oops. Add extra argument.
3227 2006-06-05 Graham Percival <gpermus@gmail.com>
3229 * Documentation/user/music-glossary.tely: clarified example
3230 from Francisco Vila, thanks!
3232 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3234 * input/regression/spacing-section.ly: new file.
3236 * lily/input.cc (programming_error): new function.
3238 * lily/spacing-engraver.cc (try_music): new function. Accept
3239 spacing-section-event
3241 * lily/spacing-spanner.cc (set_springs): take slices of all
3242 columns for spacing.
3244 * lily/include/paper-column.hh (class Paper_column): add
3245 Paper_column::compare.
3247 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3249 * scm/define-music-types.scm (music-descriptions): add
3252 * lily/music-iterator.cc (report_event): use programming_error for
3253 sending non-event error.
3255 * lily/input.cc (programming_error): new function
3257 * buildscripts/output-distance.py (main): use compare-XXX for
3259 (main): --threshold option, default at 0.30
3261 * output-distance.py (main): add --threshold option.
3263 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3265 * scm/paper-system.scm (paper-system-annotate): fix problem when
3266 annotating an empty system
3268 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3270 * GNUmakefile.in: reinstate old web tar/copying.
3272 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3274 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3275 nothing changes. (Erik S)
3277 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3280 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3282 * scm/define-markup-commands.scm (whiteout): do not force
3283 foreground color of argument markup to black.
3285 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3286 the left of the arrow, instead of below the arrow name, so that,
3287 when two little arrows are vertically stacked, their dimensions
3288 and name should not overlap. Add a color key parameter.
3290 * scm/paper-system.scm (paper-system-annotate): Annotate
3291 next-space+next-padding instead of next-space. Annotate space
3292 between next-padding and next-space+padding, respectively, and
3293 following system extent and refpoint-Y-extent. Use colors.
3295 * scm/page.scm (annotate-page): translate annotations slightly to
3298 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3300 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3301 fix for x-staff slurs. Thanks Joe!
3303 * buildscripts/output-distance.py
3304 (SystemLink.output_expression_change_count): keep track of changed
3305 details, and dump in details html page.
3307 * input/regression/figured-bass-staff.ly: add note about setting
3308 properties in Staff context.
3310 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3311 add slurs and ties to support too.
3313 * buildscripts/output-distance.py (main): set dest_dir
3314 argument. Add --max-count option.
3316 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3318 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3319 shortcuts for special unicode chars that are useful in chant
3320 notation. Revised exisiting and added new comments.
3322 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3324 * make/mutopia-rules.make: remove duplicate recipe.
3326 2006-06-02 Werner Lemberg <wl@gnu.org>
3328 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3329 Add support for U+0132 (IJ) and U+0133 (ij).
3331 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3333 * buildscripts/output-distance.py (FileLink): new class. collect
3334 info systems from one .ly file.
3335 (FileLink.link_files_for_html): further tweaks.
3337 2006-06-02 Graham Percival <gpermus@gmail.com>
3339 * tex/texinfo.tex: partial fix for @funindex.
3341 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3344 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3346 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3348 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3349 @example too. Backportme.
3351 2006-06-02 Graham Percival <gpermus@gmail.com>
3353 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3354 from Werner Lemberg.
3356 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3358 * Documentation/user/music-glossary.tely: additional spanish
3359 updates and a lyrics fix in an example.
3361 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3363 * scm/define-grob-properties.scm: Previous patch contained
3364 spurious line from another patch not yet committed. Fixed.
3366 * scm/define-grob-properties.scm: Add missing doc strings for
3369 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3371 * buildscripts/output-distance.py
3372 (ComparisonData.write_text_result_page): separate the scores, sort
3375 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3378 * buildscripts/output-distance.py (me_path): use argv[0] for
3380 (ComparisonData.img_cell): use colored borders.
3382 * scm/stencil.scm (write-system-signature): escape newlines too.
3383 (write-system-signature): use (1,-1) interval for empty interval
3385 2006-01-01 Graham Percival <gpermus@gmail.com>
3387 * Documentation/user/music-glossary.tely: Spanish updates
3388 from Francisco Vila.
3390 * Documentation/user/lilypond-book.itely: addition from
3393 * Documentation/user/ various: edits, small additions
3396 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3398 * GNUmakefile.in (tree-lib-prefix-current):
3399 (tree-share-prefix-current): Use version number in tree, add
3402 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3404 * GNUmakefile.in: write VERSION, again.
3406 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3407 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3409 * stepmake/aclocal.m4: robuster version detection.
3411 * buildscripts/output-distance.py
3412 (ComparisonData.create_html_result_page): copy only if file
3413 exists, fixup src paths.
3415 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3417 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3419 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3420 Another datarootdir reto.
3422 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3423 available. This should be moved to postinstall-lilypond-doc.
3425 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3427 * GNUmakefile.in: simplify local-WWW-post.
3428 remove -type l from find.
3430 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3431 fixes. Don't follow symlinks.
3432 (ComparisonData.create_html_result_page): remove previous results.
3433 insert ../python in path.
3435 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3437 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3439 * config.make.in (datadir): Add datarootdir to silence autoconf.
3441 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3443 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3445 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3447 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3448 slash beams too wide.
3450 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3452 * VERSION: release 2.9.7
3454 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3456 * lily/relocate.cc (read_relocation_dir): Do not blindly
3459 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3461 * lily/parser.yy: replace THIS by PARSER
3463 * Documentation/index.html.in: add link to test-results.html page.
3465 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3467 * scm/translation-functions.scm (format-bass-figure): translate
3468 digits over 10 to the left
3470 * scm/define-markup-commands.scm (translate-scaled): new markup.
3472 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3475 * ly/engraver-init.ly: add Figured_bass_engraver
3477 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3479 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3481 * lily/score-engraver.cc (announce_grob): only note START announces.
3483 * lily/include/engraver-group.hh (Translator_group):
3484 acknowledge_hash_table_ is now drul.
3486 * lily/engraver.cc (announce_end_grob): new method.
3488 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3490 * lily/translator-dispatch-list.cc (create): take start_end argument.
3492 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3493 acknowledge_static_array_ to drul
3495 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3497 * scm/define-grob-interfaces.scm
3498 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3500 * scm/define-grobs.scm (all-grob-descriptions): add
3501 BassFigureAlignmentPositioning
3503 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3504 number stays up to date. Backportme.
3506 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3508 * Documentation/user/basic-notation.itely (Bar lines): Document
3511 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3513 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3515 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3516 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3519 * Resurrect `scons lily' build.
3521 * SConstruct (symlink_tree): Bugfix: link
3522 music-drawing-routines.ps to file iso directory.
3524 * lily/SConscript: Remove kpath-guile from LIBS.
3526 * SConstruct (libdir_package_version): Typo.
3527 (configure): Comment-out fontforge for lack of fontforge.pc .
3528 Also add libdir* to environment.
3530 2006-05-30 Graham Percival <gpermus@gmail.com>
3532 * Documentation/user/ various: minor additions from mailist and
3535 2006-05-30 Paco <fravd@ya.com>
3537 * Documentation/user/music-glossary.tely: numerous corrections and
3538 some new translations.
3540 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3544 * buildscripts/output-distance.py
3545 (ComparisonData.create_html_result_page): new routine: summarise
3546 results in HTML page with images.
3547 (ComparisonData.create_text_result_page): create summary text files too.
3549 * GNUmakefile.in (web-ext): package .signature files too. They
3552 * scm/stencil.scm (write-system-signature): typo.
3554 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3556 * scm/stencil.scm (write-system-signature): better escaping.
3557 only write signature for music systems, not for markup systems.
3559 * scm/framework-ps.scm (output-framework): dump-signatures support
3562 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3564 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3565 for -dno-point-and-click
3567 * lily/grob.cc (get_print_stencil): don't read
3568 point_and_click_global to determine whether to set grob-cause.
3570 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3572 * buildscripts/output-distance.py (main): new function.
3573 (ComparisonData): new class.
3575 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3576 careful with generating new LedgerLineSpanners.
3578 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3580 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3581 context. This fixes double ledger lines in output.
3583 * lily/system.cc (get_paper_system): remove 3 layer limit.
3585 * buildscripts/output-distance.py (SystemLink.distance): new
3586 file. Compare signatures.
3588 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3590 * lily/grob-array.cc (remove_duplicates): rename from
3591 uniq(). Sort before calling uniq() so it actually works.
3593 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3595 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3596 \version from lilypond file snippet.
3597 (Lilypond_file_snippet.ly): oops. typo.
3598 (find_toplevel_snippets): urgh. again.
3600 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3601 prevent duplicated broken items in output.
3603 * scm/framework-eps.scm (output-classic-framework): only dump if
3604 dump-signatures is set.
3606 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3608 * scm/stencil.scm (write-system-signature): new routine: write
3609 python parseable signature of a separate paper system.
3612 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3614 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3618 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3620 * translator-group.cc: send music events to engravers in
3621 non-bottom contexts.
3623 * tuplet-engraver.cc: process tuplet brackets in correct order.
3625 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3627 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3628 arg 2 might point us to a new binary (patch by Karl Hammar)
3630 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3632 * VERSION (PACKAGE_NAME): release 2.9.6
3634 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3636 * Documentation/user/*.itely: 2nd
3637 attempt: replace funindex -> findex globally.
3639 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3641 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3642 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3644 * scm/define-music-display-methods.scm: display methods for
3645 breaks. Fix \applyOutput.
3647 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3649 * Documentation/user/macros.itexi: comment out funindex expansion.
3651 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3654 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3655 Karl Hammar. Backportme.
3657 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3659 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3661 * Documentation/user/programming-interface.itely (Running a
3662 function on all layout objects): idem.
3664 * Documentation/user/introduction.itely (Automated engraving):
3665 update \applyOutput syntax
3667 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3668 remove debugging hook.
3670 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3673 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3675 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3676 TEXI2DVI_FLAGS to texi2dvi invocation.
3678 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3680 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3681 works. More work is done by iterator now, and engraver has been
3682 very much simplified.
3684 * lily/translator-group.cc: try_music is now invoked through a
3687 * lily/*-iterator.cc: Massive cleanups. Junked
3688 try_music_in_children globally. Renamed try_music to report_event,
3689 and made that method descend to a bottom context automatically.
3691 * lily/event-iterator.cc: New file.
3693 * lily/output-property-iterator.cc,
3694 lily/old-lyric-combine-music-iterator.cc: Removed.
3696 * python/convert-rules.py: Modified the syntax for \applyOutput.
3698 2006-05-23 Graham Percival <gpermus@gmail.com>
3700 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3703 * Documentation/user/ various: stuff that might have helped
3704 to fix the pdf creation, plus some minor doc additions.
3706 * Documentation/user/changing-defaults.itely: remove @b from
3707 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3709 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3711 * lily/beaming-pattern.cc (beamify): deal with negative start
3712 moments for beaming patterns.
3714 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3716 * lily/beaming-info.cc (beamify): new function: read beatLength
3717 and beatGrouping from context.
3719 * input/regression/beam-beat-grouping.ly (Module): new file.
3721 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3723 * lily/beam.cc (get_beam_segments): generate events for
3724 max_connect_ case too.
3725 (get_beam_segments): read Stem::max-beam-connect.
3727 * input/regression/beam-single-stem.ly: new file.
3729 * lily/stem.cc (set_beaming): use #f as signaling value for
3732 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3734 * lily/beam.cc (set_beaming): read clip-edges property.
3735 (calc_direction): don't suicide for single stem.
3737 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3738 argument, remove 1<<15 hack. Remove clip_edges()
3740 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3742 2006-05-21 Graham Percival <gpermus@gmail.com>
3744 * Documentation/user/basic-notation.itely: reorg.
3746 * Documentation/user/ various: minor fixes.
3748 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3750 * lily/stencil-expression.cc (register_stencil_head): opps, append
3751 to cdr of static SCM object.
3753 2006-05-19 Graham Percival <gpermus@gmail.com>
3755 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3756 update framework for command index. DOC WRITERS: use @funindex
3757 instead of @cindex @code{}.
3759 * Documentation/user/ various: replace @cindex @code{} => @funindex
3761 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3763 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3764 case positions is set manually.
3766 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3768 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3771 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3773 * Documentation/user/changing-defaults.itely (Contexts explained):
3774 use absolute dimension for @image.
3776 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3777 out image for illustration too.
3778 ($(outdir)/%.png): add more png <-> eps rules.
3780 2006-05-17 Graham Percival <gpermus@gmail.com>
3782 * Documentation/user/ various: remove trailing whitespace, cosmetic
3783 change to reduce changes produced by diff.
3785 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3787 * lily/main.cc (do_chroot_jail): correctness tweak.
3789 * python/lilylib.py (system): import subprocess in system () only.
3791 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3793 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3794 variable. Backportme.
3796 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3798 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3800 2006-05-17 Werner Lemberg <wl@gnu.org>
3802 * lily/lexer.ll (init_signature_has_table): Add
3803 `scm-scm-music-music'.
3805 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3806 (Generic_prefix_music_scm): Add rule for it.
3808 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3809 `quoted-transposition' property.
3811 * ly/music-functions-init.ly (transposedCueDuring): New function.
3813 * scm/define-music-properties.scm (all-music-properties): Updated.
3815 * Documenation/topdocs/NEWS.itely: Document it.
3817 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3819 * python/lilylib.py (system): move import subprocess to system()
3822 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3824 * VERSION (PATCH_LEVEL): release 2.9.5
3826 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3829 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3831 2006-05-16 Graham Percival <gpermus@gmail.com>
3833 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3835 * Documentation/user/ various: minor fixes.
3837 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3839 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3841 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3843 * Documentation/user/advanced-notation.itely (Instrument names):
3844 Modified obsolete instruction on how to move instrument names away
3845 from the staves. Hmm, at second thought the bug probably has been
3846 solved, so the full bug description should probably be removed.
3848 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3850 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3851 currentCommandColumn.
3853 * lily/hairpin.cc (print): also add padding for non-neighbor
3856 * scm/define-context-properties.scm
3857 (all-user-translation-properties): add hairpinToBarline
3859 * input/regression/hairpin-to-barline.ly: new file.
3861 * lily/context.cc (internal_send_stream_event): thinko fix.
3863 * lily/tie.cc (set_default_control_points): robustness fix.
3865 * python/musicxml.py (Part.interpret): don't complain about
3866 incomplete measures.
3868 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3869 new music if last_event_chord() returned None.
3871 * python/musicxml.py (Part.interpret): skip back over chord notes.
3873 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3875 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3876 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3877 lily/slash-repeat-engraver.cc,
3878 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3879 iterator sends PercentEvents
3881 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3882 rework tuplets: send start/stop events to engraver
3884 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3885 dispatchers event-source and events-below to Context
3887 2006-05-15 Graham Percival <gpermus@gmail.com>
3889 * Documentation/user/README.txt: update info for doc writers.
3891 * Documentation/user/programming-interface.itely: integrate
3892 Nicolas' fixes for chapter rewrite.
3894 * Documentation/user/ various: minor fixes.
3896 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3898 * lily/clef-engraver.cc: cleanup.
3900 * Documentation/user/GNUmakefile: dist context-example.eps too.
3902 * lily/key-engraver.cc (create_key): use
3903 explicitKeySignatureVisibility for cancellation too.
3905 * lily/font-config.cc (init_fontconfig): don't close file if
3908 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3910 * Documentation/topdocs/NEWS.tely: niente and rotation news
3912 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3914 * lily/include/stencil.hh
3915 * lily/stencil.cc (rotate): new function. Makes it possible
3916 to rotate a stencil around a given offset.
3918 * lily/grob.cc (get_print_stencil): add rotation support
3920 * lily/stencil-interpret.cc (interpret_stencil_expression):
3921 add rotation support
3923 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3925 * scm/define-grob-properties.scm: add 'rotation property
3927 * scm/define-markup-commands.scm: add rotate markup command
3929 * scm/output-ps.scm: add rotation support in PostScript backend
3931 * scm/output-svg.scm: add rotation support in SVG backend
3933 2006-05-13 Graham Percival <gpermus@gmail.com>
3935 * Documentation/user/music-glossary.itely: French correction.
3937 * Documentation/user/programming-interface.itely: major
3938 new docs, some reorg, some info from Nicolas.
3940 * Documentation/user/ various: small fixes.
3942 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3944 * Documentation/user/programming-interface.itely (Markup
3945 programmer interface): Remove duplicate text.
3947 2006-05-12 Graham Percival <gpermus@gmail.com>
3949 * Documentation/user/context-example.eps: new file.
3951 * Documentation/user/changing-defaults.itely: set up file to
3954 * Documentation/user/programming-interface.itely: changes
3957 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3959 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3961 2006-05-11 Graham Percival <gpermus@gmail.com>
3963 * Documentation/user/programming-interface.itely: first round of
3964 editing and merging emails from Nicolas.
3966 * Documentation/user/scheme-tutorial: minor edit.
3968 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3970 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3972 (Xml_node.message): use it.
3974 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3975 oops. Add duration argument.
3977 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3979 * lily/paper-column-engraver.cc (make_columns):
3980 * scm/define-grobs.scm: Revert my previous change and set the default
3981 in define-grobs.scm instead.
3983 2006-05-09 Graham Percival <gpermus@gmail.com>
3985 * Documentation/user/changing-defaults.itely: general editing,
3986 info about \set and \override.
3988 * Documentation/user/tweaking.itely, advanced-notation.itely:
3989 fixes from Dave Luttinen, thanks!
3991 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3993 * lily/paper-column-engraver.cc (make_columns): By default, a column
3994 needs to be breakable.
3996 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3998 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4000 (musicxml_time_to_lily): idem
4001 (musicxml_key_to_lily): idem
4002 (instrument_drumtype_dict): dict for supported drumtypes.
4003 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4004 moments and pending mm rests
4005 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4006 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4007 (musicxml_voice_to_lily_voice): add mode change.
4008 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4009 speed and less memory usage (factor 5 to 10).
4010 (convert): write -defs.ly and driver file separately so people
4011 can script their own part extraction.
4013 * python/musicxml.py (minidom_demarshal_node): new function:
4014 separate minidom handling.
4015 (lxml_demarshal_node): new function: support lxml.etree too.
4016 (Xml_node.message): new function: verbose error message, with XML
4017 path to offending node.
4018 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4019 (Part_list.generate_id_instrument_dict): new method: collect
4020 instrument names, to be able to set drum_type.
4021 (Part.interpret): handle underfull measures
4022 (Part.interpret): assign instrument names.
4024 * python/musicexp.py (Output_printer.close): new method
4025 (MusicWrapper.print_ly): new class: support other modes,
4027 (BarCheck.print_ly): new class. Support bar checks, with comments
4028 and fancy barchecks.
4029 (NoteEvent.__init__): also set drum_type for drum notes.
4030 (MultiMeasureRest.lisp_expression): dump mm rests.
4032 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4033 line-break-permission if forbidBreak is not set.
4035 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4037 * scm/define-context-properties.scm:
4038 * scm/define-grob-properties.scm:
4039 * scm/define-grobs.scm:
4040 * scm/define-music-display-methods.scm:
4041 * scm/define-music-properties.scm:
4042 * scm/define-music-types.scm:
4043 * scm/music-functions.scm:
4044 * ly/declarations-init.ly:
4045 * lily/include/constrained-breaking.hh:
4047 * lily/spaceable-grob.cc:
4048 * lily/simple-spacer.cc:
4049 * lily/paper-score.cc:
4050 * lily/paper-column.cc:
4051 * lily/paper-column-engraver.cc:
4053 * lily/gourlay-breaking.cc:
4054 * lily/constrained-breaking.cc:
4055 * python/convertrules.py:
4056 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4057 "page-break-penalty" and "line-break-permission".
4058 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4059 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4061 * lily/bar-engraver.cc:
4062 * lily/beam-engraver.cc:
4063 * lily/forbid-break-engraver.cc:
4064 * lily/ligature-engraver.cc:
4065 * lily/paper-column-engraver.cc:
4066 * lily/percent-repeat-engraver.cc:
4067 * lily/score-engraver.cc:
4068 * lily/score-engraver.hh:
4069 * lily/paper-column-engraver.hh:
4070 Inter-engraver communication regarding line breaks is done through context
4071 properties (Score.forbidBreak) instead of function calls.
4073 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4075 * VERSION (PACKAGE_NAME): release 2.9.4
4077 2006-05-08 Graham Percival <gpermus@gmail.com>
4079 * Documentation/user/working.itely: proofreading from Dave
4082 * Doucmentation/user/README.txt: updated with manual style info.
4084 * Documentation/user/ various: trim linewidth to 78 chars.
4086 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4088 * scm/define-grob-properties.scm (all-internal-grob-properties):
4089 remove chord-tremolo property.
4091 * lily/beam.cc (get_beam_segments): don't use stem position as
4092 base for broken ends.
4094 2006-05-06 Graham Percival <gpermus@gmail.com>
4096 * Documentation/user/putting.itely: proofreading from Dave
4099 * Documentation/user/ various: more reorg and clarifications.
4101 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4103 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4105 * ly/music-functions-init.ly: new function featherDurations
4107 * lily/beam.cc: read grow-direction for feathered beaming.
4109 * Documentation/topdocs/NEWS.tely (Top): typo.
4111 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4113 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4116 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4117 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4118 used by music streams.
4120 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4121 lily/stream-event.cc, lily/stream-event-scheme.cc,
4122 lily/listener.cc, lily/scheme-listener.cc,
4123 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4124 lily/include/stream-event.hh, lily/include/listener.hh,
4125 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4126 Created data structures for music streams.
4128 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4130 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4131 construction of a beam.
4134 * flower/include/std-vector.hh (default_compare): use only one comparison.
4136 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4137 (note-by-number): further attachment fixes.
4139 * scm/lily-library.scm (ordered-cons): new function.
4140 (interval-index): new function
4142 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4144 * lily/note-head.cc (get_stem_attachment): new function.
4146 * scm/define-markup-commands.scm (note-by-number): read 'style
4149 * input/regression/markup-note.ly: show note-head style option.
4151 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4154 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4156 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4158 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4160 * lily/include/constrained-breaking.hh: GCC 4 fix.
4162 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4164 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4165 Replace it with functions get_line_forces and get_line_configuration.
4166 (class Simple_spacer): Make data private.
4167 Rewrite compression algorithm to be faster and simpler.
4169 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4170 * lily/gourlay-breaking.cc (solve):
4171 * lily/constrained_breaking.cc (space_line):
4172 Change it to the new simple-spacer code.
4174 * lily/paper-score.cc (get_paper_systems):
4177 Delay breaking the systems until they are requested.
4178 (find_break_indices):
4179 Use vsize for indices.
4181 Move the "Calculating line breaks" message here.
4183 * lily/system.cc (pre_processing):
4184 Move the "Calculating line breaks" message away from here.
4185 (break_into_pieces):
4186 Allow multiple calls to this function in sequence (with touching-but-
4187 not-overlapping breakpoints).
4189 * lily/constrained-breaking.cc:
4190 Replace most of the get_XXXX functions with get_line_details.
4191 Only calculate the force for each line. Calculate configurations only
4192 for the lines we will actually use.
4193 Replace cols_ with lines_.
4195 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4197 * mf/GNUmakefile (depth): remove FC_FIND.
4199 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4201 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4203 * scm/framework-ps.scm (write-preamble): new function.
4204 (write-preamble): load mac fonts via fondu, even if gs-font-load
4207 2006-05-03 Werner Lemberg <wl@gnu.org>
4209 * mf/GNUmakefile (FC_FIND): Fix typo.
4211 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4213 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4215 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4217 * stepmake/aclocal.m4: run python-config for crosscompiling
4220 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4221 -f png for HTML, TEXINFO formats.
4223 * input/tutorial/lbook-html-test.html: new file.
4225 * lily/include/tie-formatting-problem.hh (class
4226 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4227 [column, direction]. This fixes laissez vibrer ties.
4229 * flower/include/tuple.hh (struct Tuple2): new file.
4231 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4232 $(FCMATCH), only if $(NCSB_DIR) not set.
4234 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4236 * config.make.in (DOCUMENTATION): set FCMATCH.
4238 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4240 2006-05-03 Graham Percival <gpermus@gmail.com>
4242 * Documentation/user/ various: final round of reorg.
4244 * Documentation/user/instrument-notation.itely: some more
4245 fixes from Eduardo, thanks!
4247 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4249 * VERSION (PACKAGE_NAME): release 2.9.3
4251 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4253 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4255 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4257 * scm/define-grob-properties.scm (all-user-grob-properties):
4258 Correct typo, thanks to Eduardo.
4260 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4262 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4264 * buildscripts/lilypond-words.py (F): indent fix.
4266 * input/regression/tie-arpeggio-collision.ly: new file.
4268 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4269 function: store outlines per column rank.
4271 * lily/include/tie-configuration.hh (class Tie_configuration): add
4272 column_ranks_ to specification and configuration, to distinguish
4273 between ties for different heads in arpegiated chords.
4275 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4277 * *.py: more 4 space indents.
4279 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4281 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4283 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4285 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4287 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4289 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4291 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4293 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4295 * python/convertrules.py (conv): indent 4 for python files.
4297 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4299 * Documentation/user/changing-defaults.itely (Creating contexts):
4300 Clarify \new semantics.
4302 2006-04-28 Graham Percival <gpermus@gmail.com>
4304 * Documentation/user/ various: major new sections in the
4305 Learning manual, slight reorg elsewhere.
4307 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4309 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4311 * scm/framework-ps.scm (output-framework): remove PageMedia
4313 2006-04-27 Graham Percival <gpermus@gmail.com>
4315 * Documentation/user/ tweaks.itely, working.itely: new
4316 files, being more advanced "learning manual" chapters.
4318 * Documentation/user/ tutorial, putting, lilypond: reorg.
4320 2006-04-26 Graham Percival <gpermus@gmail.com>
4322 * input/regression/lyric-combine-polyphonic.ly: fixed test
4323 (no more "can't find context `one'" error).
4325 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4327 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4329 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4331 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4333 * lily/relocate.cc (read_relocation_dir): new function.
4335 2006-04-26 Graham Percival <gpermus@gmail.com>
4337 * Documentation/user/instrument-notation.itely: a few more fixes
4338 from Eduardo, thanks!
4340 * Documentation/user/README.txt: new file; contains info on
4341 style that used to be in lilypond.tely.
4343 * Documentation/user/ various: first round of doc reorg.
4345 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4346 graphic; this probably causes problems on some pdf
4347 viewers, notably Adobe Acrobat.
4349 2006-04-24 Graham Percival <gpermus@gmail.com>
4351 * Documentation/user/instrument-notation.itely: many alterations
4352 to Vocal music, from Eduardo Viera.
4354 2006-04-23 Graham Percival <gpermus@gmail.com>
4356 * Documentation/user/instrument-notation.itely: fix \new
4357 instead of \context problem.
4359 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4361 * lily/relocate.cc (expand_environment_variables): new function.
4363 (read_relocation_file): id.
4365 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4367 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4369 * ly/engraver-init.ly: remove old comments from TabVoice
4371 2006-04-20 Graham Percival <gpermus@gmail.com>
4373 * Documentation/user/instrument-notation.itely: added Erlend's
4374 latest doc patch, thanks!
4376 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4378 * lily/include/slur.hh:
4380 * lily/phrasing-slur-engraver.cc:
4381 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4382 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4383 Slur_engraver:: and putting it in
4384 Slur::auxiliary_acknowledge_extra_object ().
4386 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4388 * lily/note-collision.cc: fix a comment
4390 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4392 * stepmake/bin/add-html-footer.py: fix footer position in
4393 generated html files: before </body> and </html> tags.
4395 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4397 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4398 Earlier successive `make' commands finally compiled ok.
4400 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4402 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4404 * lily/include/stem-tremolo.hh:
4405 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4409 * lily/include/lookup.hh: add rotated_box ()
4411 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4413 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4414 been generated. Fixes "can't get `--help'" bug after make clean.
4416 * THANKS: alphabetize contributors.
4418 2006-04-17 Graham Percival <gpermus@gmail.com>
4420 * Documentation/user/instrument-notation.itely: added Erlend's
4421 tabs and banjo doc patch. Thanks!
4423 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4425 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4427 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4429 * scm/output-lib.scm: add some more predefined string tunings.
4431 * Documentation/user/instrument-notation.itely: and doc them.
4433 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4435 * ly/engraver.ly: Remove obsolete comments.
4437 * ly/gregorian-init.ly: Define default layout block.
4439 * input/puer-fragment.ly: Updated and extended.
4441 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4443 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4444 pdf conversion behaviour.
4446 * flower/file-name.cc (dir_name)
4447 (get_working_directory): Move from relocate.cc.
4449 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4451 * lily/relocate.cc: Encapsulate sys/stat.h in
4454 2006-04-14 Graham Percival <gpermus@gmail.com>
4456 * Documentation/user/ various: small updates from Cameron
4457 and Juergen, thanks!
4459 * Documentation/user/ various: small updates of my own.
4461 * THANKS: 2.7 -> 2.8.
4463 2006-04-11 Graham Percival <gpermus@gmail.com>
4465 * scm/define-context-properties.scm: typo.
4467 * Documentation/user/ : many more small updates.
4469 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4471 * scm/define-music-types.scm: disposed "docme".
4473 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4475 * lily/hairpin.cc: make niente circles a bit smaller.
4477 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4479 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4480 get-pfa and get-*-fonts targets.
4482 2006-04-10 Graham Percival <gpermus@gmail.com>
4484 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4485 music-glossary, programming-interface: more minor fixes
4488 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4490 * scm/define-context-properties.scm: another old \property update.
4491 This time tested for compiling!
4493 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4495 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4497 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4499 * scm/define-context-properties.scm (all-user-translation-properties):
4500 * Documentation/user/global.itely (Page formatting): Compile fix.
4502 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4504 * Documentation/user/advanced-notation.itely (Polymetric
4505 notation): Update the example to use the "+" symbol and add link
4506 to input/test/compound-time.ly.
4508 2006-04-08 Graham Percival <gpermus@gmail.com>
4510 * scm/define-grob-properties.scm: clarify docs for #'direction.
4512 * scm/define-context-properties.scm: update old \property override.
4514 * Documentation/user/ advanced-notation, global, lilypond-book:
4515 more minor doc updates.
4517 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4519 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4521 * scm/backend-library.scm (search-gs): oops.
4523 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4525 * scripts/lilypond-book.py (output): use base, not filename for href.
4527 * scm/backend-library.scm: only look for gs.
4529 * scripts/lilypond-book.py (output): fix printfilename.
4531 * lily/parser.yy (music_function_musicless_prefix): fold together
4532 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4534 * lily/slur.cc (print): only set font-size if not set yet.
4536 * lily/slur-configuration.cc (add_score): improved layout of debug
4539 2006-04-05 David Feuer <David.Feuer@gmail.com>
4541 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4542 (draw_circle): Hopefully fixed regression.
4543 Improved documentation for several procedures.
4545 2006-03-04 Werner Lemberg <wl@gnu.org>
4547 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4549 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4551 * scripts/musicxml2ly.py (bindir): add dynamic
4554 2006-04-04 Graham Percival <gpermus@gmail.com>
4556 * Documentation/user/ basic-notation, advanced-notation, putting,
4557 instrument-notation, invoking, lilypond, THANKS: another ream of small
4558 fixes from the Doc Helpers.
4560 2006-04-03 David Feuer <David.Feuer@gmail.com>
4562 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4564 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4566 * Cleaned up interfaces between PostScript and Scheme, and moved
4567 computations from PostScript to Scheme:
4569 * music-drawing-routines.ps
4570 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4571 with stroke_and_fill throughout.
4572 (euclidean_length, print_letter, draw_box): Deleted unused
4573 procedures. If someone needs draw_box, implement it using
4574 draw_round_box; don't duplicate code.
4575 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4576 Refactored/cleaned up interfaces.
4579 * output-ps.scm: reordered arguments to PostScript functions to
4580 match new interfaces
4581 (glyph-string): Rewrote glyph-string.
4582 (grob-cause): Replaced string-append with format.
4583 (repeat-slash): Rewrote to do computation here.
4584 (round-filled-box): Rewrote to do computation here.
4586 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4588 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4590 * stepmake/stepmake/toplevel- targets.make: print help info about
4593 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4595 * input/regression/hairpin-circled.ly: new file
4597 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4599 * lily/hairpin.cc (print): add support for circled tip
4601 * scm/define-grob-properties.scm: add circled-tip parameter
4603 * scm/define-grobs.scm: init circled-tip to false
4605 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4607 * scm/music-functions.scm (quote-substitute): set
4610 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4612 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4615 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4617 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4619 2006-03-31 David Feuer <david.feuer@gmail.com>
4621 * scm/framework-ps.scm:
4623 * scm/output-ps.scm: glyph-string now produces smaller, more
4624 readable, and probably faster PostScript. Several findfont
4625 scalefont setfont instances changed to selectfont
4626 Hacked-up string-appends changed to formats.
4628 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4630 2006-03-30 Graham Percival <gpermus@gmail.com>
4632 * scm/lily-library.scm: make "no version" warning message more polite.
4634 * lily/music.cc: add double quotes to failed octave check.
4636 * Documentation/user/ advanced-notation, changing-defaults,
4637 instrument-notation, invoking, music-glossary: whole bunch of minor
4640 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4642 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4643 $(buildscriptdir) iso. depth.
4645 * VERSION (PACKAGE_NAME): release 2.9.1
4647 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4649 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4651 * VERSION (PATCH_LEVEL): bump version number.
4653 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4656 * lily/pango-font.cc (pango_item_string_stencil): use
4659 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4660 $(outdir)/emmentaler-%.svg): remove canary.
4662 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4663 glyphnames if we have a ttf font.
4665 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4667 * Documentation/user/advanced-notation.itely (Font selection):
4668 Corrected reference to the font-family-override.ly example.
4670 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4672 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4673 stem-tremolo object in the stem (or else the stem might not be
4676 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4678 * lily/ttf.cc (print_trailer): only print existing glyphs.
4680 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4682 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4683 position the tremolo based on the position of the notehead.
4685 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4686 notes and update the texidoc line with the new positioning rules.
4688 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4690 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4692 * scripts/lilypond-book.py (Module): set default for linewidth if
4695 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4697 * VERSION (PACKAGE_NAME): release 2.9.0.
4699 * input/regression/stem-tremolo-position.ly: new file.
4701 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4703 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4705 * lily/stem-tremolo.cc (print): position
4706 the tremolo depending only on the end of the stem
4707 and not on the notehead
4708 (raw_stencil): center, on the middle staff line, the
4709 flag that is closest to the end of the stem (previously
4711 (calc_width): add this callback to shorten a tremolo when
4712 it is beamed or it is stemup with a flag
4713 (style): add this callback to make a tremolo rectangular when
4714 it is beamed or it is stemup with a flag
4715 (rotated_box): this is like Lookup::beam but makes a rotated
4716 rectangle instead of a parallelogram
4718 * lily/stem.cc (calc_stem_info): make sure the stem
4719 is long enough to fit the tremolo
4720 (calc-length): reduce the length of tremolo stems since the
4721 tremolo code is now capable of better positioning
4723 * scm/define-grobs.scm: make calc_width the default beam-width
4724 callback for stem-tremolo and add the style callback
4726 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4728 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4731 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4733 * lily/ttf.cc (make_index_to_charcode_map): restore old
4736 2006-03-28 Werner Lemberg <wl@gnu.org>
4738 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4740 2006-03-28 Graham Percival <gpermus@gmail.com>
4742 * THANKS: update for 2.9, add section for Documentation helpers.
4744 * Documentation/topdocs/NEWS.tely: compile fix.
4746 * Documentation/user/ basic-notation, global, advanced-notation,
4747 examples.itely: minor fixes from mailist.
4749 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4751 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4754 * lily/ttf.cc (print_trailer): use it.
4756 * lily/pango-font.cc (get_unicode_name): new function.
4758 * lily/ttf.cc (make_index_to_charcode_map): move function from
4760 (print_trailer): substitute uniXXXX name if applicable.
4762 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4763 (pango_item_string_stencil): use it to generate uniXXXX names.
4765 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4766 note heads, for uniform widths in shape note output.
4767 (overdone_heads): hmm. remove them again.
4769 * scripts/lilypond-book.py (output): add links to filenames.
4771 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4773 * lily/note-collision.cc (get_clash_groups): only consider when
4774 Note_column::dir <> CENTER.
4776 * scripts/lilypond-book.py (get_option_parser): init output_name
4779 2006-03-24 Graham Percival <gpermus@gmail.com>
4781 * Documentation/topdocs/NEWS.tely: add @end itemize
4783 * Documentation/user/ global, advanced-notation: minor
4786 2006-03-23 Graham Percival <gpermus@gmail.com>
4788 * Documentation/user/ lilypond.tely, music-glossary,
4789 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4791 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4793 * mf/GNUmakefile: don't install .enc files.
4795 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4797 * VERSION (PATCH_LEVEL): bump to 2.9.0
4799 2006-03-22 Graham Percival <gpermus@gmail.com>
4801 * Documentation/user/advanced-notation.itely: minor fixes
4804 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4806 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4808 * branch lilypond_2_8
4810 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4812 * scripts/lilypond-book.py (samefile): new function, for windoze
4815 2006-03-21 Graham Percival <gpermus@gmail.com>
4817 * ly/engraver-init.ly: add info about StaffGroup.
4819 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4821 * input/regression/stem-direction-context.ly: idem.
4823 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4827 * input/regression/page-layout-twopass.ly: comment out \markup so
4830 * lily/instrument-name-engraver.cc (finalize): add to instrument
4831 name global System. This also fixes chopped instrument names, but
4832 doesn't crash when there are slurs/beams.
4834 * lily/slur-configuration.cc (add_score): disallow negative slur
4837 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4839 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4841 * lily/instrument-name-engraver.cc (process_music): kludge: add
4842 InstrumentName spanner to axis group of left bound. Fixes chopped
4843 off instrument names in EPS images.
4845 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4847 * scripts/abc2ly.py (option_parser): update to 2.7.40
4849 2006-03-20 Graham Percival <gpermus@gmail.com>
4851 * THANKS: move small doc contributors to SUGGESTIONS.
4853 * Documentation/user/ basic-notation, advanced-notation,
4854 global: small changes from mailist.
4856 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4858 * Documentation/user/advanced-notation.itely (Text marks): update
4859 for new rehearsalMarkAlignSymbol convention.
4861 * VERSION (PATCH_LEVEL): bump version.
4863 * input/test/instrument-name-align.ly: new file.
4865 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4867 * input/test/instrument-name-align.ly: new file. Document how to
4868 align instrument names.
4870 * lily/mark-engraver.cc: remove properties.
4872 * scm/define-context-properties.scm
4873 (all-user-translation-properties): remove align symbol properties
4874 for barnumber/reh. mark.
4876 * lily/break-align-interface.cc (self_align_callback): new
4877 interface, new function. Look at complete alignment. This handles
4878 tunable break alignments in case break-align-symbols are missing.
4880 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4882 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4884 * python/convertrules.py (conv): mark/bar number alignment rule.
4886 * lily/break-align-interface.cc (calc_positioning_done): also
4887 store offset from last visible break-alignment to its
4888 neighbor. This makes alignment on non-visible objects more reliable.
4890 * po/lilypond.pot (Module): ran po-replace.
4892 * input/regression/tie-single-manual.ly (Module): new file.
4894 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4895 look at has_manual_position_.
4896 (from_ties): set has_manual_position_ if tie has staff-position set.
4898 * lily/tuplet-bracket.cc (calc_positions): idem.
4900 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4903 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4905 * scm/define-markup-commands.scm (smallCaps): new markup command
4906 for turning a text to small caps using smaller font size and upper
4909 2006-03-17 Graham Percival <gpermus@gmail.com>
4911 * Documentation/user/ examples, instrument-notation,
4912 advnaced-notation: minor fixes from mailist.
4914 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4916 * Documentation/user/tutorial.itely (First steps): change example
4919 2006-03-17 Graham Percival <gpermus@gmail.com>
4921 * Documentation/user/ examples, advanced: minor changes from mailist.
4923 * THANKS: add Geoff Horton, for documentation stuff.
4925 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4927 * python/lilylib.py (system): revert have_select kludge.
4929 * Documentation/user/tutorial.itely (Commenting input files):
4930 update version numbers in doc.
4932 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4933 bound-padding to multi-measure-interface
4935 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4937 * input/test/engraver-example.ily: update version number.
4939 * VERSION (PACKAGE_NAME): release 2.7.39
4941 * lily/note-spacing.cc (get_spacing): heighten threshold where
4942 accidentals/arpeggios influence previous spacing fully.
4944 * lily/rest.cc (y_offset_callback): only use direction if
4945 staff-position wasn't set before.
4947 * lily/bar-number-engraver.cc: add support for
4948 barNumberAlignSymbol.
4949 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4951 * lily/pointer-group-interface.cc (set_ordered): new function.
4952 (add_unordered_grob): new function.
4954 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4955 to ordered, unless the opposite has been proved. This fixes
4956 random reordering of large object groups across linebreaks,
4959 * lily/main.cc (do_chroot_jail): printf format fix.
4961 * lily/tie-formatting-problem.cc (generate_configuration):
4962 multiply y-shift for dot with direction.
4964 * scm/define-markup-commands.scm (note-by-number): put (magstep
4965 size) in y-attach too.
4967 * Documentation/topdocs/NEWS.tely (Top): show override.
4969 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4970 direction for stems.
4972 2006-03-15 Graham Percival <gpermus@gmail.com>
4974 * Documentation/user/ changing-defaults, global: minor
4977 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4979 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4981 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4982 breakable items after uniformly stretched notes.
4984 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4985 outline with outer edge of note heads. This prevents infinity
4986 problems with tied whole notes.
4988 * scripts/lilypond-book.py (do_file): use os.popen
4990 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4992 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4994 * Documentation/user/invoking.itely: Add ragged-right to bug report
4997 2006-03-14 Graham Percival <gpermus@gmail.com>
4999 * Documentation/user/global.itely: small fix from mailist.
5001 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5003 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5004 file descriptor returned by tempfile.mkstemp() when writing
5005 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5008 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5010 * po/fi.po: newline bugfix.
5012 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5014 * scm/paper.scm (paper-alist): Rounding fixes.
5016 2006-03-13 Graham Percival <gpermus@gmail.com>
5018 * Documentation/user/ changing-defaults, instrument-notation,
5019 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5021 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5025 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5027 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5030 * python/lilylib.py (print_environment): move ps_page_count to
5033 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5035 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5037 * scm/framework-ps.scm (embed-document): new function. Use to
5040 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5042 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5044 * Documentation/user/instrument-notation.itely (Setting simple
5045 songs): Added \book{...} around the full example, so the separate
5046 markups are included in the printed example.
5048 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5050 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5053 * python/lilylib.py (system): rewrite system() using
5054 subprocess. Remove >& redirection trickery.
5056 2006-03-11 Graham Percival <gpermus@gmail.com>
5058 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5059 notation-appendices.itely: minor fixes from mailist.
5061 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5063 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5064 unsplit man also needs images.
5066 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5068 * VERSION (PACKAGE_NAME): 2.7.38 released.
5070 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5072 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5075 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5077 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5078 respects the Score.skipTypesetting property.
5080 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5082 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5083 Prolog. No %%EOF after CFF file.
5085 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5087 * lily/constrained-breaking.cc (get_max_systems): used to return a
5089 (combine_demerits): use pointers to reduce copying data
5090 (calc_subproblem): idem
5091 (get_page_penalty): add page turn penalties
5093 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5095 * Documentation/user/invoking.itely (Invoking lilypond): better
5096 explanation of -e usage.
5098 * lily/main.cc (main_with_guile): don't append to
5099 init_scheme_code_string
5101 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5103 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5105 * scripts/convert-ly.py (do_options): don't print help for
5108 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5109 @code and @example. Update from texinfo.tex from CVS.
5111 2006-03-08 Graham Percival <gpermus@gmail.com>
5113 * Documentation/user/scheme-tutorial.itely: clarifies distances
5114 measured in staff-spaces.
5116 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5118 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5119 consider[k] is true.
5121 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5123 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5124 consider columns that have originals. Unifies spacing for mm
5125 rests around line breaks.
5127 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5128 (set_text_rods): idem.
5129 (calculate_spacing_rods): new function: share code between
5130 set_text_rods and set_spacing_rods.
5131 (set_text_rods): take extents of bounds into account.
5133 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5135 * Documentation/user/basic-notation.itely (Writing music in
5136 parallel): don't use relative.
5138 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5140 * ly/music-functions-init.ly (Module): add shiftDurations
5142 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5144 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5146 * ly/engraver-init.ly: init vocalName to nil.
5148 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5150 * scm/music-functions.scm (music->make-music): bugfix,
5151 KeyChangeEvents are now handled correctly.
5153 * scripts/lilypond-book.py: Add --debug option.
5155 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5157 * python/lilylib.py: add tempfile.
5159 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5161 * VERSION (PACKAGE_NAME): release 2.7.37
5163 * python/lilylib.py (ps_page_count): remove make_ps_images().
5164 (ps_page_count): remove mkdir_p
5165 (system): remove cleanup_temp.
5166 (exit): remove lilypond_version_(check)
5167 (error_log): remove pseudo_filter_p
5172 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5175 * lily/accidental-engraver.cc (make_standard_accidental): only add
5176 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5178 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5179 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5180 Make incompatibilities.
5182 * scm/output-ps.scm (grob-cause): replace backslashes by /
5183 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5185 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5187 * cygwin/GNUmakefile: Install fixes.
5189 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5191 * lily/note-head.cc (head::get_balltype): Compile fix.
5193 * flower/file-name.cc (dos_to_posix): Flower string fix.
5195 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5197 * python/lilylib.py: pychecker cleanups.
5199 * scripts/lilypond-book.py
5200 (Lilypond_snippet.output_print_filename): pychecker cleanups
5202 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5204 * python/lilylib.py (underscore): remove identify() , warranty()
5206 * ps/music-drawing-routines.ps: change Border routine for GSView
5209 * lily/stem.cc (height): use quantize-positions. This triggers
5210 set_stem_lengths, so scripts on beamed stems are handled correctly.
5212 * lily/side-position-interface.cc (aligned_side): check if edges
5213 of script are inside staff. Fixes accent of edge of the staff.
5215 * input/regression/staccato-pos.ly: more examples.
5217 * stepmake/aclocal.m4 (depth): fix bashism.
5219 * lily/lyric-combine-music-iterator.cc: move from
5220 new-lyric-combine-iterator.cc
5221 (process): add pending_grace_lyric_ member to delay lyrics on
5224 * lily/system-start-text.cc (print): suicide if we don't have any
5225 elements. Fixes hara kiri'd instrument names.
5227 * scripts/mup2ly.py (Module): remove.
5229 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5231 * Documentation/user/global.itely (A single music expression):
5232 close @lilypond properly
5234 * lily/volta-bracket.cc (modify_edge_height): change from
5235 after_line_breaking_callback. Suicide last bracket if appropriate.
5237 * python/lilylib.py: strip getopt support
5239 * scripts/etf2ly.py (do_options): use optparse
5241 * scripts/midi2ly.py: optparse, strip lilylib copy.
5243 * scripts/abc2ly.py (voices): use optparse.
5245 * stepmake/stepmake/generic-vars.make: new function absdir.
5247 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5249 * scripts/lilypond-book.py (find_file): use global_options for
5252 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5255 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5257 * python/lilylib.py (get_global_option): ughness for extracting
5258 global options from lilylib.
5259 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5261 * scripts/lilypond-book.py (get_option_parser): use optparse for
5262 option handling. Put options in global_options variable.
5264 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5266 * Documentation/index.html.in: clarify.
5268 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5270 * scm/layout-page-layout.scm (write-page-breaks): add a
5271 music-system-heights property to the page layout output.
5273 * scm/page.scm (make-page-stencil): take footer into account when
5274 computing the 'space-left page property
5275 (annotate-space-left): take footer into account when annonating
5278 2006-02-28 Graham Percival <gpermus@gmail.com>
5280 * Documentation/user/ advanced-notation, global: more (final)
5281 docs for music expressions, removed special fermatas.
5283 2006-02-27 Graham Percival <gpermus@gmail.com>
5285 * Documentation/user/ basic-notation, global: minor changes
5288 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5290 * scm/framework-ps.scm:
5291 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5292 layer for inf? and nan? from framework-ps to lily-library.
5294 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5296 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5297 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5299 * buildscripts/substitute-encoding.py (Module): remove file.
5301 * mf/GNUmakefile: more PFA strippage.
5303 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5305 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5308 * scm/framework-ps.scm: remove font name munging.
5310 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5312 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5314 * scm/markup.scm (define-markup-command): change
5315 def-markup-command to define-markup-command
5317 * scm/music-functions.scm (define-music-function): change
5318 def-music-function to define-music-function.
5320 * python/convertrules.py (conv): rules for def-music-function
5321 and def-markup-commands
5323 * Documentation/user/programming-interface.itely,
5324 input/no-notation/display-lily-tests.ly,
5325 input/regression/lily-in-scheme.ly,
5326 input/regression/markup-user.ly,
5327 input/regression/music-function.ly, input/regression/tie-chord.ly,
5328 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5329 ly/gregorian-init.ly: use new macro names (define-music-function,
5330 define-markup-command).
5332 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5334 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5335 (output): add comments to lp-book latex output.
5337 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5340 2006-02-23 Graham Percival <gpermus@gmail.com>
5342 * Documentation/user/ tutorial, global: minor changes.
5344 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5346 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5347 blocks (for make 3.80)
5349 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5350 \notemode so that user should not have to explicitely type it.
5352 * scm/define-music-display-methods.scm: various
5353 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5356 * input/no-notation/display-lily-tests.ly: new tests for
5357 \applyOutput and \applyContext
5359 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5361 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5362 changed it slightly so that the number of systems returned by
5363 solve () will be the same as the last value passed to resize
5364 (). I've also added more documentation, removed casts, fixed style
5365 problems and put in some recovery if constraints aren't satisfied."
5367 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5369 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5370 for emacs < 22 compatibility.
5371 (count-rexp): Use it.
5372 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5373 substring juggling (Milan Zamazal).
5375 2006-02-23 Graham Percival <gpermus@gmail.com>
5377 * Documentation/user/ basic-notation, advanced-notation,
5378 global.itely, invoking.itely, tutorial,itely:
5379 minor fixes from mailist.
5381 * scm/define-markup-commands.scm: improve docs of \filled-box.
5383 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5385 * Documentation/index.html.in: changes concern the previous release.
5387 * input/regression/+.ly: cultivate typographical terminology.
5389 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5391 * scm/define-grob-interfaces.scm (parentheses-interface): add
5392 padding to parentheses-interface.
5394 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5395 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5397 * VERSION (PATCH_LEVEL): release 2.7.36
5399 * lily/slur.cc: add avoid-slur (ugh.)
5401 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5402 intersection gets smaller. This fixes slurs over extreme points.
5404 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5405 stems with neutral-direction set.
5407 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5409 * lily/open-type-font.cc (load_table): format error.
5411 * lily/change-iterator.cc (process): format fix.
5413 * flower/include/international.hh (_f): idem.
5415 * flower/include/std-string.hh: add format printf attribute.
5417 * scm/define-grobs.scm (all-grob-descriptions): height of all
5418 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5420 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5423 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5425 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5427 * input/regression/: upgraded syntax for some files.
5429 * THANKS: Add bughunters.
5431 2006-02-22 Graham Percival <gpermus@gmail.com>
5433 * Documentation/user/ invoking.itely, advanced-notation.itely,
5434 global.itely: long-awaited "let's make chapter 10 not suck"
5435 update. Rearrange chapter 10; now called "global issues",
5436 addresses file structure, etc. Some info from other files
5437 moved into global.itely.
5439 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5441 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5442 catch trill-span-event notes.
5444 * Documentation/user/examples.itely (Ancient notation templates): typo.
5447 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5449 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5451 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5453 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5455 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5456 froum Laissez_vibrer_engraver.
5458 * ly/declarations-init.ly (repeatTie): add \repeatTie
5460 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5462 * scm/define-grob-properties.scm (all-user-grob-properties): add
5463 head-direction property.
5465 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5466 from_lv_ties. Take head direction argument.
5468 * lily/semi-tie-column.cc: rename from
5469 laissez-vibrer-tie-column.cc. Rename class too.
5471 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5474 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5476 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5478 (find_breaks): idem.
5480 2006-02-21 Graham Percival <gpermus@gmail.com>
5482 * Documentation/user/advanced-notation.itely: fixed make-moment]
5485 * Documentation/user/basic-notation.itely: more clarification to
5488 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5490 * lily/include/constrained-breaking.hh (class
5491 Constrained_breaking): new file.
5493 * lily/constrained-breaking.cc (resize): new file.
5495 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5497 * Documentation/user/advanced-notation.itely (Clusters): insert
5500 * lily/tie-column.cc (calc_positioning_done): support for
5503 * lily/tie-formatting-problem.cc
5504 (generate_extremal_tie_variations): factor out.
5505 (score_ties_configuration): annotate all tie
5506 (print_ties_configuration): new routine.
5507 (generate_configuration): nudge extremal ties outside of the head
5509 (score_ties_configuration): oops. convert to staff-space before
5510 determining position symmetry.
5512 2006-02-20 Graham Percival <gpermus@gmail.com>
5514 * Documentation/user/*-notation.itely: misc minor editing,
5515 shifting doc sections around.
5517 * Documentation/user/*-notation-itely, global.itely,
5518 changing-defaults.itely: added new stuff from NEWS.
5520 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5524 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5526 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5527 lilypond --verbose for lp-book.
5529 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5530 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5532 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5533 $(buildscript-dir) iso. absolute depth.
5535 * buildscripts/genicon.py (dir): thinko.
5537 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5539 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5541 * scm/output-lib.scm: swap darkcyan/darkyellow
5543 * THANKS: Add bughunters.
5545 2006-02-19 Graham Percival <gpermus@gmail.com>
5547 * Documentation/user/programming-interfaces.itely: fixed example.
5549 * Documentation/user/instrument-notation.itely: fix @{ @}.
5551 * scm/script.scm: add avoid-slur for \open.
5553 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5555 * lily/tie-formatting-problem.cc (score_configuration): use
5556 sliding score for min-length.
5558 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5559 spaghetti for icons.
5561 * buildscripts/genicon.py (program_name): new file.
5563 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5565 (generate_configuration): for small ties, also look for collisions
5566 at Y + DIR*h + DELTA_Y.
5567 (get_variations): consider variation for dot positions too.
5569 * lily/side-position-interface.cc (aligned_side): take abs for
5570 quantized rounded position. Fixes tenuto below staff.
5572 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5573 markers when necessary.
5575 * lily/program-option.cc (internal_set_option): add
5576 strict_infinity_checking option.
5578 * scm/output-lib.scm (cyan): swap yellow and cyan.
5580 2006-02-19 Graham Percival <gpermus@gmail.com>
5582 * darwin.patch: trivial linenumber update.
5584 * Documentation/user/ {various}: `\context foo = named' changed
5585 to `\new foo = "name"' in docs.
5587 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5589 * scm/stencil.scm (annotate-y-interval): use it.
5591 * scm/lily-library.scm (interval-sane?): new function.
5593 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5596 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5599 * flower/include/std-vector.hh (iterof): add iterof macro.
5601 * lily/enclosing-bracket.cc (width): new function.
5603 * lily/align-interface.cc (align_elements_to_extents): reinstate
5606 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5608 * Documentation/index.html.in: fix spelling: thankyous.
5610 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5612 * lily/lyric-hyphen.cc: typo.
5614 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5616 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5617 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5620 * VERSION: release 2.7.35
5622 * lily/beam.cc (get_default_dir): oops. Take abs () for
5624 (get_default_dir): use extreme position criterion only in absence
5625 of forced stem directions.
5627 * VERSION (PATCH_LEVEL): bump VERSION.
5629 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5630 dependencies. Necessary for -jX builds.
5632 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5634 * lily/relocate.cc (setup_paths): Yet another const fix.
5636 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5640 * lily/relocate.cc (setup_paths): oops.
5642 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5644 * Documentation/index.html.in: order links: html before PDF.
5646 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5648 * lily/tie-column-format.cc (Module): remove.
5650 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5652 * lily/text-spanner.cc (print): idem.
5654 * lily/dynamic-text-spanner.cc (print): only print line if longer
5657 * lily/auto-change-iterator.cc (change_to): formatting.
5659 * lily/beam.cc (get_default_dir): take extreme note head as input
5662 * lily/tie.cc (get_default_dir): only look directions for visible
5665 * lily/side-position-interface.cc (aligned_side): oops. Don't
5666 mutiply with direction. This fixes quantized (staccato, tenuto)
5667 scripts below notes.
5669 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5670 direction. Fixes c-lyrics-center-align.ly
5672 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5674 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5677 * lily/std-string.cc:
5678 * lily/include/std-vector.hh (split_string): Move and rename from
5679 lily/include/misc.hh, lily/misc.cc. Update callers.
5681 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5683 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5685 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5687 * flower/test-file.cc: New file.
5689 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5692 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5694 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5696 * flower/include/file-storage.hh: remove file.
5698 * lily/include/midi-item.hh (class Midi_track): idem.
5700 * lily/include/source.hh (class Sources): idem.
5702 * lily/include/performance.hh (class Performance): use vector
5705 * flower/include/cons.hh (class Cons): remove file.
5707 * flower/include/flower-proto.hh: remove template cruft.
5709 * lily/include/font-metric.hh: use size_t not vsize for indices.
5711 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5714 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5716 * lily/include/paper-book.hh (class Paper_book):
5717 make get_system_specs() public.
5719 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5720 the force=10000 case if we don't have a current-best.
5722 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5725 * flower/include/flower-proto.hh: remove outdated templates.
5727 * scm/page.scm: use annotate-spacing
5729 2006-02-15 Graham Percival <gpermus@gmail.com>
5731 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5733 * THANKS: moved Erlend Aasland to contributors.
5735 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5737 * config.hh.in: remove HAVE_PANGO_16
5739 * lily/tuplet-bracket.cc (calc_positions): multiply with
5740 staff-space for beam case. This fixes tuplets+beams on scaled
5743 * config.hh.in: remove all Kpathsea related defines.
5745 * lily/dot-column.cc (side_position): reach stem via dots->
5746 head->stem. Inspect all stems for dot collisions.
5748 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5751 * lily/bar-number-engraver.cc (process_music): document function
5754 * lily/score.cc (default_rendering): add pscore, not systems
5757 * lily/paper-book.cc (get_system_specs): separate generation of
5760 * flower/include/std-vector.hh: don't include config.hh
5762 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5764 * flower/include/std-vector.hh: Better wrapper compatibility with
5767 * flower/include/flower-proto.hh: Remove cheap forward declaration
5770 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5772 2006-02-14 Graham Percival <gpermus@gmail.com>
5774 * Documentation/user/invoking.itely: add warning about command line.
5776 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5778 * lily/include/lily-proto.hh: add Prob, rm Page.
5780 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5782 * VERSION: release 2.7.34
5784 * lily/relocate.cc (framework_relocation): show canary if
5785 GHOSTSCRIPT_VERSION undefined.
5787 * GNUmakefile.in: remove $(VERSION) symlink.
5789 * lily/relocate.cc (setup_paths): add +
5791 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5793 * Documentation/index.html.in: specify sizes for all big HTML pages.
5795 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5797 * config.hh.in: remove @FRAMEWORKDIR@
5799 * lily/system-start-text.cc (get_stencil): new file: separate out
5800 system-start-delimiter text support.
5802 * input/**ly: replace \context with \new where appropriate.
5806 * lily/slur-scoring.cc (get_base_attachments): use
5807 robust_relative_extent. This fixes problems with empty paper-columns.
5809 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5811 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5813 * scm/define-music-properties.scm (all-music-properties):
5814 create-new property.
5816 * lily/context-specced-music-iterator.cc (construct_children):
5817 inspect 'create-new property iso. magical $uniqueContextId context
5820 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5822 * lily/context-key-manager.cc (Module): new file. Encapsulate
5823 object key generation.
5825 * lily/include/context-key-manager.hh (Module): new file.
5827 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5829 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5832 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5834 (reloc_b): excise --enable-framework-dir
5836 * lily/relocate.cc (framework_relocation): use getenv
5837 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5839 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5841 * flower/include/std-string.hh:
5842 * flower/include/std-vector.hh: Finish std:: conversion; move
5843 flower extensions from std:: namespace. Update users.
5845 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5846 their expansion to vector<*>. Update users.
5848 2006-02-10 Graham Percival <gpermus@gmail.com>
5850 * Documentation/user/invoking.itely: add example to File structure.
5852 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5853 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5855 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5857 * ly/paper-defaults.ly: typo.
5859 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5860 set_parent() for parentheses. This will make it show up in bbox
5863 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5864 ly:grob-common* functions.
5866 * lily/grob-scheme.cc (LY_DEFINE):
5867 ly:grob-common-refpoint-of-array: new function
5868 ly:grob-common-refpoint: new function
5869 ly:grob-relative-coordinate: new function
5871 * lily/instrument-name-engraver.cc (process_music): use
5872 Text_interface::is_markup(). This fixes \markup on instrument names.
5874 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5877 * lily/slur.cc (print): idem.
5879 * lily/tie.cc: add line-thickness for ties.
5881 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5883 * scm/output-svg.scm: Document diversion from GNU coding standards
5884 as a workaround for a bug in Microsoft Internet Explorer.
5886 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5888 * lily/instrument-name-engraver.cc (process_music): use
5889 is_markup() iso. is_string()
5891 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5893 * lily/percent-repeat-engraver.cc (process_music): only look at
5894 main_part_ for % repeats.
5896 * lily/stem-tremolo.cc (get_beam_translation): new function.
5897 (calc_slope): new function.
5898 (height): don't use real slope.
5900 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5902 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5903 new connect-to-neighbor, control-points and staff-padding
5904 properties to make ligature brackets showing up again.
5906 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5908 * VERSION: release 2.7.33
5910 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5913 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5914 remove applyOutput example.
5915 (Objects connected to the input): document \tweak, \parenthesize
5917 * lily/relocate.cc (prefix_relocation): allow "current"
5918 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5919 changing VERSION in a lily tree less painful.
5921 * input/regression/parenthesize.ly: new file.
5923 * scm/output-lib.scm (parenthesize-element): new function.
5925 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5927 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5929 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5930 cause: accidentals are caused by note heads, not note events.
5932 2006-02-08 Graham Percival <gpermus@gmail.com>
5934 * darwin.patch: small patch from Erlend, thanks!
5936 * Documentation/user/basic-notation.itely: add stem-neutral example.
5938 * Documentation/user/putting.itely: clarifications.
5940 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5942 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5943 note, add more guidelines to what should go into NEWS.
5945 * input/sakura-sakura.ly: document how to override font.
5947 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5949 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5951 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5953 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5955 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5956 convertrules. Add explicit grouping, needed for python2.2.
5958 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5960 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5962 2006-02-07 Graham Percival <gpermus@gmail.com>
5964 * Documentation/user/global.itely: fix line-width in (text) docs.
5966 * Documentation/user/lilypond-book.itely: same.
5968 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5970 * VERSION (PACKAGE_NAME): release 2.7.32
5972 * Documentation/topdocs/NEWS.tely (Top): document new variable
5975 * flower/include/array.icc (Message): remove file.
5977 * flower/include/std-vector.hh: make sure vsize and VPOS are
5978 defined for binary_search_bounds().
5980 * flower/std-string.cc (std): add to_string(long unsigned).
5982 * configure.in (gui_b): excise std_string option.
5983 (gui_b): excise std_vector option.
5985 * flower/string.cc (Module): excise flower array & string
5987 * flower/include/std-string.hh: excise flower string.
5989 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5991 * python/convertrules.py (lilypond_version_re_str): require
5992 only numbers and dots in \version string.
5994 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5996 * lily/system-start-delimiter.cc (print): allow style = text too.
5998 * lily/system-start-delimiter-engraver.cc
5999 (acknowledge_system_start_text): new function, also add add to
6000 support of system-start-text (instrument names). This fixes
6001 instrument names on piano staves.
6003 * lily/instrument-name-engraver.cc: rewrite. Use
6004 system-start-delimiter approach. This save memory and cpu.
6006 * scm/define-grobs.scm (all-grob-descriptions): remove
6007 instrument-name from break-alignment.
6009 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6011 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6013 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6016 * configure.in (std_vector): On by default.
6018 * lily/include/font-metric.hh:
6019 * lily/include/tfm-reader.hh:
6020 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6023 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6025 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6027 * VERSION (PACKAGE_NAME): 2.7.31
6029 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6030 EPS edge at 0, but take minimum with left-overshoot. This fixes
6031 cut off system start delims.
6033 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6034 hack: add to axis group if not added yet. This fixes hara kiri'd
6037 * lily/hara-kiri-group-spanner.cc
6038 (force_hara_kiri_in_y_parent_callback): fix signatures.
6040 * lily/hairpin.cc (print): check next hairpin to see whether or
6041 not to be continuing.
6043 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6045 * Remove trailing whitespace from makefiles.
6047 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6050 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6052 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6054 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6056 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6058 * configure.in: Use it.
6060 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6062 * scm/music-functions.scm (pitch-of-note): new function.
6064 * ly/music-functions-init.ly: add \octave and \addquote
6066 * lily/parser.yy (music_function_chord_body): softcode \octave.
6067 (lilypond_header): softcode \addquote
6069 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6071 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6072 array.hh, parray.hh at all. Getting ready to flip the
6075 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6077 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6080 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6082 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6084 * flower/include/array.hh: typo.
6086 2006-02-02 Graham Percival <gpermus@gmail.com>
6088 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6090 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6092 * flower/include/pqueue.hh: Derive from std::vector.
6094 * flower/include/parray.hh: Conform to std::vector interface.
6097 2006-02-02 Graham Percival <gpermus@gmail.com>
6099 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6101 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6103 * flower/file-path.cc (is_file): remove if 0 section.
6105 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6106 selecting afii61352.
6108 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6110 * flower/include/std-vector.hh (boundary): Oops, reverse.
6112 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6113 remove superfluous `d'.
6115 * flower/include/std-vector.hh (boundary, top): Detach from class.
6116 Remove empty vector shell.
6118 * flower/include/array.hh (reverse, swap): Detach from class.
6121 * flower/include/std-vector.hh
6122 * flower/include/array.hh (concat): Globally change to insert ().
6124 * flower/include/std-vector.hh
6125 * flower/include/parray.hh
6126 * flower/include/array.hh (elem, elem_ref): Globally replace by
6129 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6131 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6133 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6134 anticipate on identifier substitutions.
6136 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6138 * flower/include/std-vector.hh (insert): Remove, replace by
6139 std::vector interface. Update callers.
6141 * flower/include/array.icc (insert): Change signature to
6142 match std::vector interface.
6144 * flower/include/array.icc (vector_sort): Bugfix.
6146 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6148 * lily/parser.yy (output_def_head_with_mode_switch): new
6149 production. Result: dashes and underscores may be used in the
6152 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6154 * python/convertrules.py (conv): oops. One slash too much.
6156 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6158 * flower/include/std-vector.hh (sort): Remove, replace by
6159 ::vector_sort. Update callers.
6161 * flower/include/std-vector.hh (slice): Remove. Update callers.
6164 * flower/test-std.cc (vector_sort): New test.
6166 2006-02-01 Graham Percival <gpermus@gmail.com>
6168 * Documentation/user/putting.itely: fixes from Erik.
6170 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6172 * flower/test-std.cc: Add simple unit test for vector migration.
6174 * stepmake/stepmake/test*: Unit test support.
6176 * flower/include/std-vector.hh (del): Remove. Use erase (),
6179 * flower/include/array.hh (begin, end): Add.
6182 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6184 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6185 std::string not String.
6187 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6190 * lily/prob.cc (Prob): copy type_ too.
6192 * lily/lily-guile.cc (mangle_cxx_identifier): new
6193 function. Class_bla::foo_bar_[px] ->
6194 ly:class-bla::foo-bar[?!]. Changes throughout
6196 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6198 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6200 * lily/beam.cc (calc_direction): take dir from visible stem in
6203 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6205 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6206 Fix -1, >=0 boundary checks for unsigned vsize.
6208 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6209 loop for unsigned vsize.
6211 * configure.in (--enable-std-vector): New option.
6212 (--enable-std-string): On by default.
6214 * flower/include/std-vector.hh: New file. Enable switch to
6215 std::vector, update client code.
6217 2006-01-30 Graham Percival <gpermus@gmail.com>
6219 * scm/document-translation.scm: clarify "this context is also
6220 known as". Thanks, Werner!
6222 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6224 * Documentation/user/invoking.itely: small fix from Don.
6226 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6228 * scm/lily.scm (define-scheme-options): rename option
6229 preview-include-book-title to book-title-preview
6230 (define-scheme-options): move force-eps-font-include (from paper
6231 block) to eps-font-include -d option.
6233 * VERSION (PATCH_LEVEL): release 2.7.30
6235 * input/bach-schenker.ly (staffPiano): new file.
6237 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6239 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6242 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6244 * ps/lilyponddefs.ps: remove start-system, stop-system,
6245 start-page fluff. This saves putting { } code on the stack, fixing
6246 stack overflows when including EPS files.
6248 2006-01-29 Graham Percival <gpermus@gmail.com>
6250 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6252 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6254 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6256 2006-01-28 Graham Percival <gpermus@gmail.com>
6258 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6260 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6262 * input/mutopia/claop.py: Update.
6264 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6266 * input/regression/completion-heads.ly (texidoc): fix.
6268 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6270 * lily/tie-formatting-problem.cc
6271 (set_ties_config_standard_directions): use abs iso fabs for ints.
6273 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6275 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6276 little less than noteheight, to prevent overlaps in chords.
6278 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6279 head, and fudge stem-attachment.
6281 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6283 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6285 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6287 * lily/main.cc (main): Debugging aid: catch exceptions.
6289 * flower/std-string.cc (to_string): Robustification. Fixes midi
6290 output with std::string.
6292 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6294 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6296 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6298 * Fix -DSTRING_UTILS_INLINED.
6300 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6302 * VERSION (PATCH_LEVEL): release 2.7.29
6304 * lily/relocate.cc (setup_paths): mingw uses std string too.
6306 * lily/*.cc: various fixes for substr(ARG).
6308 * lily/sustain-pedal.cc (print):
6310 * flower/file-name.cc (slashify): use std strings.
6312 * flower/string-convert.cc: remove publib.h
6314 * scm/define-markup-commands.scm (verbatim-file): new markup
6315 command \verbatim-file
6317 * Documentation/topdocs/NEWS.tely: fixup URLs
6319 * input/regression/alignment-vertical-manual-setting.ly (Module):
6322 * lily/align-interface.cc (align_elements_to_extents): overwrite
6323 translations with numbers in alignment-offsets from left bound
6325 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6326 (page-translate-systems): new function: take into account Y-offset.
6328 * Documentation/topdocs/NEWS.tely (Top): document new features.
6330 * input/regression/page-layout-manual-position.ly (Module): new
6333 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6335 * flower/file-path.cc (path::parse_path): Oops.
6337 * Finish std::string interface. For now, use std:: marker
6338 throughout for easy s/r.
6340 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6342 * Documentation/user/putting.itely (Score is a single musical
6344 (Score is a single musical expression): more typos.
6346 * scm/page.scm (annotate-space-left): thinko.
6347 (annotate-page): more thinkos.
6349 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6351 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6352 for different \score blocks separately.
6353 (post-process-pages): put write-page-layout into paper block.
6355 * lily/output-def.cc (get_parser): new file.
6357 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6360 * lily/include/output-def.hh (class Output_def): add parser_ member.
6362 * input/regression/page-layout-twopass.ly (Module): new file.
6364 * scm/lily.scm: remove cpp hack.
6366 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6368 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6370 * GNUmakefile.in (c-clean): New target.
6372 * flower/include/std-string.hh: String/std::string compatibility:
6373 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6376 * flower/rational.cc:
6377 * flower/include/rational.hh:
6380 * flower/include/offset.hh:
6382 * flower/interval.cc:
6383 * flower/include/interval.hh:
6385 * flower/string-convert.cc:
6386 * flower/include/string-convert.hh: Use std::string [interface].
6389 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6391 * Documentation/index.html.in: clean up.
6393 2006-01-25 Graham Percival <gpermus@gmail.com>
6395 * Documentation/user/putting.itely: another new untested doc section.
6397 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6399 * scm/layout-page-layout.scm (write-page-breaks): write
6400 \spacingTweaks #ALIST. Handle grace timing.
6402 * scm/: more imports.
6404 * scm/page.scm (make-page): add footer/header.
6405 (annotate-space-left): revise: only take page argument.
6406 (layout->page-init): new function.
6408 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6409 version of the system/spacing/linebreak hack writing to the output
6411 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6414 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6417 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6419 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6421 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6423 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6424 handling to page.scm
6426 * lily/prob-scheme.cc (LY_DEFINE): new file.
6427 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6429 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6432 * lily/music.cc (derived_mark): derive Music from Prob.
6434 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6436 * lily/prob.cc (Module): Implement Prob (Property Object), object
6437 with shared and r/w property alists.
6439 * lily/include/prob.hh (Module): new file. Declare Prob.
6441 * flower/string.cc: remove is_empty().
6443 * flower/include/string.hh (class String): remove String:: qualifier.
6445 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6446 substitute appropriate functions.
6448 * flower/include/string.hh (class String): remove to_str0 and
6449 is_empty(). S&R everywhere.
6451 2006-01-23 Graham Percival <gpermus@gmail.com>
6453 * Documentation/user/basic-notation.itely: add hairpin
6454 after-linebreak tweak to commonprop.
6456 * Documentation/user/putting.itely: added two new sections.
6458 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6460 * flower/international.cc:
6461 * flower/include/international.hh:
6463 * flower/getopt-long.cc:
6464 * flower/include/getopt-long.hh: Use std::string [interface].
6467 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6469 * stepmake/stepmake/executable-rules.make: Add dependency on
6472 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6474 * flower/file-path.cc:
6475 * flower/include/file-path.hh: Use std::string [interface].
6478 * flower/direction.cc:
6479 * flower/axis.cc: Unused. Remove.
6481 * configure.in (--enable-std-string): New option.
6483 * flower/std-string.cc:
6484 * flower/include/std-string.hh: New file.
6486 * flower/file-name.cc[STD_STRING]:
6487 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6489 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6491 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6493 * scm/define-markup-commands.scm (with-dimensions):
6494 with-dimensions markup command.
6496 * input/test/font-table.ly: use it.
6498 * lily/open-type-font.cc (glyph_list): new function.
6500 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6502 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6504 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6506 * ly/music-functions-init.ly (parallelMusic): new music function
6507 for parallel music entry.
6509 * scm/define-music-properties.scm (all-music-properties): new
6510 'void music property
6512 * scm/music-functions.scm (ly:music-message): make public, to be
6513 used in music function definitions
6515 * scm/lily-library.scm (collect-music-for-book): discard music
6516 when the 'void property is set.
6518 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6520 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6522 * mf/GNUmakefile: idem.
6524 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6526 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6528 * Documentation/user/notation-appendices.itely (The Feta font):
6531 * input/test/font-table.ly: new file. Generate font table within lily.
6533 * Documentation/user/notation-appendices.itely (The Feta font):
6534 use new font-table.ly file.
6536 * stepmake/stepmake/install-out-targets.make
6537 (local-install-outfiles): only create directory if
6538 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6540 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6542 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6544 * VERSION (PACKAGE_NAME): release 2.7.28
6546 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6547 the right font from a Mac dfont.
6548 (write-preamble): don't forget directory, only look at files.
6550 This fixes problems with TTF files in dfonts that don't match
6551 their PostScript names.
6553 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6554 PS name from TTF font.
6556 * input/regression/tie-manual.ly: document new feature.
6558 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6560 * VERSION (MY_PATCH_LEVEL): bump to .28
6562 * Documentation/user/basic-notation.itely (Ties): add tie examples
6565 * lily/tie-formatting-problem.cc (score_ties_configuration):
6566 symmetry penalties for outer ties.
6568 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6570 * lily/tie-formatting-problem.cc (generate_configuration)
6571 (set_manual_tie_configuration): skip non-pair manual
6572 tie-configuration, so you can set individual ties as
6574 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6576 * input/regression/tie-chord.ly: use generateTiePattern to
6579 * lily/tie-formatting-problem.cc (peak_around): new function.
6580 (score_configuration): use sliding criterion for staff line collisions.
6581 (score_configuration): idem for dot collisions.
6582 (generate_configuration): use separate stem_gap for gap to stem.
6584 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6585 separate penalty factors for x and y distance.
6586 (struct Tie_details): separate penalties for tip and center line collisions.
6588 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6590 * lily/tie-formatting-problem.cc (generate_configuration): make
6591 large ties avoid stafflines in the horizontal section.
6592 (score_configuration): use softcoded penalties
6593 (score_aptitude): idem.
6595 * lily/tie-helper.cc (from_grob): softcode tie details
6597 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6599 * lily/staff-symbol-referencer.cc (on_line): rename from
6602 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6604 * ly/music-functions-init.ly: remove duplicate tag.
6606 * lily/include/*.hh: GCC 4.1 fixes.
6608 006-01-16 Erlend Aasland <erlenda@gmail.com>
6610 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6612 * scm/define-music-types.scm: fix bug in desc. string
6613 for OverrideProperty
6615 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6617 * scripts/lilypond-book.py: bugfix
6619 * scm/define-music-types.scm: fix typos.
6621 2006-01-14 Graham Percival <gpermus@gmail.com>
6623 * Documentation/user/ basic-notation.itely, global.itely,
6624 advanced-notation.itely, instrument-notation.itely: small
6625 additions (bugs and commonly tweaked properties).
6627 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6629 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6630 detection of mingw build.
6631 (MINGW_BUILD): opps.
6633 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6635 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6638 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6640 * scm/music-functions.scm (skip->rest): add skip->rest
6642 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6644 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6647 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6648 config dirs. Aids debugging.
6649 (display_config): also display config files.
6651 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6653 * VERSION: release 2.7.27
6655 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6656 for determining bar size.
6658 * lily/staff-symbol.cc (print): place lines at distance line-positions
6660 * scm/define-grob-properties.scm (all-user-grob-properties): add
6663 * lily/staff-symbol.cc (height): new function.
6665 * input/regression/staff-line-positions.ly: new file.
6667 2006-01-06 Graham Percival <gpermus@gmail.com>
6669 * input/test/add-staccato.ly: remove reference to old file.
6671 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6673 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6674 lilypond binary too.
6676 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6678 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6680 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6682 * scripts/midi2ly.py: Bugfix: Declare datadir.
6684 * make/ly-rules.make:
6685 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6686 that seems to be gone). Fixes make web.
6688 * The grand 2005-2006 replace.
6690 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6692 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6694 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6695 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6696 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6697 like -dgs-font-load.
6699 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6700 remove absolute path to lilypond binary.
6702 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6704 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6706 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6708 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6710 * mf/GNUmakefile: remove broken dvips map symlink.
6712 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6715 * configure.in: Cosmetic fixes.
6717 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6719 * Documentation/user/music-glossary.tely (Pitch names): Added
6720 Spanish pitch names and durations, thanks to Ernesto Gancedo
6722 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6724 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6725 init. Fixes verbose printing of .scm files.
6727 * stepmake/aclocal.m4: add spaces before - options.
6729 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6731 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6732 of path search in local block variable.
6734 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6736 * configure.in (NCSB_DIR): --enable-ncsb-dir
6737 (LINK_GXX_STATICALLY): denko.
6739 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6741 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6742 use locate to find c059033l.pfb.
6744 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6746 * lily/tie-formatting-problem.cc
6747 (problem::generate_base_chord_configuration): Use my_round (was
6750 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6751 do not invoke mbrtowc.
6753 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6755 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6757 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6759 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6761 * Documentation/user/invoking.itely (svg): revise.
6763 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6765 * lily/lexer.ll: use sourcefilename iso. renameinput.
6767 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6769 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6770 <PostScriptName>.ttf instead of c059XXXttf.
6772 * lily/program-option.cc (LY_DEFINE): special support for
6773 --verbose, so it works before option init too.
6775 * mf/GNUmakefile (local-install): oops.
6777 * lily/lyric-hyphen.cc (print): oops.
6779 * buildscripts/pfx2ttf.fontforge: new file.
6781 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6782 ($(outdir)/%.ttf): new rule.
6784 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6787 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6790 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6792 * VERSION: release 2.7.26
6794 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6796 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6798 * lily/font-config.cc (init_fontconfig): verbosity.
6800 * THANKS: add Muziekacademie Lede.
6802 * scripts/musicxml2ly.py (print_voice_definitions): new function
6803 (print_score_setup): new function
6804 (convert): read part definition to output staves properly.
6806 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6809 * python/musicexp.py (Output_printer.__init__): use _ in data
6811 (Output_printer.unformatted_output): new function: no formatting,
6813 (Duration.get_length): remove isinstance() checks for
6814 Output_printer everywhere.
6816 * input/regression/lyrics-bar.ly (texidoc): add
6817 Separating_line_group_engraver.
6819 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6821 * lily/relocate.cc (framework_relocation): New function,
6822 factored from set_relocation ().
6823 (prefix_relocation): Rename from set_relocation ().
6824 (setup_paths): Use it.
6826 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6828 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6829 numbers. Patch by Erlend Aasland.
6831 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6833 * lily/font-config.cc (init_fontconfig): print warning if cache
6834 file is not existant.
6836 * lily/main.cc: don't use #ifdef but #if
6838 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6840 * lily/grob-property.cc (internal_set_property): don't abort on
6841 calculation-in-progress.
6843 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6845 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6846 connect-to-neighbor property not connect-to-other
6848 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6849 (LY_DEFINE): oops. don't forget protection.
6851 * flower/parse-afm.cc (Module): strip AFM handling completely.
6853 * lily/stencil-expression.cc: idem.
6855 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6857 * lily/function-documentation.cc (ly_add_function_documentation):
6858 use static member iso. Protected_scm
6860 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6862 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6864 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6866 * lily/relocate.cc (set_env_dir): New function.
6867 (set_relocation): Use it to fix setting PANGO_PREFIX.
6869 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6871 * input/regression/stem-direction-context.ly: remove rest.
6873 * lily/melody-engraver.cc (process_music): restart for bar lines.
6874 (acknowledge_slur): restart for slurs.
6876 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6878 * Documentation/user/invoking.itely: describe how to view SVG
6879 output using Inkscape which replace embedded fonts with OTF fonts.
6881 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6883 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6885 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6887 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6890 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6892 * VERSION (PACKAGE_NAME): release 2.7.25
6894 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6896 * input/regression/stem-direction-context.ly: new file.
6898 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6900 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6903 * ly/engraver-init.ly: add Melody_engraver
6905 * lily/beam.cc (calc_direction): use default-direction
6906 iso. get_default_direction()
6908 * scm/define-grob-properties.scm (all-user-grob-properties): add
6909 default-direction property.
6911 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6913 * lily/stem.cc (calc_default_direction): remove
6914 Stem::get_default_direction, use default-direction with callback
6917 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6919 * lily/melody-engraver.cc: new file. Acknowledge stems for
6920 interpolated stem directions.
6922 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6924 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6926 * lily/slur-configuration.cc (fit_factor): more robust check for
6927 point in curve X-extent.
6929 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6930 (outside_slur_callback): check for 'outside avoidance.
6932 * lily/slur-configuration.cc (score_extra_encompass): don't use
6933 bound->column() == avoid->column() for checking extents, as this
6934 doesn't work for accidentals.
6936 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6937 DynamicText hardcoding.
6939 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6940 crash if bound stem is NULL
6942 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6945 2005-12-22 Graham Percival <gpermus@gmail.com>
6947 * scm/define-markup-commands.scm: typo. @code{\raise}
6950 * darwin.patch: now used again, includes a
6951 required patch from fink.
6953 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6955 * po/TODO: mention gtranslator along with kbabel.
6956 * po/fi.po: update translations.
6958 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6960 * lily/relocate.cc (setup_paths): Bugfix.
6962 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6964 * lily/slur-configuration.cc (score_extra_encompass): don't use
6965 "avoid" choice for avoid-slur.
6967 * stepmake/bin/install.py (dest): don't create existing dir.
6969 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6971 * stepmake/bin/install.py: Remove file before copying.
6974 * stepmake/aclocal.m4: Do not substitute INSTALL.
6976 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6978 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6979 depend on link-tree.
6981 * lily/relocate.cc (setup_paths): only check path for non-absolute
6982 dir without directory part.
6984 * flower/file-name.cc (is_absolute): new method.
6985 (is_absolute): check root_ too.
6987 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6989 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6990 relocation code. Oops, don't comment out too much.
6992 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6995 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6998 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7000 * .cvsignore: Add install-sh.
7002 * autogen.sh (srcdir): Typo.
7004 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7006 * autogen.sh (srcdir): urg. Touch install-sh.
7008 * stepmake/bin/install-sh (Module): remove.
7010 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7012 * lily/include/relocate.hh: new file.
7014 * lily/relocate.cc: new file. Contain relocation logic.
7016 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7017 (main): read LILYPOND_VERBOSE as the first thing.
7019 * stepmake/aclocal.m4: remove INSTALL variable.
7021 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7022 separate target for making font symlinks.
7023 (documentation-dir): use $(if $(findstring )) for switching off
7026 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7027 something if DOCUMENTATION is no.
7029 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7031 * VERSION: release 2.7.24
7033 * lily/script-column-engraver.cc (stop_translation_timestep):
7034 delay adding to script-column.
7036 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7038 * python/convertrules.py (conv): rule for number-visibility
7040 * lily/slur-configuration.cc (score_extra_encompass): different
7041 distance measure for avoid and inside avoidance.
7042 (score_extra_encompass): use 1/(distance+eps) as penalty.
7044 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7045 encompass objects for generating slur curves.
7047 * lily/slur.cc: use details iso. slur-details property.
7049 * input/regression/slur-tuplet.ly: new file.
7051 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7053 * flower/include/offset.hh (class Offset): new operator /=
7055 * lily/tuplet-number.cc (print): new file, new interface.
7057 * scm/define-grob-properties.scm (all-user-grob-properties):
7058 remove number-visibility property.
7060 * lily/tuplet-bracket.cc (calc_control_points): new function
7061 (calc_connect_to_neighbors): new function.
7062 (print): remove text handling for tuplet numberdef.
7064 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7067 * lily/lily-guile.cc (robust_scm2booldrul): new function
7069 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7071 * lily/tuplet-bracket.cc (calc_position_and_height): use
7072 staff-padding to control whether tuplet brackets are over staves.
7074 * lily/grob.cc (suicide): clear dim_caches_.
7076 * lily/dimension-cache.cc (clear): new function.
7078 * lily/grob.cc (extent): swap order of min-extent and extent
7079 calculations. This fixes hara kiri staves.
7081 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7083 * lily/main.cc: Nitpick: relocation is not based on path, but on
7084 directory (location).
7086 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7088 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7090 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7092 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7094 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7096 * stepmake/stepmake/generic-vars.make (Module): idem.
7098 * stepmake/stepmake/executable-targets.make (default): use it.
7100 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7102 * make/GNUmakefile: don't install make rules.
7104 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7106 (prepend_env_path): more verbosity.
7108 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7110 * GNUmakefile.in: add dir argument for find command.
7112 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7113 fixes weird line numbers for point & click.
7115 * lily/source-file.cc (get_counts): init line/column/char counts.
7117 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7119 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7121 2005-12-16 Graham Percival <gpermus@gmail.com>
7123 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7124 minor fixes from Fredric. Thanks!
7126 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7128 * ly/music-functions-init.ly: add \bar and \clef music function
7130 * lily/lily-lexer.cc: idem.
7132 * lily/parser.yy (FIXME): remove BAR and CLEF.
7134 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7136 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7138 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7139 function arguments too
7141 * lily/main.cc (set_relocation): new function.
7143 * scripts/musicxml2ly.py (convert): add \version
7145 * lily/tie.cc: remove get_default_attachments()
7147 * VERSION (PACKAGE_NAME): release 2.7.23
7149 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7150 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7152 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7154 * lily/tie-formatting-problem.cc (score_ties): new function
7155 (get_variations): new function. Try flipping dirs for collisions.
7156 (generate_optimal_chord_configuration): new function. 1-opt search
7157 for better configuration.
7159 * lily/tie-configuration.cc: new file.
7161 * lily/tie.cc: junk Tie::get_configuration()
7163 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7164 (score_ties_configuration): new function.
7165 (generate_ties_configuration): new function.
7166 (generate_base_chord_configuration): new function.
7167 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7168 (set_manual_tie_configuration): Move body from tie-column-format.cc
7170 * input/regression/tie-dot.ly: new file.
7172 * lily/tie-formatting-problem.cc (score_configuration): score
7175 * lily/tie-helper.cc (get_transformed_bezier): new function
7177 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7179 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7180 -undefined suppress iso. -framework Python
7182 * scm/define-grobs.scm (all-grob-descriptions): set
7183 springs-and-rods (thanks Joe Neeman!)
7185 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7187 * input/no-notation/display-lily-tests.ly (test):
7188 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7189 changed from \tag #'(a b) to \tag #'a \tag #'b
7191 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7193 * Documentation/topdocs/NEWS.tely: strip out-www.
7195 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7197 * config.make.in (AR): add AR and RANLIB
7199 * flower/libc-extension.cc: include cassert
7201 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7204 2005-12-11 Graham Percival <gpermus@gmail.com>
7206 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7208 * stepmake/stepmake/python-modules-vars.make: define
7209 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7211 * THANKS: added Johannes Schindelin.
7213 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7215 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7217 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7218 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7220 * lily/parser.yy: reorganize file layout.
7222 * ly/music-functions-init.ly: add tweak music function.
7224 * lily/grob-info.cc (ultimate_music_cause): new function:
7225 recursively lookup causes.
7227 * lily/parser.yy (chord_body_element): allow music functions for
7228 post-events, allow music functions for chord elements.
7230 * lily/font-config-scheme.cc (display_fontset): add cast.
7232 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7233 #'(a b) -> \tag #'a \tag #'b rule.
7235 * python/musicexp.py (Output_printer.dump_version): new function
7237 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7239 * lily/parser.yy (FIXME): remove \tag
7240 (FIXME): remove tag_music() function.
7242 * lily/lily-lexer.cc: remove \tag
7244 * ly/music-functions-init.ly: define music-function "tag"
7246 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7248 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7250 * VERSION (PATCH_LEVEL): release 2.7.22
7252 * input/regression/lyric-hyphen-retain.ly: renew.
7254 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7257 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7258 iso. minimum-length property for rods.
7260 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7261 LyricSpace item to keep lyrics spaced apart.
7263 * ly/engraver-init.ly: remove Separating_line_group_engraver
7265 * Documentation/user/music-glossary.tely: do setfilename before
7268 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7270 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7271 See xref documentation, for example.
7273 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7275 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7276 pending_skip iso. ly_voice[-1]
7277 (main): add if __main__ for debugging.
7279 * python/musicxml.py (Accidental.__init__): new class.
7281 * scripts/musicxml2ly.py (progress): new function
7282 (musicxml_key_to_lily): don't barf on modeless keys.
7283 (create_skip_music): new function.
7284 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7285 (musicxml_note_to_lily_main_event): new function.
7287 * python/musicexp.py (Music.__init__): add comment field.
7288 (NestedMusic.append): new routine.
7289 (SequentialMusic.print_ly): print comment.
7290 (ArpeggioEvent.ly_expression): new class
7291 (BeamEvent.ly_expression): new class
7292 (NoteEvent.__init__): support for cautionary/forced accs.
7294 * lily/lookup.cc (slur): normal order for array loop.
7296 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7299 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7302 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7304 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7306 * scripts/lilypond-book.py: Introduce option
7307 --preserve-line-breaks, for usage with srcltx
7309 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7311 * scm/output-lib.scm (print-circled-text-callback): draw circle
7312 around text using make-circle-markup.
7314 * Documentation/user/*: strip out-www from file names.
7316 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7318 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7319 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7321 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7323 * Documentation/user/GNUmakefile: idem.
7325 * Documentation/user/macros.itexi: strip out-www
7327 * python/rational.py: python 2.3 compat.
7329 * VERSION (PATCH_LEVEL): release 2.7.21
7331 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7332 option formatting, lilypond style.
7334 * python/musicexp.py: grab from Ikebana: a library for composing
7335 ly music expressions.
7336 (Output_printer): class for advanced .ly printing.
7339 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7340 convert to pythonesque structure.
7342 * python/rational.py: PD rational number class.
7344 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7346 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7348 * lily/part-combine-iterator.cc: Minor bugfix
7350 * THANKS: Update bughunters
7352 2005-12-02 Werner Lemberg <wl@gnu.org>
7354 * mf/README: Document process for proper mf2pt1 conversion.
7356 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7359 * mf/feta-harmonica.mf: Removed. Unused.
7361 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7363 * scripts/lilypond-book.py (do_file): fix thinkos.
7365 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7367 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7368 ($(outdir)/parser.cc):
7369 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7371 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7373 * ly/titling-init.ly (tagline): it should be a space between
7374 "Music engraving by LilyPond" and the version number.
7376 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7378 * VERSION (PACKAGE_NAME): release 2.7.20
7380 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7382 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7384 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7386 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7388 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7390 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7392 * kpath-guile/: remove directory
7394 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7395 file. Encapsulate kpathsea using commandline tools.
7397 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7400 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7402 * Documentation/user/advanced-notation.itely (Setting automatic
7403 beam behavior): Correct a few typos. Thanks to David Bobroff.
7405 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7406 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7408 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7410 * scripts/*.py: gmane address for bugs.
7412 2005-11-28 Pal Benko <benkop@freestart.hu>
7414 * make/ly-rules.make: add -f switch to mv
7416 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7418 * lily/bar-line.cc: interpret it
7420 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7422 * configure.in (--disable-documentation): New switch.
7424 * GNUmakefile.in: Use it.
7426 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7428 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7430 * scripts/lilypond-book.py (do_file): search chunks for
7433 * GNUmakefile.in: add copy step in between so we can lose the
7434 out-www directories.
7436 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7438 * lily/pango-font.cc (pango_item_string_stencil): put
7439 geometry.width into glyph-string too.
7441 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7443 * scm/define-music-display-methods.scm (RevertProperty):
7444 (OverrideProperty): Use grob-property-path property, a list of
7445 symbols, instead of grob-property, which used to be a single
7447 (BassFigureEvent): a figure can be a plain number, not necessarily a
7450 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7452 * VERSION: release 2.7.19
7454 * lily/figured-bass-engraver.cc (process_music): check
7455 figuredBassCenterContinuations first.
7457 * scm/translation-functions.scm (format-bass-figure): make double
7460 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7463 * lily/system-start-delimiter-engraver.cc: move from
7464 Nested_system_start_delimiter_engraver, rename
7465 Nested_system_start_delimiter_engraver ->
7466 System_start_delimiter_engraver.
7468 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7469 bracket type from hierarchy.
7471 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7473 * lily/rest.cc (y_offset_callback): read staff-position.
7475 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7476 mark after-line-breaking-callback as internal.
7478 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7480 2005-11-25 Werner Lemberg <wl@gnu.org>
7482 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7484 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7486 * stepmake/bin/add-html-footer.py (do_file): add google
7488 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7489 staff if first_start_ is true.
7491 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7493 * scripts/midi2ly.py (split_track): add __repr__ members.
7494 (track_first_item): only return Item if not None. This fixes a
7495 problem when dumping a track that starts with an empty channel.
7497 * python/midi.c: doc module.
7499 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7501 * Documentation/user/global.itely (Creating MIDI files): Fix
7502 compilation problem.
7504 2005-11-22 Graham Percival <gpermus@gmail.com>
7506 * Documentation/user/basic-notation.itely: clarify dynamic
7509 * Documentation/user/advanced-notation.itely: add unicode
7510 escape control example, whatever that is. :)
7512 * Documentation/user/global.itely: added "removing dynamics
7515 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7517 * VERSION (PATCH_LEVEL): release 2.7.18
7519 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7520 System_start_delimiter_engraver by
7521 Nested_system_start_delimiter_engraver.
7523 * lily/nested-system-start-delimiter-engraver.cc (struct
7524 Bracket_nesting_node): new class.
7525 (struct Bracket_nesting_group): new class
7526 (struct Bracket_nesting_staff): new class.
7527 (process_music): create hierarchy of grobs. This allows separate
7528 tuning of different SSDs.
7530 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7531 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7533 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7535 * lily/side-position-interface.cc (aligned_side): multiply
7538 * lily/script-engraver.cc (make_script_from_event): allow setting
7541 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7543 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7545 * scm/define-grobs.scm (all-grob-descriptions): new grob
7546 NestedSystemStartDelimiter.
7548 * input/regression/system-start-heavy-bar.ly: new file.
7550 * lily/nested-system-start-delimiter-engraver.cc: new file.
7552 * lily/nested-system-start-delimiter.cc: new file.
7554 * input/regression/system-start-nesting.ly: new file.
7556 * scm/define-grobs.scm (all-grob-descriptions): use X side
7557 positioning for positioning braces for nested contexts.
7559 * lily/system-start-delimiter.cc (print): don't divide extent by
7561 (print): use style iso. glyph.
7562 (staff_bracket): translate glyph inside routine already.
7564 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7566 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7569 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7571 * scm/define-context-properties.scm
7572 (all-user-translation-properties): rename figuredBassFormatter
7573 from newFiguredBassFormatter.
7575 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7577 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7579 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7581 * lily/beam.cc (calc_beaming): new function.
7582 (calc_shorten): new function.
7584 * THANKS: add Edward Neeman.
7586 * input/regression/accidental-clef-change.ly: new file.
7588 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7590 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7592 * lily/clef-engraver.cc (inspect_clef_properties): reset
7593 localKeySignature for clef changes.
7595 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7597 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7598 add dummy definition that works in Linux and add information in
7599 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7601 * Documentation/user/changing-defaults.itely (Modifying context
7602 plug-ins): Add index for \with.
7604 * Documentation/user/music-glossary.tely (dal segno): Updated
7605 example to version >=2.6.
7607 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7609 * Documentation/user/instrument-notation.itely (Printing chord
7610 names): Reorder \chordmode and \repeat in one example.
7612 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7614 * VERSION: release 2.7.17
7616 * Documentation/topdocs/NEWS.tely (Top): add note about
7619 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7620 new function. Search region of 3 positions for best tie.
7621 (score_configuration): new function.
7622 (score_aptitude): new function.
7623 (generate_configuration): new function.
7624 (get_configuration): new function.
7625 (Tie_formatting_problem): new function
7627 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7629 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7631 * THANKS: add Eduardo Vieira & Ralph Little
7633 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7636 * lily/include/tie-formatting-problem.hh (class
7637 Tie_formatting_problem): add Tie_details to
7638 Tie_formatting_problem. Update calling conventions.
7640 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7643 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7645 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7647 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7648 scm/define-context-properties.scm: Maintenance bugfix: make
7649 ligature brackets work again by removing obsolete ligature
7650 primitive callback push/pop.
7652 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7653 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7656 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7658 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7659 used and do not call it a path.
7660 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7662 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7664 * lily/include/tie-formatting-problem.hh (class
7665 Tie_formatting_problem): new file.
7667 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7669 * Documentation/misc/ChangeLog-2.3: new file.
7671 * lily/audio-staff.cc (output): degarianize.
7673 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7675 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7676 Unset PYTHONOPTIMIZE. Fixes install if set.
7678 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7680 * python/convertrules.py (conv): add warning about drums.
7682 * make/stepmake.make: include toplevel-version.make after config.make.
7684 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7685 also allow python2.4
7687 * config.make.in (configure-srcdir): remove GXX GCC vars.
7689 * stepmake/aclocal.m4: don't do non-srcdir build with
7690 symlinks. Use inclusion, so the src directory name can be changed.
7692 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7694 * make/mutopia-vars.make:
7695 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7698 2005-11-13 Werner Lemberg <wl@gnu.org>
7700 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7701 but the affected path. This ensures that the (overlapping) outlines
7702 have the same direction, which is a necessary prerequisite for
7703 FontForge's algorithm to remove overlaps.
7706 * mf/feta-haak.mf: Formatting.
7707 (draw_bracket): Slightly modify outline to avoid an unnecessary
7709 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7710 them from the affected paths.
7712 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7714 * mf/README: remove xpm / accordion notes.
7716 * lily/tie-column-format.cc (set_chord_outline): add dots into
7717 skyline extents. This fixes tie formatting if the left head has dots.
7719 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7720 space inside the staff.
7721 (get_configuration): shift another position if necessary in case
7724 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7726 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7727 buildscript-dir iso. $(depth)/buildscripts.
7729 * tex/GNUmakefile (local-uninstall): remove
7730 music-drawing-routines.ps juggling.
7732 * stepmake/stepmake/install-targets.make (local-install-files):
7733 prepend src-dir to install targets.
7735 * lily/system-start-delimiter-engraver.cc
7736 (acknowledge_system_start_delimiter): use
7737 add_offset_callback(). This fixes translation of nested
7740 * lily/grob-closure.cc (add_offset_callback): only encaps in
7741 simple_closure if it's a procedure.
7743 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7746 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7747 remove-empty where pertinent.
7749 2005-11-12 Graham Percival <gpermus@gmail.com>
7751 * Documentation/user/instrument-notation.itely: added
7752 Cameron Horsburgh's multiple stanzas docs. Thanks!
7754 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7757 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7758 make picture in builddir, not srcdir.
7760 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7762 * VERSION: release 2.7.16
7764 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7767 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7769 * Documentation/user/examples.itely (Piano templates): Minor
7770 modification to the Piano centered lyrics example.
7772 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7774 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7777 * Documentation/user/point-and-click.itely: simplify p&c
7778 instruction: don't configure firefox. Put lilypond-invoke-editor
7779 in front of the browser.
7781 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7782 (run-browser): new function.
7784 * lily/parser.yy (Lily_lexer): recognize Book
7786 * lily/book.cc (clone): new function
7788 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7790 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7792 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7793 Maintenance bugfix: reduce number of font related warnings by
7794 updating naming conventions for glyph-name.
7796 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7798 * scm/define-grobs.scm (all-grob-descriptions): add
7799 rhythmic-grob-interface to TabNoteHead.
7801 * scm/layout-beam.scm (check-quant-callbacks): remove
7804 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7806 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7807 alignment of centered divisiones.
7809 * scm/scripts.scm (articulations): Maintenance bugfix:
7810 follow-into-staff -> quantize-position.
7812 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7813 plica head in porrectus deminutus.
7815 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7817 * make/lilypond.fedora.spec.in (Group): add %clean section.
7819 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7820 less then 1/5th of total length.
7821 (print): use gap too. Fixes tupletUp-single-bracket.ly
7823 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7824 events into EventChord. This fixes textspanners on mm rests. Fixes
7827 * lily/side-position-interface.cc (get_axis): read side-axis
7828 (set_axis): set side-axis.
7830 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7831 properties everywhere.
7833 * lily/spacing-spanner.cc (breakable_column_spacing): add
7834 average-spacing-wishes. Take maximum if not set.
7835 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7837 * scm/define-grobs.scm (all-grob-descriptions): add
7838 average-spacing-wishes.
7840 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7841 offset callbacks. This fixes alignment for Fingering objects.
7843 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7844 space for key - timesig combination.
7846 * input/regression/script-stem-tremolo.ly (Module): new file.
7848 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7851 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7852 Fixes: c-tremolo-script.ly.
7854 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7856 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7858 * scm/define-grobs.scm (all-grob-descriptions): remove
7859 self-X-offset. Fixes alignment of octavate-8.
7861 * scripts/lilypond-book.py (datadir): look in
7862 LILYPONDPREFIX/share/lilypond/current/
7864 * GNUmakefile.in: symlink current to <VERSION>.
7866 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7868 * lily/main.cc: eps listed as a backend.
7870 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7872 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7874 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7876 * lily/include/score.hh (class Score): remove texts_ member.
7878 * lily/beam.cc (set_stem_lengths): force direction callback.
7879 (print): read quantized-positions, so we can force
7880 Beam::set_stem_lengths to occur.
7881 (rest_collision_callback): use common X parent.
7883 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7885 * flower/file-path.cc (find): Bugfix: Return name of file found.
7887 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7888 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7889 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7891 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7893 * flower/offset.cc: idem.
7895 * mf/*.mf: update email address.
7897 * lily/font-config-scheme.cc: new file.
7899 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7901 * lily/*: cs.uu.nl -> xs4all.nl
7903 * VERSION (PATCH_LEVEL): release 2.7.15
7905 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7908 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7910 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7912 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7914 * lily/staff-performer.cc (process_music): add audio
7915 elements. This makes MIDI instrument changes work once again.
7917 * lily/main.cc (LY_DEFINE): add gmane address.
7919 * lily/beam.cc: remove calc_positions()
7921 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7922 original_ in private scope.
7923 (class Grob): drop pscore_ pointer, change to output_def pointer.
7924 (class Grob): cleanup class definition.
7926 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7928 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7930 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7931 absolute. Better diagnostics.
7933 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7934 This makes lilypond run from the build directory using argv0
7935 relocation (without any --prefix or LILYPONDPREFIX setting).
7937 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7939 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7941 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7942 with simple-closure.
7944 * lily/self-aligment-interface.cc (set_align_self): new function
7945 (set_center_parent): new function.
7947 * lily/side-position-interface.cc (set_axis): new function.
7949 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7952 * scm/define-grob-properties.scm (all-user-grob-properties):
7953 remove [XY]-offset-callbacks add [YX]-offset
7955 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7957 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7958 entry for time signatures after breathing signs. Bug report by
7961 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7963 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7964 not absolute, make it absolute using PATH.
7966 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7968 * python/midi.c (initmidi): Fix type for mingw.
7970 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7972 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7974 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7977 * stepmake/aclocal.m4: Support python cross compiling.
7979 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7982 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7984 * scm/output-lib.scm (chain-grob-member-functions): replace
7987 * lily/chained-callback.cc (Module): remove file.
7989 * lily/rest-collision.cc (force_shift_callback_rest): change to
7992 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7994 * lily/grob.cc (y_parent_positioning): remove axis argument from
7995 parent_positioning callbacks.
7996 (Grob): junk init code
7997 (get_offset): use generic property callbacks for
7998 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7999 (axis_parent_positioning): new function
8000 (axis_offset_symbol): new function
8001 (chain_offset_callback): new function
8002 (add_offset_callback): new function
8004 * lily/beam.cc (rest_collision_callback): change signature; this
8005 is now a chained callback.
8007 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8008 callback administration.
8010 * lily/simple-closure.cc: new file. Smob type that allows "grob
8013 (ly:make-simple-closure FUNC A B)
8015 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8018 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8021 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8023 * lily/rest.cc (polyphonic_offset_callback): remove.
8025 * lily/script-engraver.cc (try_music): remove bool* argument.
8027 * scm/script.scm (default-script-alist): set quantize-position
8030 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8032 * lily/side-position-interface.cc (aligned_side): move staff
8033 position quantization from
8034 Side_position_interface::quantised_position().
8035 (quantised_position): remove
8037 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8039 * input/regression/beam-quant-standard.ly: reindent, set
8040 debug-beam-quanting to #t.
8042 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8043 10000 if this is a "hard" concave beam.
8045 * lily/beam.cc (calc_least_squares_positions): change from
8046 calc_least_squares_dy
8047 (set_stem_lengths): this is now a chained callback.
8049 * lily/context-property.cc (execute_general_pushpop_property):
8050 bugfix override with procedure should have effect.
8052 * scm/define-grob-properties.scm (all-internal-grob-properties):
8053 remove position-callbacks.
8055 * scm/define-grobs.scm (all-grob-descriptions): use
8056 ly:make-callback-chain for positions property.
8058 * scm/layout-beam.scm (check-quant-callbacks): return list of
8061 * scm/lily.scm (type-p-name-alist): add callback-chain
8063 * lily/lily-guile.cc (type_check_assignment): type check failure
8064 is warning not message.
8066 * lily/grob-property.cc (try_callback): walk callback chain if
8069 * lily/chained-callback.cc: new file. new smob type.
8071 * lily/lily-guile.cc (procedure_arity): new function.
8073 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8075 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8077 2005-10-25 John Mandereau <john.mandereau@free.fr>
8079 * Documentation/user/instrument-notation.itely (Figured bass):
8080 describe new features
8082 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8084 * lily/beam.cc (calc_least_squares_dy): use property callback.
8086 * lily/beam-concave.cc (calc_concaveness): use property callback.
8088 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8090 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8094 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8096 * scm/layout-page-layout.scm (page-headfoot): annotate
8099 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8101 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8102 doesn't take y-space.
8104 * scm/paper.scm (paper-alist): fix A7 dimensions.
8106 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8108 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8109 src-wildcard, remove $(wildcard).
8111 * po/GNUmakefile (PO_FILES):
8112 * ps/GNUmakefile (PS_FILES):
8113 * tex/GNUmakefile (TEX_FILES):
8114 * cygwin/GNUmakefile (POSTINSTALLS):
8115 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8116 some wildcard calls.
8118 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8120 * THANKS: add Thomas Bushnell.
8122 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8124 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8125 (lilypond-main): Redirect to gui-main if 'gui is set.
8127 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8128 for alternative installations kludging s/share/lib/g
8131 * SConstruct (libdir_package_version): Define.
8133 * python/SConscript:
8134 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8137 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8139 * lily/main.cc: clarify --safe.
8141 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8143 * VERSION: release 2.7.14
8145 * Documentation/user/*.itely: remove minimumVerticalExtent.
8147 * scm/define-grobs.scm (all-grob-descriptions): remove
8148 RemoveEmptyVerticalGroup
8150 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8152 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8155 * python/convertrules.py (conv): add rules.
8157 * lily/grob.cc: remove is_empty()
8159 * lily/grob-property.cc: remove add_to_list_property().
8161 * scripts/convert-ly.py (datadir): add prefix switching hack to
8164 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8165 space-function tweak.
8167 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8169 * scm/define-grob-properties.scm (all-user-grob-properties):
8170 remove callback property.
8172 * lily/include/grob.hh (class Grob): remove property_callbacks_
8173 member. Properties of procedure type are assumed to be callbacks.
8175 * lily/ligature-engraver.cc (override_stencil_callback):
8176 rewrite. Use noteHeadLigaturePrimitive as source.
8178 * scm/define-grob-properties.scm (all-internal-grob-properties):
8179 remove ligature-primitive-callback
8181 * lily/include/dimension-cache.hh (class Dimension_cache): make
8182 class, with Grob as friend.
8184 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8185 has_extent_callback()
8187 * scm/translation-functions.scm (format-new-bass-figure): read
8188 figuredBassPlusDirection
8190 * scm/define-context-properties.scm
8191 (all-user-translation-properties): add figuredBassPlusDirection.
8193 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8195 * lily/align-interface.cc (set_ordered): new function.
8197 * lily/grob.cc (flush_extent_cache): rewrite.
8199 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8200 Interval pointer directly.
8202 * lily/main.cc (setup_paths): insert extra / .
8203 (setup_paths): junk cff entry.
8205 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8208 * lily/axis-group-engraver.cc (finalize): remove
8209 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8211 * lily/grob.cc (Grob): don't set extent from ctor.
8212 (extent): use property callbacks.
8214 * lily/axis-group-interface.cc: remove set_axes() function.
8216 * lily/grob-property.cc (del_property): new function.
8218 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8220 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8222 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8224 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8226 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8228 * mf/SConscript: Updates.
8230 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8232 * stepmake/stepmake/*:
8236 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8237 from any directory in build-dir. Cleanups.
8239 * make/srcdir.make.in: Remove.
8241 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8243 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8246 * lily/SConscript: Remove ttftools.
8248 * SConstruct: Resurrect.
8250 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8252 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8255 * lily/paper-book.cc (add_score_title): put Paper_score title into
8258 * scm/translation-functions.scm (format-new-bass-figure): also
8259 allow plus in combination with _
8261 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8263 * VERSION: 2.7.13 released.
8265 * lily/note-collision.cc (check_meshing_chords): don't wipe
8266 stencil, merely set transparent.
8268 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8269 (Top): document #'callbacks.
8270 (Top): document nested \override.
8272 * input/regression/figured-bass.ly: update for slash and pluses.
8274 * input/regression/figured-bass-continuation-forbid.ly (Module):
8277 * scm/translation-functions.scm (format-new-bass-figure): use
8278 slashed-digit if diminished is set.
8279 (format-new-bass-figure): add + if 'augmented is set.
8281 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8283 * input/test/piano-staff-distance.ly: remove file.
8285 * Documentation/user/advanced-notation.itely (Formatting cue
8286 notes): use length-fraction for making stems/beams smaller.
8288 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8291 * lily/new-figured-bass-engraver.cc: new property
8292 centerFiguredBassContinuations
8294 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8297 * lily/context-property.cc (execute_general_pushpop_property):
8300 * input/regression/override-nest.ly: new file.
8302 * python/convertrules.py (FatalConversionError.subber): conversion
8303 rule for #'callbacks
8305 * input/regression/override-nest.ly: new function.
8307 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8310 * lily/context-property.cc (lookup_nested_property): new function.
8311 (evict_from_alist): new function.
8312 (general_pushpop_property): new function.
8313 (execute_general_pushpop_property): rewrite. Support nested
8316 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8318 * lily/beam.cc: use length-fraction too.
8320 * scm/define-grob-properties.scm (all-user-grob-properties):
8321 remove property flag-width-function
8322 (all-user-grob-properties): remove space-function.
8324 * scm/layout-beam.scm: remove flag-width-function.
8326 * lily/beam.cc: remove flag-width-function
8328 * scm/layout-beam.scm: remove beam dir functions.
8330 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8332 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8333 for easier grace tweaks.
8335 * lily/beam.cc: remove dir-function.
8337 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8339 * lily/grob.cc: remove spacing-procedure.
8341 * lily/note-head.cc (calc_stem_attachment): new function.
8342 (internal_print): use callback to get glyph-name.
8344 * lily/grob-property.cc (get_interfaces): new function.
8346 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8348 * lily/stem.cc (calc_stem_end_position): new function.
8349 (calc_length): new function.
8350 document details for stem.
8351 remove Stem::get_direction()
8353 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8355 * lily/grob-property.cc (set_callback): new function.
8357 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8359 * lily/item-scheme.cc: new file.
8361 * lily/bar-line.cc (before_line_breaking): remove function.
8362 remove bar-size-procedure, break-glyph-function
8364 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8366 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8368 * lily/system-start-delimiter.cc (print): suicide from
8369 here. Remove after_line_breaking_callback.
8371 * lily/script-interface.cc (calc_direction): use callback for direction.
8373 * lily/side-position-interface.cc (aligned_side): don't use
8374 Side_position_interface::get_direction directly. Use callback.
8376 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8378 (get_print_stencil): rename from get_stencil: create stencil with
8379 transparency, color and cause.
8381 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8383 * python/convertrules.py (conv): insert temporary warning rule.
8385 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8387 * lily/grob-property.cc (try_callback): remove marker if applicable.
8389 * lily/grob.cc: elucidate doc about after/before-line-breaking
8391 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8393 * lily/stem.cc (height): idem.
8395 * lily/stem-tremolo.cc: idem.
8397 * lily/slur.cc (height): don't use get_uncached_stencil()
8399 * lily/rest.cc (y_offset_callback): use offset callback
8400 iso. after-line-breaking callback.
8402 * lily/grob.cc: change after/before-line-breaking-callback to
8403 after/before-line-breaking dummy properties.
8405 * lily/include/grob.hh: remove Grob_status.
8407 * scm/define-context-properties.scm
8408 (all-user-translation-properties): remove verticalAlignmentChildCallback
8410 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8411 (calc_direction): use callback
8412 (calc_positions): use callback.
8414 * lily/tie.cc (calc_direction): use callback. Only call parent
8415 positioning for more than one tie.
8417 * lily/tie-column.cc (calc_positioning_done): use callback
8419 * lily/slur-scoring.cc (calc_control_points): use callback
8421 * lily/slur.cc (calc_direction): use callback.
8423 * lily/note-collision.cc (force_shift_callback): remove.
8425 * lily/dot-column.cc (force_shift_callback): remove. Use
8426 other_axis_parent_positioning.
8428 * lily/grob.cc (other_axis_parent_positioning): new function.
8429 (same_axis_parent_positioning): new function
8431 * lily/align-interface.cc (alignment_callback): remove function.
8433 * lily/note-collision.cc (calc_positioning_done): use callback.
8435 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8436 (calc_direction): idem.
8437 remove print function.
8439 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8441 * lily/dot-column.cc (calc_positioning_done): use callback.
8443 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8445 * lily/beam.cc (calc_direction): use pseudo-property for beam
8447 (calc_positions): use callback
8449 * lily/align-interface.cc (calc_positioning_done): use
8450 callback. Fold fixed distance and normal alignment in one function.
8452 * lily/stem.cc (calc_stem_end_position): use callback.
8453 (calc_positioning_done): idem.
8454 (calc_direction): idem.
8455 (calc_stem_end_position): idem
8456 (calc_stem_info): idem.
8458 * lily/grob-property.cc (get_property_data): new function:
8459 (try_callback): new function.
8461 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8464 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8466 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8468 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8472 * lily/include/*.hh (Module): compile fixes.
8474 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8476 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8477 as an argument for char-syntax: use (char-syntax (or nil 0))
8478 instead of (char-syntax nil), thanks to Milan Zamazal.
8480 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8482 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8485 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8488 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8490 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8491 add class_name() method.
8493 * lily/music-scheme.cc: remove ly:music-name.
8495 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8497 * cygwin/postinstall-lilypond.sh: Remove cruft.
8499 * cygwin/postremove-lilypond.sh: Remove.
8501 * cygwin/GNUmakefile (default): Remove postremove rules.
8503 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8505 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8508 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8511 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8512 consider break index for broken spanner.
8514 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8515 characters from string before splitting.
8517 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8519 * scm/framework-ps.scm (output-preview-framework): use
8520 is-book-title to determine whether to chop off the booktitle.
8522 * lily/paper-book.cc (systems): init from book-title-properties
8523 (add_score_title): init score-title-properties.
8525 * ly/paper-defaults.ly: add {score,book}-title-properties.
8527 * scm/document-backend.scm (lookup-interface): error message if
8528 using unknown interface.
8530 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8533 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8535 (make_bracket): new function.
8537 * scm/lily.scm (define-scheme-options): add paper-size option.
8539 * ly/declarations-init.ly (laissezVibrer): get paper size from
8542 * scm/translation-functions.scm: use \fontsize for changing the
8545 * scm/define-grobs.scm (all-grob-descriptions): set
8546 between-length-limit to 1.0
8548 * lily/tie-helper.cc: add between_length_limit_ detail property.
8550 * mf/feta-bolletjes.mf: typos.
8552 * lily/note-head.cc (internal_print): don't shadow idx
8553 parameter. This fixes wrong attachment for do shape heads.
8555 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8557 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8559 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8561 * scm/layout-slur.scm: rename from slur.scm
8563 * scm/layout-page-layout.scm: rename from page-layout.scm
8565 * scm/layout-beam.scm: rename from beam.scm
8567 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8568 bass-figure-interface
8570 * lily/new-figured-bass-engraver.cc (process_music): add
8571 implicitBassFigures property.
8573 * scm/define-markup-commands.scm (pad-x): new markup.
8575 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8576 minimumVerticalExtent on FiguredBass context.
8578 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8579 case the continuation crosses a line break.
8581 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8583 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8584 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8585 absolute file name bug.
8587 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8589 * VERSION (PACKAGE_NAME): release 2.7.12
8591 * input/regression/figured-bass-continuation-center.ly: new file.
8593 * input/regression/beam-outside-beamlets.ly: new file.
8595 * lily/beam.cc (set_beaming): don't clip edges.
8596 (connect_beams): don't clip edges.
8598 * lily/beaming-info.cc (clip_edges): new function.
8600 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8602 * Documentation/user/instrument-notation.itely (Figured bass):
8603 demonstrate extenders, update seealso links.
8605 * scm/titling.scm (marked-up-headfoot): change tagline
8606 handling. tagline = ##f will blank the tagline as well.
8608 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8610 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8612 * lily/new-figured-bass-engraver.cc (struct
8613 New_figured_bass_engraver): add new_music_found_ member.
8615 * lily/lilypond-version.cc (Lilypond_version): deal with
8616 incorrectly formatted version strings.
8618 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8619 New_figured_bass_engraver by default.
8621 * lily/ttf.cc (print_trailer): only define glyph names when
8622 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8624 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8626 * lily/horizontal-bracket.cc (make_bracket): new function.
8628 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8629 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8630 BassFigureLine, BassFigureAlignment
8632 * lily/new-figured-bass-engraver.cc (process_music): new file.
8634 * lily/figured-bass-continuation.cc: new file.
8636 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8639 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8641 * scripts/lilypond-book.py: Bug fix, put the quote around the
8642 actual score for LaTeX documents.
8644 * scm/define-grobs.scm (all-grob-descriptions): Change
8645 collapse-height of the SystemStartBracket grob to 5.0,
8646 so the bracket disappears for single stave score lines (similarly
8647 to SystemStartBraces).
8649 * Documentation/user/advanced-notation.itely (Polymetric
8650 notation): Clarify the use of compressMusic.
8652 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8653 that the grace spacer note in other staves need the same duration
8654 and document the stroke-style property.
8656 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8658 * Documentation/user/global.itely (Vertical spacing): document
8659 alignment-extra-space and fixed-alignment-extra-space.
8661 * Documentation/topdocs/NEWS.tely (Top): add entry.
8663 * input/regression/alignment-vertical-spacing.ly: new file.
8665 * python/convertrules.py (conv): add rule.
8667 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8669 * lily/align-interface.cc (stretch_after_break): new
8670 function. Read fixed-alignment-extra-space property.
8671 (align_elements_to_extents): read alignment-extra-space property.
8673 * lily/lily-guile.cc (robust_scm2dir): new function.
8675 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8676 (annotate-space-left): new function. Annotate space left on page.
8677 (annotate-y-interval): new function.
8678 (paper-system-annotate-last): new function. Annotate bottom-space.
8680 * mf/feta-beugel.mf (y):
8682 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8684 * VERSION (PACKAGE_NAME): release 2.7.11
8686 * scm/lily-library.scm (interval-translate): new function
8687 (interval-center): new function.
8689 * scm/page-layout.scm (paper-system-annotate): new function. Add
8690 arrows for dimensions.
8692 * scm/stencil.scm (dimension-arrows): new function.
8694 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8696 * input/regression/page-spacing.ly: add annotatespacing
8698 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8699 (LY_DEFINE): new function ly:paper-system-set-property!
8701 * Documentation/user/global.itely (Paper size): explain how to add
8704 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8705 correspond to GS's definition.
8707 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8709 (print): only connect to next bracket if the next one is alive.
8710 (print): set padding to 0.0 if the bound is a breakable
8711 column. This makes tupletFullLength brackets reach up to the staff
8712 line if it doesn't connect to the next line.
8714 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8716 * lily/bar-number-engraver.cc: correct docs.
8718 * scm/output-lib.scm (first-bar-number-invisible): rename from
8719 default-bar-number-visibility
8721 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8723 * scm/define-music-properties.scm (all-music-properties): remove
8726 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8728 * po/fi.po: refresh.
8730 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8732 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8734 (disappear): bugfix.
8736 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8738 * lily/include/paper-system.hh (class Paper_system): remove
8739 staff_extents_ member.
8741 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8743 * lily/include/paper-system.hh (class Paper_system): remove
8744 number_ variable. Remove is_title_. Remove break_before_penalty_
8746 * lily/paper-book.cc (systems): use 'number property iso. number_
8749 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8750 remove ly:paper-system-number.
8752 * scm/lily-library.scm (paper-system-title?): new function.
8754 * lily/book.cc (process): bugfix: flip ?: cases.
8756 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8759 * ly/music-functions-init.ly: add outputProperty music function.
8761 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8763 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8765 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8767 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8769 * lily/paper-system.cc (internal_get_property): new function.
8771 * Documentation/user/global.itely (Vertical spacing): refer to
8774 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8777 * input/regression/page-spacing.ly: new file.
8779 * input/regression/page-top-space.ly: new file.
8781 * lily/spacing-spanner.cc: cmath -> math.h
8783 * lily/paper-system.cc (read_left_bound): new function. Read
8784 line-break-system-details from left bound to determine extents.
8786 * Documentation/user/programming-interface.itely (Using LilyPond
8787 syntax inside Scheme): change applyxxx -> applyXxx.
8789 * ly/music-functions-init.ly: add outputProperty music function.
8791 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8793 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8795 * python/convertrules.py (conv): rule
8797 * ly/music-functions-init.ly: applyxxx -> applyXxx
8799 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8802 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8804 * flower/include/real.hh: include <math.h> iso. <cmath>
8806 * flower/include/offset.hh: include real.hh
8808 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8810 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8811 fix example, now that 'interfaces is no longer directly available.
8813 * lily/book.cc (process): don't crash if paper == NULL.
8817 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8819 * scm/define-music-types.scm (music-descriptions): set length and
8820 start-callback for QuoteMusic
8822 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8824 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8825 arguments. Fixes compilation error with gcc 3.3.
8827 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8829 * VERSION: release 2.7.10
8831 * stepmake/stepmake/python-module-rules.make
8832 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8834 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8837 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8839 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8840 -Werror. Otherwise GCC barfs over various optimizations.
8842 * scm/define-grob-properties.scm (all-internal-grob-properties):
8843 add note-head property
8845 * Documentation/user/instrument-notation.itely (Laissez vibrer
8848 * input/regression/laissez-vibrer-ties.ly: new file.
8850 * lily/laissez-vibrer-engraver.cc: new file.
8852 * lily/include/tie-column-format.hh: new file.
8854 * lily/tie-column-format.cc: new file.
8856 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8858 * lily/laissez-vibrer-tie.cc: new file.
8860 * lily/include/laissez-vibrer-tie.hh: new file.
8862 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8864 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8866 * scm/define-grobs.scm (all-grob-descriptions): add
8867 LaissezVibrerTie, LaissezVibrerTieColumn
8869 * lily/tie-column.cc (set_tie_config_directions): new function
8870 (final_shape_adjustment): new function.
8871 (shift_small_ties): new function.
8873 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8875 * lily/include/tie.hh (struct Tie_details): add x_gap_
8876 (struct Tie_configuration): add head_position_
8878 * lily/tie-column.cc (set_chord_outline): new function.
8880 * mf/cmr.enc.in: remove file.
8882 2005-09-11 Graham Percival <gpermus@gmail.com>
8884 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8886 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8888 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8889 reduce aliasing effects.
8891 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8894 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8896 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8898 * flower/include/real.hh: std::fabs too.
8900 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8902 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8904 * lily, flower: Include C++ iso C headers. Import namespace std
8907 * lily/side-position-interface.cc:
8909 * lily/note-head.cc:
8910 * lily/include/includable-lexer.hh:
8911 * flower/include/string-data.icc: Remove using std::*.
8913 * lily, flower: Include C++ iso C headers. Import namespace std
8916 * lily/side-position-interface.cc:
8918 * lily/note-head.cc:
8919 * lily/include/includable-lexer.hh:
8920 * flower/include/string-data.icc: Remove using std::*.
8922 * Documentation/user/instrument-notation.itely (Entering lyrics):
8923 Multiple latin-1->utf-8 conversion fix.
8925 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8927 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8929 * lily/tie.cc (get_configuration): also avoid dots for non-space
8932 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8934 * Documentation/user/instrument-notation.itely: Bugfix.
8936 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8938 * tex/GNUmakefile: don't install texinfo.tex
8940 * tex/ : cleanup: remove unused files.
8942 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8944 * flower/include/real.hh: using std::{isnan,isinf}
8946 * VERSION (PATCH_LEVEL): release 2.7.9
8948 2005-09-05 Graham Percival <gpermus@gmail.com>
8950 * Documentation/user/ instrument-notation.itely,
8951 advanced-notation.itely: minor tweaks.
8953 * input/test/script-chart.ly: add item padding.
8955 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8957 * flower/offset.cc: use math.h iso. <cmath>
8959 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8962 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8963 (widen-left-stencil-edges): new function. Fix alignment problems
8964 with LaTeX includegraphics.
8966 * lily/text-interface.cc (interpret_markup): use abort().
8968 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8970 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8972 * lily/tie.cc (get_configuration): update bezier shape as we
8974 (get_configuration): don't move large ties if we're outside of the
8977 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8979 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8981 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8983 * .cvsignore: Add auto-generated configure files and then some.
8985 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8987 * scm/define-grobs.scm (DynamicLineSpanner): Add
8988 X-extent-callback. Fixes hairpin-slur collision.
8990 2005-08-31 Graham Percival <gpermus@gmail.com>
8992 * Documentation/user/advanced-notation.itely,
8993 basic-notation.itely: minor changes.
8995 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8997 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8998 \linebreak between each .eps file if \betweenLilyPondSystem is
9001 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9002 music): Document the \linebreak
9004 * Documentation/user/lilypond-book.itely,
9005 input/tutorial/lbook-latex-test.tex,
9006 Documentation/user/examples.itely: Remove \usepackage{graphics}
9008 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9010 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9012 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9015 * scripts/lilypond-book.py (PREAMBLE_LY): define
9016 inside-lilypond-book
9017 (modify_preamble): new function. Insert \RequirePackage{graphics}
9018 when no {graphics found in preamble.
9020 2005-08030 Graham Percival <gpermus@gmail.com>
9022 * Documentation/user/basic-notation.itely, global.itely,
9023 tutorial.itely: misc small changes.
9025 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9027 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9030 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9032 * lily/tie-column.cc (new_directions): put Tie down on center
9035 * lily/script-interface.cc (before_line_breaking): use
9036 Grob::programming_error
9038 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9040 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9043 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9045 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9047 2005-08-29 Werner Lemberg <wl@gnu.org>
9049 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9050 the `*.scale.pfa' files to avoid warnings.
9052 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9054 * lily/tempo-performer.cc (process_music): idem.
9056 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9058 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9060 * Documentation/user/advanced-notation.itely (Text markup): not a
9063 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9065 * lily/staff-performer.cc (initialize): add tempo/name to
9068 2005-08-26 Graham Percival <gpermus@gmail.com>
9070 * Documentation/user/advanced.itely: add text-only example.
9072 * Documentation/user/invoking.itely: add index entries for
9075 * Documentation/user/ tutorial.itely, basic-notation.itely:
9076 small fixes suggested by Steve D. Thanks!
9078 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9080 * input/regression/markup-bidi-pango.ly: new file.
9082 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9083 standard. Remove #ifdef. Remove memleak.
9084 (text_stencil): use text_dir to decide how to composite items.
9085 (text_stencil): determine uniform text direction for the entire
9088 * scripts/lilypond-book.py (output_name): remove
9089 latex_filter_cmd. Non-portable to non-Unix systems.
9090 (get_latex_textwidth): use File.write and os.unlink() instead.
9092 * THANKS: add Vicente & Trevor.
9094 * lily/grob.cc (discretionary_processing): look up origin for
9095 programming_error too.
9097 * input/regression/tie-broken.ly: new file.
9099 * lily/tie-column.cc (set_chord_outlines): set outline for line
9102 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9104 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9105 unscaled transform, just translate stencils.
9107 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9110 * scm/define-markup-commands.scm (wordwrap-string): use
9112 (wordwrap-stencils): idem.
9115 (wordwrap-stencils): translate last line to right for
9116 text-direction = LEFT.
9118 * scm/define-grob-properties.scm (all-user-grob-properties): add
9121 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9123 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9124 when copying a Lily_parser object.
9126 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9128 * scm/define-markup-commands.scm (null): add null markup.
9130 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9132 * lily/item.cc: Add documentation of center-invisible
9134 2005-08-24 Graham Percival <gpermus@gmail.com>
9136 * Documentation/user/advanced-notation.itely: add info about
9139 * Documentation/user/programming-interface.itely: fix example
9140 involving raised text.
9142 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9144 * lily/beam.cc (print): fix X start/end points of isolated
9147 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9149 * lily/multi-measure-rest.cc (set_text_rods): new function.
9151 * lily/vertical-align-engraver.cc (process_music): call
9152 Align_interface::set_axis(). This forces #'elements to be ordered,
9153 preventing random vertical reordering of staves.
9155 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9156 add avoid-slur property.
9158 * Documentation/user/basic-notation.itely (Measure repeats): add
9159 countPercentRepeats example.
9161 * Documentation/user/advanced-notation.itely (Other text markup
9162 issues): remove remark about normal-font. We have \normal-text
9164 * input/regression/tie-chord.ly: add note about remaining bugs.
9166 * lily/tie.cc (print): try Tie_column::set_directions () if
9167 control-points not yet defined.
9169 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9171 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9172 extent. This fixes braces falling out of the EPS bbox.
9174 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9177 2005-08-23 Graham Percival <gpermus@gmail.com>
9179 * {various} : change #up->#UP and #down->#DOWN.
9181 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9183 * Documentation/user/advanced-notation.itely: clarify
9184 what objects handles text on a multimeasure rest.
9186 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9188 * VERSION (PATCH_LEVEL): release 2.7.7
9190 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9192 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9194 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9196 * input/regression/*.ly: formatting clean-up. Default layout
9197 before music expression.
9199 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9200 romanze28-2 example.
9202 * scm/ps-to-png.scm: remove dir-re function.
9203 (make-ps-images): generate page names, instead of globbing them.
9204 This brings down LilyPond memory usage for make web by a factor
9207 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9208 don't use glob. With 3000 files, globbing
9209 Documentation/user/out-www/ can take too much time.
9211 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9213 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9215 * input/regression/tie-manual.ly: new file
9217 * input/regression/tie-chord.ly: update.
9219 * flower/include/interval.hh (struct Interval_t):
9221 * lily/tie.cc (distance): new function
9222 (height): new function.
9223 (init): new function
9224 (Tie_details): new struct.
9226 * lily/skyline.cc (skyline_height): new function.
9228 * lily/tie-column.cc (set_chord_outlines): new function.
9229 (new_directions): read tie-configuration
9231 * lily/skyline.cc: fix ASCII art.
9233 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9235 * python/convertrules.py (string_or_scheme): Fix spelling error
9237 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9239 * lily/tie-column.cc (set_directions): set directions only once.
9240 (add_configuration): new function.
9242 * lily/tie.cc (set_control_points): new function
9244 * lily/tie-column.cc (new_directions): new function.
9246 * ly/music-functions-init.ly: set 'pitch property
9247 iso. trill-pitch. This makes \relative work with \pitchedTrill
9249 * lily/tie.cc (get_configuration): new function. Don't generate
9250 control points, rather, generate configuration.
9251 remove head-pair property.
9253 * lily/include/tie.hh (struct Tie_configuration): new struct.
9255 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9257 * Documentation/topdocs/NEWS.tely: clarify.
9259 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9261 * lily/tie.cc: remove minimum-length
9263 * scm/define-grob-properties.scm (all-user-grob-properties):
9264 remove staffline-clearance, y-offset
9266 * input/regression/tie-dots.ly (Module): remove.
9268 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9269 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9271 * input/regression/tie-single.ly: new file.
9273 2005-08-21 Graham Percival <gpermus@gmail.com>
9275 * ly/bagpipe.ly: fix compile problem.
9277 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9279 * lily/midi-item.cc (name): new method.
9281 * lily/staff-performer.cc (acknowledge_audio_element): use
9282 signature of baseclass.
9284 * lily/engraver-group.cc (do_announces): move recursion call out
9287 * lily/drum-note-performer.cc (class Drum_note_performer): use
9288 process_music everywhere.
9290 * ly/performer-init.ly: add default children everywhere.
9292 * lily/paper-book.cc (output): call paper-book-write-midis
9293 directly: always write MIDI, even if no \layout {} block.
9295 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9297 * VERSION (PACKAGE_NAME): release 2.7.6
9299 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9300 about not being able to handle repeat.
9302 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9304 * Documentation/user/examples.itely (Piano templates):
9305 * lily/include/performer-group.hh: Remove last traces of
9306 Performer_group_performer. Fixes make web.
9308 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9310 * Documentation/user/examples.itely (Piano templates): change
9311 Engraver_group_engraver -> Engraver_group
9313 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9314 scm_stand_in_procs is not weak_any.
9316 * lily/volta-bracket.cc (print): don't use strcmp().
9318 * lily/volta-engraver.cc (process_music): use
9319 Text_interface::is_markup() for setting the 'text property of the
9322 * input/mutopia/claop.py (accents): update syntax to 2.6
9324 * scm/define-context-properties.scm
9325 (all-user-translation-properties): add countPercentRepeats.
9327 * Documentation/user/basic-notation.itely (Measure repeats): add
9328 isolated percent example.
9330 2005-08-18 Graham Percival <gpermus@gmail.com>
9332 * input/ {various}: change direction #1, #-1 to
9333 #up/#down or \fooUp, \fooDown.
9335 * Documentation/user/music-glossary.tely: #-1 to #down.
9337 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9338 to #up, #-1 to #down.
9340 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9342 * lily/include/engraver-group.hh: rename.
9344 * lily/include/performer-group.hh: rename.
9346 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9348 * input/test/script-abbreviations.ly: Removed some old LaTeX
9351 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9353 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9354 Remove functions. Remove if 1: constructs, reindent.
9356 * scripts/convert-ly.py (add_version): Add functions from
9359 * scm/script.scm (default-script-alist):
9360 s/priority/script-priority. Fixes script stacking. Backportme.
9361 (Fermata): Very low priority.
9363 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9365 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9367 * input/regression/slur-script.ly: remove padding tweaks. Add
9370 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9371 time sigs and related stuff.
9373 * scm/define-grob-properties.scm (all-user-grob-properties): add