1 2006-11-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4 trim note-head.cc includes.
6 * lily/easy-notation.cc:
7 * lily/mensural-ligature-engraver.cc:
8 * lily/note-collision.cc:
10 * scm/define-grobs.scm:
12 use Rhythmic_head::duration_log() iso. Note_head::get_balltype().
14 * buildscripts/git-update-changelog.py:
15 also barf if file doesn't exist.
17 2006-11-07 Erlend Aasland <erlenda@gmail.com>
19 * scm/music-function.scm (add-ballon-text): add FIXME comment.
21 * scm/define-grob-properties.scm: remove old balloon stuff,
22 and do some trivial beautification.
24 2006-11-06 Nicolas Sceaux <nicolas.sceaux@free.fr>
26 * scm/music-functions.scm (markup-expression->make-markup): fix
27 the case when a markup found in a markup list is a simple
30 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
32 * lily/instrument-name-engraver.cc:
33 * input/regression/instrument-name-dynamic.ly:
34 ignore dynamic and pedal line spanners.
36 * Documentation/topdocs/NEWS.tely:
37 * Documentation/user/advanced-notation.itely:
39 * input/regression/balloon.ly:
41 * ly/music-functions-init.ly:
42 * scm/define-event-classes.scm:
43 * scm/define-grobs.scm:
44 * scm/define-music-properties.scm:
45 * scm/define-music-types.scm:
47 * lily/balloon-engraver.cc:
48 rewrite balloon-text support. This is now a separate grob, with itsvictim as the parent. This involves addingBalloon_engraver, AnnotateOutputEvent, annotate-output-event,\balloonText, \balloonGrobText, and modifying Balloon_interface::print.
50 * lily/paper-score.cc:
53 * lily/chord-name-engraver.cc:
56 * lily/paper-score.cc:
57 some useless statistics.
59 * buildscripts/git-update-changelog.py:
60 update todo/done after rejection due to removal analysis.
62 * buildscripts/git-update-changelog.py:
63 check whether removals from a diff actually apply.
65 2006-11-05 Joe Neeman <joeneeman@gmail.com>
67 * lily/include/page-turn-page-breaking.hh: remove unused
70 * lily/page-turn-page-breaking.cc (calc_demerits):
71 * lily/optimal-page-breaking.cc (try_page_spacing): remove
74 2006-11-05 Werner Lemberg <wl@gnu.org>
76 * Documentation/user/changing-defaults.itely,
77 Documentation/user/preface.itely: Use `--', not `---'.
80 * Documentation/user/introduction.itely: Minor improvements.
81 (Automated engraving): Make example using \applyOutput work
84 * input/regression/apply-output.ly: Improve.
86 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
88 * lily/dynamic-engraver.cc:
91 * input/regression/note-head-harmonic.ly:
93 * input/regression/note-head-harmonic-whole.ly:
94 Center harmonic heads if stem is invisible. Fixes #140
97 end context snippet with '\n'
100 catch all GUILE exceptions
105 * lily/include/lily-lexer.hh:
106 * lily/lily-lexer.cc:
107 * lily/lily-parser.cc:
108 Lily_parser* arg for copy ctor too.
111 abc2ly new tempo syntax
113 2006-11-04 Heikki Junes <hjunes@gmail.com>
115 * po/fi.po: update Finnish translation.
117 2006-11-03 Graham Percival <gpermus@gmail.com>
119 * Documentation/user/ {various}: rename page->spacing,
120 global->non-music, invoking->running, example->templates.
122 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
124 * scm/display-lily.scm: add a parser argument to display methods,
125 instead of using a *parser* special variable.
127 * scm/define-music-display-methods.scm: add a parser argument to
128 display methods. Update the methods for \melisma, \melismaEnd,
129 \breathe, \tempo, \partial.
131 * input/no-notation/display-lily-tests.ly: update the test
132 utilities according to the changes in display-lily.scm
134 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
136 * *: The Joy of Merging.
138 * buildscripts/git-update-changelog.py:
139 sort commits, and use .git-commits-done file.
143 dist emacs patches too.
145 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
147 * scm/autochange.scm:
150 * lily/context-def.cc:
151 * lily/include/parse-scm.hh:
152 * lily/include/smobs.hh:
155 * lily/program-option.cc:
157 implement and use ASSERT_LIVE_IS_ALLOWED()
159 * ly/music-functions-init.ly:
160 * scm/autochange.scm:
161 set-part-combine fix for autochange.
163 * lily/include/lily-lexer.hh:
164 * lily/include/lily-parser.hh:
165 * lily/lily-lexer.cc:
166 * lily/lily-parser-scheme.cc:
167 * lily/lily-parser.cc:
168 clear lexer scopes after parsing file. Plugs pseudo memory leak
170 * ly/declarations-init.ly:
171 * ly/music-functions-init.ly:
172 * scm/part-combiner.scm:
173 Remove set-part-combine-listener. This plugs a memory leak.
179 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
184 * lily/part-combine-iterator.cc:
185 don't allocate part combine events statically. Plugs small leak.
187 * lily/lily-parser-scheme.cc:
188 plug memleak in case of failed files.
190 * lily/include/source.hh:
195 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
197 * lily/include/program-option.hh:
198 * lily/program-option.cc:
199 get_program_option() function
201 * ly/titling-init.ly:
202 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
204 * lily/include/translator.hh:
205 * lily/include/translator.icc:
206 * lily/translator.cc:
209 * lily/figured-bass-engraver.cc:
210 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
212 * stepmake/stepmake/compile-vars.make:
213 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
215 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
221 trim warning messages.
226 * input/regression/utf-8.ly:
227 document utf-8 meaning of phrases.
229 * scm/define-markup-commands.scm:
230 make \caps markup default to smallCaps
232 * lily/pango-font.cc:
234 use glyph indexing for glyph name .notdef
236 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
238 * input/regression/utf-8.ly: Fix doc to match order of language
241 2006-11-01 Joe Neeman <joeneeman@gmail.com>
243 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
244 page and line forces.
246 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
248 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
250 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
252 * Documentation/user/GNUmakefile:
253 don't use ImageMagick, use GS directly.
256 otf depends on otf-g?table. Fixes race condition in -j2 build.
257 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
263 remove .deb/.rpm downloading.
265 * buildscripts/git-update-changelog.py:
266 bugfixes for git-update-changelog.py
268 * Documentation/user/GNUmakefile:
271 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
273 * input/regression/tie-semi-single.ly:
274 use position/direction from single tie case too. This fixes
275 overrides and defaults for single laissez-vibrer and repeat ties.
277 * buildscripts/git-update-changelog.py:
278 only prepend header if one patch was successful.
280 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
282 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
283 stuff. Remove cygwin packaging stuff.
285 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
287 * python/convertrules.py (conv): Part 2 fixes vertical extent.
289 * input/test/vertical-extent.ly: Fix and elaborate on vertical
290 staff extent. (Thanks Mats)
292 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
294 * buildscripts/git-update-changelog.py (main): write .msg and cvs
297 * scm/define-grobs.scm:
298 separation-items have width
304 * Documentation/topdocs/NEWS.tely:
305 * lily/separating-group-spanner.cc:
306 * lily/slur-engraver.cc:
307 * lily/slur-scoring.cc:
308 * scm/define-grobs.scm:
309 * input/regression/slur-clef.ly:
310 add breakableSeparationItem to extra encompass for slurs. This
311 fixes slur/clef slur/key collisions etc. Should fix #49
313 * lily/include/slur-scoring.hh:
314 * lily/slur-scoring.cc:
315 Use X of separation item as slur start. Fixes #120
317 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
319 * buildscripts/git-update-changelog.py (changelog_body): don't
322 * lily/grob.cc: add avoid-slur
324 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
328 move server/emacsclient to elisp/
330 * buildscripts/git-update-changelog.py (Commit.note_del_file):
333 * elisp/server.el.patch:
336 * elisp/emacsclient.patch:
339 * buildscripts/git-update-changelog.py:
346 * buildscripts/git-update-changelog.py:
347 script to update ChangeLog with Git messages.
349 * lily/beam-engraver.cc:
350 * input/regression/rest-pitched-beam.ly:
351 don't set callback if staff-position set. Fixes #126.
353 * lily/bar-number-engraver.cc:
355 * lily/fingering-engraver.cc:
356 * lily/grob-property.cc:
358 * lily/include/grob.hh:
359 * lily/include/lily-guile-macros.hh:
360 * lily/mark-engraver.cc:
361 * lily/melody-engraver.cc:
362 * lily/script-column.cc:
363 * lily/tie-formatting-problem.cc:
365 internal_get_property_data() using ly_symbol2scm()
367 * stepmake/stepmake/generic-targets.make:
368 create .gitignore in outdir.
373 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
375 * input/test/vertical-extent.ly:
376 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
378 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
380 * stepmake/bin/add-html-footer.py (compose): remove setgcos
382 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
384 * GNUmakefile.in (install-help2man): install-help2man target.
386 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
388 * SConstruct (configure): Do not check for /bin/sh.
390 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
392 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
395 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
397 * input/regression/fret-boards.ly: new file.
399 * po/de.po: new po courtesy translation team.
401 * scripts/lilypond-book.py (get_option_parser): add newline to doc
404 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
406 * ly/gregorian-init.ly (neumeDemoLayout): update
407 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
409 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
410 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
412 2006-10-27 Erlend Aasland <erlenda@gmail.com>
414 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
415 Yet another build fix.
417 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
419 * SConstruct (lilypondprefix): use sorted() for list_sort()
422 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
424 * flower/SConscript: Unit test rules.
426 * flower/test-std.cc: Compile fix.
428 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
430 * python/midi.c (pymidi_parse_track): warning fixes.
432 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
433 include dot-column.hh
435 2006-10-26 Graham Percival <gpermus@gmail.com>
437 * Documentation/user/{basic-, global}: minor changes from mailist.
439 2006-10-26 Erlend Aasland <erlenda@gmail.com>
441 * scm/define-grobs.scm: trivial beautification
443 * lily/tie-performer.cc: no need to #include "pqueue.hh"
445 * lily/source-file.cc: put multibyte var inside #if clause
447 * scm/define-grob-interfaces.scm:
448 * scm/define-grob-properties.scm:
449 Build fix (string-fret-finger-combinations)
451 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
454 * Documentation/user/lilypond-book.itely: Build fix.
456 2006-10-26 Joe Neeman <joeneeman@gmail.com>
458 * lily/system.cc (get_paper_system):
459 * lily/paper-book.cc (systems):
460 move most of the backwards compatibility stuff into
463 * Documentation/topdocs/NEWS.tely: add 2 entries for the
466 * Documentation/user/page.itely: remove time-scaled-music
467 bug for the Page_turn_engraver
469 * lily/paper-book.cc (set_system_penalty): backwards
470 compatibility (breakbefore) for the old page breaker
472 2006-10-25 Graham Percival <gpermus@gmail.com>
474 * Diocumentation/user/instrument-notation.itely: added more
475 info about stanzas; thanks Geoff!
477 * Documentation/user/ {basic, advanced}: small fixes from
480 * THANKS: add some bug reporters.
482 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
484 * scm/define-context-properties.scm (all-user-translation-properties):
485 noteToFretFunction: Add.
487 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
488 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
490 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
492 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
495 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
496 Remove bashism in delete.
498 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
500 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
502 * scm/translation-functions.scm (determine-frets-mf): flatten let*
504 * scm/define-context-properties.scm
505 (all-user-translation-properties): add maximumFretStretch property.
507 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
509 * lily/source-file.cc (get_counts): use multibyte variable.
511 * scm/translation-functions.scm (determine-frets-mf): new
512 function: compute fret numbers.
514 * scm/output-lib.scm (string-frets->description) new function.
515 (fret-board::calc-stencil): new function
517 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
519 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
521 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
523 * lily/tab-note-heads-engraver.cc: cleanups.
525 * lily/fretboard-engraver.cc: new file
527 * ly/engraver-init.ly: add FretBoards context
529 2006-10-24 Joe Neeman <joeneeman@gmail.com>
531 * lily/grob.cc (pure_relative_y_coordinate)
532 (pure_height): use the new call_pure_function stuff
534 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
537 * lily/side-position-interface.cc (pure_y_aligned_side): add an
540 * lily/simple-closure.cc (ly_eval_simple_closure): make
541 simple-closure evaluatable from scheme
542 (evaluate_with_simple_closure): make simple-closures pure-
545 * lily/slur.cc (pure_outside_slur_callback): new function
547 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
548 fits in with previous changes that made the page forces much
551 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
552 and pure-Y-extent into this new function.
553 (pure-conversions-alist): add outside-slur-callback
555 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
557 * Documentation/user/advanced-notation.itely (Instrument names):
558 Remove obsolete bug workaround for instrument names on piano
561 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
563 * Documentation/user/lilypond-book.itely (Integrating DocBook and
564 music): patch by Bertalan Fodor for docbook.
566 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
567 of $(LILYPOND). Prevents lilypond run for .txt files.
569 * INSTALL.txt: gitness.
571 * .cvsignore: update to force gitness.
573 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
575 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
576 detect suicide in nested tuplets.
578 2006-10-23 Werner Lemberg <wl@gnu.org>
580 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
581 typo in argument to FT_Get_X11_Font_Format.
583 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
585 * stepmake/stepmake/po-vars.make: more gitness.
587 * flower/polynomial.cc (check_sol): no empty if bodies.
589 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
591 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
593 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
595 * Documentation/user/examples.itely (Transcription of mensural
596 music): Added more comments in .ly source. Suggest to remove
597 Forbid_line_break_engraver to allow line breaking at all bars.
599 * Documentation/user/instrument-notation.itely (Ancient
600 articulations): Updated @refbugs regarding episem.
602 * Documentation/user/instrument-notation.itely (Gregorian square
603 neumes ligatures): Added \augmentum dots. Updated @refbugs
604 regarding \augmentum.
606 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
608 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
611 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
614 * ly/gregorian-init.ly: Added \augmentum macro.
616 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
618 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
620 * lily/pango-font.cc (pango_item_string_stencil): use
621 FT_Get_X11_Font_Format()
623 2006-10-22 John Mandereau <john.mandereau@free.fr>
625 * po/fr.po: update translation.
627 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
629 * VERSION (PATCH_LEVEL): bump version
631 * input/regression/horizontal-bracket-break.ly: new file.
633 * scm/define-grobs.scm (all-grob-descriptions): calc
636 * lily/horizontal-bracket.cc (make_bracket): support
637 connect-to-neighbor. Fix #118
639 * VERSION: release 2.9.26-2
641 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
643 * VERSION (PACKAGE_NAME): release 2.9.26
645 * buildscripts/output-distance.py (test_basic_compare): add
647 (FileLink.multi_img_cell): new function, glob multi-page png
650 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
652 * po/lilypond.pot: update.
654 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
656 * Documentation/user/global.itely (File structure): remove
659 * lily/parser.yy (FIXME): remove ADDQUOTE
661 * Documentation/user/global.itely (Extracting fragments of
662 notation): new node, about clip systems.
664 * Documentation/user/lilypond-book.itely (Many quotes of a large
665 score): ref to clip systems.
667 * Documentation/user/instrument-notation.itely (Entering lyrics):
668 add note about lyric ties and required font.
670 * lily/open-type-font.cc (glyph_list): format errors.
672 * Documentation/user/programming-interface.itely (Scheme
673 procedures as properties): more doco on simple-closure and scheme
675 (Input variables and Scheme): use lilypond[verbatim], document
678 * Documentation/user/page.itely (Displaying spacing): use \book
679 explicitly, so arrows show .
680 (Line breaking): add note about Forbid_line_break_engraver
682 * Documentation/user/tweaks.itely (Common tweaks): also set length
683 to prevent tie squeezing.
684 (Default files): use @var{}
686 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
687 (Generating LilyPond files): add FOMUS.
689 2006-10-20 Joe Neeman <joeneeman@gmail.com>
691 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
692 Y-offset for TextScript and Script
694 * lily/text-engraver.cc (make_item):
695 * lily/script-engraver.cc (make_script_from_event):
696 remove call to Side_position_interface::set_axis since all scripts
697 now have this set by default
700 * lily/prob.cc: use variables
702 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
704 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
705 at typography, rather analyse stream event duration.
707 * Documentation/user/page.itely (Page formatting): set a6 paper
708 for system separator example.
710 * lily/arpeggio.cc (Module): idem.
712 * lily/accidental-placement.cc: add script-priority property.
714 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
716 * lily/ttf.cc (print_trailer): if all else fails: use
717 glyphIndexXXXX as glyph name. Fixes #117.
719 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
720 entry if cmap contains glyph.
721 (get_index_to_charcode_map): remove from Pango_font class, use
722 global filename -> font mapping.
723 (get_glyph_index_name): new function.
724 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
727 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
729 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
732 * scm/define-grob-properties.scm (all-user-grob-properties):
733 remove outdated doc. Fixes #116
735 * lily/completion-note-heads-engraver.cc (process_music): always
736 clone input events; otherwise we may overwrite input 'duration
737 property. Fixes #115.
739 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
742 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
745 * VERSION (PATCH_LEVEL): bump version.
747 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
749 * lily/engraver.cc (internal_make_grob): use variables.
751 * flower/string-convert.cc (dec2double): clean-up warnings.
753 * configure.in (CXXFLAGS): add -Werror.
755 * VERSION (PACKAGE_NAME): release 2.9.25
757 2006-10-18 Joe Neeman <joeneeman@gmail.com>
759 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
760 line even if we precede a forced break.
762 * lily/optimal-page-breaking.cc (try_page_spacing): square line
763 forces too. Make page-spacing weight default to 10 because the
764 changes to vertical springs decreased the page force/line force
765 proportions. Also, take the average of line force and page force
766 instead of just the sum.
768 * lily/constrained-breaking.cc (initialize): make the stiffness
769 of the vertical springs depend on the height of the system. This
770 prevents pages with only a few large systems from getting huge
773 * Documentation/user/page.itely (Page formatting): document the
774 change in default page-spacing-weight
776 * lily/include/constrained-breaking.hh: initialise bottom_padding_
778 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
780 * input/typography-demo.ly (melody): remove superfluous slur.
782 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
783 add piano-pedal-script-interface
785 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
787 * scripts/lilypond-book.py: DocBook support.
789 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
791 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
793 (stop_translation_timestep): set bound to currentMusicalColumn if
794 not set yet. Fixes #102
796 * lily/piano-pedal-bracket.cc: formatting.
798 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
800 * lily/piano-pedal-align-engraver.cc: new class
801 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
804 2006-10-18 Heikki Junes <hjunes@gmail.com>
806 * po/fi.po: Update Finnish translation (before the next release).
808 2006-10-17 Joe Neeman <joeneeman@gmail.com>
810 * lily/system.cc (get_paper_system): reinstate the backwards-
811 compatible page breaking for the old page breaker.
813 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
815 * lily/recording-group-engraver.cc: removed
817 * lily/context.cc, lily/translator-group.cc: Don't touch
818 Context::implementation_ if it's null
820 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
822 * scm/paper.scm: only use left-margin if defined.
824 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
826 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
828 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
829 strokeFingerOrientations
831 * lily/script-column.cc (row_before_line_breaking): also handle
832 accidentals and arpeggios in horizontal script stacking.
834 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
837 * input/regression/script-stack-horizontal.ly: trim.
839 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
841 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
844 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
845 'text if string argument.
847 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
849 * scm/define-context-properties.scm
850 (all-user-translation-properties): change to strokeFingerOrientations
852 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
854 * lily/parser.yy: remove debug output
856 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
858 * ly/paper-defaults.ly: set left/right margin.
860 * scm/paper.scm (set-paper-dimensions): use left-margin and
861 right-margin for computing linewidth.
863 * Documentation/topdocs/NEWS.tely (Top): idem.
865 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
868 * scm/define-markup-commands.scm (tied-lyric): increase negative
869 space: space syllables tighter.
871 * VERSION (PATCH_LEVEL): bump version.
873 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
876 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
878 * COPYING: further clarification
880 * VERSION: release 2.9.24
882 * input/regression/script-stack-horizontal.ly: add version.
884 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
886 * input/regression/lyric-tie.ly (texidoc): use different words.
888 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
890 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
892 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
893 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
895 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
897 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
899 * Doxyfile: remove file.
901 * scm/define-grob-interfaces.scm (string-finger-interface): add
902 string-finger-interface
904 * lily/general-scheme.cc (LY_DEFINE): move
905 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
907 * Documentation/topdocs/NEWS.tely (Top): add note for
908 string-finger feature.
910 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
913 * scm/output-lib.scm (string-finger::calc-text): read 'digit
916 * input/regression/script-stack-horizontal.ly: new file.
918 * ly/engraver-init.ly: add Script_row_engraver.
920 * lily/script-column.cc (order_grobs): refactor: separate axis
922 (row_before_line_breaking): new function.
924 * lily/script-row-engraver.cc (Script_row_engraver): new file.
926 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
928 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
930 * Documentation/user/instrument-notation.itely: Cleanup: Remove
931 annoying skip notes from mensural ligature example. Update
932 @refbugs for ligatures and mensural ligatures.
934 * lily/coherent-ligature-engraver.cc,
935 lily/include/coherent-ligature-engraver.hh,
936 lily/mensural-ligature-engraver.cc,
937 lily/vaticana-ligature-engraver.cc: Revise code for item
938 reparentizing. There should now be less programming_error
941 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
943 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
944 Maintenance bugfix: Don't create empty Stencil (), but empty box
945 instead. This fix should eliminate some programming_error
948 * ly/engraver-init.ly (MensuralStaff): Set default accidental
951 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
952 \layout block _before_ score.
954 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
956 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
958 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
960 2006-10-13 Erlend Aasland <erlenda@gmail.com>
962 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
964 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
966 * VERSION (PATCH_LEVEL): bump version.
968 * COPYING: clarify exception note.
970 * lily/main.cc: remove remark about "COPYING".
972 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
973 system-count starts at 0 for each clip-region. Change name to
974 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
975 layout block, per score.
977 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
979 * lily/input-smob.cc: add equal_p for Input
981 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
984 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
986 * lily/prob.cc: Add equal_p predicate for Prob
988 * lily/translator.cc: small cleanup
990 * scm/document-music.cc: use data from translator listener
991 registration to generate documentation for event classes
993 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
995 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
997 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
999 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
1001 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
1003 * Documentation/topdocs/INSTALL.texi: Thinko.
1005 * .cvsignore: Update.
1007 * lexer-gcc-3.1.sh: Remove.
1009 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
1010 Update anonymous cvs access. Remove comment about gcc 3.0.4.
1012 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1014 * VERSION: release 2.9.23
1016 * lily/paper-column-engraver.cc (stop_translation_timestep): also
1017 typecheck barnumber.
1019 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
1021 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
1023 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
1025 * input/regression/clip-systems.ly (Notes): new file.
1027 * scm/lily.scm (define-scheme-options): add clip-systems option.
1029 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
1031 (dump-stencil-as-EPS): move bbox calculation from previous
1033 (output-framework): use -dclip-systems
1035 * scm/lily-library.scm (filtered-map): new function
1037 * scm/framework-ps.scm (clip-system-EPS): new function.
1038 (clip-system-EPSes): new function.
1040 * lily/paper-column.cc: add rhythmic-location to interface
1042 * scm/define-grob-properties.scm (all-user-grob-properties): add
1043 rhythmic-location property.
1045 * scm/clip-region.scm: new file: rhythmic-location data type and
1046 system-clipped-x-extent function.
1048 * ly/init.ly: use (scm clip-region)
1050 * lily/paper-column-engraver.cc (stop_translation_timestep): set
1051 rhythmic-location for paper column grobs.
1053 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
1055 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
1057 * ly/engraver-init.ly: Remove obsolete comment on
1058 Bar_number_engraver.
1060 * Documentation/user/instrument-notation.itely: Tune Ancient
1061 Articulations figure, such that the episem actually shows.
1063 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1064 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1066 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1069 2006-10-12 Graham Percival <gpermus@gmail.com>
1071 * Documentation/user/ {some}: minor edits that were lost somehow.
1073 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1075 * VERSION (PACKAGE_NAME): bump version.
1077 * input/regression/lyric-tie.ly (texidoc): new file.
1079 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1081 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1083 * scm/define-markup-commands.scm (tied-lyric): new function: split
1084 string along ~ and reattach with U+203F (tie character) and
1087 * scm/output-lib.scm (lyric-text::calc-text): new function.
1089 * lily/lyric-engraver.cc (process_music): don't set 'text.
1091 * scm/output-lib.scm (string-finger::calc-text): new function
1092 (lyric-text::print): new function.
1094 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1095 generic for fingering & string number. Use for string-finger.
1097 * scm/define-music-types.scm (music-descriptions): add
1100 * lily/fingering-engraver.cc (listen_string_finger): new function
1102 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1104 * scm/define-context-properties.scm
1105 (all-user-translation-properties): add stringFingerOrientations
1107 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1109 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1110 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1112 * lily/dots.cc: Added style property for dots.
1114 * mf/parmesan-heads.mf: Fix typo in comment.
1116 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1117 adding longa head to feta font and removing obsolete default
1118 mapping scheme code.
1120 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1122 * scm/output-lib.scm (fingering::calc-text): use origin
1123 event-property, not music-property.
1125 * lily/lilypond.rc.in: spell my name correctly.
1127 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1129 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1130 already have a non-empty extent. Fixes estimation for Hara-kiri
1133 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1135 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1138 * lily/ligature-engraver.cc: Remove unused #include.
1140 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1141 Bugfix: remove method check_for_prefix_loss(Item *) from global
1142 namespace to avoid namespace pollution.
1144 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1146 * VERSION: release 2.9.22
1148 * ly/generate-documentation.ly: update option name.
1150 * lily/dynamic-text-spanner.cc (print): revert fix.
1152 * scm/define-grob-interfaces.scm
1153 (trill-pitch-accidental-interface):
1154 add trill-pitch-accidental-interface
1156 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1157 dereference if it's really a duration.
1159 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1160 useBassFigureExtenders is not set.
1161 (listen_bass_figure): record as new event if
1162 useBassFigureExtenders not set. Fixes #103.
1164 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1165 instead: move circle. Fixes #107.
1167 * scm/define-grobs.scm (all-grob-descriptions): set
1168 allow-loose-spacing for PaperColumn and
1169 NonMusicalPaperColumn. Kludge for #110.
1171 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1173 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1174 allow-loose-spacing property.
1176 * scm/define-markup-commands.scm (postscript): gsave & grestore
1177 around embedded PS. Do setlinewidth too. Fixes #109.
1179 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1181 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1182 code. This patch fixes ligature brackets that were not at all
1185 2006-10-08 Graham Percival <gpermus@gmail.com>
1187 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1189 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1191 * scm/define-context-properties.scm: clarified docs (bug 91).
1193 * Documentation/user/basic-notation.itely: document volta brackets
1194 not aligning (bug 63).
1196 * Documentation/user/ global.itely invoking.itely: ignore or
1197 add warnings about texstr.
1199 2006-10-08 John Mandereau <john.mandereau@free.fr>
1201 * po/fr.po: update translation.
1203 * po/: update msgids.
1205 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1207 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1209 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1211 * Documentation/user/page.itely (Two-pass vertical spacing): add
1212 documentation for two-pass spacing technique.
1214 2006-10-06 Graham Percival <gpermus@gmail.com>
1216 * Documentation/user/convert-ly.txt: new file; new
1217 storage place for this file (moved from bugs/ CVS).
1219 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1221 * lily/note-head.cc: Fixed programming_error message.
1223 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1225 * scm/define-grobs.scm (pure-conversion): move pure-callback
1228 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1229 marcato, stopped, thumb.
1231 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1233 * lily/completion-note-heads-engraver.cc (process_music): don't
1234 skimp on memory usage.
1236 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1239 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1240 parenthesis item. This fixes premature Y-extent triggering. Fixes
1243 * VERSION (PATCH_LEVEL): bump version.
1245 2006-10-04 Graham Percival <gpermus@gmail.com>
1247 * Documentation/user/advanced-notation.itely: added
1248 info about instrument names for piano or other contexts,
1251 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1253 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1254 solfa_base_notewidth as unit for non-DO-notes too.
1256 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1258 * VERSION: release 2.9.21
1260 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1263 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1265 * python/lilylib.py (progress): Minor fix.
1267 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1269 * lily/note-name-engraver.cc: doc engraver.
1271 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1273 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1275 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1278 * lily/stem-engraver.cc (make_stem): don't set duration-log
1280 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1281 write snippet-names binary.
1283 * python/lilylib.py (system): use os.system for mingw32
1285 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1288 * scm/backend-library.scm: update email address.
1290 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1293 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1296 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1297 handle dot creation separately.
1299 * lily/tab-note-heads-engraver.cc (process_music): idem.
1301 * lily/drum-note-engraver.cc (process_music): idem.
1303 * lily/note-heads-engraver.cc (process_music): idem.
1305 * lily/rest-engraver.cc: don't set duration-log.
1307 * scm/output-lib.scm (string-number::calc-text): new function.
1308 (note-head::calc-duration-log): new function.
1310 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1312 * scm/output-lib.scm (fingering::calc-text): new function.
1314 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1316 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1317 and include-eps-font -> include-eps-fonts
1319 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1321 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1323 * lily/timing-translator.cc: list properties.
1324 (start_translation_timestep): update internalBarNumber too.
1326 * scm/define-context-properties.scm
1327 (all-user-translation-properties): add internalBarNumber.
1329 * input/regression/spacing-no-note.ly: new file.
1331 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1333 * lily/book.cc: #include cleanup.
1335 * lily/include/lily-guile-macros.hh: add assert to
1336 scm_or_str2symbol(SCM).
1338 * VERSION (PATCH_LEVEL): bump version.
1340 * lily/spacing-spanner.cc (musical_column_spacing): handle
1341 musical->nonmusical spacing case, where there is no spacing
1342 wish. Fixes issue #61.
1344 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1345 (pango_item_string_stencil): use logical rect horizontally (to
1346 preserve spaces), ink_rect vertically (for time signatures).
1348 * lily/font-metric.cc (word_stencil): new interface function
1350 * input/regression/utf-8-mixed-text.ly: new file.
1352 * lily/percent-repeat-engraver.cc (listen_percent): remove
1355 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1356 non-dynamic scripts. Fixes #30.
1358 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1360 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1362 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1363 SCM_UNDEFINED for non-existent data.
1365 * lily/side-position-interface.cc (general_side_position): allow
1366 optional current_offset argument for chaining, so combinations of side-position
1367 and outside slur callback don't add up. Fixes issue #92.
1369 * lily/pango-font.cc (pango_item_string_stencil): use
1370 logical_rect. This prevents spaces after words from disappearing,
1373 * VERSION: release 2.9.20
1375 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1377 * scm/define-grob-properties.scm (all-user-grob-properties):
1378 mention stencil as user settable.
1380 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1382 * Documentation/user/page.itely (Page formatting):
1383 document auto-first-page-number
1385 * lily/page-breaking.cc (find_chunks_and_breaks):
1386 * lily/paper-score.cc (calc_breaking): Follow changes to the
1387 Constrained_breaking interface
1389 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1390 here backwards, as an optimisation
1391 (initialize): new function; move most of the code in resize () here
1392 (combine_demerits): cache ragged_right_
1393 (Constrained_breaking): constructor now takes the Paper_score
1395 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1397 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1398 avoid parser lookahead for 0-ary functions.
1400 * lily/translator.cc: Extract event classes from
1401 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1403 2006-10-02 Heikki Junes <hjunes@gmail.com>
1405 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1408 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1410 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1411 function. Call the page breaking function selected in the
1412 `page-breaking' \paper variable, then the post processing function
1413 chosen using the `page-post-process' \paper variable.
1414 (line-height): new function. Return the height of a system.
1415 (line-minimum-position-on-page): new function. Return the position
1416 of a system on page (using the previous line position), only
1417 considering between system padding.
1418 (stretchable-line?): new function. Says whether a line can be
1419 stretched (ie. is not a title nor a single staff system).
1420 (page-maximum-space-left): new function. Computes space left on a
1421 page, when all systems are separated by their padding.
1423 * lily/page-breaking.cc (breaking::make_pages): Move page post
1424 processing function call to page breaking wrapper (common to all
1427 * lily/paper-book.cc (book::pages): call the page breaking
1428 wrapper, instead of the page breaker directly
1430 * ly/paper-defaults.ly: Add \paper variables for page breaking
1431 wrapper and page post processing function. Make
1432 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1433 `system-maximum-stretch-procedure' variable for holding a function
1434 computing the maximum stretch a system allows.
1436 * scm/layout-page-dump.scm (write-page-breaks): computes the
1437 stretch to apply to systems on a page to minimize left
1438 space. Dump this stretch length.
1440 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1441 the system-stretch property of the tweak data to stretch the
1443 (includePageLayoutFile): Void function which includes the
1444 generated page-layout file if it exists and if the page layout
1445 dumping is not asked.
1446 (scoreTweak): if the score tweak named by the argument exists,
1449 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1451 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1452 handle correctly the case where there are multiple \noPageBreaks
1455 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1457 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1459 * abc2ly.py fix so that entering " -- " will translate to a -- in
1460 the lilypond instead of a " - - "
1462 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1464 * lily/align-interface.cc: fix typo
1466 * lily/dynamic-text-spanner.cc (print): Add a special case for
1467 trill spanner right sides.
1469 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1471 * lily/align-interface.cc (get_extents_aligned_translates): add
1472 support for padding variable.
1474 * lily/break-align-interface.cc (self_align_callback): oops: use
1475 loop variable in guard.
1477 * input/regression/repeat-percent-grace.ly: new file.
1479 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1480 remember first currentCommandColumn of a grace run. Fixes issue 70.
1482 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1483 move class definition to CC file.
1485 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1487 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1488 measure-long repeats.
1490 * flower/include/international.hh: include stdarg.h
1492 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1494 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1495 put_systems_on_pages to return an empty result, we need to assign
1496 demerits properly in that case.
1497 (put_systems_on_pages): Make the number of pages depend on the
1498 evenness of page_number. Add auto-first-page-number.
1499 (calc_subproblem): ensure that the page-number is even for the
1500 left-hand page. Warn if the first page-turn doesn't fit onto the
1501 first (right-hand) page.
1503 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1504 (min_page_count): make this publicly accessible
1505 (min_page_count): fix a bug when there are forced page breaks that
1506 was introduced when I made this loop run backwards
1507 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1508 replace space_systems_on_min_pages with these two. The logic in
1509 space_systems_on_min_pages was getting too convoluted and is better
1510 contained in page-turn-page-breaking.
1512 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1514 (breakable_column): typo
1516 * lily/source-file.cc (get_line): fix off-by-one error
1517 and clean up some of the logic
1519 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1521 * lily/page-breaking.cc (make_pages): honour the first-page-number
1524 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1526 * VERSION (PACKAGE_NAME): bump version.
1528 2006-09-26 Pal Benko <benko.pal@gmail.com>
1530 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1531 (the latter is the same as petrucci-f which is kept for compatibility)
1533 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1535 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1537 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1539 * lily/global-context.cc (run_iterator_on_me): break out of loop
1540 if moment doesn't increase.
1542 * scm/define-grob-properties.scm (all-user-grob-properties): add
1545 * lily/accidental.cc (after_line_breaking): read forced property.
1547 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1550 * input/regression/accidental-forced-tie.ly: new file.
1552 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1554 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1556 * lily/figured-bass-engraver.cc: only listen to rest events if
1557 ignoreFiguredBassRest is not set.
1559 * scm/define-context-properties.scm
1560 (all-user-translation-properties): add ignoreFiguredBassRest property
1562 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1564 * lily/paper-book.cc (get_system_specs):
1565 (set_system_penalty): fix breakbefore.
1566 We used to set a penalty on the system after the break, now we
1567 set a permission on the system before the break
1569 * lily/grob-property.cc: add scm debugging hooks into
1570 property modification
1572 * lily/context-property.cc:
1574 rename make_foo_from_properties to internal_make_foo and
1575 move it from context-property.cc to a member function of
1578 * lily/include/lily-guile-macros.hh:
1579 overload ly_symbol2scm macro so that there is no more need
1582 * lily/volta-repeat-iterator.cc:
1583 * lily/tweak-engraver.cc:
1584 * lily/tuplet-bracket.cc:
1585 * lily/span-bar-engraver.cc:
1586 * lily/script-engraver.cc:
1587 * lily/prob-scheme.cc:
1588 * lily/pointer-group-interface.cc:
1590 * lily/grob-scheme.cc:
1591 * lily/grob-property.cc:
1593 * lily/context-property.cc:
1594 * lily/break-substitution.cc:
1595 * lily/break-align-engraver.cc:
1596 * lily/axis-group-interface.cc:
1597 * lily/align-interface.cc:
1598 remove calls to internal_FOO
1600 * lily/system-start-delimiter-engraver.cc:
1601 * lily/parenthesis-engraver.cc:
1602 * lily/accidental-engraver.cc:
1603 remove calls to make_foo_from_properties
1605 2006-09-23 Graham Percival <gpermus@gmail.com>
1607 * Documentation/user/programming-iterfaces.itely: fix
1608 def-music-function -> define-music... leftover.
1610 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1612 * lily/page-spacing.cc (min_page_count): by running the loop
1613 backwards, we can calculate ragged_last properly.
1615 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1617 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1618 printfirst-page-number -> print-first-page-number
1620 * python/convertrules.py: corresponding rule.
1622 * Documentation/user/page.itely (Page formatting): Document the
1623 default values of all page layout parameters.
1625 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1627 * lily/lexer.ll: remove limitation on music function arity. New
1628 mode extratoken, which inserts extra EXPECT_* tokens after
1629 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1631 * lily/parser.yy: Change grammar for music function accordingly.
1633 * lily/include/lily-parser.hh: New method get_state, new member
1634 hidden_state. Works around a problem when parser fetches
1635 MUSIC_FUNCTION token but not the following EXPECT_* token.
1637 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1640 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1641 references to Music; use ASSIGN_EVENT_ONCE everywhere
1643 * lily/grob-info.cc: junk *music_cause
1645 * lily/music.cc: copy eventified articulations to stream event
1647 * lily/part-combine-iterator.cc: Cleanup using enums
1649 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1652 * lily/include/engraver.hh: Junk music.hh include
1654 * lily/stream-event.cc: Changed constructors
1656 2006-09-21 Graham Percival <gpermus@gmail.com>
1658 * Documentation/user/tweaks.itely (Fitting music onto fewer
1659 pages): change settings to avoid warning messages.
1661 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1663 * Documentation/user/tweaks.itely (Fitting music onto fewer
1664 pages): Add between-system-space setting.
1666 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1668 * lily/accidental-placement.cc (calc_positioning_done): don't
1669 trigger Y-extent calculation too early. Use pure_height instead.
1671 * lily/scale.cc (LY_DEFINE): new file.
1673 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1675 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1676 that happen at the start of a score: having a zero-length
1677 chunk was messing up min_system_count calculations.
1679 * lily/source-file.cc (get_line): lower_bound, not
1680 binary_search. Fixes problem where point-and-click would
1681 always point to the first line.
1683 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1685 * lily/accidental-placement.cc (calc_positioning_done): also put
1686 stems into accidental support.
1688 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1691 * scm/script.scm (default-script-alist): avoid-slur and
1692 slur-padding for portato script.
1694 * lily/stem-tremolo.cc (translated_stencil): new function.
1695 (height): use new function. Fixes tremolos on whole notes.
1697 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1700 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1702 * scripts/abc2ly.py (try_parse_comment): idem.
1704 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1705 bar_string iso. string.find()
1709 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1712 2006-09-18 Graham Percival <gpermus@gmail.com>
1714 * Documentation/user/basic-notation.itely: add bug
1715 warning about ties and octavation/clef.
1717 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1719 * VERSION (PACKAGE_NAME): release 2.9.18
1721 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1723 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1724 figure out midi file names right here.
1726 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1728 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1730 * scm/backend-library.scm: option naming: gs-font-load*s*
1732 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1735 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1737 * scm/define-music-types.scm (music-descriptions): remove
1738 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1739 Music::to_event doesn't complain.
1741 * lily/accidental-placement.cc (ape_compare):
1742 * lily/semi-tie.cc (compare):
1743 * lily/note-column.cc (shift_compare): replace by XXX_less
1745 * lily/tie-formatting-problem.cc (set_chord_outline):
1746 * lily/tie-column.cc (calc_positioning_done):
1747 * lily/system.cc (post_processing)
1749 * lily/stem.cc (note_head_positions)
1750 (calc_positioning_done):
1751 * lily/spanner.cc (do_break_processing)
1752 (find_broken_piece):
1753 * lily/span-bar.cc (print):
1754 * lily/semi-tie-column.cc (calc_positioning_done):
1755 * lily/rest-collision.cc (calc_positioning_done):
1756 * lily/program-option.cc (get_help_string):
1757 * lily/note-collision.cc (get_clash_groups):
1758 * lily/new-fingering-engraver.cc (position_scripts):
1759 * lily/keyword.cc (Keyword_table):
1760 * lily/hara-kiri-group-spanner.cc (request_suicide):
1761 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1762 * lily/accidental-placement.cc (calc_positioning_done):
1764 * lily/beam.cc (get_beam_segments):
1765 * lily/grob-array.cc (remove_duplicates):
1768 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1769 ragged-last-bottom = ##f (test the new page breaker)
1771 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1773 * scm/define-context-properties.scm
1774 (all-internal-translation-properties): remove properties that
1775 were used to communicate page-turn stuff to the paper-column
1778 * lily/lily-guile.cc (robust_scm2string): new function
1780 * lily/paper-column-engraver.cc: Clean up page turn stuff
1782 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1783 instead of cluttering up paper-column-engraver.cc
1785 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1787 * scm/layout-page-dump.scm (scm): export utility function names,
1788 to allow user writing cutsom dumping functions.
1790 * scm/layout-page-layout.scm: export utility function names to
1791 enable custom page breaking function writing. Tabify.
1792 (line-next-space): use ?-suffix only for predicates
1793 (page-maximum-space-to-fill): new function. Return the space
1794 between first and bottom system of a page, to give to
1796 (space-systems): use a space-to-fill argument (for instance as
1797 computed by page-maximum-space-to-fill) instead of computing
1798 internaly this space with the page height. That way, the caller
1799 can adjust the space to use.
1800 (make-page-from-systems, walk-paths): compute space to fill before
1801 calling space-systems.
1803 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1805 * scm/script.scm (default-script-alist): set paddings for every
1806 type here, increase for portato mark.
1808 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1811 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1813 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1814 use spanner::set-spacing-rods
1816 * lily/note-column.cc: reformat.
1818 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1819 step positioning for note/rest combinations.
1821 * input/regression/rest-note-collision.ly: new file.
1823 * scm/define-grobs.scm (all-grob-descriptions): add
1826 * flower/include/std-vector.hh: switch off again.
1828 * VERSION (PATCH_LEVEL): bump to 2.9.18
1830 * flower/include/std-string.hh: idem.
1832 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1834 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1836 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1839 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1841 * Documentation/user/page.itely: update page breaking documentation
1843 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1845 * lily/note-collision.cc (calc_positioning_done): only access
1846 first head if available.
1848 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1850 * scm/framework-ps.scm (output-preview-framework): use new name.
1852 * lily/program-option.cc (internal_set_option): use new names.
1854 * Documentation/user/SConscript (lilypond_book_flags): update -d
1857 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1858 output into other programs): new variable names.
1860 * scm/lily.scm (define-scheme-options): uniformize var names.
1862 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1863 tuplets_ is non-empty before popping.
1865 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1867 * lily/spanner.cc (find_broken_piece):
1868 * lily/spacing-spanner.cc (get_columns):
1869 * lily/source-file.cc (get_line):
1870 * lily/simple-spacer.cc (get_column_description):
1871 * lily/keyword.cc (lookup):
1872 use the new binary search.
1874 * flower/include/std-vector.hh: replace binary_search with
1875 a more STL-like version
1877 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1879 * lily/tie-performer.cc: remove unused last_event_ property.
1880 (class Tie_performer): add now_tied_heads_ property for
1881 partially-tied heads.
1882 (acknowledge_audio_element): when adding an Audio_note, put the
1883 note in now_tied_heads_ if the audio note is partially tied.
1884 (stop_translation_timestep): always include entries in
1885 now_tied_heads_ in heads_to_tie_.
1887 * lily/drum-note-performer.cc (process_music): look for tie-events
1888 in the articulations; pass to Audio_note constructor.
1890 * lily/note-performer.cc (process_music): look for tie-events in
1891 the articulations; pass to Audio_note constructor.
1893 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1896 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1897 include initializer in constructor.
1899 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1901 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1902 unless they are breakable. This fixes discrepancies between the forces
1903 calculated here and the forces calculated in get_line_configuration.
1905 * lily/grob.cc (pure_relative_y_coordinate): fix some
1906 mis-estimation that was happening with piano staves.
1908 * lily/constrained-breaking.cc (resize): don't choke if we get a
1909 measure that won't fit on a line.
1910 (combine_demerits): don't consider uniformity when ragged
1912 * lily/page-spacing.cc (solve): why the f* were there two of these?
1913 (calc_subproblem): properly handle the case where a system is taller
1916 * lily/system.cc (get_paper_system): ensure that all the permissions
1917 and penalties are passed to the paper systems.
1919 * lily/page-breaking.cc (create_system_list): support system-count.
1921 * scm/define-grobs.scm (pure-print-callbacks): add
1922 ly:script-interface::print
1924 * lily/page-spacing.cc (min_page_count): fix calculation of min
1925 pages if we are ragged and there are non-zero springs.
1927 * scm/layout-page-layout.scm: if the pure-height estimates are under
1928 the real height, allow space-systems to ignore padding if it is
1929 needed in order to fit the systems on one page
1931 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1933 (solve): fix performance problem. Make sure we always get at least
1936 * lily/page-breaking.cc (make_pages): include write-page-breaks
1939 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1941 * scm/define-grobs.scm: add the new slur-callback
1942 fix pure-relevant to not exclude grobs whose extent is already
1945 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1948 * lily/slur.cc (pure_height): new callback to estimate the height
1951 2006-09-02 Graham Percival <gpermus@gmail.com>
1953 * Documentation/user/invoking.itely: small update on
1954 MacOS X notes; thanks Trevor!
1956 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1958 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1960 * lily/lexer.ll: accept EOF in all states.
1962 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1964 * lily/source-file.cc (Source_file): always 0-terminate character
1965 array, to prevent Flex from barfing.
1967 * lily/global-context.cc (get_output): robustness: don't crash if
1968 no Score context found.
1970 * lily/include/book.hh (class Book): idem.
1972 * lily/include/context-def.hh (struct Context_def): idem.
1974 * lily/include/score.hh (class Score): don't derive from Input.
1976 * lily/book.cc (Book): add a copy ctor.
1978 * buildscripts/output-distance.py (FileLink.calc_distance): count
1979 orphans in distance too.
1981 * python/midi.c (midi_parse_track): robustness: don't read past
1984 * ly/performer-init.ly: add Control_track_performer, move
1985 Tempo_performer and Time_signature_performer to Score.
1987 * lily/score-performer.cc (acknowledge_audio_elements): override
1988 from base class: add to audio-columns
1990 * lily/control-track-performer.cc (add_text): new file: generate
1993 * lily/performance.cc: move output_header_track to
1994 Control_track_performer ()
1996 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1998 * lily/include/midi-item.hh (class Midi_channel_item): insert
1999 class into hierarchy, for items that can have a channel setting. Dehungarify.
2001 * lily/include/performer.hh (class Performer): remove
2002 play_element(); move functionality into announce/acknowledge.
2004 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
2006 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
2007 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
2009 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
2011 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
2014 * lily/all-font-metrics.cc: remove TFM support.
2016 * lily/include/tfm.hh: remove TFM support, TFM reader.
2018 * lily/include/binary-source-file.hh: remove Binary_source_file.
2020 2006-08-27 Graham Percival <gpermus@gmail.com>
2022 * Documentation/topdocs/NEWS.itely: add @c marker for
2023 stuff I've processed.
2025 * Documentation/user/ various: info from NEWS.
2027 2006-08-27 Joe Neeman <joeneeman@gmail.com>
2029 * lily/paper-column-engraver.cc (finalize): Oops, this change
2030 should have gone in on 2006-08-23
2032 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
2034 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
2035 quotes to quote arguments. Fixes Windows problem.
2037 * python/lilylib.py (progress): idem
2039 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2041 * scripts/musicxml2ly.py: fix for importing
2042 minor key signatures from MusicXML. (Phillip Kirlin)
2044 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
2046 * python/musicxml.py:
2047 (Attributes.get_key_signature): now correctly retrieves mode from
2050 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2052 * lily/parser.yy (output_def_body): take ownership of identifier
2055 * Documentation/user/advanced-notation.itely (Metronome marks):
2056 update use of \tempo in \midi.
2058 * VERSION: release 2.9.16
2060 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
2062 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2065 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2067 * input/regression/tie-chord-partial.ly: clarify example.
2069 * scm/define-music-properties.scm (all-music-properties): remove
2072 * ly/music-functions-init.ly: remove \untied.
2074 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2075 stream events and music events.
2076 (stop_translation_timestep): search acknowledged heads for
2079 * input/regression/tie-chord-partial.ly: new file.
2081 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2082 for \char markup command.
2084 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2086 * scm/define-music-types.scm (music-descriptions): consistency:
2087 Use solo-{one,two}-event iso. solo-[12]-event.
2089 * lily/part-combine-engraver.cc (process_music):
2090 Use solo-{one,two}-event iso. solo-[12]-event.
2092 * ly/declarations-init.ly (partCombineListener): add Timing as
2095 * flower/std-string.cc (string_copy): use copy ()
2097 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2099 2006-08-24 Graham Percival <gpermus@gmail.com>
2101 * Documentation/user/changing-defaults.itely, global.itely,
2102 lilypond-book.itely, page.itely: minor changes from mailist.
2104 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2106 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2109 * scm/define-context-properties.scm
2110 (translator-property-description): robustness: detect type errors
2111 in property definitions.
2113 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2114 after getting it from SCM.
2116 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2119 * lily/include/performer.hh (class Performer): strip get_tempo()
2122 * lily/midi-def.cc: strip file.
2124 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2126 * lily/include/context-def.hh (struct Context_def): use
2127 VIRTUAL_COPY_CONSTRUCTOR().
2129 * lily/source-file.cc: smobification.
2131 * lily/include/source-file.hh (class Source_file): smobify
2132 Source_file. Trim redundant members.
2134 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2135 clones after creation. This plugs a huge memory leak.
2137 * python/convertrules.py (FatalConversionError.sub_tempo):
2138 complete rule for \midi{ \tempo }
2140 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2142 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2144 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2146 * input/regression/optimal-page-breaking-hstretch.ly: test for
2147 ragged-last-bottom also
2149 * lily/paper-column-engraver.cc (finalize): make the end of a score
2150 breakable by default. This is to balance out a change in behaviour
2151 of the page-turn-breaker which no longer makes the end of a score
2154 * lily/paper-book.cc (pages): set the systems_ once the pages are
2157 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2158 Page_breaking interface.
2160 * lily/page-breaking.cc (class Page_breaking): make the interface
2161 more consistent and provide abstractions for dealing with
2164 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2165 algorithm. Use the new interface to Page_breaking.
2167 * lily/page-spacing.cc: better support for ragged-bottom and
2170 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2172 * python/convertrules.py (conv): warning on \tempo{}
2174 * ly/performer-init.ly: set tempoWholesPerMinute.
2176 * ly/midi-init.ly: remove \midi
2178 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2181 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2182 tempoUnitDuration for determining what to print.
2184 * lily/lyric-extender.cc: typo.
2186 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2188 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2191 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2193 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2194 eps-pad-boxes is set.
2196 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2198 * THANKS: update sponsors.
2200 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2202 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2204 * input/regression/tie-chord-untied.ly: new file.
2206 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2208 * scm/define-music-properties.scm (all-music-properties): add
2211 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2213 (headertext_nopics): sanitize no-examples text.
2215 * scm/page.scm (make-page-stencil): don't rely on extents of
2216 page-stencil. This fixes spurious space around .EPS files produced
2217 with the EPS backend.
2219 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2221 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2223 * lily/hara-kiri-engraver.cc (process_music): remember
2224 keepAliveInterfaces after processing \set
2226 * lily/lyric-extender.cc (print): support left/right-padding for
2229 * scm/documentation-generate.scm (string-append): revert lilypond/
2232 2006-08-20 Graham Percival <gpermus@gmail.com>
2234 * Documentation/user/lilypond.tely: clarification to
2235 license presentation (not to actual license).
2237 * Documentation/user/basic-notation.itely,
2238 instrument-notation.itely: minor changes.
2240 * input/ {regression, test}/+.ly: clarification to
2241 text (you can click on examples). Thanks, Mats!
2243 * input/manual/bar-lines.ly: adds ||: repeats.
2245 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2247 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2249 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2251 * Documentation/user/lilypond.tely: strip lilypond/ from info
2252 links, rename to category LilyPond
2254 * lily/pango-font.cc (description_string): new function.
2256 * VERSION: release 2.9.15
2258 * lily/spacing-engraver.cc (stop_translation_timestep): use
2259 Dscho's fix for spacing spanner.
2261 * scm/define-music-types.scm (music-descriptions): use
2262 apply-output-event for ApplyOutputEvent
2264 * lily/output-property-engraver.cc (listen_apply_output): rename
2265 from listen_layout_instruction.
2267 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2270 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2272 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2273 commandline args with contains, split by \n.
2275 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2276 write snippet-names file, call with -dread-file-list. Fixes
2277 command limitations on 64-bit systems.
2279 * input/regression/stencil-color-rotation.ly: new file.
2281 * lily/include/translator.hh (struct Acknowledge_information):
2282 revert: don't use Protected_scm in global objects, as GUILE can't
2283 handle gc_unprotect from automated destructors on MacOS X.
2285 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2286 color, not the original stencil. Fixes combinations of
2287 color/transparency/rotation.
2289 * scripts/lilypond-book.py (main): add --formats=eps for
2292 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2293 crash if spacing_ is nonexistent.
2295 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2297 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2298 \catcode`\@=12 in the LaTeX output.
2300 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2302 * scm/define-music-types.scm (music-descriptions):
2303 use sustain-event iso. sustain-pedal-event.
2305 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2307 * scripts/convert-ly.py: honour the -n command-line switch
2309 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2311 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2312 break specification.
2314 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2316 * Documentation/user: convert-ly the user manual
2318 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2320 * stepmake/aclocal.m4: version check patch (thanks MWD)
2322 * ly/music-functions-init.ly: robustness. Don't crash if
2323 currentBarNumber is not a number.
2325 * VERSION (PATCH_LEVEL): bump.
2327 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2329 * stepmake/aclocal.m4: better version check; handle fooX.Y
2332 * ly/performer-init.ly: instrument name fixup.
2334 * input/manual/chord-names-jazz.ly (banterProperties):
2335 instrumentName update
2337 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2339 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2341 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2342 function. Use hash tables to check membership.
2344 * lily/general-scheme.cc (LY_DEFINE): new function.
2346 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2348 * lily/include/translator.hh (struct Acknowledge_information): add
2351 * ly/music-functions-init.ly: change name to BreathingEvent
2353 * input/regression/*.ly: apply it.
2355 * python/convertrules.py (conv): better instrumentName conversion
2358 * scm/define-music-types.scm (music-descriptions): add
2359 line-break-event to LineBreakEvent music
2361 * lily/music.cc (to_event): don't crash if music type not set.
2363 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2366 * lily/spacing-engraver.cc (stop_translation_timestep): set
2367 spacing for proportional notation too.
2369 * scm/translation-functions.scm (format-bass-figure): inspect
2372 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2374 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2376 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2378 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2380 * scm/layout-page-layout.scm (make-page-from-systems): new function
2381 (optimal-page-breaks): use the new page-breaking calling convention
2383 * scm/define-context-properties.scm (all-user-translation-properties):
2386 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2387 revokePageTurns functionality. If there is a special barline within
2388 the breakable region, break there instead of at the end of the region.
2390 * lily/paper-book.cc (pages): use the new page-breaking calling
2393 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2395 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2397 * scripts/lilypond-book.py: insert \sourcefileline command in
2398 output, so lilypond error messages refer to the spot in the
2399 original .lytex / .itely sourcefile.
2401 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2403 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2404 space to next column for distance to fixed col.
2406 * VERSION (PACKAGE_NAME): release 2.9.14
2408 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2411 * lily/accidental-engraver.cc (process_acknowledged): don't create
2412 accidental for trill span event. This fixes spurious accidentals
2415 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2417 * scm/define-grob-properties.scm (all-user-grob-properties):
2418 Clarify documentation of side-axis and direction. Thanks to Paul
2419 for the inspiration.
2421 * lily/bar-line.cc: Add documentation for "||:" also in the
2422 interface documentation.
2424 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2426 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2428 * lily/paper-column.cc (set_system): new function.
2430 * lily/spacing-engraver.cc (stop_translation_timestep): store
2431 SpacingSpanner refs in Paper_column.
2433 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2434 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2436 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2438 * lily/beam-engraver.cc (listen_beam): add method for
2439 Grace_beam_engraver too.
2441 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2443 * python/convertrules.py: Fix indentation bug that broke
2444 conversion of files older than 1.3.117.
2445 Fix escape error in the description for 2.9.6.
2447 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2449 * lily/*-engraver.cc: convert all try_music functions to listen_*
2452 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2453 enums to represent pedal types, and calculate more data statically.
2455 * scm/part-combiner.scm (recording-group-emulate): create a
2456 softcoded substitute for recording-group-engraver.cc.
2458 * lily/music.cc: make a common transpose function for events and
2461 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2462 ManualMelismaEvent, and obsoletes Melisma_translator.
2464 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2466 * input/test/instrument-name-align.ly: update version.
2468 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2470 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2471 Doc the --pdf flag to lilypond-book.
2473 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2475 * Documentation/topdocs/NEWS.tely (Top): add description.
2477 * input/regression/tuplet-full-length-note.ly: add file.
2479 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2480 always store axis group.
2482 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2484 * input/regression/instrument-switch.ly: new file.
2486 * lily/instrument-switch-engraver.cc (process_music): new file.
2488 * ly/engraver-init.ly: add Instrument_switch_engraver
2490 * ly/music-functions-init.ly: \instrumentSwitch
2492 * scm/define-context-properties.scm
2493 (all-user-translation-properties): add instrumentCueName
2495 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2497 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2499 * ly/music-functions-init.ly: music function \transposition.
2501 * lily/parser.yy (command_element): softcode \transposition.
2503 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2504 (process_music): oops.
2506 * lily/instrument-name-engraver.cc (start_spanner): new
2507 function. Create spanner when property changes.
2508 (stop_spanner): new function.
2510 * python/convertrules.py (conv): add rule.
2512 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2513 shortInstrumentName iso. instr.
2515 * scm/output-ps.scm (dashed-line): add phase argument to
2518 * lily/bar-line.cc (dashed_bar_line): new function.
2519 (compound_barline): support \bar "dashed".
2521 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2522 --output=DIR to DIR/BASE if it is a dir.
2524 * flower/file-name.cc (file_part): new function
2525 (dir_part): new function
2527 * lily/lily-parser-scheme.cc (LY_DEFINE):
2529 * DEDICATION: update
2531 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2533 * lily/instrument-name-engraver.cc: formatting.
2535 * python/convertrules.py (conv): bugfix for \epsfile.
2537 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2541 * lily/gourlay-breaking.cc: Oops, these should have been included
2544 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2546 * scripts/*.py (program_name): cleanup relocation snippets.
2548 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2550 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2552 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2553 page-breakable by default
2555 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2556 correctly calculated for a single-system page
2558 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2559 bigger than the second number
2561 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2562 acknowledge that we aren't satisfying constraints)
2564 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2567 * lily/grob.cc (pure_height): add minimum-Y-extent
2569 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2572 * lily/constrained-breaking.cc: convert code to use new Matrix class
2573 (get_best_solution): new function
2575 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2576 is a page with no systems
2578 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2580 * VERSION (PACKAGE_NAME): release 2.9.13
2582 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2585 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2587 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2589 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2592 * scm/define-grob-properties.scm (all-user-grob-properties):
2593 remove grace-space-factor.
2595 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2596 grace-spacing-interface
2597 (spacing-options-interface): add.
2599 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2601 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2603 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2604 GraceSpacing object.
2606 * lily/note-spacing.cc: fix prop list formatting
2608 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2609 beaming for grace notes too.
2611 * input/regression/spacing-grace.ly: update.
2613 * lily/grace-spacing-engraver.cc: new file.
2615 * lily/spacing-spanner.cc: add strict-grace-spacing.
2617 2006-07-20 Graham Percival <gpermus@gmail.com>
2619 * lily/parser.yy: compile fix.
2621 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2623 * scm/define-grobs.scm (all-grob-descriptions): typo.
2625 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2626 .eps extension from includegraphics.
2628 * scripts/lilypond-book.py (main): add support for --pdf.
2630 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2631 callback to compute common shortest duration.
2632 (set_springs): typo.
2634 * scm/define-grob-properties.scm (all-user-grob-properties): add
2635 strict-grace-spacing.
2637 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2638 support float_grace_columns_.
2640 * lily/spacing-options.cc (init_from_grob): new file.
2642 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2644 * input/regression/spacing-loose-grace.ly: new file.
2646 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2648 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2649 tupletFullLengthNote too. Choose right bound depending on value.
2651 * input/regression/tuplet-full-length-note.ly: new file.
2653 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2655 * lily/*-performer.cc: Converted try_music to listen_*
2657 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2658 as a stream-event internally. Introduce event_cause (), deprecate
2661 * scm/define-music-types.scm: Removed BusyPlayingEvent
2663 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2665 * Documentation/user/advanced-notation.itely (Font selection):
2666 Document how to get a list of available fonts using 'lilypond
2667 -dshow-available-fonts blabla'.
2669 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2671 * GNUmakefile.in: filter lily-XXX.pdf files.
2673 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2675 * scm/define-grob-properties.scm (all-internal-grob-properties):
2676 remove delta-pitch. Use delta-position everywhere.
2678 * scm/output-lib.scm (fall::print): use new order.
2680 * scm/output-ps.scm (path): reorder arguments.
2682 * scm/output-svg.scm (path): support for path primitive.
2684 * input/regression/bend-after.ly: new file.
2686 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2687 recipe for eps -> pdf conversion.
2689 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2691 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2694 2006-07-19 Graham Percival <gpermus@gmail.com>
2696 * input/manual/screech-boink.ly: moved to here.
2698 * input/screech-boink.ly: deleted.
2700 * scm/define-grob-properties.scm: clarify doc string.
2702 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2704 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2706 * scm/output-ps.scm (path): define path.
2708 * scm/define-stencil-commands.scm
2709 (ly:register-stencil-expression): add path.
2711 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2713 * ly/engraver-init.ly: add Fall_engraver
2715 * lily/parser.yy (music_function_event): allow musicfunction
2716 without music arg as music_function_event.
2718 * lily/grob-scheme.cc (LY_DEFINE):
2719 ly:grob-robust-relative-extent. New function.
2721 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2723 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2725 * scm/output-lib.scm (fall::print): new function
2727 * lily/fall-engraver.cc (stop_fall): new file.
2729 * ly/music-functions-init.ly: alphabetise.
2731 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2734 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2736 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2738 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2741 * lily/translator-group.cc (connect_to_context): non const error message.
2743 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2745 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2748 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2750 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2752 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2755 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2757 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2759 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2761 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2763 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2765 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2767 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2769 * scm/layout-page-layout.scm: Define module, tidy code, use more
2770 functions iso. a single big one.
2772 * scm/layout-page-dump.scm: move page dump functions used in two
2773 pass spacing to this file. Define module.
2775 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2778 * ly/paper-defaults.ly: use module layout-page-layout.
2780 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2782 * lily/music.cc: Revised MusicEvent event class. It now contains
2783 event data directly instead of encapsulating it in music. The
2784 previously used class is renamed to OldMusicEvent.
2786 * lily/stream-event.cc: Stream events are now probs.
2788 * lily/translator-group.cc, lily/translator.cc: Translators can
2789 now listen directly to stream events, by using macros
2790 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2792 * lily/arpeggio-engraver.cc: Converted to use new event system
2794 * THANKS: Corrected spelling mistake.
2796 2006-07-12 Graham Percival <gpermus@gmail.com>
2798 * Documentation/user/SConscript, make/lilypond-vars.make,
2799 input/GNUmakefile: doc build looks in input/manual instead
2802 * input/manual/ GNUmakefile, SConscript: build files for
2805 * input/test/ various: some files moved to input/manual/
2807 * Documentation/user/basic-notation.itely: small updates;
2808 thanks Kieren and Charles!
2810 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2812 * VERSION (PACKAGE_NAME): release 2.9.11
2814 * Documentation/topdocs/NEWS.tely (Top): update prop value
2816 * Documentation/user/basic-notation.itely (Tuplets): new property
2819 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2821 * python/convertrules.py (conv): tweaks.
2823 * VERSION (PATCH_LEVEL): bump version.
2825 * python/convertrules.py (conv): add rule for
2826 tupletNumberFormatFunction.
2828 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2829 tupletNumberFormatFunction.
2831 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2832 text through 'text callback.
2834 * lily/time-scaled-music-iterator.cc (construct_children): copy
2835 tweaks generated events.
2837 * scm/define-context-properties.scm
2838 (all-user-translation-properties): remove tupletNumberFormatFunction
2840 * lily/tuplet-engraver.cc (process_music): don't read
2841 tupletNumberFormatFunction
2843 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2846 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2848 * lily/global-context-scheme.cc: Separated ly:run-translator into
2851 * lily/score-engraver.cc, lily/score-performer.cc,
2852 scm/define-context-properties.scm: Make paper/midi output
2853 accessable as a context property.
2855 * lily/score-translator.cc, lily/score-context.cc: Removed.
2857 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2859 * scm/ps-to-png.scm (Module):
2860 * scm/framework-tex.scm (Module):
2861 * scm/framework-ps.scm (Module):
2862 * scm/backend-library.scm (Module):
2863 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2864 "dDEVICEHEIGHTPOINTS".
2866 2006-07-04 Graham Percival <gpermus@gmail.com>
2868 * Documentation/user/ various: general improvements to
2869 "working with lilypond files" section.
2871 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2873 * lily/sequential-iterator.cc: Change the default get_music_list
2874 to read elements-callback music property
2876 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2877 processing of multimeasure rests. Softcoded
2878 sequential-music-iterator.
2880 * lily/sequential-music-iterator.cc: Removed.
2882 2006-06-28 Graham Percival <gpermus@gmail.com>
2884 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2886 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2888 * lily/parser.yy: Wrap non-post-events in EventChords before
2889 assigning them to identifiers.
2891 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2893 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2894 gives correct vertical placement of \bar ":" in all staff
2895 sizes. Thanks Martial!
2897 2006-06-26 Graham Percival <gpermus@gmail.com>
2899 * Documentation/user/invoking.itely : minor update from mailist.
2901 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2903 * lily/ various: Introduce stream events of types Prepare,
2904 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2905 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2907 * lily/global-context*.cc: Time is now -inf before iteration
2910 * lily/include/context.hh: Removed unique_, init_
2912 * Documentation/topdocs/NEWS: Make the feathered beam example
2913 avoid triggering a bug.
2915 2006-06-24 Graham Percival <gpermus@gmail.com>
2917 * Documentation/user/ various: small additions from mailist.
2919 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2921 * ly/performer-init.ly: Add some missing links in the context
2922 hierarchy for MIDI output. There are probably some more missing!
2924 2006-06-21 Graham Percival <gpermus@gmail.com>
2926 * Documentation/user/ various: minor spelling fixes;
2927 thanks Dave Luttinen!
2929 * Documentation/user/ various: small clarifications;
2930 thanks Anthony Youngman!
2932 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2934 * po/fr.po: add \n appropriately.
2936 * lily/lexer.ll: remove ? from version-seen?
2938 2006-06-19 John Mandereau <john.mandereau@free.fr>
2940 * po/fr.po; update translation, by Jean-Charles Malahieude and
2943 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2945 * THANKS: add Markus Schneider.
2947 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2948 Staff_symbol_engraver
2950 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2951 replace staff_engraver
2953 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2956 * lily/staff-collecting-engraver.cc
2957 (acknowledge_end_staff_symbol): new function
2959 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2961 * lily/staff-collecting-engraver.cc
2962 (acknowledge_end_staff_symbol): new function.
2964 * lily/main.cc: switch on relocation by default.
2966 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2968 * lily/spacing-spanner.cc (musical_column_spacing): set
2969 compound_fixed_note_space to 0.0. Document why.
2971 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2972 range of inverse_hooke_
2973 (Simple_spacer): init completely.
2975 (get_line_configuration): don't use cols.resize(); it introduces
2978 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2980 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2982 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2983 try. Divide by beatlength.
2985 * input/regression/beaming-ternary-metrum.ly: update doc.
2986 add beatLength hack.
2988 * scm/music-functions.scm (make-time-signature-set): add
2989 standard-beat-grouping.
2991 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2993 * input/regression/tie-whole.ly: new file.
2995 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2996 cross center of note head in case of invisible stem.
2998 2006-06-16 Graham Percival <gpermus@gmail.com>
3000 * Documentation/user/ various: small fixes from mailist.
3002 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3004 * lily/breathing-sign.cc (offset_callback): idem.
3006 * lily/align-interface.cc (align_to_fixed_distance): remove
3009 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
3012 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3014 * VERSION (PACKAGE_NAME): release 2.9.9
3016 * ly/lilypond-book-preamble.ly: add \version
3018 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
3020 * scripts/lilypond-book.py (PREAMBLE_LY): include
3021 lilypond-book-preamble.ly
3023 * lily/stem.cc (get_beaming): return max of 0 and
3024 scm_ilength. Fixes slurring from/to beams.
3026 * ly/lilypond-book-preamble.ly: new file.
3028 * lily/slur.cc: add inspect-index feature.
3030 2006-06-13 Graham Percival <gpermus@gmail.com>
3032 * Documentation/user/tutorial.itely: trivial fix.
3034 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
3036 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
3037 all non-event music in the parser via MAKE_SYNTAX.
3039 * lily/parser-scheme.cc: Add ly:parser-error function
3041 * scm/paper.scm: fix typo
3043 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
3047 * lily/font-config.cc (init_fontconfig): add warning if cache_file
3050 * buildscripts/output-distance.py (test_compare_signatures):
3052 (read_signature_file): use new signature format.
3054 * scm/stencil.scm (write-system-signature): simpler signature
3057 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
3060 * lily/note-spacing.cc (stem_dir_correction): don't inspect
3061 stem_end_position, but estimate instead.
3063 * lily/tuplet-bracket.cc (calc_positions): look at
3064 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3065 brackets narrower than beams.
3067 * lily/lexer.ll: set version-seen? even if version is
3070 * lily/rest.cc (y_offset_callback): bugfix: decide position
3071 override based on scm_is_number(). Fixes \rest on center staff
3074 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3075 patterns for 16th triplets.
3077 2006-06-10 Graham Percival <gpermus@gmail.com>
3079 * Documentation/user/ page.itely, global.itely: editing
3082 * Documentation/user/ various: findex -> funindex.
3084 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3086 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3087 insert extra tuplet events.
3089 2006-06-10 Graham Percival <gpermus@gmail.com>
3091 * Documentation/user/programming-interfaces.itely: add
3094 * python/convertrules.py: add annotatefoo -> annotate-foo
3097 * Documentation/user/global.itely: start editing.
3099 * Documentation/user/page.itely: major editing, new spacing
3102 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3104 * scm/define-markup-commands.scm (wordwrap-markups): use
3105 output-def 'line-width if undefined.
3107 * HACKING: trim outdated info.
3109 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3111 * scm/define-grobs.scm (all-grob-descriptions): Add
3112 line-spanner-interface to all grobs that already have
3113 text-spanner-interface or dynamic-text-spanner-interface
3115 * scm/page.scm: Rename annotate{headers,systems,page}->
3118 * input/regression/page-spacing.ly,
3119 input/regression/page-layout-manual-position.ly: idem
3121 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3123 * lily/line-spanner.cc: cleanup property list.
3125 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3126 generator expressions (2.3 compat).
3128 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3130 * lily/vertical-align-engraver.cc: Make sure that the
3131 align{Above,Below}Context properties are included in the automatic
3134 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3136 * scm/paper-system.scm (paper-system-annotate): also annotate the
3137 estimated pure-Y-extent
3139 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3141 * lily/system.cc (break_into_pieces): set the estimated height
3142 of each child system
3144 * lily/stem.cc (pure_height): new pure-Y-extent callback
3146 * lily/staff-symbol-referencer.cc (callback): don't destroy
3147 the staff-position property
3149 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3150 consider_suicide into two functions
3152 * lily/constrained-breaking.cc (resize): use the new pure
3153 callbacks to estimate the height of a system
3155 * lily/axis-group-interface.cc (pure_group_height): new
3156 side-effect-free VerticalAxisGroup height-callback
3158 * lily/align-interface.cc (get_extents_aligned_translates):
3159 split align_elements_to_extents into two functions
3160 (get_pure_child_y_translation): new function
3162 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3164 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3166 * lily/paper-score.cc: cache break_indices and columns
3168 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3170 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3172 * lily/font-config.cc (init_fontconfig): do the init if
3173 cache_file, but don't look at cache_file.
3175 * input/regression/quote-tie.ly: new file.
3177 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3178 to Head_event_tuple, so we deal gracefully with ties on
3181 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3184 2006-06-08 Graham Percival <gpermus@gmail.com>
3186 * input/test/ smart-transpose.ly, reverse-music.ly:
3187 \applyMusic to music functions update, thanks Michael!
3189 2006-06-07 Graham Percival <gpermus@gmail.com>
3191 * input/test/ add-staccato.ly, add-text-script.ly,
3192 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3193 music functions update, thanks to Michael Meixner.
3195 * Documentation/user/music-glossary.tely: small fix
3198 * Documentation/user/ various: minor additions from mailist.
3200 * Documentation/user/lilypond.tely, basic-notation.itely:
3201 small test of @funindex. (works here)
3203 * input/test/font-table.ly: reduce size to partially
3204 de-ugly version in manual.
3206 * Documentation/user/page.itely: new file (split former
3207 "global issues" into "page settings" and "non-musical
3210 * Documentation/user/ various: fix @ref{}s to match
3211 new chapter names (above).
3213 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3215 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3217 2006-06-06 Graham Percival <gpermus@gmail.com>
3219 * Documentation/user/advanced-notation.itely: add example
3220 for segno/coda on barline.
3222 * tex/texinfo.tex: merge from upstream.
3224 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3226 * scripts/lilypond-book.py (process_snippets): Argument fix.
3229 * buildscripts/builder.py:
3232 * Documentation/user/SConscript: More SCons fixes.
3234 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3236 * lily/font-config.cc (init_fontconfig): Only initialize if
3237 global cache_file is found.
3239 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3241 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3244 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3246 * VERSION (PACKAGE_NAME): release 2.9.8
3248 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3249 function. Delay ledger modifying ledgered grobs to
3250 stop_translation_timestep(), to ensure that we're ledgering
3251 according to the new spanner.
3252 (acknowledge_staff_symbol): don't check for non-NULL
3253 staff_sym->get_bound()
3255 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3258 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3261 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3262 directly from srcdir/stepmake/aclocal.m4
3264 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3267 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3269 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3271 * lily/simple-spacer.cc (get_line_configuration): add
3272 keep-inside-line rods
3273 (struct Column_desc): add constructor
3274 (struct Rod_desc): add constructor
3275 (get_line_forces): check for forced page breaks here too
3277 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3278 support/elements cycles between InstrumentNames and AxisGroups
3280 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3282 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3284 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3285 make-txt-files target.
3287 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3288 make-txt-files target.
3290 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3292 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3295 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3297 * Documentation/user/instrument-notation.itely,
3298 input/regression/breathing-sign-ancient.ly,
3299 input/test/divisiones.ly: Removed redundant property settings for
3302 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3303 fix lyrics alignment problems. They are implemented now as scheme
3304 functions that add the appropriate unicode char to the first lyric
3305 event rather than adding a separate lyric event. Minor edit of
3308 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3310 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3311 pollute src dir with built .txt files, but install directly from
3312 Documentation/topdocs/out/
3314 * buildscripts/output-distance.py
3315 (ComparisonData.create_html_result_page): put version/directories
3318 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3321 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3322 Patch by Karl Hammar
3324 * buildscripts/readlink.py: add file.
3325 Patch by Karl Hammar
3327 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3329 * lily/tuplet-number.cc (print): prevent stencil from being
3332 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3334 * scm/stencil.scm (write-system-signature): explicitly
3335 -well, superfluously- close output port.
3337 * buildscripts/output-distance.py (main): oops. Add extra argument.
3339 2006-06-05 Graham Percival <gpermus@gmail.com>
3341 * Documentation/user/music-glossary.tely: clarified example
3342 from Francisco Vila, thanks!
3344 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3346 * input/regression/spacing-section.ly: new file.
3348 * lily/input.cc (programming_error): new function.
3350 * lily/spacing-engraver.cc (try_music): new function. Accept
3351 spacing-section-event
3353 * lily/spacing-spanner.cc (set_springs): take slices of all
3354 columns for spacing.
3356 * lily/include/paper-column.hh (class Paper_column): add
3357 Paper_column::compare.
3359 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3361 * scm/define-music-types.scm (music-descriptions): add
3364 * lily/music-iterator.cc (report_event): use programming_error for
3365 sending non-event error.
3367 * lily/input.cc (programming_error): new function
3369 * buildscripts/output-distance.py (main): use compare-XXX for
3371 (main): --threshold option, default at 0.30
3373 * output-distance.py (main): add --threshold option.
3375 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3377 * scm/paper-system.scm (paper-system-annotate): fix problem when
3378 annotating an empty system
3380 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3382 * GNUmakefile.in: reinstate old web tar/copying.
3384 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3386 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3387 nothing changes. (Erik S)
3389 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3392 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3394 * scm/define-markup-commands.scm (whiteout): do not force
3395 foreground color of argument markup to black.
3397 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3398 the left of the arrow, instead of below the arrow name, so that,
3399 when two little arrows are vertically stacked, their dimensions
3400 and name should not overlap. Add a color key parameter.
3402 * scm/paper-system.scm (paper-system-annotate): Annotate
3403 next-space+next-padding instead of next-space. Annotate space
3404 between next-padding and next-space+padding, respectively, and
3405 following system extent and refpoint-Y-extent. Use colors.
3407 * scm/page.scm (annotate-page): translate annotations slightly to
3410 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3412 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3413 fix for x-staff slurs. Thanks Joe!
3415 * buildscripts/output-distance.py
3416 (SystemLink.output_expression_change_count): keep track of changed
3417 details, and dump in details html page.
3419 * input/regression/figured-bass-staff.ly: add note about setting
3420 properties in Staff context.
3422 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3423 add slurs and ties to support too.
3425 * buildscripts/output-distance.py (main): set dest_dir
3426 argument. Add --max-count option.
3428 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3430 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3431 shortcuts for special unicode chars that are useful in chant
3432 notation. Revised exisiting and added new comments.
3434 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3436 * make/mutopia-rules.make: remove duplicate recipe.
3438 2006-06-02 Werner Lemberg <wl@gnu.org>
3440 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3441 Add support for U+0132 (IJ) and U+0133 (ij).
3443 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3445 * buildscripts/output-distance.py (FileLink): new class. collect
3446 info systems from one .ly file.
3447 (FileLink.link_files_for_html): further tweaks.
3449 2006-06-02 Graham Percival <gpermus@gmail.com>
3451 * tex/texinfo.tex: partial fix for @funindex.
3453 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3456 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3458 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3460 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3461 @example too. Backportme.
3463 2006-06-02 Graham Percival <gpermus@gmail.com>
3465 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3466 from Werner Lemberg.
3468 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3470 * Documentation/user/music-glossary.tely: additional spanish
3471 updates and a lyrics fix in an example.
3473 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3475 * scm/define-grob-properties.scm: Previous patch contained
3476 spurious line from another patch not yet committed. Fixed.
3478 * scm/define-grob-properties.scm: Add missing doc strings for
3481 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3483 * buildscripts/output-distance.py
3484 (ComparisonData.write_text_result_page): separate the scores, sort
3487 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3490 * buildscripts/output-distance.py (me_path): use argv[0] for
3492 (ComparisonData.img_cell): use colored borders.
3494 * scm/stencil.scm (write-system-signature): escape newlines too.
3495 (write-system-signature): use (1,-1) interval for empty interval
3497 2006-01-01 Graham Percival <gpermus@gmail.com>
3499 * Documentation/user/music-glossary.tely: Spanish updates
3500 from Francisco Vila.
3502 * Documentation/user/lilypond-book.itely: addition from
3505 * Documentation/user/ various: edits, small additions
3508 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3510 * GNUmakefile.in (tree-lib-prefix-current):
3511 (tree-share-prefix-current): Use version number in tree, add
3514 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3516 * GNUmakefile.in: write VERSION, again.
3518 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3519 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3521 * stepmake/aclocal.m4: robuster version detection.
3523 * buildscripts/output-distance.py
3524 (ComparisonData.create_html_result_page): copy only if file
3525 exists, fixup src paths.
3527 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3529 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3531 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3532 Another datarootdir reto.
3534 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3535 available. This should be moved to postinstall-lilypond-doc.
3537 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3539 * GNUmakefile.in: simplify local-WWW-post.
3540 remove -type l from find.
3542 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3543 fixes. Don't follow symlinks.
3544 (ComparisonData.create_html_result_page): remove previous results.
3545 insert ../python in path.
3547 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3549 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3551 * config.make.in (datadir): Add datarootdir to silence autoconf.
3553 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3555 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3557 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3559 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3560 slash beams too wide.
3562 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3564 * VERSION: release 2.9.7
3566 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3568 * lily/relocate.cc (read_relocation_dir): Do not blindly
3571 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3573 * lily/parser.yy: replace THIS by PARSER
3575 * Documentation/index.html.in: add link to test-results.html page.
3577 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3579 * scm/translation-functions.scm (format-bass-figure): translate
3580 digits over 10 to the left
3582 * scm/define-markup-commands.scm (translate-scaled): new markup.
3584 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3587 * ly/engraver-init.ly: add Figured_bass_engraver
3589 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3591 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3593 * lily/score-engraver.cc (announce_grob): only note START announces.
3595 * lily/include/engraver-group.hh (Translator_group):
3596 acknowledge_hash_table_ is now drul.
3598 * lily/engraver.cc (announce_end_grob): new method.
3600 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3602 * lily/translator-dispatch-list.cc (create): take start_end argument.
3604 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3605 acknowledge_static_array_ to drul
3607 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3609 * scm/define-grob-interfaces.scm
3610 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3612 * scm/define-grobs.scm (all-grob-descriptions): add
3613 BassFigureAlignmentPositioning
3615 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3616 number stays up to date. Backportme.
3618 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3620 * Documentation/user/basic-notation.itely (Bar lines): Document
3623 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3625 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3627 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3628 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3631 * Resurrect `scons lily' build.
3633 * SConstruct (symlink_tree): Bugfix: link
3634 music-drawing-routines.ps to file iso directory.
3636 * lily/SConscript: Remove kpath-guile from LIBS.
3638 * SConstruct (libdir_package_version): Typo.
3639 (configure): Comment-out fontforge for lack of fontforge.pc .
3640 Also add libdir* to environment.
3642 2006-05-30 Graham Percival <gpermus@gmail.com>
3644 * Documentation/user/ various: minor additions from mailist and
3647 2006-05-30 Paco <fravd@ya.com>
3649 * Documentation/user/music-glossary.tely: numerous corrections and
3650 some new translations.
3652 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3656 * buildscripts/output-distance.py
3657 (ComparisonData.create_html_result_page): new routine: summarise
3658 results in HTML page with images.
3659 (ComparisonData.create_text_result_page): create summary text files too.
3661 * GNUmakefile.in (web-ext): package .signature files too. They
3664 * scm/stencil.scm (write-system-signature): typo.
3666 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3668 * scm/stencil.scm (write-system-signature): better escaping.
3669 only write signature for music systems, not for markup systems.
3671 * scm/framework-ps.scm (output-framework): dump-signatures support
3674 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3676 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3677 for -dno-point-and-click
3679 * lily/grob.cc (get_print_stencil): don't read
3680 point_and_click_global to determine whether to set grob-cause.
3682 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3684 * buildscripts/output-distance.py (main): new function.
3685 (ComparisonData): new class.
3687 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3688 careful with generating new LedgerLineSpanners.
3690 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3692 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3693 context. This fixes double ledger lines in output.
3695 * lily/system.cc (get_paper_system): remove 3 layer limit.
3697 * buildscripts/output-distance.py (SystemLink.distance): new
3698 file. Compare signatures.
3700 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3702 * lily/grob-array.cc (remove_duplicates): rename from
3703 uniq(). Sort before calling uniq() so it actually works.
3705 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3707 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3708 \version from lilypond file snippet.
3709 (Lilypond_file_snippet.ly): oops. typo.
3710 (find_toplevel_snippets): urgh. again.
3712 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3713 prevent duplicated broken items in output.
3715 * scm/framework-eps.scm (output-classic-framework): only dump if
3716 dump-signatures is set.
3718 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3720 * scm/stencil.scm (write-system-signature): new routine: write
3721 python parseable signature of a separate paper system.
3724 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3726 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3730 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3732 * translator-group.cc: send music events to engravers in
3733 non-bottom contexts.
3735 * tuplet-engraver.cc: process tuplet brackets in correct order.
3737 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3739 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3740 arg 2 might point us to a new binary (patch by Karl Hammar)
3742 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3744 * VERSION (PACKAGE_NAME): release 2.9.6
3746 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3748 * Documentation/user/*.itely: 2nd
3749 attempt: replace funindex -> findex globally.
3751 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3753 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3754 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3756 * scm/define-music-display-methods.scm: display methods for
3757 breaks. Fix \applyOutput.
3759 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3761 * Documentation/user/macros.itexi: comment out funindex expansion.
3763 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3766 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3767 Karl Hammar. Backportme.
3769 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3771 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3773 * Documentation/user/programming-interface.itely (Running a
3774 function on all layout objects): idem.
3776 * Documentation/user/introduction.itely (Automated engraving):
3777 update \applyOutput syntax
3779 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3780 remove debugging hook.
3782 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3785 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3787 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3788 TEXI2DVI_FLAGS to texi2dvi invocation.
3790 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3792 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3793 works. More work is done by iterator now, and engraver has been
3794 very much simplified.
3796 * lily/translator-group.cc: try_music is now invoked through a
3799 * lily/*-iterator.cc: Massive cleanups. Junked
3800 try_music_in_children globally. Renamed try_music to report_event,
3801 and made that method descend to a bottom context automatically.
3803 * lily/event-iterator.cc: New file.
3805 * lily/output-property-iterator.cc,
3806 lily/old-lyric-combine-music-iterator.cc: Removed.
3808 * python/convert-rules.py: Modified the syntax for \applyOutput.
3810 2006-05-23 Graham Percival <gpermus@gmail.com>
3812 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3815 * Documentation/user/ various: stuff that might have helped
3816 to fix the pdf creation, plus some minor doc additions.
3818 * Documentation/user/changing-defaults.itely: remove @b from
3819 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3821 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3823 * lily/beaming-pattern.cc (beamify): deal with negative start
3824 moments for beaming patterns.
3826 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3828 * lily/beaming-info.cc (beamify): new function: read beatLength
3829 and beatGrouping from context.
3831 * input/regression/beam-beat-grouping.ly (Module): new file.
3833 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3835 * lily/beam.cc (get_beam_segments): generate events for
3836 max_connect_ case too.
3837 (get_beam_segments): read Stem::max-beam-connect.
3839 * input/regression/beam-single-stem.ly: new file.
3841 * lily/stem.cc (set_beaming): use #f as signaling value for
3844 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3846 * lily/beam.cc (set_beaming): read clip-edges property.
3847 (calc_direction): don't suicide for single stem.
3849 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3850 argument, remove 1<<15 hack. Remove clip_edges()
3852 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3854 2006-05-21 Graham Percival <gpermus@gmail.com>
3856 * Documentation/user/basic-notation.itely: reorg.
3858 * Documentation/user/ various: minor fixes.
3860 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3862 * lily/stencil-expression.cc (register_stencil_head): opps, append
3863 to cdr of static SCM object.
3865 2006-05-19 Graham Percival <gpermus@gmail.com>
3867 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3868 update framework for command index. DOC WRITERS: use @funindex
3869 instead of @cindex @code{}.
3871 * Documentation/user/ various: replace @cindex @code{} => @funindex
3873 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3875 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3876 case positions is set manually.
3878 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3880 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3883 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3885 * Documentation/user/changing-defaults.itely (Contexts explained):
3886 use absolute dimension for @image.
3888 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3889 out image for illustration too.
3890 ($(outdir)/%.png): add more png <-> eps rules.
3892 2006-05-17 Graham Percival <gpermus@gmail.com>
3894 * Documentation/user/ various: remove trailing whitespace, cosmetic
3895 change to reduce changes produced by diff.
3897 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3899 * lily/main.cc (do_chroot_jail): correctness tweak.
3901 * python/lilylib.py (system): import subprocess in system () only.
3903 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3905 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3906 variable. Backportme.
3908 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3910 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3912 2006-05-17 Werner Lemberg <wl@gnu.org>
3914 * lily/lexer.ll (init_signature_has_table): Add
3915 `scm-scm-music-music'.
3917 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3918 (Generic_prefix_music_scm): Add rule for it.
3920 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3921 `quoted-transposition' property.
3923 * ly/music-functions-init.ly (transposedCueDuring): New function.
3925 * scm/define-music-properties.scm (all-music-properties): Updated.
3927 * Documenation/topdocs/NEWS.itely: Document it.
3929 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3931 * python/lilylib.py (system): move import subprocess to system()
3934 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3936 * VERSION (PATCH_LEVEL): release 2.9.5
3938 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3941 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3943 2006-05-16 Graham Percival <gpermus@gmail.com>
3945 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3947 * Documentation/user/ various: minor fixes.
3949 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3951 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3953 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3955 * Documentation/user/advanced-notation.itely (Instrument names):
3956 Modified obsolete instruction on how to move instrument names away
3957 from the staves. Hmm, at second thought the bug probably has been
3958 solved, so the full bug description should probably be removed.
3960 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3962 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3963 currentCommandColumn.
3965 * lily/hairpin.cc (print): also add padding for non-neighbor
3968 * scm/define-context-properties.scm
3969 (all-user-translation-properties): add hairpinToBarline
3971 * input/regression/hairpin-to-barline.ly: new file.
3973 * lily/context.cc (internal_send_stream_event): thinko fix.
3975 * lily/tie.cc (set_default_control_points): robustness fix.
3977 * python/musicxml.py (Part.interpret): don't complain about
3978 incomplete measures.
3980 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3981 new music if last_event_chord() returned None.
3983 * python/musicxml.py (Part.interpret): skip back over chord notes.
3985 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3987 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3988 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3989 lily/slash-repeat-engraver.cc,
3990 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3991 iterator sends PercentEvents
3993 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3994 rework tuplets: send start/stop events to engraver
3996 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3997 dispatchers event-source and events-below to Context
3999 2006-05-15 Graham Percival <gpermus@gmail.com>
4001 * Documentation/user/README.txt: update info for doc writers.
4003 * Documentation/user/programming-interface.itely: integrate
4004 Nicolas' fixes for chapter rewrite.
4006 * Documentation/user/ various: minor fixes.
4008 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
4010 * lily/clef-engraver.cc: cleanup.
4012 * Documentation/user/GNUmakefile: dist context-example.eps too.
4014 * lily/key-engraver.cc (create_key): use
4015 explicitKeySignatureVisibility for cancellation too.
4017 * lily/font-config.cc (init_fontconfig): don't close file if
4020 2006-05-15 Erlend Aasland <erlenda@gmail.com>
4022 * Documentation/topdocs/NEWS.tely: niente and rotation news
4024 2006-05-14 Erlend Aasland <erlenda@gmail.com>
4026 * lily/include/stencil.hh
4027 * lily/stencil.cc (rotate): new function. Makes it possible
4028 to rotate a stencil around a given offset.
4030 * lily/grob.cc (get_print_stencil): add rotation support
4032 * lily/stencil-interpret.cc (interpret_stencil_expression):
4033 add rotation support
4035 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
4037 * scm/define-grob-properties.scm: add 'rotation property
4039 * scm/define-markup-commands.scm: add rotate markup command
4041 * scm/output-ps.scm: add rotation support in PostScript backend
4043 * scm/output-svg.scm: add rotation support in SVG backend
4045 2006-05-13 Graham Percival <gpermus@gmail.com>
4047 * Documentation/user/music-glossary.itely: French correction.
4049 * Documentation/user/programming-interface.itely: major
4050 new docs, some reorg, some info from Nicolas.
4052 * Documentation/user/ various: small fixes.
4054 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
4056 * Documentation/user/programming-interface.itely (Markup
4057 programmer interface): Remove duplicate text.
4059 2006-05-12 Graham Percival <gpermus@gmail.com>
4061 * Documentation/user/context-example.eps: new file.
4063 * Documentation/user/changing-defaults.itely: set up file to
4066 * Documentation/user/programming-interface.itely: changes
4069 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
4071 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4073 2006-05-11 Graham Percival <gpermus@gmail.com>
4075 * Documentation/user/programming-interface.itely: first round of
4076 editing and merging emails from Nicolas.
4078 * Documentation/user/scheme-tutorial: minor edit.
4080 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4082 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4084 (Xml_node.message): use it.
4086 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4087 oops. Add duration argument.
4089 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4091 * lily/paper-column-engraver.cc (make_columns):
4092 * scm/define-grobs.scm: Revert my previous change and set the default
4093 in define-grobs.scm instead.
4095 2006-05-09 Graham Percival <gpermus@gmail.com>
4097 * Documentation/user/changing-defaults.itely: general editing,
4098 info about \set and \override.
4100 * Documentation/user/tweaking.itely, advanced-notation.itely:
4101 fixes from Dave Luttinen, thanks!
4103 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4105 * lily/paper-column-engraver.cc (make_columns): By default, a column
4106 needs to be breakable.
4108 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4110 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4112 (musicxml_time_to_lily): idem
4113 (musicxml_key_to_lily): idem
4114 (instrument_drumtype_dict): dict for supported drumtypes.
4115 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4116 moments and pending mm rests
4117 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4118 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4119 (musicxml_voice_to_lily_voice): add mode change.
4120 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4121 speed and less memory usage (factor 5 to 10).
4122 (convert): write -defs.ly and driver file separately so people
4123 can script their own part extraction.
4125 * python/musicxml.py (minidom_demarshal_node): new function:
4126 separate minidom handling.
4127 (lxml_demarshal_node): new function: support lxml.etree too.
4128 (Xml_node.message): new function: verbose error message, with XML
4129 path to offending node.
4130 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4131 (Part_list.generate_id_instrument_dict): new method: collect
4132 instrument names, to be able to set drum_type.
4133 (Part.interpret): handle underfull measures
4134 (Part.interpret): assign instrument names.
4136 * python/musicexp.py (Output_printer.close): new method
4137 (MusicWrapper.print_ly): new class: support other modes,
4139 (BarCheck.print_ly): new class. Support bar checks, with comments
4140 and fancy barchecks.
4141 (NoteEvent.__init__): also set drum_type for drum notes.
4142 (MultiMeasureRest.lisp_expression): dump mm rests.
4144 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4145 line-break-permission if forbidBreak is not set.
4147 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4149 * scm/define-context-properties.scm:
4150 * scm/define-grob-properties.scm:
4151 * scm/define-grobs.scm:
4152 * scm/define-music-display-methods.scm:
4153 * scm/define-music-properties.scm:
4154 * scm/define-music-types.scm:
4155 * scm/music-functions.scm:
4156 * ly/declarations-init.ly:
4157 * lily/include/constrained-breaking.hh:
4159 * lily/spaceable-grob.cc:
4160 * lily/simple-spacer.cc:
4161 * lily/paper-score.cc:
4162 * lily/paper-column.cc:
4163 * lily/paper-column-engraver.cc:
4165 * lily/gourlay-breaking.cc:
4166 * lily/constrained-breaking.cc:
4167 * python/convertrules.py:
4168 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4169 "page-break-penalty" and "line-break-permission".
4170 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4171 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4173 * lily/bar-engraver.cc:
4174 * lily/beam-engraver.cc:
4175 * lily/forbid-break-engraver.cc:
4176 * lily/ligature-engraver.cc:
4177 * lily/paper-column-engraver.cc:
4178 * lily/percent-repeat-engraver.cc:
4179 * lily/score-engraver.cc:
4180 * lily/score-engraver.hh:
4181 * lily/paper-column-engraver.hh:
4182 Inter-engraver communication regarding line breaks is done through context
4183 properties (Score.forbidBreak) instead of function calls.
4185 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4187 * VERSION (PACKAGE_NAME): release 2.9.4
4189 2006-05-08 Graham Percival <gpermus@gmail.com>
4191 * Documentation/user/working.itely: proofreading from Dave
4194 * Doucmentation/user/README.txt: updated with manual style info.
4196 * Documentation/user/ various: trim linewidth to 78 chars.
4198 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4200 * scm/define-grob-properties.scm (all-internal-grob-properties):
4201 remove chord-tremolo property.
4203 * lily/beam.cc (get_beam_segments): don't use stem position as
4204 base for broken ends.
4206 2006-05-06 Graham Percival <gpermus@gmail.com>
4208 * Documentation/user/putting.itely: proofreading from Dave
4211 * Documentation/user/ various: more reorg and clarifications.
4213 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4215 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4217 * ly/music-functions-init.ly: new function featherDurations
4219 * lily/beam.cc: read grow-direction for feathered beaming.
4221 * Documentation/topdocs/NEWS.tely (Top): typo.
4223 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4225 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4228 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4229 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4230 used by music streams.
4232 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4233 lily/stream-event.cc, lily/stream-event-scheme.cc,
4234 lily/listener.cc, lily/scheme-listener.cc,
4235 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4236 lily/include/stream-event.hh, lily/include/listener.hh,
4237 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4238 Created data structures for music streams.
4240 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4242 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4243 construction of a beam.
4246 * flower/include/std-vector.hh (default_compare): use only one comparison.
4248 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4249 (note-by-number): further attachment fixes.
4251 * scm/lily-library.scm (ordered-cons): new function.
4252 (interval-index): new function
4254 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4256 * lily/note-head.cc (get_stem_attachment): new function.
4258 * scm/define-markup-commands.scm (note-by-number): read 'style
4261 * input/regression/markup-note.ly: show note-head style option.
4263 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4266 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4268 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4270 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4272 * lily/include/constrained-breaking.hh: GCC 4 fix.
4274 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4276 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4277 Replace it with functions get_line_forces and get_line_configuration.
4278 (class Simple_spacer): Make data private.
4279 Rewrite compression algorithm to be faster and simpler.
4281 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4282 * lily/gourlay-breaking.cc (solve):
4283 * lily/constrained_breaking.cc (space_line):
4284 Change it to the new simple-spacer code.
4286 * lily/paper-score.cc (get_paper_systems):
4289 Delay breaking the systems until they are requested.
4290 (find_break_indices):
4291 Use vsize for indices.
4293 Move the "Calculating line breaks" message here.
4295 * lily/system.cc (pre_processing):
4296 Move the "Calculating line breaks" message away from here.
4297 (break_into_pieces):
4298 Allow multiple calls to this function in sequence (with touching-but-
4299 not-overlapping breakpoints).
4301 * lily/constrained-breaking.cc:
4302 Replace most of the get_XXXX functions with get_line_details.
4303 Only calculate the force for each line. Calculate configurations only
4304 for the lines we will actually use.
4305 Replace cols_ with lines_.
4307 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4309 * mf/GNUmakefile (depth): remove FC_FIND.
4311 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4313 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4315 * scm/framework-ps.scm (write-preamble): new function.
4316 (write-preamble): load mac fonts via fondu, even if gs-font-load
4319 2006-05-03 Werner Lemberg <wl@gnu.org>
4321 * mf/GNUmakefile (FC_FIND): Fix typo.
4323 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4325 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4327 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4329 * stepmake/aclocal.m4: run python-config for crosscompiling
4332 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4333 -f png for HTML, TEXINFO formats.
4335 * input/tutorial/lbook-html-test.html: new file.
4337 * lily/include/tie-formatting-problem.hh (class
4338 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4339 [column, direction]. This fixes laissez vibrer ties.
4341 * flower/include/tuple.hh (struct Tuple2): new file.
4343 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4344 $(FCMATCH), only if $(NCSB_DIR) not set.
4346 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4348 * config.make.in (DOCUMENTATION): set FCMATCH.
4350 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4352 2006-05-03 Graham Percival <gpermus@gmail.com>
4354 * Documentation/user/ various: final round of reorg.
4356 * Documentation/user/instrument-notation.itely: some more
4357 fixes from Eduardo, thanks!
4359 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4361 * VERSION (PACKAGE_NAME): release 2.9.3
4363 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4365 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4367 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4369 * scm/define-grob-properties.scm (all-user-grob-properties):
4370 Correct typo, thanks to Eduardo.
4372 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4374 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4376 * buildscripts/lilypond-words.py (F): indent fix.
4378 * input/regression/tie-arpeggio-collision.ly: new file.
4380 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4381 function: store outlines per column rank.
4383 * lily/include/tie-configuration.hh (class Tie_configuration): add
4384 column_ranks_ to specification and configuration, to distinguish
4385 between ties for different heads in arpegiated chords.
4387 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4389 * *.py: more 4 space indents.
4391 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4393 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4395 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4397 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4399 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4401 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4403 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4405 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4407 * python/convertrules.py (conv): indent 4 for python files.
4409 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4411 * Documentation/user/changing-defaults.itely (Creating contexts):
4412 Clarify \new semantics.
4414 2006-04-28 Graham Percival <gpermus@gmail.com>
4416 * Documentation/user/ various: major new sections in the
4417 Learning manual, slight reorg elsewhere.
4419 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4421 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4423 * scm/framework-ps.scm (output-framework): remove PageMedia
4425 2006-04-27 Graham Percival <gpermus@gmail.com>
4427 * Documentation/user/ tweaks.itely, working.itely: new
4428 files, being more advanced "learning manual" chapters.
4430 * Documentation/user/ tutorial, putting, lilypond: reorg.
4432 2006-04-26 Graham Percival <gpermus@gmail.com>
4434 * input/regression/lyric-combine-polyphonic.ly: fixed test
4435 (no more "can't find context `one'" error).
4437 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4439 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4441 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4443 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4445 * lily/relocate.cc (read_relocation_dir): new function.
4447 2006-04-26 Graham Percival <gpermus@gmail.com>
4449 * Documentation/user/instrument-notation.itely: a few more fixes
4450 from Eduardo, thanks!
4452 * Documentation/user/README.txt: new file; contains info on
4453 style that used to be in lilypond.tely.
4455 * Documentation/user/ various: first round of doc reorg.
4457 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4458 graphic; this probably causes problems on some pdf
4459 viewers, notably Adobe Acrobat.
4461 2006-04-24 Graham Percival <gpermus@gmail.com>
4463 * Documentation/user/instrument-notation.itely: many alterations
4464 to Vocal music, from Eduardo Viera.
4466 2006-04-23 Graham Percival <gpermus@gmail.com>
4468 * Documentation/user/instrument-notation.itely: fix \new
4469 instead of \context problem.
4471 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4473 * lily/relocate.cc (expand_environment_variables): new function.
4475 (read_relocation_file): id.
4477 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4479 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4481 * ly/engraver-init.ly: remove old comments from TabVoice
4483 2006-04-20 Graham Percival <gpermus@gmail.com>
4485 * Documentation/user/instrument-notation.itely: added Erlend's
4486 latest doc patch, thanks!
4488 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4490 * lily/include/slur.hh:
4492 * lily/phrasing-slur-engraver.cc:
4493 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4494 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4495 Slur_engraver:: and putting it in
4496 Slur::auxiliary_acknowledge_extra_object ().
4498 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4500 * lily/note-collision.cc: fix a comment
4502 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4504 * stepmake/bin/add-html-footer.py: fix footer position in
4505 generated html files: before </body> and </html> tags.
4507 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4509 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4510 Earlier successive `make' commands finally compiled ok.
4512 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4514 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4516 * lily/include/stem-tremolo.hh:
4517 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4521 * lily/include/lookup.hh: add rotated_box ()
4523 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4525 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4526 been generated. Fixes "can't get `--help'" bug after make clean.
4528 * THANKS: alphabetize contributors.
4530 2006-04-17 Graham Percival <gpermus@gmail.com>
4532 * Documentation/user/instrument-notation.itely: added Erlend's
4533 tabs and banjo doc patch. Thanks!
4535 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4537 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4539 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4541 * scm/output-lib.scm: add some more predefined string tunings.
4543 * Documentation/user/instrument-notation.itely: and doc them.
4545 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4547 * ly/engraver.ly: Remove obsolete comments.
4549 * ly/gregorian-init.ly: Define default layout block.
4551 * input/puer-fragment.ly: Updated and extended.
4553 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4555 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4556 pdf conversion behaviour.
4558 * flower/file-name.cc (dir_name)
4559 (get_working_directory): Move from relocate.cc.
4561 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4563 * lily/relocate.cc: Encapsulate sys/stat.h in
4566 2006-04-14 Graham Percival <gpermus@gmail.com>
4568 * Documentation/user/ various: small updates from Cameron
4569 and Juergen, thanks!
4571 * Documentation/user/ various: small updates of my own.
4573 * THANKS: 2.7 -> 2.8.
4575 2006-04-11 Graham Percival <gpermus@gmail.com>
4577 * scm/define-context-properties.scm: typo.
4579 * Documentation/user/ : many more small updates.
4581 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4583 * scm/define-music-types.scm: disposed "docme".
4585 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4587 * lily/hairpin.cc: make niente circles a bit smaller.
4589 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4591 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4592 get-pfa and get-*-fonts targets.
4594 2006-04-10 Graham Percival <gpermus@gmail.com>
4596 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4597 music-glossary, programming-interface: more minor fixes
4600 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4602 * scm/define-context-properties.scm: another old \property update.
4603 This time tested for compiling!
4605 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4607 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4609 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4611 * scm/define-context-properties.scm (all-user-translation-properties):
4612 * Documentation/user/global.itely (Page formatting): Compile fix.
4614 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4616 * Documentation/user/advanced-notation.itely (Polymetric
4617 notation): Update the example to use the "+" symbol and add link
4618 to input/test/compound-time.ly.
4620 2006-04-08 Graham Percival <gpermus@gmail.com>
4622 * scm/define-grob-properties.scm: clarify docs for #'direction.
4624 * scm/define-context-properties.scm: update old \property override.
4626 * Documentation/user/ advanced-notation, global, lilypond-book:
4627 more minor doc updates.
4629 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4631 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4633 * scm/backend-library.scm (search-gs): oops.
4635 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4637 * scripts/lilypond-book.py (output): use base, not filename for href.
4639 * scm/backend-library.scm: only look for gs.
4641 * scripts/lilypond-book.py (output): fix printfilename.
4643 * lily/parser.yy (music_function_musicless_prefix): fold together
4644 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4646 * lily/slur.cc (print): only set font-size if not set yet.
4648 * lily/slur-configuration.cc (add_score): improved layout of debug
4651 2006-04-05 David Feuer <David.Feuer@gmail.com>
4653 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4654 (draw_circle): Hopefully fixed regression.
4655 Improved documentation for several procedures.
4657 2006-03-04 Werner Lemberg <wl@gnu.org>
4659 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4661 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4663 * scripts/musicxml2ly.py (bindir): add dynamic
4666 2006-04-04 Graham Percival <gpermus@gmail.com>
4668 * Documentation/user/ basic-notation, advanced-notation, putting,
4669 instrument-notation, invoking, lilypond, THANKS: another ream of small
4670 fixes from the Doc Helpers.
4672 2006-04-03 David Feuer <David.Feuer@gmail.com>
4674 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4676 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4678 * Cleaned up interfaces between PostScript and Scheme, and moved
4679 computations from PostScript to Scheme:
4681 * music-drawing-routines.ps
4682 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4683 with stroke_and_fill throughout.
4684 (euclidean_length, print_letter, draw_box): Deleted unused
4685 procedures. If someone needs draw_box, implement it using
4686 draw_round_box; don't duplicate code.
4687 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4688 Refactored/cleaned up interfaces.
4691 * output-ps.scm: reordered arguments to PostScript functions to
4692 match new interfaces
4693 (glyph-string): Rewrote glyph-string.
4694 (grob-cause): Replaced string-append with format.
4695 (repeat-slash): Rewrote to do computation here.
4696 (round-filled-box): Rewrote to do computation here.
4698 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4700 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4702 * stepmake/stepmake/toplevel- targets.make: print help info about
4705 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4707 * input/regression/hairpin-circled.ly: new file
4709 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4711 * lily/hairpin.cc (print): add support for circled tip
4713 * scm/define-grob-properties.scm: add circled-tip parameter
4715 * scm/define-grobs.scm: init circled-tip to false
4717 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4719 * scm/music-functions.scm (quote-substitute): set
4722 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4724 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4727 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4729 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4731 2006-03-31 David Feuer <david.feuer@gmail.com>
4733 * scm/framework-ps.scm:
4735 * scm/output-ps.scm: glyph-string now produces smaller, more
4736 readable, and probably faster PostScript. Several findfont
4737 scalefont setfont instances changed to selectfont
4738 Hacked-up string-appends changed to formats.
4740 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4742 2006-03-30 Graham Percival <gpermus@gmail.com>
4744 * scm/lily-library.scm: make "no version" warning message more polite.
4746 * lily/music.cc: add double quotes to failed octave check.
4748 * Documentation/user/ advanced-notation, changing-defaults,
4749 instrument-notation, invoking, music-glossary: whole bunch of minor
4752 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4754 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4755 $(buildscriptdir) iso. depth.
4757 * VERSION (PACKAGE_NAME): release 2.9.1
4759 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4761 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4763 * VERSION (PATCH_LEVEL): bump version number.
4765 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4768 * lily/pango-font.cc (pango_item_string_stencil): use
4771 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4772 $(outdir)/emmentaler-%.svg): remove canary.
4774 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4775 glyphnames if we have a ttf font.
4777 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4779 * Documentation/user/advanced-notation.itely (Font selection):
4780 Corrected reference to the font-family-override.ly example.
4782 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4784 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4785 stem-tremolo object in the stem (or else the stem might not be
4788 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4790 * lily/ttf.cc (print_trailer): only print existing glyphs.
4792 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4794 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4795 position the tremolo based on the position of the notehead.
4797 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4798 notes and update the texidoc line with the new positioning rules.
4800 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4802 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4804 * scripts/lilypond-book.py (Module): set default for linewidth if
4807 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4809 * VERSION (PACKAGE_NAME): release 2.9.0.
4811 * input/regression/stem-tremolo-position.ly: new file.
4813 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4815 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4817 * lily/stem-tremolo.cc (print): position
4818 the tremolo depending only on the end of the stem
4819 and not on the notehead
4820 (raw_stencil): center, on the middle staff line, the
4821 flag that is closest to the end of the stem (previously
4823 (calc_width): add this callback to shorten a tremolo when
4824 it is beamed or it is stemup with a flag
4825 (style): add this callback to make a tremolo rectangular when
4826 it is beamed or it is stemup with a flag
4827 (rotated_box): this is like Lookup::beam but makes a rotated
4828 rectangle instead of a parallelogram
4830 * lily/stem.cc (calc_stem_info): make sure the stem
4831 is long enough to fit the tremolo
4832 (calc-length): reduce the length of tremolo stems since the
4833 tremolo code is now capable of better positioning
4835 * scm/define-grobs.scm: make calc_width the default beam-width
4836 callback for stem-tremolo and add the style callback
4838 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4840 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4843 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4845 * lily/ttf.cc (make_index_to_charcode_map): restore old
4848 2006-03-28 Werner Lemberg <wl@gnu.org>
4850 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4852 2006-03-28 Graham Percival <gpermus@gmail.com>
4854 * THANKS: update for 2.9, add section for Documentation helpers.
4856 * Documentation/topdocs/NEWS.tely: compile fix.
4858 * Documentation/user/ basic-notation, global, advanced-notation,
4859 examples.itely: minor fixes from mailist.
4861 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4863 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4866 * lily/ttf.cc (print_trailer): use it.
4868 * lily/pango-font.cc (get_unicode_name): new function.
4870 * lily/ttf.cc (make_index_to_charcode_map): move function from
4872 (print_trailer): substitute uniXXXX name if applicable.
4874 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4875 (pango_item_string_stencil): use it to generate uniXXXX names.
4877 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4878 note heads, for uniform widths in shape note output.
4879 (overdone_heads): hmm. remove them again.
4881 * scripts/lilypond-book.py (output): add links to filenames.
4883 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4885 * lily/note-collision.cc (get_clash_groups): only consider when
4886 Note_column::dir <> CENTER.
4888 * scripts/lilypond-book.py (get_option_parser): init output_name
4891 2006-03-24 Graham Percival <gpermus@gmail.com>
4893 * Documentation/topdocs/NEWS.tely: add @end itemize
4895 * Documentation/user/ global, advanced-notation: minor
4898 2006-03-23 Graham Percival <gpermus@gmail.com>
4900 * Documentation/user/ lilypond.tely, music-glossary,
4901 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4903 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4905 * mf/GNUmakefile: don't install .enc files.
4907 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4909 * VERSION (PATCH_LEVEL): bump to 2.9.0
4911 2006-03-22 Graham Percival <gpermus@gmail.com>
4913 * Documentation/user/advanced-notation.itely: minor fixes
4916 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4918 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4920 * branch lilypond_2_8
4922 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4924 * scripts/lilypond-book.py (samefile): new function, for windoze
4927 2006-03-21 Graham Percival <gpermus@gmail.com>
4929 * ly/engraver-init.ly: add info about StaffGroup.
4931 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4933 * input/regression/stem-direction-context.ly: idem.
4935 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4939 * input/regression/page-layout-twopass.ly: comment out \markup so
4942 * lily/instrument-name-engraver.cc (finalize): add to instrument
4943 name global System. This also fixes chopped instrument names, but
4944 doesn't crash when there are slurs/beams.
4946 * lily/slur-configuration.cc (add_score): disallow negative slur
4949 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4951 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4953 * lily/instrument-name-engraver.cc (process_music): kludge: add
4954 InstrumentName spanner to axis group of left bound. Fixes chopped
4955 off instrument names in EPS images.
4957 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4959 * scripts/abc2ly.py (option_parser): update to 2.7.40
4961 2006-03-20 Graham Percival <gpermus@gmail.com>
4963 * THANKS: move small doc contributors to SUGGESTIONS.
4965 * Documentation/user/ basic-notation, advanced-notation,
4966 global: small changes from mailist.
4968 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4970 * Documentation/user/advanced-notation.itely (Text marks): update
4971 for new rehearsalMarkAlignSymbol convention.
4973 * VERSION (PATCH_LEVEL): bump version.
4975 * input/test/instrument-name-align.ly: new file.
4977 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4979 * input/test/instrument-name-align.ly: new file. Document how to
4980 align instrument names.
4982 * lily/mark-engraver.cc: remove properties.
4984 * scm/define-context-properties.scm
4985 (all-user-translation-properties): remove align symbol properties
4986 for barnumber/reh. mark.
4988 * lily/break-align-interface.cc (self_align_callback): new
4989 interface, new function. Look at complete alignment. This handles
4990 tunable break alignments in case break-align-symbols are missing.
4992 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4994 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4996 * python/convertrules.py (conv): mark/bar number alignment rule.
4998 * lily/break-align-interface.cc (calc_positioning_done): also
4999 store offset from last visible break-alignment to its
5000 neighbor. This makes alignment on non-visible objects more reliable.
5002 * po/lilypond.pot (Module): ran po-replace.
5004 * input/regression/tie-single-manual.ly (Module): new file.
5006 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5007 look at has_manual_position_.
5008 (from_ties): set has_manual_position_ if tie has staff-position set.
5010 * lily/tuplet-bracket.cc (calc_positions): idem.
5012 * lily/tuplet-number.cc (print): don't print tupletnumber if it
5015 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
5017 * scm/define-markup-commands.scm (smallCaps): new markup command
5018 for turning a text to small caps using smaller font size and upper
5021 2006-03-17 Graham Percival <gpermus@gmail.com>
5023 * Documentation/user/ examples, instrument-notation,
5024 advnaced-notation: minor fixes from mailist.
5026 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5028 * Documentation/user/tutorial.itely (First steps): change example
5031 2006-03-17 Graham Percival <gpermus@gmail.com>
5033 * Documentation/user/ examples, advanced: minor changes from mailist.
5035 * THANKS: add Geoff Horton, for documentation stuff.
5037 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5039 * python/lilylib.py (system): revert have_select kludge.
5041 * Documentation/user/tutorial.itely (Commenting input files):
5042 update version numbers in doc.
5044 * scm/define-grob-interfaces.scm (multi-measure-interface): add
5045 bound-padding to multi-measure-interface
5047 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5049 * input/test/engraver-example.ily: update version number.
5051 * VERSION (PACKAGE_NAME): release 2.7.39
5053 * lily/note-spacing.cc (get_spacing): heighten threshold where
5054 accidentals/arpeggios influence previous spacing fully.
5056 * lily/rest.cc (y_offset_callback): only use direction if
5057 staff-position wasn't set before.
5059 * lily/bar-number-engraver.cc: add support for
5060 barNumberAlignSymbol.
5061 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
5063 * lily/pointer-group-interface.cc (set_ordered): new function.
5064 (add_unordered_grob): new function.
5066 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5067 to ordered, unless the opposite has been proved. This fixes
5068 random reordering of large object groups across linebreaks,
5071 * lily/main.cc (do_chroot_jail): printf format fix.
5073 * lily/tie-formatting-problem.cc (generate_configuration):
5074 multiply y-shift for dot with direction.
5076 * scm/define-markup-commands.scm (note-by-number): put (magstep
5077 size) in y-attach too.
5079 * Documentation/topdocs/NEWS.tely (Top): show override.
5081 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5082 direction for stems.
5084 2006-03-15 Graham Percival <gpermus@gmail.com>
5086 * Documentation/user/ changing-defaults, global: minor
5089 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5091 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5093 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5094 breakable items after uniformly stretched notes.
5096 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5097 outline with outer edge of note heads. This prevents infinity
5098 problems with tied whole notes.
5100 * scripts/lilypond-book.py (do_file): use os.popen
5102 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5104 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5106 * Documentation/user/invoking.itely: Add ragged-right to bug report
5109 2006-03-14 Graham Percival <gpermus@gmail.com>
5111 * Documentation/user/global.itely: small fix from mailist.
5113 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5115 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5116 file descriptor returned by tempfile.mkstemp() when writing
5117 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5120 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5122 * po/fi.po: newline bugfix.
5124 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5126 * scm/paper.scm (paper-alist): Rounding fixes.
5128 2006-03-13 Graham Percival <gpermus@gmail.com>
5130 * Documentation/user/ changing-defaults, instrument-notation,
5131 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5133 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5137 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5139 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5142 * python/lilylib.py (print_environment): move ps_page_count to
5145 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5147 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5149 * scm/framework-ps.scm (embed-document): new function. Use to
5152 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5154 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5156 * Documentation/user/instrument-notation.itely (Setting simple
5157 songs): Added \book{...} around the full example, so the separate
5158 markups are included in the printed example.
5160 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5162 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5165 * python/lilylib.py (system): rewrite system() using
5166 subprocess. Remove >& redirection trickery.
5168 2006-03-11 Graham Percival <gpermus@gmail.com>
5170 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5171 notation-appendices.itely: minor fixes from mailist.
5173 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5175 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5176 unsplit man also needs images.
5178 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5180 * VERSION (PACKAGE_NAME): 2.7.38 released.
5182 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5184 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5187 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5189 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5190 respects the Score.skipTypesetting property.
5192 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5194 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5195 Prolog. No %%EOF after CFF file.
5197 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5199 * lily/constrained-breaking.cc (get_max_systems): used to return a
5201 (combine_demerits): use pointers to reduce copying data
5202 (calc_subproblem): idem
5203 (get_page_penalty): add page turn penalties
5205 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5207 * Documentation/user/invoking.itely (Invoking lilypond): better
5208 explanation of -e usage.
5210 * lily/main.cc (main_with_guile): don't append to
5211 init_scheme_code_string
5213 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5215 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5217 * scripts/convert-ly.py (do_options): don't print help for
5220 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5221 @code and @example. Update from texinfo.tex from CVS.
5223 2006-03-08 Graham Percival <gpermus@gmail.com>
5225 * Documentation/user/scheme-tutorial.itely: clarifies distances
5226 measured in staff-spaces.
5228 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5230 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5231 consider[k] is true.
5233 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5235 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5236 consider columns that have originals. Unifies spacing for mm
5237 rests around line breaks.
5239 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5240 (set_text_rods): idem.
5241 (calculate_spacing_rods): new function: share code between
5242 set_text_rods and set_spacing_rods.
5243 (set_text_rods): take extents of bounds into account.
5245 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5247 * Documentation/user/basic-notation.itely (Writing music in
5248 parallel): don't use relative.
5250 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5252 * ly/music-functions-init.ly (Module): add shiftDurations
5254 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5256 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5258 * ly/engraver-init.ly: init vocalName to nil.
5260 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5262 * scm/music-functions.scm (music->make-music): bugfix,
5263 KeyChangeEvents are now handled correctly.
5265 * scripts/lilypond-book.py: Add --debug option.
5267 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5269 * python/lilylib.py: add tempfile.
5271 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5273 * VERSION (PACKAGE_NAME): release 2.7.37
5275 * python/lilylib.py (ps_page_count): remove make_ps_images().
5276 (ps_page_count): remove mkdir_p
5277 (system): remove cleanup_temp.
5278 (exit): remove lilypond_version_(check)
5279 (error_log): remove pseudo_filter_p
5284 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5287 * lily/accidental-engraver.cc (make_standard_accidental): only add
5288 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5290 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5291 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5292 Make incompatibilities.
5294 * scm/output-ps.scm (grob-cause): replace backslashes by /
5295 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5297 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5299 * cygwin/GNUmakefile: Install fixes.
5301 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5303 * lily/note-head.cc (head::get_balltype): Compile fix.
5305 * flower/file-name.cc (dos_to_posix): Flower string fix.
5307 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5309 * python/lilylib.py: pychecker cleanups.
5311 * scripts/lilypond-book.py
5312 (Lilypond_snippet.output_print_filename): pychecker cleanups
5314 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5316 * python/lilylib.py (underscore): remove identify() , warranty()
5318 * ps/music-drawing-routines.ps: change Border routine for GSView
5321 * lily/stem.cc (height): use quantize-positions. This triggers
5322 set_stem_lengths, so scripts on beamed stems are handled correctly.
5324 * lily/side-position-interface.cc (aligned_side): check if edges
5325 of script are inside staff. Fixes accent of edge of the staff.
5327 * input/regression/staccato-pos.ly: more examples.
5329 * stepmake/aclocal.m4 (depth): fix bashism.
5331 * lily/lyric-combine-music-iterator.cc: move from
5332 new-lyric-combine-iterator.cc
5333 (process): add pending_grace_lyric_ member to delay lyrics on
5336 * lily/system-start-text.cc (print): suicide if we don't have any
5337 elements. Fixes hara kiri'd instrument names.
5339 * scripts/mup2ly.py (Module): remove.
5341 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5343 * Documentation/user/global.itely (A single music expression):
5344 close @lilypond properly
5346 * lily/volta-bracket.cc (modify_edge_height): change from
5347 after_line_breaking_callback. Suicide last bracket if appropriate.
5349 * python/lilylib.py: strip getopt support
5351 * scripts/etf2ly.py (do_options): use optparse
5353 * scripts/midi2ly.py: optparse, strip lilylib copy.
5355 * scripts/abc2ly.py (voices): use optparse.
5357 * stepmake/stepmake/generic-vars.make: new function absdir.
5359 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5361 * scripts/lilypond-book.py (find_file): use global_options for
5364 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5367 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5369 * python/lilylib.py (get_global_option): ughness for extracting
5370 global options from lilylib.
5371 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5373 * scripts/lilypond-book.py (get_option_parser): use optparse for
5374 option handling. Put options in global_options variable.
5376 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5378 * Documentation/index.html.in: clarify.
5380 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5382 * scm/layout-page-layout.scm (write-page-breaks): add a
5383 music-system-heights property to the page layout output.
5385 * scm/page.scm (make-page-stencil): take footer into account when
5386 computing the 'space-left page property
5387 (annotate-space-left): take footer into account when annonating
5390 2006-02-28 Graham Percival <gpermus@gmail.com>
5392 * Documentation/user/ advanced-notation, global: more (final)
5393 docs for music expressions, removed special fermatas.
5395 2006-02-27 Graham Percival <gpermus@gmail.com>
5397 * Documentation/user/ basic-notation, global: minor changes
5400 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5402 * scm/framework-ps.scm:
5403 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5404 layer for inf? and nan? from framework-ps to lily-library.
5406 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5408 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5409 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5411 * buildscripts/substitute-encoding.py (Module): remove file.
5413 * mf/GNUmakefile: more PFA strippage.
5415 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5417 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5420 * scm/framework-ps.scm: remove font name munging.
5422 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5424 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5426 * scm/markup.scm (define-markup-command): change
5427 def-markup-command to define-markup-command
5429 * scm/music-functions.scm (define-music-function): change
5430 def-music-function to define-music-function.
5432 * python/convertrules.py (conv): rules for def-music-function
5433 and def-markup-commands
5435 * Documentation/user/programming-interface.itely,
5436 input/no-notation/display-lily-tests.ly,
5437 input/regression/lily-in-scheme.ly,
5438 input/regression/markup-user.ly,
5439 input/regression/music-function.ly, input/regression/tie-chord.ly,
5440 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5441 ly/gregorian-init.ly: use new macro names (define-music-function,
5442 define-markup-command).
5444 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5446 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5447 (output): add comments to lp-book latex output.
5449 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5452 2006-02-23 Graham Percival <gpermus@gmail.com>
5454 * Documentation/user/ tutorial, global: minor changes.
5456 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5458 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5459 blocks (for make 3.80)
5461 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5462 \notemode so that user should not have to explicitely type it.
5464 * scm/define-music-display-methods.scm: various
5465 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5468 * input/no-notation/display-lily-tests.ly: new tests for
5469 \applyOutput and \applyContext
5471 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5473 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5474 changed it slightly so that the number of systems returned by
5475 solve () will be the same as the last value passed to resize
5476 (). I've also added more documentation, removed casts, fixed style
5477 problems and put in some recovery if constraints aren't satisfied."
5479 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5481 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5482 for emacs < 22 compatibility.
5483 (count-rexp): Use it.
5484 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5485 substring juggling (Milan Zamazal).
5487 2006-02-23 Graham Percival <gpermus@gmail.com>
5489 * Documentation/user/ basic-notation, advanced-notation,
5490 global.itely, invoking.itely, tutorial,itely:
5491 minor fixes from mailist.
5493 * scm/define-markup-commands.scm: improve docs of \filled-box.
5495 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5497 * Documentation/index.html.in: changes concern the previous release.
5499 * input/regression/+.ly: cultivate typographical terminology.
5501 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5503 * scm/define-grob-interfaces.scm (parentheses-interface): add
5504 padding to parentheses-interface.
5506 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5507 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5509 * VERSION (PATCH_LEVEL): release 2.7.36
5511 * lily/slur.cc: add avoid-slur (ugh.)
5513 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5514 intersection gets smaller. This fixes slurs over extreme points.
5516 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5517 stems with neutral-direction set.
5519 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5521 * lily/open-type-font.cc (load_table): format error.
5523 * lily/change-iterator.cc (process): format fix.
5525 * flower/include/international.hh (_f): idem.
5527 * flower/include/std-string.hh: add format printf attribute.
5529 * scm/define-grobs.scm (all-grob-descriptions): height of all
5530 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5532 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5535 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5537 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5539 * input/regression/: upgraded syntax for some files.
5541 * THANKS: Add bughunters.
5543 2006-02-22 Graham Percival <gpermus@gmail.com>
5545 * Documentation/user/ invoking.itely, advanced-notation.itely,
5546 global.itely: long-awaited "let's make chapter 10 not suck"
5547 update. Rearrange chapter 10; now called "global issues",
5548 addresses file structure, etc. Some info from other files
5549 moved into global.itely.
5551 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5553 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5554 catch trill-span-event notes.
5556 * Documentation/user/examples.itely (Ancient notation templates): typo.
5559 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5561 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5563 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5565 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5567 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5568 froum Laissez_vibrer_engraver.
5570 * ly/declarations-init.ly (repeatTie): add \repeatTie
5572 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5574 * scm/define-grob-properties.scm (all-user-grob-properties): add
5575 head-direction property.
5577 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5578 from_lv_ties. Take head direction argument.
5580 * lily/semi-tie-column.cc: rename from
5581 laissez-vibrer-tie-column.cc. Rename class too.
5583 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5586 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5588 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5590 (find_breaks): idem.
5592 2006-02-21 Graham Percival <gpermus@gmail.com>
5594 * Documentation/user/advanced-notation.itely: fixed make-moment]
5597 * Documentation/user/basic-notation.itely: more clarification to
5600 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5602 * lily/include/constrained-breaking.hh (class
5603 Constrained_breaking): new file.
5605 * lily/constrained-breaking.cc (resize): new file.
5607 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5609 * Documentation/user/advanced-notation.itely (Clusters): insert
5612 * lily/tie-column.cc (calc_positioning_done): support for
5615 * lily/tie-formatting-problem.cc
5616 (generate_extremal_tie_variations): factor out.
5617 (score_ties_configuration): annotate all tie
5618 (print_ties_configuration): new routine.
5619 (generate_configuration): nudge extremal ties outside of the head
5621 (score_ties_configuration): oops. convert to staff-space before
5622 determining position symmetry.
5624 2006-02-20 Graham Percival <gpermus@gmail.com>
5626 * Documentation/user/*-notation.itely: misc minor editing,
5627 shifting doc sections around.
5629 * Documentation/user/*-notation-itely, global.itely,
5630 changing-defaults.itely: added new stuff from NEWS.
5632 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5636 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5639 lilypond --verbose for lp-book.
5641 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5642 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5644 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5645 $(buildscript-dir) iso. absolute depth.
5647 * buildscripts/genicon.py (dir): thinko.
5649 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5651 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5653 * scm/output-lib.scm: swap darkcyan/darkyellow
5655 * THANKS: Add bughunters.
5657 2006-02-19 Graham Percival <gpermus@gmail.com>
5659 * Documentation/user/programming-interfaces.itely: fixed example.
5661 * Documentation/user/instrument-notation.itely: fix @{ @}.
5663 * scm/script.scm: add avoid-slur for \open.
5665 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5667 * lily/tie-formatting-problem.cc (score_configuration): use
5668 sliding score for min-length.
5670 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5671 spaghetti for icons.
5673 * buildscripts/genicon.py (program_name): new file.
5675 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5677 (generate_configuration): for small ties, also look for collisions
5678 at Y + DIR*h + DELTA_Y.
5679 (get_variations): consider variation for dot positions too.
5681 * lily/side-position-interface.cc (aligned_side): take abs for
5682 quantized rounded position. Fixes tenuto below staff.
5684 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5685 markers when necessary.
5687 * lily/program-option.cc (internal_set_option): add
5688 strict_infinity_checking option.
5690 * scm/output-lib.scm (cyan): swap yellow and cyan.
5692 2006-02-19 Graham Percival <gpermus@gmail.com>
5694 * darwin.patch: trivial linenumber update.
5696 * Documentation/user/ {various}: `\context foo = named' changed
5697 to `\new foo = "name"' in docs.
5699 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5701 * scm/stencil.scm (annotate-y-interval): use it.
5703 * scm/lily-library.scm (interval-sane?): new function.
5705 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5708 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5711 * flower/include/std-vector.hh (iterof): add iterof macro.
5713 * lily/enclosing-bracket.cc (width): new function.
5715 * lily/align-interface.cc (align_elements_to_extents): reinstate
5718 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5720 * Documentation/index.html.in: fix spelling: thankyous.
5722 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5724 * lily/lyric-hyphen.cc: typo.
5726 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5728 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5729 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5732 * VERSION: release 2.7.35
5734 * lily/beam.cc (get_default_dir): oops. Take abs () for
5736 (get_default_dir): use extreme position criterion only in absence
5737 of forced stem directions.
5739 * VERSION (PATCH_LEVEL): bump VERSION.
5741 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5742 dependencies. Necessary for -jX builds.
5744 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5746 * lily/relocate.cc (setup_paths): Yet another const fix.
5748 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5750 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5752 * lily/relocate.cc (setup_paths): oops.
5754 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5756 * Documentation/index.html.in: order links: html before PDF.
5758 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5760 * lily/tie-column-format.cc (Module): remove.
5762 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5764 * lily/text-spanner.cc (print): idem.
5766 * lily/dynamic-text-spanner.cc (print): only print line if longer
5769 * lily/auto-change-iterator.cc (change_to): formatting.
5771 * lily/beam.cc (get_default_dir): take extreme note head as input
5774 * lily/tie.cc (get_default_dir): only look directions for visible
5777 * lily/side-position-interface.cc (aligned_side): oops. Don't
5778 mutiply with direction. This fixes quantized (staccato, tenuto)
5779 scripts below notes.
5781 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5782 direction. Fixes c-lyrics-center-align.ly
5784 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5786 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5789 * lily/std-string.cc:
5790 * lily/include/std-vector.hh (split_string): Move and rename from
5791 lily/include/misc.hh, lily/misc.cc. Update callers.
5793 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5795 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5797 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5799 * flower/test-file.cc: New file.
5801 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5804 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5806 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5808 * flower/include/file-storage.hh: remove file.
5810 * lily/include/midi-item.hh (class Midi_track): idem.
5812 * lily/include/source.hh (class Sources): idem.
5814 * lily/include/performance.hh (class Performance): use vector
5817 * flower/include/cons.hh (class Cons): remove file.
5819 * flower/include/flower-proto.hh: remove template cruft.
5821 * lily/include/font-metric.hh: use size_t not vsize for indices.
5823 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5826 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5828 * lily/include/paper-book.hh (class Paper_book):
5829 make get_system_specs() public.
5831 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5832 the force=10000 case if we don't have a current-best.
5834 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5837 * flower/include/flower-proto.hh: remove outdated templates.
5839 * scm/page.scm: use annotate-spacing
5841 2006-02-15 Graham Percival <gpermus@gmail.com>
5843 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5845 * THANKS: moved Erlend Aasland to contributors.
5847 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5849 * config.hh.in: remove HAVE_PANGO_16
5851 * lily/tuplet-bracket.cc (calc_positions): multiply with
5852 staff-space for beam case. This fixes tuplets+beams on scaled
5855 * config.hh.in: remove all Kpathsea related defines.
5857 * lily/dot-column.cc (side_position): reach stem via dots->
5858 head->stem. Inspect all stems for dot collisions.
5860 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5863 * lily/bar-number-engraver.cc (process_music): document function
5866 * lily/score.cc (default_rendering): add pscore, not systems
5869 * lily/paper-book.cc (get_system_specs): separate generation of
5872 * flower/include/std-vector.hh: don't include config.hh
5874 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5876 * flower/include/std-vector.hh: Better wrapper compatibility with
5879 * flower/include/flower-proto.hh: Remove cheap forward declaration
5882 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5884 2006-02-14 Graham Percival <gpermus@gmail.com>
5886 * Documentation/user/invoking.itely: add warning about command line.
5888 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5890 * lily/include/lily-proto.hh: add Prob, rm Page.
5892 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5894 * VERSION: release 2.7.34
5896 * lily/relocate.cc (framework_relocation): show canary if
5897 GHOSTSCRIPT_VERSION undefined.
5899 * GNUmakefile.in: remove $(VERSION) symlink.
5901 * lily/relocate.cc (setup_paths): add +
5903 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5905 * Documentation/index.html.in: specify sizes for all big HTML pages.
5907 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5909 * config.hh.in: remove @FRAMEWORKDIR@
5911 * lily/system-start-text.cc (get_stencil): new file: separate out
5912 system-start-delimiter text support.
5914 * input/**ly: replace \context with \new where appropriate.
5918 * lily/slur-scoring.cc (get_base_attachments): use
5919 robust_relative_extent. This fixes problems with empty paper-columns.
5921 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5923 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5925 * scm/define-music-properties.scm (all-music-properties):
5926 create-new property.
5928 * lily/context-specced-music-iterator.cc (construct_children):
5929 inspect 'create-new property iso. magical $uniqueContextId context
5932 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5934 * lily/context-key-manager.cc (Module): new file. Encapsulate
5935 object key generation.
5937 * lily/include/context-key-manager.hh (Module): new file.
5939 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5941 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5944 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5946 (reloc_b): excise --enable-framework-dir
5948 * lily/relocate.cc (framework_relocation): use getenv
5949 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5951 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5953 * flower/include/std-string.hh:
5954 * flower/include/std-vector.hh: Finish std:: conversion; move
5955 flower extensions from std:: namespace. Update users.
5957 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5958 their expansion to vector<*>. Update users.
5960 2006-02-10 Graham Percival <gpermus@gmail.com>
5962 * Documentation/user/invoking.itely: add example to File structure.
5964 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5965 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5967 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5969 * ly/paper-defaults.ly: typo.
5971 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5972 set_parent() for parentheses. This will make it show up in bbox
5975 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5976 ly:grob-common* functions.
5978 * lily/grob-scheme.cc (LY_DEFINE):
5979 ly:grob-common-refpoint-of-array: new function
5980 ly:grob-common-refpoint: new function
5981 ly:grob-relative-coordinate: new function
5983 * lily/instrument-name-engraver.cc (process_music): use
5984 Text_interface::is_markup(). This fixes \markup on instrument names.
5986 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5989 * lily/slur.cc (print): idem.
5991 * lily/tie.cc: add line-thickness for ties.
5993 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5995 * scm/output-svg.scm: Document diversion from GNU coding standards
5996 as a workaround for a bug in Microsoft Internet Explorer.
5998 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6000 * lily/instrument-name-engraver.cc (process_music): use
6001 is_markup() iso. is_string()
6003 * Documentation/user/changing-defaults.itely (Module): add menu entry.
6005 * lily/percent-repeat-engraver.cc (process_music): only look at
6006 main_part_ for % repeats.
6008 * lily/stem-tremolo.cc (get_beam_translation): new function.
6009 (calc_slope): new function.
6010 (height): don't use real slope.
6012 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
6014 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
6015 new connect-to-neighbor, control-points and staff-padding
6016 properties to make ligature brackets showing up again.
6018 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6020 * VERSION: release 2.7.33
6022 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
6025 * Documentation/user/changing-defaults.itely (Difficult tweaks):
6026 remove applyOutput example.
6027 (Objects connected to the input): document \tweak, \parenthesize
6029 * lily/relocate.cc (prefix_relocation): allow "current"
6030 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
6031 changing VERSION in a lily tree less painful.
6033 * input/regression/parenthesize.ly: new file.
6035 * scm/output-lib.scm (parenthesize-element): new function.
6037 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
6039 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
6041 * lily/accidental-engraver.cc (make_standard_accidental): reroute
6042 cause: accidentals are caused by note heads, not note events.
6044 2006-02-08 Graham Percival <gpermus@gmail.com>
6046 * darwin.patch: small patch from Erlend, thanks!
6048 * Documentation/user/basic-notation.itely: add stem-neutral example.
6050 * Documentation/user/putting.itely: clarifications.
6052 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6054 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
6055 note, add more guidelines to what should go into NEWS.
6057 * input/sakura-sakura.ly: document how to override font.
6059 * input/regression/font-family-override.ly: doc -dshow-available-fonts
6061 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6063 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6065 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
6067 * scripts/convert-ly.py (lilypond_version_re_str): Move from
6068 convertrules. Add explicit grouping, needed for python2.2.
6070 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
6072 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6074 2006-02-07 Graham Percival <gpermus@gmail.com>
6076 * Documentation/user/global.itely: fix line-width in (text) docs.
6078 * Documentation/user/lilypond-book.itely: same.
6080 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6082 * VERSION (PACKAGE_NAME): release 2.7.32
6084 * Documentation/topdocs/NEWS.tely (Top): document new variable
6087 * flower/include/array.icc (Message): remove file.
6089 * flower/include/std-vector.hh: make sure vsize and VPOS are
6090 defined for binary_search_bounds().
6092 * flower/std-string.cc (std): add to_string(long unsigned).
6094 * configure.in (gui_b): excise std_string option.
6095 (gui_b): excise std_vector option.
6097 * flower/string.cc (Module): excise flower array & string
6099 * flower/include/std-string.hh: excise flower string.
6101 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6103 * python/convertrules.py (lilypond_version_re_str): require
6104 only numbers and dots in \version string.
6106 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6108 * lily/system-start-delimiter.cc (print): allow style = text too.
6110 * lily/system-start-delimiter-engraver.cc
6111 (acknowledge_system_start_text): new function, also add add to
6112 support of system-start-text (instrument names). This fixes
6113 instrument names on piano staves.
6115 * lily/instrument-name-engraver.cc: rewrite. Use
6116 system-start-delimiter approach. This save memory and cpu.
6118 * scm/define-grobs.scm (all-grob-descriptions): remove
6119 instrument-name from break-alignment.
6121 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6123 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6125 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6128 * configure.in (std_vector): On by default.
6130 * lily/include/font-metric.hh:
6131 * lily/include/tfm-reader.hh:
6132 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6135 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6137 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6139 * VERSION (PACKAGE_NAME): 2.7.31
6141 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6142 EPS edge at 0, but take minimum with left-overshoot. This fixes
6143 cut off system start delims.
6145 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6146 hack: add to axis group if not added yet. This fixes hara kiri'd
6149 * lily/hara-kiri-group-spanner.cc
6150 (force_hara_kiri_in_y_parent_callback): fix signatures.
6152 * lily/hairpin.cc (print): check next hairpin to see whether or
6153 not to be continuing.
6155 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6157 * Remove trailing whitespace from makefiles.
6159 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6162 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6164 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6166 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6168 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6170 * configure.in: Use it.
6172 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6174 * scm/music-functions.scm (pitch-of-note): new function.
6176 * ly/music-functions-init.ly: add \octave and \addquote
6178 * lily/parser.yy (music_function_chord_body): softcode \octave.
6179 (lilypond_header): softcode \addquote
6181 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6183 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6184 array.hh, parray.hh at all. Getting ready to flip the
6187 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6189 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6192 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6194 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6196 * flower/include/array.hh: typo.
6198 2006-02-02 Graham Percival <gpermus@gmail.com>
6200 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6202 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6204 * flower/include/pqueue.hh: Derive from std::vector.
6206 * flower/include/parray.hh: Conform to std::vector interface.
6209 2006-02-02 Graham Percival <gpermus@gmail.com>
6211 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6213 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6215 * flower/file-path.cc (is_file): remove if 0 section.
6217 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6218 selecting afii61352.
6220 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6222 * flower/include/std-vector.hh (boundary): Oops, reverse.
6224 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6225 remove superfluous `d'.
6227 * flower/include/std-vector.hh (boundary, top): Detach from class.
6228 Remove empty vector shell.
6230 * flower/include/array.hh (reverse, swap): Detach from class.
6233 * flower/include/std-vector.hh
6234 * flower/include/array.hh (concat): Globally change to insert ().
6236 * flower/include/std-vector.hh
6237 * flower/include/parray.hh
6238 * flower/include/array.hh (elem, elem_ref): Globally replace by
6241 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6243 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6245 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6246 anticipate on identifier substitutions.
6248 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6250 * flower/include/std-vector.hh (insert): Remove, replace by
6251 std::vector interface. Update callers.
6253 * flower/include/array.icc (insert): Change signature to
6254 match std::vector interface.
6256 * flower/include/array.icc (vector_sort): Bugfix.
6258 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6260 * lily/parser.yy (output_def_head_with_mode_switch): new
6261 production. Result: dashes and underscores may be used in the
6264 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6266 * python/convertrules.py (conv): oops. One slash too much.
6268 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6270 * flower/include/std-vector.hh (sort): Remove, replace by
6271 ::vector_sort. Update callers.
6273 * flower/include/std-vector.hh (slice): Remove. Update callers.
6276 * flower/test-std.cc (vector_sort): New test.
6278 2006-02-01 Graham Percival <gpermus@gmail.com>
6280 * Documentation/user/putting.itely: fixes from Erik.
6282 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6284 * flower/test-std.cc: Add simple unit test for vector migration.
6286 * stepmake/stepmake/test*: Unit test support.
6288 * flower/include/std-vector.hh (del): Remove. Use erase (),
6291 * flower/include/array.hh (begin, end): Add.
6294 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6296 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6297 std::string not String.
6299 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6302 * lily/prob.cc (Prob): copy type_ too.
6304 * lily/lily-guile.cc (mangle_cxx_identifier): new
6305 function. Class_bla::foo_bar_[px] ->
6306 ly:class-bla::foo-bar[?!]. Changes throughout
6308 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6310 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6312 * lily/beam.cc (calc_direction): take dir from visible stem in
6315 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6317 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6318 Fix -1, >=0 boundary checks for unsigned vsize.
6320 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6321 loop for unsigned vsize.
6323 * configure.in (--enable-std-vector): New option.
6324 (--enable-std-string): On by default.
6326 * flower/include/std-vector.hh: New file. Enable switch to
6327 std::vector, update client code.
6329 2006-01-30 Graham Percival <gpermus@gmail.com>
6331 * scm/document-translation.scm: clarify "this context is also
6332 known as". Thanks, Werner!
6334 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6336 * Documentation/user/invoking.itely: small fix from Don.
6338 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6340 * scm/lily.scm (define-scheme-options): rename option
6341 preview-include-book-title to book-title-preview
6342 (define-scheme-options): move force-eps-font-include (from paper
6343 block) to eps-font-include -d option.
6345 * VERSION (PATCH_LEVEL): release 2.7.30
6347 * input/bach-schenker.ly (staffPiano): new file.
6349 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6351 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6354 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6356 * ps/lilyponddefs.ps: remove start-system, stop-system,
6357 start-page fluff. This saves putting { } code on the stack, fixing
6358 stack overflows when including EPS files.
6360 2006-01-29 Graham Percival <gpermus@gmail.com>
6362 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6364 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6366 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6368 2006-01-28 Graham Percival <gpermus@gmail.com>
6370 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6372 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6374 * input/mutopia/claop.py: Update.
6376 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6378 * input/regression/completion-heads.ly (texidoc): fix.
6380 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6382 * lily/tie-formatting-problem.cc
6383 (set_ties_config_standard_directions): use abs iso fabs for ints.
6385 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6387 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6388 little less than noteheight, to prevent overlaps in chords.
6390 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6391 head, and fudge stem-attachment.
6393 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6395 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6397 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6399 * lily/main.cc (main): Debugging aid: catch exceptions.
6401 * flower/std-string.cc (to_string): Robustification. Fixes midi
6402 output with std::string.
6404 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6406 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6408 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6410 * Fix -DSTRING_UTILS_INLINED.
6412 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6414 * VERSION (PATCH_LEVEL): release 2.7.29
6416 * lily/relocate.cc (setup_paths): mingw uses std string too.
6418 * lily/*.cc: various fixes for substr(ARG).
6420 * lily/sustain-pedal.cc (print):
6422 * flower/file-name.cc (slashify): use std strings.
6424 * flower/string-convert.cc: remove publib.h
6426 * scm/define-markup-commands.scm (verbatim-file): new markup
6427 command \verbatim-file
6429 * Documentation/topdocs/NEWS.tely: fixup URLs
6431 * input/regression/alignment-vertical-manual-setting.ly (Module):
6434 * lily/align-interface.cc (align_elements_to_extents): overwrite
6435 translations with numbers in alignment-offsets from left bound
6437 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6438 (page-translate-systems): new function: take into account Y-offset.
6440 * Documentation/topdocs/NEWS.tely (Top): document new features.
6442 * input/regression/page-layout-manual-position.ly (Module): new
6445 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6447 * flower/file-path.cc (path::parse_path): Oops.
6449 * Finish std::string interface. For now, use std:: marker
6450 throughout for easy s/r.
6452 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6454 * Documentation/user/putting.itely (Score is a single musical
6456 (Score is a single musical expression): more typos.
6458 * scm/page.scm (annotate-space-left): thinko.
6459 (annotate-page): more thinkos.
6461 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6463 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6464 for different \score blocks separately.
6465 (post-process-pages): put write-page-layout into paper block.
6467 * lily/output-def.cc (get_parser): new file.
6469 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6472 * lily/include/output-def.hh (class Output_def): add parser_ member.
6474 * input/regression/page-layout-twopass.ly (Module): new file.
6476 * scm/lily.scm: remove cpp hack.
6478 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6480 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6482 * GNUmakefile.in (c-clean): New target.
6484 * flower/include/std-string.hh: String/std::string compatibility:
6485 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6488 * flower/rational.cc:
6489 * flower/include/rational.hh:
6492 * flower/include/offset.hh:
6494 * flower/interval.cc:
6495 * flower/include/interval.hh:
6497 * flower/string-convert.cc:
6498 * flower/include/string-convert.hh: Use std::string [interface].
6501 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6503 * Documentation/index.html.in: clean up.
6505 2006-01-25 Graham Percival <gpermus@gmail.com>
6507 * Documentation/user/putting.itely: another new untested doc section.
6509 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6511 * scm/layout-page-layout.scm (write-page-breaks): write
6512 \spacingTweaks #ALIST. Handle grace timing.
6514 * scm/: more imports.
6516 * scm/page.scm (make-page): add footer/header.
6517 (annotate-space-left): revise: only take page argument.
6518 (layout->page-init): new function.
6520 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6521 version of the system/spacing/linebreak hack writing to the output
6523 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6526 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6529 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6531 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6533 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6535 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6536 handling to page.scm
6538 * lily/prob-scheme.cc (LY_DEFINE): new file.
6539 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6541 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6544 * lily/music.cc (derived_mark): derive Music from Prob.
6546 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6548 * lily/prob.cc (Module): Implement Prob (Property Object), object
6549 with shared and r/w property alists.
6551 * lily/include/prob.hh (Module): new file. Declare Prob.
6553 * flower/string.cc: remove is_empty().
6555 * flower/include/string.hh (class String): remove String:: qualifier.
6557 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6558 substitute appropriate functions.
6560 * flower/include/string.hh (class String): remove to_str0 and
6561 is_empty(). S&R everywhere.
6563 2006-01-23 Graham Percival <gpermus@gmail.com>
6565 * Documentation/user/basic-notation.itely: add hairpin
6566 after-linebreak tweak to commonprop.
6568 * Documentation/user/putting.itely: added two new sections.
6570 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6572 * flower/international.cc:
6573 * flower/include/international.hh:
6575 * flower/getopt-long.cc:
6576 * flower/include/getopt-long.hh: Use std::string [interface].
6579 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6581 * stepmake/stepmake/executable-rules.make: Add dependency on
6584 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6586 * flower/file-path.cc:
6587 * flower/include/file-path.hh: Use std::string [interface].
6590 * flower/direction.cc:
6591 * flower/axis.cc: Unused. Remove.
6593 * configure.in (--enable-std-string): New option.
6595 * flower/std-string.cc:
6596 * flower/include/std-string.hh: New file.
6598 * flower/file-name.cc[STD_STRING]:
6599 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6601 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6603 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6605 * scm/define-markup-commands.scm (with-dimensions):
6606 with-dimensions markup command.
6608 * input/test/font-table.ly: use it.
6610 * lily/open-type-font.cc (glyph_list): new function.
6612 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6614 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6616 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6618 * ly/music-functions-init.ly (parallelMusic): new music function
6619 for parallel music entry.
6621 * scm/define-music-properties.scm (all-music-properties): new
6622 'void music property
6624 * scm/music-functions.scm (ly:music-message): make public, to be
6625 used in music function definitions
6627 * scm/lily-library.scm (collect-music-for-book): discard music
6628 when the 'void property is set.
6630 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6632 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6634 * mf/GNUmakefile: idem.
6636 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6638 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6640 * Documentation/user/notation-appendices.itely (The Feta font):
6643 * input/test/font-table.ly: new file. Generate font table within lily.
6645 * Documentation/user/notation-appendices.itely (The Feta font):
6646 use new font-table.ly file.
6648 * stepmake/stepmake/install-out-targets.make
6649 (local-install-outfiles): only create directory if
6650 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6652 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6654 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6656 * VERSION (PACKAGE_NAME): release 2.7.28
6658 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6659 the right font from a Mac dfont.
6660 (write-preamble): don't forget directory, only look at files.
6662 This fixes problems with TTF files in dfonts that don't match
6663 their PostScript names.
6665 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6666 PS name from TTF font.
6668 * input/regression/tie-manual.ly: document new feature.
6670 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6672 * VERSION (MY_PATCH_LEVEL): bump to .28
6674 * Documentation/user/basic-notation.itely (Ties): add tie examples
6677 * lily/tie-formatting-problem.cc (score_ties_configuration):
6678 symmetry penalties for outer ties.
6680 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6682 * lily/tie-formatting-problem.cc (generate_configuration)
6683 (set_manual_tie_configuration): skip non-pair manual
6684 tie-configuration, so you can set individual ties as
6686 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6688 * input/regression/tie-chord.ly: use generateTiePattern to
6691 * lily/tie-formatting-problem.cc (peak_around): new function.
6692 (score_configuration): use sliding criterion for staff line collisions.
6693 (score_configuration): idem for dot collisions.
6694 (generate_configuration): use separate stem_gap for gap to stem.
6696 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6697 separate penalty factors for x and y distance.
6698 (struct Tie_details): separate penalties for tip and center line collisions.
6700 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6702 * lily/tie-formatting-problem.cc (generate_configuration): make
6703 large ties avoid stafflines in the horizontal section.
6704 (score_configuration): use softcoded penalties
6705 (score_aptitude): idem.
6707 * lily/tie-helper.cc (from_grob): softcode tie details
6709 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6711 * lily/staff-symbol-referencer.cc (on_line): rename from
6714 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6716 * ly/music-functions-init.ly: remove duplicate tag.
6718 * lily/include/*.hh: GCC 4.1 fixes.
6720 006-01-16 Erlend Aasland <erlenda@gmail.com>
6722 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6724 * scm/define-music-types.scm: fix bug in desc. string
6725 for OverrideProperty
6727 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6729 * scripts/lilypond-book.py: bugfix
6731 * scm/define-music-types.scm: fix typos.
6733 2006-01-14 Graham Percival <gpermus@gmail.com>
6735 * Documentation/user/ basic-notation.itely, global.itely,
6736 advanced-notation.itely, instrument-notation.itely: small
6737 additions (bugs and commonly tweaked properties).
6739 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6741 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6742 detection of mingw build.
6743 (MINGW_BUILD): opps.
6745 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6747 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6750 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6752 * scm/music-functions.scm (skip->rest): add skip->rest
6754 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6756 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6759 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6760 config dirs. Aids debugging.
6761 (display_config): also display config files.
6763 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6765 * VERSION: release 2.7.27
6767 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6768 for determining bar size.
6770 * lily/staff-symbol.cc (print): place lines at distance line-positions
6772 * scm/define-grob-properties.scm (all-user-grob-properties): add
6775 * lily/staff-symbol.cc (height): new function.
6777 * input/regression/staff-line-positions.ly: new file.
6779 2006-01-06 Graham Percival <gpermus@gmail.com>
6781 * input/test/add-staccato.ly: remove reference to old file.
6783 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6785 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6786 lilypond binary too.
6788 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6790 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6792 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6794 * scripts/midi2ly.py: Bugfix: Declare datadir.
6796 * make/ly-rules.make:
6797 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6798 that seems to be gone). Fixes make web.
6800 * The grand 2005-2006 replace.
6802 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6804 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6806 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6807 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6808 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6809 like -dgs-font-load.
6811 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6812 remove absolute path to lilypond binary.
6814 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6816 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6818 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6820 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6822 * mf/GNUmakefile: remove broken dvips map symlink.
6824 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6827 * configure.in: Cosmetic fixes.
6829 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6831 * Documentation/user/music-glossary.tely (Pitch names): Added
6832 Spanish pitch names and durations, thanks to Ernesto Gancedo
6834 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6836 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6837 init. Fixes verbose printing of .scm files.
6839 * stepmake/aclocal.m4: add spaces before - options.
6841 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6843 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6844 of path search in local block variable.
6846 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6848 * configure.in (NCSB_DIR): --enable-ncsb-dir
6849 (LINK_GXX_STATICALLY): denko.
6851 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6853 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6854 use locate to find c059033l.pfb.
6856 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6858 * lily/tie-formatting-problem.cc
6859 (problem::generate_base_chord_configuration): Use my_round (was
6862 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6863 do not invoke mbrtowc.
6865 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6867 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6869 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6871 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6873 * Documentation/user/invoking.itely (svg): revise.
6875 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6877 * lily/lexer.ll: use sourcefilename iso. renameinput.
6879 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6881 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6882 <PostScriptName>.ttf instead of c059XXXttf.
6884 * lily/program-option.cc (LY_DEFINE): special support for
6885 --verbose, so it works before option init too.
6887 * mf/GNUmakefile (local-install): oops.
6889 * lily/lyric-hyphen.cc (print): oops.
6891 * buildscripts/pfx2ttf.fontforge: new file.
6893 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6894 ($(outdir)/%.ttf): new rule.
6896 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6899 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6902 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6904 * VERSION: release 2.7.26
6906 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6908 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6910 * lily/font-config.cc (init_fontconfig): verbosity.
6912 * THANKS: add Muziekacademie Lede.
6914 * scripts/musicxml2ly.py (print_voice_definitions): new function
6915 (print_score_setup): new function
6916 (convert): read part definition to output staves properly.
6918 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6921 * python/musicexp.py (Output_printer.__init__): use _ in data
6923 (Output_printer.unformatted_output): new function: no formatting,
6925 (Duration.get_length): remove isinstance() checks for
6926 Output_printer everywhere.
6928 * input/regression/lyrics-bar.ly (texidoc): add
6929 Separating_line_group_engraver.
6931 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6933 * lily/relocate.cc (framework_relocation): New function,
6934 factored from set_relocation ().
6935 (prefix_relocation): Rename from set_relocation ().
6936 (setup_paths): Use it.
6938 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6940 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6941 numbers. Patch by Erlend Aasland.
6943 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6945 * lily/font-config.cc (init_fontconfig): print warning if cache
6946 file is not existant.
6948 * lily/main.cc: don't use #ifdef but #if
6950 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6952 * lily/grob-property.cc (internal_set_property): don't abort on
6953 calculation-in-progress.
6955 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6957 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6958 connect-to-neighbor property not connect-to-other
6960 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6961 (LY_DEFINE): oops. don't forget protection.
6963 * flower/parse-afm.cc (Module): strip AFM handling completely.
6965 * lily/stencil-expression.cc: idem.
6967 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6969 * lily/function-documentation.cc (ly_add_function_documentation):
6970 use static member iso. Protected_scm
6972 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6974 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6976 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6978 * lily/relocate.cc (set_env_dir): New function.
6979 (set_relocation): Use it to fix setting PANGO_PREFIX.
6981 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6983 * input/regression/stem-direction-context.ly: remove rest.
6985 * lily/melody-engraver.cc (process_music): restart for bar lines.
6986 (acknowledge_slur): restart for slurs.
6988 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6990 * Documentation/user/invoking.itely: describe how to view SVG
6991 output using Inkscape which replace embedded fonts with OTF fonts.
6993 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6995 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6997 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6999 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
7002 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7004 * VERSION (PACKAGE_NAME): release 2.7.25
7006 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7008 * input/regression/stem-direction-context.ly: new file.
7010 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
7012 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
7015 * ly/engraver-init.ly: add Melody_engraver
7017 * lily/beam.cc (calc_direction): use default-direction
7018 iso. get_default_direction()
7020 * scm/define-grob-properties.scm (all-user-grob-properties): add
7021 default-direction property.
7023 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
7025 * lily/stem.cc (calc_default_direction): remove
7026 Stem::get_default_direction, use default-direction with callback
7029 * lily/melody-spanner.cc (calc_neutral_stem_direction):
7031 * lily/melody-engraver.cc: new file. Acknowledge stems for
7032 interpolated stem directions.
7034 * lily/melody-spanner.cc: new file. Interpolate stem directions.
7036 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
7038 * lily/slur-configuration.cc (fit_factor): more robust check for
7039 point in curve X-extent.
7041 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
7042 (outside_slur_callback): check for 'outside avoidance.
7044 * lily/slur-configuration.cc (score_extra_encompass): don't use
7045 bound->column() == avoid->column() for checking extents, as this
7046 doesn't work for accidentals.
7048 * lily/slur-engraver.cc (acknowledge_extra_object): remove
7049 DynamicText hardcoding.
7051 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
7052 crash if bound stem is NULL
7054 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
7057 2005-12-22 Graham Percival <gpermus@gmail.com>
7059 * scm/define-markup-commands.scm: typo. @code{\raise}
7062 * darwin.patch: now used again, includes a
7063 required patch from fink.
7065 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
7067 * po/TODO: mention gtranslator along with kbabel.
7068 * po/fi.po: update translations.
7070 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7072 * lily/relocate.cc (setup_paths): Bugfix.
7074 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7076 * lily/slur-configuration.cc (score_extra_encompass): don't use
7077 "avoid" choice for avoid-slur.
7079 * stepmake/bin/install.py (dest): don't create existing dir.
7081 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7083 * stepmake/bin/install.py: Remove file before copying.
7086 * stepmake/aclocal.m4: Do not substitute INSTALL.
7088 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7090 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7091 depend on link-tree.
7093 * lily/relocate.cc (setup_paths): only check path for non-absolute
7094 dir without directory part.
7096 * flower/file-name.cc (is_absolute): new method.
7097 (is_absolute): check root_ too.
7099 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7101 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7102 relocation code. Oops, don't comment out too much.
7104 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7107 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7110 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7112 * .cvsignore: Add install-sh.
7114 * autogen.sh (srcdir): Typo.
7116 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7118 * autogen.sh (srcdir): urg. Touch install-sh.
7120 * stepmake/bin/install-sh (Module): remove.
7122 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7124 * lily/include/relocate.hh: new file.
7126 * lily/relocate.cc: new file. Contain relocation logic.
7128 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7129 (main): read LILYPOND_VERBOSE as the first thing.
7131 * stepmake/aclocal.m4: remove INSTALL variable.
7133 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7134 separate target for making font symlinks.
7135 (documentation-dir): use $(if $(findstring )) for switching off
7138 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7139 something if DOCUMENTATION is no.
7141 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7143 * VERSION: release 2.7.24
7145 * lily/script-column-engraver.cc (stop_translation_timestep):
7146 delay adding to script-column.
7148 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7150 * python/convertrules.py (conv): rule for number-visibility
7152 * lily/slur-configuration.cc (score_extra_encompass): different
7153 distance measure for avoid and inside avoidance.
7154 (score_extra_encompass): use 1/(distance+eps) as penalty.
7156 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7157 encompass objects for generating slur curves.
7159 * lily/slur.cc: use details iso. slur-details property.
7161 * input/regression/slur-tuplet.ly: new file.
7163 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7165 * flower/include/offset.hh (class Offset): new operator /=
7167 * lily/tuplet-number.cc (print): new file, new interface.
7169 * scm/define-grob-properties.scm (all-user-grob-properties):
7170 remove number-visibility property.
7172 * lily/tuplet-bracket.cc (calc_control_points): new function
7173 (calc_connect_to_neighbors): new function.
7174 (print): remove text handling for tuplet numberdef.
7176 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7179 * lily/lily-guile.cc (robust_scm2booldrul): new function
7181 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7183 * lily/tuplet-bracket.cc (calc_position_and_height): use
7184 staff-padding to control whether tuplet brackets are over staves.
7186 * lily/grob.cc (suicide): clear dim_caches_.
7188 * lily/dimension-cache.cc (clear): new function.
7190 * lily/grob.cc (extent): swap order of min-extent and extent
7191 calculations. This fixes hara kiri staves.
7193 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7195 * lily/main.cc: Nitpick: relocation is not based on path, but on
7196 directory (location).
7198 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7200 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7202 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7204 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7206 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7208 * stepmake/stepmake/generic-vars.make (Module): idem.
7210 * stepmake/stepmake/executable-targets.make (default): use it.
7212 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7214 * make/GNUmakefile: don't install make rules.
7216 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7218 (prepend_env_path): more verbosity.
7220 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7222 * GNUmakefile.in: add dir argument for find command.
7224 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7225 fixes weird line numbers for point & click.
7227 * lily/source-file.cc (get_counts): init line/column/char counts.
7229 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7231 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7233 2005-12-16 Graham Percival <gpermus@gmail.com>
7235 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7236 minor fixes from Fredric. Thanks!
7238 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7240 * ly/music-functions-init.ly: add \bar and \clef music function
7242 * lily/lily-lexer.cc: idem.
7244 * lily/parser.yy (FIXME): remove BAR and CLEF.
7246 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7248 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7250 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7251 function arguments too
7253 * lily/main.cc (set_relocation): new function.
7255 * scripts/musicxml2ly.py (convert): add \version
7257 * lily/tie.cc: remove get_default_attachments()
7259 * VERSION (PACKAGE_NAME): release 2.7.23
7261 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7262 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7264 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7266 * lily/tie-formatting-problem.cc (score_ties): new function
7267 (get_variations): new function. Try flipping dirs for collisions.
7268 (generate_optimal_chord_configuration): new function. 1-opt search
7269 for better configuration.
7271 * lily/tie-configuration.cc: new file.
7273 * lily/tie.cc: junk Tie::get_configuration()
7275 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7276 (score_ties_configuration): new function.
7277 (generate_ties_configuration): new function.
7278 (generate_base_chord_configuration): new function.
7279 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7280 (set_manual_tie_configuration): Move body from tie-column-format.cc
7282 * input/regression/tie-dot.ly: new file.
7284 * lily/tie-formatting-problem.cc (score_configuration): score
7287 * lily/tie-helper.cc (get_transformed_bezier): new function
7289 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7291 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7292 -undefined suppress iso. -framework Python
7294 * scm/define-grobs.scm (all-grob-descriptions): set
7295 springs-and-rods (thanks Joe Neeman!)
7297 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7299 * input/no-notation/display-lily-tests.ly (test):
7300 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7301 changed from \tag #'(a b) to \tag #'a \tag #'b
7303 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7305 * Documentation/topdocs/NEWS.tely: strip out-www.
7307 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7309 * config.make.in (AR): add AR and RANLIB
7311 * flower/libc-extension.cc: include cassert
7313 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7316 2005-12-11 Graham Percival <gpermus@gmail.com>
7318 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7320 * stepmake/stepmake/python-modules-vars.make: define
7321 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7323 * THANKS: added Johannes Schindelin.
7325 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7327 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7329 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7330 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7332 * lily/parser.yy: reorganize file layout.
7334 * ly/music-functions-init.ly: add tweak music function.
7336 * lily/grob-info.cc (ultimate_music_cause): new function:
7337 recursively lookup causes.
7339 * lily/parser.yy (chord_body_element): allow music functions for
7340 post-events, allow music functions for chord elements.
7342 * lily/font-config-scheme.cc (display_fontset): add cast.
7344 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7345 #'(a b) -> \tag #'a \tag #'b rule.
7347 * python/musicexp.py (Output_printer.dump_version): new function
7349 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7351 * lily/parser.yy (FIXME): remove \tag
7352 (FIXME): remove tag_music() function.
7354 * lily/lily-lexer.cc: remove \tag
7356 * ly/music-functions-init.ly: define music-function "tag"
7358 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7360 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7362 * VERSION (PATCH_LEVEL): release 2.7.22
7364 * input/regression/lyric-hyphen-retain.ly: renew.
7366 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7369 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7370 iso. minimum-length property for rods.
7372 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7373 LyricSpace item to keep lyrics spaced apart.
7375 * ly/engraver-init.ly: remove Separating_line_group_engraver
7377 * Documentation/user/music-glossary.tely: do setfilename before
7380 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7382 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7383 See xref documentation, for example.
7385 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7387 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7388 pending_skip iso. ly_voice[-1]
7389 (main): add if __main__ for debugging.
7391 * python/musicxml.py (Accidental.__init__): new class.
7393 * scripts/musicxml2ly.py (progress): new function
7394 (musicxml_key_to_lily): don't barf on modeless keys.
7395 (create_skip_music): new function.
7396 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7397 (musicxml_note_to_lily_main_event): new function.
7399 * python/musicexp.py (Music.__init__): add comment field.
7400 (NestedMusic.append): new routine.
7401 (SequentialMusic.print_ly): print comment.
7402 (ArpeggioEvent.ly_expression): new class
7403 (BeamEvent.ly_expression): new class
7404 (NoteEvent.__init__): support for cautionary/forced accs.
7406 * lily/lookup.cc (slur): normal order for array loop.
7408 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7411 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7414 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7416 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7418 * scripts/lilypond-book.py: Introduce option
7419 --preserve-line-breaks, for usage with srcltx
7421 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7423 * scm/output-lib.scm (print-circled-text-callback): draw circle
7424 around text using make-circle-markup.
7426 * Documentation/user/*: strip out-www from file names.
7428 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7430 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7431 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7433 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7435 * Documentation/user/GNUmakefile: idem.
7437 * Documentation/user/macros.itexi: strip out-www
7439 * python/rational.py: python 2.3 compat.
7441 * VERSION (PATCH_LEVEL): release 2.7.21
7443 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7444 option formatting, lilypond style.
7446 * python/musicexp.py: grab from Ikebana: a library for composing
7447 ly music expressions.
7448 (Output_printer): class for advanced .ly printing.
7451 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7452 convert to pythonesque structure.
7454 * python/rational.py: PD rational number class.
7456 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7458 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7460 * lily/part-combine-iterator.cc: Minor bugfix
7462 * THANKS: Update bughunters
7464 2005-12-02 Werner Lemberg <wl@gnu.org>
7466 * mf/README: Document process for proper mf2pt1 conversion.
7468 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7471 * mf/feta-harmonica.mf: Removed. Unused.
7473 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7475 * scripts/lilypond-book.py (do_file): fix thinkos.
7477 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7479 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7480 ($(outdir)/parser.cc):
7481 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7483 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7485 * ly/titling-init.ly (tagline): it should be a space between
7486 "Music engraving by LilyPond" and the version number.
7488 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7490 * VERSION (PACKAGE_NAME): release 2.7.20
7492 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7494 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7496 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7498 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7500 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7502 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7504 * kpath-guile/: remove directory
7506 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7507 file. Encapsulate kpathsea using commandline tools.
7509 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7512 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7514 * Documentation/user/advanced-notation.itely (Setting automatic
7515 beam behavior): Correct a few typos. Thanks to David Bobroff.
7517 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7518 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7520 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7522 * scripts/*.py: gmane address for bugs.
7524 2005-11-28 Pal Benko <benkop@freestart.hu>
7526 * make/ly-rules.make: add -f switch to mv
7528 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7530 * lily/bar-line.cc: interpret it
7532 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7534 * configure.in (--disable-documentation): New switch.
7536 * GNUmakefile.in: Use it.
7538 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7540 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7542 * scripts/lilypond-book.py (do_file): search chunks for
7545 * GNUmakefile.in: add copy step in between so we can lose the
7546 out-www directories.
7548 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7550 * lily/pango-font.cc (pango_item_string_stencil): put
7551 geometry.width into glyph-string too.
7553 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7555 * scm/define-music-display-methods.scm (RevertProperty):
7556 (OverrideProperty): Use grob-property-path property, a list of
7557 symbols, instead of grob-property, which used to be a single
7559 (BassFigureEvent): a figure can be a plain number, not necessarily a
7562 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7564 * VERSION: release 2.7.19
7566 * lily/figured-bass-engraver.cc (process_music): check
7567 figuredBassCenterContinuations first.
7569 * scm/translation-functions.scm (format-bass-figure): make double
7572 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7575 * lily/system-start-delimiter-engraver.cc: move from
7576 Nested_system_start_delimiter_engraver, rename
7577 Nested_system_start_delimiter_engraver ->
7578 System_start_delimiter_engraver.
7580 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7581 bracket type from hierarchy.
7583 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7585 * lily/rest.cc (y_offset_callback): read staff-position.
7587 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7588 mark after-line-breaking-callback as internal.
7590 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7592 2005-11-25 Werner Lemberg <wl@gnu.org>
7594 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7596 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7598 * stepmake/bin/add-html-footer.py (do_file): add google
7600 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7601 staff if first_start_ is true.
7603 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7605 * scripts/midi2ly.py (split_track): add __repr__ members.
7606 (track_first_item): only return Item if not None. This fixes a
7607 problem when dumping a track that starts with an empty channel.
7609 * python/midi.c: doc module.
7611 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7613 * Documentation/user/global.itely (Creating MIDI files): Fix
7614 compilation problem.
7616 2005-11-22 Graham Percival <gpermus@gmail.com>
7618 * Documentation/user/basic-notation.itely: clarify dynamic
7621 * Documentation/user/advanced-notation.itely: add unicode
7622 escape control example, whatever that is. :)
7624 * Documentation/user/global.itely: added "removing dynamics
7627 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7629 * VERSION (PATCH_LEVEL): release 2.7.18
7631 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7632 System_start_delimiter_engraver by
7633 Nested_system_start_delimiter_engraver.
7635 * lily/nested-system-start-delimiter-engraver.cc (struct
7636 Bracket_nesting_node): new class.
7637 (struct Bracket_nesting_group): new class
7638 (struct Bracket_nesting_staff): new class.
7639 (process_music): create hierarchy of grobs. This allows separate
7640 tuning of different SSDs.
7642 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7643 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7645 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7647 * lily/side-position-interface.cc (aligned_side): multiply
7650 * lily/script-engraver.cc (make_script_from_event): allow setting
7653 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7655 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7657 * scm/define-grobs.scm (all-grob-descriptions): new grob
7658 NestedSystemStartDelimiter.
7660 * input/regression/system-start-heavy-bar.ly: new file.
7662 * lily/nested-system-start-delimiter-engraver.cc: new file.
7664 * lily/nested-system-start-delimiter.cc: new file.
7666 * input/regression/system-start-nesting.ly: new file.
7668 * scm/define-grobs.scm (all-grob-descriptions): use X side
7669 positioning for positioning braces for nested contexts.
7671 * lily/system-start-delimiter.cc (print): don't divide extent by
7673 (print): use style iso. glyph.
7674 (staff_bracket): translate glyph inside routine already.
7676 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7678 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7681 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7683 * scm/define-context-properties.scm
7684 (all-user-translation-properties): rename figuredBassFormatter
7685 from newFiguredBassFormatter.
7687 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7689 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7691 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7693 * lily/beam.cc (calc_beaming): new function.
7694 (calc_shorten): new function.
7696 * THANKS: add Edward Neeman.
7698 * input/regression/accidental-clef-change.ly: new file.
7700 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7702 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7704 * lily/clef-engraver.cc (inspect_clef_properties): reset
7705 localKeySignature for clef changes.
7707 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7709 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7710 add dummy definition that works in Linux and add information in
7711 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7713 * Documentation/user/changing-defaults.itely (Modifying context
7714 plug-ins): Add index for \with.
7716 * Documentation/user/music-glossary.tely (dal segno): Updated
7717 example to version >=2.6.
7719 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7721 * Documentation/user/instrument-notation.itely (Printing chord
7722 names): Reorder \chordmode and \repeat in one example.
7724 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7726 * VERSION: release 2.7.17
7728 * Documentation/topdocs/NEWS.tely (Top): add note about
7731 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7732 new function. Search region of 3 positions for best tie.
7733 (score_configuration): new function.
7734 (score_aptitude): new function.
7735 (generate_configuration): new function.
7736 (get_configuration): new function.
7737 (Tie_formatting_problem): new function
7739 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7741 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7743 * THANKS: add Eduardo Vieira & Ralph Little
7745 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7748 * lily/include/tie-formatting-problem.hh (class
7749 Tie_formatting_problem): add Tie_details to
7750 Tie_formatting_problem. Update calling conventions.
7752 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7755 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7757 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7759 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7760 scm/define-context-properties.scm: Maintenance bugfix: make
7761 ligature brackets work again by removing obsolete ligature
7762 primitive callback push/pop.
7764 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7765 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7768 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7770 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7771 used and do not call it a path.
7772 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7774 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7776 * lily/include/tie-formatting-problem.hh (class
7777 Tie_formatting_problem): new file.
7779 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7781 * Documentation/misc/ChangeLog-2.3: new file.
7783 * lily/audio-staff.cc (output): degarianize.
7785 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7787 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7788 Unset PYTHONOPTIMIZE. Fixes install if set.
7790 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7792 * python/convertrules.py (conv): add warning about drums.
7794 * make/stepmake.make: include toplevel-version.make after config.make.
7796 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7797 also allow python2.4
7799 * config.make.in (configure-srcdir): remove GXX GCC vars.
7801 * stepmake/aclocal.m4: don't do non-srcdir build with
7802 symlinks. Use inclusion, so the src directory name can be changed.
7804 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7806 * make/mutopia-vars.make:
7807 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7810 2005-11-13 Werner Lemberg <wl@gnu.org>
7812 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7813 but the affected path. This ensures that the (overlapping) outlines
7814 have the same direction, which is a necessary prerequisite for
7815 FontForge's algorithm to remove overlaps.
7818 * mf/feta-haak.mf: Formatting.
7819 (draw_bracket): Slightly modify outline to avoid an unnecessary
7821 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7822 them from the affected paths.
7824 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7826 * mf/README: remove xpm / accordion notes.
7828 * lily/tie-column-format.cc (set_chord_outline): add dots into
7829 skyline extents. This fixes tie formatting if the left head has dots.
7831 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7832 space inside the staff.
7833 (get_configuration): shift another position if necessary in case
7836 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7838 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7839 buildscript-dir iso. $(depth)/buildscripts.
7841 * tex/GNUmakefile (local-uninstall): remove
7842 music-drawing-routines.ps juggling.
7844 * stepmake/stepmake/install-targets.make (local-install-files):
7845 prepend src-dir to install targets.
7847 * lily/system-start-delimiter-engraver.cc
7848 (acknowledge_system_start_delimiter): use
7849 add_offset_callback(). This fixes translation of nested
7852 * lily/grob-closure.cc (add_offset_callback): only encaps in
7853 simple_closure if it's a procedure.
7855 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7858 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7859 remove-empty where pertinent.
7861 2005-11-12 Graham Percival <gpermus@gmail.com>
7863 * Documentation/user/instrument-notation.itely: added
7864 Cameron Horsburgh's multiple stanzas docs. Thanks!
7866 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7869 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7870 make picture in builddir, not srcdir.
7872 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7874 * VERSION: release 2.7.16
7876 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7879 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7881 * Documentation/user/examples.itely (Piano templates): Minor
7882 modification to the Piano centered lyrics example.
7884 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7886 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7889 * Documentation/user/point-and-click.itely: simplify p&c
7890 instruction: don't configure firefox. Put lilypond-invoke-editor
7891 in front of the browser.
7893 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7894 (run-browser): new function.
7896 * lily/parser.yy (Lily_lexer): recognize Book
7898 * lily/book.cc (clone): new function
7900 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7902 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7904 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7905 Maintenance bugfix: reduce number of font related warnings by
7906 updating naming conventions for glyph-name.
7908 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7910 * scm/define-grobs.scm (all-grob-descriptions): add
7911 rhythmic-grob-interface to TabNoteHead.
7913 * scm/layout-beam.scm (check-quant-callbacks): remove
7916 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7918 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7919 alignment of centered divisiones.
7921 * scm/scripts.scm (articulations): Maintenance bugfix:
7922 follow-into-staff -> quantize-position.
7924 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7925 plica head in porrectus deminutus.
7927 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7929 * make/lilypond.fedora.spec.in (Group): add %clean section.
7931 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7932 less then 1/5th of total length.
7933 (print): use gap too. Fixes tupletUp-single-bracket.ly
7935 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7936 events into EventChord. This fixes textspanners on mm rests. Fixes
7939 * lily/side-position-interface.cc (get_axis): read side-axis
7940 (set_axis): set side-axis.
7942 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7943 properties everywhere.
7945 * lily/spacing-spanner.cc (breakable_column_spacing): add
7946 average-spacing-wishes. Take maximum if not set.
7947 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7949 * scm/define-grobs.scm (all-grob-descriptions): add
7950 average-spacing-wishes.
7952 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7953 offset callbacks. This fixes alignment for Fingering objects.
7955 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7956 space for key - timesig combination.
7958 * input/regression/script-stem-tremolo.ly (Module): new file.
7960 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7963 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7964 Fixes: c-tremolo-script.ly.
7966 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7968 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7970 * scm/define-grobs.scm (all-grob-descriptions): remove
7971 self-X-offset. Fixes alignment of octavate-8.
7973 * scripts/lilypond-book.py (datadir): look in
7974 LILYPONDPREFIX/share/lilypond/current/
7976 * GNUmakefile.in: symlink current to <VERSION>.
7978 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7980 * lily/main.cc: eps listed as a backend.
7982 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7984 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7986 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7988 * lily/include/score.hh (class Score): remove texts_ member.
7990 * lily/beam.cc (set_stem_lengths): force direction callback.
7991 (print): read quantized-positions, so we can force
7992 Beam::set_stem_lengths to occur.
7993 (rest_collision_callback): use common X parent.
7995 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7997 * flower/file-path.cc (find): Bugfix: Return name of file found.
7999 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
8000 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
8001 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
8003 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8005 * flower/offset.cc: idem.
8007 * mf/*.mf: update email address.
8009 * lily/font-config-scheme.cc: new file.
8011 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
8013 * lily/*: cs.uu.nl -> xs4all.nl
8015 * VERSION (PATCH_LEVEL): release 2.7.15
8017 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
8020 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
8022 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8024 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
8026 * lily/staff-performer.cc (process_music): add audio
8027 elements. This makes MIDI instrument changes work once again.
8029 * lily/main.cc (LY_DEFINE): add gmane address.
8031 * lily/beam.cc: remove calc_positions()
8033 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
8034 original_ in private scope.
8035 (class Grob): drop pscore_ pointer, change to output_def pointer.
8036 (class Grob): cleanup class definition.
8038 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
8040 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
8042 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
8043 absolute. Better diagnostics.
8045 * GNUmakefile.in: Add bin/ to tree and populate with some links.
8046 This makes lilypond run from the build directory using argv0
8047 relocation (without any --prefix or LILYPONDPREFIX setting).
8049 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8051 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
8053 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
8054 with simple-closure.
8056 * lily/self-aligment-interface.cc (set_align_self): new function
8057 (set_center_parent): new function.
8059 * lily/side-position-interface.cc (set_axis): new function.
8061 * lily/new-fingering-engraver.cc (position_scripts): use drul for
8064 * scm/define-grob-properties.scm (all-user-grob-properties):
8065 remove [XY]-offset-callbacks add [YX]-offset
8067 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
8069 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8070 entry for time signatures after breathing signs. Bug report by
8073 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8075 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8076 not absolute, make it absolute using PATH.
8078 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8080 * python/midi.c (initmidi): Fix type for mingw.
8082 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8084 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8086 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8089 * stepmake/aclocal.m4: Support python cross compiling.
8091 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8094 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8096 * scm/output-lib.scm (chain-grob-member-functions): replace
8099 * lily/chained-callback.cc (Module): remove file.
8101 * lily/rest-collision.cc (force_shift_callback_rest): change to
8104 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8106 * lily/grob.cc (y_parent_positioning): remove axis argument from
8107 parent_positioning callbacks.
8108 (Grob): junk init code
8109 (get_offset): use generic property callbacks for
8110 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8111 (axis_parent_positioning): new function
8112 (axis_offset_symbol): new function
8113 (chain_offset_callback): new function
8114 (add_offset_callback): new function
8116 * lily/beam.cc (rest_collision_callback): change signature; this
8117 is now a chained callback.
8119 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8120 callback administration.
8122 * lily/simple-closure.cc: new file. Smob type that allows "grob
8125 (ly:make-simple-closure FUNC A B)
8127 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8130 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8133 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8135 * lily/rest.cc (polyphonic_offset_callback): remove.
8137 * lily/script-engraver.cc (try_music): remove bool* argument.
8139 * scm/script.scm (default-script-alist): set quantize-position
8142 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8144 * lily/side-position-interface.cc (aligned_side): move staff
8145 position quantization from
8146 Side_position_interface::quantised_position().
8147 (quantised_position): remove
8149 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8151 * input/regression/beam-quant-standard.ly: reindent, set
8152 debug-beam-quanting to #t.
8154 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8155 10000 if this is a "hard" concave beam.
8157 * lily/beam.cc (calc_least_squares_positions): change from
8158 calc_least_squares_dy
8159 (set_stem_lengths): this is now a chained callback.
8161 * lily/context-property.cc (execute_general_pushpop_property):
8162 bugfix override with procedure should have effect.
8164 * scm/define-grob-properties.scm (all-internal-grob-properties):
8165 remove position-callbacks.
8167 * scm/define-grobs.scm (all-grob-descriptions): use
8168 ly:make-callback-chain for positions property.
8170 * scm/layout-beam.scm (check-quant-callbacks): return list of
8173 * scm/lily.scm (type-p-name-alist): add callback-chain
8175 * lily/lily-guile.cc (type_check_assignment): type check failure
8176 is warning not message.
8178 * lily/grob-property.cc (try_callback): walk callback chain if
8181 * lily/chained-callback.cc: new file. new smob type.
8183 * lily/lily-guile.cc (procedure_arity): new function.
8185 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8187 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8189 2005-10-25 John Mandereau <john.mandereau@free.fr>
8191 * Documentation/user/instrument-notation.itely (Figured bass):
8192 describe new features
8194 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8196 * lily/beam.cc (calc_least_squares_dy): use property callback.
8198 * lily/beam-concave.cc (calc_concaveness): use property callback.
8200 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8202 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8206 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8208 * scm/layout-page-layout.scm (page-headfoot): annotate
8211 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8213 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8214 doesn't take y-space.
8216 * scm/paper.scm (paper-alist): fix A7 dimensions.
8218 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8220 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8221 src-wildcard, remove $(wildcard).
8223 * po/GNUmakefile (PO_FILES):
8224 * ps/GNUmakefile (PS_FILES):
8225 * tex/GNUmakefile (TEX_FILES):
8226 * cygwin/GNUmakefile (POSTINSTALLS):
8227 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8228 some wildcard calls.
8230 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8232 * THANKS: add Thomas Bushnell.
8234 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8236 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8237 (lilypond-main): Redirect to gui-main if 'gui is set.
8239 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8240 for alternative installations kludging s/share/lib/g
8243 * SConstruct (libdir_package_version): Define.
8245 * python/SConscript:
8246 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8249 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8251 * lily/main.cc: clarify --safe.
8253 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8255 * VERSION: release 2.7.14
8257 * Documentation/user/*.itely: remove minimumVerticalExtent.
8259 * scm/define-grobs.scm (all-grob-descriptions): remove
8260 RemoveEmptyVerticalGroup
8262 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8264 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8267 * python/convertrules.py (conv): add rules.
8269 * lily/grob.cc: remove is_empty()
8271 * lily/grob-property.cc: remove add_to_list_property().
8273 * scripts/convert-ly.py (datadir): add prefix switching hack to
8276 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8277 space-function tweak.
8279 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8281 * scm/define-grob-properties.scm (all-user-grob-properties):
8282 remove callback property.
8284 * lily/include/grob.hh (class Grob): remove property_callbacks_
8285 member. Properties of procedure type are assumed to be callbacks.
8287 * lily/ligature-engraver.cc (override_stencil_callback):
8288 rewrite. Use noteHeadLigaturePrimitive as source.
8290 * scm/define-grob-properties.scm (all-internal-grob-properties):
8291 remove ligature-primitive-callback
8293 * lily/include/dimension-cache.hh (class Dimension_cache): make
8294 class, with Grob as friend.
8296 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8297 has_extent_callback()
8299 * scm/translation-functions.scm (format-new-bass-figure): read
8300 figuredBassPlusDirection
8302 * scm/define-context-properties.scm
8303 (all-user-translation-properties): add figuredBassPlusDirection.
8305 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8307 * lily/align-interface.cc (set_ordered): new function.
8309 * lily/grob.cc (flush_extent_cache): rewrite.
8311 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8312 Interval pointer directly.
8314 * lily/main.cc (setup_paths): insert extra / .
8315 (setup_paths): junk cff entry.
8317 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8320 * lily/axis-group-engraver.cc (finalize): remove
8321 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8323 * lily/grob.cc (Grob): don't set extent from ctor.
8324 (extent): use property callbacks.
8326 * lily/axis-group-interface.cc: remove set_axes() function.
8328 * lily/grob-property.cc (del_property): new function.
8330 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8332 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8334 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8336 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8338 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8340 * mf/SConscript: Updates.
8342 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8344 * stepmake/stepmake/*:
8348 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8349 from any directory in build-dir. Cleanups.
8351 * make/srcdir.make.in: Remove.
8353 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8355 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8358 * lily/SConscript: Remove ttftools.
8360 * SConstruct: Resurrect.
8362 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8364 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8367 * lily/paper-book.cc (add_score_title): put Paper_score title into
8370 * scm/translation-functions.scm (format-new-bass-figure): also
8371 allow plus in combination with _
8373 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8375 * VERSION: 2.7.13 released.
8377 * lily/note-collision.cc (check_meshing_chords): don't wipe
8378 stencil, merely set transparent.
8380 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8381 (Top): document #'callbacks.
8382 (Top): document nested \override.
8384 * input/regression/figured-bass.ly: update for slash and pluses.
8386 * input/regression/figured-bass-continuation-forbid.ly (Module):
8389 * scm/translation-functions.scm (format-new-bass-figure): use
8390 slashed-digit if diminished is set.
8391 (format-new-bass-figure): add + if 'augmented is set.
8393 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8395 * input/test/piano-staff-distance.ly: remove file.
8397 * Documentation/user/advanced-notation.itely (Formatting cue
8398 notes): use length-fraction for making stems/beams smaller.
8400 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8403 * lily/new-figured-bass-engraver.cc: new property
8404 centerFiguredBassContinuations
8406 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8409 * lily/context-property.cc (execute_general_pushpop_property):
8412 * input/regression/override-nest.ly: new file.
8414 * python/convertrules.py (FatalConversionError.subber): conversion
8415 rule for #'callbacks
8417 * input/regression/override-nest.ly: new function.
8419 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8422 * lily/context-property.cc (lookup_nested_property): new function.
8423 (evict_from_alist): new function.
8424 (general_pushpop_property): new function.
8425 (execute_general_pushpop_property): rewrite. Support nested
8428 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8430 * lily/beam.cc: use length-fraction too.
8432 * scm/define-grob-properties.scm (all-user-grob-properties):
8433 remove property flag-width-function
8434 (all-user-grob-properties): remove space-function.
8436 * scm/layout-beam.scm: remove flag-width-function.
8438 * lily/beam.cc: remove flag-width-function
8440 * scm/layout-beam.scm: remove beam dir functions.
8442 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8444 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8445 for easier grace tweaks.
8447 * lily/beam.cc: remove dir-function.
8449 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8451 * lily/grob.cc: remove spacing-procedure.
8453 * lily/note-head.cc (calc_stem_attachment): new function.
8454 (internal_print): use callback to get glyph-name.
8456 * lily/grob-property.cc (get_interfaces): new function.
8458 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8460 * lily/stem.cc (calc_stem_end_position): new function.
8461 (calc_length): new function.
8462 document details for stem.
8463 remove Stem::get_direction()
8465 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8467 * lily/grob-property.cc (set_callback): new function.
8469 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8471 * lily/item-scheme.cc: new file.
8473 * lily/bar-line.cc (before_line_breaking): remove function.
8474 remove bar-size-procedure, break-glyph-function
8476 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8478 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8480 * lily/system-start-delimiter.cc (print): suicide from
8481 here. Remove after_line_breaking_callback.
8483 * lily/script-interface.cc (calc_direction): use callback for direction.
8485 * lily/side-position-interface.cc (aligned_side): don't use
8486 Side_position_interface::get_direction directly. Use callback.
8488 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8490 (get_print_stencil): rename from get_stencil: create stencil with
8491 transparency, color and cause.
8493 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8495 * python/convertrules.py (conv): insert temporary warning rule.
8497 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8499 * lily/grob-property.cc (try_callback): remove marker if applicable.
8501 * lily/grob.cc: elucidate doc about after/before-line-breaking
8503 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8505 * lily/stem.cc (height): idem.
8507 * lily/stem-tremolo.cc: idem.
8509 * lily/slur.cc (height): don't use get_uncached_stencil()
8511 * lily/rest.cc (y_offset_callback): use offset callback
8512 iso. after-line-breaking callback.
8514 * lily/grob.cc: change after/before-line-breaking-callback to
8515 after/before-line-breaking dummy properties.
8517 * lily/include/grob.hh: remove Grob_status.
8519 * scm/define-context-properties.scm
8520 (all-user-translation-properties): remove verticalAlignmentChildCallback
8522 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8523 (calc_direction): use callback
8524 (calc_positions): use callback.
8526 * lily/tie.cc (calc_direction): use callback. Only call parent
8527 positioning for more than one tie.
8529 * lily/tie-column.cc (calc_positioning_done): use callback
8531 * lily/slur-scoring.cc (calc_control_points): use callback
8533 * lily/slur.cc (calc_direction): use callback.
8535 * lily/note-collision.cc (force_shift_callback): remove.
8537 * lily/dot-column.cc (force_shift_callback): remove. Use
8538 other_axis_parent_positioning.
8540 * lily/grob.cc (other_axis_parent_positioning): new function.
8541 (same_axis_parent_positioning): new function
8543 * lily/align-interface.cc (alignment_callback): remove function.
8545 * lily/note-collision.cc (calc_positioning_done): use callback.
8547 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8548 (calc_direction): idem.
8549 remove print function.
8551 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8553 * lily/dot-column.cc (calc_positioning_done): use callback.
8555 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8557 * lily/beam.cc (calc_direction): use pseudo-property for beam
8559 (calc_positions): use callback
8561 * lily/align-interface.cc (calc_positioning_done): use
8562 callback. Fold fixed distance and normal alignment in one function.
8564 * lily/stem.cc (calc_stem_end_position): use callback.
8565 (calc_positioning_done): idem.
8566 (calc_direction): idem.
8567 (calc_stem_end_position): idem
8568 (calc_stem_info): idem.
8570 * lily/grob-property.cc (get_property_data): new function:
8571 (try_callback): new function.
8573 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8576 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8578 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8580 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8584 * lily/include/*.hh (Module): compile fixes.
8586 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8588 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8589 as an argument for char-syntax: use (char-syntax (or nil 0))
8590 instead of (char-syntax nil), thanks to Milan Zamazal.
8592 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8594 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8597 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8600 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8602 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8603 add class_name() method.
8605 * lily/music-scheme.cc: remove ly:music-name.
8607 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8609 * cygwin/postinstall-lilypond.sh: Remove cruft.
8611 * cygwin/postremove-lilypond.sh: Remove.
8613 * cygwin/GNUmakefile (default): Remove postremove rules.
8615 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8617 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8620 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8623 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8624 consider break index for broken spanner.
8626 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8627 characters from string before splitting.
8629 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8631 * scm/framework-ps.scm (output-preview-framework): use
8632 is-book-title to determine whether to chop off the booktitle.
8634 * lily/paper-book.cc (systems): init from book-title-properties
8635 (add_score_title): init score-title-properties.
8637 * ly/paper-defaults.ly: add {score,book}-title-properties.
8639 * scm/document-backend.scm (lookup-interface): error message if
8640 using unknown interface.
8642 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8645 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8647 (make_bracket): new function.
8649 * scm/lily.scm (define-scheme-options): add paper-size option.
8651 * ly/declarations-init.ly (laissezVibrer): get paper size from
8654 * scm/translation-functions.scm: use \fontsize for changing the
8657 * scm/define-grobs.scm (all-grob-descriptions): set
8658 between-length-limit to 1.0
8660 * lily/tie-helper.cc: add between_length_limit_ detail property.
8662 * mf/feta-bolletjes.mf: typos.
8664 * lily/note-head.cc (internal_print): don't shadow idx
8665 parameter. This fixes wrong attachment for do shape heads.
8667 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8669 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8671 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8673 * scm/layout-slur.scm: rename from slur.scm
8675 * scm/layout-page-layout.scm: rename from page-layout.scm
8677 * scm/layout-beam.scm: rename from beam.scm
8679 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8680 bass-figure-interface
8682 * lily/new-figured-bass-engraver.cc (process_music): add
8683 implicitBassFigures property.
8685 * scm/define-markup-commands.scm (pad-x): new markup.
8687 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8688 minimumVerticalExtent on FiguredBass context.
8690 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8691 case the continuation crosses a line break.
8693 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8695 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8696 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8697 absolute file name bug.
8699 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8701 * VERSION (PACKAGE_NAME): release 2.7.12
8703 * input/regression/figured-bass-continuation-center.ly: new file.
8705 * input/regression/beam-outside-beamlets.ly: new file.
8707 * lily/beam.cc (set_beaming): don't clip edges.
8708 (connect_beams): don't clip edges.
8710 * lily/beaming-info.cc (clip_edges): new function.
8712 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8714 * Documentation/user/instrument-notation.itely (Figured bass):
8715 demonstrate extenders, update seealso links.
8717 * scm/titling.scm (marked-up-headfoot): change tagline
8718 handling. tagline = ##f will blank the tagline as well.
8720 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8722 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8724 * lily/new-figured-bass-engraver.cc (struct
8725 New_figured_bass_engraver): add new_music_found_ member.
8727 * lily/lilypond-version.cc (Lilypond_version): deal with
8728 incorrectly formatted version strings.
8730 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8731 New_figured_bass_engraver by default.
8733 * lily/ttf.cc (print_trailer): only define glyph names when
8734 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8736 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8738 * lily/horizontal-bracket.cc (make_bracket): new function.
8740 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8741 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8742 BassFigureLine, BassFigureAlignment
8744 * lily/new-figured-bass-engraver.cc (process_music): new file.
8746 * lily/figured-bass-continuation.cc: new file.
8748 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8751 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8753 * scripts/lilypond-book.py: Bug fix, put the quote around the
8754 actual score for LaTeX documents.
8756 * scm/define-grobs.scm (all-grob-descriptions): Change
8757 collapse-height of the SystemStartBracket grob to 5.0,
8758 so the bracket disappears for single stave score lines (similarly
8759 to SystemStartBraces).
8761 * Documentation/user/advanced-notation.itely (Polymetric
8762 notation): Clarify the use of compressMusic.
8764 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8765 that the grace spacer note in other staves need the same duration
8766 and document the stroke-style property.
8768 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8770 * Documentation/user/global.itely (Vertical spacing): document
8771 alignment-extra-space and fixed-alignment-extra-space.
8773 * Documentation/topdocs/NEWS.tely (Top): add entry.
8775 * input/regression/alignment-vertical-spacing.ly: new file.
8777 * python/convertrules.py (conv): add rule.
8779 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8781 * lily/align-interface.cc (stretch_after_break): new
8782 function. Read fixed-alignment-extra-space property.
8783 (align_elements_to_extents): read alignment-extra-space property.
8785 * lily/lily-guile.cc (robust_scm2dir): new function.
8787 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8788 (annotate-space-left): new function. Annotate space left on page.
8789 (annotate-y-interval): new function.
8790 (paper-system-annotate-last): new function. Annotate bottom-space.
8792 * mf/feta-beugel.mf (y):
8794 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8796 * VERSION (PACKAGE_NAME): release 2.7.11
8798 * scm/lily-library.scm (interval-translate): new function
8799 (interval-center): new function.
8801 * scm/page-layout.scm (paper-system-annotate): new function. Add
8802 arrows for dimensions.
8804 * scm/stencil.scm (dimension-arrows): new function.
8806 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8808 * input/regression/page-spacing.ly: add annotatespacing
8810 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8811 (LY_DEFINE): new function ly:paper-system-set-property!
8813 * Documentation/user/global.itely (Paper size): explain how to add
8816 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8817 correspond to GS's definition.
8819 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8821 (print): only connect to next bracket if the next one is alive.
8822 (print): set padding to 0.0 if the bound is a breakable
8823 column. This makes tupletFullLength brackets reach up to the staff
8824 line if it doesn't connect to the next line.
8826 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8828 * lily/bar-number-engraver.cc: correct docs.
8830 * scm/output-lib.scm (first-bar-number-invisible): rename from
8831 default-bar-number-visibility
8833 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8835 * scm/define-music-properties.scm (all-music-properties): remove
8838 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8840 * po/fi.po: refresh.
8842 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8844 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8846 (disappear): bugfix.
8848 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8850 * lily/include/paper-system.hh (class Paper_system): remove
8851 staff_extents_ member.
8853 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8855 * lily/include/paper-system.hh (class Paper_system): remove
8856 number_ variable. Remove is_title_. Remove break_before_penalty_
8858 * lily/paper-book.cc (systems): use 'number property iso. number_
8861 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8862 remove ly:paper-system-number.
8864 * scm/lily-library.scm (paper-system-title?): new function.
8866 * lily/book.cc (process): bugfix: flip ?: cases.
8868 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8871 * ly/music-functions-init.ly: add outputProperty music function.
8873 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8875 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8877 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8879 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8881 * lily/paper-system.cc (internal_get_property): new function.
8883 * Documentation/user/global.itely (Vertical spacing): refer to
8886 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8889 * input/regression/page-spacing.ly: new file.
8891 * input/regression/page-top-space.ly: new file.
8893 * lily/spacing-spanner.cc: cmath -> math.h
8895 * lily/paper-system.cc (read_left_bound): new function. Read
8896 line-break-system-details from left bound to determine extents.
8898 * Documentation/user/programming-interface.itely (Using LilyPond
8899 syntax inside Scheme): change applyxxx -> applyXxx.
8901 * ly/music-functions-init.ly: add outputProperty music function.
8903 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8905 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8907 * python/convertrules.py (conv): rule
8909 * ly/music-functions-init.ly: applyxxx -> applyXxx
8911 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8914 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8916 * flower/include/real.hh: include <math.h> iso. <cmath>
8918 * flower/include/offset.hh: include real.hh
8920 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8922 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8923 fix example, now that 'interfaces is no longer directly available.
8925 * lily/book.cc (process): don't crash if paper == NULL.
8929 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8931 * scm/define-music-types.scm (music-descriptions): set length and
8932 start-callback for QuoteMusic
8934 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8936 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8937 arguments. Fixes compilation error with gcc 3.3.
8939 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8941 * VERSION: release 2.7.10
8943 * stepmake/stepmake/python-module-rules.make
8944 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8946 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8949 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8951 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8952 -Werror. Otherwise GCC barfs over various optimizations.
8954 * scm/define-grob-properties.scm (all-internal-grob-properties):
8955 add note-head property
8957 * Documentation/user/instrument-notation.itely (Laissez vibrer
8960 * input/regression/laissez-vibrer-ties.ly: new file.
8962 * lily/laissez-vibrer-engraver.cc: new file.
8964 * lily/include/tie-column-format.hh: new file.
8966 * lily/tie-column-format.cc: new file.
8968 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8970 * lily/laissez-vibrer-tie.cc: new file.
8972 * lily/include/laissez-vibrer-tie.hh: new file.
8974 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8976 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8978 * scm/define-grobs.scm (all-grob-descriptions): add
8979 LaissezVibrerTie, LaissezVibrerTieColumn
8981 * lily/tie-column.cc (set_tie_config_directions): new function
8982 (final_shape_adjustment): new function.
8983 (shift_small_ties): new function.
8985 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8987 * lily/include/tie.hh (struct Tie_details): add x_gap_
8988 (struct Tie_configuration): add head_position_
8990 * lily/tie-column.cc (set_chord_outline): new function.
8992 * mf/cmr.enc.in: remove file.
8994 2005-09-11 Graham Percival <gpermus@gmail.com>
8996 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8998 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
9000 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
9001 reduce aliasing effects.
9003 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
9006 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9008 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
9010 * flower/include/real.hh: std::fabs too.
9012 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
9014 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
9016 * lily, flower: Include C++ iso C headers. Import namespace std
9019 * lily/side-position-interface.cc:
9021 * lily/note-head.cc:
9022 * lily/include/includable-lexer.hh:
9023 * flower/include/string-data.icc: Remove using std::*.
9025 * lily, flower: Include C++ iso C headers. Import namespace std
9028 * lily/side-position-interface.cc:
9030 * lily/note-head.cc:
9031 * lily/include/includable-lexer.hh:
9032 * flower/include/string-data.icc: Remove using std::*.
9034 * Documentation/user/instrument-notation.itely (Entering lyrics):
9035 Multiple latin-1->utf-8 conversion fix.
9037 * Documentation/user/*tely: Update Emacs cookie to utf-8.
9039 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
9041 * lily/tie.cc (get_configuration): also avoid dots for non-space
9044 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
9046 * Documentation/user/instrument-notation.itely: Bugfix.
9048 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
9050 * tex/GNUmakefile: don't install texinfo.tex
9052 * tex/ : cleanup: remove unused files.
9054 * lily/general-scheme.cc: remove my_{isinf,isnan}.
9056 * flower/include/real.hh: using std::{isnan,isinf}
9058 * VERSION (PATCH_LEVEL): release 2.7.9
9060 2005-09-05 Graham Percival <gpermus@gmail.com>
9062 * Documentation/user/ instrument-notation.itely,
9063 advanced-notation.itely: minor tweaks.
9065 * input/test/script-chart.ly: add item padding.
9067 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9069 * flower/offset.cc: use math.h iso. <cmath>
9071 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9074 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9075 (widen-left-stencil-edges): new function. Fix alignment problems
9076 with LaTeX includegraphics.
9078 * lily/text-interface.cc (interpret_markup): use abort().
9080 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9082 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9084 * lily/tie.cc (get_configuration): update bezier shape as we
9086 (get_configuration): don't move large ties if we're outside of the
9089 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9091 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9093 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9095 * .cvsignore: Add auto-generated configure files and then some.
9097 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9099 * scm/define-grobs.scm (DynamicLineSpanner): Add
9100 X-extent-callback. Fixes hairpin-slur collision.
9102 2005-08-31 Graham Percival <gpermus@gmail.com>
9104 * Documentation/user/advanced-notation.itely,
9105 basic-notation.itely: minor changes.
9107 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9109 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9110 \linebreak between each .eps file if \betweenLilyPondSystem is
9113 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9114 music): Document the \linebreak
9116 * Documentation/user/lilypond-book.itely,
9117 input/tutorial/lbook-latex-test.tex,
9118 Documentation/user/examples.itely: Remove \usepackage{graphics}
9120 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9122 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9124 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9127 * scripts/lilypond-book.py (PREAMBLE_LY): define
9128 inside-lilypond-book
9129 (modify_preamble): new function. Insert \RequirePackage{graphics}
9130 when no {graphics found in preamble.
9132 2005-08030 Graham Percival <gpermus@gmail.com>
9134 * Documentation/user/basic-notation.itely, global.itely,
9135 tutorial.itely: misc small changes.
9137 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9139 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9142 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9144 * lily/tie-column.cc (new_directions): put Tie down on center
9147 * lily/script-interface.cc (before_line_breaking): use
9148 Grob::programming_error
9150 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9152 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9155 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9157 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9159 2005-08-29 Werner Lemberg <wl@gnu.org>
9161 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9162 the `*.scale.pfa' files to avoid warnings.
9164 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9166 * lily/tempo-performer.cc (process_music): idem.
9168 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9170 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9172 * Documentation/user/advanced-notation.itely (Text markup): not a
9175 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9177 * lily/staff-performer.cc (initialize): add tempo/name to
9180 2005-08-26 Graham Percival <gpermus@gmail.com>
9182 * Documentation/user/advanced.itely: add text-only example.
9184 * Documentation/user/invoking.itely: add index entries for
9187 * Documentation/user/ tutorial.itely, basic-notation.itely:
9188 small fixes suggested by Steve D. Thanks!
9190 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9192 * input/regression/markup-bidi-pango.ly: new file.
9194 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9195 standard. Remove #ifdef. Remove memleak.
9196 (text_stencil): use text_dir to decide how to composite items.
9197 (text_stencil): determine uniform text direction for the entire
9200 * scripts/lilypond-book.py (output_name): remove
9201 latex_filter_cmd. Non-portable to non-Unix systems.
9202 (get_latex_textwidth): use File.write and os.unlink() instead.
9204 * THANKS: add Vicente & Trevor.
9206 * lily/grob.cc (discretionary_processing): look up origin for
9207 programming_error too.
9209 * input/regression/tie-broken.ly: new file.
9211 * lily/tie-column.cc (set_chord_outlines): set outline for line
9214 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9216 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9217 unscaled transform, just translate stencils.
9219 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9222 * scm/define-markup-commands.scm (wordwrap-string): use
9224 (wordwrap-stencils): idem.
9227 (wordwrap-stencils): translate last line to right for
9228 text-direction = LEFT.
9230 * scm/define-grob-properties.scm (all-user-grob-properties): add
9233 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9235 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9236 when copying a Lily_parser object.
9238 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9240 * scm/define-markup-commands.scm (null): add null markup.
9242 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9244 * lily/item.cc: Add documentation of center-invisible
9246 2005-08-24 Graham Percival <gpermus@gmail.com>
9248 * Documentation/user/advanced-notation.itely: add info about
9251 * Documentation/user/programming-interface.itely: fix example
9252 involving raised text.
9254 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9256 * lily/beam.cc (print): fix X start/end points of isolated
9259 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9261 * lily/multi-measure-rest.cc (set_text_rods): new function.
9263 * lily/vertical-align-engraver.cc (process_music): call
9264 Align_interface::set_axis(). This forces #'elements to be ordered,
9265 preventing random vertical reordering of staves.
9267 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9268 add avoid-slur property.
9270 * Documentation/user/basic-notation.itely (Measure repeats): add
9271 countPercentRepeats example.
9273 * Documentation/user/advanced-notation.itely (Other text markup
9274 issues): remove remark about normal-font. We have \normal-text
9276 * input/regression/tie-chord.ly: add note about remaining bugs.
9278 * lily/tie.cc (print): try Tie_column::set_directions () if
9279 control-points not yet defined.
9281 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9283 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9284 extent. This fixes braces falling out of the EPS bbox.
9286 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9289 2005-08-23 Graham Percival <gpermus@gmail.com>
9291 * {various} : change #up->#UP and #down->#DOWN.
9293 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9295 * Documentation/user/advanced-notation.itely: clarify
9296 what objects handles text on a multimeasure rest.
9298 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9300 * VERSION (PATCH_LEVEL): release 2.7.7
9302 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9304 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9306 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9308 * input/regression/*.ly: formatting clean-up. Default layout
9309 before music expression.
9311 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9312 romanze28-2 example.
9314 * scm/ps-to-png.scm: remove dir-re function.
9315 (make-ps-images): generate page names, instead of globbing them.
9316 This brings down LilyPond memory usage for make web by a factor
9319 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9320 don't use glob. With 3000 files, globbing
9321 Documentation/user/out-www/ can take too much time.
9323 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9325 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9327 * input/regression/tie-manual.ly: new file
9329 * input/regression/tie-chord.ly: update.
9331 * flower/include/interval.hh (struct Interval_t):
9333 * lily/tie.cc (distance): new function
9334 (height): new function.
9335 (init): new function
9336 (Tie_details): new struct.
9338 * lily/skyline.cc (skyline_height): new function.
9340 * lily/tie-column.cc (set_chord_outlines): new function.
9341 (new_directions): read tie-configuration
9343 * lily/skyline.cc: fix ASCII art.
9345 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9347 * python/convertrules.py (string_or_scheme): Fix spelling error
9349 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9351 * lily/tie-column.cc (set_directions): set directions only once.
9352 (add_configuration): new function.
9354 * lily/tie.cc (set_control_points): new function
9356 * lily/tie-column.cc (new_directions): new function.
9358 * ly/music-functions-init.ly: set 'pitch property
9359 iso. trill-pitch. This makes \relative work with \pitchedTrill
9361 * lily/tie.cc (get_configuration): new function. Don't generate
9362 control points, rather, generate configuration.
9363 remove head-pair property.
9365 * lily/include/tie.hh (struct Tie_configuration): new struct.
9367 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9369 * Documentation/topdocs/NEWS.tely: clarify.
9371 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9373 * lily/tie.cc: remove minimum-length
9375 * scm/define-grob-properties.scm (all-user-grob-properties):
9376 remove staffline-clearance, y-offset
9378 * input/regression/tie-dots.ly (Module): remove.
9380 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9381 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9383 * input/regression/tie-single.ly: new file.
9385 2005-08-21 Graham Percival <gpermus@gmail.com>
9387 * ly/bagpipe.ly: fix compile problem.
9389 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9391 * lily/midi-item.cc (name): new method.
9393 * lily/staff-performer.cc (acknowledge_audio_element): use
9394 signature of baseclass.
9396 * lily/engraver-group.cc (do_announces): move recursion call out
9399 * lily/drum-note-performer.cc (class Drum_note_performer): use
9400 process_music everywhere.
9402 * ly/performer-init.ly: add default children everywhere.
9404 * lily/paper-book.cc (output): call paper-book-write-midis
9405 directly: always write MIDI, even if no \layout {} block.
9407 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9409 * VERSION (PACKAGE_NAME): release 2.7.6
9411 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9412 about not being able to handle repeat.
9414 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9416 * Documentation/user/examples.itely (Piano templates):
9417 * lily/include/performer-group.hh: Remove last traces of
9418 Performer_group_performer. Fixes make web.
9420 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9422 * Documentation/user/examples.itely (Piano templates): change
9423 Engraver_group_engraver -> Engraver_group
9425 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9426 scm_stand_in_procs is not weak_any.
9428 * lily/volta-bracket.cc (print): don't use strcmp().
9430 * lily/volta-engraver.cc (process_music): use
9431 Text_interface::is_markup() for setting the 'text property of the
9434 * input/mutopia/claop.py (accents): update syntax to 2.6
9436 * scm/define-context-properties.scm
9437 (all-user-translation-properties): add countPercentRepeats.
9439 * Documentation/user/basic-notation.itely (Measure repeats): add
9440 isolated percent example.
9442 2005-08-18 Graham Percival <gpermus@gmail.com>
9444 * input/ {various}: change direction #1, #-1 to
9445 #up/#down or \fooUp, \fooDown.
9447 * Documentation/user/music-glossary.tely: #-1 to #down.
9449 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9450 to #up, #-1 to #down.
9452 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9454 * lily/include/engraver-group.hh: rename.
9456 * lily/include/performer-group.hh: rename.
9458 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9460 * input/test/script-abbreviations.ly: Removed some old LaTeX
9463 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9465 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9466 Remove functions. Remove if 1: constructs, reindent.
9468 * scripts/convert-ly.py (add_version): Add functions from
9471 * scm/script.scm (default-script-alist):
9472 s/priority/script-priority. Fixes script stacking. Backportme.
9473 (Fermata): Very low priority.
9475 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9477 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9479 * input/regression/slur-script.ly: remove padding tweaks. Add
9482 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9483 time sigs and related stuff.
9485 * scm/define-grob-properties.scm (all-user-grob-properties): add