1 2006-11-05 Werner Lemberg <wl@gnu.org>
3 * Documentation/user/changing-defaults.itely,
4 Documentation/user/preface.itely: Use `--', not `---'.
7 * Documentation/user/introduction.itely: Minor improvements.
8 (Automated engraving): Make example using \applyOutput work
11 * input/regression/apply-output.ly: Improve.
13 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
15 * lily/dynamic-engraver.cc:
18 * input/regression/note-head-harmonic.ly:
20 * input/regression/note-head-harmonic-whole.ly:
21 Center harmonic heads if stem is invisible. Fixes #140
24 end context snippet with '\n'
27 catch all GUILE exceptions
32 * lily/include/lily-lexer.hh:
34 * lily/lily-parser.cc:
35 Lily_parser* arg for copy ctor too.
38 abc2ly new tempo syntax
40 2006-11-04 Heikki Junes <hjunes@gmail.com>
42 * po/fi.po: update Finnish translation.
44 2006-11-03 Graham Percival <gpermus@gmail.com>
46 * Documentation/user/ {various}: rename page->spacing,
47 global->non-music, invoking->running, example->templates.
49 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
51 * scm/display-lily.scm: add a parser argument to display methods,
52 instead of using a *parser* special variable.
54 * scm/define-music-display-methods.scm: add a parser argument to
55 display methods. Update the methods for \melisma, \melismaEnd,
56 \breathe, \tempo, \partial.
58 * input/no-notation/display-lily-tests.ly: update the test
59 utilities according to the changes in display-lily.scm
61 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
63 * *: The Joy of Merging.
65 * buildscripts/git-update-changelog.py:
66 sort commits, and use .git-commits-done file.
70 dist emacs patches too.
72 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
77 * lily/context-def.cc:
78 * lily/include/parse-scm.hh:
79 * lily/include/smobs.hh:
82 * lily/program-option.cc:
84 implement and use ASSERT_LIVE_IS_ALLOWED()
86 * ly/music-functions-init.ly:
88 set-part-combine fix for autochange.
90 * lily/include/lily-lexer.hh:
91 * lily/include/lily-parser.hh:
93 * lily/lily-parser-scheme.cc:
94 * lily/lily-parser.cc:
95 clear lexer scopes after parsing file. Plugs pseudo memory leak
97 * ly/declarations-init.ly:
98 * ly/music-functions-init.ly:
99 * scm/part-combiner.scm:
100 Remove set-part-combine-listener. This plugs a memory leak.
106 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
111 * lily/part-combine-iterator.cc:
112 don't allocate part combine events statically. Plugs small leak.
114 * lily/lily-parser-scheme.cc:
115 plug memleak in case of failed files.
117 * lily/include/source.hh:
122 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
124 * lily/include/program-option.hh:
125 * lily/program-option.cc:
126 get_program_option() function
128 * ly/titling-init.ly:
129 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
131 * lily/include/translator.hh:
132 * lily/include/translator.icc:
133 * lily/translator.cc:
136 * lily/figured-bass-engraver.cc:
137 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
139 * stepmake/stepmake/compile-vars.make:
140 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
142 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
148 trim warning messages.
153 * input/regression/utf-8.ly:
154 document utf-8 meaning of phrases.
156 * scm/define-markup-commands.scm:
157 make \caps markup default to smallCaps
159 * lily/pango-font.cc:
161 use glyph indexing for glyph name .notdef
163 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
165 * input/regression/utf-8.ly: Fix doc to match order of language
168 2006-11-01 Joe Neeman <joeneeman@gmail.com>
170 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
171 page and line forces.
173 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
175 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
177 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
179 * Documentation/user/GNUmakefile:
180 don't use ImageMagick, use GS directly.
183 otf depends on otf-g?table. Fixes race condition in -j2 build.
184 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
190 remove .deb/.rpm downloading.
192 * buildscripts/git-update-changelog.py:
193 bugfixes for git-update-changelog.py
195 * Documentation/user/GNUmakefile:
198 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
200 * input/regression/tie-semi-single.ly:
201 use position/direction from single tie case too. This fixes
202 overrides and defaults for single laissez-vibrer and repeat ties.
204 * buildscripts/git-update-changelog.py:
205 only prepend header if one patch was successful.
207 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
209 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
210 stuff. Remove cygwin packaging stuff.
212 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
214 * python/convertrules.py (conv): Part 2 fixes vertical extent.
216 * input/test/vertical-extent.ly: Fix and elaborate on vertical
217 staff extent. (Thanks Mats)
219 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
221 * buildscripts/git-update-changelog.py (main): write .msg and cvs
224 * scm/define-grobs.scm:
225 separation-items have width
231 * Documentation/topdocs/NEWS.tely:
232 * lily/separating-group-spanner.cc:
233 * lily/slur-engraver.cc:
234 * lily/slur-scoring.cc:
235 * scm/define-grobs.scm:
236 * input/regression/slur-clef.ly:
237 add breakableSeparationItem to extra encompass for slurs. This
238 fixes slur/clef slur/key collisions etc. Should fix #49
240 * lily/include/slur-scoring.hh:
241 * lily/slur-scoring.cc:
242 Use X of separation item as slur start. Fixes #120
244 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
246 * buildscripts/git-update-changelog.py (changelog_body): don't
249 * lily/grob.cc: add avoid-slur
251 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
255 move server/emacsclient to elisp/
257 * buildscripts/git-update-changelog.py (Commit.note_del_file):
260 * elisp/server.el.patch:
263 * elisp/emacsclient.patch:
266 * buildscripts/git-update-changelog.py:
273 * buildscripts/git-update-changelog.py:
274 script to update ChangeLog with Git messages.
276 * lily/beam-engraver.cc:
277 * input/regression/rest-pitched-beam.ly:
278 don't set callback if staff-position set. Fixes #126.
280 * lily/bar-number-engraver.cc:
282 * lily/fingering-engraver.cc:
283 * lily/grob-property.cc:
285 * lily/include/grob.hh:
286 * lily/include/lily-guile-macros.hh:
287 * lily/mark-engraver.cc:
288 * lily/melody-engraver.cc:
289 * lily/script-column.cc:
290 * lily/tie-formatting-problem.cc:
292 internal_get_property_data() using ly_symbol2scm()
294 * stepmake/stepmake/generic-targets.make:
295 create .gitignore in outdir.
300 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
302 * input/test/vertical-extent.ly:
303 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
305 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
307 * stepmake/bin/add-html-footer.py (compose): remove setgcos
309 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
311 * GNUmakefile.in (install-help2man): install-help2man target.
313 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
315 * SConstruct (configure): Do not check for /bin/sh.
317 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
319 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
322 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
324 * input/regression/fret-boards.ly: new file.
326 * po/de.po: new po courtesy translation team.
328 * scripts/lilypond-book.py (get_option_parser): add newline to doc
331 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
333 * ly/gregorian-init.ly (neumeDemoLayout): update
334 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
336 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
337 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
339 2006-10-27 Erlend Aasland <erlenda@gmail.com>
341 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
342 Yet another build fix.
344 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
346 * SConstruct (lilypondprefix): use sorted() for list_sort()
349 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
351 * flower/SConscript: Unit test rules.
353 * flower/test-std.cc: Compile fix.
355 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
357 * python/midi.c (pymidi_parse_track): warning fixes.
359 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
360 include dot-column.hh
362 2006-10-26 Graham Percival <gpermus@gmail.com>
364 * Documentation/user/{basic-, global}: minor changes from mailist.
366 2006-10-26 Erlend Aasland <erlenda@gmail.com>
368 * scm/define-grobs.scm: trivial beautification
370 * lily/tie-performer.cc: no need to #include "pqueue.hh"
372 * lily/source-file.cc: put multibyte var inside #if clause
374 * scm/define-grob-interfaces.scm:
375 * scm/define-grob-properties.scm:
376 Build fix (string-fret-finger-combinations)
378 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
381 * Documentation/user/lilypond-book.itely: Build fix.
383 2006-10-26 Joe Neeman <joeneeman@gmail.com>
385 * lily/system.cc (get_paper_system):
386 * lily/paper-book.cc (systems):
387 move most of the backwards compatibility stuff into
390 * Documentation/topdocs/NEWS.tely: add 2 entries for the
393 * Documentation/user/page.itely: remove time-scaled-music
394 bug for the Page_turn_engraver
396 * lily/paper-book.cc (set_system_penalty): backwards
397 compatibility (breakbefore) for the old page breaker
399 2006-10-25 Graham Percival <gpermus@gmail.com>
401 * Diocumentation/user/instrument-notation.itely: added more
402 info about stanzas; thanks Geoff!
404 * Documentation/user/ {basic, advanced}: small fixes from
407 * THANKS: add some bug reporters.
409 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
411 * scm/define-context-properties.scm (all-user-translation-properties):
412 noteToFretFunction: Add.
414 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
415 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
417 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
419 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
422 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
423 Remove bashism in delete.
425 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
427 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
429 * scm/translation-functions.scm (determine-frets-mf): flatten let*
431 * scm/define-context-properties.scm
432 (all-user-translation-properties): add maximumFretStretch property.
434 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
436 * lily/source-file.cc (get_counts): use multibyte variable.
438 * scm/translation-functions.scm (determine-frets-mf): new
439 function: compute fret numbers.
441 * scm/output-lib.scm (string-frets->description) new function.
442 (fret-board::calc-stencil): new function
444 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
446 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
448 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
450 * lily/tab-note-heads-engraver.cc: cleanups.
452 * lily/fretboard-engraver.cc: new file
454 * ly/engraver-init.ly: add FretBoards context
456 2006-10-24 Joe Neeman <joeneeman@gmail.com>
458 * lily/grob.cc (pure_relative_y_coordinate)
459 (pure_height): use the new call_pure_function stuff
461 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
464 * lily/side-position-interface.cc (pure_y_aligned_side): add an
467 * lily/simple-closure.cc (ly_eval_simple_closure): make
468 simple-closure evaluatable from scheme
469 (evaluate_with_simple_closure): make simple-closures pure-
472 * lily/slur.cc (pure_outside_slur_callback): new function
474 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
475 fits in with previous changes that made the page forces much
478 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
479 and pure-Y-extent into this new function.
480 (pure-conversions-alist): add outside-slur-callback
482 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
484 * Documentation/user/advanced-notation.itely (Instrument names):
485 Remove obsolete bug workaround for instrument names on piano
488 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
490 * Documentation/user/lilypond-book.itely (Integrating DocBook and
491 music): patch by Bertalan Fodor for docbook.
493 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
494 of $(LILYPOND). Prevents lilypond run for .txt files.
496 * INSTALL.txt: gitness.
498 * .cvsignore: update to force gitness.
500 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
502 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
503 detect suicide in nested tuplets.
505 2006-10-23 Werner Lemberg <wl@gnu.org>
507 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
508 typo in argument to FT_Get_X11_Font_Format.
510 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
512 * stepmake/stepmake/po-vars.make: more gitness.
514 * flower/polynomial.cc (check_sol): no empty if bodies.
516 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
518 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
520 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
522 * Documentation/user/examples.itely (Transcription of mensural
523 music): Added more comments in .ly source. Suggest to remove
524 Forbid_line_break_engraver to allow line breaking at all bars.
526 * Documentation/user/instrument-notation.itely (Ancient
527 articulations): Updated @refbugs regarding episem.
529 * Documentation/user/instrument-notation.itely (Gregorian square
530 neumes ligatures): Added \augmentum dots. Updated @refbugs
531 regarding \augmentum.
533 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
535 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
538 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
541 * ly/gregorian-init.ly: Added \augmentum macro.
543 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
545 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
547 * lily/pango-font.cc (pango_item_string_stencil): use
548 FT_Get_X11_Font_Format()
550 2006-10-22 John Mandereau <john.mandereau@free.fr>
552 * po/fr.po: update translation.
554 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
556 * VERSION (PATCH_LEVEL): bump version
558 * input/regression/horizontal-bracket-break.ly: new file.
560 * scm/define-grobs.scm (all-grob-descriptions): calc
563 * lily/horizontal-bracket.cc (make_bracket): support
564 connect-to-neighbor. Fix #118
566 * VERSION: release 2.9.26-2
568 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
570 * VERSION (PACKAGE_NAME): release 2.9.26
572 * buildscripts/output-distance.py (test_basic_compare): add
574 (FileLink.multi_img_cell): new function, glob multi-page png
577 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
579 * po/lilypond.pot: update.
581 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
583 * Documentation/user/global.itely (File structure): remove
586 * lily/parser.yy (FIXME): remove ADDQUOTE
588 * Documentation/user/global.itely (Extracting fragments of
589 notation): new node, about clip systems.
591 * Documentation/user/lilypond-book.itely (Many quotes of a large
592 score): ref to clip systems.
594 * Documentation/user/instrument-notation.itely (Entering lyrics):
595 add note about lyric ties and required font.
597 * lily/open-type-font.cc (glyph_list): format errors.
599 * Documentation/user/programming-interface.itely (Scheme
600 procedures as properties): more doco on simple-closure and scheme
602 (Input variables and Scheme): use lilypond[verbatim], document
605 * Documentation/user/page.itely (Displaying spacing): use \book
606 explicitly, so arrows show .
607 (Line breaking): add note about Forbid_line_break_engraver
609 * Documentation/user/tweaks.itely (Common tweaks): also set length
610 to prevent tie squeezing.
611 (Default files): use @var{}
613 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
614 (Generating LilyPond files): add FOMUS.
616 2006-10-20 Joe Neeman <joeneeman@gmail.com>
618 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
619 Y-offset for TextScript and Script
621 * lily/text-engraver.cc (make_item):
622 * lily/script-engraver.cc (make_script_from_event):
623 remove call to Side_position_interface::set_axis since all scripts
624 now have this set by default
627 * lily/prob.cc: use variables
629 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
631 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
632 at typography, rather analyse stream event duration.
634 * Documentation/user/page.itely (Page formatting): set a6 paper
635 for system separator example.
637 * lily/arpeggio.cc (Module): idem.
639 * lily/accidental-placement.cc: add script-priority property.
641 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
643 * lily/ttf.cc (print_trailer): if all else fails: use
644 glyphIndexXXXX as glyph name. Fixes #117.
646 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
647 entry if cmap contains glyph.
648 (get_index_to_charcode_map): remove from Pango_font class, use
649 global filename -> font mapping.
650 (get_glyph_index_name): new function.
651 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
654 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
656 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
659 * scm/define-grob-properties.scm (all-user-grob-properties):
660 remove outdated doc. Fixes #116
662 * lily/completion-note-heads-engraver.cc (process_music): always
663 clone input events; otherwise we may overwrite input 'duration
664 property. Fixes #115.
666 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
669 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
672 * VERSION (PATCH_LEVEL): bump version.
674 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
676 * lily/engraver.cc (internal_make_grob): use variables.
678 * flower/string-convert.cc (dec2double): clean-up warnings.
680 * configure.in (CXXFLAGS): add -Werror.
682 * VERSION (PACKAGE_NAME): release 2.9.25
684 2006-10-18 Joe Neeman <joeneeman@gmail.com>
686 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
687 line even if we precede a forced break.
689 * lily/optimal-page-breaking.cc (try_page_spacing): square line
690 forces too. Make page-spacing weight default to 10 because the
691 changes to vertical springs decreased the page force/line force
692 proportions. Also, take the average of line force and page force
693 instead of just the sum.
695 * lily/constrained-breaking.cc (initialize): make the stiffness
696 of the vertical springs depend on the height of the system. This
697 prevents pages with only a few large systems from getting huge
700 * Documentation/user/page.itely (Page formatting): document the
701 change in default page-spacing-weight
703 * lily/include/constrained-breaking.hh: initialise bottom_padding_
705 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
707 * input/typography-demo.ly (melody): remove superfluous slur.
709 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
710 add piano-pedal-script-interface
712 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
714 * scripts/lilypond-book.py: DocBook support.
716 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
718 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
720 (stop_translation_timestep): set bound to currentMusicalColumn if
721 not set yet. Fixes #102
723 * lily/piano-pedal-bracket.cc: formatting.
725 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
727 * lily/piano-pedal-align-engraver.cc: new class
728 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
731 2006-10-18 Heikki Junes <hjunes@gmail.com>
733 * po/fi.po: Update Finnish translation (before the next release).
735 2006-10-17 Joe Neeman <joeneeman@gmail.com>
737 * lily/system.cc (get_paper_system): reinstate the backwards-
738 compatible page breaking for the old page breaker.
740 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
742 * lily/recording-group-engraver.cc: removed
744 * lily/context.cc, lily/translator-group.cc: Don't touch
745 Context::implementation_ if it's null
747 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
749 * scm/paper.scm: only use left-margin if defined.
751 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
753 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
755 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
756 strokeFingerOrientations
758 * lily/script-column.cc (row_before_line_breaking): also handle
759 accidentals and arpeggios in horizontal script stacking.
761 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
764 * input/regression/script-stack-horizontal.ly: trim.
766 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
768 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
771 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
772 'text if string argument.
774 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
776 * scm/define-context-properties.scm
777 (all-user-translation-properties): change to strokeFingerOrientations
779 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
781 * lily/parser.yy: remove debug output
783 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
785 * ly/paper-defaults.ly: set left/right margin.
787 * scm/paper.scm (set-paper-dimensions): use left-margin and
788 right-margin for computing linewidth.
790 * Documentation/topdocs/NEWS.tely (Top): idem.
792 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
795 * scm/define-markup-commands.scm (tied-lyric): increase negative
796 space: space syllables tighter.
798 * VERSION (PATCH_LEVEL): bump version.
800 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
803 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
805 * COPYING: further clarification
807 * VERSION: release 2.9.24
809 * input/regression/script-stack-horizontal.ly: add version.
811 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
813 * input/regression/lyric-tie.ly (texidoc): use different words.
815 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
817 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
819 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
820 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
822 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
824 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
826 * Doxyfile: remove file.
828 * scm/define-grob-interfaces.scm (string-finger-interface): add
829 string-finger-interface
831 * lily/general-scheme.cc (LY_DEFINE): move
832 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
834 * Documentation/topdocs/NEWS.tely (Top): add note for
835 string-finger feature.
837 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
840 * scm/output-lib.scm (string-finger::calc-text): read 'digit
843 * input/regression/script-stack-horizontal.ly: new file.
845 * ly/engraver-init.ly: add Script_row_engraver.
847 * lily/script-column.cc (order_grobs): refactor: separate axis
849 (row_before_line_breaking): new function.
851 * lily/script-row-engraver.cc (Script_row_engraver): new file.
853 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
855 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
857 * Documentation/user/instrument-notation.itely: Cleanup: Remove
858 annoying skip notes from mensural ligature example. Update
859 @refbugs for ligatures and mensural ligatures.
861 * lily/coherent-ligature-engraver.cc,
862 lily/include/coherent-ligature-engraver.hh,
863 lily/mensural-ligature-engraver.cc,
864 lily/vaticana-ligature-engraver.cc: Revise code for item
865 reparentizing. There should now be less programming_error
868 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
870 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
871 Maintenance bugfix: Don't create empty Stencil (), but empty box
872 instead. This fix should eliminate some programming_error
875 * ly/engraver-init.ly (MensuralStaff): Set default accidental
878 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
879 \layout block _before_ score.
881 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
883 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
885 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
887 2006-10-13 Erlend Aasland <erlenda@gmail.com>
889 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
891 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
893 * VERSION (PATCH_LEVEL): bump version.
895 * COPYING: clarify exception note.
897 * lily/main.cc: remove remark about "COPYING".
899 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
900 system-count starts at 0 for each clip-region. Change name to
901 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
902 layout block, per score.
904 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
906 * lily/input-smob.cc: add equal_p for Input
908 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
911 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
913 * lily/prob.cc: Add equal_p predicate for Prob
915 * lily/translator.cc: small cleanup
917 * scm/document-music.cc: use data from translator listener
918 registration to generate documentation for event classes
920 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
922 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
924 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
926 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
928 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
930 * Documentation/topdocs/INSTALL.texi: Thinko.
932 * .cvsignore: Update.
934 * lexer-gcc-3.1.sh: Remove.
936 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
937 Update anonymous cvs access. Remove comment about gcc 3.0.4.
939 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
941 * VERSION: release 2.9.23
943 * lily/paper-column-engraver.cc (stop_translation_timestep): also
946 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
948 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
950 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
952 * input/regression/clip-systems.ly (Notes): new file.
954 * scm/lily.scm (define-scheme-options): add clip-systems option.
956 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
958 (dump-stencil-as-EPS): move bbox calculation from previous
960 (output-framework): use -dclip-systems
962 * scm/lily-library.scm (filtered-map): new function
964 * scm/framework-ps.scm (clip-system-EPS): new function.
965 (clip-system-EPSes): new function.
967 * lily/paper-column.cc: add rhythmic-location to interface
969 * scm/define-grob-properties.scm (all-user-grob-properties): add
970 rhythmic-location property.
972 * scm/clip-region.scm: new file: rhythmic-location data type and
973 system-clipped-x-extent function.
975 * ly/init.ly: use (scm clip-region)
977 * lily/paper-column-engraver.cc (stop_translation_timestep): set
978 rhythmic-location for paper column grobs.
980 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
982 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
984 * ly/engraver-init.ly: Remove obsolete comment on
987 * Documentation/user/instrument-notation.itely: Tune Ancient
988 Articulations figure, such that the episem actually shows.
990 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
991 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
993 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
996 2006-10-12 Graham Percival <gpermus@gmail.com>
998 * Documentation/user/ {some}: minor edits that were lost somehow.
1000 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1002 * VERSION (PACKAGE_NAME): bump version.
1004 * input/regression/lyric-tie.ly (texidoc): new file.
1006 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1008 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1010 * scm/define-markup-commands.scm (tied-lyric): new function: split
1011 string along ~ and reattach with U+203F (tie character) and
1014 * scm/output-lib.scm (lyric-text::calc-text): new function.
1016 * lily/lyric-engraver.cc (process_music): don't set 'text.
1018 * scm/output-lib.scm (string-finger::calc-text): new function
1019 (lyric-text::print): new function.
1021 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1022 generic for fingering & string number. Use for string-finger.
1024 * scm/define-music-types.scm (music-descriptions): add
1027 * lily/fingering-engraver.cc (listen_string_finger): new function
1029 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1031 * scm/define-context-properties.scm
1032 (all-user-translation-properties): add stringFingerOrientations
1034 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1036 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1037 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1039 * lily/dots.cc: Added style property for dots.
1041 * mf/parmesan-heads.mf: Fix typo in comment.
1043 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1044 adding longa head to feta font and removing obsolete default
1045 mapping scheme code.
1047 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1049 * scm/output-lib.scm (fingering::calc-text): use origin
1050 event-property, not music-property.
1052 * lily/lilypond.rc.in: spell my name correctly.
1054 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1056 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1057 already have a non-empty extent. Fixes estimation for Hara-kiri
1060 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1062 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1065 * lily/ligature-engraver.cc: Remove unused #include.
1067 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1068 Bugfix: remove method check_for_prefix_loss(Item *) from global
1069 namespace to avoid namespace pollution.
1071 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1073 * VERSION: release 2.9.22
1075 * ly/generate-documentation.ly: update option name.
1077 * lily/dynamic-text-spanner.cc (print): revert fix.
1079 * scm/define-grob-interfaces.scm
1080 (trill-pitch-accidental-interface):
1081 add trill-pitch-accidental-interface
1083 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1084 dereference if it's really a duration.
1086 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1087 useBassFigureExtenders is not set.
1088 (listen_bass_figure): record as new event if
1089 useBassFigureExtenders not set. Fixes #103.
1091 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1092 instead: move circle. Fixes #107.
1094 * scm/define-grobs.scm (all-grob-descriptions): set
1095 allow-loose-spacing for PaperColumn and
1096 NonMusicalPaperColumn. Kludge for #110.
1098 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1100 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1101 allow-loose-spacing property.
1103 * scm/define-markup-commands.scm (postscript): gsave & grestore
1104 around embedded PS. Do setlinewidth too. Fixes #109.
1106 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1108 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1109 code. This patch fixes ligature brackets that were not at all
1112 2006-10-08 Graham Percival <gpermus@gmail.com>
1114 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1116 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1118 * scm/define-context-properties.scm: clarified docs (bug 91).
1120 * Documentation/user/basic-notation.itely: document volta brackets
1121 not aligning (bug 63).
1123 * Documentation/user/ global.itely invoking.itely: ignore or
1124 add warnings about texstr.
1126 2006-10-08 John Mandereau <john.mandereau@free.fr>
1128 * po/fr.po: update translation.
1130 * po/: update msgids.
1132 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1134 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1136 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1138 * Documentation/user/page.itely (Two-pass vertical spacing): add
1139 documentation for two-pass spacing technique.
1141 2006-10-06 Graham Percival <gpermus@gmail.com>
1143 * Documentation/user/convert-ly.txt: new file; new
1144 storage place for this file (moved from bugs/ CVS).
1146 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1148 * lily/note-head.cc: Fixed programming_error message.
1150 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1152 * scm/define-grobs.scm (pure-conversion): move pure-callback
1155 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1156 marcato, stopped, thumb.
1158 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1160 * lily/completion-note-heads-engraver.cc (process_music): don't
1161 skimp on memory usage.
1163 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1166 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1167 parenthesis item. This fixes premature Y-extent triggering. Fixes
1170 * VERSION (PATCH_LEVEL): bump version.
1172 2006-10-04 Graham Percival <gpermus@gmail.com>
1174 * Documentation/user/advanced-notation.itely: added
1175 info about instrument names for piano or other contexts,
1178 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1180 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1181 solfa_base_notewidth as unit for non-DO-notes too.
1183 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1185 * VERSION: release 2.9.21
1187 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1190 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1192 * python/lilylib.py (progress): Minor fix.
1194 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1196 * lily/note-name-engraver.cc: doc engraver.
1198 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1200 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1202 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1205 * lily/stem-engraver.cc (make_stem): don't set duration-log
1207 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1208 write snippet-names binary.
1210 * python/lilylib.py (system): use os.system for mingw32
1212 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1215 * scm/backend-library.scm: update email address.
1217 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1220 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1223 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1224 handle dot creation separately.
1226 * lily/tab-note-heads-engraver.cc (process_music): idem.
1228 * lily/drum-note-engraver.cc (process_music): idem.
1230 * lily/note-heads-engraver.cc (process_music): idem.
1232 * lily/rest-engraver.cc: don't set duration-log.
1234 * scm/output-lib.scm (string-number::calc-text): new function.
1235 (note-head::calc-duration-log): new function.
1237 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1239 * scm/output-lib.scm (fingering::calc-text): new function.
1241 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1243 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1244 and include-eps-font -> include-eps-fonts
1246 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1248 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1250 * lily/timing-translator.cc: list properties.
1251 (start_translation_timestep): update internalBarNumber too.
1253 * scm/define-context-properties.scm
1254 (all-user-translation-properties): add internalBarNumber.
1256 * input/regression/spacing-no-note.ly: new file.
1258 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1260 * lily/book.cc: #include cleanup.
1262 * lily/include/lily-guile-macros.hh: add assert to
1263 scm_or_str2symbol(SCM).
1265 * VERSION (PATCH_LEVEL): bump version.
1267 * lily/spacing-spanner.cc (musical_column_spacing): handle
1268 musical->nonmusical spacing case, where there is no spacing
1269 wish. Fixes issue #61.
1271 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1272 (pango_item_string_stencil): use logical rect horizontally (to
1273 preserve spaces), ink_rect vertically (for time signatures).
1275 * lily/font-metric.cc (word_stencil): new interface function
1277 * input/regression/utf-8-mixed-text.ly: new file.
1279 * lily/percent-repeat-engraver.cc (listen_percent): remove
1282 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1283 non-dynamic scripts. Fixes #30.
1285 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1287 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1289 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1290 SCM_UNDEFINED for non-existent data.
1292 * lily/side-position-interface.cc (general_side_position): allow
1293 optional current_offset argument for chaining, so combinations of side-position
1294 and outside slur callback don't add up. Fixes issue #92.
1296 * lily/pango-font.cc (pango_item_string_stencil): use
1297 logical_rect. This prevents spaces after words from disappearing,
1300 * VERSION: release 2.9.20
1302 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1304 * scm/define-grob-properties.scm (all-user-grob-properties):
1305 mention stencil as user settable.
1307 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1309 * Documentation/user/page.itely (Page formatting):
1310 document auto-first-page-number
1312 * lily/page-breaking.cc (find_chunks_and_breaks):
1313 * lily/paper-score.cc (calc_breaking): Follow changes to the
1314 Constrained_breaking interface
1316 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1317 here backwards, as an optimisation
1318 (initialize): new function; move most of the code in resize () here
1319 (combine_demerits): cache ragged_right_
1320 (Constrained_breaking): constructor now takes the Paper_score
1322 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1324 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1325 avoid parser lookahead for 0-ary functions.
1327 * lily/translator.cc: Extract event classes from
1328 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1330 2006-10-02 Heikki Junes <hjunes@gmail.com>
1332 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1335 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1337 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1338 function. Call the page breaking function selected in the
1339 `page-breaking' \paper variable, then the post processing function
1340 chosen using the `page-post-process' \paper variable.
1341 (line-height): new function. Return the height of a system.
1342 (line-minimum-position-on-page): new function. Return the position
1343 of a system on page (using the previous line position), only
1344 considering between system padding.
1345 (stretchable-line?): new function. Says whether a line can be
1346 stretched (ie. is not a title nor a single staff system).
1347 (page-maximum-space-left): new function. Computes space left on a
1348 page, when all systems are separated by their padding.
1350 * lily/page-breaking.cc (breaking::make_pages): Move page post
1351 processing function call to page breaking wrapper (common to all
1354 * lily/paper-book.cc (book::pages): call the page breaking
1355 wrapper, instead of the page breaker directly
1357 * ly/paper-defaults.ly: Add \paper variables for page breaking
1358 wrapper and page post processing function. Make
1359 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1360 `system-maximum-stretch-procedure' variable for holding a function
1361 computing the maximum stretch a system allows.
1363 * scm/layout-page-dump.scm (write-page-breaks): computes the
1364 stretch to apply to systems on a page to minimize left
1365 space. Dump this stretch length.
1367 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1368 the system-stretch property of the tweak data to stretch the
1370 (includePageLayoutFile): Void function which includes the
1371 generated page-layout file if it exists and if the page layout
1372 dumping is not asked.
1373 (scoreTweak): if the score tweak named by the argument exists,
1376 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1378 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1379 handle correctly the case where there are multiple \noPageBreaks
1382 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1384 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1386 * abc2ly.py fix so that entering " -- " will translate to a -- in
1387 the lilypond instead of a " - - "
1389 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1391 * lily/align-interface.cc: fix typo
1393 * lily/dynamic-text-spanner.cc (print): Add a special case for
1394 trill spanner right sides.
1396 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1398 * lily/align-interface.cc (get_extents_aligned_translates): add
1399 support for padding variable.
1401 * lily/break-align-interface.cc (self_align_callback): oops: use
1402 loop variable in guard.
1404 * input/regression/repeat-percent-grace.ly: new file.
1406 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1407 remember first currentCommandColumn of a grace run. Fixes issue 70.
1409 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1410 move class definition to CC file.
1412 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1414 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1415 measure-long repeats.
1417 * flower/include/international.hh: include stdarg.h
1419 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1421 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1422 put_systems_on_pages to return an empty result, we need to assign
1423 demerits properly in that case.
1424 (put_systems_on_pages): Make the number of pages depend on the
1425 evenness of page_number. Add auto-first-page-number.
1426 (calc_subproblem): ensure that the page-number is even for the
1427 left-hand page. Warn if the first page-turn doesn't fit onto the
1428 first (right-hand) page.
1430 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1431 (min_page_count): make this publicly accessible
1432 (min_page_count): fix a bug when there are forced page breaks that
1433 was introduced when I made this loop run backwards
1434 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1435 replace space_systems_on_min_pages with these two. The logic in
1436 space_systems_on_min_pages was getting too convoluted and is better
1437 contained in page-turn-page-breaking.
1439 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1441 (breakable_column): typo
1443 * lily/source-file.cc (get_line): fix off-by-one error
1444 and clean up some of the logic
1446 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1448 * lily/page-breaking.cc (make_pages): honour the first-page-number
1451 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1453 * VERSION (PACKAGE_NAME): bump version.
1455 2006-09-26 Pal Benko <benko.pal@gmail.com>
1457 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1458 (the latter is the same as petrucci-f which is kept for compatibility)
1460 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1462 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1464 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1466 * lily/global-context.cc (run_iterator_on_me): break out of loop
1467 if moment doesn't increase.
1469 * scm/define-grob-properties.scm (all-user-grob-properties): add
1472 * lily/accidental.cc (after_line_breaking): read forced property.
1474 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1477 * input/regression/accidental-forced-tie.ly: new file.
1479 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1481 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1483 * lily/figured-bass-engraver.cc: only listen to rest events if
1484 ignoreFiguredBassRest is not set.
1486 * scm/define-context-properties.scm
1487 (all-user-translation-properties): add ignoreFiguredBassRest property
1489 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1491 * lily/paper-book.cc (get_system_specs):
1492 (set_system_penalty): fix breakbefore.
1493 We used to set a penalty on the system after the break, now we
1494 set a permission on the system before the break
1496 * lily/grob-property.cc: add scm debugging hooks into
1497 property modification
1499 * lily/context-property.cc:
1501 rename make_foo_from_properties to internal_make_foo and
1502 move it from context-property.cc to a member function of
1505 * lily/include/lily-guile-macros.hh:
1506 overload ly_symbol2scm macro so that there is no more need
1509 * lily/volta-repeat-iterator.cc:
1510 * lily/tweak-engraver.cc:
1511 * lily/tuplet-bracket.cc:
1512 * lily/span-bar-engraver.cc:
1513 * lily/script-engraver.cc:
1514 * lily/prob-scheme.cc:
1515 * lily/pointer-group-interface.cc:
1517 * lily/grob-scheme.cc:
1518 * lily/grob-property.cc:
1520 * lily/context-property.cc:
1521 * lily/break-substitution.cc:
1522 * lily/break-align-engraver.cc:
1523 * lily/axis-group-interface.cc:
1524 * lily/align-interface.cc:
1525 remove calls to internal_FOO
1527 * lily/system-start-delimiter-engraver.cc:
1528 * lily/parenthesis-engraver.cc:
1529 * lily/accidental-engraver.cc:
1530 remove calls to make_foo_from_properties
1532 2006-09-23 Graham Percival <gpermus@gmail.com>
1534 * Documentation/user/programming-iterfaces.itely: fix
1535 def-music-function -> define-music... leftover.
1537 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1539 * lily/page-spacing.cc (min_page_count): by running the loop
1540 backwards, we can calculate ragged_last properly.
1542 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1544 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1545 printfirst-page-number -> print-first-page-number
1547 * python/convertrules.py: corresponding rule.
1549 * Documentation/user/page.itely (Page formatting): Document the
1550 default values of all page layout parameters.
1552 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1554 * lily/lexer.ll: remove limitation on music function arity. New
1555 mode extratoken, which inserts extra EXPECT_* tokens after
1556 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1558 * lily/parser.yy: Change grammar for music function accordingly.
1560 * lily/include/lily-parser.hh: New method get_state, new member
1561 hidden_state. Works around a problem when parser fetches
1562 MUSIC_FUNCTION token but not the following EXPECT_* token.
1564 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1567 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1568 references to Music; use ASSIGN_EVENT_ONCE everywhere
1570 * lily/grob-info.cc: junk *music_cause
1572 * lily/music.cc: copy eventified articulations to stream event
1574 * lily/part-combine-iterator.cc: Cleanup using enums
1576 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1579 * lily/include/engraver.hh: Junk music.hh include
1581 * lily/stream-event.cc: Changed constructors
1583 2006-09-21 Graham Percival <gpermus@gmail.com>
1585 * Documentation/user/tweaks.itely (Fitting music onto fewer
1586 pages): change settings to avoid warning messages.
1588 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1590 * Documentation/user/tweaks.itely (Fitting music onto fewer
1591 pages): Add between-system-space setting.
1593 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1595 * lily/accidental-placement.cc (calc_positioning_done): don't
1596 trigger Y-extent calculation too early. Use pure_height instead.
1598 * lily/scale.cc (LY_DEFINE): new file.
1600 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1602 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1603 that happen at the start of a score: having a zero-length
1604 chunk was messing up min_system_count calculations.
1606 * lily/source-file.cc (get_line): lower_bound, not
1607 binary_search. Fixes problem where point-and-click would
1608 always point to the first line.
1610 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1612 * lily/accidental-placement.cc (calc_positioning_done): also put
1613 stems into accidental support.
1615 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1618 * scm/script.scm (default-script-alist): avoid-slur and
1619 slur-padding for portato script.
1621 * lily/stem-tremolo.cc (translated_stencil): new function.
1622 (height): use new function. Fixes tremolos on whole notes.
1624 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1627 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1629 * scripts/abc2ly.py (try_parse_comment): idem.
1631 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1632 bar_string iso. string.find()
1636 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1639 2006-09-18 Graham Percival <gpermus@gmail.com>
1641 * Documentation/user/basic-notation.itely: add bug
1642 warning about ties and octavation/clef.
1644 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1646 * VERSION (PACKAGE_NAME): release 2.9.18
1648 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1650 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1651 figure out midi file names right here.
1653 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1655 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1657 * scm/backend-library.scm: option naming: gs-font-load*s*
1659 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1662 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1664 * scm/define-music-types.scm (music-descriptions): remove
1665 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1666 Music::to_event doesn't complain.
1668 * lily/accidental-placement.cc (ape_compare):
1669 * lily/semi-tie.cc (compare):
1670 * lily/note-column.cc (shift_compare): replace by XXX_less
1672 * lily/tie-formatting-problem.cc (set_chord_outline):
1673 * lily/tie-column.cc (calc_positioning_done):
1674 * lily/system.cc (post_processing)
1676 * lily/stem.cc (note_head_positions)
1677 (calc_positioning_done):
1678 * lily/spanner.cc (do_break_processing)
1679 (find_broken_piece):
1680 * lily/span-bar.cc (print):
1681 * lily/semi-tie-column.cc (calc_positioning_done):
1682 * lily/rest-collision.cc (calc_positioning_done):
1683 * lily/program-option.cc (get_help_string):
1684 * lily/note-collision.cc (get_clash_groups):
1685 * lily/new-fingering-engraver.cc (position_scripts):
1686 * lily/keyword.cc (Keyword_table):
1687 * lily/hara-kiri-group-spanner.cc (request_suicide):
1688 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1689 * lily/accidental-placement.cc (calc_positioning_done):
1691 * lily/beam.cc (get_beam_segments):
1692 * lily/grob-array.cc (remove_duplicates):
1695 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1696 ragged-last-bottom = ##f (test the new page breaker)
1698 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1700 * scm/define-context-properties.scm
1701 (all-internal-translation-properties): remove properties that
1702 were used to communicate page-turn stuff to the paper-column
1705 * lily/lily-guile.cc (robust_scm2string): new function
1707 * lily/paper-column-engraver.cc: Clean up page turn stuff
1709 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1710 instead of cluttering up paper-column-engraver.cc
1712 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1714 * scm/layout-page-dump.scm (scm): export utility function names,
1715 to allow user writing cutsom dumping functions.
1717 * scm/layout-page-layout.scm: export utility function names to
1718 enable custom page breaking function writing. Tabify.
1719 (line-next-space): use ?-suffix only for predicates
1720 (page-maximum-space-to-fill): new function. Return the space
1721 between first and bottom system of a page, to give to
1723 (space-systems): use a space-to-fill argument (for instance as
1724 computed by page-maximum-space-to-fill) instead of computing
1725 internaly this space with the page height. That way, the caller
1726 can adjust the space to use.
1727 (make-page-from-systems, walk-paths): compute space to fill before
1728 calling space-systems.
1730 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1732 * scm/script.scm (default-script-alist): set paddings for every
1733 type here, increase for portato mark.
1735 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1738 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1740 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1741 use spanner::set-spacing-rods
1743 * lily/note-column.cc: reformat.
1745 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1746 step positioning for note/rest combinations.
1748 * input/regression/rest-note-collision.ly: new file.
1750 * scm/define-grobs.scm (all-grob-descriptions): add
1753 * flower/include/std-vector.hh: switch off again.
1755 * VERSION (PATCH_LEVEL): bump to 2.9.18
1757 * flower/include/std-string.hh: idem.
1759 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1761 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1763 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1766 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1768 * Documentation/user/page.itely: update page breaking documentation
1770 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1772 * lily/note-collision.cc (calc_positioning_done): only access
1773 first head if available.
1775 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1777 * scm/framework-ps.scm (output-preview-framework): use new name.
1779 * lily/program-option.cc (internal_set_option): use new names.
1781 * Documentation/user/SConscript (lilypond_book_flags): update -d
1784 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1785 output into other programs): new variable names.
1787 * scm/lily.scm (define-scheme-options): uniformize var names.
1789 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1790 tuplets_ is non-empty before popping.
1792 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1794 * lily/spanner.cc (find_broken_piece):
1795 * lily/spacing-spanner.cc (get_columns):
1796 * lily/source-file.cc (get_line):
1797 * lily/simple-spacer.cc (get_column_description):
1798 * lily/keyword.cc (lookup):
1799 use the new binary search.
1801 * flower/include/std-vector.hh: replace binary_search with
1802 a more STL-like version
1804 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1806 * lily/tie-performer.cc: remove unused last_event_ property.
1807 (class Tie_performer): add now_tied_heads_ property for
1808 partially-tied heads.
1809 (acknowledge_audio_element): when adding an Audio_note, put the
1810 note in now_tied_heads_ if the audio note is partially tied.
1811 (stop_translation_timestep): always include entries in
1812 now_tied_heads_ in heads_to_tie_.
1814 * lily/drum-note-performer.cc (process_music): look for tie-events
1815 in the articulations; pass to Audio_note constructor.
1817 * lily/note-performer.cc (process_music): look for tie-events in
1818 the articulations; pass to Audio_note constructor.
1820 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1823 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1824 include initializer in constructor.
1826 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1828 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1829 unless they are breakable. This fixes discrepancies between the forces
1830 calculated here and the forces calculated in get_line_configuration.
1832 * lily/grob.cc (pure_relative_y_coordinate): fix some
1833 mis-estimation that was happening with piano staves.
1835 * lily/constrained-breaking.cc (resize): don't choke if we get a
1836 measure that won't fit on a line.
1837 (combine_demerits): don't consider uniformity when ragged
1839 * lily/page-spacing.cc (solve): why the f* were there two of these?
1840 (calc_subproblem): properly handle the case where a system is taller
1843 * lily/system.cc (get_paper_system): ensure that all the permissions
1844 and penalties are passed to the paper systems.
1846 * lily/page-breaking.cc (create_system_list): support system-count.
1848 * scm/define-grobs.scm (pure-print-callbacks): add
1849 ly:script-interface::print
1851 * lily/page-spacing.cc (min_page_count): fix calculation of min
1852 pages if we are ragged and there are non-zero springs.
1854 * scm/layout-page-layout.scm: if the pure-height estimates are under
1855 the real height, allow space-systems to ignore padding if it is
1856 needed in order to fit the systems on one page
1858 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1860 (solve): fix performance problem. Make sure we always get at least
1863 * lily/page-breaking.cc (make_pages): include write-page-breaks
1866 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1868 * scm/define-grobs.scm: add the new slur-callback
1869 fix pure-relevant to not exclude grobs whose extent is already
1872 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1875 * lily/slur.cc (pure_height): new callback to estimate the height
1878 2006-09-02 Graham Percival <gpermus@gmail.com>
1880 * Documentation/user/invoking.itely: small update on
1881 MacOS X notes; thanks Trevor!
1883 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1885 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1887 * lily/lexer.ll: accept EOF in all states.
1889 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1891 * lily/source-file.cc (Source_file): always 0-terminate character
1892 array, to prevent Flex from barfing.
1894 * lily/global-context.cc (get_output): robustness: don't crash if
1895 no Score context found.
1897 * lily/include/book.hh (class Book): idem.
1899 * lily/include/context-def.hh (struct Context_def): idem.
1901 * lily/include/score.hh (class Score): don't derive from Input.
1903 * lily/book.cc (Book): add a copy ctor.
1905 * buildscripts/output-distance.py (FileLink.calc_distance): count
1906 orphans in distance too.
1908 * python/midi.c (midi_parse_track): robustness: don't read past
1911 * ly/performer-init.ly: add Control_track_performer, move
1912 Tempo_performer and Time_signature_performer to Score.
1914 * lily/score-performer.cc (acknowledge_audio_elements): override
1915 from base class: add to audio-columns
1917 * lily/control-track-performer.cc (add_text): new file: generate
1920 * lily/performance.cc: move output_header_track to
1921 Control_track_performer ()
1923 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1925 * lily/include/midi-item.hh (class Midi_channel_item): insert
1926 class into hierarchy, for items that can have a channel setting. Dehungarify.
1928 * lily/include/performer.hh (class Performer): remove
1929 play_element(); move functionality into announce/acknowledge.
1931 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1933 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1934 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1936 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1938 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1941 * lily/all-font-metrics.cc: remove TFM support.
1943 * lily/include/tfm.hh: remove TFM support, TFM reader.
1945 * lily/include/binary-source-file.hh: remove Binary_source_file.
1947 2006-08-27 Graham Percival <gpermus@gmail.com>
1949 * Documentation/topdocs/NEWS.itely: add @c marker for
1950 stuff I've processed.
1952 * Documentation/user/ various: info from NEWS.
1954 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1956 * lily/paper-column-engraver.cc (finalize): Oops, this change
1957 should have gone in on 2006-08-23
1959 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1961 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1962 quotes to quote arguments. Fixes Windows problem.
1964 * python/lilylib.py (progress): idem
1966 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1968 * scripts/musicxml2ly.py: fix for importing
1969 minor key signatures from MusicXML. (Phillip Kirlin)
1971 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1973 * python/musicxml.py:
1974 (Attributes.get_key_signature): now correctly retrieves mode from
1977 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1979 * lily/parser.yy (output_def_body): take ownership of identifier
1982 * Documentation/user/advanced-notation.itely (Metronome marks):
1983 update use of \tempo in \midi.
1985 * VERSION: release 2.9.16
1987 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1989 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1992 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1994 * input/regression/tie-chord-partial.ly: clarify example.
1996 * scm/define-music-properties.scm (all-music-properties): remove
1999 * ly/music-functions-init.ly: remove \untied.
2001 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2002 stream events and music events.
2003 (stop_translation_timestep): search acknowledged heads for
2006 * input/regression/tie-chord-partial.ly: new file.
2008 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2009 for \char markup command.
2011 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2013 * scm/define-music-types.scm (music-descriptions): consistency:
2014 Use solo-{one,two}-event iso. solo-[12]-event.
2016 * lily/part-combine-engraver.cc (process_music):
2017 Use solo-{one,two}-event iso. solo-[12]-event.
2019 * ly/declarations-init.ly (partCombineListener): add Timing as
2022 * flower/std-string.cc (string_copy): use copy ()
2024 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2026 2006-08-24 Graham Percival <gpermus@gmail.com>
2028 * Documentation/user/changing-defaults.itely, global.itely,
2029 lilypond-book.itely, page.itely: minor changes from mailist.
2031 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2033 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2036 * scm/define-context-properties.scm
2037 (translator-property-description): robustness: detect type errors
2038 in property definitions.
2040 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2041 after getting it from SCM.
2043 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2046 * lily/include/performer.hh (class Performer): strip get_tempo()
2049 * lily/midi-def.cc: strip file.
2051 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2053 * lily/include/context-def.hh (struct Context_def): use
2054 VIRTUAL_COPY_CONSTRUCTOR().
2056 * lily/source-file.cc: smobification.
2058 * lily/include/source-file.hh (class Source_file): smobify
2059 Source_file. Trim redundant members.
2061 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2062 clones after creation. This plugs a huge memory leak.
2064 * python/convertrules.py (FatalConversionError.sub_tempo):
2065 complete rule for \midi{ \tempo }
2067 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2069 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2071 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2073 * input/regression/optimal-page-breaking-hstretch.ly: test for
2074 ragged-last-bottom also
2076 * lily/paper-column-engraver.cc (finalize): make the end of a score
2077 breakable by default. This is to balance out a change in behaviour
2078 of the page-turn-breaker which no longer makes the end of a score
2081 * lily/paper-book.cc (pages): set the systems_ once the pages are
2084 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2085 Page_breaking interface.
2087 * lily/page-breaking.cc (class Page_breaking): make the interface
2088 more consistent and provide abstractions for dealing with
2091 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2092 algorithm. Use the new interface to Page_breaking.
2094 * lily/page-spacing.cc: better support for ragged-bottom and
2097 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2099 * python/convertrules.py (conv): warning on \tempo{}
2101 * ly/performer-init.ly: set tempoWholesPerMinute.
2103 * ly/midi-init.ly: remove \midi
2105 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2108 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2109 tempoUnitDuration for determining what to print.
2111 * lily/lyric-extender.cc: typo.
2113 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2115 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2118 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2120 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2121 eps-pad-boxes is set.
2123 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2125 * THANKS: update sponsors.
2127 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2129 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2131 * input/regression/tie-chord-untied.ly: new file.
2133 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2135 * scm/define-music-properties.scm (all-music-properties): add
2138 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2140 (headertext_nopics): sanitize no-examples text.
2142 * scm/page.scm (make-page-stencil): don't rely on extents of
2143 page-stencil. This fixes spurious space around .EPS files produced
2144 with the EPS backend.
2146 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2148 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2150 * lily/hara-kiri-engraver.cc (process_music): remember
2151 keepAliveInterfaces after processing \set
2153 * lily/lyric-extender.cc (print): support left/right-padding for
2156 * scm/documentation-generate.scm (string-append): revert lilypond/
2159 2006-08-20 Graham Percival <gpermus@gmail.com>
2161 * Documentation/user/lilypond.tely: clarification to
2162 license presentation (not to actual license).
2164 * Documentation/user/basic-notation.itely,
2165 instrument-notation.itely: minor changes.
2167 * input/ {regression, test}/+.ly: clarification to
2168 text (you can click on examples). Thanks, Mats!
2170 * input/manual/bar-lines.ly: adds ||: repeats.
2172 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2174 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2176 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2178 * Documentation/user/lilypond.tely: strip lilypond/ from info
2179 links, rename to category LilyPond
2181 * lily/pango-font.cc (description_string): new function.
2183 * VERSION: release 2.9.15
2185 * lily/spacing-engraver.cc (stop_translation_timestep): use
2186 Dscho's fix for spacing spanner.
2188 * scm/define-music-types.scm (music-descriptions): use
2189 apply-output-event for ApplyOutputEvent
2191 * lily/output-property-engraver.cc (listen_apply_output): rename
2192 from listen_layout_instruction.
2194 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2197 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2199 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2200 commandline args with contains, split by \n.
2202 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2203 write snippet-names file, call with -dread-file-list. Fixes
2204 command limitations on 64-bit systems.
2206 * input/regression/stencil-color-rotation.ly: new file.
2208 * lily/include/translator.hh (struct Acknowledge_information):
2209 revert: don't use Protected_scm in global objects, as GUILE can't
2210 handle gc_unprotect from automated destructors on MacOS X.
2212 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2213 color, not the original stencil. Fixes combinations of
2214 color/transparency/rotation.
2216 * scripts/lilypond-book.py (main): add --formats=eps for
2219 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2220 crash if spacing_ is nonexistent.
2222 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2224 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2225 \catcode`\@=12 in the LaTeX output.
2227 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2229 * scm/define-music-types.scm (music-descriptions):
2230 use sustain-event iso. sustain-pedal-event.
2232 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2234 * scripts/convert-ly.py: honour the -n command-line switch
2236 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2238 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2239 break specification.
2241 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2243 * Documentation/user: convert-ly the user manual
2245 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2247 * stepmake/aclocal.m4: version check patch (thanks MWD)
2249 * ly/music-functions-init.ly: robustness. Don't crash if
2250 currentBarNumber is not a number.
2252 * VERSION (PATCH_LEVEL): bump.
2254 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2256 * stepmake/aclocal.m4: better version check; handle fooX.Y
2259 * ly/performer-init.ly: instrument name fixup.
2261 * input/manual/chord-names-jazz.ly (banterProperties):
2262 instrumentName update
2264 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2266 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2268 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2269 function. Use hash tables to check membership.
2271 * lily/general-scheme.cc (LY_DEFINE): new function.
2273 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2275 * lily/include/translator.hh (struct Acknowledge_information): add
2278 * ly/music-functions-init.ly: change name to BreathingEvent
2280 * input/regression/*.ly: apply it.
2282 * python/convertrules.py (conv): better instrumentName conversion
2285 * scm/define-music-types.scm (music-descriptions): add
2286 line-break-event to LineBreakEvent music
2288 * lily/music.cc (to_event): don't crash if music type not set.
2290 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2293 * lily/spacing-engraver.cc (stop_translation_timestep): set
2294 spacing for proportional notation too.
2296 * scm/translation-functions.scm (format-bass-figure): inspect
2299 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2301 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2303 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2305 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2307 * scm/layout-page-layout.scm (make-page-from-systems): new function
2308 (optimal-page-breaks): use the new page-breaking calling convention
2310 * scm/define-context-properties.scm (all-user-translation-properties):
2313 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2314 revokePageTurns functionality. If there is a special barline within
2315 the breakable region, break there instead of at the end of the region.
2317 * lily/paper-book.cc (pages): use the new page-breaking calling
2320 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2322 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2324 * scripts/lilypond-book.py: insert \sourcefileline command in
2325 output, so lilypond error messages refer to the spot in the
2326 original .lytex / .itely sourcefile.
2328 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2330 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2331 space to next column for distance to fixed col.
2333 * VERSION (PACKAGE_NAME): release 2.9.14
2335 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2338 * lily/accidental-engraver.cc (process_acknowledged): don't create
2339 accidental for trill span event. This fixes spurious accidentals
2342 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2344 * scm/define-grob-properties.scm (all-user-grob-properties):
2345 Clarify documentation of side-axis and direction. Thanks to Paul
2346 for the inspiration.
2348 * lily/bar-line.cc: Add documentation for "||:" also in the
2349 interface documentation.
2351 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2353 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2355 * lily/paper-column.cc (set_system): new function.
2357 * lily/spacing-engraver.cc (stop_translation_timestep): store
2358 SpacingSpanner refs in Paper_column.
2360 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2361 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2363 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2365 * lily/beam-engraver.cc (listen_beam): add method for
2366 Grace_beam_engraver too.
2368 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2370 * python/convertrules.py: Fix indentation bug that broke
2371 conversion of files older than 1.3.117.
2372 Fix escape error in the description for 2.9.6.
2374 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2376 * lily/*-engraver.cc: convert all try_music functions to listen_*
2379 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2380 enums to represent pedal types, and calculate more data statically.
2382 * scm/part-combiner.scm (recording-group-emulate): create a
2383 softcoded substitute for recording-group-engraver.cc.
2385 * lily/music.cc: make a common transpose function for events and
2388 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2389 ManualMelismaEvent, and obsoletes Melisma_translator.
2391 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2393 * input/test/instrument-name-align.ly: update version.
2395 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2397 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2398 Doc the --pdf flag to lilypond-book.
2400 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2402 * Documentation/topdocs/NEWS.tely (Top): add description.
2404 * input/regression/tuplet-full-length-note.ly: add file.
2406 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2407 always store axis group.
2409 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2411 * input/regression/instrument-switch.ly: new file.
2413 * lily/instrument-switch-engraver.cc (process_music): new file.
2415 * ly/engraver-init.ly: add Instrument_switch_engraver
2417 * ly/music-functions-init.ly: \instrumentSwitch
2419 * scm/define-context-properties.scm
2420 (all-user-translation-properties): add instrumentCueName
2422 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2424 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2426 * ly/music-functions-init.ly: music function \transposition.
2428 * lily/parser.yy (command_element): softcode \transposition.
2430 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2431 (process_music): oops.
2433 * lily/instrument-name-engraver.cc (start_spanner): new
2434 function. Create spanner when property changes.
2435 (stop_spanner): new function.
2437 * python/convertrules.py (conv): add rule.
2439 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2440 shortInstrumentName iso. instr.
2442 * scm/output-ps.scm (dashed-line): add phase argument to
2445 * lily/bar-line.cc (dashed_bar_line): new function.
2446 (compound_barline): support \bar "dashed".
2448 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2449 --output=DIR to DIR/BASE if it is a dir.
2451 * flower/file-name.cc (file_part): new function
2452 (dir_part): new function
2454 * lily/lily-parser-scheme.cc (LY_DEFINE):
2456 * DEDICATION: update
2458 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2460 * lily/instrument-name-engraver.cc: formatting.
2462 * python/convertrules.py (conv): bugfix for \epsfile.
2464 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2468 * lily/gourlay-breaking.cc: Oops, these should have been included
2471 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2473 * scripts/*.py (program_name): cleanup relocation snippets.
2475 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2477 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2479 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2480 page-breakable by default
2482 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2483 correctly calculated for a single-system page
2485 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2486 bigger than the second number
2488 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2489 acknowledge that we aren't satisfying constraints)
2491 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2494 * lily/grob.cc (pure_height): add minimum-Y-extent
2496 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2499 * lily/constrained-breaking.cc: convert code to use new Matrix class
2500 (get_best_solution): new function
2502 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2503 is a page with no systems
2505 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2507 * VERSION (PACKAGE_NAME): release 2.9.13
2509 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2512 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2514 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2516 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2519 * scm/define-grob-properties.scm (all-user-grob-properties):
2520 remove grace-space-factor.
2522 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2523 grace-spacing-interface
2524 (spacing-options-interface): add.
2526 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2528 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2530 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2531 GraceSpacing object.
2533 * lily/note-spacing.cc: fix prop list formatting
2535 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2536 beaming for grace notes too.
2538 * input/regression/spacing-grace.ly: update.
2540 * lily/grace-spacing-engraver.cc: new file.
2542 * lily/spacing-spanner.cc: add strict-grace-spacing.
2544 2006-07-20 Graham Percival <gpermus@gmail.com>
2546 * lily/parser.yy: compile fix.
2548 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2550 * scm/define-grobs.scm (all-grob-descriptions): typo.
2552 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2553 .eps extension from includegraphics.
2555 * scripts/lilypond-book.py (main): add support for --pdf.
2557 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2558 callback to compute common shortest duration.
2559 (set_springs): typo.
2561 * scm/define-grob-properties.scm (all-user-grob-properties): add
2562 strict-grace-spacing.
2564 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2565 support float_grace_columns_.
2567 * lily/spacing-options.cc (init_from_grob): new file.
2569 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2571 * input/regression/spacing-loose-grace.ly: new file.
2573 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2575 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2576 tupletFullLengthNote too. Choose right bound depending on value.
2578 * input/regression/tuplet-full-length-note.ly: new file.
2580 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2582 * lily/*-performer.cc: Converted try_music to listen_*
2584 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2585 as a stream-event internally. Introduce event_cause (), deprecate
2588 * scm/define-music-types.scm: Removed BusyPlayingEvent
2590 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2592 * Documentation/user/advanced-notation.itely (Font selection):
2593 Document how to get a list of available fonts using 'lilypond
2594 -dshow-available-fonts blabla'.
2596 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2598 * GNUmakefile.in: filter lily-XXX.pdf files.
2600 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2602 * scm/define-grob-properties.scm (all-internal-grob-properties):
2603 remove delta-pitch. Use delta-position everywhere.
2605 * scm/output-lib.scm (fall::print): use new order.
2607 * scm/output-ps.scm (path): reorder arguments.
2609 * scm/output-svg.scm (path): support for path primitive.
2611 * input/regression/bend-after.ly: new file.
2613 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2614 recipe for eps -> pdf conversion.
2616 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2618 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2621 2006-07-19 Graham Percival <gpermus@gmail.com>
2623 * input/manual/screech-boink.ly: moved to here.
2625 * input/screech-boink.ly: deleted.
2627 * scm/define-grob-properties.scm: clarify doc string.
2629 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2631 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2633 * scm/output-ps.scm (path): define path.
2635 * scm/define-stencil-commands.scm
2636 (ly:register-stencil-expression): add path.
2638 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2640 * ly/engraver-init.ly: add Fall_engraver
2642 * lily/parser.yy (music_function_event): allow musicfunction
2643 without music arg as music_function_event.
2645 * lily/grob-scheme.cc (LY_DEFINE):
2646 ly:grob-robust-relative-extent. New function.
2648 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2650 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2652 * scm/output-lib.scm (fall::print): new function
2654 * lily/fall-engraver.cc (stop_fall): new file.
2656 * ly/music-functions-init.ly: alphabetise.
2658 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2661 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2663 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2665 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2668 * lily/translator-group.cc (connect_to_context): non const error message.
2670 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2672 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2675 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2677 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2679 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2682 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2684 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2686 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2688 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2690 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2692 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2694 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2696 * scm/layout-page-layout.scm: Define module, tidy code, use more
2697 functions iso. a single big one.
2699 * scm/layout-page-dump.scm: move page dump functions used in two
2700 pass spacing to this file. Define module.
2702 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2705 * ly/paper-defaults.ly: use module layout-page-layout.
2707 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2709 * lily/music.cc: Revised MusicEvent event class. It now contains
2710 event data directly instead of encapsulating it in music. The
2711 previously used class is renamed to OldMusicEvent.
2713 * lily/stream-event.cc: Stream events are now probs.
2715 * lily/translator-group.cc, lily/translator.cc: Translators can
2716 now listen directly to stream events, by using macros
2717 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2719 * lily/arpeggio-engraver.cc: Converted to use new event system
2721 * THANKS: Corrected spelling mistake.
2723 2006-07-12 Graham Percival <gpermus@gmail.com>
2725 * Documentation/user/SConscript, make/lilypond-vars.make,
2726 input/GNUmakefile: doc build looks in input/manual instead
2729 * input/manual/ GNUmakefile, SConscript: build files for
2732 * input/test/ various: some files moved to input/manual/
2734 * Documentation/user/basic-notation.itely: small updates;
2735 thanks Kieren and Charles!
2737 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2739 * VERSION (PACKAGE_NAME): release 2.9.11
2741 * Documentation/topdocs/NEWS.tely (Top): update prop value
2743 * Documentation/user/basic-notation.itely (Tuplets): new property
2746 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2748 * python/convertrules.py (conv): tweaks.
2750 * VERSION (PATCH_LEVEL): bump version.
2752 * python/convertrules.py (conv): add rule for
2753 tupletNumberFormatFunction.
2755 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2756 tupletNumberFormatFunction.
2758 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2759 text through 'text callback.
2761 * lily/time-scaled-music-iterator.cc (construct_children): copy
2762 tweaks generated events.
2764 * scm/define-context-properties.scm
2765 (all-user-translation-properties): remove tupletNumberFormatFunction
2767 * lily/tuplet-engraver.cc (process_music): don't read
2768 tupletNumberFormatFunction
2770 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2773 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2775 * lily/global-context-scheme.cc: Separated ly:run-translator into
2778 * lily/score-engraver.cc, lily/score-performer.cc,
2779 scm/define-context-properties.scm: Make paper/midi output
2780 accessable as a context property.
2782 * lily/score-translator.cc, lily/score-context.cc: Removed.
2784 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2786 * scm/ps-to-png.scm (Module):
2787 * scm/framework-tex.scm (Module):
2788 * scm/framework-ps.scm (Module):
2789 * scm/backend-library.scm (Module):
2790 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2791 "dDEVICEHEIGHTPOINTS".
2793 2006-07-04 Graham Percival <gpermus@gmail.com>
2795 * Documentation/user/ various: general improvements to
2796 "working with lilypond files" section.
2798 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2800 * lily/sequential-iterator.cc: Change the default get_music_list
2801 to read elements-callback music property
2803 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2804 processing of multimeasure rests. Softcoded
2805 sequential-music-iterator.
2807 * lily/sequential-music-iterator.cc: Removed.
2809 2006-06-28 Graham Percival <gpermus@gmail.com>
2811 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2813 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2815 * lily/parser.yy: Wrap non-post-events in EventChords before
2816 assigning them to identifiers.
2818 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2820 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2821 gives correct vertical placement of \bar ":" in all staff
2822 sizes. Thanks Martial!
2824 2006-06-26 Graham Percival <gpermus@gmail.com>
2826 * Documentation/user/invoking.itely : minor update from mailist.
2828 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2830 * lily/ various: Introduce stream events of types Prepare,
2831 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2832 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2834 * lily/global-context*.cc: Time is now -inf before iteration
2837 * lily/include/context.hh: Removed unique_, init_
2839 * Documentation/topdocs/NEWS: Make the feathered beam example
2840 avoid triggering a bug.
2842 2006-06-24 Graham Percival <gpermus@gmail.com>
2844 * Documentation/user/ various: small additions from mailist.
2846 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2848 * ly/performer-init.ly: Add some missing links in the context
2849 hierarchy for MIDI output. There are probably some more missing!
2851 2006-06-21 Graham Percival <gpermus@gmail.com>
2853 * Documentation/user/ various: minor spelling fixes;
2854 thanks Dave Luttinen!
2856 * Documentation/user/ various: small clarifications;
2857 thanks Anthony Youngman!
2859 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2861 * po/fr.po: add \n appropriately.
2863 * lily/lexer.ll: remove ? from version-seen?
2865 2006-06-19 John Mandereau <john.mandereau@free.fr>
2867 * po/fr.po; update translation, by Jean-Charles Malahieude and
2870 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2872 * THANKS: add Markus Schneider.
2874 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2875 Staff_symbol_engraver
2877 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2878 replace staff_engraver
2880 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2883 * lily/staff-collecting-engraver.cc
2884 (acknowledge_end_staff_symbol): new function
2886 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2888 * lily/staff-collecting-engraver.cc
2889 (acknowledge_end_staff_symbol): new function.
2891 * lily/main.cc: switch on relocation by default.
2893 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2895 * lily/spacing-spanner.cc (musical_column_spacing): set
2896 compound_fixed_note_space to 0.0. Document why.
2898 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2899 range of inverse_hooke_
2900 (Simple_spacer): init completely.
2902 (get_line_configuration): don't use cols.resize(); it introduces
2905 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2907 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2909 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2910 try. Divide by beatlength.
2912 * input/regression/beaming-ternary-metrum.ly: update doc.
2913 add beatLength hack.
2915 * scm/music-functions.scm (make-time-signature-set): add
2916 standard-beat-grouping.
2918 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2920 * input/regression/tie-whole.ly: new file.
2922 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2923 cross center of note head in case of invisible stem.
2925 2006-06-16 Graham Percival <gpermus@gmail.com>
2927 * Documentation/user/ various: small fixes from mailist.
2929 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2931 * lily/breathing-sign.cc (offset_callback): idem.
2933 * lily/align-interface.cc (align_to_fixed_distance): remove
2936 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2939 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2941 * VERSION (PACKAGE_NAME): release 2.9.9
2943 * ly/lilypond-book-preamble.ly: add \version
2945 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2947 * scripts/lilypond-book.py (PREAMBLE_LY): include
2948 lilypond-book-preamble.ly
2950 * lily/stem.cc (get_beaming): return max of 0 and
2951 scm_ilength. Fixes slurring from/to beams.
2953 * ly/lilypond-book-preamble.ly: new file.
2955 * lily/slur.cc: add inspect-index feature.
2957 2006-06-13 Graham Percival <gpermus@gmail.com>
2959 * Documentation/user/tutorial.itely: trivial fix.
2961 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2963 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2964 all non-event music in the parser via MAKE_SYNTAX.
2966 * lily/parser-scheme.cc: Add ly:parser-error function
2968 * scm/paper.scm: fix typo
2970 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2974 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2977 * buildscripts/output-distance.py (test_compare_signatures):
2979 (read_signature_file): use new signature format.
2981 * scm/stencil.scm (write-system-signature): simpler signature
2984 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2987 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2988 stem_end_position, but estimate instead.
2990 * lily/tuplet-bracket.cc (calc_positions): look at
2991 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2992 brackets narrower than beams.
2994 * lily/lexer.ll: set version-seen? even if version is
2997 * lily/rest.cc (y_offset_callback): bugfix: decide position
2998 override based on scm_is_number(). Fixes \rest on center staff
3001 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3002 patterns for 16th triplets.
3004 2006-06-10 Graham Percival <gpermus@gmail.com>
3006 * Documentation/user/ page.itely, global.itely: editing
3009 * Documentation/user/ various: findex -> funindex.
3011 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3013 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3014 insert extra tuplet events.
3016 2006-06-10 Graham Percival <gpermus@gmail.com>
3018 * Documentation/user/programming-interfaces.itely: add
3021 * python/convertrules.py: add annotatefoo -> annotate-foo
3024 * Documentation/user/global.itely: start editing.
3026 * Documentation/user/page.itely: major editing, new spacing
3029 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3031 * scm/define-markup-commands.scm (wordwrap-markups): use
3032 output-def 'line-width if undefined.
3034 * HACKING: trim outdated info.
3036 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3038 * scm/define-grobs.scm (all-grob-descriptions): Add
3039 line-spanner-interface to all grobs that already have
3040 text-spanner-interface or dynamic-text-spanner-interface
3042 * scm/page.scm: Rename annotate{headers,systems,page}->
3045 * input/regression/page-spacing.ly,
3046 input/regression/page-layout-manual-position.ly: idem
3048 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3050 * lily/line-spanner.cc: cleanup property list.
3052 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3053 generator expressions (2.3 compat).
3055 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3057 * lily/vertical-align-engraver.cc: Make sure that the
3058 align{Above,Below}Context properties are included in the automatic
3061 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3063 * scm/paper-system.scm (paper-system-annotate): also annotate the
3064 estimated pure-Y-extent
3066 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3068 * lily/system.cc (break_into_pieces): set the estimated height
3069 of each child system
3071 * lily/stem.cc (pure_height): new pure-Y-extent callback
3073 * lily/staff-symbol-referencer.cc (callback): don't destroy
3074 the staff-position property
3076 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3077 consider_suicide into two functions
3079 * lily/constrained-breaking.cc (resize): use the new pure
3080 callbacks to estimate the height of a system
3082 * lily/axis-group-interface.cc (pure_group_height): new
3083 side-effect-free VerticalAxisGroup height-callback
3085 * lily/align-interface.cc (get_extents_aligned_translates):
3086 split align_elements_to_extents into two functions
3087 (get_pure_child_y_translation): new function
3089 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3091 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3093 * lily/paper-score.cc: cache break_indices and columns
3095 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3097 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3099 * lily/font-config.cc (init_fontconfig): do the init if
3100 cache_file, but don't look at cache_file.
3102 * input/regression/quote-tie.ly: new file.
3104 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3105 to Head_event_tuple, so we deal gracefully with ties on
3108 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3111 2006-06-08 Graham Percival <gpermus@gmail.com>
3113 * input/test/ smart-transpose.ly, reverse-music.ly:
3114 \applyMusic to music functions update, thanks Michael!
3116 2006-06-07 Graham Percival <gpermus@gmail.com>
3118 * input/test/ add-staccato.ly, add-text-script.ly,
3119 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3120 music functions update, thanks to Michael Meixner.
3122 * Documentation/user/music-glossary.tely: small fix
3125 * Documentation/user/ various: minor additions from mailist.
3127 * Documentation/user/lilypond.tely, basic-notation.itely:
3128 small test of @funindex. (works here)
3130 * input/test/font-table.ly: reduce size to partially
3131 de-ugly version in manual.
3133 * Documentation/user/page.itely: new file (split former
3134 "global issues" into "page settings" and "non-musical
3137 * Documentation/user/ various: fix @ref{}s to match
3138 new chapter names (above).
3140 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3142 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3144 2006-06-06 Graham Percival <gpermus@gmail.com>
3146 * Documentation/user/advanced-notation.itely: add example
3147 for segno/coda on barline.
3149 * tex/texinfo.tex: merge from upstream.
3151 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3153 * scripts/lilypond-book.py (process_snippets): Argument fix.
3156 * buildscripts/builder.py:
3159 * Documentation/user/SConscript: More SCons fixes.
3161 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3163 * lily/font-config.cc (init_fontconfig): Only initialize if
3164 global cache_file is found.
3166 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3168 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3171 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3173 * VERSION (PACKAGE_NAME): release 2.9.8
3175 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3176 function. Delay ledger modifying ledgered grobs to
3177 stop_translation_timestep(), to ensure that we're ledgering
3178 according to the new spanner.
3179 (acknowledge_staff_symbol): don't check for non-NULL
3180 staff_sym->get_bound()
3182 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3185 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3188 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3189 directly from srcdir/stepmake/aclocal.m4
3191 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3194 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3196 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3198 * lily/simple-spacer.cc (get_line_configuration): add
3199 keep-inside-line rods
3200 (struct Column_desc): add constructor
3201 (struct Rod_desc): add constructor
3202 (get_line_forces): check for forced page breaks here too
3204 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3205 support/elements cycles between InstrumentNames and AxisGroups
3207 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3209 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3211 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3212 make-txt-files target.
3214 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3215 make-txt-files target.
3217 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3219 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3222 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3224 * Documentation/user/instrument-notation.itely,
3225 input/regression/breathing-sign-ancient.ly,
3226 input/test/divisiones.ly: Removed redundant property settings for
3229 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3230 fix lyrics alignment problems. They are implemented now as scheme
3231 functions that add the appropriate unicode char to the first lyric
3232 event rather than adding a separate lyric event. Minor edit of
3235 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3237 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3238 pollute src dir with built .txt files, but install directly from
3239 Documentation/topdocs/out/
3241 * buildscripts/output-distance.py
3242 (ComparisonData.create_html_result_page): put version/directories
3245 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3248 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3249 Patch by Karl Hammar
3251 * buildscripts/readlink.py: add file.
3252 Patch by Karl Hammar
3254 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3256 * lily/tuplet-number.cc (print): prevent stencil from being
3259 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3261 * scm/stencil.scm (write-system-signature): explicitly
3262 -well, superfluously- close output port.
3264 * buildscripts/output-distance.py (main): oops. Add extra argument.
3266 2006-06-05 Graham Percival <gpermus@gmail.com>
3268 * Documentation/user/music-glossary.tely: clarified example
3269 from Francisco Vila, thanks!
3271 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3273 * input/regression/spacing-section.ly: new file.
3275 * lily/input.cc (programming_error): new function.
3277 * lily/spacing-engraver.cc (try_music): new function. Accept
3278 spacing-section-event
3280 * lily/spacing-spanner.cc (set_springs): take slices of all
3281 columns for spacing.
3283 * lily/include/paper-column.hh (class Paper_column): add
3284 Paper_column::compare.
3286 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3288 * scm/define-music-types.scm (music-descriptions): add
3291 * lily/music-iterator.cc (report_event): use programming_error for
3292 sending non-event error.
3294 * lily/input.cc (programming_error): new function
3296 * buildscripts/output-distance.py (main): use compare-XXX for
3298 (main): --threshold option, default at 0.30
3300 * output-distance.py (main): add --threshold option.
3302 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3304 * scm/paper-system.scm (paper-system-annotate): fix problem when
3305 annotating an empty system
3307 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3309 * GNUmakefile.in: reinstate old web tar/copying.
3311 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3313 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3314 nothing changes. (Erik S)
3316 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3319 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3321 * scm/define-markup-commands.scm (whiteout): do not force
3322 foreground color of argument markup to black.
3324 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3325 the left of the arrow, instead of below the arrow name, so that,
3326 when two little arrows are vertically stacked, their dimensions
3327 and name should not overlap. Add a color key parameter.
3329 * scm/paper-system.scm (paper-system-annotate): Annotate
3330 next-space+next-padding instead of next-space. Annotate space
3331 between next-padding and next-space+padding, respectively, and
3332 following system extent and refpoint-Y-extent. Use colors.
3334 * scm/page.scm (annotate-page): translate annotations slightly to
3337 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3339 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3340 fix for x-staff slurs. Thanks Joe!
3342 * buildscripts/output-distance.py
3343 (SystemLink.output_expression_change_count): keep track of changed
3344 details, and dump in details html page.
3346 * input/regression/figured-bass-staff.ly: add note about setting
3347 properties in Staff context.
3349 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3350 add slurs and ties to support too.
3352 * buildscripts/output-distance.py (main): set dest_dir
3353 argument. Add --max-count option.
3355 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3357 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3358 shortcuts for special unicode chars that are useful in chant
3359 notation. Revised exisiting and added new comments.
3361 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3363 * make/mutopia-rules.make: remove duplicate recipe.
3365 2006-06-02 Werner Lemberg <wl@gnu.org>
3367 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3368 Add support for U+0132 (IJ) and U+0133 (ij).
3370 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3372 * buildscripts/output-distance.py (FileLink): new class. collect
3373 info systems from one .ly file.
3374 (FileLink.link_files_for_html): further tweaks.
3376 2006-06-02 Graham Percival <gpermus@gmail.com>
3378 * tex/texinfo.tex: partial fix for @funindex.
3380 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3383 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3385 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3387 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3388 @example too. Backportme.
3390 2006-06-02 Graham Percival <gpermus@gmail.com>
3392 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3393 from Werner Lemberg.
3395 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3397 * Documentation/user/music-glossary.tely: additional spanish
3398 updates and a lyrics fix in an example.
3400 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3402 * scm/define-grob-properties.scm: Previous patch contained
3403 spurious line from another patch not yet committed. Fixed.
3405 * scm/define-grob-properties.scm: Add missing doc strings for
3408 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3410 * buildscripts/output-distance.py
3411 (ComparisonData.write_text_result_page): separate the scores, sort
3414 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3417 * buildscripts/output-distance.py (me_path): use argv[0] for
3419 (ComparisonData.img_cell): use colored borders.
3421 * scm/stencil.scm (write-system-signature): escape newlines too.
3422 (write-system-signature): use (1,-1) interval for empty interval
3424 2006-01-01 Graham Percival <gpermus@gmail.com>
3426 * Documentation/user/music-glossary.tely: Spanish updates
3427 from Francisco Vila.
3429 * Documentation/user/lilypond-book.itely: addition from
3432 * Documentation/user/ various: edits, small additions
3435 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3437 * GNUmakefile.in (tree-lib-prefix-current):
3438 (tree-share-prefix-current): Use version number in tree, add
3441 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3443 * GNUmakefile.in: write VERSION, again.
3445 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3446 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3448 * stepmake/aclocal.m4: robuster version detection.
3450 * buildscripts/output-distance.py
3451 (ComparisonData.create_html_result_page): copy only if file
3452 exists, fixup src paths.
3454 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3456 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3458 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3459 Another datarootdir reto.
3461 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3462 available. This should be moved to postinstall-lilypond-doc.
3464 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3466 * GNUmakefile.in: simplify local-WWW-post.
3467 remove -type l from find.
3469 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3470 fixes. Don't follow symlinks.
3471 (ComparisonData.create_html_result_page): remove previous results.
3472 insert ../python in path.
3474 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3476 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3478 * config.make.in (datadir): Add datarootdir to silence autoconf.
3480 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3482 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3484 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3486 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3487 slash beams too wide.
3489 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3491 * VERSION: release 2.9.7
3493 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3495 * lily/relocate.cc (read_relocation_dir): Do not blindly
3498 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3500 * lily/parser.yy: replace THIS by PARSER
3502 * Documentation/index.html.in: add link to test-results.html page.
3504 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3506 * scm/translation-functions.scm (format-bass-figure): translate
3507 digits over 10 to the left
3509 * scm/define-markup-commands.scm (translate-scaled): new markup.
3511 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3514 * ly/engraver-init.ly: add Figured_bass_engraver
3516 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3518 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3520 * lily/score-engraver.cc (announce_grob): only note START announces.
3522 * lily/include/engraver-group.hh (Translator_group):
3523 acknowledge_hash_table_ is now drul.
3525 * lily/engraver.cc (announce_end_grob): new method.
3527 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3529 * lily/translator-dispatch-list.cc (create): take start_end argument.
3531 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3532 acknowledge_static_array_ to drul
3534 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3536 * scm/define-grob-interfaces.scm
3537 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3539 * scm/define-grobs.scm (all-grob-descriptions): add
3540 BassFigureAlignmentPositioning
3542 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3543 number stays up to date. Backportme.
3545 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3547 * Documentation/user/basic-notation.itely (Bar lines): Document
3550 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3552 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3554 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3555 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3558 * Resurrect `scons lily' build.
3560 * SConstruct (symlink_tree): Bugfix: link
3561 music-drawing-routines.ps to file iso directory.
3563 * lily/SConscript: Remove kpath-guile from LIBS.
3565 * SConstruct (libdir_package_version): Typo.
3566 (configure): Comment-out fontforge for lack of fontforge.pc .
3567 Also add libdir* to environment.
3569 2006-05-30 Graham Percival <gpermus@gmail.com>
3571 * Documentation/user/ various: minor additions from mailist and
3574 2006-05-30 Paco <fravd@ya.com>
3576 * Documentation/user/music-glossary.tely: numerous corrections and
3577 some new translations.
3579 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3583 * buildscripts/output-distance.py
3584 (ComparisonData.create_html_result_page): new routine: summarise
3585 results in HTML page with images.
3586 (ComparisonData.create_text_result_page): create summary text files too.
3588 * GNUmakefile.in (web-ext): package .signature files too. They
3591 * scm/stencil.scm (write-system-signature): typo.
3593 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3595 * scm/stencil.scm (write-system-signature): better escaping.
3596 only write signature for music systems, not for markup systems.
3598 * scm/framework-ps.scm (output-framework): dump-signatures support
3601 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3603 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3604 for -dno-point-and-click
3606 * lily/grob.cc (get_print_stencil): don't read
3607 point_and_click_global to determine whether to set grob-cause.
3609 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3611 * buildscripts/output-distance.py (main): new function.
3612 (ComparisonData): new class.
3614 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3615 careful with generating new LedgerLineSpanners.
3617 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3619 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3620 context. This fixes double ledger lines in output.
3622 * lily/system.cc (get_paper_system): remove 3 layer limit.
3624 * buildscripts/output-distance.py (SystemLink.distance): new
3625 file. Compare signatures.
3627 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3629 * lily/grob-array.cc (remove_duplicates): rename from
3630 uniq(). Sort before calling uniq() so it actually works.
3632 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3634 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3635 \version from lilypond file snippet.
3636 (Lilypond_file_snippet.ly): oops. typo.
3637 (find_toplevel_snippets): urgh. again.
3639 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3640 prevent duplicated broken items in output.
3642 * scm/framework-eps.scm (output-classic-framework): only dump if
3643 dump-signatures is set.
3645 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3647 * scm/stencil.scm (write-system-signature): new routine: write
3648 python parseable signature of a separate paper system.
3651 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3653 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3657 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3659 * translator-group.cc: send music events to engravers in
3660 non-bottom contexts.
3662 * tuplet-engraver.cc: process tuplet brackets in correct order.
3664 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3666 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3667 arg 2 might point us to a new binary (patch by Karl Hammar)
3669 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3671 * VERSION (PACKAGE_NAME): release 2.9.6
3673 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3675 * Documentation/user/*.itely: 2nd
3676 attempt: replace funindex -> findex globally.
3678 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3680 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3681 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3683 * scm/define-music-display-methods.scm: display methods for
3684 breaks. Fix \applyOutput.
3686 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3688 * Documentation/user/macros.itexi: comment out funindex expansion.
3690 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3693 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3694 Karl Hammar. Backportme.
3696 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3698 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3700 * Documentation/user/programming-interface.itely (Running a
3701 function on all layout objects): idem.
3703 * Documentation/user/introduction.itely (Automated engraving):
3704 update \applyOutput syntax
3706 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3707 remove debugging hook.
3709 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3712 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3714 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3715 TEXI2DVI_FLAGS to texi2dvi invocation.
3717 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3719 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3720 works. More work is done by iterator now, and engraver has been
3721 very much simplified.
3723 * lily/translator-group.cc: try_music is now invoked through a
3726 * lily/*-iterator.cc: Massive cleanups. Junked
3727 try_music_in_children globally. Renamed try_music to report_event,
3728 and made that method descend to a bottom context automatically.
3730 * lily/event-iterator.cc: New file.
3732 * lily/output-property-iterator.cc,
3733 lily/old-lyric-combine-music-iterator.cc: Removed.
3735 * python/convert-rules.py: Modified the syntax for \applyOutput.
3737 2006-05-23 Graham Percival <gpermus@gmail.com>
3739 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3742 * Documentation/user/ various: stuff that might have helped
3743 to fix the pdf creation, plus some minor doc additions.
3745 * Documentation/user/changing-defaults.itely: remove @b from
3746 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3748 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3750 * lily/beaming-pattern.cc (beamify): deal with negative start
3751 moments for beaming patterns.
3753 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3755 * lily/beaming-info.cc (beamify): new function: read beatLength
3756 and beatGrouping from context.
3758 * input/regression/beam-beat-grouping.ly (Module): new file.
3760 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3762 * lily/beam.cc (get_beam_segments): generate events for
3763 max_connect_ case too.
3764 (get_beam_segments): read Stem::max-beam-connect.
3766 * input/regression/beam-single-stem.ly: new file.
3768 * lily/stem.cc (set_beaming): use #f as signaling value for
3771 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3773 * lily/beam.cc (set_beaming): read clip-edges property.
3774 (calc_direction): don't suicide for single stem.
3776 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3777 argument, remove 1<<15 hack. Remove clip_edges()
3779 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3781 2006-05-21 Graham Percival <gpermus@gmail.com>
3783 * Documentation/user/basic-notation.itely: reorg.
3785 * Documentation/user/ various: minor fixes.
3787 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3789 * lily/stencil-expression.cc (register_stencil_head): opps, append
3790 to cdr of static SCM object.
3792 2006-05-19 Graham Percival <gpermus@gmail.com>
3794 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3795 update framework for command index. DOC WRITERS: use @funindex
3796 instead of @cindex @code{}.
3798 * Documentation/user/ various: replace @cindex @code{} => @funindex
3800 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3802 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3803 case positions is set manually.
3805 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3807 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3810 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3812 * Documentation/user/changing-defaults.itely (Contexts explained):
3813 use absolute dimension for @image.
3815 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3816 out image for illustration too.
3817 ($(outdir)/%.png): add more png <-> eps rules.
3819 2006-05-17 Graham Percival <gpermus@gmail.com>
3821 * Documentation/user/ various: remove trailing whitespace, cosmetic
3822 change to reduce changes produced by diff.
3824 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3826 * lily/main.cc (do_chroot_jail): correctness tweak.
3828 * python/lilylib.py (system): import subprocess in system () only.
3830 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3832 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3833 variable. Backportme.
3835 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3837 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3839 2006-05-17 Werner Lemberg <wl@gnu.org>
3841 * lily/lexer.ll (init_signature_has_table): Add
3842 `scm-scm-music-music'.
3844 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3845 (Generic_prefix_music_scm): Add rule for it.
3847 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3848 `quoted-transposition' property.
3850 * ly/music-functions-init.ly (transposedCueDuring): New function.
3852 * scm/define-music-properties.scm (all-music-properties): Updated.
3854 * Documenation/topdocs/NEWS.itely: Document it.
3856 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3858 * python/lilylib.py (system): move import subprocess to system()
3861 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3863 * VERSION (PATCH_LEVEL): release 2.9.5
3865 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3868 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3870 2006-05-16 Graham Percival <gpermus@gmail.com>
3872 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3874 * Documentation/user/ various: minor fixes.
3876 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3878 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3880 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3882 * Documentation/user/advanced-notation.itely (Instrument names):
3883 Modified obsolete instruction on how to move instrument names away
3884 from the staves. Hmm, at second thought the bug probably has been
3885 solved, so the full bug description should probably be removed.
3887 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3889 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3890 currentCommandColumn.
3892 * lily/hairpin.cc (print): also add padding for non-neighbor
3895 * scm/define-context-properties.scm
3896 (all-user-translation-properties): add hairpinToBarline
3898 * input/regression/hairpin-to-barline.ly: new file.
3900 * lily/context.cc (internal_send_stream_event): thinko fix.
3902 * lily/tie.cc (set_default_control_points): robustness fix.
3904 * python/musicxml.py (Part.interpret): don't complain about
3905 incomplete measures.
3907 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3908 new music if last_event_chord() returned None.
3910 * python/musicxml.py (Part.interpret): skip back over chord notes.
3912 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3914 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3915 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3916 lily/slash-repeat-engraver.cc,
3917 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3918 iterator sends PercentEvents
3920 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3921 rework tuplets: send start/stop events to engraver
3923 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3924 dispatchers event-source and events-below to Context
3926 2006-05-15 Graham Percival <gpermus@gmail.com>
3928 * Documentation/user/README.txt: update info for doc writers.
3930 * Documentation/user/programming-interface.itely: integrate
3931 Nicolas' fixes for chapter rewrite.
3933 * Documentation/user/ various: minor fixes.
3935 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3937 * lily/clef-engraver.cc: cleanup.
3939 * Documentation/user/GNUmakefile: dist context-example.eps too.
3941 * lily/key-engraver.cc (create_key): use
3942 explicitKeySignatureVisibility for cancellation too.
3944 * lily/font-config.cc (init_fontconfig): don't close file if
3947 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3949 * Documentation/topdocs/NEWS.tely: niente and rotation news
3951 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3953 * lily/include/stencil.hh
3954 * lily/stencil.cc (rotate): new function. Makes it possible
3955 to rotate a stencil around a given offset.
3957 * lily/grob.cc (get_print_stencil): add rotation support
3959 * lily/stencil-interpret.cc (interpret_stencil_expression):
3960 add rotation support
3962 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3964 * scm/define-grob-properties.scm: add 'rotation property
3966 * scm/define-markup-commands.scm: add rotate markup command
3968 * scm/output-ps.scm: add rotation support in PostScript backend
3970 * scm/output-svg.scm: add rotation support in SVG backend
3972 2006-05-13 Graham Percival <gpermus@gmail.com>
3974 * Documentation/user/music-glossary.itely: French correction.
3976 * Documentation/user/programming-interface.itely: major
3977 new docs, some reorg, some info from Nicolas.
3979 * Documentation/user/ various: small fixes.
3981 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3983 * Documentation/user/programming-interface.itely (Markup
3984 programmer interface): Remove duplicate text.
3986 2006-05-12 Graham Percival <gpermus@gmail.com>
3988 * Documentation/user/context-example.eps: new file.
3990 * Documentation/user/changing-defaults.itely: set up file to
3993 * Documentation/user/programming-interface.itely: changes
3996 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3998 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4000 2006-05-11 Graham Percival <gpermus@gmail.com>
4002 * Documentation/user/programming-interface.itely: first round of
4003 editing and merging emails from Nicolas.
4005 * Documentation/user/scheme-tutorial: minor edit.
4007 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4009 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4011 (Xml_node.message): use it.
4013 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4014 oops. Add duration argument.
4016 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4018 * lily/paper-column-engraver.cc (make_columns):
4019 * scm/define-grobs.scm: Revert my previous change and set the default
4020 in define-grobs.scm instead.
4022 2006-05-09 Graham Percival <gpermus@gmail.com>
4024 * Documentation/user/changing-defaults.itely: general editing,
4025 info about \set and \override.
4027 * Documentation/user/tweaking.itely, advanced-notation.itely:
4028 fixes from Dave Luttinen, thanks!
4030 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4032 * lily/paper-column-engraver.cc (make_columns): By default, a column
4033 needs to be breakable.
4035 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4037 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4039 (musicxml_time_to_lily): idem
4040 (musicxml_key_to_lily): idem
4041 (instrument_drumtype_dict): dict for supported drumtypes.
4042 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4043 moments and pending mm rests
4044 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4045 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4046 (musicxml_voice_to_lily_voice): add mode change.
4047 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4048 speed and less memory usage (factor 5 to 10).
4049 (convert): write -defs.ly and driver file separately so people
4050 can script their own part extraction.
4052 * python/musicxml.py (minidom_demarshal_node): new function:
4053 separate minidom handling.
4054 (lxml_demarshal_node): new function: support lxml.etree too.
4055 (Xml_node.message): new function: verbose error message, with XML
4056 path to offending node.
4057 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4058 (Part_list.generate_id_instrument_dict): new method: collect
4059 instrument names, to be able to set drum_type.
4060 (Part.interpret): handle underfull measures
4061 (Part.interpret): assign instrument names.
4063 * python/musicexp.py (Output_printer.close): new method
4064 (MusicWrapper.print_ly): new class: support other modes,
4066 (BarCheck.print_ly): new class. Support bar checks, with comments
4067 and fancy barchecks.
4068 (NoteEvent.__init__): also set drum_type for drum notes.
4069 (MultiMeasureRest.lisp_expression): dump mm rests.
4071 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4072 line-break-permission if forbidBreak is not set.
4074 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4076 * scm/define-context-properties.scm:
4077 * scm/define-grob-properties.scm:
4078 * scm/define-grobs.scm:
4079 * scm/define-music-display-methods.scm:
4080 * scm/define-music-properties.scm:
4081 * scm/define-music-types.scm:
4082 * scm/music-functions.scm:
4083 * ly/declarations-init.ly:
4084 * lily/include/constrained-breaking.hh:
4086 * lily/spaceable-grob.cc:
4087 * lily/simple-spacer.cc:
4088 * lily/paper-score.cc:
4089 * lily/paper-column.cc:
4090 * lily/paper-column-engraver.cc:
4092 * lily/gourlay-breaking.cc:
4093 * lily/constrained-breaking.cc:
4094 * python/convertrules.py:
4095 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4096 "page-break-penalty" and "line-break-permission".
4097 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4098 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4100 * lily/bar-engraver.cc:
4101 * lily/beam-engraver.cc:
4102 * lily/forbid-break-engraver.cc:
4103 * lily/ligature-engraver.cc:
4104 * lily/paper-column-engraver.cc:
4105 * lily/percent-repeat-engraver.cc:
4106 * lily/score-engraver.cc:
4107 * lily/score-engraver.hh:
4108 * lily/paper-column-engraver.hh:
4109 Inter-engraver communication regarding line breaks is done through context
4110 properties (Score.forbidBreak) instead of function calls.
4112 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4114 * VERSION (PACKAGE_NAME): release 2.9.4
4116 2006-05-08 Graham Percival <gpermus@gmail.com>
4118 * Documentation/user/working.itely: proofreading from Dave
4121 * Doucmentation/user/README.txt: updated with manual style info.
4123 * Documentation/user/ various: trim linewidth to 78 chars.
4125 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4127 * scm/define-grob-properties.scm (all-internal-grob-properties):
4128 remove chord-tremolo property.
4130 * lily/beam.cc (get_beam_segments): don't use stem position as
4131 base for broken ends.
4133 2006-05-06 Graham Percival <gpermus@gmail.com>
4135 * Documentation/user/putting.itely: proofreading from Dave
4138 * Documentation/user/ various: more reorg and clarifications.
4140 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4142 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4144 * ly/music-functions-init.ly: new function featherDurations
4146 * lily/beam.cc: read grow-direction for feathered beaming.
4148 * Documentation/topdocs/NEWS.tely (Top): typo.
4150 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4152 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4155 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4156 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4157 used by music streams.
4159 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4160 lily/stream-event.cc, lily/stream-event-scheme.cc,
4161 lily/listener.cc, lily/scheme-listener.cc,
4162 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4163 lily/include/stream-event.hh, lily/include/listener.hh,
4164 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4165 Created data structures for music streams.
4167 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4169 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4170 construction of a beam.
4173 * flower/include/std-vector.hh (default_compare): use only one comparison.
4175 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4176 (note-by-number): further attachment fixes.
4178 * scm/lily-library.scm (ordered-cons): new function.
4179 (interval-index): new function
4181 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4183 * lily/note-head.cc (get_stem_attachment): new function.
4185 * scm/define-markup-commands.scm (note-by-number): read 'style
4188 * input/regression/markup-note.ly: show note-head style option.
4190 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4193 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4195 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4197 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4199 * lily/include/constrained-breaking.hh: GCC 4 fix.
4201 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4203 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4204 Replace it with functions get_line_forces and get_line_configuration.
4205 (class Simple_spacer): Make data private.
4206 Rewrite compression algorithm to be faster and simpler.
4208 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4209 * lily/gourlay-breaking.cc (solve):
4210 * lily/constrained_breaking.cc (space_line):
4211 Change it to the new simple-spacer code.
4213 * lily/paper-score.cc (get_paper_systems):
4216 Delay breaking the systems until they are requested.
4217 (find_break_indices):
4218 Use vsize for indices.
4220 Move the "Calculating line breaks" message here.
4222 * lily/system.cc (pre_processing):
4223 Move the "Calculating line breaks" message away from here.
4224 (break_into_pieces):
4225 Allow multiple calls to this function in sequence (with touching-but-
4226 not-overlapping breakpoints).
4228 * lily/constrained-breaking.cc:
4229 Replace most of the get_XXXX functions with get_line_details.
4230 Only calculate the force for each line. Calculate configurations only
4231 for the lines we will actually use.
4232 Replace cols_ with lines_.
4234 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4236 * mf/GNUmakefile (depth): remove FC_FIND.
4238 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4240 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4242 * scm/framework-ps.scm (write-preamble): new function.
4243 (write-preamble): load mac fonts via fondu, even if gs-font-load
4246 2006-05-03 Werner Lemberg <wl@gnu.org>
4248 * mf/GNUmakefile (FC_FIND): Fix typo.
4250 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4252 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4254 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4256 * stepmake/aclocal.m4: run python-config for crosscompiling
4259 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4260 -f png for HTML, TEXINFO formats.
4262 * input/tutorial/lbook-html-test.html: new file.
4264 * lily/include/tie-formatting-problem.hh (class
4265 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4266 [column, direction]. This fixes laissez vibrer ties.
4268 * flower/include/tuple.hh (struct Tuple2): new file.
4270 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4271 $(FCMATCH), only if $(NCSB_DIR) not set.
4273 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4275 * config.make.in (DOCUMENTATION): set FCMATCH.
4277 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4279 2006-05-03 Graham Percival <gpermus@gmail.com>
4281 * Documentation/user/ various: final round of reorg.
4283 * Documentation/user/instrument-notation.itely: some more
4284 fixes from Eduardo, thanks!
4286 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4288 * VERSION (PACKAGE_NAME): release 2.9.3
4290 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4292 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4294 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4296 * scm/define-grob-properties.scm (all-user-grob-properties):
4297 Correct typo, thanks to Eduardo.
4299 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4301 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4303 * buildscripts/lilypond-words.py (F): indent fix.
4305 * input/regression/tie-arpeggio-collision.ly: new file.
4307 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4308 function: store outlines per column rank.
4310 * lily/include/tie-configuration.hh (class Tie_configuration): add
4311 column_ranks_ to specification and configuration, to distinguish
4312 between ties for different heads in arpegiated chords.
4314 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4316 * *.py: more 4 space indents.
4318 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4320 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4322 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4324 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4326 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4328 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4330 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4332 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4334 * python/convertrules.py (conv): indent 4 for python files.
4336 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4338 * Documentation/user/changing-defaults.itely (Creating contexts):
4339 Clarify \new semantics.
4341 2006-04-28 Graham Percival <gpermus@gmail.com>
4343 * Documentation/user/ various: major new sections in the
4344 Learning manual, slight reorg elsewhere.
4346 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4348 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4350 * scm/framework-ps.scm (output-framework): remove PageMedia
4352 2006-04-27 Graham Percival <gpermus@gmail.com>
4354 * Documentation/user/ tweaks.itely, working.itely: new
4355 files, being more advanced "learning manual" chapters.
4357 * Documentation/user/ tutorial, putting, lilypond: reorg.
4359 2006-04-26 Graham Percival <gpermus@gmail.com>
4361 * input/regression/lyric-combine-polyphonic.ly: fixed test
4362 (no more "can't find context `one'" error).
4364 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4366 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4368 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4370 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4372 * lily/relocate.cc (read_relocation_dir): new function.
4374 2006-04-26 Graham Percival <gpermus@gmail.com>
4376 * Documentation/user/instrument-notation.itely: a few more fixes
4377 from Eduardo, thanks!
4379 * Documentation/user/README.txt: new file; contains info on
4380 style that used to be in lilypond.tely.
4382 * Documentation/user/ various: first round of doc reorg.
4384 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4385 graphic; this probably causes problems on some pdf
4386 viewers, notably Adobe Acrobat.
4388 2006-04-24 Graham Percival <gpermus@gmail.com>
4390 * Documentation/user/instrument-notation.itely: many alterations
4391 to Vocal music, from Eduardo Viera.
4393 2006-04-23 Graham Percival <gpermus@gmail.com>
4395 * Documentation/user/instrument-notation.itely: fix \new
4396 instead of \context problem.
4398 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4400 * lily/relocate.cc (expand_environment_variables): new function.
4402 (read_relocation_file): id.
4404 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4406 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4408 * ly/engraver-init.ly: remove old comments from TabVoice
4410 2006-04-20 Graham Percival <gpermus@gmail.com>
4412 * Documentation/user/instrument-notation.itely: added Erlend's
4413 latest doc patch, thanks!
4415 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4417 * lily/include/slur.hh:
4419 * lily/phrasing-slur-engraver.cc:
4420 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4421 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4422 Slur_engraver:: and putting it in
4423 Slur::auxiliary_acknowledge_extra_object ().
4425 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4427 * lily/note-collision.cc: fix a comment
4429 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4431 * stepmake/bin/add-html-footer.py: fix footer position in
4432 generated html files: before </body> and </html> tags.
4434 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4436 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4437 Earlier successive `make' commands finally compiled ok.
4439 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4441 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4443 * lily/include/stem-tremolo.hh:
4444 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4448 * lily/include/lookup.hh: add rotated_box ()
4450 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4452 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4453 been generated. Fixes "can't get `--help'" bug after make clean.
4455 * THANKS: alphabetize contributors.
4457 2006-04-17 Graham Percival <gpermus@gmail.com>
4459 * Documentation/user/instrument-notation.itely: added Erlend's
4460 tabs and banjo doc patch. Thanks!
4462 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4464 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4466 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4468 * scm/output-lib.scm: add some more predefined string tunings.
4470 * Documentation/user/instrument-notation.itely: and doc them.
4472 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4474 * ly/engraver.ly: Remove obsolete comments.
4476 * ly/gregorian-init.ly: Define default layout block.
4478 * input/puer-fragment.ly: Updated and extended.
4480 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4482 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4483 pdf conversion behaviour.
4485 * flower/file-name.cc (dir_name)
4486 (get_working_directory): Move from relocate.cc.
4488 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4490 * lily/relocate.cc: Encapsulate sys/stat.h in
4493 2006-04-14 Graham Percival <gpermus@gmail.com>
4495 * Documentation/user/ various: small updates from Cameron
4496 and Juergen, thanks!
4498 * Documentation/user/ various: small updates of my own.
4500 * THANKS: 2.7 -> 2.8.
4502 2006-04-11 Graham Percival <gpermus@gmail.com>
4504 * scm/define-context-properties.scm: typo.
4506 * Documentation/user/ : many more small updates.
4508 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4510 * scm/define-music-types.scm: disposed "docme".
4512 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4514 * lily/hairpin.cc: make niente circles a bit smaller.
4516 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4518 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4519 get-pfa and get-*-fonts targets.
4521 2006-04-10 Graham Percival <gpermus@gmail.com>
4523 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4524 music-glossary, programming-interface: more minor fixes
4527 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4529 * scm/define-context-properties.scm: another old \property update.
4530 This time tested for compiling!
4532 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4534 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4536 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4538 * scm/define-context-properties.scm (all-user-translation-properties):
4539 * Documentation/user/global.itely (Page formatting): Compile fix.
4541 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4543 * Documentation/user/advanced-notation.itely (Polymetric
4544 notation): Update the example to use the "+" symbol and add link
4545 to input/test/compound-time.ly.
4547 2006-04-08 Graham Percival <gpermus@gmail.com>
4549 * scm/define-grob-properties.scm: clarify docs for #'direction.
4551 * scm/define-context-properties.scm: update old \property override.
4553 * Documentation/user/ advanced-notation, global, lilypond-book:
4554 more minor doc updates.
4556 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4558 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4560 * scm/backend-library.scm (search-gs): oops.
4562 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4564 * scripts/lilypond-book.py (output): use base, not filename for href.
4566 * scm/backend-library.scm: only look for gs.
4568 * scripts/lilypond-book.py (output): fix printfilename.
4570 * lily/parser.yy (music_function_musicless_prefix): fold together
4571 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4573 * lily/slur.cc (print): only set font-size if not set yet.
4575 * lily/slur-configuration.cc (add_score): improved layout of debug
4578 2006-04-05 David Feuer <David.Feuer@gmail.com>
4580 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4581 (draw_circle): Hopefully fixed regression.
4582 Improved documentation for several procedures.
4584 2006-03-04 Werner Lemberg <wl@gnu.org>
4586 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4588 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4590 * scripts/musicxml2ly.py (bindir): add dynamic
4593 2006-04-04 Graham Percival <gpermus@gmail.com>
4595 * Documentation/user/ basic-notation, advanced-notation, putting,
4596 instrument-notation, invoking, lilypond, THANKS: another ream of small
4597 fixes from the Doc Helpers.
4599 2006-04-03 David Feuer <David.Feuer@gmail.com>
4601 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4603 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4605 * Cleaned up interfaces between PostScript and Scheme, and moved
4606 computations from PostScript to Scheme:
4608 * music-drawing-routines.ps
4609 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4610 with stroke_and_fill throughout.
4611 (euclidean_length, print_letter, draw_box): Deleted unused
4612 procedures. If someone needs draw_box, implement it using
4613 draw_round_box; don't duplicate code.
4614 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4615 Refactored/cleaned up interfaces.
4618 * output-ps.scm: reordered arguments to PostScript functions to
4619 match new interfaces
4620 (glyph-string): Rewrote glyph-string.
4621 (grob-cause): Replaced string-append with format.
4622 (repeat-slash): Rewrote to do computation here.
4623 (round-filled-box): Rewrote to do computation here.
4625 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4627 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4629 * stepmake/stepmake/toplevel- targets.make: print help info about
4632 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4634 * input/regression/hairpin-circled.ly: new file
4636 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4638 * lily/hairpin.cc (print): add support for circled tip
4640 * scm/define-grob-properties.scm: add circled-tip parameter
4642 * scm/define-grobs.scm: init circled-tip to false
4644 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4646 * scm/music-functions.scm (quote-substitute): set
4649 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4651 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4654 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4656 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4658 2006-03-31 David Feuer <david.feuer@gmail.com>
4660 * scm/framework-ps.scm:
4662 * scm/output-ps.scm: glyph-string now produces smaller, more
4663 readable, and probably faster PostScript. Several findfont
4664 scalefont setfont instances changed to selectfont
4665 Hacked-up string-appends changed to formats.
4667 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4669 2006-03-30 Graham Percival <gpermus@gmail.com>
4671 * scm/lily-library.scm: make "no version" warning message more polite.
4673 * lily/music.cc: add double quotes to failed octave check.
4675 * Documentation/user/ advanced-notation, changing-defaults,
4676 instrument-notation, invoking, music-glossary: whole bunch of minor
4679 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4681 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4682 $(buildscriptdir) iso. depth.
4684 * VERSION (PACKAGE_NAME): release 2.9.1
4686 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4688 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4690 * VERSION (PATCH_LEVEL): bump version number.
4692 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4695 * lily/pango-font.cc (pango_item_string_stencil): use
4698 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4699 $(outdir)/emmentaler-%.svg): remove canary.
4701 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4702 glyphnames if we have a ttf font.
4704 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4706 * Documentation/user/advanced-notation.itely (Font selection):
4707 Corrected reference to the font-family-override.ly example.
4709 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4711 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4712 stem-tremolo object in the stem (or else the stem might not be
4715 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4717 * lily/ttf.cc (print_trailer): only print existing glyphs.
4719 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4721 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4722 position the tremolo based on the position of the notehead.
4724 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4725 notes and update the texidoc line with the new positioning rules.
4727 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4729 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4731 * scripts/lilypond-book.py (Module): set default for linewidth if
4734 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4736 * VERSION (PACKAGE_NAME): release 2.9.0.
4738 * input/regression/stem-tremolo-position.ly: new file.
4740 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4742 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4744 * lily/stem-tremolo.cc (print): position
4745 the tremolo depending only on the end of the stem
4746 and not on the notehead
4747 (raw_stencil): center, on the middle staff line, the
4748 flag that is closest to the end of the stem (previously
4750 (calc_width): add this callback to shorten a tremolo when
4751 it is beamed or it is stemup with a flag
4752 (style): add this callback to make a tremolo rectangular when
4753 it is beamed or it is stemup with a flag
4754 (rotated_box): this is like Lookup::beam but makes a rotated
4755 rectangle instead of a parallelogram
4757 * lily/stem.cc (calc_stem_info): make sure the stem
4758 is long enough to fit the tremolo
4759 (calc-length): reduce the length of tremolo stems since the
4760 tremolo code is now capable of better positioning
4762 * scm/define-grobs.scm: make calc_width the default beam-width
4763 callback for stem-tremolo and add the style callback
4765 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4767 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4770 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4772 * lily/ttf.cc (make_index_to_charcode_map): restore old
4775 2006-03-28 Werner Lemberg <wl@gnu.org>
4777 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4779 2006-03-28 Graham Percival <gpermus@gmail.com>
4781 * THANKS: update for 2.9, add section for Documentation helpers.
4783 * Documentation/topdocs/NEWS.tely: compile fix.
4785 * Documentation/user/ basic-notation, global, advanced-notation,
4786 examples.itely: minor fixes from mailist.
4788 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4790 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4793 * lily/ttf.cc (print_trailer): use it.
4795 * lily/pango-font.cc (get_unicode_name): new function.
4797 * lily/ttf.cc (make_index_to_charcode_map): move function from
4799 (print_trailer): substitute uniXXXX name if applicable.
4801 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4802 (pango_item_string_stencil): use it to generate uniXXXX names.
4804 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4805 note heads, for uniform widths in shape note output.
4806 (overdone_heads): hmm. remove them again.
4808 * scripts/lilypond-book.py (output): add links to filenames.
4810 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4812 * lily/note-collision.cc (get_clash_groups): only consider when
4813 Note_column::dir <> CENTER.
4815 * scripts/lilypond-book.py (get_option_parser): init output_name
4818 2006-03-24 Graham Percival <gpermus@gmail.com>
4820 * Documentation/topdocs/NEWS.tely: add @end itemize
4822 * Documentation/user/ global, advanced-notation: minor
4825 2006-03-23 Graham Percival <gpermus@gmail.com>
4827 * Documentation/user/ lilypond.tely, music-glossary,
4828 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4830 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4832 * mf/GNUmakefile: don't install .enc files.
4834 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4836 * VERSION (PATCH_LEVEL): bump to 2.9.0
4838 2006-03-22 Graham Percival <gpermus@gmail.com>
4840 * Documentation/user/advanced-notation.itely: minor fixes
4843 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4845 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4847 * branch lilypond_2_8
4849 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4851 * scripts/lilypond-book.py (samefile): new function, for windoze
4854 2006-03-21 Graham Percival <gpermus@gmail.com>
4856 * ly/engraver-init.ly: add info about StaffGroup.
4858 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4860 * input/regression/stem-direction-context.ly: idem.
4862 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4866 * input/regression/page-layout-twopass.ly: comment out \markup so
4869 * lily/instrument-name-engraver.cc (finalize): add to instrument
4870 name global System. This also fixes chopped instrument names, but
4871 doesn't crash when there are slurs/beams.
4873 * lily/slur-configuration.cc (add_score): disallow negative slur
4876 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4878 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4880 * lily/instrument-name-engraver.cc (process_music): kludge: add
4881 InstrumentName spanner to axis group of left bound. Fixes chopped
4882 off instrument names in EPS images.
4884 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4886 * scripts/abc2ly.py (option_parser): update to 2.7.40
4888 2006-03-20 Graham Percival <gpermus@gmail.com>
4890 * THANKS: move small doc contributors to SUGGESTIONS.
4892 * Documentation/user/ basic-notation, advanced-notation,
4893 global: small changes from mailist.
4895 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4897 * Documentation/user/advanced-notation.itely (Text marks): update
4898 for new rehearsalMarkAlignSymbol convention.
4900 * VERSION (PATCH_LEVEL): bump version.
4902 * input/test/instrument-name-align.ly: new file.
4904 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4906 * input/test/instrument-name-align.ly: new file. Document how to
4907 align instrument names.
4909 * lily/mark-engraver.cc: remove properties.
4911 * scm/define-context-properties.scm
4912 (all-user-translation-properties): remove align symbol properties
4913 for barnumber/reh. mark.
4915 * lily/break-align-interface.cc (self_align_callback): new
4916 interface, new function. Look at complete alignment. This handles
4917 tunable break alignments in case break-align-symbols are missing.
4919 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4921 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4923 * python/convertrules.py (conv): mark/bar number alignment rule.
4925 * lily/break-align-interface.cc (calc_positioning_done): also
4926 store offset from last visible break-alignment to its
4927 neighbor. This makes alignment on non-visible objects more reliable.
4929 * po/lilypond.pot (Module): ran po-replace.
4931 * input/regression/tie-single-manual.ly (Module): new file.
4933 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4934 look at has_manual_position_.
4935 (from_ties): set has_manual_position_ if tie has staff-position set.
4937 * lily/tuplet-bracket.cc (calc_positions): idem.
4939 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4942 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4944 * scm/define-markup-commands.scm (smallCaps): new markup command
4945 for turning a text to small caps using smaller font size and upper
4948 2006-03-17 Graham Percival <gpermus@gmail.com>
4950 * Documentation/user/ examples, instrument-notation,
4951 advnaced-notation: minor fixes from mailist.
4953 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4955 * Documentation/user/tutorial.itely (First steps): change example
4958 2006-03-17 Graham Percival <gpermus@gmail.com>
4960 * Documentation/user/ examples, advanced: minor changes from mailist.
4962 * THANKS: add Geoff Horton, for documentation stuff.
4964 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4966 * python/lilylib.py (system): revert have_select kludge.
4968 * Documentation/user/tutorial.itely (Commenting input files):
4969 update version numbers in doc.
4971 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4972 bound-padding to multi-measure-interface
4974 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4976 * input/test/engraver-example.ily: update version number.
4978 * VERSION (PACKAGE_NAME): release 2.7.39
4980 * lily/note-spacing.cc (get_spacing): heighten threshold where
4981 accidentals/arpeggios influence previous spacing fully.
4983 * lily/rest.cc (y_offset_callback): only use direction if
4984 staff-position wasn't set before.
4986 * lily/bar-number-engraver.cc: add support for
4987 barNumberAlignSymbol.
4988 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4990 * lily/pointer-group-interface.cc (set_ordered): new function.
4991 (add_unordered_grob): new function.
4993 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4994 to ordered, unless the opposite has been proved. This fixes
4995 random reordering of large object groups across linebreaks,
4998 * lily/main.cc (do_chroot_jail): printf format fix.
5000 * lily/tie-formatting-problem.cc (generate_configuration):
5001 multiply y-shift for dot with direction.
5003 * scm/define-markup-commands.scm (note-by-number): put (magstep
5004 size) in y-attach too.
5006 * Documentation/topdocs/NEWS.tely (Top): show override.
5008 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5009 direction for stems.
5011 2006-03-15 Graham Percival <gpermus@gmail.com>
5013 * Documentation/user/ changing-defaults, global: minor
5016 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5018 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5020 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5021 breakable items after uniformly stretched notes.
5023 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5024 outline with outer edge of note heads. This prevents infinity
5025 problems with tied whole notes.
5027 * scripts/lilypond-book.py (do_file): use os.popen
5029 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5031 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5033 * Documentation/user/invoking.itely: Add ragged-right to bug report
5036 2006-03-14 Graham Percival <gpermus@gmail.com>
5038 * Documentation/user/global.itely: small fix from mailist.
5040 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5042 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5043 file descriptor returned by tempfile.mkstemp() when writing
5044 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5047 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5049 * po/fi.po: newline bugfix.
5051 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5053 * scm/paper.scm (paper-alist): Rounding fixes.
5055 2006-03-13 Graham Percival <gpermus@gmail.com>
5057 * Documentation/user/ changing-defaults, instrument-notation,
5058 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5060 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5064 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5066 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5069 * python/lilylib.py (print_environment): move ps_page_count to
5072 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5074 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5076 * scm/framework-ps.scm (embed-document): new function. Use to
5079 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5081 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5083 * Documentation/user/instrument-notation.itely (Setting simple
5084 songs): Added \book{...} around the full example, so the separate
5085 markups are included in the printed example.
5087 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5089 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5092 * python/lilylib.py (system): rewrite system() using
5093 subprocess. Remove >& redirection trickery.
5095 2006-03-11 Graham Percival <gpermus@gmail.com>
5097 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5098 notation-appendices.itely: minor fixes from mailist.
5100 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5102 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5103 unsplit man also needs images.
5105 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5107 * VERSION (PACKAGE_NAME): 2.7.38 released.
5109 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5111 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5114 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5116 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5117 respects the Score.skipTypesetting property.
5119 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5121 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5122 Prolog. No %%EOF after CFF file.
5124 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5126 * lily/constrained-breaking.cc (get_max_systems): used to return a
5128 (combine_demerits): use pointers to reduce copying data
5129 (calc_subproblem): idem
5130 (get_page_penalty): add page turn penalties
5132 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5134 * Documentation/user/invoking.itely (Invoking lilypond): better
5135 explanation of -e usage.
5137 * lily/main.cc (main_with_guile): don't append to
5138 init_scheme_code_string
5140 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5142 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5144 * scripts/convert-ly.py (do_options): don't print help for
5147 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5148 @code and @example. Update from texinfo.tex from CVS.
5150 2006-03-08 Graham Percival <gpermus@gmail.com>
5152 * Documentation/user/scheme-tutorial.itely: clarifies distances
5153 measured in staff-spaces.
5155 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5157 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5158 consider[k] is true.
5160 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5162 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5163 consider columns that have originals. Unifies spacing for mm
5164 rests around line breaks.
5166 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5167 (set_text_rods): idem.
5168 (calculate_spacing_rods): new function: share code between
5169 set_text_rods and set_spacing_rods.
5170 (set_text_rods): take extents of bounds into account.
5172 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5174 * Documentation/user/basic-notation.itely (Writing music in
5175 parallel): don't use relative.
5177 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5179 * ly/music-functions-init.ly (Module): add shiftDurations
5181 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5183 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5185 * ly/engraver-init.ly: init vocalName to nil.
5187 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5189 * scm/music-functions.scm (music->make-music): bugfix,
5190 KeyChangeEvents are now handled correctly.
5192 * scripts/lilypond-book.py: Add --debug option.
5194 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5196 * python/lilylib.py: add tempfile.
5198 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5200 * VERSION (PACKAGE_NAME): release 2.7.37
5202 * python/lilylib.py (ps_page_count): remove make_ps_images().
5203 (ps_page_count): remove mkdir_p
5204 (system): remove cleanup_temp.
5205 (exit): remove lilypond_version_(check)
5206 (error_log): remove pseudo_filter_p
5211 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5214 * lily/accidental-engraver.cc (make_standard_accidental): only add
5215 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5217 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5218 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5219 Make incompatibilities.
5221 * scm/output-ps.scm (grob-cause): replace backslashes by /
5222 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5224 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5226 * cygwin/GNUmakefile: Install fixes.
5228 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5230 * lily/note-head.cc (head::get_balltype): Compile fix.
5232 * flower/file-name.cc (dos_to_posix): Flower string fix.
5234 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5236 * python/lilylib.py: pychecker cleanups.
5238 * scripts/lilypond-book.py
5239 (Lilypond_snippet.output_print_filename): pychecker cleanups
5241 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5243 * python/lilylib.py (underscore): remove identify() , warranty()
5245 * ps/music-drawing-routines.ps: change Border routine for GSView
5248 * lily/stem.cc (height): use quantize-positions. This triggers
5249 set_stem_lengths, so scripts on beamed stems are handled correctly.
5251 * lily/side-position-interface.cc (aligned_side): check if edges
5252 of script are inside staff. Fixes accent of edge of the staff.
5254 * input/regression/staccato-pos.ly: more examples.
5256 * stepmake/aclocal.m4 (depth): fix bashism.
5258 * lily/lyric-combine-music-iterator.cc: move from
5259 new-lyric-combine-iterator.cc
5260 (process): add pending_grace_lyric_ member to delay lyrics on
5263 * lily/system-start-text.cc (print): suicide if we don't have any
5264 elements. Fixes hara kiri'd instrument names.
5266 * scripts/mup2ly.py (Module): remove.
5268 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5270 * Documentation/user/global.itely (A single music expression):
5271 close @lilypond properly
5273 * lily/volta-bracket.cc (modify_edge_height): change from
5274 after_line_breaking_callback. Suicide last bracket if appropriate.
5276 * python/lilylib.py: strip getopt support
5278 * scripts/etf2ly.py (do_options): use optparse
5280 * scripts/midi2ly.py: optparse, strip lilylib copy.
5282 * scripts/abc2ly.py (voices): use optparse.
5284 * stepmake/stepmake/generic-vars.make: new function absdir.
5286 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5288 * scripts/lilypond-book.py (find_file): use global_options for
5291 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5294 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5296 * python/lilylib.py (get_global_option): ughness for extracting
5297 global options from lilylib.
5298 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5300 * scripts/lilypond-book.py (get_option_parser): use optparse for
5301 option handling. Put options in global_options variable.
5303 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5305 * Documentation/index.html.in: clarify.
5307 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5309 * scm/layout-page-layout.scm (write-page-breaks): add a
5310 music-system-heights property to the page layout output.
5312 * scm/page.scm (make-page-stencil): take footer into account when
5313 computing the 'space-left page property
5314 (annotate-space-left): take footer into account when annonating
5317 2006-02-28 Graham Percival <gpermus@gmail.com>
5319 * Documentation/user/ advanced-notation, global: more (final)
5320 docs for music expressions, removed special fermatas.
5322 2006-02-27 Graham Percival <gpermus@gmail.com>
5324 * Documentation/user/ basic-notation, global: minor changes
5327 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5329 * scm/framework-ps.scm:
5330 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5331 layer for inf? and nan? from framework-ps to lily-library.
5333 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5335 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5336 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5338 * buildscripts/substitute-encoding.py (Module): remove file.
5340 * mf/GNUmakefile: more PFA strippage.
5342 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5344 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5347 * scm/framework-ps.scm: remove font name munging.
5349 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5351 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5353 * scm/markup.scm (define-markup-command): change
5354 def-markup-command to define-markup-command
5356 * scm/music-functions.scm (define-music-function): change
5357 def-music-function to define-music-function.
5359 * python/convertrules.py (conv): rules for def-music-function
5360 and def-markup-commands
5362 * Documentation/user/programming-interface.itely,
5363 input/no-notation/display-lily-tests.ly,
5364 input/regression/lily-in-scheme.ly,
5365 input/regression/markup-user.ly,
5366 input/regression/music-function.ly, input/regression/tie-chord.ly,
5367 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5368 ly/gregorian-init.ly: use new macro names (define-music-function,
5369 define-markup-command).
5371 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5373 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5374 (output): add comments to lp-book latex output.
5376 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5379 2006-02-23 Graham Percival <gpermus@gmail.com>
5381 * Documentation/user/ tutorial, global: minor changes.
5383 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5385 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5386 blocks (for make 3.80)
5388 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5389 \notemode so that user should not have to explicitely type it.
5391 * scm/define-music-display-methods.scm: various
5392 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5395 * input/no-notation/display-lily-tests.ly: new tests for
5396 \applyOutput and \applyContext
5398 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5400 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5401 changed it slightly so that the number of systems returned by
5402 solve () will be the same as the last value passed to resize
5403 (). I've also added more documentation, removed casts, fixed style
5404 problems and put in some recovery if constraints aren't satisfied."
5406 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5408 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5409 for emacs < 22 compatibility.
5410 (count-rexp): Use it.
5411 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5412 substring juggling (Milan Zamazal).
5414 2006-02-23 Graham Percival <gpermus@gmail.com>
5416 * Documentation/user/ basic-notation, advanced-notation,
5417 global.itely, invoking.itely, tutorial,itely:
5418 minor fixes from mailist.
5420 * scm/define-markup-commands.scm: improve docs of \filled-box.
5422 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5424 * Documentation/index.html.in: changes concern the previous release.
5426 * input/regression/+.ly: cultivate typographical terminology.
5428 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5430 * scm/define-grob-interfaces.scm (parentheses-interface): add
5431 padding to parentheses-interface.
5433 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5434 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5436 * VERSION (PATCH_LEVEL): release 2.7.36
5438 * lily/slur.cc: add avoid-slur (ugh.)
5440 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5441 intersection gets smaller. This fixes slurs over extreme points.
5443 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5444 stems with neutral-direction set.
5446 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5448 * lily/open-type-font.cc (load_table): format error.
5450 * lily/change-iterator.cc (process): format fix.
5452 * flower/include/international.hh (_f): idem.
5454 * flower/include/std-string.hh: add format printf attribute.
5456 * scm/define-grobs.scm (all-grob-descriptions): height of all
5457 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5459 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5462 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5464 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5466 * input/regression/: upgraded syntax for some files.
5468 * THANKS: Add bughunters.
5470 2006-02-22 Graham Percival <gpermus@gmail.com>
5472 * Documentation/user/ invoking.itely, advanced-notation.itely,
5473 global.itely: long-awaited "let's make chapter 10 not suck"
5474 update. Rearrange chapter 10; now called "global issues",
5475 addresses file structure, etc. Some info from other files
5476 moved into global.itely.
5478 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5480 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5481 catch trill-span-event notes.
5483 * Documentation/user/examples.itely (Ancient notation templates): typo.
5486 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5488 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5490 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5492 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5494 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5495 froum Laissez_vibrer_engraver.
5497 * ly/declarations-init.ly (repeatTie): add \repeatTie
5499 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5501 * scm/define-grob-properties.scm (all-user-grob-properties): add
5502 head-direction property.
5504 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5505 from_lv_ties. Take head direction argument.
5507 * lily/semi-tie-column.cc: rename from
5508 laissez-vibrer-tie-column.cc. Rename class too.
5510 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5513 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5515 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5517 (find_breaks): idem.
5519 2006-02-21 Graham Percival <gpermus@gmail.com>
5521 * Documentation/user/advanced-notation.itely: fixed make-moment]
5524 * Documentation/user/basic-notation.itely: more clarification to
5527 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5529 * lily/include/constrained-breaking.hh (class
5530 Constrained_breaking): new file.
5532 * lily/constrained-breaking.cc (resize): new file.
5534 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5536 * Documentation/user/advanced-notation.itely (Clusters): insert
5539 * lily/tie-column.cc (calc_positioning_done): support for
5542 * lily/tie-formatting-problem.cc
5543 (generate_extremal_tie_variations): factor out.
5544 (score_ties_configuration): annotate all tie
5545 (print_ties_configuration): new routine.
5546 (generate_configuration): nudge extremal ties outside of the head
5548 (score_ties_configuration): oops. convert to staff-space before
5549 determining position symmetry.
5551 2006-02-20 Graham Percival <gpermus@gmail.com>
5553 * Documentation/user/*-notation.itely: misc minor editing,
5554 shifting doc sections around.
5556 * Documentation/user/*-notation-itely, global.itely,
5557 changing-defaults.itely: added new stuff from NEWS.
5559 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5563 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5565 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5566 lilypond --verbose for lp-book.
5568 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5569 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5571 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5572 $(buildscript-dir) iso. absolute depth.
5574 * buildscripts/genicon.py (dir): thinko.
5576 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5578 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5580 * scm/output-lib.scm: swap darkcyan/darkyellow
5582 * THANKS: Add bughunters.
5584 2006-02-19 Graham Percival <gpermus@gmail.com>
5586 * Documentation/user/programming-interfaces.itely: fixed example.
5588 * Documentation/user/instrument-notation.itely: fix @{ @}.
5590 * scm/script.scm: add avoid-slur for \open.
5592 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5594 * lily/tie-formatting-problem.cc (score_configuration): use
5595 sliding score for min-length.
5597 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5598 spaghetti for icons.
5600 * buildscripts/genicon.py (program_name): new file.
5602 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5604 (generate_configuration): for small ties, also look for collisions
5605 at Y + DIR*h + DELTA_Y.
5606 (get_variations): consider variation for dot positions too.
5608 * lily/side-position-interface.cc (aligned_side): take abs for
5609 quantized rounded position. Fixes tenuto below staff.
5611 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5612 markers when necessary.
5614 * lily/program-option.cc (internal_set_option): add
5615 strict_infinity_checking option.
5617 * scm/output-lib.scm (cyan): swap yellow and cyan.
5619 2006-02-19 Graham Percival <gpermus@gmail.com>
5621 * darwin.patch: trivial linenumber update.
5623 * Documentation/user/ {various}: `\context foo = named' changed
5624 to `\new foo = "name"' in docs.
5626 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5628 * scm/stencil.scm (annotate-y-interval): use it.
5630 * scm/lily-library.scm (interval-sane?): new function.
5632 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5635 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5638 * flower/include/std-vector.hh (iterof): add iterof macro.
5640 * lily/enclosing-bracket.cc (width): new function.
5642 * lily/align-interface.cc (align_elements_to_extents): reinstate
5645 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5647 * Documentation/index.html.in: fix spelling: thankyous.
5649 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5651 * lily/lyric-hyphen.cc: typo.
5653 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5655 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5656 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5659 * VERSION: release 2.7.35
5661 * lily/beam.cc (get_default_dir): oops. Take abs () for
5663 (get_default_dir): use extreme position criterion only in absence
5664 of forced stem directions.
5666 * VERSION (PATCH_LEVEL): bump VERSION.
5668 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5669 dependencies. Necessary for -jX builds.
5671 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5673 * lily/relocate.cc (setup_paths): Yet another const fix.
5675 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5677 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5679 * lily/relocate.cc (setup_paths): oops.
5681 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5683 * Documentation/index.html.in: order links: html before PDF.
5685 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5687 * lily/tie-column-format.cc (Module): remove.
5689 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5691 * lily/text-spanner.cc (print): idem.
5693 * lily/dynamic-text-spanner.cc (print): only print line if longer
5696 * lily/auto-change-iterator.cc (change_to): formatting.
5698 * lily/beam.cc (get_default_dir): take extreme note head as input
5701 * lily/tie.cc (get_default_dir): only look directions for visible
5704 * lily/side-position-interface.cc (aligned_side): oops. Don't
5705 mutiply with direction. This fixes quantized (staccato, tenuto)
5706 scripts below notes.
5708 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5709 direction. Fixes c-lyrics-center-align.ly
5711 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5713 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5716 * lily/std-string.cc:
5717 * lily/include/std-vector.hh (split_string): Move and rename from
5718 lily/include/misc.hh, lily/misc.cc. Update callers.
5720 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5722 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5724 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5726 * flower/test-file.cc: New file.
5728 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5731 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5733 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5735 * flower/include/file-storage.hh: remove file.
5737 * lily/include/midi-item.hh (class Midi_track): idem.
5739 * lily/include/source.hh (class Sources): idem.
5741 * lily/include/performance.hh (class Performance): use vector
5744 * flower/include/cons.hh (class Cons): remove file.
5746 * flower/include/flower-proto.hh: remove template cruft.
5748 * lily/include/font-metric.hh: use size_t not vsize for indices.
5750 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5753 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5755 * lily/include/paper-book.hh (class Paper_book):
5756 make get_system_specs() public.
5758 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5759 the force=10000 case if we don't have a current-best.
5761 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5764 * flower/include/flower-proto.hh: remove outdated templates.
5766 * scm/page.scm: use annotate-spacing
5768 2006-02-15 Graham Percival <gpermus@gmail.com>
5770 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5772 * THANKS: moved Erlend Aasland to contributors.
5774 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5776 * config.hh.in: remove HAVE_PANGO_16
5778 * lily/tuplet-bracket.cc (calc_positions): multiply with
5779 staff-space for beam case. This fixes tuplets+beams on scaled
5782 * config.hh.in: remove all Kpathsea related defines.
5784 * lily/dot-column.cc (side_position): reach stem via dots->
5785 head->stem. Inspect all stems for dot collisions.
5787 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5790 * lily/bar-number-engraver.cc (process_music): document function
5793 * lily/score.cc (default_rendering): add pscore, not systems
5796 * lily/paper-book.cc (get_system_specs): separate generation of
5799 * flower/include/std-vector.hh: don't include config.hh
5801 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5803 * flower/include/std-vector.hh: Better wrapper compatibility with
5806 * flower/include/flower-proto.hh: Remove cheap forward declaration
5809 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5811 2006-02-14 Graham Percival <gpermus@gmail.com>
5813 * Documentation/user/invoking.itely: add warning about command line.
5815 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5817 * lily/include/lily-proto.hh: add Prob, rm Page.
5819 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5821 * VERSION: release 2.7.34
5823 * lily/relocate.cc (framework_relocation): show canary if
5824 GHOSTSCRIPT_VERSION undefined.
5826 * GNUmakefile.in: remove $(VERSION) symlink.
5828 * lily/relocate.cc (setup_paths): add +
5830 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5832 * Documentation/index.html.in: specify sizes for all big HTML pages.
5834 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5836 * config.hh.in: remove @FRAMEWORKDIR@
5838 * lily/system-start-text.cc (get_stencil): new file: separate out
5839 system-start-delimiter text support.
5841 * input/**ly: replace \context with \new where appropriate.
5845 * lily/slur-scoring.cc (get_base_attachments): use
5846 robust_relative_extent. This fixes problems with empty paper-columns.
5848 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5850 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5852 * scm/define-music-properties.scm (all-music-properties):
5853 create-new property.
5855 * lily/context-specced-music-iterator.cc (construct_children):
5856 inspect 'create-new property iso. magical $uniqueContextId context
5859 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5861 * lily/context-key-manager.cc (Module): new file. Encapsulate
5862 object key generation.
5864 * lily/include/context-key-manager.hh (Module): new file.
5866 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5868 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5871 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5873 (reloc_b): excise --enable-framework-dir
5875 * lily/relocate.cc (framework_relocation): use getenv
5876 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5878 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5880 * flower/include/std-string.hh:
5881 * flower/include/std-vector.hh: Finish std:: conversion; move
5882 flower extensions from std:: namespace. Update users.
5884 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5885 their expansion to vector<*>. Update users.
5887 2006-02-10 Graham Percival <gpermus@gmail.com>
5889 * Documentation/user/invoking.itely: add example to File structure.
5891 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5892 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5894 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5896 * ly/paper-defaults.ly: typo.
5898 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5899 set_parent() for parentheses. This will make it show up in bbox
5902 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5903 ly:grob-common* functions.
5905 * lily/grob-scheme.cc (LY_DEFINE):
5906 ly:grob-common-refpoint-of-array: new function
5907 ly:grob-common-refpoint: new function
5908 ly:grob-relative-coordinate: new function
5910 * lily/instrument-name-engraver.cc (process_music): use
5911 Text_interface::is_markup(). This fixes \markup on instrument names.
5913 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5916 * lily/slur.cc (print): idem.
5918 * lily/tie.cc: add line-thickness for ties.
5920 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5922 * scm/output-svg.scm: Document diversion from GNU coding standards
5923 as a workaround for a bug in Microsoft Internet Explorer.
5925 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5927 * lily/instrument-name-engraver.cc (process_music): use
5928 is_markup() iso. is_string()
5930 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5932 * lily/percent-repeat-engraver.cc (process_music): only look at
5933 main_part_ for % repeats.
5935 * lily/stem-tremolo.cc (get_beam_translation): new function.
5936 (calc_slope): new function.
5937 (height): don't use real slope.
5939 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5941 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5942 new connect-to-neighbor, control-points and staff-padding
5943 properties to make ligature brackets showing up again.
5945 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5947 * VERSION: release 2.7.33
5949 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5952 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5953 remove applyOutput example.
5954 (Objects connected to the input): document \tweak, \parenthesize
5956 * lily/relocate.cc (prefix_relocation): allow "current"
5957 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5958 changing VERSION in a lily tree less painful.
5960 * input/regression/parenthesize.ly: new file.
5962 * scm/output-lib.scm (parenthesize-element): new function.
5964 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5966 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5968 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5969 cause: accidentals are caused by note heads, not note events.
5971 2006-02-08 Graham Percival <gpermus@gmail.com>
5973 * darwin.patch: small patch from Erlend, thanks!
5975 * Documentation/user/basic-notation.itely: add stem-neutral example.
5977 * Documentation/user/putting.itely: clarifications.
5979 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5981 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5982 note, add more guidelines to what should go into NEWS.
5984 * input/sakura-sakura.ly: document how to override font.
5986 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5988 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5990 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5992 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5994 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5995 convertrules. Add explicit grouping, needed for python2.2.
5997 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5999 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6001 2006-02-07 Graham Percival <gpermus@gmail.com>
6003 * Documentation/user/global.itely: fix line-width in (text) docs.
6005 * Documentation/user/lilypond-book.itely: same.
6007 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6009 * VERSION (PACKAGE_NAME): release 2.7.32
6011 * Documentation/topdocs/NEWS.tely (Top): document new variable
6014 * flower/include/array.icc (Message): remove file.
6016 * flower/include/std-vector.hh: make sure vsize and VPOS are
6017 defined for binary_search_bounds().
6019 * flower/std-string.cc (std): add to_string(long unsigned).
6021 * configure.in (gui_b): excise std_string option.
6022 (gui_b): excise std_vector option.
6024 * flower/string.cc (Module): excise flower array & string
6026 * flower/include/std-string.hh: excise flower string.
6028 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6030 * python/convertrules.py (lilypond_version_re_str): require
6031 only numbers and dots in \version string.
6033 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6035 * lily/system-start-delimiter.cc (print): allow style = text too.
6037 * lily/system-start-delimiter-engraver.cc
6038 (acknowledge_system_start_text): new function, also add add to
6039 support of system-start-text (instrument names). This fixes
6040 instrument names on piano staves.
6042 * lily/instrument-name-engraver.cc: rewrite. Use
6043 system-start-delimiter approach. This save memory and cpu.
6045 * scm/define-grobs.scm (all-grob-descriptions): remove
6046 instrument-name from break-alignment.
6048 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6050 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6052 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6055 * configure.in (std_vector): On by default.
6057 * lily/include/font-metric.hh:
6058 * lily/include/tfm-reader.hh:
6059 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6062 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6064 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6066 * VERSION (PACKAGE_NAME): 2.7.31
6068 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6069 EPS edge at 0, but take minimum with left-overshoot. This fixes
6070 cut off system start delims.
6072 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6073 hack: add to axis group if not added yet. This fixes hara kiri'd
6076 * lily/hara-kiri-group-spanner.cc
6077 (force_hara_kiri_in_y_parent_callback): fix signatures.
6079 * lily/hairpin.cc (print): check next hairpin to see whether or
6080 not to be continuing.
6082 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6084 * Remove trailing whitespace from makefiles.
6086 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6089 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6091 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6093 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6095 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6097 * configure.in: Use it.
6099 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6101 * scm/music-functions.scm (pitch-of-note): new function.
6103 * ly/music-functions-init.ly: add \octave and \addquote
6105 * lily/parser.yy (music_function_chord_body): softcode \octave.
6106 (lilypond_header): softcode \addquote
6108 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6110 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6111 array.hh, parray.hh at all. Getting ready to flip the
6114 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6116 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6119 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6121 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6123 * flower/include/array.hh: typo.
6125 2006-02-02 Graham Percival <gpermus@gmail.com>
6127 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6129 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6131 * flower/include/pqueue.hh: Derive from std::vector.
6133 * flower/include/parray.hh: Conform to std::vector interface.
6136 2006-02-02 Graham Percival <gpermus@gmail.com>
6138 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6140 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6142 * flower/file-path.cc (is_file): remove if 0 section.
6144 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6145 selecting afii61352.
6147 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6149 * flower/include/std-vector.hh (boundary): Oops, reverse.
6151 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6152 remove superfluous `d'.
6154 * flower/include/std-vector.hh (boundary, top): Detach from class.
6155 Remove empty vector shell.
6157 * flower/include/array.hh (reverse, swap): Detach from class.
6160 * flower/include/std-vector.hh
6161 * flower/include/array.hh (concat): Globally change to insert ().
6163 * flower/include/std-vector.hh
6164 * flower/include/parray.hh
6165 * flower/include/array.hh (elem, elem_ref): Globally replace by
6168 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6170 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6172 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6173 anticipate on identifier substitutions.
6175 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6177 * flower/include/std-vector.hh (insert): Remove, replace by
6178 std::vector interface. Update callers.
6180 * flower/include/array.icc (insert): Change signature to
6181 match std::vector interface.
6183 * flower/include/array.icc (vector_sort): Bugfix.
6185 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6187 * lily/parser.yy (output_def_head_with_mode_switch): new
6188 production. Result: dashes and underscores may be used in the
6191 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6193 * python/convertrules.py (conv): oops. One slash too much.
6195 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6197 * flower/include/std-vector.hh (sort): Remove, replace by
6198 ::vector_sort. Update callers.
6200 * flower/include/std-vector.hh (slice): Remove. Update callers.
6203 * flower/test-std.cc (vector_sort): New test.
6205 2006-02-01 Graham Percival <gpermus@gmail.com>
6207 * Documentation/user/putting.itely: fixes from Erik.
6209 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6211 * flower/test-std.cc: Add simple unit test for vector migration.
6213 * stepmake/stepmake/test*: Unit test support.
6215 * flower/include/std-vector.hh (del): Remove. Use erase (),
6218 * flower/include/array.hh (begin, end): Add.
6221 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6223 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6224 std::string not String.
6226 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6229 * lily/prob.cc (Prob): copy type_ too.
6231 * lily/lily-guile.cc (mangle_cxx_identifier): new
6232 function. Class_bla::foo_bar_[px] ->
6233 ly:class-bla::foo-bar[?!]. Changes throughout
6235 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6237 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6239 * lily/beam.cc (calc_direction): take dir from visible stem in
6242 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6244 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6245 Fix -1, >=0 boundary checks for unsigned vsize.
6247 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6248 loop for unsigned vsize.
6250 * configure.in (--enable-std-vector): New option.
6251 (--enable-std-string): On by default.
6253 * flower/include/std-vector.hh: New file. Enable switch to
6254 std::vector, update client code.
6256 2006-01-30 Graham Percival <gpermus@gmail.com>
6258 * scm/document-translation.scm: clarify "this context is also
6259 known as". Thanks, Werner!
6261 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6263 * Documentation/user/invoking.itely: small fix from Don.
6265 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6267 * scm/lily.scm (define-scheme-options): rename option
6268 preview-include-book-title to book-title-preview
6269 (define-scheme-options): move force-eps-font-include (from paper
6270 block) to eps-font-include -d option.
6272 * VERSION (PATCH_LEVEL): release 2.7.30
6274 * input/bach-schenker.ly (staffPiano): new file.
6276 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6278 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6281 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6283 * ps/lilyponddefs.ps: remove start-system, stop-system,
6284 start-page fluff. This saves putting { } code on the stack, fixing
6285 stack overflows when including EPS files.
6287 2006-01-29 Graham Percival <gpermus@gmail.com>
6289 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6291 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6293 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6295 2006-01-28 Graham Percival <gpermus@gmail.com>
6297 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6299 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6301 * input/mutopia/claop.py: Update.
6303 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6305 * input/regression/completion-heads.ly (texidoc): fix.
6307 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6309 * lily/tie-formatting-problem.cc
6310 (set_ties_config_standard_directions): use abs iso fabs for ints.
6312 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6314 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6315 little less than noteheight, to prevent overlaps in chords.
6317 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6318 head, and fudge stem-attachment.
6320 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6322 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6324 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6326 * lily/main.cc (main): Debugging aid: catch exceptions.
6328 * flower/std-string.cc (to_string): Robustification. Fixes midi
6329 output with std::string.
6331 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6333 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6335 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6337 * Fix -DSTRING_UTILS_INLINED.
6339 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6341 * VERSION (PATCH_LEVEL): release 2.7.29
6343 * lily/relocate.cc (setup_paths): mingw uses std string too.
6345 * lily/*.cc: various fixes for substr(ARG).
6347 * lily/sustain-pedal.cc (print):
6349 * flower/file-name.cc (slashify): use std strings.
6351 * flower/string-convert.cc: remove publib.h
6353 * scm/define-markup-commands.scm (verbatim-file): new markup
6354 command \verbatim-file
6356 * Documentation/topdocs/NEWS.tely: fixup URLs
6358 * input/regression/alignment-vertical-manual-setting.ly (Module):
6361 * lily/align-interface.cc (align_elements_to_extents): overwrite
6362 translations with numbers in alignment-offsets from left bound
6364 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6365 (page-translate-systems): new function: take into account Y-offset.
6367 * Documentation/topdocs/NEWS.tely (Top): document new features.
6369 * input/regression/page-layout-manual-position.ly (Module): new
6372 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6374 * flower/file-path.cc (path::parse_path): Oops.
6376 * Finish std::string interface. For now, use std:: marker
6377 throughout for easy s/r.
6379 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6381 * Documentation/user/putting.itely (Score is a single musical
6383 (Score is a single musical expression): more typos.
6385 * scm/page.scm (annotate-space-left): thinko.
6386 (annotate-page): more thinkos.
6388 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6390 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6391 for different \score blocks separately.
6392 (post-process-pages): put write-page-layout into paper block.
6394 * lily/output-def.cc (get_parser): new file.
6396 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6399 * lily/include/output-def.hh (class Output_def): add parser_ member.
6401 * input/regression/page-layout-twopass.ly (Module): new file.
6403 * scm/lily.scm: remove cpp hack.
6405 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6407 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6409 * GNUmakefile.in (c-clean): New target.
6411 * flower/include/std-string.hh: String/std::string compatibility:
6412 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6415 * flower/rational.cc:
6416 * flower/include/rational.hh:
6419 * flower/include/offset.hh:
6421 * flower/interval.cc:
6422 * flower/include/interval.hh:
6424 * flower/string-convert.cc:
6425 * flower/include/string-convert.hh: Use std::string [interface].
6428 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6430 * Documentation/index.html.in: clean up.
6432 2006-01-25 Graham Percival <gpermus@gmail.com>
6434 * Documentation/user/putting.itely: another new untested doc section.
6436 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6438 * scm/layout-page-layout.scm (write-page-breaks): write
6439 \spacingTweaks #ALIST. Handle grace timing.
6441 * scm/: more imports.
6443 * scm/page.scm (make-page): add footer/header.
6444 (annotate-space-left): revise: only take page argument.
6445 (layout->page-init): new function.
6447 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6448 version of the system/spacing/linebreak hack writing to the output
6450 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6453 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6456 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6458 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6460 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6462 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6463 handling to page.scm
6465 * lily/prob-scheme.cc (LY_DEFINE): new file.
6466 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6468 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6471 * lily/music.cc (derived_mark): derive Music from Prob.
6473 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6475 * lily/prob.cc (Module): Implement Prob (Property Object), object
6476 with shared and r/w property alists.
6478 * lily/include/prob.hh (Module): new file. Declare Prob.
6480 * flower/string.cc: remove is_empty().
6482 * flower/include/string.hh (class String): remove String:: qualifier.
6484 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6485 substitute appropriate functions.
6487 * flower/include/string.hh (class String): remove to_str0 and
6488 is_empty(). S&R everywhere.
6490 2006-01-23 Graham Percival <gpermus@gmail.com>
6492 * Documentation/user/basic-notation.itely: add hairpin
6493 after-linebreak tweak to commonprop.
6495 * Documentation/user/putting.itely: added two new sections.
6497 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6499 * flower/international.cc:
6500 * flower/include/international.hh:
6502 * flower/getopt-long.cc:
6503 * flower/include/getopt-long.hh: Use std::string [interface].
6506 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6508 * stepmake/stepmake/executable-rules.make: Add dependency on
6511 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6513 * flower/file-path.cc:
6514 * flower/include/file-path.hh: Use std::string [interface].
6517 * flower/direction.cc:
6518 * flower/axis.cc: Unused. Remove.
6520 * configure.in (--enable-std-string): New option.
6522 * flower/std-string.cc:
6523 * flower/include/std-string.hh: New file.
6525 * flower/file-name.cc[STD_STRING]:
6526 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6528 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6530 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6532 * scm/define-markup-commands.scm (with-dimensions):
6533 with-dimensions markup command.
6535 * input/test/font-table.ly: use it.
6537 * lily/open-type-font.cc (glyph_list): new function.
6539 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6541 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6543 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6545 * ly/music-functions-init.ly (parallelMusic): new music function
6546 for parallel music entry.
6548 * scm/define-music-properties.scm (all-music-properties): new
6549 'void music property
6551 * scm/music-functions.scm (ly:music-message): make public, to be
6552 used in music function definitions
6554 * scm/lily-library.scm (collect-music-for-book): discard music
6555 when the 'void property is set.
6557 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6559 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6561 * mf/GNUmakefile: idem.
6563 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6565 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6567 * Documentation/user/notation-appendices.itely (The Feta font):
6570 * input/test/font-table.ly: new file. Generate font table within lily.
6572 * Documentation/user/notation-appendices.itely (The Feta font):
6573 use new font-table.ly file.
6575 * stepmake/stepmake/install-out-targets.make
6576 (local-install-outfiles): only create directory if
6577 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6579 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6581 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6583 * VERSION (PACKAGE_NAME): release 2.7.28
6585 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6586 the right font from a Mac dfont.
6587 (write-preamble): don't forget directory, only look at files.
6589 This fixes problems with TTF files in dfonts that don't match
6590 their PostScript names.
6592 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6593 PS name from TTF font.
6595 * input/regression/tie-manual.ly: document new feature.
6597 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6599 * VERSION (MY_PATCH_LEVEL): bump to .28
6601 * Documentation/user/basic-notation.itely (Ties): add tie examples
6604 * lily/tie-formatting-problem.cc (score_ties_configuration):
6605 symmetry penalties for outer ties.
6607 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6609 * lily/tie-formatting-problem.cc (generate_configuration)
6610 (set_manual_tie_configuration): skip non-pair manual
6611 tie-configuration, so you can set individual ties as
6613 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6615 * input/regression/tie-chord.ly: use generateTiePattern to
6618 * lily/tie-formatting-problem.cc (peak_around): new function.
6619 (score_configuration): use sliding criterion for staff line collisions.
6620 (score_configuration): idem for dot collisions.
6621 (generate_configuration): use separate stem_gap for gap to stem.
6623 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6624 separate penalty factors for x and y distance.
6625 (struct Tie_details): separate penalties for tip and center line collisions.
6627 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6629 * lily/tie-formatting-problem.cc (generate_configuration): make
6630 large ties avoid stafflines in the horizontal section.
6631 (score_configuration): use softcoded penalties
6632 (score_aptitude): idem.
6634 * lily/tie-helper.cc (from_grob): softcode tie details
6636 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6638 * lily/staff-symbol-referencer.cc (on_line): rename from
6641 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6643 * ly/music-functions-init.ly: remove duplicate tag.
6645 * lily/include/*.hh: GCC 4.1 fixes.
6647 006-01-16 Erlend Aasland <erlenda@gmail.com>
6649 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6651 * scm/define-music-types.scm: fix bug in desc. string
6652 for OverrideProperty
6654 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6656 * scripts/lilypond-book.py: bugfix
6658 * scm/define-music-types.scm: fix typos.
6660 2006-01-14 Graham Percival <gpermus@gmail.com>
6662 * Documentation/user/ basic-notation.itely, global.itely,
6663 advanced-notation.itely, instrument-notation.itely: small
6664 additions (bugs and commonly tweaked properties).
6666 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6668 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6669 detection of mingw build.
6670 (MINGW_BUILD): opps.
6672 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6674 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6677 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6679 * scm/music-functions.scm (skip->rest): add skip->rest
6681 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6683 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6686 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6687 config dirs. Aids debugging.
6688 (display_config): also display config files.
6690 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6692 * VERSION: release 2.7.27
6694 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6695 for determining bar size.
6697 * lily/staff-symbol.cc (print): place lines at distance line-positions
6699 * scm/define-grob-properties.scm (all-user-grob-properties): add
6702 * lily/staff-symbol.cc (height): new function.
6704 * input/regression/staff-line-positions.ly: new file.
6706 2006-01-06 Graham Percival <gpermus@gmail.com>
6708 * input/test/add-staccato.ly: remove reference to old file.
6710 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6712 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6713 lilypond binary too.
6715 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6717 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6719 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6721 * scripts/midi2ly.py: Bugfix: Declare datadir.
6723 * make/ly-rules.make:
6724 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6725 that seems to be gone). Fixes make web.
6727 * The grand 2005-2006 replace.
6729 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6731 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6733 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6734 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6735 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6736 like -dgs-font-load.
6738 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6739 remove absolute path to lilypond binary.
6741 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6743 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6745 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6747 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6749 * mf/GNUmakefile: remove broken dvips map symlink.
6751 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6754 * configure.in: Cosmetic fixes.
6756 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6758 * Documentation/user/music-glossary.tely (Pitch names): Added
6759 Spanish pitch names and durations, thanks to Ernesto Gancedo
6761 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6763 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6764 init. Fixes verbose printing of .scm files.
6766 * stepmake/aclocal.m4: add spaces before - options.
6768 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6770 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6771 of path search in local block variable.
6773 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6775 * configure.in (NCSB_DIR): --enable-ncsb-dir
6776 (LINK_GXX_STATICALLY): denko.
6778 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6780 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6781 use locate to find c059033l.pfb.
6783 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6785 * lily/tie-formatting-problem.cc
6786 (problem::generate_base_chord_configuration): Use my_round (was
6789 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6790 do not invoke mbrtowc.
6792 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6794 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6796 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6798 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6800 * Documentation/user/invoking.itely (svg): revise.
6802 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6804 * lily/lexer.ll: use sourcefilename iso. renameinput.
6806 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6808 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6809 <PostScriptName>.ttf instead of c059XXXttf.
6811 * lily/program-option.cc (LY_DEFINE): special support for
6812 --verbose, so it works before option init too.
6814 * mf/GNUmakefile (local-install): oops.
6816 * lily/lyric-hyphen.cc (print): oops.
6818 * buildscripts/pfx2ttf.fontforge: new file.
6820 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6821 ($(outdir)/%.ttf): new rule.
6823 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6826 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6829 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6831 * VERSION: release 2.7.26
6833 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6835 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6837 * lily/font-config.cc (init_fontconfig): verbosity.
6839 * THANKS: add Muziekacademie Lede.
6841 * scripts/musicxml2ly.py (print_voice_definitions): new function
6842 (print_score_setup): new function
6843 (convert): read part definition to output staves properly.
6845 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6848 * python/musicexp.py (Output_printer.__init__): use _ in data
6850 (Output_printer.unformatted_output): new function: no formatting,
6852 (Duration.get_length): remove isinstance() checks for
6853 Output_printer everywhere.
6855 * input/regression/lyrics-bar.ly (texidoc): add
6856 Separating_line_group_engraver.
6858 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6860 * lily/relocate.cc (framework_relocation): New function,
6861 factored from set_relocation ().
6862 (prefix_relocation): Rename from set_relocation ().
6863 (setup_paths): Use it.
6865 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6867 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6868 numbers. Patch by Erlend Aasland.
6870 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6872 * lily/font-config.cc (init_fontconfig): print warning if cache
6873 file is not existant.
6875 * lily/main.cc: don't use #ifdef but #if
6877 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6879 * lily/grob-property.cc (internal_set_property): don't abort on
6880 calculation-in-progress.
6882 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6884 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6885 connect-to-neighbor property not connect-to-other
6887 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6888 (LY_DEFINE): oops. don't forget protection.
6890 * flower/parse-afm.cc (Module): strip AFM handling completely.
6892 * lily/stencil-expression.cc: idem.
6894 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6896 * lily/function-documentation.cc (ly_add_function_documentation):
6897 use static member iso. Protected_scm
6899 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6901 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6903 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6905 * lily/relocate.cc (set_env_dir): New function.
6906 (set_relocation): Use it to fix setting PANGO_PREFIX.
6908 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6910 * input/regression/stem-direction-context.ly: remove rest.
6912 * lily/melody-engraver.cc (process_music): restart for bar lines.
6913 (acknowledge_slur): restart for slurs.
6915 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6917 * Documentation/user/invoking.itely: describe how to view SVG
6918 output using Inkscape which replace embedded fonts with OTF fonts.
6920 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6922 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6924 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6926 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6929 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6931 * VERSION (PACKAGE_NAME): release 2.7.25
6933 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6935 * input/regression/stem-direction-context.ly: new file.
6937 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6939 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6942 * ly/engraver-init.ly: add Melody_engraver
6944 * lily/beam.cc (calc_direction): use default-direction
6945 iso. get_default_direction()
6947 * scm/define-grob-properties.scm (all-user-grob-properties): add
6948 default-direction property.
6950 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6952 * lily/stem.cc (calc_default_direction): remove
6953 Stem::get_default_direction, use default-direction with callback
6956 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6958 * lily/melody-engraver.cc: new file. Acknowledge stems for
6959 interpolated stem directions.
6961 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6963 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6965 * lily/slur-configuration.cc (fit_factor): more robust check for
6966 point in curve X-extent.
6968 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6969 (outside_slur_callback): check for 'outside avoidance.
6971 * lily/slur-configuration.cc (score_extra_encompass): don't use
6972 bound->column() == avoid->column() for checking extents, as this
6973 doesn't work for accidentals.
6975 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6976 DynamicText hardcoding.
6978 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6979 crash if bound stem is NULL
6981 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6984 2005-12-22 Graham Percival <gpermus@gmail.com>
6986 * scm/define-markup-commands.scm: typo. @code{\raise}
6989 * darwin.patch: now used again, includes a
6990 required patch from fink.
6992 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6994 * po/TODO: mention gtranslator along with kbabel.
6995 * po/fi.po: update translations.
6997 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6999 * lily/relocate.cc (setup_paths): Bugfix.
7001 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7003 * lily/slur-configuration.cc (score_extra_encompass): don't use
7004 "avoid" choice for avoid-slur.
7006 * stepmake/bin/install.py (dest): don't create existing dir.
7008 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7010 * stepmake/bin/install.py: Remove file before copying.
7013 * stepmake/aclocal.m4: Do not substitute INSTALL.
7015 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7017 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7018 depend on link-tree.
7020 * lily/relocate.cc (setup_paths): only check path for non-absolute
7021 dir without directory part.
7023 * flower/file-name.cc (is_absolute): new method.
7024 (is_absolute): check root_ too.
7026 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7028 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7029 relocation code. Oops, don't comment out too much.
7031 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7034 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7037 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7039 * .cvsignore: Add install-sh.
7041 * autogen.sh (srcdir): Typo.
7043 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7045 * autogen.sh (srcdir): urg. Touch install-sh.
7047 * stepmake/bin/install-sh (Module): remove.
7049 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7051 * lily/include/relocate.hh: new file.
7053 * lily/relocate.cc: new file. Contain relocation logic.
7055 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7056 (main): read LILYPOND_VERBOSE as the first thing.
7058 * stepmake/aclocal.m4: remove INSTALL variable.
7060 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7061 separate target for making font symlinks.
7062 (documentation-dir): use $(if $(findstring )) for switching off
7065 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7066 something if DOCUMENTATION is no.
7068 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7070 * VERSION: release 2.7.24
7072 * lily/script-column-engraver.cc (stop_translation_timestep):
7073 delay adding to script-column.
7075 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7077 * python/convertrules.py (conv): rule for number-visibility
7079 * lily/slur-configuration.cc (score_extra_encompass): different
7080 distance measure for avoid and inside avoidance.
7081 (score_extra_encompass): use 1/(distance+eps) as penalty.
7083 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7084 encompass objects for generating slur curves.
7086 * lily/slur.cc: use details iso. slur-details property.
7088 * input/regression/slur-tuplet.ly: new file.
7090 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7092 * flower/include/offset.hh (class Offset): new operator /=
7094 * lily/tuplet-number.cc (print): new file, new interface.
7096 * scm/define-grob-properties.scm (all-user-grob-properties):
7097 remove number-visibility property.
7099 * lily/tuplet-bracket.cc (calc_control_points): new function
7100 (calc_connect_to_neighbors): new function.
7101 (print): remove text handling for tuplet numberdef.
7103 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7106 * lily/lily-guile.cc (robust_scm2booldrul): new function
7108 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7110 * lily/tuplet-bracket.cc (calc_position_and_height): use
7111 staff-padding to control whether tuplet brackets are over staves.
7113 * lily/grob.cc (suicide): clear dim_caches_.
7115 * lily/dimension-cache.cc (clear): new function.
7117 * lily/grob.cc (extent): swap order of min-extent and extent
7118 calculations. This fixes hara kiri staves.
7120 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7122 * lily/main.cc: Nitpick: relocation is not based on path, but on
7123 directory (location).
7125 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7127 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7129 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7131 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7133 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7135 * stepmake/stepmake/generic-vars.make (Module): idem.
7137 * stepmake/stepmake/executable-targets.make (default): use it.
7139 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7141 * make/GNUmakefile: don't install make rules.
7143 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7145 (prepend_env_path): more verbosity.
7147 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7149 * GNUmakefile.in: add dir argument for find command.
7151 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7152 fixes weird line numbers for point & click.
7154 * lily/source-file.cc (get_counts): init line/column/char counts.
7156 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7158 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7160 2005-12-16 Graham Percival <gpermus@gmail.com>
7162 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7163 minor fixes from Fredric. Thanks!
7165 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7167 * ly/music-functions-init.ly: add \bar and \clef music function
7169 * lily/lily-lexer.cc: idem.
7171 * lily/parser.yy (FIXME): remove BAR and CLEF.
7173 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7175 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7177 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7178 function arguments too
7180 * lily/main.cc (set_relocation): new function.
7182 * scripts/musicxml2ly.py (convert): add \version
7184 * lily/tie.cc: remove get_default_attachments()
7186 * VERSION (PACKAGE_NAME): release 2.7.23
7188 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7189 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7191 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7193 * lily/tie-formatting-problem.cc (score_ties): new function
7194 (get_variations): new function. Try flipping dirs for collisions.
7195 (generate_optimal_chord_configuration): new function. 1-opt search
7196 for better configuration.
7198 * lily/tie-configuration.cc: new file.
7200 * lily/tie.cc: junk Tie::get_configuration()
7202 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7203 (score_ties_configuration): new function.
7204 (generate_ties_configuration): new function.
7205 (generate_base_chord_configuration): new function.
7206 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7207 (set_manual_tie_configuration): Move body from tie-column-format.cc
7209 * input/regression/tie-dot.ly: new file.
7211 * lily/tie-formatting-problem.cc (score_configuration): score
7214 * lily/tie-helper.cc (get_transformed_bezier): new function
7216 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7218 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7219 -undefined suppress iso. -framework Python
7221 * scm/define-grobs.scm (all-grob-descriptions): set
7222 springs-and-rods (thanks Joe Neeman!)
7224 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7226 * input/no-notation/display-lily-tests.ly (test):
7227 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7228 changed from \tag #'(a b) to \tag #'a \tag #'b
7230 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7232 * Documentation/topdocs/NEWS.tely: strip out-www.
7234 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7236 * config.make.in (AR): add AR and RANLIB
7238 * flower/libc-extension.cc: include cassert
7240 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7243 2005-12-11 Graham Percival <gpermus@gmail.com>
7245 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7247 * stepmake/stepmake/python-modules-vars.make: define
7248 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7250 * THANKS: added Johannes Schindelin.
7252 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7254 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7256 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7257 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7259 * lily/parser.yy: reorganize file layout.
7261 * ly/music-functions-init.ly: add tweak music function.
7263 * lily/grob-info.cc (ultimate_music_cause): new function:
7264 recursively lookup causes.
7266 * lily/parser.yy (chord_body_element): allow music functions for
7267 post-events, allow music functions for chord elements.
7269 * lily/font-config-scheme.cc (display_fontset): add cast.
7271 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7272 #'(a b) -> \tag #'a \tag #'b rule.
7274 * python/musicexp.py (Output_printer.dump_version): new function
7276 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7278 * lily/parser.yy (FIXME): remove \tag
7279 (FIXME): remove tag_music() function.
7281 * lily/lily-lexer.cc: remove \tag
7283 * ly/music-functions-init.ly: define music-function "tag"
7285 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7287 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7289 * VERSION (PATCH_LEVEL): release 2.7.22
7291 * input/regression/lyric-hyphen-retain.ly: renew.
7293 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7296 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7297 iso. minimum-length property for rods.
7299 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7300 LyricSpace item to keep lyrics spaced apart.
7302 * ly/engraver-init.ly: remove Separating_line_group_engraver
7304 * Documentation/user/music-glossary.tely: do setfilename before
7307 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7309 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7310 See xref documentation, for example.
7312 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7314 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7315 pending_skip iso. ly_voice[-1]
7316 (main): add if __main__ for debugging.
7318 * python/musicxml.py (Accidental.__init__): new class.
7320 * scripts/musicxml2ly.py (progress): new function
7321 (musicxml_key_to_lily): don't barf on modeless keys.
7322 (create_skip_music): new function.
7323 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7324 (musicxml_note_to_lily_main_event): new function.
7326 * python/musicexp.py (Music.__init__): add comment field.
7327 (NestedMusic.append): new routine.
7328 (SequentialMusic.print_ly): print comment.
7329 (ArpeggioEvent.ly_expression): new class
7330 (BeamEvent.ly_expression): new class
7331 (NoteEvent.__init__): support for cautionary/forced accs.
7333 * lily/lookup.cc (slur): normal order for array loop.
7335 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7338 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7341 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7343 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7345 * scripts/lilypond-book.py: Introduce option
7346 --preserve-line-breaks, for usage with srcltx
7348 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7350 * scm/output-lib.scm (print-circled-text-callback): draw circle
7351 around text using make-circle-markup.
7353 * Documentation/user/*: strip out-www from file names.
7355 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7357 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7358 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7360 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7362 * Documentation/user/GNUmakefile: idem.
7364 * Documentation/user/macros.itexi: strip out-www
7366 * python/rational.py: python 2.3 compat.
7368 * VERSION (PATCH_LEVEL): release 2.7.21
7370 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7371 option formatting, lilypond style.
7373 * python/musicexp.py: grab from Ikebana: a library for composing
7374 ly music expressions.
7375 (Output_printer): class for advanced .ly printing.
7378 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7379 convert to pythonesque structure.
7381 * python/rational.py: PD rational number class.
7383 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7385 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7387 * lily/part-combine-iterator.cc: Minor bugfix
7389 * THANKS: Update bughunters
7391 2005-12-02 Werner Lemberg <wl@gnu.org>
7393 * mf/README: Document process for proper mf2pt1 conversion.
7395 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7398 * mf/feta-harmonica.mf: Removed. Unused.
7400 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7402 * scripts/lilypond-book.py (do_file): fix thinkos.
7404 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7406 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7407 ($(outdir)/parser.cc):
7408 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7410 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7412 * ly/titling-init.ly (tagline): it should be a space between
7413 "Music engraving by LilyPond" and the version number.
7415 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7417 * VERSION (PACKAGE_NAME): release 2.7.20
7419 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7421 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7423 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7425 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7427 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7429 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7431 * kpath-guile/: remove directory
7433 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7434 file. Encapsulate kpathsea using commandline tools.
7436 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7439 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7441 * Documentation/user/advanced-notation.itely (Setting automatic
7442 beam behavior): Correct a few typos. Thanks to David Bobroff.
7444 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7445 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7447 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7449 * scripts/*.py: gmane address for bugs.
7451 2005-11-28 Pal Benko <benkop@freestart.hu>
7453 * make/ly-rules.make: add -f switch to mv
7455 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7457 * lily/bar-line.cc: interpret it
7459 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7461 * configure.in (--disable-documentation): New switch.
7463 * GNUmakefile.in: Use it.
7465 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7467 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7469 * scripts/lilypond-book.py (do_file): search chunks for
7472 * GNUmakefile.in: add copy step in between so we can lose the
7473 out-www directories.
7475 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7477 * lily/pango-font.cc (pango_item_string_stencil): put
7478 geometry.width into glyph-string too.
7480 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7482 * scm/define-music-display-methods.scm (RevertProperty):
7483 (OverrideProperty): Use grob-property-path property, a list of
7484 symbols, instead of grob-property, which used to be a single
7486 (BassFigureEvent): a figure can be a plain number, not necessarily a
7489 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7491 * VERSION: release 2.7.19
7493 * lily/figured-bass-engraver.cc (process_music): check
7494 figuredBassCenterContinuations first.
7496 * scm/translation-functions.scm (format-bass-figure): make double
7499 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7502 * lily/system-start-delimiter-engraver.cc: move from
7503 Nested_system_start_delimiter_engraver, rename
7504 Nested_system_start_delimiter_engraver ->
7505 System_start_delimiter_engraver.
7507 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7508 bracket type from hierarchy.
7510 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7512 * lily/rest.cc (y_offset_callback): read staff-position.
7514 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7515 mark after-line-breaking-callback as internal.
7517 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7519 2005-11-25 Werner Lemberg <wl@gnu.org>
7521 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7523 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7525 * stepmake/bin/add-html-footer.py (do_file): add google
7527 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7528 staff if first_start_ is true.
7530 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7532 * scripts/midi2ly.py (split_track): add __repr__ members.
7533 (track_first_item): only return Item if not None. This fixes a
7534 problem when dumping a track that starts with an empty channel.
7536 * python/midi.c: doc module.
7538 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7540 * Documentation/user/global.itely (Creating MIDI files): Fix
7541 compilation problem.
7543 2005-11-22 Graham Percival <gpermus@gmail.com>
7545 * Documentation/user/basic-notation.itely: clarify dynamic
7548 * Documentation/user/advanced-notation.itely: add unicode
7549 escape control example, whatever that is. :)
7551 * Documentation/user/global.itely: added "removing dynamics
7554 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7556 * VERSION (PATCH_LEVEL): release 2.7.18
7558 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7559 System_start_delimiter_engraver by
7560 Nested_system_start_delimiter_engraver.
7562 * lily/nested-system-start-delimiter-engraver.cc (struct
7563 Bracket_nesting_node): new class.
7564 (struct Bracket_nesting_group): new class
7565 (struct Bracket_nesting_staff): new class.
7566 (process_music): create hierarchy of grobs. This allows separate
7567 tuning of different SSDs.
7569 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7570 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7572 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7574 * lily/side-position-interface.cc (aligned_side): multiply
7577 * lily/script-engraver.cc (make_script_from_event): allow setting
7580 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7584 * scm/define-grobs.scm (all-grob-descriptions): new grob
7585 NestedSystemStartDelimiter.
7587 * input/regression/system-start-heavy-bar.ly: new file.
7589 * lily/nested-system-start-delimiter-engraver.cc: new file.
7591 * lily/nested-system-start-delimiter.cc: new file.
7593 * input/regression/system-start-nesting.ly: new file.
7595 * scm/define-grobs.scm (all-grob-descriptions): use X side
7596 positioning for positioning braces for nested contexts.
7598 * lily/system-start-delimiter.cc (print): don't divide extent by
7600 (print): use style iso. glyph.
7601 (staff_bracket): translate glyph inside routine already.
7603 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7605 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7608 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7610 * scm/define-context-properties.scm
7611 (all-user-translation-properties): rename figuredBassFormatter
7612 from newFiguredBassFormatter.
7614 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7616 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7618 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7620 * lily/beam.cc (calc_beaming): new function.
7621 (calc_shorten): new function.
7623 * THANKS: add Edward Neeman.
7625 * input/regression/accidental-clef-change.ly: new file.
7627 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7629 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7631 * lily/clef-engraver.cc (inspect_clef_properties): reset
7632 localKeySignature for clef changes.
7634 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7636 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7637 add dummy definition that works in Linux and add information in
7638 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7640 * Documentation/user/changing-defaults.itely (Modifying context
7641 plug-ins): Add index for \with.
7643 * Documentation/user/music-glossary.tely (dal segno): Updated
7644 example to version >=2.6.
7646 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7648 * Documentation/user/instrument-notation.itely (Printing chord
7649 names): Reorder \chordmode and \repeat in one example.
7651 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7653 * VERSION: release 2.7.17
7655 * Documentation/topdocs/NEWS.tely (Top): add note about
7658 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7659 new function. Search region of 3 positions for best tie.
7660 (score_configuration): new function.
7661 (score_aptitude): new function.
7662 (generate_configuration): new function.
7663 (get_configuration): new function.
7664 (Tie_formatting_problem): new function
7666 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7668 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7670 * THANKS: add Eduardo Vieira & Ralph Little
7672 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7675 * lily/include/tie-formatting-problem.hh (class
7676 Tie_formatting_problem): add Tie_details to
7677 Tie_formatting_problem. Update calling conventions.
7679 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7682 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7684 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7686 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7687 scm/define-context-properties.scm: Maintenance bugfix: make
7688 ligature brackets work again by removing obsolete ligature
7689 primitive callback push/pop.
7691 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7692 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7695 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7697 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7698 used and do not call it a path.
7699 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7701 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7703 * lily/include/tie-formatting-problem.hh (class
7704 Tie_formatting_problem): new file.
7706 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7708 * Documentation/misc/ChangeLog-2.3: new file.
7710 * lily/audio-staff.cc (output): degarianize.
7712 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7714 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7715 Unset PYTHONOPTIMIZE. Fixes install if set.
7717 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7719 * python/convertrules.py (conv): add warning about drums.
7721 * make/stepmake.make: include toplevel-version.make after config.make.
7723 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7724 also allow python2.4
7726 * config.make.in (configure-srcdir): remove GXX GCC vars.
7728 * stepmake/aclocal.m4: don't do non-srcdir build with
7729 symlinks. Use inclusion, so the src directory name can be changed.
7731 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7733 * make/mutopia-vars.make:
7734 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7737 2005-11-13 Werner Lemberg <wl@gnu.org>
7739 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7740 but the affected path. This ensures that the (overlapping) outlines
7741 have the same direction, which is a necessary prerequisite for
7742 FontForge's algorithm to remove overlaps.
7745 * mf/feta-haak.mf: Formatting.
7746 (draw_bracket): Slightly modify outline to avoid an unnecessary
7748 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7749 them from the affected paths.
7751 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7753 * mf/README: remove xpm / accordion notes.
7755 * lily/tie-column-format.cc (set_chord_outline): add dots into
7756 skyline extents. This fixes tie formatting if the left head has dots.
7758 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7759 space inside the staff.
7760 (get_configuration): shift another position if necessary in case
7763 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7765 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7766 buildscript-dir iso. $(depth)/buildscripts.
7768 * tex/GNUmakefile (local-uninstall): remove
7769 music-drawing-routines.ps juggling.
7771 * stepmake/stepmake/install-targets.make (local-install-files):
7772 prepend src-dir to install targets.
7774 * lily/system-start-delimiter-engraver.cc
7775 (acknowledge_system_start_delimiter): use
7776 add_offset_callback(). This fixes translation of nested
7779 * lily/grob-closure.cc (add_offset_callback): only encaps in
7780 simple_closure if it's a procedure.
7782 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7785 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7786 remove-empty where pertinent.
7788 2005-11-12 Graham Percival <gpermus@gmail.com>
7790 * Documentation/user/instrument-notation.itely: added
7791 Cameron Horsburgh's multiple stanzas docs. Thanks!
7793 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7796 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7797 make picture in builddir, not srcdir.
7799 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7801 * VERSION: release 2.7.16
7803 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7806 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7808 * Documentation/user/examples.itely (Piano templates): Minor
7809 modification to the Piano centered lyrics example.
7811 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7813 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7816 * Documentation/user/point-and-click.itely: simplify p&c
7817 instruction: don't configure firefox. Put lilypond-invoke-editor
7818 in front of the browser.
7820 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7821 (run-browser): new function.
7823 * lily/parser.yy (Lily_lexer): recognize Book
7825 * lily/book.cc (clone): new function
7827 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7829 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7831 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7832 Maintenance bugfix: reduce number of font related warnings by
7833 updating naming conventions for glyph-name.
7835 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7837 * scm/define-grobs.scm (all-grob-descriptions): add
7838 rhythmic-grob-interface to TabNoteHead.
7840 * scm/layout-beam.scm (check-quant-callbacks): remove
7843 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7845 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7846 alignment of centered divisiones.
7848 * scm/scripts.scm (articulations): Maintenance bugfix:
7849 follow-into-staff -> quantize-position.
7851 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7852 plica head in porrectus deminutus.
7854 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7856 * make/lilypond.fedora.spec.in (Group): add %clean section.
7858 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7859 less then 1/5th of total length.
7860 (print): use gap too. Fixes tupletUp-single-bracket.ly
7862 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7863 events into EventChord. This fixes textspanners on mm rests. Fixes
7866 * lily/side-position-interface.cc (get_axis): read side-axis
7867 (set_axis): set side-axis.
7869 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7870 properties everywhere.
7872 * lily/spacing-spanner.cc (breakable_column_spacing): add
7873 average-spacing-wishes. Take maximum if not set.
7874 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7876 * scm/define-grobs.scm (all-grob-descriptions): add
7877 average-spacing-wishes.
7879 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7880 offset callbacks. This fixes alignment for Fingering objects.
7882 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7883 space for key - timesig combination.
7885 * input/regression/script-stem-tremolo.ly (Module): new file.
7887 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7890 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7891 Fixes: c-tremolo-script.ly.
7893 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7895 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7897 * scm/define-grobs.scm (all-grob-descriptions): remove
7898 self-X-offset. Fixes alignment of octavate-8.
7900 * scripts/lilypond-book.py (datadir): look in
7901 LILYPONDPREFIX/share/lilypond/current/
7903 * GNUmakefile.in: symlink current to <VERSION>.
7905 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7907 * lily/main.cc: eps listed as a backend.
7909 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7911 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7913 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7915 * lily/include/score.hh (class Score): remove texts_ member.
7917 * lily/beam.cc (set_stem_lengths): force direction callback.
7918 (print): read quantized-positions, so we can force
7919 Beam::set_stem_lengths to occur.
7920 (rest_collision_callback): use common X parent.
7922 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7924 * flower/file-path.cc (find): Bugfix: Return name of file found.
7926 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7927 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7928 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7930 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7932 * flower/offset.cc: idem.
7934 * mf/*.mf: update email address.
7936 * lily/font-config-scheme.cc: new file.
7938 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7940 * lily/*: cs.uu.nl -> xs4all.nl
7942 * VERSION (PATCH_LEVEL): release 2.7.15
7944 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7947 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7949 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7951 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7953 * lily/staff-performer.cc (process_music): add audio
7954 elements. This makes MIDI instrument changes work once again.
7956 * lily/main.cc (LY_DEFINE): add gmane address.
7958 * lily/beam.cc: remove calc_positions()
7960 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7961 original_ in private scope.
7962 (class Grob): drop pscore_ pointer, change to output_def pointer.
7963 (class Grob): cleanup class definition.
7965 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7967 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7969 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7970 absolute. Better diagnostics.
7972 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7973 This makes lilypond run from the build directory using argv0
7974 relocation (without any --prefix or LILYPONDPREFIX setting).
7976 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7978 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7980 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7981 with simple-closure.
7983 * lily/self-aligment-interface.cc (set_align_self): new function
7984 (set_center_parent): new function.
7986 * lily/side-position-interface.cc (set_axis): new function.
7988 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7991 * scm/define-grob-properties.scm (all-user-grob-properties):
7992 remove [XY]-offset-callbacks add [YX]-offset
7994 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7996 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7997 entry for time signatures after breathing signs. Bug report by
8000 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8002 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8003 not absolute, make it absolute using PATH.
8005 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8007 * python/midi.c (initmidi): Fix type for mingw.
8009 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8011 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8013 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8016 * stepmake/aclocal.m4: Support python cross compiling.
8018 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8021 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8023 * scm/output-lib.scm (chain-grob-member-functions): replace
8026 * lily/chained-callback.cc (Module): remove file.
8028 * lily/rest-collision.cc (force_shift_callback_rest): change to
8031 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8033 * lily/grob.cc (y_parent_positioning): remove axis argument from
8034 parent_positioning callbacks.
8035 (Grob): junk init code
8036 (get_offset): use generic property callbacks for
8037 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8038 (axis_parent_positioning): new function
8039 (axis_offset_symbol): new function
8040 (chain_offset_callback): new function
8041 (add_offset_callback): new function
8043 * lily/beam.cc (rest_collision_callback): change signature; this
8044 is now a chained callback.
8046 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8047 callback administration.
8049 * lily/simple-closure.cc: new file. Smob type that allows "grob
8052 (ly:make-simple-closure FUNC A B)
8054 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8057 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8060 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8062 * lily/rest.cc (polyphonic_offset_callback): remove.
8064 * lily/script-engraver.cc (try_music): remove bool* argument.
8066 * scm/script.scm (default-script-alist): set quantize-position
8069 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8071 * lily/side-position-interface.cc (aligned_side): move staff
8072 position quantization from
8073 Side_position_interface::quantised_position().
8074 (quantised_position): remove
8076 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8078 * input/regression/beam-quant-standard.ly: reindent, set
8079 debug-beam-quanting to #t.
8081 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8082 10000 if this is a "hard" concave beam.
8084 * lily/beam.cc (calc_least_squares_positions): change from
8085 calc_least_squares_dy
8086 (set_stem_lengths): this is now a chained callback.
8088 * lily/context-property.cc (execute_general_pushpop_property):
8089 bugfix override with procedure should have effect.
8091 * scm/define-grob-properties.scm (all-internal-grob-properties):
8092 remove position-callbacks.
8094 * scm/define-grobs.scm (all-grob-descriptions): use
8095 ly:make-callback-chain for positions property.
8097 * scm/layout-beam.scm (check-quant-callbacks): return list of
8100 * scm/lily.scm (type-p-name-alist): add callback-chain
8102 * lily/lily-guile.cc (type_check_assignment): type check failure
8103 is warning not message.
8105 * lily/grob-property.cc (try_callback): walk callback chain if
8108 * lily/chained-callback.cc: new file. new smob type.
8110 * lily/lily-guile.cc (procedure_arity): new function.
8112 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8114 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8116 2005-10-25 John Mandereau <john.mandereau@free.fr>
8118 * Documentation/user/instrument-notation.itely (Figured bass):
8119 describe new features
8121 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8123 * lily/beam.cc (calc_least_squares_dy): use property callback.
8125 * lily/beam-concave.cc (calc_concaveness): use property callback.
8127 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8129 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8133 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8135 * scm/layout-page-layout.scm (page-headfoot): annotate
8138 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8140 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8141 doesn't take y-space.
8143 * scm/paper.scm (paper-alist): fix A7 dimensions.
8145 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8147 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8148 src-wildcard, remove $(wildcard).
8150 * po/GNUmakefile (PO_FILES):
8151 * ps/GNUmakefile (PS_FILES):
8152 * tex/GNUmakefile (TEX_FILES):
8153 * cygwin/GNUmakefile (POSTINSTALLS):
8154 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8155 some wildcard calls.
8157 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8159 * THANKS: add Thomas Bushnell.
8161 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8163 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8164 (lilypond-main): Redirect to gui-main if 'gui is set.
8166 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8167 for alternative installations kludging s/share/lib/g
8170 * SConstruct (libdir_package_version): Define.
8172 * python/SConscript:
8173 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8176 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8178 * lily/main.cc: clarify --safe.
8180 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8182 * VERSION: release 2.7.14
8184 * Documentation/user/*.itely: remove minimumVerticalExtent.
8186 * scm/define-grobs.scm (all-grob-descriptions): remove
8187 RemoveEmptyVerticalGroup
8189 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8191 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8194 * python/convertrules.py (conv): add rules.
8196 * lily/grob.cc: remove is_empty()
8198 * lily/grob-property.cc: remove add_to_list_property().
8200 * scripts/convert-ly.py (datadir): add prefix switching hack to
8203 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8204 space-function tweak.
8206 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8208 * scm/define-grob-properties.scm (all-user-grob-properties):
8209 remove callback property.
8211 * lily/include/grob.hh (class Grob): remove property_callbacks_
8212 member. Properties of procedure type are assumed to be callbacks.
8214 * lily/ligature-engraver.cc (override_stencil_callback):
8215 rewrite. Use noteHeadLigaturePrimitive as source.
8217 * scm/define-grob-properties.scm (all-internal-grob-properties):
8218 remove ligature-primitive-callback
8220 * lily/include/dimension-cache.hh (class Dimension_cache): make
8221 class, with Grob as friend.
8223 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8224 has_extent_callback()
8226 * scm/translation-functions.scm (format-new-bass-figure): read
8227 figuredBassPlusDirection
8229 * scm/define-context-properties.scm
8230 (all-user-translation-properties): add figuredBassPlusDirection.
8232 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8234 * lily/align-interface.cc (set_ordered): new function.
8236 * lily/grob.cc (flush_extent_cache): rewrite.
8238 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8239 Interval pointer directly.
8241 * lily/main.cc (setup_paths): insert extra / .
8242 (setup_paths): junk cff entry.
8244 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8247 * lily/axis-group-engraver.cc (finalize): remove
8248 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8250 * lily/grob.cc (Grob): don't set extent from ctor.
8251 (extent): use property callbacks.
8253 * lily/axis-group-interface.cc: remove set_axes() function.
8255 * lily/grob-property.cc (del_property): new function.
8257 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8259 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8261 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8263 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8265 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8267 * mf/SConscript: Updates.
8269 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8271 * stepmake/stepmake/*:
8275 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8276 from any directory in build-dir. Cleanups.
8278 * make/srcdir.make.in: Remove.
8280 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8282 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8285 * lily/SConscript: Remove ttftools.
8287 * SConstruct: Resurrect.
8289 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8291 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8294 * lily/paper-book.cc (add_score_title): put Paper_score title into
8297 * scm/translation-functions.scm (format-new-bass-figure): also
8298 allow plus in combination with _
8300 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8302 * VERSION: 2.7.13 released.
8304 * lily/note-collision.cc (check_meshing_chords): don't wipe
8305 stencil, merely set transparent.
8307 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8308 (Top): document #'callbacks.
8309 (Top): document nested \override.
8311 * input/regression/figured-bass.ly: update for slash and pluses.
8313 * input/regression/figured-bass-continuation-forbid.ly (Module):
8316 * scm/translation-functions.scm (format-new-bass-figure): use
8317 slashed-digit if diminished is set.
8318 (format-new-bass-figure): add + if 'augmented is set.
8320 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8322 * input/test/piano-staff-distance.ly: remove file.
8324 * Documentation/user/advanced-notation.itely (Formatting cue
8325 notes): use length-fraction for making stems/beams smaller.
8327 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8330 * lily/new-figured-bass-engraver.cc: new property
8331 centerFiguredBassContinuations
8333 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8336 * lily/context-property.cc (execute_general_pushpop_property):
8339 * input/regression/override-nest.ly: new file.
8341 * python/convertrules.py (FatalConversionError.subber): conversion
8342 rule for #'callbacks
8344 * input/regression/override-nest.ly: new function.
8346 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8349 * lily/context-property.cc (lookup_nested_property): new function.
8350 (evict_from_alist): new function.
8351 (general_pushpop_property): new function.
8352 (execute_general_pushpop_property): rewrite. Support nested
8355 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8357 * lily/beam.cc: use length-fraction too.
8359 * scm/define-grob-properties.scm (all-user-grob-properties):
8360 remove property flag-width-function
8361 (all-user-grob-properties): remove space-function.
8363 * scm/layout-beam.scm: remove flag-width-function.
8365 * lily/beam.cc: remove flag-width-function
8367 * scm/layout-beam.scm: remove beam dir functions.
8369 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8371 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8372 for easier grace tweaks.
8374 * lily/beam.cc: remove dir-function.
8376 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8378 * lily/grob.cc: remove spacing-procedure.
8380 * lily/note-head.cc (calc_stem_attachment): new function.
8381 (internal_print): use callback to get glyph-name.
8383 * lily/grob-property.cc (get_interfaces): new function.
8385 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8387 * lily/stem.cc (calc_stem_end_position): new function.
8388 (calc_length): new function.
8389 document details for stem.
8390 remove Stem::get_direction()
8392 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8394 * lily/grob-property.cc (set_callback): new function.
8396 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8398 * lily/item-scheme.cc: new file.
8400 * lily/bar-line.cc (before_line_breaking): remove function.
8401 remove bar-size-procedure, break-glyph-function
8403 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8405 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8407 * lily/system-start-delimiter.cc (print): suicide from
8408 here. Remove after_line_breaking_callback.
8410 * lily/script-interface.cc (calc_direction): use callback for direction.
8412 * lily/side-position-interface.cc (aligned_side): don't use
8413 Side_position_interface::get_direction directly. Use callback.
8415 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8417 (get_print_stencil): rename from get_stencil: create stencil with
8418 transparency, color and cause.
8420 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8422 * python/convertrules.py (conv): insert temporary warning rule.
8424 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8426 * lily/grob-property.cc (try_callback): remove marker if applicable.
8428 * lily/grob.cc: elucidate doc about after/before-line-breaking
8430 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8432 * lily/stem.cc (height): idem.
8434 * lily/stem-tremolo.cc: idem.
8436 * lily/slur.cc (height): don't use get_uncached_stencil()
8438 * lily/rest.cc (y_offset_callback): use offset callback
8439 iso. after-line-breaking callback.
8441 * lily/grob.cc: change after/before-line-breaking-callback to
8442 after/before-line-breaking dummy properties.
8444 * lily/include/grob.hh: remove Grob_status.
8446 * scm/define-context-properties.scm
8447 (all-user-translation-properties): remove verticalAlignmentChildCallback
8449 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8450 (calc_direction): use callback
8451 (calc_positions): use callback.
8453 * lily/tie.cc (calc_direction): use callback. Only call parent
8454 positioning for more than one tie.
8456 * lily/tie-column.cc (calc_positioning_done): use callback
8458 * lily/slur-scoring.cc (calc_control_points): use callback
8460 * lily/slur.cc (calc_direction): use callback.
8462 * lily/note-collision.cc (force_shift_callback): remove.
8464 * lily/dot-column.cc (force_shift_callback): remove. Use
8465 other_axis_parent_positioning.
8467 * lily/grob.cc (other_axis_parent_positioning): new function.
8468 (same_axis_parent_positioning): new function
8470 * lily/align-interface.cc (alignment_callback): remove function.
8472 * lily/note-collision.cc (calc_positioning_done): use callback.
8474 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8475 (calc_direction): idem.
8476 remove print function.
8478 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8480 * lily/dot-column.cc (calc_positioning_done): use callback.
8482 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8484 * lily/beam.cc (calc_direction): use pseudo-property for beam
8486 (calc_positions): use callback
8488 * lily/align-interface.cc (calc_positioning_done): use
8489 callback. Fold fixed distance and normal alignment in one function.
8491 * lily/stem.cc (calc_stem_end_position): use callback.
8492 (calc_positioning_done): idem.
8493 (calc_direction): idem.
8494 (calc_stem_end_position): idem
8495 (calc_stem_info): idem.
8497 * lily/grob-property.cc (get_property_data): new function:
8498 (try_callback): new function.
8500 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8503 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8505 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8507 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8511 * lily/include/*.hh (Module): compile fixes.
8513 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8515 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8516 as an argument for char-syntax: use (char-syntax (or nil 0))
8517 instead of (char-syntax nil), thanks to Milan Zamazal.
8519 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8521 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8524 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8527 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8529 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8530 add class_name() method.
8532 * lily/music-scheme.cc: remove ly:music-name.
8534 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8536 * cygwin/postinstall-lilypond.sh: Remove cruft.
8538 * cygwin/postremove-lilypond.sh: Remove.
8540 * cygwin/GNUmakefile (default): Remove postremove rules.
8542 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8544 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8547 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8550 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8551 consider break index for broken spanner.
8553 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8554 characters from string before splitting.
8556 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8558 * scm/framework-ps.scm (output-preview-framework): use
8559 is-book-title to determine whether to chop off the booktitle.
8561 * lily/paper-book.cc (systems): init from book-title-properties
8562 (add_score_title): init score-title-properties.
8564 * ly/paper-defaults.ly: add {score,book}-title-properties.
8566 * scm/document-backend.scm (lookup-interface): error message if
8567 using unknown interface.
8569 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8572 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8574 (make_bracket): new function.
8576 * scm/lily.scm (define-scheme-options): add paper-size option.
8578 * ly/declarations-init.ly (laissezVibrer): get paper size from
8581 * scm/translation-functions.scm: use \fontsize for changing the
8584 * scm/define-grobs.scm (all-grob-descriptions): set
8585 between-length-limit to 1.0
8587 * lily/tie-helper.cc: add between_length_limit_ detail property.
8589 * mf/feta-bolletjes.mf: typos.
8591 * lily/note-head.cc (internal_print): don't shadow idx
8592 parameter. This fixes wrong attachment for do shape heads.
8594 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8596 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8598 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8600 * scm/layout-slur.scm: rename from slur.scm
8602 * scm/layout-page-layout.scm: rename from page-layout.scm
8604 * scm/layout-beam.scm: rename from beam.scm
8606 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8607 bass-figure-interface
8609 * lily/new-figured-bass-engraver.cc (process_music): add
8610 implicitBassFigures property.
8612 * scm/define-markup-commands.scm (pad-x): new markup.
8614 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8615 minimumVerticalExtent on FiguredBass context.
8617 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8618 case the continuation crosses a line break.
8620 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8622 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8623 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8624 absolute file name bug.
8626 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8628 * VERSION (PACKAGE_NAME): release 2.7.12
8630 * input/regression/figured-bass-continuation-center.ly: new file.
8632 * input/regression/beam-outside-beamlets.ly: new file.
8634 * lily/beam.cc (set_beaming): don't clip edges.
8635 (connect_beams): don't clip edges.
8637 * lily/beaming-info.cc (clip_edges): new function.
8639 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8641 * Documentation/user/instrument-notation.itely (Figured bass):
8642 demonstrate extenders, update seealso links.
8644 * scm/titling.scm (marked-up-headfoot): change tagline
8645 handling. tagline = ##f will blank the tagline as well.
8647 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8649 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8651 * lily/new-figured-bass-engraver.cc (struct
8652 New_figured_bass_engraver): add new_music_found_ member.
8654 * lily/lilypond-version.cc (Lilypond_version): deal with
8655 incorrectly formatted version strings.
8657 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8658 New_figured_bass_engraver by default.
8660 * lily/ttf.cc (print_trailer): only define glyph names when
8661 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8663 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8665 * lily/horizontal-bracket.cc (make_bracket): new function.
8667 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8668 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8669 BassFigureLine, BassFigureAlignment
8671 * lily/new-figured-bass-engraver.cc (process_music): new file.
8673 * lily/figured-bass-continuation.cc: new file.
8675 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8678 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8680 * scripts/lilypond-book.py: Bug fix, put the quote around the
8681 actual score for LaTeX documents.
8683 * scm/define-grobs.scm (all-grob-descriptions): Change
8684 collapse-height of the SystemStartBracket grob to 5.0,
8685 so the bracket disappears for single stave score lines (similarly
8686 to SystemStartBraces).
8688 * Documentation/user/advanced-notation.itely (Polymetric
8689 notation): Clarify the use of compressMusic.
8691 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8692 that the grace spacer note in other staves need the same duration
8693 and document the stroke-style property.
8695 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8697 * Documentation/user/global.itely (Vertical spacing): document
8698 alignment-extra-space and fixed-alignment-extra-space.
8700 * Documentation/topdocs/NEWS.tely (Top): add entry.
8702 * input/regression/alignment-vertical-spacing.ly: new file.
8704 * python/convertrules.py (conv): add rule.
8706 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8708 * lily/align-interface.cc (stretch_after_break): new
8709 function. Read fixed-alignment-extra-space property.
8710 (align_elements_to_extents): read alignment-extra-space property.
8712 * lily/lily-guile.cc (robust_scm2dir): new function.
8714 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8715 (annotate-space-left): new function. Annotate space left on page.
8716 (annotate-y-interval): new function.
8717 (paper-system-annotate-last): new function. Annotate bottom-space.
8719 * mf/feta-beugel.mf (y):
8721 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8723 * VERSION (PACKAGE_NAME): release 2.7.11
8725 * scm/lily-library.scm (interval-translate): new function
8726 (interval-center): new function.
8728 * scm/page-layout.scm (paper-system-annotate): new function. Add
8729 arrows for dimensions.
8731 * scm/stencil.scm (dimension-arrows): new function.
8733 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8735 * input/regression/page-spacing.ly: add annotatespacing
8737 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8738 (LY_DEFINE): new function ly:paper-system-set-property!
8740 * Documentation/user/global.itely (Paper size): explain how to add
8743 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8744 correspond to GS's definition.
8746 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8748 (print): only connect to next bracket if the next one is alive.
8749 (print): set padding to 0.0 if the bound is a breakable
8750 column. This makes tupletFullLength brackets reach up to the staff
8751 line if it doesn't connect to the next line.
8753 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8755 * lily/bar-number-engraver.cc: correct docs.
8757 * scm/output-lib.scm (first-bar-number-invisible): rename from
8758 default-bar-number-visibility
8760 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8762 * scm/define-music-properties.scm (all-music-properties): remove
8765 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8767 * po/fi.po: refresh.
8769 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8771 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8773 (disappear): bugfix.
8775 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8777 * lily/include/paper-system.hh (class Paper_system): remove
8778 staff_extents_ member.
8780 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8782 * lily/include/paper-system.hh (class Paper_system): remove
8783 number_ variable. Remove is_title_. Remove break_before_penalty_
8785 * lily/paper-book.cc (systems): use 'number property iso. number_
8788 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8789 remove ly:paper-system-number.
8791 * scm/lily-library.scm (paper-system-title?): new function.
8793 * lily/book.cc (process): bugfix: flip ?: cases.
8795 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8798 * ly/music-functions-init.ly: add outputProperty music function.
8800 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8802 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8804 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8806 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8808 * lily/paper-system.cc (internal_get_property): new function.
8810 * Documentation/user/global.itely (Vertical spacing): refer to
8813 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8816 * input/regression/page-spacing.ly: new file.
8818 * input/regression/page-top-space.ly: new file.
8820 * lily/spacing-spanner.cc: cmath -> math.h
8822 * lily/paper-system.cc (read_left_bound): new function. Read
8823 line-break-system-details from left bound to determine extents.
8825 * Documentation/user/programming-interface.itely (Using LilyPond
8826 syntax inside Scheme): change applyxxx -> applyXxx.
8828 * ly/music-functions-init.ly: add outputProperty music function.
8830 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8832 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8834 * python/convertrules.py (conv): rule
8836 * ly/music-functions-init.ly: applyxxx -> applyXxx
8838 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8841 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8843 * flower/include/real.hh: include <math.h> iso. <cmath>
8845 * flower/include/offset.hh: include real.hh
8847 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8849 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8850 fix example, now that 'interfaces is no longer directly available.
8852 * lily/book.cc (process): don't crash if paper == NULL.
8856 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8858 * scm/define-music-types.scm (music-descriptions): set length and
8859 start-callback for QuoteMusic
8861 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8863 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8864 arguments. Fixes compilation error with gcc 3.3.
8866 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8868 * VERSION: release 2.7.10
8870 * stepmake/stepmake/python-module-rules.make
8871 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8873 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8876 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8878 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8879 -Werror. Otherwise GCC barfs over various optimizations.
8881 * scm/define-grob-properties.scm (all-internal-grob-properties):
8882 add note-head property
8884 * Documentation/user/instrument-notation.itely (Laissez vibrer
8887 * input/regression/laissez-vibrer-ties.ly: new file.
8889 * lily/laissez-vibrer-engraver.cc: new file.
8891 * lily/include/tie-column-format.hh: new file.
8893 * lily/tie-column-format.cc: new file.
8895 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8897 * lily/laissez-vibrer-tie.cc: new file.
8899 * lily/include/laissez-vibrer-tie.hh: new file.
8901 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8903 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8905 * scm/define-grobs.scm (all-grob-descriptions): add
8906 LaissezVibrerTie, LaissezVibrerTieColumn
8908 * lily/tie-column.cc (set_tie_config_directions): new function
8909 (final_shape_adjustment): new function.
8910 (shift_small_ties): new function.
8912 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8914 * lily/include/tie.hh (struct Tie_details): add x_gap_
8915 (struct Tie_configuration): add head_position_
8917 * lily/tie-column.cc (set_chord_outline): new function.
8919 * mf/cmr.enc.in: remove file.
8921 2005-09-11 Graham Percival <gpermus@gmail.com>
8923 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8925 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8927 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8928 reduce aliasing effects.
8930 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8933 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8935 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8937 * flower/include/real.hh: std::fabs too.
8939 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8941 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8943 * lily, flower: Include C++ iso C headers. Import namespace std
8946 * lily/side-position-interface.cc:
8948 * lily/note-head.cc:
8949 * lily/include/includable-lexer.hh:
8950 * flower/include/string-data.icc: Remove using std::*.
8952 * lily, flower: Include C++ iso C headers. Import namespace std
8955 * lily/side-position-interface.cc:
8957 * lily/note-head.cc:
8958 * lily/include/includable-lexer.hh:
8959 * flower/include/string-data.icc: Remove using std::*.
8961 * Documentation/user/instrument-notation.itely (Entering lyrics):
8962 Multiple latin-1->utf-8 conversion fix.
8964 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8966 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8968 * lily/tie.cc (get_configuration): also avoid dots for non-space
8971 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8973 * Documentation/user/instrument-notation.itely: Bugfix.
8975 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8977 * tex/GNUmakefile: don't install texinfo.tex
8979 * tex/ : cleanup: remove unused files.
8981 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8983 * flower/include/real.hh: using std::{isnan,isinf}
8985 * VERSION (PATCH_LEVEL): release 2.7.9
8987 2005-09-05 Graham Percival <gpermus@gmail.com>
8989 * Documentation/user/ instrument-notation.itely,
8990 advanced-notation.itely: minor tweaks.
8992 * input/test/script-chart.ly: add item padding.
8994 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8996 * flower/offset.cc: use math.h iso. <cmath>
8998 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9001 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9002 (widen-left-stencil-edges): new function. Fix alignment problems
9003 with LaTeX includegraphics.
9005 * lily/text-interface.cc (interpret_markup): use abort().
9007 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9009 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9011 * lily/tie.cc (get_configuration): update bezier shape as we
9013 (get_configuration): don't move large ties if we're outside of the
9016 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9018 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9020 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9022 * .cvsignore: Add auto-generated configure files and then some.
9024 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9026 * scm/define-grobs.scm (DynamicLineSpanner): Add
9027 X-extent-callback. Fixes hairpin-slur collision.
9029 2005-08-31 Graham Percival <gpermus@gmail.com>
9031 * Documentation/user/advanced-notation.itely,
9032 basic-notation.itely: minor changes.
9034 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9036 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9037 \linebreak between each .eps file if \betweenLilyPondSystem is
9040 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9041 music): Document the \linebreak
9043 * Documentation/user/lilypond-book.itely,
9044 input/tutorial/lbook-latex-test.tex,
9045 Documentation/user/examples.itely: Remove \usepackage{graphics}
9047 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9049 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9051 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9054 * scripts/lilypond-book.py (PREAMBLE_LY): define
9055 inside-lilypond-book
9056 (modify_preamble): new function. Insert \RequirePackage{graphics}
9057 when no {graphics found in preamble.
9059 2005-08030 Graham Percival <gpermus@gmail.com>
9061 * Documentation/user/basic-notation.itely, global.itely,
9062 tutorial.itely: misc small changes.
9064 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9066 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9069 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9071 * lily/tie-column.cc (new_directions): put Tie down on center
9074 * lily/script-interface.cc (before_line_breaking): use
9075 Grob::programming_error
9077 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9079 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9082 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9084 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9086 2005-08-29 Werner Lemberg <wl@gnu.org>
9088 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9089 the `*.scale.pfa' files to avoid warnings.
9091 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9093 * lily/tempo-performer.cc (process_music): idem.
9095 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9097 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9099 * Documentation/user/advanced-notation.itely (Text markup): not a
9102 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9104 * lily/staff-performer.cc (initialize): add tempo/name to
9107 2005-08-26 Graham Percival <gpermus@gmail.com>
9109 * Documentation/user/advanced.itely: add text-only example.
9111 * Documentation/user/invoking.itely: add index entries for
9114 * Documentation/user/ tutorial.itely, basic-notation.itely:
9115 small fixes suggested by Steve D. Thanks!
9117 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9119 * input/regression/markup-bidi-pango.ly: new file.
9121 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9122 standard. Remove #ifdef. Remove memleak.
9123 (text_stencil): use text_dir to decide how to composite items.
9124 (text_stencil): determine uniform text direction for the entire
9127 * scripts/lilypond-book.py (output_name): remove
9128 latex_filter_cmd. Non-portable to non-Unix systems.
9129 (get_latex_textwidth): use File.write and os.unlink() instead.
9131 * THANKS: add Vicente & Trevor.
9133 * lily/grob.cc (discretionary_processing): look up origin for
9134 programming_error too.
9136 * input/regression/tie-broken.ly: new file.
9138 * lily/tie-column.cc (set_chord_outlines): set outline for line
9141 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9143 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9144 unscaled transform, just translate stencils.
9146 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9149 * scm/define-markup-commands.scm (wordwrap-string): use
9151 (wordwrap-stencils): idem.
9154 (wordwrap-stencils): translate last line to right for
9155 text-direction = LEFT.
9157 * scm/define-grob-properties.scm (all-user-grob-properties): add
9160 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9162 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9163 when copying a Lily_parser object.
9165 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9167 * scm/define-markup-commands.scm (null): add null markup.
9169 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9171 * lily/item.cc: Add documentation of center-invisible
9173 2005-08-24 Graham Percival <gpermus@gmail.com>
9175 * Documentation/user/advanced-notation.itely: add info about
9178 * Documentation/user/programming-interface.itely: fix example
9179 involving raised text.
9181 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9183 * lily/beam.cc (print): fix X start/end points of isolated
9186 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9188 * lily/multi-measure-rest.cc (set_text_rods): new function.
9190 * lily/vertical-align-engraver.cc (process_music): call
9191 Align_interface::set_axis(). This forces #'elements to be ordered,
9192 preventing random vertical reordering of staves.
9194 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9195 add avoid-slur property.
9197 * Documentation/user/basic-notation.itely (Measure repeats): add
9198 countPercentRepeats example.
9200 * Documentation/user/advanced-notation.itely (Other text markup
9201 issues): remove remark about normal-font. We have \normal-text
9203 * input/regression/tie-chord.ly: add note about remaining bugs.
9205 * lily/tie.cc (print): try Tie_column::set_directions () if
9206 control-points not yet defined.
9208 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9210 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9211 extent. This fixes braces falling out of the EPS bbox.
9213 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9216 2005-08-23 Graham Percival <gpermus@gmail.com>
9218 * {various} : change #up->#UP and #down->#DOWN.
9220 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9222 * Documentation/user/advanced-notation.itely: clarify
9223 what objects handles text on a multimeasure rest.
9225 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9227 * VERSION (PATCH_LEVEL): release 2.7.7
9229 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9231 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9233 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9235 * input/regression/*.ly: formatting clean-up. Default layout
9236 before music expression.
9238 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9239 romanze28-2 example.
9241 * scm/ps-to-png.scm: remove dir-re function.
9242 (make-ps-images): generate page names, instead of globbing them.
9243 This brings down LilyPond memory usage for make web by a factor
9246 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9247 don't use glob. With 3000 files, globbing
9248 Documentation/user/out-www/ can take too much time.
9250 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9252 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9254 * input/regression/tie-manual.ly: new file
9256 * input/regression/tie-chord.ly: update.
9258 * flower/include/interval.hh (struct Interval_t):
9260 * lily/tie.cc (distance): new function
9261 (height): new function.
9262 (init): new function
9263 (Tie_details): new struct.
9265 * lily/skyline.cc (skyline_height): new function.
9267 * lily/tie-column.cc (set_chord_outlines): new function.
9268 (new_directions): read tie-configuration
9270 * lily/skyline.cc: fix ASCII art.
9272 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9274 * python/convertrules.py (string_or_scheme): Fix spelling error
9276 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9278 * lily/tie-column.cc (set_directions): set directions only once.
9279 (add_configuration): new function.
9281 * lily/tie.cc (set_control_points): new function
9283 * lily/tie-column.cc (new_directions): new function.
9285 * ly/music-functions-init.ly: set 'pitch property
9286 iso. trill-pitch. This makes \relative work with \pitchedTrill
9288 * lily/tie.cc (get_configuration): new function. Don't generate
9289 control points, rather, generate configuration.
9290 remove head-pair property.
9292 * lily/include/tie.hh (struct Tie_configuration): new struct.
9294 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9296 * Documentation/topdocs/NEWS.tely: clarify.
9298 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9300 * lily/tie.cc: remove minimum-length
9302 * scm/define-grob-properties.scm (all-user-grob-properties):
9303 remove staffline-clearance, y-offset
9305 * input/regression/tie-dots.ly (Module): remove.
9307 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9308 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9310 * input/regression/tie-single.ly: new file.
9312 2005-08-21 Graham Percival <gpermus@gmail.com>
9314 * ly/bagpipe.ly: fix compile problem.
9316 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9318 * lily/midi-item.cc (name): new method.
9320 * lily/staff-performer.cc (acknowledge_audio_element): use
9321 signature of baseclass.
9323 * lily/engraver-group.cc (do_announces): move recursion call out
9326 * lily/drum-note-performer.cc (class Drum_note_performer): use
9327 process_music everywhere.
9329 * ly/performer-init.ly: add default children everywhere.
9331 * lily/paper-book.cc (output): call paper-book-write-midis
9332 directly: always write MIDI, even if no \layout {} block.
9334 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9336 * VERSION (PACKAGE_NAME): release 2.7.6
9338 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9339 about not being able to handle repeat.
9341 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9343 * Documentation/user/examples.itely (Piano templates):
9344 * lily/include/performer-group.hh: Remove last traces of
9345 Performer_group_performer. Fixes make web.
9347 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9349 * Documentation/user/examples.itely (Piano templates): change
9350 Engraver_group_engraver -> Engraver_group
9352 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9353 scm_stand_in_procs is not weak_any.
9355 * lily/volta-bracket.cc (print): don't use strcmp().
9357 * lily/volta-engraver.cc (process_music): use
9358 Text_interface::is_markup() for setting the 'text property of the
9361 * input/mutopia/claop.py (accents): update syntax to 2.6
9363 * scm/define-context-properties.scm
9364 (all-user-translation-properties): add countPercentRepeats.
9366 * Documentation/user/basic-notation.itely (Measure repeats): add
9367 isolated percent example.
9369 2005-08-18 Graham Percival <gpermus@gmail.com>
9371 * input/ {various}: change direction #1, #-1 to
9372 #up/#down or \fooUp, \fooDown.
9374 * Documentation/user/music-glossary.tely: #-1 to #down.
9376 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9377 to #up, #-1 to #down.
9379 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9381 * lily/include/engraver-group.hh: rename.
9383 * lily/include/performer-group.hh: rename.
9385 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9387 * input/test/script-abbreviations.ly: Removed some old LaTeX
9390 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9392 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9393 Remove functions. Remove if 1: constructs, reindent.
9395 * scripts/convert-ly.py (add_version): Add functions from
9398 * scm/script.scm (default-script-alist):
9399 s/priority/script-priority. Fixes script stacking. Backportme.
9400 (Fermata): Very low priority.
9402 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9404 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9406 * input/regression/slur-script.ly: remove padding tweaks. Add
9409 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9410 time sigs and related stuff.
9412 * scm/define-grob-properties.scm (all-user-grob-properties): add