1 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
9 * input/regression/utf-8.ly:
10 document utf-8 meaning of phrases.
12 * scm/define-markup-commands.scm:
13 make \caps markup default to smallCaps
17 use glyph indexing for glyph name .notdef
19 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
21 * input/regression/utf-8.ly: Fix doc to match order of language
24 2006-11-01 Joe Neeman <joeneeman@gmail.com>
26 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
29 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
31 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
33 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
35 * Documentation/user/GNUmakefile:
36 don't use ImageMagick, use GS directly.
39 otf depends on otf-g?table. Fixes race condition in -j2 build.
40 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
46 remove .deb/.rpm downloading.
48 * buildscripts/git-update-changelog.py:
49 bugfixes for git-update-changelog.py
51 * Documentation/user/GNUmakefile:
54 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
56 * input/regression/tie-semi-single.ly:
57 use position/direction from single tie case too. This fixes
58 overrides and defaults for single laissez-vibrer and repeat ties.
60 * buildscripts/git-update-changelog.py:
61 only prepend header if one patch was successful.
63 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
65 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
66 stuff. Remove cygwin packaging stuff.
68 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
70 * python/convertrules.py (conv): Part 2 fixes vertical extent.
72 * input/test/vertical-extent.ly: Fix and elaborate on vertical
73 staff extent. (Thanks Mats)
75 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
77 * buildscripts/git-update-changelog.py (main): write .msg and cvs
80 * scm/define-grobs.scm:
81 separation-items have width
87 * Documentation/topdocs/NEWS.tely:
88 * lily/separating-group-spanner.cc:
89 * lily/slur-engraver.cc:
90 * lily/slur-scoring.cc:
91 * scm/define-grobs.scm:
92 * input/regression/slur-clef.ly:
93 add breakableSeparationItem to extra encompass for slurs. This
94 fixes slur/clef slur/key collisions etc. Should fix #49
96 * lily/include/slur-scoring.hh:
97 * lily/slur-scoring.cc:
98 Use X of separation item as slur start. Fixes #120
100 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
102 * buildscripts/git-update-changelog.py (changelog_body): don't
105 * lily/grob.cc: add avoid-slur
107 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
111 move server/emacsclient to elisp/
113 * buildscripts/git-update-changelog.py (Commit.note_del_file):
116 * elisp/server.el.patch:
119 * elisp/emacsclient.patch:
122 * buildscripts/git-update-changelog.py:
129 * buildscripts/git-update-changelog.py:
130 script to update ChangeLog with Git messages.
132 * lily/beam-engraver.cc:
133 * input/regression/rest-pitched-beam.ly:
134 don't set callback if staff-position set. Fixes #126.
136 * lily/bar-number-engraver.cc:
138 * lily/fingering-engraver.cc:
139 * lily/grob-property.cc:
141 * lily/include/grob.hh:
142 * lily/include/lily-guile-macros.hh:
143 * lily/mark-engraver.cc:
144 * lily/melody-engraver.cc:
145 * lily/script-column.cc:
146 * lily/tie-formatting-problem.cc:
148 internal_get_property_data() using ly_symbol2scm()
150 * stepmake/stepmake/generic-targets.make:
151 create .gitignore in outdir.
156 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
158 * input/test/vertical-extent.ly:
159 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
161 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
163 * stepmake/bin/add-html-footer.py (compose): remove setgcos
165 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
167 * GNUmakefile.in (install-help2man): install-help2man target.
169 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
171 * SConstruct (configure): Do not check for /bin/sh.
173 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
175 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
178 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
180 * input/regression/fret-boards.ly: new file.
182 * po/de.po: new po courtesy translation team.
184 * scripts/lilypond-book.py (get_option_parser): add newline to doc
187 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
189 * ly/gregorian-init.ly (neumeDemoLayout): update
190 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
192 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
193 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
195 2006-10-27 Erlend Aasland <erlenda@gmail.com>
197 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
198 Yet another build fix.
200 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
202 * SConstruct (lilypondprefix): use sorted() for list_sort()
205 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
207 * flower/SConscript: Unit test rules.
209 * flower/test-std.cc: Compile fix.
211 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
213 * python/midi.c (pymidi_parse_track): warning fixes.
215 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
216 include dot-column.hh
218 2006-10-26 Graham Percival <gpermus@gmail.com>
220 * Documentation/user/{basic-, global}: minor changes from mailist.
222 2006-10-26 Erlend Aasland <erlenda@gmail.com>
224 * scm/define-grobs.scm: trivial beautification
226 * lily/tie-performer.cc: no need to #include "pqueue.hh"
228 * lily/source-file.cc: put multibyte var inside #if clause
230 * scm/define-grob-interfaces.scm:
231 * scm/define-grob-properties.scm:
232 Build fix (string-fret-finger-combinations)
234 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
237 * Documentation/user/lilypond-book.itely: Build fix.
239 2006-10-26 Joe Neeman <joeneeman@gmail.com>
241 * lily/system.cc (get_paper_system):
242 * lily/paper-book.cc (systems):
243 move most of the backwards compatibility stuff into
246 * Documentation/topdocs/NEWS.tely: add 2 entries for the
249 * Documentation/user/page.itely: remove time-scaled-music
250 bug for the Page_turn_engraver
252 * lily/paper-book.cc (set_system_penalty): backwards
253 compatibility (breakbefore) for the old page breaker
255 2006-10-25 Graham Percival <gpermus@gmail.com>
257 * Diocumentation/user/instrument-notation.itely: added more
258 info about stanzas; thanks Geoff!
260 * Documentation/user/ {basic, advanced}: small fixes from
263 * THANKS: add some bug reporters.
265 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
267 * scm/define-context-properties.scm (all-user-translation-properties):
268 noteToFretFunction: Add.
270 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
271 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
273 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
275 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
278 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
279 Remove bashism in delete.
281 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
283 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
285 * scm/translation-functions.scm (determine-frets-mf): flatten let*
287 * scm/define-context-properties.scm
288 (all-user-translation-properties): add maximumFretStretch property.
290 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
292 * lily/source-file.cc (get_counts): use multibyte variable.
294 * scm/translation-functions.scm (determine-frets-mf): new
295 function: compute fret numbers.
297 * scm/output-lib.scm (string-frets->description) new function.
298 (fret-board::calc-stencil): new function
300 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
302 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
304 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
306 * lily/tab-note-heads-engraver.cc: cleanups.
308 * lily/fretboard-engraver.cc: new file
310 * ly/engraver-init.ly: add FretBoards context
312 2006-10-24 Joe Neeman <joeneeman@gmail.com>
314 * lily/grob.cc (pure_relative_y_coordinate)
315 (pure_height): use the new call_pure_function stuff
317 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
320 * lily/side-position-interface.cc (pure_y_aligned_side): add an
323 * lily/simple-closure.cc (ly_eval_simple_closure): make
324 simple-closure evaluatable from scheme
325 (evaluate_with_simple_closure): make simple-closures pure-
328 * lily/slur.cc (pure_outside_slur_callback): new function
330 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
331 fits in with previous changes that made the page forces much
334 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
335 and pure-Y-extent into this new function.
336 (pure-conversions-alist): add outside-slur-callback
338 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
340 * Documentation/user/advanced-notation.itely (Instrument names):
341 Remove obsolete bug workaround for instrument names on piano
344 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
346 * Documentation/user/lilypond-book.itely (Integrating DocBook and
347 music): patch by Bertalan Fodor for docbook.
349 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
350 of $(LILYPOND). Prevents lilypond run for .txt files.
352 * INSTALL.txt: gitness.
354 * .cvsignore: update to force gitness.
356 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
358 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
359 detect suicide in nested tuplets.
361 2006-10-23 Werner Lemberg <wl@gnu.org>
363 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
364 typo in argument to FT_Get_X11_Font_Format.
366 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
368 * stepmake/stepmake/po-vars.make: more gitness.
370 * flower/polynomial.cc (check_sol): no empty if bodies.
372 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
374 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
376 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
378 * Documentation/user/examples.itely (Transcription of mensural
379 music): Added more comments in .ly source. Suggest to remove
380 Forbid_line_break_engraver to allow line breaking at all bars.
382 * Documentation/user/instrument-notation.itely (Ancient
383 articulations): Updated @refbugs regarding episem.
385 * Documentation/user/instrument-notation.itely (Gregorian square
386 neumes ligatures): Added \augmentum dots. Updated @refbugs
387 regarding \augmentum.
389 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
391 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
394 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
397 * ly/gregorian-init.ly: Added \augmentum macro.
399 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
401 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
403 * lily/pango-font.cc (pango_item_string_stencil): use
404 FT_Get_X11_Font_Format()
406 2006-10-22 John Mandereau <john.mandereau@free.fr>
408 * po/fr.po: update translation.
410 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
412 * VERSION (PATCH_LEVEL): bump version
414 * input/regression/horizontal-bracket-break.ly: new file.
416 * scm/define-grobs.scm (all-grob-descriptions): calc
419 * lily/horizontal-bracket.cc (make_bracket): support
420 connect-to-neighbor. Fix #118
422 * VERSION: release 2.9.26-2
424 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
426 * VERSION (PACKAGE_NAME): release 2.9.26
428 * buildscripts/output-distance.py (test_basic_compare): add
430 (FileLink.multi_img_cell): new function, glob multi-page png
433 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
435 * po/lilypond.pot: update.
437 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
439 * Documentation/user/global.itely (File structure): remove
442 * lily/parser.yy (FIXME): remove ADDQUOTE
444 * Documentation/user/global.itely (Extracting fragments of
445 notation): new node, about clip systems.
447 * Documentation/user/lilypond-book.itely (Many quotes of a large
448 score): ref to clip systems.
450 * Documentation/user/instrument-notation.itely (Entering lyrics):
451 add note about lyric ties and required font.
453 * lily/open-type-font.cc (glyph_list): format errors.
455 * Documentation/user/programming-interface.itely (Scheme
456 procedures as properties): more doco on simple-closure and scheme
458 (Input variables and Scheme): use lilypond[verbatim], document
461 * Documentation/user/page.itely (Displaying spacing): use \book
462 explicitly, so arrows show .
463 (Line breaking): add note about Forbid_line_break_engraver
465 * Documentation/user/tweaks.itely (Common tweaks): also set length
466 to prevent tie squeezing.
467 (Default files): use @var{}
469 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
470 (Generating LilyPond files): add FOMUS.
472 2006-10-20 Joe Neeman <joeneeman@gmail.com>
474 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
475 Y-offset for TextScript and Script
477 * lily/text-engraver.cc (make_item):
478 * lily/script-engraver.cc (make_script_from_event):
479 remove call to Side_position_interface::set_axis since all scripts
480 now have this set by default
483 * lily/prob.cc: use variables
485 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
487 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
488 at typography, rather analyse stream event duration.
490 * Documentation/user/page.itely (Page formatting): set a6 paper
491 for system separator example.
493 * lily/arpeggio.cc (Module): idem.
495 * lily/accidental-placement.cc: add script-priority property.
497 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
499 * lily/ttf.cc (print_trailer): if all else fails: use
500 glyphIndexXXXX as glyph name. Fixes #117.
502 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
503 entry if cmap contains glyph.
504 (get_index_to_charcode_map): remove from Pango_font class, use
505 global filename -> font mapping.
506 (get_glyph_index_name): new function.
507 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
510 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
512 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
515 * scm/define-grob-properties.scm (all-user-grob-properties):
516 remove outdated doc. Fixes #116
518 * lily/completion-note-heads-engraver.cc (process_music): always
519 clone input events; otherwise we may overwrite input 'duration
520 property. Fixes #115.
522 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
525 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
528 * VERSION (PATCH_LEVEL): bump version.
530 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
532 * lily/engraver.cc (internal_make_grob): use variables.
534 * flower/string-convert.cc (dec2double): clean-up warnings.
536 * configure.in (CXXFLAGS): add -Werror.
538 * VERSION (PACKAGE_NAME): release 2.9.25
540 2006-10-18 Joe Neeman <joeneeman@gmail.com>
542 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
543 line even if we precede a forced break.
545 * lily/optimal-page-breaking.cc (try_page_spacing): square line
546 forces too. Make page-spacing weight default to 10 because the
547 changes to vertical springs decreased the page force/line force
548 proportions. Also, take the average of line force and page force
549 instead of just the sum.
551 * lily/constrained-breaking.cc (initialize): make the stiffness
552 of the vertical springs depend on the height of the system. This
553 prevents pages with only a few large systems from getting huge
556 * Documentation/user/page.itely (Page formatting): document the
557 change in default page-spacing-weight
559 * lily/include/constrained-breaking.hh: initialise bottom_padding_
561 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
563 * input/typography-demo.ly (melody): remove superfluous slur.
565 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
566 add piano-pedal-script-interface
568 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
570 * scripts/lilypond-book.py: DocBook support.
572 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
574 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
576 (stop_translation_timestep): set bound to currentMusicalColumn if
577 not set yet. Fixes #102
579 * lily/piano-pedal-bracket.cc: formatting.
581 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
583 * lily/piano-pedal-align-engraver.cc: new class
584 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
587 2006-10-18 Heikki Junes <hjunes@gmail.com>
589 * po/fi.po: Update Finnish translation (before the next release).
591 2006-10-17 Joe Neeman <joeneeman@gmail.com>
593 * lily/system.cc (get_paper_system): reinstate the backwards-
594 compatible page breaking for the old page breaker.
596 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
598 * lily/recording-group-engraver.cc: removed
600 * lily/context.cc, lily/translator-group.cc: Don't touch
601 Context::implementation_ if it's null
603 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
605 * scm/paper.scm: only use left-margin if defined.
607 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
609 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
611 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
612 strokeFingerOrientations
614 * lily/script-column.cc (row_before_line_breaking): also handle
615 accidentals and arpeggios in horizontal script stacking.
617 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
620 * input/regression/script-stack-horizontal.ly: trim.
622 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
624 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
627 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
628 'text if string argument.
630 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
632 * scm/define-context-properties.scm
633 (all-user-translation-properties): change to strokeFingerOrientations
635 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
637 * lily/parser.yy: remove debug output
639 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
641 * ly/paper-defaults.ly: set left/right margin.
643 * scm/paper.scm (set-paper-dimensions): use left-margin and
644 right-margin for computing linewidth.
646 * Documentation/topdocs/NEWS.tely (Top): idem.
648 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
651 * scm/define-markup-commands.scm (tied-lyric): increase negative
652 space: space syllables tighter.
654 * VERSION (PATCH_LEVEL): bump version.
656 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
659 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
661 * COPYING: further clarification
663 * VERSION: release 2.9.24
665 * input/regression/script-stack-horizontal.ly: add version.
667 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
669 * input/regression/lyric-tie.ly (texidoc): use different words.
671 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
673 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
675 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
676 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
678 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
680 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
682 * Doxyfile: remove file.
684 * scm/define-grob-interfaces.scm (string-finger-interface): add
685 string-finger-interface
687 * lily/general-scheme.cc (LY_DEFINE): move
688 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
690 * Documentation/topdocs/NEWS.tely (Top): add note for
691 string-finger feature.
693 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
696 * scm/output-lib.scm (string-finger::calc-text): read 'digit
699 * input/regression/script-stack-horizontal.ly: new file.
701 * ly/engraver-init.ly: add Script_row_engraver.
703 * lily/script-column.cc (order_grobs): refactor: separate axis
705 (row_before_line_breaking): new function.
707 * lily/script-row-engraver.cc (Script_row_engraver): new file.
709 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
711 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
713 * Documentation/user/instrument-notation.itely: Cleanup: Remove
714 annoying skip notes from mensural ligature example. Update
715 @refbugs for ligatures and mensural ligatures.
717 * lily/coherent-ligature-engraver.cc,
718 lily/include/coherent-ligature-engraver.hh,
719 lily/mensural-ligature-engraver.cc,
720 lily/vaticana-ligature-engraver.cc: Revise code for item
721 reparentizing. There should now be less programming_error
724 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
726 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
727 Maintenance bugfix: Don't create empty Stencil (), but empty box
728 instead. This fix should eliminate some programming_error
731 * ly/engraver-init.ly (MensuralStaff): Set default accidental
734 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
735 \layout block _before_ score.
737 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
739 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
741 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
743 2006-10-13 Erlend Aasland <erlenda@gmail.com>
745 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
747 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
749 * VERSION (PATCH_LEVEL): bump version.
751 * COPYING: clarify exception note.
753 * lily/main.cc: remove remark about "COPYING".
755 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
756 system-count starts at 0 for each clip-region. Change name to
757 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
758 layout block, per score.
760 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
762 * lily/input-smob.cc: add equal_p for Input
764 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
767 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
769 * lily/prob.cc: Add equal_p predicate for Prob
771 * lily/translator.cc: small cleanup
773 * scm/document-music.cc: use data from translator listener
774 registration to generate documentation for event classes
776 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
778 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
780 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
782 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
784 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
786 * Documentation/topdocs/INSTALL.texi: Thinko.
788 * .cvsignore: Update.
790 * lexer-gcc-3.1.sh: Remove.
792 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
793 Update anonymous cvs access. Remove comment about gcc 3.0.4.
795 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
797 * VERSION: release 2.9.23
799 * lily/paper-column-engraver.cc (stop_translation_timestep): also
802 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
804 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
806 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
808 * input/regression/clip-systems.ly (Notes): new file.
810 * scm/lily.scm (define-scheme-options): add clip-systems option.
812 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
814 (dump-stencil-as-EPS): move bbox calculation from previous
816 (output-framework): use -dclip-systems
818 * scm/lily-library.scm (filtered-map): new function
820 * scm/framework-ps.scm (clip-system-EPS): new function.
821 (clip-system-EPSes): new function.
823 * lily/paper-column.cc: add rhythmic-location to interface
825 * scm/define-grob-properties.scm (all-user-grob-properties): add
826 rhythmic-location property.
828 * scm/clip-region.scm: new file: rhythmic-location data type and
829 system-clipped-x-extent function.
831 * ly/init.ly: use (scm clip-region)
833 * lily/paper-column-engraver.cc (stop_translation_timestep): set
834 rhythmic-location for paper column grobs.
836 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
838 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
840 * ly/engraver-init.ly: Remove obsolete comment on
843 * Documentation/user/instrument-notation.itely: Tune Ancient
844 Articulations figure, such that the episem actually shows.
846 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
847 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
849 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
852 2006-10-12 Graham Percival <gpermus@gmail.com>
854 * Documentation/user/ {some}: minor edits that were lost somehow.
856 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
858 * VERSION (PACKAGE_NAME): bump version.
860 * input/regression/lyric-tie.ly (texidoc): new file.
862 * Documentation/topdocs/NEWS.tely (Top): add new feature.
864 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
866 * scm/define-markup-commands.scm (tied-lyric): new function: split
867 string along ~ and reattach with U+203F (tie character) and
870 * scm/output-lib.scm (lyric-text::calc-text): new function.
872 * lily/lyric-engraver.cc (process_music): don't set 'text.
874 * scm/output-lib.scm (string-finger::calc-text): new function
875 (lyric-text::print): new function.
877 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
878 generic for fingering & string number. Use for string-finger.
880 * scm/define-music-types.scm (music-descriptions): add
883 * lily/fingering-engraver.cc (listen_string_finger): new function
885 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
887 * scm/define-context-properties.scm
888 (all-user-translation-properties): add stringFingerOrientations
890 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
892 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
893 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
895 * lily/dots.cc: Added style property for dots.
897 * mf/parmesan-heads.mf: Fix typo in comment.
899 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
900 adding longa head to feta font and removing obsolete default
903 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
905 * scm/output-lib.scm (fingering::calc-text): use origin
906 event-property, not music-property.
908 * lily/lilypond.rc.in: spell my name correctly.
910 2006-10-10 Joe Neeman <joeneeman@gmail.com>
912 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
913 already have a non-empty extent. Fixes estimation for Hara-kiri
916 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
918 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
921 * lily/ligature-engraver.cc: Remove unused #include.
923 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
924 Bugfix: remove method check_for_prefix_loss(Item *) from global
925 namespace to avoid namespace pollution.
927 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
929 * VERSION: release 2.9.22
931 * ly/generate-documentation.ly: update option name.
933 * lily/dynamic-text-spanner.cc (print): revert fix.
935 * scm/define-grob-interfaces.scm
936 (trill-pitch-accidental-interface):
937 add trill-pitch-accidental-interface
939 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
940 dereference if it's really a duration.
942 * lily/figured-bass-engraver.cc (process_music): clear spanner if
943 useBassFigureExtenders is not set.
944 (listen_bass_figure): record as new event if
945 useBassFigureExtenders not set. Fixes #103.
947 * scm/stencil.scm (circle-stencil): don't center stencil argument,
948 instead: move circle. Fixes #107.
950 * scm/define-grobs.scm (all-grob-descriptions): set
951 allow-loose-spacing for PaperColumn and
952 NonMusicalPaperColumn. Kludge for #110.
954 * lily/spaceable-grob.cc: add allow-loose-spacing property.
956 * lily/spacing-determine-loose-columns.cc (is_loose_column):
957 allow-loose-spacing property.
959 * scm/define-markup-commands.scm (postscript): gsave & grestore
960 around embedded PS. Do setlinewidth too. Fixes #109.
962 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
964 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
965 code. This patch fixes ligature brackets that were not at all
968 2006-10-08 Graham Percival <gpermus@gmail.com>
970 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
972 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
974 * scm/define-context-properties.scm: clarified docs (bug 91).
976 * Documentation/user/basic-notation.itely: document volta brackets
977 not aligning (bug 63).
979 * Documentation/user/ global.itely invoking.itely: ignore or
980 add warnings about texstr.
982 2006-10-08 John Mandereau <john.mandereau@free.fr>
984 * po/fr.po: update translation.
986 * po/: update msgids.
988 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
990 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
992 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
994 * Documentation/user/page.itely (Two-pass vertical spacing): add
995 documentation for two-pass spacing technique.
997 2006-10-06 Graham Percival <gpermus@gmail.com>
999 * Documentation/user/convert-ly.txt: new file; new
1000 storage place for this file (moved from bugs/ CVS).
1002 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1004 * lily/note-head.cc: Fixed programming_error message.
1006 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1008 * scm/define-grobs.scm (pure-conversion): move pure-callback
1011 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1012 marcato, stopped, thumb.
1014 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1016 * lily/completion-note-heads-engraver.cc (process_music): don't
1017 skimp on memory usage.
1019 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1022 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1023 parenthesis item. This fixes premature Y-extent triggering. Fixes
1026 * VERSION (PATCH_LEVEL): bump version.
1028 2006-10-04 Graham Percival <gpermus@gmail.com>
1030 * Documentation/user/advanced-notation.itely: added
1031 info about instrument names for piano or other contexts,
1034 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1036 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1037 solfa_base_notewidth as unit for non-DO-notes too.
1039 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1041 * VERSION: release 2.9.21
1043 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1046 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1048 * python/lilylib.py (progress): Minor fix.
1050 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1052 * lily/note-name-engraver.cc: doc engraver.
1054 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1056 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1058 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1061 * lily/stem-engraver.cc (make_stem): don't set duration-log
1063 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1064 write snippet-names binary.
1066 * python/lilylib.py (system): use os.system for mingw32
1068 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1071 * scm/backend-library.scm: update email address.
1073 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1076 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1079 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1080 handle dot creation separately.
1082 * lily/tab-note-heads-engraver.cc (process_music): idem.
1084 * lily/drum-note-engraver.cc (process_music): idem.
1086 * lily/note-heads-engraver.cc (process_music): idem.
1088 * lily/rest-engraver.cc: don't set duration-log.
1090 * scm/output-lib.scm (string-number::calc-text): new function.
1091 (note-head::calc-duration-log): new function.
1093 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1095 * scm/output-lib.scm (fingering::calc-text): new function.
1097 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1099 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1100 and include-eps-font -> include-eps-fonts
1102 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1104 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1106 * lily/timing-translator.cc: list properties.
1107 (start_translation_timestep): update internalBarNumber too.
1109 * scm/define-context-properties.scm
1110 (all-user-translation-properties): add internalBarNumber.
1112 * input/regression/spacing-no-note.ly: new file.
1114 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1116 * lily/book.cc: #include cleanup.
1118 * lily/include/lily-guile-macros.hh: add assert to
1119 scm_or_str2symbol(SCM).
1121 * VERSION (PATCH_LEVEL): bump version.
1123 * lily/spacing-spanner.cc (musical_column_spacing): handle
1124 musical->nonmusical spacing case, where there is no spacing
1125 wish. Fixes issue #61.
1127 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1128 (pango_item_string_stencil): use logical rect horizontally (to
1129 preserve spaces), ink_rect vertically (for time signatures).
1131 * lily/font-metric.cc (word_stencil): new interface function
1133 * input/regression/utf-8-mixed-text.ly: new file.
1135 * lily/percent-repeat-engraver.cc (listen_percent): remove
1138 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1139 non-dynamic scripts. Fixes #30.
1141 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1143 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1145 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1146 SCM_UNDEFINED for non-existent data.
1148 * lily/side-position-interface.cc (general_side_position): allow
1149 optional current_offset argument for chaining, so combinations of side-position
1150 and outside slur callback don't add up. Fixes issue #92.
1152 * lily/pango-font.cc (pango_item_string_stencil): use
1153 logical_rect. This prevents spaces after words from disappearing,
1156 * VERSION: release 2.9.20
1158 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1160 * scm/define-grob-properties.scm (all-user-grob-properties):
1161 mention stencil as user settable.
1163 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1165 * Documentation/user/page.itely (Page formatting):
1166 document auto-first-page-number
1168 * lily/page-breaking.cc (find_chunks_and_breaks):
1169 * lily/paper-score.cc (calc_breaking): Follow changes to the
1170 Constrained_breaking interface
1172 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1173 here backwards, as an optimisation
1174 (initialize): new function; move most of the code in resize () here
1175 (combine_demerits): cache ragged_right_
1176 (Constrained_breaking): constructor now takes the Paper_score
1178 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1180 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1181 avoid parser lookahead for 0-ary functions.
1183 * lily/translator.cc: Extract event classes from
1184 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1186 2006-10-02 Heikki Junes <hjunes@gmail.com>
1188 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1191 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1193 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1194 function. Call the page breaking function selected in the
1195 `page-breaking' \paper variable, then the post processing function
1196 chosen using the `page-post-process' \paper variable.
1197 (line-height): new function. Return the height of a system.
1198 (line-minimum-position-on-page): new function. Return the position
1199 of a system on page (using the previous line position), only
1200 considering between system padding.
1201 (stretchable-line?): new function. Says whether a line can be
1202 stretched (ie. is not a title nor a single staff system).
1203 (page-maximum-space-left): new function. Computes space left on a
1204 page, when all systems are separated by their padding.
1206 * lily/page-breaking.cc (breaking::make_pages): Move page post
1207 processing function call to page breaking wrapper (common to all
1210 * lily/paper-book.cc (book::pages): call the page breaking
1211 wrapper, instead of the page breaker directly
1213 * ly/paper-defaults.ly: Add \paper variables for page breaking
1214 wrapper and page post processing function. Make
1215 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1216 `system-maximum-stretch-procedure' variable for holding a function
1217 computing the maximum stretch a system allows.
1219 * scm/layout-page-dump.scm (write-page-breaks): computes the
1220 stretch to apply to systems on a page to minimize left
1221 space. Dump this stretch length.
1223 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1224 the system-stretch property of the tweak data to stretch the
1226 (includePageLayoutFile): Void function which includes the
1227 generated page-layout file if it exists and if the page layout
1228 dumping is not asked.
1229 (scoreTweak): if the score tweak named by the argument exists,
1232 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1234 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1235 handle correctly the case where there are multiple \noPageBreaks
1238 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1240 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1242 * abc2ly.py fix so that entering " -- " will translate to a -- in
1243 the lilypond instead of a " - - "
1245 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1247 * lily/align-interface.cc: fix typo
1249 * lily/dynamic-text-spanner.cc (print): Add a special case for
1250 trill spanner right sides.
1252 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1254 * lily/align-interface.cc (get_extents_aligned_translates): add
1255 support for padding variable.
1257 * lily/break-align-interface.cc (self_align_callback): oops: use
1258 loop variable in guard.
1260 * input/regression/repeat-percent-grace.ly: new file.
1262 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1263 remember first currentCommandColumn of a grace run. Fixes issue 70.
1265 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1266 move class definition to CC file.
1268 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1270 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1271 measure-long repeats.
1273 * flower/include/international.hh: include stdarg.h
1275 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1277 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1278 put_systems_on_pages to return an empty result, we need to assign
1279 demerits properly in that case.
1280 (put_systems_on_pages): Make the number of pages depend on the
1281 evenness of page_number. Add auto-first-page-number.
1282 (calc_subproblem): ensure that the page-number is even for the
1283 left-hand page. Warn if the first page-turn doesn't fit onto the
1284 first (right-hand) page.
1286 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1287 (min_page_count): make this publicly accessible
1288 (min_page_count): fix a bug when there are forced page breaks that
1289 was introduced when I made this loop run backwards
1290 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1291 replace space_systems_on_min_pages with these two. The logic in
1292 space_systems_on_min_pages was getting too convoluted and is better
1293 contained in page-turn-page-breaking.
1295 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1297 (breakable_column): typo
1299 * lily/source-file.cc (get_line): fix off-by-one error
1300 and clean up some of the logic
1302 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1304 * lily/page-breaking.cc (make_pages): honour the first-page-number
1307 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1309 * VERSION (PACKAGE_NAME): bump version.
1311 2006-09-26 Pal Benko <benko.pal@gmail.com>
1313 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1314 (the latter is the same as petrucci-f which is kept for compatibility)
1316 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1318 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1320 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1322 * lily/global-context.cc (run_iterator_on_me): break out of loop
1323 if moment doesn't increase.
1325 * scm/define-grob-properties.scm (all-user-grob-properties): add
1328 * lily/accidental.cc (after_line_breaking): read forced property.
1330 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1333 * input/regression/accidental-forced-tie.ly: new file.
1335 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1337 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1339 * lily/figured-bass-engraver.cc: only listen to rest events if
1340 ignoreFiguredBassRest is not set.
1342 * scm/define-context-properties.scm
1343 (all-user-translation-properties): add ignoreFiguredBassRest property
1345 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1347 * lily/paper-book.cc (get_system_specs):
1348 (set_system_penalty): fix breakbefore.
1349 We used to set a penalty on the system after the break, now we
1350 set a permission on the system before the break
1352 * lily/grob-property.cc: add scm debugging hooks into
1353 property modification
1355 * lily/context-property.cc:
1357 rename make_foo_from_properties to internal_make_foo and
1358 move it from context-property.cc to a member function of
1361 * lily/include/lily-guile-macros.hh:
1362 overload ly_symbol2scm macro so that there is no more need
1365 * lily/volta-repeat-iterator.cc:
1366 * lily/tweak-engraver.cc:
1367 * lily/tuplet-bracket.cc:
1368 * lily/span-bar-engraver.cc:
1369 * lily/script-engraver.cc:
1370 * lily/prob-scheme.cc:
1371 * lily/pointer-group-interface.cc:
1373 * lily/grob-scheme.cc:
1374 * lily/grob-property.cc:
1376 * lily/context-property.cc:
1377 * lily/break-substitution.cc:
1378 * lily/break-align-engraver.cc:
1379 * lily/axis-group-interface.cc:
1380 * lily/align-interface.cc:
1381 remove calls to internal_FOO
1383 * lily/system-start-delimiter-engraver.cc:
1384 * lily/parenthesis-engraver.cc:
1385 * lily/accidental-engraver.cc:
1386 remove calls to make_foo_from_properties
1388 2006-09-23 Graham Percival <gpermus@gmail.com>
1390 * Documentation/user/programming-iterfaces.itely: fix
1391 def-music-function -> define-music... leftover.
1393 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1395 * lily/page-spacing.cc (min_page_count): by running the loop
1396 backwards, we can calculate ragged_last properly.
1398 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1400 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1401 printfirst-page-number -> print-first-page-number
1403 * python/convertrules.py: corresponding rule.
1405 * Documentation/user/page.itely (Page formatting): Document the
1406 default values of all page layout parameters.
1408 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1410 * lily/lexer.ll: remove limitation on music function arity. New
1411 mode extratoken, which inserts extra EXPECT_* tokens after
1412 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1414 * lily/parser.yy: Change grammar for music function accordingly.
1416 * lily/include/lily-parser.hh: New method get_state, new member
1417 hidden_state. Works around a problem when parser fetches
1418 MUSIC_FUNCTION token but not the following EXPECT_* token.
1420 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1423 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1424 references to Music; use ASSIGN_EVENT_ONCE everywhere
1426 * lily/grob-info.cc: junk *music_cause
1428 * lily/music.cc: copy eventified articulations to stream event
1430 * lily/part-combine-iterator.cc: Cleanup using enums
1432 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1435 * lily/include/engraver.hh: Junk music.hh include
1437 * lily/stream-event.cc: Changed constructors
1439 2006-09-21 Graham Percival <gpermus@gmail.com>
1441 * Documentation/user/tweaks.itely (Fitting music onto fewer
1442 pages): change settings to avoid warning messages.
1444 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1446 * Documentation/user/tweaks.itely (Fitting music onto fewer
1447 pages): Add between-system-space setting.
1449 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1451 * lily/accidental-placement.cc (calc_positioning_done): don't
1452 trigger Y-extent calculation too early. Use pure_height instead.
1454 * lily/scale.cc (LY_DEFINE): new file.
1456 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1458 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1459 that happen at the start of a score: having a zero-length
1460 chunk was messing up min_system_count calculations.
1462 * lily/source-file.cc (get_line): lower_bound, not
1463 binary_search. Fixes problem where point-and-click would
1464 always point to the first line.
1466 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1468 * lily/accidental-placement.cc (calc_positioning_done): also put
1469 stems into accidental support.
1471 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1474 * scm/script.scm (default-script-alist): avoid-slur and
1475 slur-padding for portato script.
1477 * lily/stem-tremolo.cc (translated_stencil): new function.
1478 (height): use new function. Fixes tremolos on whole notes.
1480 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1483 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1485 * scripts/abc2ly.py (try_parse_comment): idem.
1487 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1488 bar_string iso. string.find()
1492 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1495 2006-09-18 Graham Percival <gpermus@gmail.com>
1497 * Documentation/user/basic-notation.itely: add bug
1498 warning about ties and octavation/clef.
1500 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1502 * VERSION (PACKAGE_NAME): release 2.9.18
1504 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1506 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1507 figure out midi file names right here.
1509 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1511 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1513 * scm/backend-library.scm: option naming: gs-font-load*s*
1515 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1518 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1520 * scm/define-music-types.scm (music-descriptions): remove
1521 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1522 Music::to_event doesn't complain.
1524 * lily/accidental-placement.cc (ape_compare):
1525 * lily/semi-tie.cc (compare):
1526 * lily/note-column.cc (shift_compare): replace by XXX_less
1528 * lily/tie-formatting-problem.cc (set_chord_outline):
1529 * lily/tie-column.cc (calc_positioning_done):
1530 * lily/system.cc (post_processing)
1532 * lily/stem.cc (note_head_positions)
1533 (calc_positioning_done):
1534 * lily/spanner.cc (do_break_processing)
1535 (find_broken_piece):
1536 * lily/span-bar.cc (print):
1537 * lily/semi-tie-column.cc (calc_positioning_done):
1538 * lily/rest-collision.cc (calc_positioning_done):
1539 * lily/program-option.cc (get_help_string):
1540 * lily/note-collision.cc (get_clash_groups):
1541 * lily/new-fingering-engraver.cc (position_scripts):
1542 * lily/keyword.cc (Keyword_table):
1543 * lily/hara-kiri-group-spanner.cc (request_suicide):
1544 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1545 * lily/accidental-placement.cc (calc_positioning_done):
1547 * lily/beam.cc (get_beam_segments):
1548 * lily/grob-array.cc (remove_duplicates):
1551 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1552 ragged-last-bottom = ##f (test the new page breaker)
1554 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1556 * scm/define-context-properties.scm
1557 (all-internal-translation-properties): remove properties that
1558 were used to communicate page-turn stuff to the paper-column
1561 * lily/lily-guile.cc (robust_scm2string): new function
1563 * lily/paper-column-engraver.cc: Clean up page turn stuff
1565 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1566 instead of cluttering up paper-column-engraver.cc
1568 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1570 * scm/layout-page-dump.scm (scm): export utility function names,
1571 to allow user writing cutsom dumping functions.
1573 * scm/layout-page-layout.scm: export utility function names to
1574 enable custom page breaking function writing. Tabify.
1575 (line-next-space): use ?-suffix only for predicates
1576 (page-maximum-space-to-fill): new function. Return the space
1577 between first and bottom system of a page, to give to
1579 (space-systems): use a space-to-fill argument (for instance as
1580 computed by page-maximum-space-to-fill) instead of computing
1581 internaly this space with the page height. That way, the caller
1582 can adjust the space to use.
1583 (make-page-from-systems, walk-paths): compute space to fill before
1584 calling space-systems.
1586 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1588 * scm/script.scm (default-script-alist): set paddings for every
1589 type here, increase for portato mark.
1591 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1594 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1596 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1597 use spanner::set-spacing-rods
1599 * lily/note-column.cc: reformat.
1601 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1602 step positioning for note/rest combinations.
1604 * input/regression/rest-note-collision.ly: new file.
1606 * scm/define-grobs.scm (all-grob-descriptions): add
1609 * flower/include/std-vector.hh: switch off again.
1611 * VERSION (PATCH_LEVEL): bump to 2.9.18
1613 * flower/include/std-string.hh: idem.
1615 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1617 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1619 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1622 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1624 * Documentation/user/page.itely: update page breaking documentation
1626 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1628 * lily/note-collision.cc (calc_positioning_done): only access
1629 first head if available.
1631 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1633 * scm/framework-ps.scm (output-preview-framework): use new name.
1635 * lily/program-option.cc (internal_set_option): use new names.
1637 * Documentation/user/SConscript (lilypond_book_flags): update -d
1640 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1641 output into other programs): new variable names.
1643 * scm/lily.scm (define-scheme-options): uniformize var names.
1645 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1646 tuplets_ is non-empty before popping.
1648 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1650 * lily/spanner.cc (find_broken_piece):
1651 * lily/spacing-spanner.cc (get_columns):
1652 * lily/source-file.cc (get_line):
1653 * lily/simple-spacer.cc (get_column_description):
1654 * lily/keyword.cc (lookup):
1655 use the new binary search.
1657 * flower/include/std-vector.hh: replace binary_search with
1658 a more STL-like version
1660 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1662 * lily/tie-performer.cc: remove unused last_event_ property.
1663 (class Tie_performer): add now_tied_heads_ property for
1664 partially-tied heads.
1665 (acknowledge_audio_element): when adding an Audio_note, put the
1666 note in now_tied_heads_ if the audio note is partially tied.
1667 (stop_translation_timestep): always include entries in
1668 now_tied_heads_ in heads_to_tie_.
1670 * lily/drum-note-performer.cc (process_music): look for tie-events
1671 in the articulations; pass to Audio_note constructor.
1673 * lily/note-performer.cc (process_music): look for tie-events in
1674 the articulations; pass to Audio_note constructor.
1676 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1679 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1680 include initializer in constructor.
1682 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1684 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1685 unless they are breakable. This fixes discrepancies between the forces
1686 calculated here and the forces calculated in get_line_configuration.
1688 * lily/grob.cc (pure_relative_y_coordinate): fix some
1689 mis-estimation that was happening with piano staves.
1691 * lily/constrained-breaking.cc (resize): don't choke if we get a
1692 measure that won't fit on a line.
1693 (combine_demerits): don't consider uniformity when ragged
1695 * lily/page-spacing.cc (solve): why the f* were there two of these?
1696 (calc_subproblem): properly handle the case where a system is taller
1699 * lily/system.cc (get_paper_system): ensure that all the permissions
1700 and penalties are passed to the paper systems.
1702 * lily/page-breaking.cc (create_system_list): support system-count.
1704 * scm/define-grobs.scm (pure-print-callbacks): add
1705 ly:script-interface::print
1707 * lily/page-spacing.cc (min_page_count): fix calculation of min
1708 pages if we are ragged and there are non-zero springs.
1710 * scm/layout-page-layout.scm: if the pure-height estimates are under
1711 the real height, allow space-systems to ignore padding if it is
1712 needed in order to fit the systems on one page
1714 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1716 (solve): fix performance problem. Make sure we always get at least
1719 * lily/page-breaking.cc (make_pages): include write-page-breaks
1722 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1724 * scm/define-grobs.scm: add the new slur-callback
1725 fix pure-relevant to not exclude grobs whose extent is already
1728 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1731 * lily/slur.cc (pure_height): new callback to estimate the height
1734 2006-09-02 Graham Percival <gpermus@gmail.com>
1736 * Documentation/user/invoking.itely: small update on
1737 MacOS X notes; thanks Trevor!
1739 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1741 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1743 * lily/lexer.ll: accept EOF in all states.
1745 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1747 * lily/source-file.cc (Source_file): always 0-terminate character
1748 array, to prevent Flex from barfing.
1750 * lily/global-context.cc (get_output): robustness: don't crash if
1751 no Score context found.
1753 * lily/include/book.hh (class Book): idem.
1755 * lily/include/context-def.hh (struct Context_def): idem.
1757 * lily/include/score.hh (class Score): don't derive from Input.
1759 * lily/book.cc (Book): add a copy ctor.
1761 * buildscripts/output-distance.py (FileLink.calc_distance): count
1762 orphans in distance too.
1764 * python/midi.c (midi_parse_track): robustness: don't read past
1767 * ly/performer-init.ly: add Control_track_performer, move
1768 Tempo_performer and Time_signature_performer to Score.
1770 * lily/score-performer.cc (acknowledge_audio_elements): override
1771 from base class: add to audio-columns
1773 * lily/control-track-performer.cc (add_text): new file: generate
1776 * lily/performance.cc: move output_header_track to
1777 Control_track_performer ()
1779 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1781 * lily/include/midi-item.hh (class Midi_channel_item): insert
1782 class into hierarchy, for items that can have a channel setting. Dehungarify.
1784 * lily/include/performer.hh (class Performer): remove
1785 play_element(); move functionality into announce/acknowledge.
1787 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1789 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1790 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1792 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1794 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1797 * lily/all-font-metrics.cc: remove TFM support.
1799 * lily/include/tfm.hh: remove TFM support, TFM reader.
1801 * lily/include/binary-source-file.hh: remove Binary_source_file.
1803 2006-08-27 Graham Percival <gpermus@gmail.com>
1805 * Documentation/topdocs/NEWS.itely: add @c marker for
1806 stuff I've processed.
1808 * Documentation/user/ various: info from NEWS.
1810 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1812 * lily/paper-column-engraver.cc (finalize): Oops, this change
1813 should have gone in on 2006-08-23
1815 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1817 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1818 quotes to quote arguments. Fixes Windows problem.
1820 * python/lilylib.py (progress): idem
1822 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1824 * scripts/musicxml2ly.py: fix for importing
1825 minor key signatures from MusicXML. (Phillip Kirlin)
1827 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1829 * python/musicxml.py:
1830 (Attributes.get_key_signature): now correctly retrieves mode from
1833 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1835 * lily/parser.yy (output_def_body): take ownership of identifier
1838 * Documentation/user/advanced-notation.itely (Metronome marks):
1839 update use of \tempo in \midi.
1841 * VERSION: release 2.9.16
1843 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1845 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1848 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1850 * input/regression/tie-chord-partial.ly: clarify example.
1852 * scm/define-music-properties.scm (all-music-properties): remove
1855 * ly/music-functions-init.ly: remove \untied.
1857 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1858 stream events and music events.
1859 (stop_translation_timestep): search acknowledged heads for
1862 * input/regression/tie-chord-partial.ly: new file.
1864 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1865 for \char markup command.
1867 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1869 * scm/define-music-types.scm (music-descriptions): consistency:
1870 Use solo-{one,two}-event iso. solo-[12]-event.
1872 * lily/part-combine-engraver.cc (process_music):
1873 Use solo-{one,two}-event iso. solo-[12]-event.
1875 * ly/declarations-init.ly (partCombineListener): add Timing as
1878 * flower/std-string.cc (string_copy): use copy ()
1880 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1882 2006-08-24 Graham Percival <gpermus@gmail.com>
1884 * Documentation/user/changing-defaults.itely, global.itely,
1885 lilypond-book.itely, page.itely: minor changes from mailist.
1887 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1889 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1892 * scm/define-context-properties.scm
1893 (translator-property-description): robustness: detect type errors
1894 in property definitions.
1896 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1897 after getting it from SCM.
1899 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1902 * lily/include/performer.hh (class Performer): strip get_tempo()
1905 * lily/midi-def.cc: strip file.
1907 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1909 * lily/include/context-def.hh (struct Context_def): use
1910 VIRTUAL_COPY_CONSTRUCTOR().
1912 * lily/source-file.cc: smobification.
1914 * lily/include/source-file.hh (class Source_file): smobify
1915 Source_file. Trim redundant members.
1917 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1918 clones after creation. This plugs a huge memory leak.
1920 * python/convertrules.py (FatalConversionError.sub_tempo):
1921 complete rule for \midi{ \tempo }
1923 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1925 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1927 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1929 * input/regression/optimal-page-breaking-hstretch.ly: test for
1930 ragged-last-bottom also
1932 * lily/paper-column-engraver.cc (finalize): make the end of a score
1933 breakable by default. This is to balance out a change in behaviour
1934 of the page-turn-breaker which no longer makes the end of a score
1937 * lily/paper-book.cc (pages): set the systems_ once the pages are
1940 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1941 Page_breaking interface.
1943 * lily/page-breaking.cc (class Page_breaking): make the interface
1944 more consistent and provide abstractions for dealing with
1947 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1948 algorithm. Use the new interface to Page_breaking.
1950 * lily/page-spacing.cc: better support for ragged-bottom and
1953 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1955 * python/convertrules.py (conv): warning on \tempo{}
1957 * ly/performer-init.ly: set tempoWholesPerMinute.
1959 * ly/midi-init.ly: remove \midi
1961 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1964 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1965 tempoUnitDuration for determining what to print.
1967 * lily/lyric-extender.cc: typo.
1969 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1971 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1974 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1976 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1977 eps-pad-boxes is set.
1979 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1981 * THANKS: update sponsors.
1983 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1985 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1987 * input/regression/tie-chord-untied.ly: new file.
1989 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1991 * scm/define-music-properties.scm (all-music-properties): add
1994 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1996 (headertext_nopics): sanitize no-examples text.
1998 * scm/page.scm (make-page-stencil): don't rely on extents of
1999 page-stencil. This fixes spurious space around .EPS files produced
2000 with the EPS backend.
2002 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2004 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2006 * lily/hara-kiri-engraver.cc (process_music): remember
2007 keepAliveInterfaces after processing \set
2009 * lily/lyric-extender.cc (print): support left/right-padding for
2012 * scm/documentation-generate.scm (string-append): revert lilypond/
2015 2006-08-20 Graham Percival <gpermus@gmail.com>
2017 * Documentation/user/lilypond.tely: clarification to
2018 license presentation (not to actual license).
2020 * Documentation/user/basic-notation.itely,
2021 instrument-notation.itely: minor changes.
2023 * input/ {regression, test}/+.ly: clarification to
2024 text (you can click on examples). Thanks, Mats!
2026 * input/manual/bar-lines.ly: adds ||: repeats.
2028 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2030 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2032 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2034 * Documentation/user/lilypond.tely: strip lilypond/ from info
2035 links, rename to category LilyPond
2037 * lily/pango-font.cc (description_string): new function.
2039 * VERSION: release 2.9.15
2041 * lily/spacing-engraver.cc (stop_translation_timestep): use
2042 Dscho's fix for spacing spanner.
2044 * scm/define-music-types.scm (music-descriptions): use
2045 apply-output-event for ApplyOutputEvent
2047 * lily/output-property-engraver.cc (listen_apply_output): rename
2048 from listen_layout_instruction.
2050 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2053 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2055 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2056 commandline args with contains, split by \n.
2058 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2059 write snippet-names file, call with -dread-file-list. Fixes
2060 command limitations on 64-bit systems.
2062 * input/regression/stencil-color-rotation.ly: new file.
2064 * lily/include/translator.hh (struct Acknowledge_information):
2065 revert: don't use Protected_scm in global objects, as GUILE can't
2066 handle gc_unprotect from automated destructors on MacOS X.
2068 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2069 color, not the original stencil. Fixes combinations of
2070 color/transparency/rotation.
2072 * scripts/lilypond-book.py (main): add --formats=eps for
2075 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2076 crash if spacing_ is nonexistent.
2078 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2080 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2081 \catcode`\@=12 in the LaTeX output.
2083 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2085 * scm/define-music-types.scm (music-descriptions):
2086 use sustain-event iso. sustain-pedal-event.
2088 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2090 * scripts/convert-ly.py: honour the -n command-line switch
2092 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2094 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2095 break specification.
2097 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2099 * Documentation/user: convert-ly the user manual
2101 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2103 * stepmake/aclocal.m4: version check patch (thanks MWD)
2105 * ly/music-functions-init.ly: robustness. Don't crash if
2106 currentBarNumber is not a number.
2108 * VERSION (PATCH_LEVEL): bump.
2110 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2112 * stepmake/aclocal.m4: better version check; handle fooX.Y
2115 * ly/performer-init.ly: instrument name fixup.
2117 * input/manual/chord-names-jazz.ly (banterProperties):
2118 instrumentName update
2120 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2122 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2124 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2125 function. Use hash tables to check membership.
2127 * lily/general-scheme.cc (LY_DEFINE): new function.
2129 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2131 * lily/include/translator.hh (struct Acknowledge_information): add
2134 * ly/music-functions-init.ly: change name to BreathingEvent
2136 * input/regression/*.ly: apply it.
2138 * python/convertrules.py (conv): better instrumentName conversion
2141 * scm/define-music-types.scm (music-descriptions): add
2142 line-break-event to LineBreakEvent music
2144 * lily/music.cc (to_event): don't crash if music type not set.
2146 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2149 * lily/spacing-engraver.cc (stop_translation_timestep): set
2150 spacing for proportional notation too.
2152 * scm/translation-functions.scm (format-bass-figure): inspect
2155 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2157 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2159 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2161 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2163 * scm/layout-page-layout.scm (make-page-from-systems): new function
2164 (optimal-page-breaks): use the new page-breaking calling convention
2166 * scm/define-context-properties.scm (all-user-translation-properties):
2169 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2170 revokePageTurns functionality. If there is a special barline within
2171 the breakable region, break there instead of at the end of the region.
2173 * lily/paper-book.cc (pages): use the new page-breaking calling
2176 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2178 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2180 * scripts/lilypond-book.py: insert \sourcefileline command in
2181 output, so lilypond error messages refer to the spot in the
2182 original .lytex / .itely sourcefile.
2184 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2186 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2187 space to next column for distance to fixed col.
2189 * VERSION (PACKAGE_NAME): release 2.9.14
2191 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2194 * lily/accidental-engraver.cc (process_acknowledged): don't create
2195 accidental for trill span event. This fixes spurious accidentals
2198 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2200 * scm/define-grob-properties.scm (all-user-grob-properties):
2201 Clarify documentation of side-axis and direction. Thanks to Paul
2202 for the inspiration.
2204 * lily/bar-line.cc: Add documentation for "||:" also in the
2205 interface documentation.
2207 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2209 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2211 * lily/paper-column.cc (set_system): new function.
2213 * lily/spacing-engraver.cc (stop_translation_timestep): store
2214 SpacingSpanner refs in Paper_column.
2216 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2217 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2219 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2221 * lily/beam-engraver.cc (listen_beam): add method for
2222 Grace_beam_engraver too.
2224 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2226 * python/convertrules.py: Fix indentation bug that broke
2227 conversion of files older than 1.3.117.
2228 Fix escape error in the description for 2.9.6.
2230 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2232 * lily/*-engraver.cc: convert all try_music functions to listen_*
2235 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2236 enums to represent pedal types, and calculate more data statically.
2238 * scm/part-combiner.scm (recording-group-emulate): create a
2239 softcoded substitute for recording-group-engraver.cc.
2241 * lily/music.cc: make a common transpose function for events and
2244 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2245 ManualMelismaEvent, and obsoletes Melisma_translator.
2247 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2249 * input/test/instrument-name-align.ly: update version.
2251 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2253 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2254 Doc the --pdf flag to lilypond-book.
2256 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2258 * Documentation/topdocs/NEWS.tely (Top): add description.
2260 * input/regression/tuplet-full-length-note.ly: add file.
2262 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2263 always store axis group.
2265 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2267 * input/regression/instrument-switch.ly: new file.
2269 * lily/instrument-switch-engraver.cc (process_music): new file.
2271 * ly/engraver-init.ly: add Instrument_switch_engraver
2273 * ly/music-functions-init.ly: \instrumentSwitch
2275 * scm/define-context-properties.scm
2276 (all-user-translation-properties): add instrumentCueName
2278 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2280 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2282 * ly/music-functions-init.ly: music function \transposition.
2284 * lily/parser.yy (command_element): softcode \transposition.
2286 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2287 (process_music): oops.
2289 * lily/instrument-name-engraver.cc (start_spanner): new
2290 function. Create spanner when property changes.
2291 (stop_spanner): new function.
2293 * python/convertrules.py (conv): add rule.
2295 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2296 shortInstrumentName iso. instr.
2298 * scm/output-ps.scm (dashed-line): add phase argument to
2301 * lily/bar-line.cc (dashed_bar_line): new function.
2302 (compound_barline): support \bar "dashed".
2304 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2305 --output=DIR to DIR/BASE if it is a dir.
2307 * flower/file-name.cc (file_part): new function
2308 (dir_part): new function
2310 * lily/lily-parser-scheme.cc (LY_DEFINE):
2312 * DEDICATION: update
2314 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2316 * lily/instrument-name-engraver.cc: formatting.
2318 * python/convertrules.py (conv): bugfix for \epsfile.
2320 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2324 * lily/gourlay-breaking.cc: Oops, these should have been included
2327 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2329 * scripts/*.py (program_name): cleanup relocation snippets.
2331 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2333 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2335 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2336 page-breakable by default
2338 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2339 correctly calculated for a single-system page
2341 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2342 bigger than the second number
2344 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2345 acknowledge that we aren't satisfying constraints)
2347 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2350 * lily/grob.cc (pure_height): add minimum-Y-extent
2352 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2355 * lily/constrained-breaking.cc: convert code to use new Matrix class
2356 (get_best_solution): new function
2358 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2359 is a page with no systems
2361 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2363 * VERSION (PACKAGE_NAME): release 2.9.13
2365 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2368 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2370 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2372 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2375 * scm/define-grob-properties.scm (all-user-grob-properties):
2376 remove grace-space-factor.
2378 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2379 grace-spacing-interface
2380 (spacing-options-interface): add.
2382 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2384 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2386 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2387 GraceSpacing object.
2389 * lily/note-spacing.cc: fix prop list formatting
2391 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2392 beaming for grace notes too.
2394 * input/regression/spacing-grace.ly: update.
2396 * lily/grace-spacing-engraver.cc: new file.
2398 * lily/spacing-spanner.cc: add strict-grace-spacing.
2400 2006-07-20 Graham Percival <gpermus@gmail.com>
2402 * lily/parser.yy: compile fix.
2404 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2406 * scm/define-grobs.scm (all-grob-descriptions): typo.
2408 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2409 .eps extension from includegraphics.
2411 * scripts/lilypond-book.py (main): add support for --pdf.
2413 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2414 callback to compute common shortest duration.
2415 (set_springs): typo.
2417 * scm/define-grob-properties.scm (all-user-grob-properties): add
2418 strict-grace-spacing.
2420 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2421 support float_grace_columns_.
2423 * lily/spacing-options.cc (init_from_grob): new file.
2425 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2427 * input/regression/spacing-loose-grace.ly: new file.
2429 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2431 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2432 tupletFullLengthNote too. Choose right bound depending on value.
2434 * input/regression/tuplet-full-length-note.ly: new file.
2436 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2438 * lily/*-performer.cc: Converted try_music to listen_*
2440 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2441 as a stream-event internally. Introduce event_cause (), deprecate
2444 * scm/define-music-types.scm: Removed BusyPlayingEvent
2446 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2448 * Documentation/user/advanced-notation.itely (Font selection):
2449 Document how to get a list of available fonts using 'lilypond
2450 -dshow-available-fonts blabla'.
2452 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2454 * GNUmakefile.in: filter lily-XXX.pdf files.
2456 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2458 * scm/define-grob-properties.scm (all-internal-grob-properties):
2459 remove delta-pitch. Use delta-position everywhere.
2461 * scm/output-lib.scm (fall::print): use new order.
2463 * scm/output-ps.scm (path): reorder arguments.
2465 * scm/output-svg.scm (path): support for path primitive.
2467 * input/regression/bend-after.ly: new file.
2469 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2470 recipe for eps -> pdf conversion.
2472 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2474 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2477 2006-07-19 Graham Percival <gpermus@gmail.com>
2479 * input/manual/screech-boink.ly: moved to here.
2481 * input/screech-boink.ly: deleted.
2483 * scm/define-grob-properties.scm: clarify doc string.
2485 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2487 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2489 * scm/output-ps.scm (path): define path.
2491 * scm/define-stencil-commands.scm
2492 (ly:register-stencil-expression): add path.
2494 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2496 * ly/engraver-init.ly: add Fall_engraver
2498 * lily/parser.yy (music_function_event): allow musicfunction
2499 without music arg as music_function_event.
2501 * lily/grob-scheme.cc (LY_DEFINE):
2502 ly:grob-robust-relative-extent. New function.
2504 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2506 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2508 * scm/output-lib.scm (fall::print): new function
2510 * lily/fall-engraver.cc (stop_fall): new file.
2512 * ly/music-functions-init.ly: alphabetise.
2514 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2517 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2519 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2521 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2524 * lily/translator-group.cc (connect_to_context): non const error message.
2526 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2528 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2531 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2533 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2535 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2538 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2540 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2542 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2544 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2546 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2548 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2550 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2552 * scm/layout-page-layout.scm: Define module, tidy code, use more
2553 functions iso. a single big one.
2555 * scm/layout-page-dump.scm: move page dump functions used in two
2556 pass spacing to this file. Define module.
2558 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2561 * ly/paper-defaults.ly: use module layout-page-layout.
2563 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2565 * lily/music.cc: Revised MusicEvent event class. It now contains
2566 event data directly instead of encapsulating it in music. The
2567 previously used class is renamed to OldMusicEvent.
2569 * lily/stream-event.cc: Stream events are now probs.
2571 * lily/translator-group.cc, lily/translator.cc: Translators can
2572 now listen directly to stream events, by using macros
2573 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2575 * lily/arpeggio-engraver.cc: Converted to use new event system
2577 * THANKS: Corrected spelling mistake.
2579 2006-07-12 Graham Percival <gpermus@gmail.com>
2581 * Documentation/user/SConscript, make/lilypond-vars.make,
2582 input/GNUmakefile: doc build looks in input/manual instead
2585 * input/manual/ GNUmakefile, SConscript: build files for
2588 * input/test/ various: some files moved to input/manual/
2590 * Documentation/user/basic-notation.itely: small updates;
2591 thanks Kieren and Charles!
2593 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2595 * VERSION (PACKAGE_NAME): release 2.9.11
2597 * Documentation/topdocs/NEWS.tely (Top): update prop value
2599 * Documentation/user/basic-notation.itely (Tuplets): new property
2602 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2604 * python/convertrules.py (conv): tweaks.
2606 * VERSION (PATCH_LEVEL): bump version.
2608 * python/convertrules.py (conv): add rule for
2609 tupletNumberFormatFunction.
2611 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2612 tupletNumberFormatFunction.
2614 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2615 text through 'text callback.
2617 * lily/time-scaled-music-iterator.cc (construct_children): copy
2618 tweaks generated events.
2620 * scm/define-context-properties.scm
2621 (all-user-translation-properties): remove tupletNumberFormatFunction
2623 * lily/tuplet-engraver.cc (process_music): don't read
2624 tupletNumberFormatFunction
2626 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2629 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2631 * lily/global-context-scheme.cc: Separated ly:run-translator into
2634 * lily/score-engraver.cc, lily/score-performer.cc,
2635 scm/define-context-properties.scm: Make paper/midi output
2636 accessable as a context property.
2638 * lily/score-translator.cc, lily/score-context.cc: Removed.
2640 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2642 * scm/ps-to-png.scm (Module):
2643 * scm/framework-tex.scm (Module):
2644 * scm/framework-ps.scm (Module):
2645 * scm/backend-library.scm (Module):
2646 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2647 "dDEVICEHEIGHTPOINTS".
2649 2006-07-04 Graham Percival <gpermus@gmail.com>
2651 * Documentation/user/ various: general improvements to
2652 "working with lilypond files" section.
2654 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2656 * lily/sequential-iterator.cc: Change the default get_music_list
2657 to read elements-callback music property
2659 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2660 processing of multimeasure rests. Softcoded
2661 sequential-music-iterator.
2663 * lily/sequential-music-iterator.cc: Removed.
2665 2006-06-28 Graham Percival <gpermus@gmail.com>
2667 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2669 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2671 * lily/parser.yy: Wrap non-post-events in EventChords before
2672 assigning them to identifiers.
2674 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2676 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2677 gives correct vertical placement of \bar ":" in all staff
2678 sizes. Thanks Martial!
2680 2006-06-26 Graham Percival <gpermus@gmail.com>
2682 * Documentation/user/invoking.itely : minor update from mailist.
2684 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2686 * lily/ various: Introduce stream events of types Prepare,
2687 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2688 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2690 * lily/global-context*.cc: Time is now -inf before iteration
2693 * lily/include/context.hh: Removed unique_, init_
2695 * Documentation/topdocs/NEWS: Make the feathered beam example
2696 avoid triggering a bug.
2698 2006-06-24 Graham Percival <gpermus@gmail.com>
2700 * Documentation/user/ various: small additions from mailist.
2702 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2704 * ly/performer-init.ly: Add some missing links in the context
2705 hierarchy for MIDI output. There are probably some more missing!
2707 2006-06-21 Graham Percival <gpermus@gmail.com>
2709 * Documentation/user/ various: minor spelling fixes;
2710 thanks Dave Luttinen!
2712 * Documentation/user/ various: small clarifications;
2713 thanks Anthony Youngman!
2715 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2717 * po/fr.po: add \n appropriately.
2719 * lily/lexer.ll: remove ? from version-seen?
2721 2006-06-19 John Mandereau <john.mandereau@free.fr>
2723 * po/fr.po; update translation, by Jean-Charles Malahieude and
2726 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2728 * THANKS: add Markus Schneider.
2730 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2731 Staff_symbol_engraver
2733 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2734 replace staff_engraver
2736 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2739 * lily/staff-collecting-engraver.cc
2740 (acknowledge_end_staff_symbol): new function
2742 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2744 * lily/staff-collecting-engraver.cc
2745 (acknowledge_end_staff_symbol): new function.
2747 * lily/main.cc: switch on relocation by default.
2749 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2751 * lily/spacing-spanner.cc (musical_column_spacing): set
2752 compound_fixed_note_space to 0.0. Document why.
2754 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2755 range of inverse_hooke_
2756 (Simple_spacer): init completely.
2758 (get_line_configuration): don't use cols.resize(); it introduces
2761 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2763 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2765 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2766 try. Divide by beatlength.
2768 * input/regression/beaming-ternary-metrum.ly: update doc.
2769 add beatLength hack.
2771 * scm/music-functions.scm (make-time-signature-set): add
2772 standard-beat-grouping.
2774 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2776 * input/regression/tie-whole.ly: new file.
2778 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2779 cross center of note head in case of invisible stem.
2781 2006-06-16 Graham Percival <gpermus@gmail.com>
2783 * Documentation/user/ various: small fixes from mailist.
2785 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2787 * lily/breathing-sign.cc (offset_callback): idem.
2789 * lily/align-interface.cc (align_to_fixed_distance): remove
2792 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2795 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2797 * VERSION (PACKAGE_NAME): release 2.9.9
2799 * ly/lilypond-book-preamble.ly: add \version
2801 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2803 * scripts/lilypond-book.py (PREAMBLE_LY): include
2804 lilypond-book-preamble.ly
2806 * lily/stem.cc (get_beaming): return max of 0 and
2807 scm_ilength. Fixes slurring from/to beams.
2809 * ly/lilypond-book-preamble.ly: new file.
2811 * lily/slur.cc: add inspect-index feature.
2813 2006-06-13 Graham Percival <gpermus@gmail.com>
2815 * Documentation/user/tutorial.itely: trivial fix.
2817 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2819 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2820 all non-event music in the parser via MAKE_SYNTAX.
2822 * lily/parser-scheme.cc: Add ly:parser-error function
2824 * scm/paper.scm: fix typo
2826 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2830 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2833 * buildscripts/output-distance.py (test_compare_signatures):
2835 (read_signature_file): use new signature format.
2837 * scm/stencil.scm (write-system-signature): simpler signature
2840 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2843 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2844 stem_end_position, but estimate instead.
2846 * lily/tuplet-bracket.cc (calc_positions): look at
2847 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2848 brackets narrower than beams.
2850 * lily/lexer.ll: set version-seen? even if version is
2853 * lily/rest.cc (y_offset_callback): bugfix: decide position
2854 override based on scm_is_number(). Fixes \rest on center staff
2857 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2858 patterns for 16th triplets.
2860 2006-06-10 Graham Percival <gpermus@gmail.com>
2862 * Documentation/user/ page.itely, global.itely: editing
2865 * Documentation/user/ various: findex -> funindex.
2867 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2869 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2870 insert extra tuplet events.
2872 2006-06-10 Graham Percival <gpermus@gmail.com>
2874 * Documentation/user/programming-interfaces.itely: add
2877 * python/convertrules.py: add annotatefoo -> annotate-foo
2880 * Documentation/user/global.itely: start editing.
2882 * Documentation/user/page.itely: major editing, new spacing
2885 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2887 * scm/define-markup-commands.scm (wordwrap-markups): use
2888 output-def 'line-width if undefined.
2890 * HACKING: trim outdated info.
2892 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2894 * scm/define-grobs.scm (all-grob-descriptions): Add
2895 line-spanner-interface to all grobs that already have
2896 text-spanner-interface or dynamic-text-spanner-interface
2898 * scm/page.scm: Rename annotate{headers,systems,page}->
2901 * input/regression/page-spacing.ly,
2902 input/regression/page-layout-manual-position.ly: idem
2904 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2906 * lily/line-spanner.cc: cleanup property list.
2908 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2909 generator expressions (2.3 compat).
2911 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2913 * lily/vertical-align-engraver.cc: Make sure that the
2914 align{Above,Below}Context properties are included in the automatic
2917 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2919 * scm/paper-system.scm (paper-system-annotate): also annotate the
2920 estimated pure-Y-extent
2922 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2924 * lily/system.cc (break_into_pieces): set the estimated height
2925 of each child system
2927 * lily/stem.cc (pure_height): new pure-Y-extent callback
2929 * lily/staff-symbol-referencer.cc (callback): don't destroy
2930 the staff-position property
2932 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2933 consider_suicide into two functions
2935 * lily/constrained-breaking.cc (resize): use the new pure
2936 callbacks to estimate the height of a system
2938 * lily/axis-group-interface.cc (pure_group_height): new
2939 side-effect-free VerticalAxisGroup height-callback
2941 * lily/align-interface.cc (get_extents_aligned_translates):
2942 split align_elements_to_extents into two functions
2943 (get_pure_child_y_translation): new function
2945 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2947 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2949 * lily/paper-score.cc: cache break_indices and columns
2951 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2953 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2955 * lily/font-config.cc (init_fontconfig): do the init if
2956 cache_file, but don't look at cache_file.
2958 * input/regression/quote-tie.ly: new file.
2960 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2961 to Head_event_tuple, so we deal gracefully with ties on
2964 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2967 2006-06-08 Graham Percival <gpermus@gmail.com>
2969 * input/test/ smart-transpose.ly, reverse-music.ly:
2970 \applyMusic to music functions update, thanks Michael!
2972 2006-06-07 Graham Percival <gpermus@gmail.com>
2974 * input/test/ add-staccato.ly, add-text-script.ly,
2975 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2976 music functions update, thanks to Michael Meixner.
2978 * Documentation/user/music-glossary.tely: small fix
2981 * Documentation/user/ various: minor additions from mailist.
2983 * Documentation/user/lilypond.tely, basic-notation.itely:
2984 small test of @funindex. (works here)
2986 * input/test/font-table.ly: reduce size to partially
2987 de-ugly version in manual.
2989 * Documentation/user/page.itely: new file (split former
2990 "global issues" into "page settings" and "non-musical
2993 * Documentation/user/ various: fix @ref{}s to match
2994 new chapter names (above).
2996 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2998 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3000 2006-06-06 Graham Percival <gpermus@gmail.com>
3002 * Documentation/user/advanced-notation.itely: add example
3003 for segno/coda on barline.
3005 * tex/texinfo.tex: merge from upstream.
3007 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3009 * scripts/lilypond-book.py (process_snippets): Argument fix.
3012 * buildscripts/builder.py:
3015 * Documentation/user/SConscript: More SCons fixes.
3017 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3019 * lily/font-config.cc (init_fontconfig): Only initialize if
3020 global cache_file is found.
3022 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3024 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3027 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3029 * VERSION (PACKAGE_NAME): release 2.9.8
3031 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3032 function. Delay ledger modifying ledgered grobs to
3033 stop_translation_timestep(), to ensure that we're ledgering
3034 according to the new spanner.
3035 (acknowledge_staff_symbol): don't check for non-NULL
3036 staff_sym->get_bound()
3038 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3041 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3044 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3045 directly from srcdir/stepmake/aclocal.m4
3047 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3050 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3052 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3054 * lily/simple-spacer.cc (get_line_configuration): add
3055 keep-inside-line rods
3056 (struct Column_desc): add constructor
3057 (struct Rod_desc): add constructor
3058 (get_line_forces): check for forced page breaks here too
3060 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3061 support/elements cycles between InstrumentNames and AxisGroups
3063 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3065 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3067 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3068 make-txt-files target.
3070 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3071 make-txt-files target.
3073 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3075 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3078 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3080 * Documentation/user/instrument-notation.itely,
3081 input/regression/breathing-sign-ancient.ly,
3082 input/test/divisiones.ly: Removed redundant property settings for
3085 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3086 fix lyrics alignment problems. They are implemented now as scheme
3087 functions that add the appropriate unicode char to the first lyric
3088 event rather than adding a separate lyric event. Minor edit of
3091 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3093 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3094 pollute src dir with built .txt files, but install directly from
3095 Documentation/topdocs/out/
3097 * buildscripts/output-distance.py
3098 (ComparisonData.create_html_result_page): put version/directories
3101 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3104 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3105 Patch by Karl Hammar
3107 * buildscripts/readlink.py: add file.
3108 Patch by Karl Hammar
3110 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3112 * lily/tuplet-number.cc (print): prevent stencil from being
3115 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3117 * scm/stencil.scm (write-system-signature): explicitly
3118 -well, superfluously- close output port.
3120 * buildscripts/output-distance.py (main): oops. Add extra argument.
3122 2006-06-05 Graham Percival <gpermus@gmail.com>
3124 * Documentation/user/music-glossary.tely: clarified example
3125 from Francisco Vila, thanks!
3127 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3129 * input/regression/spacing-section.ly: new file.
3131 * lily/input.cc (programming_error): new function.
3133 * lily/spacing-engraver.cc (try_music): new function. Accept
3134 spacing-section-event
3136 * lily/spacing-spanner.cc (set_springs): take slices of all
3137 columns for spacing.
3139 * lily/include/paper-column.hh (class Paper_column): add
3140 Paper_column::compare.
3142 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3144 * scm/define-music-types.scm (music-descriptions): add
3147 * lily/music-iterator.cc (report_event): use programming_error for
3148 sending non-event error.
3150 * lily/input.cc (programming_error): new function
3152 * buildscripts/output-distance.py (main): use compare-XXX for
3154 (main): --threshold option, default at 0.30
3156 * output-distance.py (main): add --threshold option.
3158 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3160 * scm/paper-system.scm (paper-system-annotate): fix problem when
3161 annotating an empty system
3163 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3165 * GNUmakefile.in: reinstate old web tar/copying.
3167 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3169 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3170 nothing changes. (Erik S)
3172 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3175 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3177 * scm/define-markup-commands.scm (whiteout): do not force
3178 foreground color of argument markup to black.
3180 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3181 the left of the arrow, instead of below the arrow name, so that,
3182 when two little arrows are vertically stacked, their dimensions
3183 and name should not overlap. Add a color key parameter.
3185 * scm/paper-system.scm (paper-system-annotate): Annotate
3186 next-space+next-padding instead of next-space. Annotate space
3187 between next-padding and next-space+padding, respectively, and
3188 following system extent and refpoint-Y-extent. Use colors.
3190 * scm/page.scm (annotate-page): translate annotations slightly to
3193 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3195 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3196 fix for x-staff slurs. Thanks Joe!
3198 * buildscripts/output-distance.py
3199 (SystemLink.output_expression_change_count): keep track of changed
3200 details, and dump in details html page.
3202 * input/regression/figured-bass-staff.ly: add note about setting
3203 properties in Staff context.
3205 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3206 add slurs and ties to support too.
3208 * buildscripts/output-distance.py (main): set dest_dir
3209 argument. Add --max-count option.
3211 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3213 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3214 shortcuts for special unicode chars that are useful in chant
3215 notation. Revised exisiting and added new comments.
3217 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3219 * make/mutopia-rules.make: remove duplicate recipe.
3221 2006-06-02 Werner Lemberg <wl@gnu.org>
3223 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3224 Add support for U+0132 (IJ) and U+0133 (ij).
3226 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3228 * buildscripts/output-distance.py (FileLink): new class. collect
3229 info systems from one .ly file.
3230 (FileLink.link_files_for_html): further tweaks.
3232 2006-06-02 Graham Percival <gpermus@gmail.com>
3234 * tex/texinfo.tex: partial fix for @funindex.
3236 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3239 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3241 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3243 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3244 @example too. Backportme.
3246 2006-06-02 Graham Percival <gpermus@gmail.com>
3248 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3249 from Werner Lemberg.
3251 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3253 * Documentation/user/music-glossary.tely: additional spanish
3254 updates and a lyrics fix in an example.
3256 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3258 * scm/define-grob-properties.scm: Previous patch contained
3259 spurious line from another patch not yet committed. Fixed.
3261 * scm/define-grob-properties.scm: Add missing doc strings for
3264 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3266 * buildscripts/output-distance.py
3267 (ComparisonData.write_text_result_page): separate the scores, sort
3270 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3273 * buildscripts/output-distance.py (me_path): use argv[0] for
3275 (ComparisonData.img_cell): use colored borders.
3277 * scm/stencil.scm (write-system-signature): escape newlines too.
3278 (write-system-signature): use (1,-1) interval for empty interval
3280 2006-01-01 Graham Percival <gpermus@gmail.com>
3282 * Documentation/user/music-glossary.tely: Spanish updates
3283 from Francisco Vila.
3285 * Documentation/user/lilypond-book.itely: addition from
3288 * Documentation/user/ various: edits, small additions
3291 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3293 * GNUmakefile.in (tree-lib-prefix-current):
3294 (tree-share-prefix-current): Use version number in tree, add
3297 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3299 * GNUmakefile.in: write VERSION, again.
3301 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3302 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3304 * stepmake/aclocal.m4: robuster version detection.
3306 * buildscripts/output-distance.py
3307 (ComparisonData.create_html_result_page): copy only if file
3308 exists, fixup src paths.
3310 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3312 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3314 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3315 Another datarootdir reto.
3317 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3318 available. This should be moved to postinstall-lilypond-doc.
3320 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3322 * GNUmakefile.in: simplify local-WWW-post.
3323 remove -type l from find.
3325 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3326 fixes. Don't follow symlinks.
3327 (ComparisonData.create_html_result_page): remove previous results.
3328 insert ../python in path.
3330 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3332 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3334 * config.make.in (datadir): Add datarootdir to silence autoconf.
3336 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3338 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3340 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3342 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3343 slash beams too wide.
3345 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3347 * VERSION: release 2.9.7
3349 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3351 * lily/relocate.cc (read_relocation_dir): Do not blindly
3354 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3356 * lily/parser.yy: replace THIS by PARSER
3358 * Documentation/index.html.in: add link to test-results.html page.
3360 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3362 * scm/translation-functions.scm (format-bass-figure): translate
3363 digits over 10 to the left
3365 * scm/define-markup-commands.scm (translate-scaled): new markup.
3367 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3370 * ly/engraver-init.ly: add Figured_bass_engraver
3372 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3374 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3376 * lily/score-engraver.cc (announce_grob): only note START announces.
3378 * lily/include/engraver-group.hh (Translator_group):
3379 acknowledge_hash_table_ is now drul.
3381 * lily/engraver.cc (announce_end_grob): new method.
3383 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3385 * lily/translator-dispatch-list.cc (create): take start_end argument.
3387 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3388 acknowledge_static_array_ to drul
3390 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3392 * scm/define-grob-interfaces.scm
3393 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3395 * scm/define-grobs.scm (all-grob-descriptions): add
3396 BassFigureAlignmentPositioning
3398 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3399 number stays up to date. Backportme.
3401 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3403 * Documentation/user/basic-notation.itely (Bar lines): Document
3406 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3408 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3410 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3411 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3414 * Resurrect `scons lily' build.
3416 * SConstruct (symlink_tree): Bugfix: link
3417 music-drawing-routines.ps to file iso directory.
3419 * lily/SConscript: Remove kpath-guile from LIBS.
3421 * SConstruct (libdir_package_version): Typo.
3422 (configure): Comment-out fontforge for lack of fontforge.pc .
3423 Also add libdir* to environment.
3425 2006-05-30 Graham Percival <gpermus@gmail.com>
3427 * Documentation/user/ various: minor additions from mailist and
3430 2006-05-30 Paco <fravd@ya.com>
3432 * Documentation/user/music-glossary.tely: numerous corrections and
3433 some new translations.
3435 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3439 * buildscripts/output-distance.py
3440 (ComparisonData.create_html_result_page): new routine: summarise
3441 results in HTML page with images.
3442 (ComparisonData.create_text_result_page): create summary text files too.
3444 * GNUmakefile.in (web-ext): package .signature files too. They
3447 * scm/stencil.scm (write-system-signature): typo.
3449 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3451 * scm/stencil.scm (write-system-signature): better escaping.
3452 only write signature for music systems, not for markup systems.
3454 * scm/framework-ps.scm (output-framework): dump-signatures support
3457 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3459 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3460 for -dno-point-and-click
3462 * lily/grob.cc (get_print_stencil): don't read
3463 point_and_click_global to determine whether to set grob-cause.
3465 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3467 * buildscripts/output-distance.py (main): new function.
3468 (ComparisonData): new class.
3470 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3471 careful with generating new LedgerLineSpanners.
3473 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3475 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3476 context. This fixes double ledger lines in output.
3478 * lily/system.cc (get_paper_system): remove 3 layer limit.
3480 * buildscripts/output-distance.py (SystemLink.distance): new
3481 file. Compare signatures.
3483 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3485 * lily/grob-array.cc (remove_duplicates): rename from
3486 uniq(). Sort before calling uniq() so it actually works.
3488 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3490 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3491 \version from lilypond file snippet.
3492 (Lilypond_file_snippet.ly): oops. typo.
3493 (find_toplevel_snippets): urgh. again.
3495 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3496 prevent duplicated broken items in output.
3498 * scm/framework-eps.scm (output-classic-framework): only dump if
3499 dump-signatures is set.
3501 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3503 * scm/stencil.scm (write-system-signature): new routine: write
3504 python parseable signature of a separate paper system.
3507 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3509 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3513 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3515 * translator-group.cc: send music events to engravers in
3516 non-bottom contexts.
3518 * tuplet-engraver.cc: process tuplet brackets in correct order.
3520 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3522 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3523 arg 2 might point us to a new binary (patch by Karl Hammar)
3525 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3527 * VERSION (PACKAGE_NAME): release 2.9.6
3529 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3531 * Documentation/user/*.itely: 2nd
3532 attempt: replace funindex -> findex globally.
3534 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3536 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3537 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3539 * scm/define-music-display-methods.scm: display methods for
3540 breaks. Fix \applyOutput.
3542 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3544 * Documentation/user/macros.itexi: comment out funindex expansion.
3546 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3549 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3550 Karl Hammar. Backportme.
3552 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3554 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3556 * Documentation/user/programming-interface.itely (Running a
3557 function on all layout objects): idem.
3559 * Documentation/user/introduction.itely (Automated engraving):
3560 update \applyOutput syntax
3562 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3563 remove debugging hook.
3565 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3568 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3570 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3571 TEXI2DVI_FLAGS to texi2dvi invocation.
3573 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3575 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3576 works. More work is done by iterator now, and engraver has been
3577 very much simplified.
3579 * lily/translator-group.cc: try_music is now invoked through a
3582 * lily/*-iterator.cc: Massive cleanups. Junked
3583 try_music_in_children globally. Renamed try_music to report_event,
3584 and made that method descend to a bottom context automatically.
3586 * lily/event-iterator.cc: New file.
3588 * lily/output-property-iterator.cc,
3589 lily/old-lyric-combine-music-iterator.cc: Removed.
3591 * python/convert-rules.py: Modified the syntax for \applyOutput.
3593 2006-05-23 Graham Percival <gpermus@gmail.com>
3595 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3598 * Documentation/user/ various: stuff that might have helped
3599 to fix the pdf creation, plus some minor doc additions.
3601 * Documentation/user/changing-defaults.itely: remove @b from
3602 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3604 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3606 * lily/beaming-pattern.cc (beamify): deal with negative start
3607 moments for beaming patterns.
3609 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3611 * lily/beaming-info.cc (beamify): new function: read beatLength
3612 and beatGrouping from context.
3614 * input/regression/beam-beat-grouping.ly (Module): new file.
3616 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3618 * lily/beam.cc (get_beam_segments): generate events for
3619 max_connect_ case too.
3620 (get_beam_segments): read Stem::max-beam-connect.
3622 * input/regression/beam-single-stem.ly: new file.
3624 * lily/stem.cc (set_beaming): use #f as signaling value for
3627 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3629 * lily/beam.cc (set_beaming): read clip-edges property.
3630 (calc_direction): don't suicide for single stem.
3632 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3633 argument, remove 1<<15 hack. Remove clip_edges()
3635 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3637 2006-05-21 Graham Percival <gpermus@gmail.com>
3639 * Documentation/user/basic-notation.itely: reorg.
3641 * Documentation/user/ various: minor fixes.
3643 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3645 * lily/stencil-expression.cc (register_stencil_head): opps, append
3646 to cdr of static SCM object.
3648 2006-05-19 Graham Percival <gpermus@gmail.com>
3650 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3651 update framework for command index. DOC WRITERS: use @funindex
3652 instead of @cindex @code{}.
3654 * Documentation/user/ various: replace @cindex @code{} => @funindex
3656 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3658 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3659 case positions is set manually.
3661 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3663 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3666 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3668 * Documentation/user/changing-defaults.itely (Contexts explained):
3669 use absolute dimension for @image.
3671 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3672 out image for illustration too.
3673 ($(outdir)/%.png): add more png <-> eps rules.
3675 2006-05-17 Graham Percival <gpermus@gmail.com>
3677 * Documentation/user/ various: remove trailing whitespace, cosmetic
3678 change to reduce changes produced by diff.
3680 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3682 * lily/main.cc (do_chroot_jail): correctness tweak.
3684 * python/lilylib.py (system): import subprocess in system () only.
3686 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3688 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3689 variable. Backportme.
3691 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3693 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3695 2006-05-17 Werner Lemberg <wl@gnu.org>
3697 * lily/lexer.ll (init_signature_has_table): Add
3698 `scm-scm-music-music'.
3700 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3701 (Generic_prefix_music_scm): Add rule for it.
3703 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3704 `quoted-transposition' property.
3706 * ly/music-functions-init.ly (transposedCueDuring): New function.
3708 * scm/define-music-properties.scm (all-music-properties): Updated.
3710 * Documenation/topdocs/NEWS.itely: Document it.
3712 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3714 * python/lilylib.py (system): move import subprocess to system()
3717 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3719 * VERSION (PATCH_LEVEL): release 2.9.5
3721 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3724 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3726 2006-05-16 Graham Percival <gpermus@gmail.com>
3728 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3730 * Documentation/user/ various: minor fixes.
3732 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3734 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3736 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3738 * Documentation/user/advanced-notation.itely (Instrument names):
3739 Modified obsolete instruction on how to move instrument names away
3740 from the staves. Hmm, at second thought the bug probably has been
3741 solved, so the full bug description should probably be removed.
3743 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3745 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3746 currentCommandColumn.
3748 * lily/hairpin.cc (print): also add padding for non-neighbor
3751 * scm/define-context-properties.scm
3752 (all-user-translation-properties): add hairpinToBarline
3754 * input/regression/hairpin-to-barline.ly: new file.
3756 * lily/context.cc (internal_send_stream_event): thinko fix.
3758 * lily/tie.cc (set_default_control_points): robustness fix.
3760 * python/musicxml.py (Part.interpret): don't complain about
3761 incomplete measures.
3763 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3764 new music if last_event_chord() returned None.
3766 * python/musicxml.py (Part.interpret): skip back over chord notes.
3768 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3770 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3771 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3772 lily/slash-repeat-engraver.cc,
3773 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3774 iterator sends PercentEvents
3776 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3777 rework tuplets: send start/stop events to engraver
3779 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3780 dispatchers event-source and events-below to Context
3782 2006-05-15 Graham Percival <gpermus@gmail.com>
3784 * Documentation/user/README.txt: update info for doc writers.
3786 * Documentation/user/programming-interface.itely: integrate
3787 Nicolas' fixes for chapter rewrite.
3789 * Documentation/user/ various: minor fixes.
3791 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3793 * lily/clef-engraver.cc: cleanup.
3795 * Documentation/user/GNUmakefile: dist context-example.eps too.
3797 * lily/key-engraver.cc (create_key): use
3798 explicitKeySignatureVisibility for cancellation too.
3800 * lily/font-config.cc (init_fontconfig): don't close file if
3803 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3805 * Documentation/topdocs/NEWS.tely: niente and rotation news
3807 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3809 * lily/include/stencil.hh
3810 * lily/stencil.cc (rotate): new function. Makes it possible
3811 to rotate a stencil around a given offset.
3813 * lily/grob.cc (get_print_stencil): add rotation support
3815 * lily/stencil-interpret.cc (interpret_stencil_expression):
3816 add rotation support
3818 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3820 * scm/define-grob-properties.scm: add 'rotation property
3822 * scm/define-markup-commands.scm: add rotate markup command
3824 * scm/output-ps.scm: add rotation support in PostScript backend
3826 * scm/output-svg.scm: add rotation support in SVG backend
3828 2006-05-13 Graham Percival <gpermus@gmail.com>
3830 * Documentation/user/music-glossary.itely: French correction.
3832 * Documentation/user/programming-interface.itely: major
3833 new docs, some reorg, some info from Nicolas.
3835 * Documentation/user/ various: small fixes.
3837 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3839 * Documentation/user/programming-interface.itely (Markup
3840 programmer interface): Remove duplicate text.
3842 2006-05-12 Graham Percival <gpermus@gmail.com>
3844 * Documentation/user/context-example.eps: new file.
3846 * Documentation/user/changing-defaults.itely: set up file to
3849 * Documentation/user/programming-interface.itely: changes
3852 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3854 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3856 2006-05-11 Graham Percival <gpermus@gmail.com>
3858 * Documentation/user/programming-interface.itely: first round of
3859 editing and merging emails from Nicolas.
3861 * Documentation/user/scheme-tutorial: minor edit.
3863 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3865 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3867 (Xml_node.message): use it.
3869 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3870 oops. Add duration argument.
3872 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3874 * lily/paper-column-engraver.cc (make_columns):
3875 * scm/define-grobs.scm: Revert my previous change and set the default
3876 in define-grobs.scm instead.
3878 2006-05-09 Graham Percival <gpermus@gmail.com>
3880 * Documentation/user/changing-defaults.itely: general editing,
3881 info about \set and \override.
3883 * Documentation/user/tweaking.itely, advanced-notation.itely:
3884 fixes from Dave Luttinen, thanks!
3886 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3888 * lily/paper-column-engraver.cc (make_columns): By default, a column
3889 needs to be breakable.
3891 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3893 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3895 (musicxml_time_to_lily): idem
3896 (musicxml_key_to_lily): idem
3897 (instrument_drumtype_dict): dict for supported drumtypes.
3898 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3899 moments and pending mm rests
3900 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3901 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3902 (musicxml_voice_to_lily_voice): add mode change.
3903 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3904 speed and less memory usage (factor 5 to 10).
3905 (convert): write -defs.ly and driver file separately so people
3906 can script their own part extraction.
3908 * python/musicxml.py (minidom_demarshal_node): new function:
3909 separate minidom handling.
3910 (lxml_demarshal_node): new function: support lxml.etree too.
3911 (Xml_node.message): new function: verbose error message, with XML
3912 path to offending node.
3913 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3914 (Part_list.generate_id_instrument_dict): new method: collect
3915 instrument names, to be able to set drum_type.
3916 (Part.interpret): handle underfull measures
3917 (Part.interpret): assign instrument names.
3919 * python/musicexp.py (Output_printer.close): new method
3920 (MusicWrapper.print_ly): new class: support other modes,
3922 (BarCheck.print_ly): new class. Support bar checks, with comments
3923 and fancy barchecks.
3924 (NoteEvent.__init__): also set drum_type for drum notes.
3925 (MultiMeasureRest.lisp_expression): dump mm rests.
3927 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3928 line-break-permission if forbidBreak is not set.
3930 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3932 * scm/define-context-properties.scm:
3933 * scm/define-grob-properties.scm:
3934 * scm/define-grobs.scm:
3935 * scm/define-music-display-methods.scm:
3936 * scm/define-music-properties.scm:
3937 * scm/define-music-types.scm:
3938 * scm/music-functions.scm:
3939 * ly/declarations-init.ly:
3940 * lily/include/constrained-breaking.hh:
3942 * lily/spaceable-grob.cc:
3943 * lily/simple-spacer.cc:
3944 * lily/paper-score.cc:
3945 * lily/paper-column.cc:
3946 * lily/paper-column-engraver.cc:
3948 * lily/gourlay-breaking.cc:
3949 * lily/constrained-breaking.cc:
3950 * python/convertrules.py:
3951 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3952 "page-break-penalty" and "line-break-permission".
3953 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3954 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3956 * lily/bar-engraver.cc:
3957 * lily/beam-engraver.cc:
3958 * lily/forbid-break-engraver.cc:
3959 * lily/ligature-engraver.cc:
3960 * lily/paper-column-engraver.cc:
3961 * lily/percent-repeat-engraver.cc:
3962 * lily/score-engraver.cc:
3963 * lily/score-engraver.hh:
3964 * lily/paper-column-engraver.hh:
3965 Inter-engraver communication regarding line breaks is done through context
3966 properties (Score.forbidBreak) instead of function calls.
3968 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3970 * VERSION (PACKAGE_NAME): release 2.9.4
3972 2006-05-08 Graham Percival <gpermus@gmail.com>
3974 * Documentation/user/working.itely: proofreading from Dave
3977 * Doucmentation/user/README.txt: updated with manual style info.
3979 * Documentation/user/ various: trim linewidth to 78 chars.
3981 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3983 * scm/define-grob-properties.scm (all-internal-grob-properties):
3984 remove chord-tremolo property.
3986 * lily/beam.cc (get_beam_segments): don't use stem position as
3987 base for broken ends.
3989 2006-05-06 Graham Percival <gpermus@gmail.com>
3991 * Documentation/user/putting.itely: proofreading from Dave
3994 * Documentation/user/ various: more reorg and clarifications.
3996 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3998 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4000 * ly/music-functions-init.ly: new function featherDurations
4002 * lily/beam.cc: read grow-direction for feathered beaming.
4004 * Documentation/topdocs/NEWS.tely (Top): typo.
4006 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4008 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4011 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4012 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4013 used by music streams.
4015 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4016 lily/stream-event.cc, lily/stream-event-scheme.cc,
4017 lily/listener.cc, lily/scheme-listener.cc,
4018 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4019 lily/include/stream-event.hh, lily/include/listener.hh,
4020 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4021 Created data structures for music streams.
4023 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4025 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4026 construction of a beam.
4029 * flower/include/std-vector.hh (default_compare): use only one comparison.
4031 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4032 (note-by-number): further attachment fixes.
4034 * scm/lily-library.scm (ordered-cons): new function.
4035 (interval-index): new function
4037 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4039 * lily/note-head.cc (get_stem_attachment): new function.
4041 * scm/define-markup-commands.scm (note-by-number): read 'style
4044 * input/regression/markup-note.ly: show note-head style option.
4046 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4049 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4051 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4053 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4055 * lily/include/constrained-breaking.hh: GCC 4 fix.
4057 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4059 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4060 Replace it with functions get_line_forces and get_line_configuration.
4061 (class Simple_spacer): Make data private.
4062 Rewrite compression algorithm to be faster and simpler.
4064 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4065 * lily/gourlay-breaking.cc (solve):
4066 * lily/constrained_breaking.cc (space_line):
4067 Change it to the new simple-spacer code.
4069 * lily/paper-score.cc (get_paper_systems):
4072 Delay breaking the systems until they are requested.
4073 (find_break_indices):
4074 Use vsize for indices.
4076 Move the "Calculating line breaks" message here.
4078 * lily/system.cc (pre_processing):
4079 Move the "Calculating line breaks" message away from here.
4080 (break_into_pieces):
4081 Allow multiple calls to this function in sequence (with touching-but-
4082 not-overlapping breakpoints).
4084 * lily/constrained-breaking.cc:
4085 Replace most of the get_XXXX functions with get_line_details.
4086 Only calculate the force for each line. Calculate configurations only
4087 for the lines we will actually use.
4088 Replace cols_ with lines_.
4090 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4092 * mf/GNUmakefile (depth): remove FC_FIND.
4094 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4096 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4098 * scm/framework-ps.scm (write-preamble): new function.
4099 (write-preamble): load mac fonts via fondu, even if gs-font-load
4102 2006-05-03 Werner Lemberg <wl@gnu.org>
4104 * mf/GNUmakefile (FC_FIND): Fix typo.
4106 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4108 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4110 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4112 * stepmake/aclocal.m4: run python-config for crosscompiling
4115 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4116 -f png for HTML, TEXINFO formats.
4118 * input/tutorial/lbook-html-test.html: new file.
4120 * lily/include/tie-formatting-problem.hh (class
4121 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4122 [column, direction]. This fixes laissez vibrer ties.
4124 * flower/include/tuple.hh (struct Tuple2): new file.
4126 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4127 $(FCMATCH), only if $(NCSB_DIR) not set.
4129 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4131 * config.make.in (DOCUMENTATION): set FCMATCH.
4133 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4135 2006-05-03 Graham Percival <gpermus@gmail.com>
4137 * Documentation/user/ various: final round of reorg.
4139 * Documentation/user/instrument-notation.itely: some more
4140 fixes from Eduardo, thanks!
4142 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4144 * VERSION (PACKAGE_NAME): release 2.9.3
4146 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4148 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4150 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4152 * scm/define-grob-properties.scm (all-user-grob-properties):
4153 Correct typo, thanks to Eduardo.
4155 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4157 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4159 * buildscripts/lilypond-words.py (F): indent fix.
4161 * input/regression/tie-arpeggio-collision.ly: new file.
4163 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4164 function: store outlines per column rank.
4166 * lily/include/tie-configuration.hh (class Tie_configuration): add
4167 column_ranks_ to specification and configuration, to distinguish
4168 between ties for different heads in arpegiated chords.
4170 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4172 * *.py: more 4 space indents.
4174 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4176 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4178 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4180 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4182 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4184 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4186 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4188 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4190 * python/convertrules.py (conv): indent 4 for python files.
4192 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4194 * Documentation/user/changing-defaults.itely (Creating contexts):
4195 Clarify \new semantics.
4197 2006-04-28 Graham Percival <gpermus@gmail.com>
4199 * Documentation/user/ various: major new sections in the
4200 Learning manual, slight reorg elsewhere.
4202 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4204 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4206 * scm/framework-ps.scm (output-framework): remove PageMedia
4208 2006-04-27 Graham Percival <gpermus@gmail.com>
4210 * Documentation/user/ tweaks.itely, working.itely: new
4211 files, being more advanced "learning manual" chapters.
4213 * Documentation/user/ tutorial, putting, lilypond: reorg.
4215 2006-04-26 Graham Percival <gpermus@gmail.com>
4217 * input/regression/lyric-combine-polyphonic.ly: fixed test
4218 (no more "can't find context `one'" error).
4220 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4222 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4224 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4226 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4228 * lily/relocate.cc (read_relocation_dir): new function.
4230 2006-04-26 Graham Percival <gpermus@gmail.com>
4232 * Documentation/user/instrument-notation.itely: a few more fixes
4233 from Eduardo, thanks!
4235 * Documentation/user/README.txt: new file; contains info on
4236 style that used to be in lilypond.tely.
4238 * Documentation/user/ various: first round of doc reorg.
4240 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4241 graphic; this probably causes problems on some pdf
4242 viewers, notably Adobe Acrobat.
4244 2006-04-24 Graham Percival <gpermus@gmail.com>
4246 * Documentation/user/instrument-notation.itely: many alterations
4247 to Vocal music, from Eduardo Viera.
4249 2006-04-23 Graham Percival <gpermus@gmail.com>
4251 * Documentation/user/instrument-notation.itely: fix \new
4252 instead of \context problem.
4254 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4256 * lily/relocate.cc (expand_environment_variables): new function.
4258 (read_relocation_file): id.
4260 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4262 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4264 * ly/engraver-init.ly: remove old comments from TabVoice
4266 2006-04-20 Graham Percival <gpermus@gmail.com>
4268 * Documentation/user/instrument-notation.itely: added Erlend's
4269 latest doc patch, thanks!
4271 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4273 * lily/include/slur.hh:
4275 * lily/phrasing-slur-engraver.cc:
4276 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4277 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4278 Slur_engraver:: and putting it in
4279 Slur::auxiliary_acknowledge_extra_object ().
4281 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4283 * lily/note-collision.cc: fix a comment
4285 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4287 * stepmake/bin/add-html-footer.py: fix footer position in
4288 generated html files: before </body> and </html> tags.
4290 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4292 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4293 Earlier successive `make' commands finally compiled ok.
4295 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4297 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4299 * lily/include/stem-tremolo.hh:
4300 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4304 * lily/include/lookup.hh: add rotated_box ()
4306 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4308 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4309 been generated. Fixes "can't get `--help'" bug after make clean.
4311 * THANKS: alphabetize contributors.
4313 2006-04-17 Graham Percival <gpermus@gmail.com>
4315 * Documentation/user/instrument-notation.itely: added Erlend's
4316 tabs and banjo doc patch. Thanks!
4318 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4320 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4322 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4324 * scm/output-lib.scm: add some more predefined string tunings.
4326 * Documentation/user/instrument-notation.itely: and doc them.
4328 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4330 * ly/engraver.ly: Remove obsolete comments.
4332 * ly/gregorian-init.ly: Define default layout block.
4334 * input/puer-fragment.ly: Updated and extended.
4336 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4338 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4339 pdf conversion behaviour.
4341 * flower/file-name.cc (dir_name)
4342 (get_working_directory): Move from relocate.cc.
4344 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4346 * lily/relocate.cc: Encapsulate sys/stat.h in
4349 2006-04-14 Graham Percival <gpermus@gmail.com>
4351 * Documentation/user/ various: small updates from Cameron
4352 and Juergen, thanks!
4354 * Documentation/user/ various: small updates of my own.
4356 * THANKS: 2.7 -> 2.8.
4358 2006-04-11 Graham Percival <gpermus@gmail.com>
4360 * scm/define-context-properties.scm: typo.
4362 * Documentation/user/ : many more small updates.
4364 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4366 * scm/define-music-types.scm: disposed "docme".
4368 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4370 * lily/hairpin.cc: make niente circles a bit smaller.
4372 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4374 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4375 get-pfa and get-*-fonts targets.
4377 2006-04-10 Graham Percival <gpermus@gmail.com>
4379 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4380 music-glossary, programming-interface: more minor fixes
4383 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4385 * scm/define-context-properties.scm: another old \property update.
4386 This time tested for compiling!
4388 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4390 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4392 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4394 * scm/define-context-properties.scm (all-user-translation-properties):
4395 * Documentation/user/global.itely (Page formatting): Compile fix.
4397 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4399 * Documentation/user/advanced-notation.itely (Polymetric
4400 notation): Update the example to use the "+" symbol and add link
4401 to input/test/compound-time.ly.
4403 2006-04-08 Graham Percival <gpermus@gmail.com>
4405 * scm/define-grob-properties.scm: clarify docs for #'direction.
4407 * scm/define-context-properties.scm: update old \property override.
4409 * Documentation/user/ advanced-notation, global, lilypond-book:
4410 more minor doc updates.
4412 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4414 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4416 * scm/backend-library.scm (search-gs): oops.
4418 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4420 * scripts/lilypond-book.py (output): use base, not filename for href.
4422 * scm/backend-library.scm: only look for gs.
4424 * scripts/lilypond-book.py (output): fix printfilename.
4426 * lily/parser.yy (music_function_musicless_prefix): fold together
4427 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4429 * lily/slur.cc (print): only set font-size if not set yet.
4431 * lily/slur-configuration.cc (add_score): improved layout of debug
4434 2006-04-05 David Feuer <David.Feuer@gmail.com>
4436 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4437 (draw_circle): Hopefully fixed regression.
4438 Improved documentation for several procedures.
4440 2006-03-04 Werner Lemberg <wl@gnu.org>
4442 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4444 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4446 * scripts/musicxml2ly.py (bindir): add dynamic
4449 2006-04-04 Graham Percival <gpermus@gmail.com>
4451 * Documentation/user/ basic-notation, advanced-notation, putting,
4452 instrument-notation, invoking, lilypond, THANKS: another ream of small
4453 fixes from the Doc Helpers.
4455 2006-04-03 David Feuer <David.Feuer@gmail.com>
4457 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4459 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4461 * Cleaned up interfaces between PostScript and Scheme, and moved
4462 computations from PostScript to Scheme:
4464 * music-drawing-routines.ps
4465 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4466 with stroke_and_fill throughout.
4467 (euclidean_length, print_letter, draw_box): Deleted unused
4468 procedures. If someone needs draw_box, implement it using
4469 draw_round_box; don't duplicate code.
4470 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4471 Refactored/cleaned up interfaces.
4474 * output-ps.scm: reordered arguments to PostScript functions to
4475 match new interfaces
4476 (glyph-string): Rewrote glyph-string.
4477 (grob-cause): Replaced string-append with format.
4478 (repeat-slash): Rewrote to do computation here.
4479 (round-filled-box): Rewrote to do computation here.
4481 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4483 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4485 * stepmake/stepmake/toplevel- targets.make: print help info about
4488 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4490 * input/regression/hairpin-circled.ly: new file
4492 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4494 * lily/hairpin.cc (print): add support for circled tip
4496 * scm/define-grob-properties.scm: add circled-tip parameter
4498 * scm/define-grobs.scm: init circled-tip to false
4500 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4502 * scm/music-functions.scm (quote-substitute): set
4505 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4507 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4510 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4512 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4514 2006-03-31 David Feuer <david.feuer@gmail.com>
4516 * scm/framework-ps.scm:
4518 * scm/output-ps.scm: glyph-string now produces smaller, more
4519 readable, and probably faster PostScript. Several findfont
4520 scalefont setfont instances changed to selectfont
4521 Hacked-up string-appends changed to formats.
4523 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4525 2006-03-30 Graham Percival <gpermus@gmail.com>
4527 * scm/lily-library.scm: make "no version" warning message more polite.
4529 * lily/music.cc: add double quotes to failed octave check.
4531 * Documentation/user/ advanced-notation, changing-defaults,
4532 instrument-notation, invoking, music-glossary: whole bunch of minor
4535 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4537 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4538 $(buildscriptdir) iso. depth.
4540 * VERSION (PACKAGE_NAME): release 2.9.1
4542 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4544 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4546 * VERSION (PATCH_LEVEL): bump version number.
4548 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4551 * lily/pango-font.cc (pango_item_string_stencil): use
4554 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4555 $(outdir)/emmentaler-%.svg): remove canary.
4557 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4558 glyphnames if we have a ttf font.
4560 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4562 * Documentation/user/advanced-notation.itely (Font selection):
4563 Corrected reference to the font-family-override.ly example.
4565 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4567 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4568 stem-tremolo object in the stem (or else the stem might not be
4571 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4573 * lily/ttf.cc (print_trailer): only print existing glyphs.
4575 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4577 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4578 position the tremolo based on the position of the notehead.
4580 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4581 notes and update the texidoc line with the new positioning rules.
4583 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4585 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4587 * scripts/lilypond-book.py (Module): set default for linewidth if
4590 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4592 * VERSION (PACKAGE_NAME): release 2.9.0.
4594 * input/regression/stem-tremolo-position.ly: new file.
4596 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4598 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4600 * lily/stem-tremolo.cc (print): position
4601 the tremolo depending only on the end of the stem
4602 and not on the notehead
4603 (raw_stencil): center, on the middle staff line, the
4604 flag that is closest to the end of the stem (previously
4606 (calc_width): add this callback to shorten a tremolo when
4607 it is beamed or it is stemup with a flag
4608 (style): add this callback to make a tremolo rectangular when
4609 it is beamed or it is stemup with a flag
4610 (rotated_box): this is like Lookup::beam but makes a rotated
4611 rectangle instead of a parallelogram
4613 * lily/stem.cc (calc_stem_info): make sure the stem
4614 is long enough to fit the tremolo
4615 (calc-length): reduce the length of tremolo stems since the
4616 tremolo code is now capable of better positioning
4618 * scm/define-grobs.scm: make calc_width the default beam-width
4619 callback for stem-tremolo and add the style callback
4621 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4623 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4626 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4628 * lily/ttf.cc (make_index_to_charcode_map): restore old
4631 2006-03-28 Werner Lemberg <wl@gnu.org>
4633 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4635 2006-03-28 Graham Percival <gpermus@gmail.com>
4637 * THANKS: update for 2.9, add section for Documentation helpers.
4639 * Documentation/topdocs/NEWS.tely: compile fix.
4641 * Documentation/user/ basic-notation, global, advanced-notation,
4642 examples.itely: minor fixes from mailist.
4644 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4646 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4649 * lily/ttf.cc (print_trailer): use it.
4651 * lily/pango-font.cc (get_unicode_name): new function.
4653 * lily/ttf.cc (make_index_to_charcode_map): move function from
4655 (print_trailer): substitute uniXXXX name if applicable.
4657 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4658 (pango_item_string_stencil): use it to generate uniXXXX names.
4660 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4661 note heads, for uniform widths in shape note output.
4662 (overdone_heads): hmm. remove them again.
4664 * scripts/lilypond-book.py (output): add links to filenames.
4666 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4668 * lily/note-collision.cc (get_clash_groups): only consider when
4669 Note_column::dir <> CENTER.
4671 * scripts/lilypond-book.py (get_option_parser): init output_name
4674 2006-03-24 Graham Percival <gpermus@gmail.com>
4676 * Documentation/topdocs/NEWS.tely: add @end itemize
4678 * Documentation/user/ global, advanced-notation: minor
4681 2006-03-23 Graham Percival <gpermus@gmail.com>
4683 * Documentation/user/ lilypond.tely, music-glossary,
4684 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4686 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4688 * mf/GNUmakefile: don't install .enc files.
4690 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4692 * VERSION (PATCH_LEVEL): bump to 2.9.0
4694 2006-03-22 Graham Percival <gpermus@gmail.com>
4696 * Documentation/user/advanced-notation.itely: minor fixes
4699 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4701 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4703 * branch lilypond_2_8
4705 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4707 * scripts/lilypond-book.py (samefile): new function, for windoze
4710 2006-03-21 Graham Percival <gpermus@gmail.com>
4712 * ly/engraver-init.ly: add info about StaffGroup.
4714 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4716 * input/regression/stem-direction-context.ly: idem.
4718 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4722 * input/regression/page-layout-twopass.ly: comment out \markup so
4725 * lily/instrument-name-engraver.cc (finalize): add to instrument
4726 name global System. This also fixes chopped instrument names, but
4727 doesn't crash when there are slurs/beams.
4729 * lily/slur-configuration.cc (add_score): disallow negative slur
4732 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4734 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4736 * lily/instrument-name-engraver.cc (process_music): kludge: add
4737 InstrumentName spanner to axis group of left bound. Fixes chopped
4738 off instrument names in EPS images.
4740 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4742 * scripts/abc2ly.py (option_parser): update to 2.7.40
4744 2006-03-20 Graham Percival <gpermus@gmail.com>
4746 * THANKS: move small doc contributors to SUGGESTIONS.
4748 * Documentation/user/ basic-notation, advanced-notation,
4749 global: small changes from mailist.
4751 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4753 * Documentation/user/advanced-notation.itely (Text marks): update
4754 for new rehearsalMarkAlignSymbol convention.
4756 * VERSION (PATCH_LEVEL): bump version.
4758 * input/test/instrument-name-align.ly: new file.
4760 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4762 * input/test/instrument-name-align.ly: new file. Document how to
4763 align instrument names.
4765 * lily/mark-engraver.cc: remove properties.
4767 * scm/define-context-properties.scm
4768 (all-user-translation-properties): remove align symbol properties
4769 for barnumber/reh. mark.
4771 * lily/break-align-interface.cc (self_align_callback): new
4772 interface, new function. Look at complete alignment. This handles
4773 tunable break alignments in case break-align-symbols are missing.
4775 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4777 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4779 * python/convertrules.py (conv): mark/bar number alignment rule.
4781 * lily/break-align-interface.cc (calc_positioning_done): also
4782 store offset from last visible break-alignment to its
4783 neighbor. This makes alignment on non-visible objects more reliable.
4785 * po/lilypond.pot (Module): ran po-replace.
4787 * input/regression/tie-single-manual.ly (Module): new file.
4789 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4790 look at has_manual_position_.
4791 (from_ties): set has_manual_position_ if tie has staff-position set.
4793 * lily/tuplet-bracket.cc (calc_positions): idem.
4795 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4798 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4800 * scm/define-markup-commands.scm (smallCaps): new markup command
4801 for turning a text to small caps using smaller font size and upper
4804 2006-03-17 Graham Percival <gpermus@gmail.com>
4806 * Documentation/user/ examples, instrument-notation,
4807 advnaced-notation: minor fixes from mailist.
4809 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4811 * Documentation/user/tutorial.itely (First steps): change example
4814 2006-03-17 Graham Percival <gpermus@gmail.com>
4816 * Documentation/user/ examples, advanced: minor changes from mailist.
4818 * THANKS: add Geoff Horton, for documentation stuff.
4820 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4822 * python/lilylib.py (system): revert have_select kludge.
4824 * Documentation/user/tutorial.itely (Commenting input files):
4825 update version numbers in doc.
4827 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4828 bound-padding to multi-measure-interface
4830 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4832 * input/test/engraver-example.ily: update version number.
4834 * VERSION (PACKAGE_NAME): release 2.7.39
4836 * lily/note-spacing.cc (get_spacing): heighten threshold where
4837 accidentals/arpeggios influence previous spacing fully.
4839 * lily/rest.cc (y_offset_callback): only use direction if
4840 staff-position wasn't set before.
4842 * lily/bar-number-engraver.cc: add support for
4843 barNumberAlignSymbol.
4844 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4846 * lily/pointer-group-interface.cc (set_ordered): new function.
4847 (add_unordered_grob): new function.
4849 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4850 to ordered, unless the opposite has been proved. This fixes
4851 random reordering of large object groups across linebreaks,
4854 * lily/main.cc (do_chroot_jail): printf format fix.
4856 * lily/tie-formatting-problem.cc (generate_configuration):
4857 multiply y-shift for dot with direction.
4859 * scm/define-markup-commands.scm (note-by-number): put (magstep
4860 size) in y-attach too.
4862 * Documentation/topdocs/NEWS.tely (Top): show override.
4864 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4865 direction for stems.
4867 2006-03-15 Graham Percival <gpermus@gmail.com>
4869 * Documentation/user/ changing-defaults, global: minor
4872 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4874 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4876 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4877 breakable items after uniformly stretched notes.
4879 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4880 outline with outer edge of note heads. This prevents infinity
4881 problems with tied whole notes.
4883 * scripts/lilypond-book.py (do_file): use os.popen
4885 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4887 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4889 * Documentation/user/invoking.itely: Add ragged-right to bug report
4892 2006-03-14 Graham Percival <gpermus@gmail.com>
4894 * Documentation/user/global.itely: small fix from mailist.
4896 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4898 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4899 file descriptor returned by tempfile.mkstemp() when writing
4900 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4903 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4905 * po/fi.po: newline bugfix.
4907 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4909 * scm/paper.scm (paper-alist): Rounding fixes.
4911 2006-03-13 Graham Percival <gpermus@gmail.com>
4913 * Documentation/user/ changing-defaults, instrument-notation,
4914 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4916 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4920 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4922 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4925 * python/lilylib.py (print_environment): move ps_page_count to
4928 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4930 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4932 * scm/framework-ps.scm (embed-document): new function. Use to
4935 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4937 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4939 * Documentation/user/instrument-notation.itely (Setting simple
4940 songs): Added \book{...} around the full example, so the separate
4941 markups are included in the printed example.
4943 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4945 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4948 * python/lilylib.py (system): rewrite system() using
4949 subprocess. Remove >& redirection trickery.
4951 2006-03-11 Graham Percival <gpermus@gmail.com>
4953 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4954 notation-appendices.itely: minor fixes from mailist.
4956 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4958 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4959 unsplit man also needs images.
4961 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4963 * VERSION (PACKAGE_NAME): 2.7.38 released.
4965 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4967 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4970 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4972 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4973 respects the Score.skipTypesetting property.
4975 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4977 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4978 Prolog. No %%EOF after CFF file.
4980 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4982 * lily/constrained-breaking.cc (get_max_systems): used to return a
4984 (combine_demerits): use pointers to reduce copying data
4985 (calc_subproblem): idem
4986 (get_page_penalty): add page turn penalties
4988 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4990 * Documentation/user/invoking.itely (Invoking lilypond): better
4991 explanation of -e usage.
4993 * lily/main.cc (main_with_guile): don't append to
4994 init_scheme_code_string
4996 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4998 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5000 * scripts/convert-ly.py (do_options): don't print help for
5003 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5004 @code and @example. Update from texinfo.tex from CVS.
5006 2006-03-08 Graham Percival <gpermus@gmail.com>
5008 * Documentation/user/scheme-tutorial.itely: clarifies distances
5009 measured in staff-spaces.
5011 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5013 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5014 consider[k] is true.
5016 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5018 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5019 consider columns that have originals. Unifies spacing for mm
5020 rests around line breaks.
5022 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5023 (set_text_rods): idem.
5024 (calculate_spacing_rods): new function: share code between
5025 set_text_rods and set_spacing_rods.
5026 (set_text_rods): take extents of bounds into account.
5028 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5030 * Documentation/user/basic-notation.itely (Writing music in
5031 parallel): don't use relative.
5033 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5035 * ly/music-functions-init.ly (Module): add shiftDurations
5037 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5039 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5041 * ly/engraver-init.ly: init vocalName to nil.
5043 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5045 * scm/music-functions.scm (music->make-music): bugfix,
5046 KeyChangeEvents are now handled correctly.
5048 * scripts/lilypond-book.py: Add --debug option.
5050 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5052 * python/lilylib.py: add tempfile.
5054 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5056 * VERSION (PACKAGE_NAME): release 2.7.37
5058 * python/lilylib.py (ps_page_count): remove make_ps_images().
5059 (ps_page_count): remove mkdir_p
5060 (system): remove cleanup_temp.
5061 (exit): remove lilypond_version_(check)
5062 (error_log): remove pseudo_filter_p
5067 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5070 * lily/accidental-engraver.cc (make_standard_accidental): only add
5071 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5073 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5074 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5075 Make incompatibilities.
5077 * scm/output-ps.scm (grob-cause): replace backslashes by /
5078 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5080 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5082 * cygwin/GNUmakefile: Install fixes.
5084 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5086 * lily/note-head.cc (head::get_balltype): Compile fix.
5088 * flower/file-name.cc (dos_to_posix): Flower string fix.
5090 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5092 * python/lilylib.py: pychecker cleanups.
5094 * scripts/lilypond-book.py
5095 (Lilypond_snippet.output_print_filename): pychecker cleanups
5097 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5099 * python/lilylib.py (underscore): remove identify() , warranty()
5101 * ps/music-drawing-routines.ps: change Border routine for GSView
5104 * lily/stem.cc (height): use quantize-positions. This triggers
5105 set_stem_lengths, so scripts on beamed stems are handled correctly.
5107 * lily/side-position-interface.cc (aligned_side): check if edges
5108 of script are inside staff. Fixes accent of edge of the staff.
5110 * input/regression/staccato-pos.ly: more examples.
5112 * stepmake/aclocal.m4 (depth): fix bashism.
5114 * lily/lyric-combine-music-iterator.cc: move from
5115 new-lyric-combine-iterator.cc
5116 (process): add pending_grace_lyric_ member to delay lyrics on
5119 * lily/system-start-text.cc (print): suicide if we don't have any
5120 elements. Fixes hara kiri'd instrument names.
5122 * scripts/mup2ly.py (Module): remove.
5124 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5126 * Documentation/user/global.itely (A single music expression):
5127 close @lilypond properly
5129 * lily/volta-bracket.cc (modify_edge_height): change from
5130 after_line_breaking_callback. Suicide last bracket if appropriate.
5132 * python/lilylib.py: strip getopt support
5134 * scripts/etf2ly.py (do_options): use optparse
5136 * scripts/midi2ly.py: optparse, strip lilylib copy.
5138 * scripts/abc2ly.py (voices): use optparse.
5140 * stepmake/stepmake/generic-vars.make: new function absdir.
5142 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5144 * scripts/lilypond-book.py (find_file): use global_options for
5147 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5150 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5152 * python/lilylib.py (get_global_option): ughness for extracting
5153 global options from lilylib.
5154 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5156 * scripts/lilypond-book.py (get_option_parser): use optparse for
5157 option handling. Put options in global_options variable.
5159 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5161 * Documentation/index.html.in: clarify.
5163 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5165 * scm/layout-page-layout.scm (write-page-breaks): add a
5166 music-system-heights property to the page layout output.
5168 * scm/page.scm (make-page-stencil): take footer into account when
5169 computing the 'space-left page property
5170 (annotate-space-left): take footer into account when annonating
5173 2006-02-28 Graham Percival <gpermus@gmail.com>
5175 * Documentation/user/ advanced-notation, global: more (final)
5176 docs for music expressions, removed special fermatas.
5178 2006-02-27 Graham Percival <gpermus@gmail.com>
5180 * Documentation/user/ basic-notation, global: minor changes
5183 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5185 * scm/framework-ps.scm:
5186 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5187 layer for inf? and nan? from framework-ps to lily-library.
5189 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5191 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5192 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5194 * buildscripts/substitute-encoding.py (Module): remove file.
5196 * mf/GNUmakefile: more PFA strippage.
5198 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5200 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5203 * scm/framework-ps.scm: remove font name munging.
5205 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5207 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5209 * scm/markup.scm (define-markup-command): change
5210 def-markup-command to define-markup-command
5212 * scm/music-functions.scm (define-music-function): change
5213 def-music-function to define-music-function.
5215 * python/convertrules.py (conv): rules for def-music-function
5216 and def-markup-commands
5218 * Documentation/user/programming-interface.itely,
5219 input/no-notation/display-lily-tests.ly,
5220 input/regression/lily-in-scheme.ly,
5221 input/regression/markup-user.ly,
5222 input/regression/music-function.ly, input/regression/tie-chord.ly,
5223 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5224 ly/gregorian-init.ly: use new macro names (define-music-function,
5225 define-markup-command).
5227 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5229 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5230 (output): add comments to lp-book latex output.
5232 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5235 2006-02-23 Graham Percival <gpermus@gmail.com>
5237 * Documentation/user/ tutorial, global: minor changes.
5239 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5241 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5242 blocks (for make 3.80)
5244 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5245 \notemode so that user should not have to explicitely type it.
5247 * scm/define-music-display-methods.scm: various
5248 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5251 * input/no-notation/display-lily-tests.ly: new tests for
5252 \applyOutput and \applyContext
5254 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5256 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5257 changed it slightly so that the number of systems returned by
5258 solve () will be the same as the last value passed to resize
5259 (). I've also added more documentation, removed casts, fixed style
5260 problems and put in some recovery if constraints aren't satisfied."
5262 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5264 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5265 for emacs < 22 compatibility.
5266 (count-rexp): Use it.
5267 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5268 substring juggling (Milan Zamazal).
5270 2006-02-23 Graham Percival <gpermus@gmail.com>
5272 * Documentation/user/ basic-notation, advanced-notation,
5273 global.itely, invoking.itely, tutorial,itely:
5274 minor fixes from mailist.
5276 * scm/define-markup-commands.scm: improve docs of \filled-box.
5278 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5280 * Documentation/index.html.in: changes concern the previous release.
5282 * input/regression/+.ly: cultivate typographical terminology.
5284 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5286 * scm/define-grob-interfaces.scm (parentheses-interface): add
5287 padding to parentheses-interface.
5289 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5290 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5292 * VERSION (PATCH_LEVEL): release 2.7.36
5294 * lily/slur.cc: add avoid-slur (ugh.)
5296 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5297 intersection gets smaller. This fixes slurs over extreme points.
5299 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5300 stems with neutral-direction set.
5302 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5304 * lily/open-type-font.cc (load_table): format error.
5306 * lily/change-iterator.cc (process): format fix.
5308 * flower/include/international.hh (_f): idem.
5310 * flower/include/std-string.hh: add format printf attribute.
5312 * scm/define-grobs.scm (all-grob-descriptions): height of all
5313 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5315 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5318 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5320 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5322 * input/regression/: upgraded syntax for some files.
5324 * THANKS: Add bughunters.
5326 2006-02-22 Graham Percival <gpermus@gmail.com>
5328 * Documentation/user/ invoking.itely, advanced-notation.itely,
5329 global.itely: long-awaited "let's make chapter 10 not suck"
5330 update. Rearrange chapter 10; now called "global issues",
5331 addresses file structure, etc. Some info from other files
5332 moved into global.itely.
5334 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5336 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5337 catch trill-span-event notes.
5339 * Documentation/user/examples.itely (Ancient notation templates): typo.
5342 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5344 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5346 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5348 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5350 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5351 froum Laissez_vibrer_engraver.
5353 * ly/declarations-init.ly (repeatTie): add \repeatTie
5355 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5357 * scm/define-grob-properties.scm (all-user-grob-properties): add
5358 head-direction property.
5360 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5361 from_lv_ties. Take head direction argument.
5363 * lily/semi-tie-column.cc: rename from
5364 laissez-vibrer-tie-column.cc. Rename class too.
5366 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5369 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5371 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5373 (find_breaks): idem.
5375 2006-02-21 Graham Percival <gpermus@gmail.com>
5377 * Documentation/user/advanced-notation.itely: fixed make-moment]
5380 * Documentation/user/basic-notation.itely: more clarification to
5383 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5385 * lily/include/constrained-breaking.hh (class
5386 Constrained_breaking): new file.
5388 * lily/constrained-breaking.cc (resize): new file.
5390 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5392 * Documentation/user/advanced-notation.itely (Clusters): insert
5395 * lily/tie-column.cc (calc_positioning_done): support for
5398 * lily/tie-formatting-problem.cc
5399 (generate_extremal_tie_variations): factor out.
5400 (score_ties_configuration): annotate all tie
5401 (print_ties_configuration): new routine.
5402 (generate_configuration): nudge extremal ties outside of the head
5404 (score_ties_configuration): oops. convert to staff-space before
5405 determining position symmetry.
5407 2006-02-20 Graham Percival <gpermus@gmail.com>
5409 * Documentation/user/*-notation.itely: misc minor editing,
5410 shifting doc sections around.
5412 * Documentation/user/*-notation-itely, global.itely,
5413 changing-defaults.itely: added new stuff from NEWS.
5415 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5419 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5421 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5422 lilypond --verbose for lp-book.
5424 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5425 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5427 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5428 $(buildscript-dir) iso. absolute depth.
5430 * buildscripts/genicon.py (dir): thinko.
5432 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5434 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5436 * scm/output-lib.scm: swap darkcyan/darkyellow
5438 * THANKS: Add bughunters.
5440 2006-02-19 Graham Percival <gpermus@gmail.com>
5442 * Documentation/user/programming-interfaces.itely: fixed example.
5444 * Documentation/user/instrument-notation.itely: fix @{ @}.
5446 * scm/script.scm: add avoid-slur for \open.
5448 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5450 * lily/tie-formatting-problem.cc (score_configuration): use
5451 sliding score for min-length.
5453 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5454 spaghetti for icons.
5456 * buildscripts/genicon.py (program_name): new file.
5458 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5460 (generate_configuration): for small ties, also look for collisions
5461 at Y + DIR*h + DELTA_Y.
5462 (get_variations): consider variation for dot positions too.
5464 * lily/side-position-interface.cc (aligned_side): take abs for
5465 quantized rounded position. Fixes tenuto below staff.
5467 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5468 markers when necessary.
5470 * lily/program-option.cc (internal_set_option): add
5471 strict_infinity_checking option.
5473 * scm/output-lib.scm (cyan): swap yellow and cyan.
5475 2006-02-19 Graham Percival <gpermus@gmail.com>
5477 * darwin.patch: trivial linenumber update.
5479 * Documentation/user/ {various}: `\context foo = named' changed
5480 to `\new foo = "name"' in docs.
5482 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5484 * scm/stencil.scm (annotate-y-interval): use it.
5486 * scm/lily-library.scm (interval-sane?): new function.
5488 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5491 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5494 * flower/include/std-vector.hh (iterof): add iterof macro.
5496 * lily/enclosing-bracket.cc (width): new function.
5498 * lily/align-interface.cc (align_elements_to_extents): reinstate
5501 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5503 * Documentation/index.html.in: fix spelling: thankyous.
5505 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5507 * lily/lyric-hyphen.cc: typo.
5509 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5511 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5512 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5515 * VERSION: release 2.7.35
5517 * lily/beam.cc (get_default_dir): oops. Take abs () for
5519 (get_default_dir): use extreme position criterion only in absence
5520 of forced stem directions.
5522 * VERSION (PATCH_LEVEL): bump VERSION.
5524 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5525 dependencies. Necessary for -jX builds.
5527 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5529 * lily/relocate.cc (setup_paths): Yet another const fix.
5531 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5533 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5535 * lily/relocate.cc (setup_paths): oops.
5537 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5539 * Documentation/index.html.in: order links: html before PDF.
5541 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5543 * lily/tie-column-format.cc (Module): remove.
5545 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5547 * lily/text-spanner.cc (print): idem.
5549 * lily/dynamic-text-spanner.cc (print): only print line if longer
5552 * lily/auto-change-iterator.cc (change_to): formatting.
5554 * lily/beam.cc (get_default_dir): take extreme note head as input
5557 * lily/tie.cc (get_default_dir): only look directions for visible
5560 * lily/side-position-interface.cc (aligned_side): oops. Don't
5561 mutiply with direction. This fixes quantized (staccato, tenuto)
5562 scripts below notes.
5564 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5565 direction. Fixes c-lyrics-center-align.ly
5567 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5569 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5572 * lily/std-string.cc:
5573 * lily/include/std-vector.hh (split_string): Move and rename from
5574 lily/include/misc.hh, lily/misc.cc. Update callers.
5576 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5578 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5580 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5582 * flower/test-file.cc: New file.
5584 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5587 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5589 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5591 * flower/include/file-storage.hh: remove file.
5593 * lily/include/midi-item.hh (class Midi_track): idem.
5595 * lily/include/source.hh (class Sources): idem.
5597 * lily/include/performance.hh (class Performance): use vector
5600 * flower/include/cons.hh (class Cons): remove file.
5602 * flower/include/flower-proto.hh: remove template cruft.
5604 * lily/include/font-metric.hh: use size_t not vsize for indices.
5606 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5609 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5611 * lily/include/paper-book.hh (class Paper_book):
5612 make get_system_specs() public.
5614 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5615 the force=10000 case if we don't have a current-best.
5617 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5620 * flower/include/flower-proto.hh: remove outdated templates.
5622 * scm/page.scm: use annotate-spacing
5624 2006-02-15 Graham Percival <gpermus@gmail.com>
5626 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5628 * THANKS: moved Erlend Aasland to contributors.
5630 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5632 * config.hh.in: remove HAVE_PANGO_16
5634 * lily/tuplet-bracket.cc (calc_positions): multiply with
5635 staff-space for beam case. This fixes tuplets+beams on scaled
5638 * config.hh.in: remove all Kpathsea related defines.
5640 * lily/dot-column.cc (side_position): reach stem via dots->
5641 head->stem. Inspect all stems for dot collisions.
5643 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5646 * lily/bar-number-engraver.cc (process_music): document function
5649 * lily/score.cc (default_rendering): add pscore, not systems
5652 * lily/paper-book.cc (get_system_specs): separate generation of
5655 * flower/include/std-vector.hh: don't include config.hh
5657 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5659 * flower/include/std-vector.hh: Better wrapper compatibility with
5662 * flower/include/flower-proto.hh: Remove cheap forward declaration
5665 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5667 2006-02-14 Graham Percival <gpermus@gmail.com>
5669 * Documentation/user/invoking.itely: add warning about command line.
5671 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5673 * lily/include/lily-proto.hh: add Prob, rm Page.
5675 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5677 * VERSION: release 2.7.34
5679 * lily/relocate.cc (framework_relocation): show canary if
5680 GHOSTSCRIPT_VERSION undefined.
5682 * GNUmakefile.in: remove $(VERSION) symlink.
5684 * lily/relocate.cc (setup_paths): add +
5686 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5688 * Documentation/index.html.in: specify sizes for all big HTML pages.
5690 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5692 * config.hh.in: remove @FRAMEWORKDIR@
5694 * lily/system-start-text.cc (get_stencil): new file: separate out
5695 system-start-delimiter text support.
5697 * input/**ly: replace \context with \new where appropriate.
5701 * lily/slur-scoring.cc (get_base_attachments): use
5702 robust_relative_extent. This fixes problems with empty paper-columns.
5704 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5706 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5708 * scm/define-music-properties.scm (all-music-properties):
5709 create-new property.
5711 * lily/context-specced-music-iterator.cc (construct_children):
5712 inspect 'create-new property iso. magical $uniqueContextId context
5715 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5717 * lily/context-key-manager.cc (Module): new file. Encapsulate
5718 object key generation.
5720 * lily/include/context-key-manager.hh (Module): new file.
5722 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5724 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5727 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5729 (reloc_b): excise --enable-framework-dir
5731 * lily/relocate.cc (framework_relocation): use getenv
5732 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5734 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5736 * flower/include/std-string.hh:
5737 * flower/include/std-vector.hh: Finish std:: conversion; move
5738 flower extensions from std:: namespace. Update users.
5740 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5741 their expansion to vector<*>. Update users.
5743 2006-02-10 Graham Percival <gpermus@gmail.com>
5745 * Documentation/user/invoking.itely: add example to File structure.
5747 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5748 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5750 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5752 * ly/paper-defaults.ly: typo.
5754 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5755 set_parent() for parentheses. This will make it show up in bbox
5758 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5759 ly:grob-common* functions.
5761 * lily/grob-scheme.cc (LY_DEFINE):
5762 ly:grob-common-refpoint-of-array: new function
5763 ly:grob-common-refpoint: new function
5764 ly:grob-relative-coordinate: new function
5766 * lily/instrument-name-engraver.cc (process_music): use
5767 Text_interface::is_markup(). This fixes \markup on instrument names.
5769 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5772 * lily/slur.cc (print): idem.
5774 * lily/tie.cc: add line-thickness for ties.
5776 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5778 * scm/output-svg.scm: Document diversion from GNU coding standards
5779 as a workaround for a bug in Microsoft Internet Explorer.
5781 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5783 * lily/instrument-name-engraver.cc (process_music): use
5784 is_markup() iso. is_string()
5786 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5788 * lily/percent-repeat-engraver.cc (process_music): only look at
5789 main_part_ for % repeats.
5791 * lily/stem-tremolo.cc (get_beam_translation): new function.
5792 (calc_slope): new function.
5793 (height): don't use real slope.
5795 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5797 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5798 new connect-to-neighbor, control-points and staff-padding
5799 properties to make ligature brackets showing up again.
5801 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5803 * VERSION: release 2.7.33
5805 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5808 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5809 remove applyOutput example.
5810 (Objects connected to the input): document \tweak, \parenthesize
5812 * lily/relocate.cc (prefix_relocation): allow "current"
5813 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5814 changing VERSION in a lily tree less painful.
5816 * input/regression/parenthesize.ly: new file.
5818 * scm/output-lib.scm (parenthesize-element): new function.
5820 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5822 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5824 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5825 cause: accidentals are caused by note heads, not note events.
5827 2006-02-08 Graham Percival <gpermus@gmail.com>
5829 * darwin.patch: small patch from Erlend, thanks!
5831 * Documentation/user/basic-notation.itely: add stem-neutral example.
5833 * Documentation/user/putting.itely: clarifications.
5835 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5837 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5838 note, add more guidelines to what should go into NEWS.
5840 * input/sakura-sakura.ly: document how to override font.
5842 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5844 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5846 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5848 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5850 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5851 convertrules. Add explicit grouping, needed for python2.2.
5853 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5855 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5857 2006-02-07 Graham Percival <gpermus@gmail.com>
5859 * Documentation/user/global.itely: fix line-width in (text) docs.
5861 * Documentation/user/lilypond-book.itely: same.
5863 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5865 * VERSION (PACKAGE_NAME): release 2.7.32
5867 * Documentation/topdocs/NEWS.tely (Top): document new variable
5870 * flower/include/array.icc (Message): remove file.
5872 * flower/include/std-vector.hh: make sure vsize and VPOS are
5873 defined for binary_search_bounds().
5875 * flower/std-string.cc (std): add to_string(long unsigned).
5877 * configure.in (gui_b): excise std_string option.
5878 (gui_b): excise std_vector option.
5880 * flower/string.cc (Module): excise flower array & string
5882 * flower/include/std-string.hh: excise flower string.
5884 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5886 * python/convertrules.py (lilypond_version_re_str): require
5887 only numbers and dots in \version string.
5889 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5891 * lily/system-start-delimiter.cc (print): allow style = text too.
5893 * lily/system-start-delimiter-engraver.cc
5894 (acknowledge_system_start_text): new function, also add add to
5895 support of system-start-text (instrument names). This fixes
5896 instrument names on piano staves.
5898 * lily/instrument-name-engraver.cc: rewrite. Use
5899 system-start-delimiter approach. This save memory and cpu.
5901 * scm/define-grobs.scm (all-grob-descriptions): remove
5902 instrument-name from break-alignment.
5904 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5906 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5908 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5911 * configure.in (std_vector): On by default.
5913 * lily/include/font-metric.hh:
5914 * lily/include/tfm-reader.hh:
5915 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5918 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5920 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5922 * VERSION (PACKAGE_NAME): 2.7.31
5924 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5925 EPS edge at 0, but take minimum with left-overshoot. This fixes
5926 cut off system start delims.
5928 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5929 hack: add to axis group if not added yet. This fixes hara kiri'd
5932 * lily/hara-kiri-group-spanner.cc
5933 (force_hara_kiri_in_y_parent_callback): fix signatures.
5935 * lily/hairpin.cc (print): check next hairpin to see whether or
5936 not to be continuing.
5938 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5940 * Remove trailing whitespace from makefiles.
5942 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5945 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5947 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5949 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5951 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5953 * configure.in: Use it.
5955 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5957 * scm/music-functions.scm (pitch-of-note): new function.
5959 * ly/music-functions-init.ly: add \octave and \addquote
5961 * lily/parser.yy (music_function_chord_body): softcode \octave.
5962 (lilypond_header): softcode \addquote
5964 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5966 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5967 array.hh, parray.hh at all. Getting ready to flip the
5970 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5972 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5975 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5977 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5979 * flower/include/array.hh: typo.
5981 2006-02-02 Graham Percival <gpermus@gmail.com>
5983 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5985 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5987 * flower/include/pqueue.hh: Derive from std::vector.
5989 * flower/include/parray.hh: Conform to std::vector interface.
5992 2006-02-02 Graham Percival <gpermus@gmail.com>
5994 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5996 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5998 * flower/file-path.cc (is_file): remove if 0 section.
6000 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6001 selecting afii61352.
6003 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6005 * flower/include/std-vector.hh (boundary): Oops, reverse.
6007 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6008 remove superfluous `d'.
6010 * flower/include/std-vector.hh (boundary, top): Detach from class.
6011 Remove empty vector shell.
6013 * flower/include/array.hh (reverse, swap): Detach from class.
6016 * flower/include/std-vector.hh
6017 * flower/include/array.hh (concat): Globally change to insert ().
6019 * flower/include/std-vector.hh
6020 * flower/include/parray.hh
6021 * flower/include/array.hh (elem, elem_ref): Globally replace by
6024 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6026 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6028 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6029 anticipate on identifier substitutions.
6031 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6033 * flower/include/std-vector.hh (insert): Remove, replace by
6034 std::vector interface. Update callers.
6036 * flower/include/array.icc (insert): Change signature to
6037 match std::vector interface.
6039 * flower/include/array.icc (vector_sort): Bugfix.
6041 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6043 * lily/parser.yy (output_def_head_with_mode_switch): new
6044 production. Result: dashes and underscores may be used in the
6047 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6049 * python/convertrules.py (conv): oops. One slash too much.
6051 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6053 * flower/include/std-vector.hh (sort): Remove, replace by
6054 ::vector_sort. Update callers.
6056 * flower/include/std-vector.hh (slice): Remove. Update callers.
6059 * flower/test-std.cc (vector_sort): New test.
6061 2006-02-01 Graham Percival <gpermus@gmail.com>
6063 * Documentation/user/putting.itely: fixes from Erik.
6065 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6067 * flower/test-std.cc: Add simple unit test for vector migration.
6069 * stepmake/stepmake/test*: Unit test support.
6071 * flower/include/std-vector.hh (del): Remove. Use erase (),
6074 * flower/include/array.hh (begin, end): Add.
6077 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6079 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6080 std::string not String.
6082 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6085 * lily/prob.cc (Prob): copy type_ too.
6087 * lily/lily-guile.cc (mangle_cxx_identifier): new
6088 function. Class_bla::foo_bar_[px] ->
6089 ly:class-bla::foo-bar[?!]. Changes throughout
6091 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6093 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6095 * lily/beam.cc (calc_direction): take dir from visible stem in
6098 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6100 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6101 Fix -1, >=0 boundary checks for unsigned vsize.
6103 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6104 loop for unsigned vsize.
6106 * configure.in (--enable-std-vector): New option.
6107 (--enable-std-string): On by default.
6109 * flower/include/std-vector.hh: New file. Enable switch to
6110 std::vector, update client code.
6112 2006-01-30 Graham Percival <gpermus@gmail.com>
6114 * scm/document-translation.scm: clarify "this context is also
6115 known as". Thanks, Werner!
6117 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6119 * Documentation/user/invoking.itely: small fix from Don.
6121 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6123 * scm/lily.scm (define-scheme-options): rename option
6124 preview-include-book-title to book-title-preview
6125 (define-scheme-options): move force-eps-font-include (from paper
6126 block) to eps-font-include -d option.
6128 * VERSION (PATCH_LEVEL): release 2.7.30
6130 * input/bach-schenker.ly (staffPiano): new file.
6132 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6134 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6137 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6139 * ps/lilyponddefs.ps: remove start-system, stop-system,
6140 start-page fluff. This saves putting { } code on the stack, fixing
6141 stack overflows when including EPS files.
6143 2006-01-29 Graham Percival <gpermus@gmail.com>
6145 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6147 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6149 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6151 2006-01-28 Graham Percival <gpermus@gmail.com>
6153 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6155 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6157 * input/mutopia/claop.py: Update.
6159 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6161 * input/regression/completion-heads.ly (texidoc): fix.
6163 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6165 * lily/tie-formatting-problem.cc
6166 (set_ties_config_standard_directions): use abs iso fabs for ints.
6168 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6170 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6171 little less than noteheight, to prevent overlaps in chords.
6173 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6174 head, and fudge stem-attachment.
6176 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6178 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6180 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6182 * lily/main.cc (main): Debugging aid: catch exceptions.
6184 * flower/std-string.cc (to_string): Robustification. Fixes midi
6185 output with std::string.
6187 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6189 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6191 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6193 * Fix -DSTRING_UTILS_INLINED.
6195 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6197 * VERSION (PATCH_LEVEL): release 2.7.29
6199 * lily/relocate.cc (setup_paths): mingw uses std string too.
6201 * lily/*.cc: various fixes for substr(ARG).
6203 * lily/sustain-pedal.cc (print):
6205 * flower/file-name.cc (slashify): use std strings.
6207 * flower/string-convert.cc: remove publib.h
6209 * scm/define-markup-commands.scm (verbatim-file): new markup
6210 command \verbatim-file
6212 * Documentation/topdocs/NEWS.tely: fixup URLs
6214 * input/regression/alignment-vertical-manual-setting.ly (Module):
6217 * lily/align-interface.cc (align_elements_to_extents): overwrite
6218 translations with numbers in alignment-offsets from left bound
6220 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6221 (page-translate-systems): new function: take into account Y-offset.
6223 * Documentation/topdocs/NEWS.tely (Top): document new features.
6225 * input/regression/page-layout-manual-position.ly (Module): new
6228 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6230 * flower/file-path.cc (path::parse_path): Oops.
6232 * Finish std::string interface. For now, use std:: marker
6233 throughout for easy s/r.
6235 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6237 * Documentation/user/putting.itely (Score is a single musical
6239 (Score is a single musical expression): more typos.
6241 * scm/page.scm (annotate-space-left): thinko.
6242 (annotate-page): more thinkos.
6244 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6246 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6247 for different \score blocks separately.
6248 (post-process-pages): put write-page-layout into paper block.
6250 * lily/output-def.cc (get_parser): new file.
6252 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6255 * lily/include/output-def.hh (class Output_def): add parser_ member.
6257 * input/regression/page-layout-twopass.ly (Module): new file.
6259 * scm/lily.scm: remove cpp hack.
6261 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6263 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6265 * GNUmakefile.in (c-clean): New target.
6267 * flower/include/std-string.hh: String/std::string compatibility:
6268 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6271 * flower/rational.cc:
6272 * flower/include/rational.hh:
6275 * flower/include/offset.hh:
6277 * flower/interval.cc:
6278 * flower/include/interval.hh:
6280 * flower/string-convert.cc:
6281 * flower/include/string-convert.hh: Use std::string [interface].
6284 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6286 * Documentation/index.html.in: clean up.
6288 2006-01-25 Graham Percival <gpermus@gmail.com>
6290 * Documentation/user/putting.itely: another new untested doc section.
6292 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6294 * scm/layout-page-layout.scm (write-page-breaks): write
6295 \spacingTweaks #ALIST. Handle grace timing.
6297 * scm/: more imports.
6299 * scm/page.scm (make-page): add footer/header.
6300 (annotate-space-left): revise: only take page argument.
6301 (layout->page-init): new function.
6303 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6304 version of the system/spacing/linebreak hack writing to the output
6306 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6309 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6312 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6314 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6316 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6318 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6319 handling to page.scm
6321 * lily/prob-scheme.cc (LY_DEFINE): new file.
6322 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6324 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6327 * lily/music.cc (derived_mark): derive Music from Prob.
6329 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6331 * lily/prob.cc (Module): Implement Prob (Property Object), object
6332 with shared and r/w property alists.
6334 * lily/include/prob.hh (Module): new file. Declare Prob.
6336 * flower/string.cc: remove is_empty().
6338 * flower/include/string.hh (class String): remove String:: qualifier.
6340 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6341 substitute appropriate functions.
6343 * flower/include/string.hh (class String): remove to_str0 and
6344 is_empty(). S&R everywhere.
6346 2006-01-23 Graham Percival <gpermus@gmail.com>
6348 * Documentation/user/basic-notation.itely: add hairpin
6349 after-linebreak tweak to commonprop.
6351 * Documentation/user/putting.itely: added two new sections.
6353 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6355 * flower/international.cc:
6356 * flower/include/international.hh:
6358 * flower/getopt-long.cc:
6359 * flower/include/getopt-long.hh: Use std::string [interface].
6362 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6364 * stepmake/stepmake/executable-rules.make: Add dependency on
6367 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6369 * flower/file-path.cc:
6370 * flower/include/file-path.hh: Use std::string [interface].
6373 * flower/direction.cc:
6374 * flower/axis.cc: Unused. Remove.
6376 * configure.in (--enable-std-string): New option.
6378 * flower/std-string.cc:
6379 * flower/include/std-string.hh: New file.
6381 * flower/file-name.cc[STD_STRING]:
6382 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6384 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6386 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6388 * scm/define-markup-commands.scm (with-dimensions):
6389 with-dimensions markup command.
6391 * input/test/font-table.ly: use it.
6393 * lily/open-type-font.cc (glyph_list): new function.
6395 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6397 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6399 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6401 * ly/music-functions-init.ly (parallelMusic): new music function
6402 for parallel music entry.
6404 * scm/define-music-properties.scm (all-music-properties): new
6405 'void music property
6407 * scm/music-functions.scm (ly:music-message): make public, to be
6408 used in music function definitions
6410 * scm/lily-library.scm (collect-music-for-book): discard music
6411 when the 'void property is set.
6413 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6415 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6417 * mf/GNUmakefile: idem.
6419 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6421 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6423 * Documentation/user/notation-appendices.itely (The Feta font):
6426 * input/test/font-table.ly: new file. Generate font table within lily.
6428 * Documentation/user/notation-appendices.itely (The Feta font):
6429 use new font-table.ly file.
6431 * stepmake/stepmake/install-out-targets.make
6432 (local-install-outfiles): only create directory if
6433 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6435 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6437 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6439 * VERSION (PACKAGE_NAME): release 2.7.28
6441 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6442 the right font from a Mac dfont.
6443 (write-preamble): don't forget directory, only look at files.
6445 This fixes problems with TTF files in dfonts that don't match
6446 their PostScript names.
6448 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6449 PS name from TTF font.
6451 * input/regression/tie-manual.ly: document new feature.
6453 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6455 * VERSION (MY_PATCH_LEVEL): bump to .28
6457 * Documentation/user/basic-notation.itely (Ties): add tie examples
6460 * lily/tie-formatting-problem.cc (score_ties_configuration):
6461 symmetry penalties for outer ties.
6463 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6465 * lily/tie-formatting-problem.cc (generate_configuration)
6466 (set_manual_tie_configuration): skip non-pair manual
6467 tie-configuration, so you can set individual ties as
6469 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6471 * input/regression/tie-chord.ly: use generateTiePattern to
6474 * lily/tie-formatting-problem.cc (peak_around): new function.
6475 (score_configuration): use sliding criterion for staff line collisions.
6476 (score_configuration): idem for dot collisions.
6477 (generate_configuration): use separate stem_gap for gap to stem.
6479 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6480 separate penalty factors for x and y distance.
6481 (struct Tie_details): separate penalties for tip and center line collisions.
6483 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6485 * lily/tie-formatting-problem.cc (generate_configuration): make
6486 large ties avoid stafflines in the horizontal section.
6487 (score_configuration): use softcoded penalties
6488 (score_aptitude): idem.
6490 * lily/tie-helper.cc (from_grob): softcode tie details
6492 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6494 * lily/staff-symbol-referencer.cc (on_line): rename from
6497 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6499 * ly/music-functions-init.ly: remove duplicate tag.
6501 * lily/include/*.hh: GCC 4.1 fixes.
6503 006-01-16 Erlend Aasland <erlenda@gmail.com>
6505 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6507 * scm/define-music-types.scm: fix bug in desc. string
6508 for OverrideProperty
6510 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6512 * scripts/lilypond-book.py: bugfix
6514 * scm/define-music-types.scm: fix typos.
6516 2006-01-14 Graham Percival <gpermus@gmail.com>
6518 * Documentation/user/ basic-notation.itely, global.itely,
6519 advanced-notation.itely, instrument-notation.itely: small
6520 additions (bugs and commonly tweaked properties).
6522 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6524 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6525 detection of mingw build.
6526 (MINGW_BUILD): opps.
6528 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6530 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6533 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6535 * scm/music-functions.scm (skip->rest): add skip->rest
6537 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6539 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6542 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6543 config dirs. Aids debugging.
6544 (display_config): also display config files.
6546 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6548 * VERSION: release 2.7.27
6550 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6551 for determining bar size.
6553 * lily/staff-symbol.cc (print): place lines at distance line-positions
6555 * scm/define-grob-properties.scm (all-user-grob-properties): add
6558 * lily/staff-symbol.cc (height): new function.
6560 * input/regression/staff-line-positions.ly: new file.
6562 2006-01-06 Graham Percival <gpermus@gmail.com>
6564 * input/test/add-staccato.ly: remove reference to old file.
6566 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6568 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6569 lilypond binary too.
6571 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6573 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6575 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6577 * scripts/midi2ly.py: Bugfix: Declare datadir.
6579 * make/ly-rules.make:
6580 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6581 that seems to be gone). Fixes make web.
6583 * The grand 2005-2006 replace.
6585 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6587 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6589 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6590 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6591 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6592 like -dgs-font-load.
6594 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6595 remove absolute path to lilypond binary.
6597 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6599 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6601 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6603 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6605 * mf/GNUmakefile: remove broken dvips map symlink.
6607 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6610 * configure.in: Cosmetic fixes.
6612 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6614 * Documentation/user/music-glossary.tely (Pitch names): Added
6615 Spanish pitch names and durations, thanks to Ernesto Gancedo
6617 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6619 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6620 init. Fixes verbose printing of .scm files.
6622 * stepmake/aclocal.m4: add spaces before - options.
6624 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6626 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6627 of path search in local block variable.
6629 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6631 * configure.in (NCSB_DIR): --enable-ncsb-dir
6632 (LINK_GXX_STATICALLY): denko.
6634 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6636 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6637 use locate to find c059033l.pfb.
6639 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6641 * lily/tie-formatting-problem.cc
6642 (problem::generate_base_chord_configuration): Use my_round (was
6645 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6646 do not invoke mbrtowc.
6648 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6650 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6652 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6654 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6656 * Documentation/user/invoking.itely (svg): revise.
6658 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6660 * lily/lexer.ll: use sourcefilename iso. renameinput.
6662 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6664 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6665 <PostScriptName>.ttf instead of c059XXXttf.
6667 * lily/program-option.cc (LY_DEFINE): special support for
6668 --verbose, so it works before option init too.
6670 * mf/GNUmakefile (local-install): oops.
6672 * lily/lyric-hyphen.cc (print): oops.
6674 * buildscripts/pfx2ttf.fontforge: new file.
6676 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6677 ($(outdir)/%.ttf): new rule.
6679 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6682 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6685 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6687 * VERSION: release 2.7.26
6689 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6691 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6693 * lily/font-config.cc (init_fontconfig): verbosity.
6695 * THANKS: add Muziekacademie Lede.
6697 * scripts/musicxml2ly.py (print_voice_definitions): new function
6698 (print_score_setup): new function
6699 (convert): read part definition to output staves properly.
6701 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6704 * python/musicexp.py (Output_printer.__init__): use _ in data
6706 (Output_printer.unformatted_output): new function: no formatting,
6708 (Duration.get_length): remove isinstance() checks for
6709 Output_printer everywhere.
6711 * input/regression/lyrics-bar.ly (texidoc): add
6712 Separating_line_group_engraver.
6714 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6716 * lily/relocate.cc (framework_relocation): New function,
6717 factored from set_relocation ().
6718 (prefix_relocation): Rename from set_relocation ().
6719 (setup_paths): Use it.
6721 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6723 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6724 numbers. Patch by Erlend Aasland.
6726 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6728 * lily/font-config.cc (init_fontconfig): print warning if cache
6729 file is not existant.
6731 * lily/main.cc: don't use #ifdef but #if
6733 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6735 * lily/grob-property.cc (internal_set_property): don't abort on
6736 calculation-in-progress.
6738 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6740 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6741 connect-to-neighbor property not connect-to-other
6743 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6744 (LY_DEFINE): oops. don't forget protection.
6746 * flower/parse-afm.cc (Module): strip AFM handling completely.
6748 * lily/stencil-expression.cc: idem.
6750 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6752 * lily/function-documentation.cc (ly_add_function_documentation):
6753 use static member iso. Protected_scm
6755 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6757 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6759 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6761 * lily/relocate.cc (set_env_dir): New function.
6762 (set_relocation): Use it to fix setting PANGO_PREFIX.
6764 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6766 * input/regression/stem-direction-context.ly: remove rest.
6768 * lily/melody-engraver.cc (process_music): restart for bar lines.
6769 (acknowledge_slur): restart for slurs.
6771 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6773 * Documentation/user/invoking.itely: describe how to view SVG
6774 output using Inkscape which replace embedded fonts with OTF fonts.
6776 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6778 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6780 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6782 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6785 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6787 * VERSION (PACKAGE_NAME): release 2.7.25
6789 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6791 * input/regression/stem-direction-context.ly: new file.
6793 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6795 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6798 * ly/engraver-init.ly: add Melody_engraver
6800 * lily/beam.cc (calc_direction): use default-direction
6801 iso. get_default_direction()
6803 * scm/define-grob-properties.scm (all-user-grob-properties): add
6804 default-direction property.
6806 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6808 * lily/stem.cc (calc_default_direction): remove
6809 Stem::get_default_direction, use default-direction with callback
6812 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6814 * lily/melody-engraver.cc: new file. Acknowledge stems for
6815 interpolated stem directions.
6817 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6819 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6821 * lily/slur-configuration.cc (fit_factor): more robust check for
6822 point in curve X-extent.
6824 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6825 (outside_slur_callback): check for 'outside avoidance.
6827 * lily/slur-configuration.cc (score_extra_encompass): don't use
6828 bound->column() == avoid->column() for checking extents, as this
6829 doesn't work for accidentals.
6831 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6832 DynamicText hardcoding.
6834 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6835 crash if bound stem is NULL
6837 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6840 2005-12-22 Graham Percival <gpermus@gmail.com>
6842 * scm/define-markup-commands.scm: typo. @code{\raise}
6845 * darwin.patch: now used again, includes a
6846 required patch from fink.
6848 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6850 * po/TODO: mention gtranslator along with kbabel.
6851 * po/fi.po: update translations.
6853 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6855 * lily/relocate.cc (setup_paths): Bugfix.
6857 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6859 * lily/slur-configuration.cc (score_extra_encompass): don't use
6860 "avoid" choice for avoid-slur.
6862 * stepmake/bin/install.py (dest): don't create existing dir.
6864 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6866 * stepmake/bin/install.py: Remove file before copying.
6869 * stepmake/aclocal.m4: Do not substitute INSTALL.
6871 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6873 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6874 depend on link-tree.
6876 * lily/relocate.cc (setup_paths): only check path for non-absolute
6877 dir without directory part.
6879 * flower/file-name.cc (is_absolute): new method.
6880 (is_absolute): check root_ too.
6882 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6884 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6885 relocation code. Oops, don't comment out too much.
6887 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6890 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6893 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6895 * .cvsignore: Add install-sh.
6897 * autogen.sh (srcdir): Typo.
6899 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6901 * autogen.sh (srcdir): urg. Touch install-sh.
6903 * stepmake/bin/install-sh (Module): remove.
6905 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6907 * lily/include/relocate.hh: new file.
6909 * lily/relocate.cc: new file. Contain relocation logic.
6911 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6912 (main): read LILYPOND_VERBOSE as the first thing.
6914 * stepmake/aclocal.m4: remove INSTALL variable.
6916 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6917 separate target for making font symlinks.
6918 (documentation-dir): use $(if $(findstring )) for switching off
6921 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6922 something if DOCUMENTATION is no.
6924 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6926 * VERSION: release 2.7.24
6928 * lily/script-column-engraver.cc (stop_translation_timestep):
6929 delay adding to script-column.
6931 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6933 * python/convertrules.py (conv): rule for number-visibility
6935 * lily/slur-configuration.cc (score_extra_encompass): different
6936 distance measure for avoid and inside avoidance.
6937 (score_extra_encompass): use 1/(distance+eps) as penalty.
6939 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6940 encompass objects for generating slur curves.
6942 * lily/slur.cc: use details iso. slur-details property.
6944 * input/regression/slur-tuplet.ly: new file.
6946 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6948 * flower/include/offset.hh (class Offset): new operator /=
6950 * lily/tuplet-number.cc (print): new file, new interface.
6952 * scm/define-grob-properties.scm (all-user-grob-properties):
6953 remove number-visibility property.
6955 * lily/tuplet-bracket.cc (calc_control_points): new function
6956 (calc_connect_to_neighbors): new function.
6957 (print): remove text handling for tuplet numberdef.
6959 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6962 * lily/lily-guile.cc (robust_scm2booldrul): new function
6964 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6966 * lily/tuplet-bracket.cc (calc_position_and_height): use
6967 staff-padding to control whether tuplet brackets are over staves.
6969 * lily/grob.cc (suicide): clear dim_caches_.
6971 * lily/dimension-cache.cc (clear): new function.
6973 * lily/grob.cc (extent): swap order of min-extent and extent
6974 calculations. This fixes hara kiri staves.
6976 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6978 * lily/main.cc: Nitpick: relocation is not based on path, but on
6979 directory (location).
6981 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6983 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6985 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6987 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6989 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6991 * stepmake/stepmake/generic-vars.make (Module): idem.
6993 * stepmake/stepmake/executable-targets.make (default): use it.
6995 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6997 * make/GNUmakefile: don't install make rules.
6999 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7001 (prepend_env_path): more verbosity.
7003 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7005 * GNUmakefile.in: add dir argument for find command.
7007 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7008 fixes weird line numbers for point & click.
7010 * lily/source-file.cc (get_counts): init line/column/char counts.
7012 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7014 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7016 2005-12-16 Graham Percival <gpermus@gmail.com>
7018 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7019 minor fixes from Fredric. Thanks!
7021 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7023 * ly/music-functions-init.ly: add \bar and \clef music function
7025 * lily/lily-lexer.cc: idem.
7027 * lily/parser.yy (FIXME): remove BAR and CLEF.
7029 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7031 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7033 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7034 function arguments too
7036 * lily/main.cc (set_relocation): new function.
7038 * scripts/musicxml2ly.py (convert): add \version
7040 * lily/tie.cc: remove get_default_attachments()
7042 * VERSION (PACKAGE_NAME): release 2.7.23
7044 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7045 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7047 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7049 * lily/tie-formatting-problem.cc (score_ties): new function
7050 (get_variations): new function. Try flipping dirs for collisions.
7051 (generate_optimal_chord_configuration): new function. 1-opt search
7052 for better configuration.
7054 * lily/tie-configuration.cc: new file.
7056 * lily/tie.cc: junk Tie::get_configuration()
7058 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7059 (score_ties_configuration): new function.
7060 (generate_ties_configuration): new function.
7061 (generate_base_chord_configuration): new function.
7062 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7063 (set_manual_tie_configuration): Move body from tie-column-format.cc
7065 * input/regression/tie-dot.ly: new file.
7067 * lily/tie-formatting-problem.cc (score_configuration): score
7070 * lily/tie-helper.cc (get_transformed_bezier): new function
7072 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7074 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7075 -undefined suppress iso. -framework Python
7077 * scm/define-grobs.scm (all-grob-descriptions): set
7078 springs-and-rods (thanks Joe Neeman!)
7080 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7082 * input/no-notation/display-lily-tests.ly (test):
7083 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7084 changed from \tag #'(a b) to \tag #'a \tag #'b
7086 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7088 * Documentation/topdocs/NEWS.tely: strip out-www.
7090 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7092 * config.make.in (AR): add AR and RANLIB
7094 * flower/libc-extension.cc: include cassert
7096 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7099 2005-12-11 Graham Percival <gpermus@gmail.com>
7101 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7103 * stepmake/stepmake/python-modules-vars.make: define
7104 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7106 * THANKS: added Johannes Schindelin.
7108 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7110 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7112 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7113 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7115 * lily/parser.yy: reorganize file layout.
7117 * ly/music-functions-init.ly: add tweak music function.
7119 * lily/grob-info.cc (ultimate_music_cause): new function:
7120 recursively lookup causes.
7122 * lily/parser.yy (chord_body_element): allow music functions for
7123 post-events, allow music functions for chord elements.
7125 * lily/font-config-scheme.cc (display_fontset): add cast.
7127 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7128 #'(a b) -> \tag #'a \tag #'b rule.
7130 * python/musicexp.py (Output_printer.dump_version): new function
7132 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7134 * lily/parser.yy (FIXME): remove \tag
7135 (FIXME): remove tag_music() function.
7137 * lily/lily-lexer.cc: remove \tag
7139 * ly/music-functions-init.ly: define music-function "tag"
7141 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7143 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7145 * VERSION (PATCH_LEVEL): release 2.7.22
7147 * input/regression/lyric-hyphen-retain.ly: renew.
7149 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7152 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7153 iso. minimum-length property for rods.
7155 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7156 LyricSpace item to keep lyrics spaced apart.
7158 * ly/engraver-init.ly: remove Separating_line_group_engraver
7160 * Documentation/user/music-glossary.tely: do setfilename before
7163 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7165 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7166 See xref documentation, for example.
7168 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7170 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7171 pending_skip iso. ly_voice[-1]
7172 (main): add if __main__ for debugging.
7174 * python/musicxml.py (Accidental.__init__): new class.
7176 * scripts/musicxml2ly.py (progress): new function
7177 (musicxml_key_to_lily): don't barf on modeless keys.
7178 (create_skip_music): new function.
7179 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7180 (musicxml_note_to_lily_main_event): new function.
7182 * python/musicexp.py (Music.__init__): add comment field.
7183 (NestedMusic.append): new routine.
7184 (SequentialMusic.print_ly): print comment.
7185 (ArpeggioEvent.ly_expression): new class
7186 (BeamEvent.ly_expression): new class
7187 (NoteEvent.__init__): support for cautionary/forced accs.
7189 * lily/lookup.cc (slur): normal order for array loop.
7191 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7194 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7197 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7199 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7201 * scripts/lilypond-book.py: Introduce option
7202 --preserve-line-breaks, for usage with srcltx
7204 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7206 * scm/output-lib.scm (print-circled-text-callback): draw circle
7207 around text using make-circle-markup.
7209 * Documentation/user/*: strip out-www from file names.
7211 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7213 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7214 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7216 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7218 * Documentation/user/GNUmakefile: idem.
7220 * Documentation/user/macros.itexi: strip out-www
7222 * python/rational.py: python 2.3 compat.
7224 * VERSION (PATCH_LEVEL): release 2.7.21
7226 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7227 option formatting, lilypond style.
7229 * python/musicexp.py: grab from Ikebana: a library for composing
7230 ly music expressions.
7231 (Output_printer): class for advanced .ly printing.
7234 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7235 convert to pythonesque structure.
7237 * python/rational.py: PD rational number class.
7239 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7241 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7243 * lily/part-combine-iterator.cc: Minor bugfix
7245 * THANKS: Update bughunters
7247 2005-12-02 Werner Lemberg <wl@gnu.org>
7249 * mf/README: Document process for proper mf2pt1 conversion.
7251 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7254 * mf/feta-harmonica.mf: Removed. Unused.
7256 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7258 * scripts/lilypond-book.py (do_file): fix thinkos.
7260 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7262 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7263 ($(outdir)/parser.cc):
7264 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7266 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7268 * ly/titling-init.ly (tagline): it should be a space between
7269 "Music engraving by LilyPond" and the version number.
7271 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7273 * VERSION (PACKAGE_NAME): release 2.7.20
7275 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7277 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7279 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7281 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7283 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7285 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7287 * kpath-guile/: remove directory
7289 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7290 file. Encapsulate kpathsea using commandline tools.
7292 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7295 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7297 * Documentation/user/advanced-notation.itely (Setting automatic
7298 beam behavior): Correct a few typos. Thanks to David Bobroff.
7300 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7301 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7303 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7305 * scripts/*.py: gmane address for bugs.
7307 2005-11-28 Pal Benko <benkop@freestart.hu>
7309 * make/ly-rules.make: add -f switch to mv
7311 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7313 * lily/bar-line.cc: interpret it
7315 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7317 * configure.in (--disable-documentation): New switch.
7319 * GNUmakefile.in: Use it.
7321 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7323 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7325 * scripts/lilypond-book.py (do_file): search chunks for
7328 * GNUmakefile.in: add copy step in between so we can lose the
7329 out-www directories.
7331 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7333 * lily/pango-font.cc (pango_item_string_stencil): put
7334 geometry.width into glyph-string too.
7336 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7338 * scm/define-music-display-methods.scm (RevertProperty):
7339 (OverrideProperty): Use grob-property-path property, a list of
7340 symbols, instead of grob-property, which used to be a single
7342 (BassFigureEvent): a figure can be a plain number, not necessarily a
7345 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7347 * VERSION: release 2.7.19
7349 * lily/figured-bass-engraver.cc (process_music): check
7350 figuredBassCenterContinuations first.
7352 * scm/translation-functions.scm (format-bass-figure): make double
7355 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7358 * lily/system-start-delimiter-engraver.cc: move from
7359 Nested_system_start_delimiter_engraver, rename
7360 Nested_system_start_delimiter_engraver ->
7361 System_start_delimiter_engraver.
7363 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7364 bracket type from hierarchy.
7366 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7368 * lily/rest.cc (y_offset_callback): read staff-position.
7370 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7371 mark after-line-breaking-callback as internal.
7373 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7375 2005-11-25 Werner Lemberg <wl@gnu.org>
7377 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7379 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7381 * stepmake/bin/add-html-footer.py (do_file): add google
7383 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7384 staff if first_start_ is true.
7386 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7388 * scripts/midi2ly.py (split_track): add __repr__ members.
7389 (track_first_item): only return Item if not None. This fixes a
7390 problem when dumping a track that starts with an empty channel.
7392 * python/midi.c: doc module.
7394 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7396 * Documentation/user/global.itely (Creating MIDI files): Fix
7397 compilation problem.
7399 2005-11-22 Graham Percival <gpermus@gmail.com>
7401 * Documentation/user/basic-notation.itely: clarify dynamic
7404 * Documentation/user/advanced-notation.itely: add unicode
7405 escape control example, whatever that is. :)
7407 * Documentation/user/global.itely: added "removing dynamics
7410 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7412 * VERSION (PATCH_LEVEL): release 2.7.18
7414 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7415 System_start_delimiter_engraver by
7416 Nested_system_start_delimiter_engraver.
7418 * lily/nested-system-start-delimiter-engraver.cc (struct
7419 Bracket_nesting_node): new class.
7420 (struct Bracket_nesting_group): new class
7421 (struct Bracket_nesting_staff): new class.
7422 (process_music): create hierarchy of grobs. This allows separate
7423 tuning of different SSDs.
7425 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7426 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7428 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7430 * lily/side-position-interface.cc (aligned_side): multiply
7433 * lily/script-engraver.cc (make_script_from_event): allow setting
7436 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7438 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7440 * scm/define-grobs.scm (all-grob-descriptions): new grob
7441 NestedSystemStartDelimiter.
7443 * input/regression/system-start-heavy-bar.ly: new file.
7445 * lily/nested-system-start-delimiter-engraver.cc: new file.
7447 * lily/nested-system-start-delimiter.cc: new file.
7449 * input/regression/system-start-nesting.ly: new file.
7451 * scm/define-grobs.scm (all-grob-descriptions): use X side
7452 positioning for positioning braces for nested contexts.
7454 * lily/system-start-delimiter.cc (print): don't divide extent by
7456 (print): use style iso. glyph.
7457 (staff_bracket): translate glyph inside routine already.
7459 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7461 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7464 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7466 * scm/define-context-properties.scm
7467 (all-user-translation-properties): rename figuredBassFormatter
7468 from newFiguredBassFormatter.
7470 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7472 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7474 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7476 * lily/beam.cc (calc_beaming): new function.
7477 (calc_shorten): new function.
7479 * THANKS: add Edward Neeman.
7481 * input/regression/accidental-clef-change.ly: new file.
7483 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7485 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7487 * lily/clef-engraver.cc (inspect_clef_properties): reset
7488 localKeySignature for clef changes.
7490 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7492 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7493 add dummy definition that works in Linux and add information in
7494 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7496 * Documentation/user/changing-defaults.itely (Modifying context
7497 plug-ins): Add index for \with.
7499 * Documentation/user/music-glossary.tely (dal segno): Updated
7500 example to version >=2.6.
7502 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7504 * Documentation/user/instrument-notation.itely (Printing chord
7505 names): Reorder \chordmode and \repeat in one example.
7507 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7509 * VERSION: release 2.7.17
7511 * Documentation/topdocs/NEWS.tely (Top): add note about
7514 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7515 new function. Search region of 3 positions for best tie.
7516 (score_configuration): new function.
7517 (score_aptitude): new function.
7518 (generate_configuration): new function.
7519 (get_configuration): new function.
7520 (Tie_formatting_problem): new function
7522 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7524 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7526 * THANKS: add Eduardo Vieira & Ralph Little
7528 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7531 * lily/include/tie-formatting-problem.hh (class
7532 Tie_formatting_problem): add Tie_details to
7533 Tie_formatting_problem. Update calling conventions.
7535 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7538 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7540 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7542 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7543 scm/define-context-properties.scm: Maintenance bugfix: make
7544 ligature brackets work again by removing obsolete ligature
7545 primitive callback push/pop.
7547 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7548 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7551 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7553 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7554 used and do not call it a path.
7555 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7557 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7559 * lily/include/tie-formatting-problem.hh (class
7560 Tie_formatting_problem): new file.
7562 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7564 * Documentation/misc/ChangeLog-2.3: new file.
7566 * lily/audio-staff.cc (output): degarianize.
7568 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7570 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7571 Unset PYTHONOPTIMIZE. Fixes install if set.
7573 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7575 * python/convertrules.py (conv): add warning about drums.
7577 * make/stepmake.make: include toplevel-version.make after config.make.
7579 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7580 also allow python2.4
7582 * config.make.in (configure-srcdir): remove GXX GCC vars.
7584 * stepmake/aclocal.m4: don't do non-srcdir build with
7585 symlinks. Use inclusion, so the src directory name can be changed.
7587 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7589 * make/mutopia-vars.make:
7590 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7593 2005-11-13 Werner Lemberg <wl@gnu.org>
7595 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7596 but the affected path. This ensures that the (overlapping) outlines
7597 have the same direction, which is a necessary prerequisite for
7598 FontForge's algorithm to remove overlaps.
7601 * mf/feta-haak.mf: Formatting.
7602 (draw_bracket): Slightly modify outline to avoid an unnecessary
7604 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7605 them from the affected paths.
7607 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7609 * mf/README: remove xpm / accordion notes.
7611 * lily/tie-column-format.cc (set_chord_outline): add dots into
7612 skyline extents. This fixes tie formatting if the left head has dots.
7614 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7615 space inside the staff.
7616 (get_configuration): shift another position if necessary in case
7619 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7621 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7622 buildscript-dir iso. $(depth)/buildscripts.
7624 * tex/GNUmakefile (local-uninstall): remove
7625 music-drawing-routines.ps juggling.
7627 * stepmake/stepmake/install-targets.make (local-install-files):
7628 prepend src-dir to install targets.
7630 * lily/system-start-delimiter-engraver.cc
7631 (acknowledge_system_start_delimiter): use
7632 add_offset_callback(). This fixes translation of nested
7635 * lily/grob-closure.cc (add_offset_callback): only encaps in
7636 simple_closure if it's a procedure.
7638 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7641 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7642 remove-empty where pertinent.
7644 2005-11-12 Graham Percival <gpermus@gmail.com>
7646 * Documentation/user/instrument-notation.itely: added
7647 Cameron Horsburgh's multiple stanzas docs. Thanks!
7649 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7652 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7653 make picture in builddir, not srcdir.
7655 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7657 * VERSION: release 2.7.16
7659 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7662 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7664 * Documentation/user/examples.itely (Piano templates): Minor
7665 modification to the Piano centered lyrics example.
7667 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7669 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7672 * Documentation/user/point-and-click.itely: simplify p&c
7673 instruction: don't configure firefox. Put lilypond-invoke-editor
7674 in front of the browser.
7676 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7677 (run-browser): new function.
7679 * lily/parser.yy (Lily_lexer): recognize Book
7681 * lily/book.cc (clone): new function
7683 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7685 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7687 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7688 Maintenance bugfix: reduce number of font related warnings by
7689 updating naming conventions for glyph-name.
7691 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7693 * scm/define-grobs.scm (all-grob-descriptions): add
7694 rhythmic-grob-interface to TabNoteHead.
7696 * scm/layout-beam.scm (check-quant-callbacks): remove
7699 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7701 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7702 alignment of centered divisiones.
7704 * scm/scripts.scm (articulations): Maintenance bugfix:
7705 follow-into-staff -> quantize-position.
7707 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7708 plica head in porrectus deminutus.
7710 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7712 * make/lilypond.fedora.spec.in (Group): add %clean section.
7714 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7715 less then 1/5th of total length.
7716 (print): use gap too. Fixes tupletUp-single-bracket.ly
7718 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7719 events into EventChord. This fixes textspanners on mm rests. Fixes
7722 * lily/side-position-interface.cc (get_axis): read side-axis
7723 (set_axis): set side-axis.
7725 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7726 properties everywhere.
7728 * lily/spacing-spanner.cc (breakable_column_spacing): add
7729 average-spacing-wishes. Take maximum if not set.
7730 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7732 * scm/define-grobs.scm (all-grob-descriptions): add
7733 average-spacing-wishes.
7735 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7736 offset callbacks. This fixes alignment for Fingering objects.
7738 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7739 space for key - timesig combination.
7741 * input/regression/script-stem-tremolo.ly (Module): new file.
7743 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7746 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7747 Fixes: c-tremolo-script.ly.
7749 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7751 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7753 * scm/define-grobs.scm (all-grob-descriptions): remove
7754 self-X-offset. Fixes alignment of octavate-8.
7756 * scripts/lilypond-book.py (datadir): look in
7757 LILYPONDPREFIX/share/lilypond/current/
7759 * GNUmakefile.in: symlink current to <VERSION>.
7761 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7763 * lily/main.cc: eps listed as a backend.
7765 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7767 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7769 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7771 * lily/include/score.hh (class Score): remove texts_ member.
7773 * lily/beam.cc (set_stem_lengths): force direction callback.
7774 (print): read quantized-positions, so we can force
7775 Beam::set_stem_lengths to occur.
7776 (rest_collision_callback): use common X parent.
7778 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7780 * flower/file-path.cc (find): Bugfix: Return name of file found.
7782 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7783 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7784 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7786 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7788 * flower/offset.cc: idem.
7790 * mf/*.mf: update email address.
7792 * lily/font-config-scheme.cc: new file.
7794 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7796 * lily/*: cs.uu.nl -> xs4all.nl
7798 * VERSION (PATCH_LEVEL): release 2.7.15
7800 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7803 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7805 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7807 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7809 * lily/staff-performer.cc (process_music): add audio
7810 elements. This makes MIDI instrument changes work once again.
7812 * lily/main.cc (LY_DEFINE): add gmane address.
7814 * lily/beam.cc: remove calc_positions()
7816 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7817 original_ in private scope.
7818 (class Grob): drop pscore_ pointer, change to output_def pointer.
7819 (class Grob): cleanup class definition.
7821 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7823 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7825 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7826 absolute. Better diagnostics.
7828 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7829 This makes lilypond run from the build directory using argv0
7830 relocation (without any --prefix or LILYPONDPREFIX setting).
7832 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7834 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7836 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7837 with simple-closure.
7839 * lily/self-aligment-interface.cc (set_align_self): new function
7840 (set_center_parent): new function.
7842 * lily/side-position-interface.cc (set_axis): new function.
7844 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7847 * scm/define-grob-properties.scm (all-user-grob-properties):
7848 remove [XY]-offset-callbacks add [YX]-offset
7850 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7852 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7853 entry for time signatures after breathing signs. Bug report by
7856 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7858 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7859 not absolute, make it absolute using PATH.
7861 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7863 * python/midi.c (initmidi): Fix type for mingw.
7865 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7867 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7869 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7872 * stepmake/aclocal.m4: Support python cross compiling.
7874 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7877 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7879 * scm/output-lib.scm (chain-grob-member-functions): replace
7882 * lily/chained-callback.cc (Module): remove file.
7884 * lily/rest-collision.cc (force_shift_callback_rest): change to
7887 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7889 * lily/grob.cc (y_parent_positioning): remove axis argument from
7890 parent_positioning callbacks.
7891 (Grob): junk init code
7892 (get_offset): use generic property callbacks for
7893 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7894 (axis_parent_positioning): new function
7895 (axis_offset_symbol): new function
7896 (chain_offset_callback): new function
7897 (add_offset_callback): new function
7899 * lily/beam.cc (rest_collision_callback): change signature; this
7900 is now a chained callback.
7902 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7903 callback administration.
7905 * lily/simple-closure.cc: new file. Smob type that allows "grob
7908 (ly:make-simple-closure FUNC A B)
7910 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7913 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7916 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7918 * lily/rest.cc (polyphonic_offset_callback): remove.
7920 * lily/script-engraver.cc (try_music): remove bool* argument.
7922 * scm/script.scm (default-script-alist): set quantize-position
7925 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7927 * lily/side-position-interface.cc (aligned_side): move staff
7928 position quantization from
7929 Side_position_interface::quantised_position().
7930 (quantised_position): remove
7932 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7934 * input/regression/beam-quant-standard.ly: reindent, set
7935 debug-beam-quanting to #t.
7937 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7938 10000 if this is a "hard" concave beam.
7940 * lily/beam.cc (calc_least_squares_positions): change from
7941 calc_least_squares_dy
7942 (set_stem_lengths): this is now a chained callback.
7944 * lily/context-property.cc (execute_general_pushpop_property):
7945 bugfix override with procedure should have effect.
7947 * scm/define-grob-properties.scm (all-internal-grob-properties):
7948 remove position-callbacks.
7950 * scm/define-grobs.scm (all-grob-descriptions): use
7951 ly:make-callback-chain for positions property.
7953 * scm/layout-beam.scm (check-quant-callbacks): return list of
7956 * scm/lily.scm (type-p-name-alist): add callback-chain
7958 * lily/lily-guile.cc (type_check_assignment): type check failure
7959 is warning not message.
7961 * lily/grob-property.cc (try_callback): walk callback chain if
7964 * lily/chained-callback.cc: new file. new smob type.
7966 * lily/lily-guile.cc (procedure_arity): new function.
7968 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7970 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7972 2005-10-25 John Mandereau <john.mandereau@free.fr>
7974 * Documentation/user/instrument-notation.itely (Figured bass):
7975 describe new features
7977 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7979 * lily/beam.cc (calc_least_squares_dy): use property callback.
7981 * lily/beam-concave.cc (calc_concaveness): use property callback.
7983 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7985 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7989 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7991 * scm/layout-page-layout.scm (page-headfoot): annotate
7994 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7996 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7997 doesn't take y-space.
7999 * scm/paper.scm (paper-alist): fix A7 dimensions.
8001 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8003 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8004 src-wildcard, remove $(wildcard).
8006 * po/GNUmakefile (PO_FILES):
8007 * ps/GNUmakefile (PS_FILES):
8008 * tex/GNUmakefile (TEX_FILES):
8009 * cygwin/GNUmakefile (POSTINSTALLS):
8010 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8011 some wildcard calls.
8013 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8015 * THANKS: add Thomas Bushnell.
8017 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8019 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8020 (lilypond-main): Redirect to gui-main if 'gui is set.
8022 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8023 for alternative installations kludging s/share/lib/g
8026 * SConstruct (libdir_package_version): Define.
8028 * python/SConscript:
8029 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8032 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8034 * lily/main.cc: clarify --safe.
8036 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8038 * VERSION: release 2.7.14
8040 * Documentation/user/*.itely: remove minimumVerticalExtent.
8042 * scm/define-grobs.scm (all-grob-descriptions): remove
8043 RemoveEmptyVerticalGroup
8045 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8047 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8050 * python/convertrules.py (conv): add rules.
8052 * lily/grob.cc: remove is_empty()
8054 * lily/grob-property.cc: remove add_to_list_property().
8056 * scripts/convert-ly.py (datadir): add prefix switching hack to
8059 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8060 space-function tweak.
8062 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8064 * scm/define-grob-properties.scm (all-user-grob-properties):
8065 remove callback property.
8067 * lily/include/grob.hh (class Grob): remove property_callbacks_
8068 member. Properties of procedure type are assumed to be callbacks.
8070 * lily/ligature-engraver.cc (override_stencil_callback):
8071 rewrite. Use noteHeadLigaturePrimitive as source.
8073 * scm/define-grob-properties.scm (all-internal-grob-properties):
8074 remove ligature-primitive-callback
8076 * lily/include/dimension-cache.hh (class Dimension_cache): make
8077 class, with Grob as friend.
8079 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8080 has_extent_callback()
8082 * scm/translation-functions.scm (format-new-bass-figure): read
8083 figuredBassPlusDirection
8085 * scm/define-context-properties.scm
8086 (all-user-translation-properties): add figuredBassPlusDirection.
8088 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8090 * lily/align-interface.cc (set_ordered): new function.
8092 * lily/grob.cc (flush_extent_cache): rewrite.
8094 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8095 Interval pointer directly.
8097 * lily/main.cc (setup_paths): insert extra / .
8098 (setup_paths): junk cff entry.
8100 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8103 * lily/axis-group-engraver.cc (finalize): remove
8104 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8106 * lily/grob.cc (Grob): don't set extent from ctor.
8107 (extent): use property callbacks.
8109 * lily/axis-group-interface.cc: remove set_axes() function.
8111 * lily/grob-property.cc (del_property): new function.
8113 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8115 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8117 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8119 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8121 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8123 * mf/SConscript: Updates.
8125 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8127 * stepmake/stepmake/*:
8131 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8132 from any directory in build-dir. Cleanups.
8134 * make/srcdir.make.in: Remove.
8136 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8138 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8141 * lily/SConscript: Remove ttftools.
8143 * SConstruct: Resurrect.
8145 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8147 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8150 * lily/paper-book.cc (add_score_title): put Paper_score title into
8153 * scm/translation-functions.scm (format-new-bass-figure): also
8154 allow plus in combination with _
8156 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8158 * VERSION: 2.7.13 released.
8160 * lily/note-collision.cc (check_meshing_chords): don't wipe
8161 stencil, merely set transparent.
8163 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8164 (Top): document #'callbacks.
8165 (Top): document nested \override.
8167 * input/regression/figured-bass.ly: update for slash and pluses.
8169 * input/regression/figured-bass-continuation-forbid.ly (Module):
8172 * scm/translation-functions.scm (format-new-bass-figure): use
8173 slashed-digit if diminished is set.
8174 (format-new-bass-figure): add + if 'augmented is set.
8176 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8178 * input/test/piano-staff-distance.ly: remove file.
8180 * Documentation/user/advanced-notation.itely (Formatting cue
8181 notes): use length-fraction for making stems/beams smaller.
8183 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8186 * lily/new-figured-bass-engraver.cc: new property
8187 centerFiguredBassContinuations
8189 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8192 * lily/context-property.cc (execute_general_pushpop_property):
8195 * input/regression/override-nest.ly: new file.
8197 * python/convertrules.py (FatalConversionError.subber): conversion
8198 rule for #'callbacks
8200 * input/regression/override-nest.ly: new function.
8202 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8205 * lily/context-property.cc (lookup_nested_property): new function.
8206 (evict_from_alist): new function.
8207 (general_pushpop_property): new function.
8208 (execute_general_pushpop_property): rewrite. Support nested
8211 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8213 * lily/beam.cc: use length-fraction too.
8215 * scm/define-grob-properties.scm (all-user-grob-properties):
8216 remove property flag-width-function
8217 (all-user-grob-properties): remove space-function.
8219 * scm/layout-beam.scm: remove flag-width-function.
8221 * lily/beam.cc: remove flag-width-function
8223 * scm/layout-beam.scm: remove beam dir functions.
8225 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8227 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8228 for easier grace tweaks.
8230 * lily/beam.cc: remove dir-function.
8232 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8234 * lily/grob.cc: remove spacing-procedure.
8236 * lily/note-head.cc (calc_stem_attachment): new function.
8237 (internal_print): use callback to get glyph-name.
8239 * lily/grob-property.cc (get_interfaces): new function.
8241 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8243 * lily/stem.cc (calc_stem_end_position): new function.
8244 (calc_length): new function.
8245 document details for stem.
8246 remove Stem::get_direction()
8248 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8250 * lily/grob-property.cc (set_callback): new function.
8252 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8254 * lily/item-scheme.cc: new file.
8256 * lily/bar-line.cc (before_line_breaking): remove function.
8257 remove bar-size-procedure, break-glyph-function
8259 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8261 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8263 * lily/system-start-delimiter.cc (print): suicide from
8264 here. Remove after_line_breaking_callback.
8266 * lily/script-interface.cc (calc_direction): use callback for direction.
8268 * lily/side-position-interface.cc (aligned_side): don't use
8269 Side_position_interface::get_direction directly. Use callback.
8271 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8273 (get_print_stencil): rename from get_stencil: create stencil with
8274 transparency, color and cause.
8276 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8278 * python/convertrules.py (conv): insert temporary warning rule.
8280 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8282 * lily/grob-property.cc (try_callback): remove marker if applicable.
8284 * lily/grob.cc: elucidate doc about after/before-line-breaking
8286 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8288 * lily/stem.cc (height): idem.
8290 * lily/stem-tremolo.cc: idem.
8292 * lily/slur.cc (height): don't use get_uncached_stencil()
8294 * lily/rest.cc (y_offset_callback): use offset callback
8295 iso. after-line-breaking callback.
8297 * lily/grob.cc: change after/before-line-breaking-callback to
8298 after/before-line-breaking dummy properties.
8300 * lily/include/grob.hh: remove Grob_status.
8302 * scm/define-context-properties.scm
8303 (all-user-translation-properties): remove verticalAlignmentChildCallback
8305 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8306 (calc_direction): use callback
8307 (calc_positions): use callback.
8309 * lily/tie.cc (calc_direction): use callback. Only call parent
8310 positioning for more than one tie.
8312 * lily/tie-column.cc (calc_positioning_done): use callback
8314 * lily/slur-scoring.cc (calc_control_points): use callback
8316 * lily/slur.cc (calc_direction): use callback.
8318 * lily/note-collision.cc (force_shift_callback): remove.
8320 * lily/dot-column.cc (force_shift_callback): remove. Use
8321 other_axis_parent_positioning.
8323 * lily/grob.cc (other_axis_parent_positioning): new function.
8324 (same_axis_parent_positioning): new function
8326 * lily/align-interface.cc (alignment_callback): remove function.
8328 * lily/note-collision.cc (calc_positioning_done): use callback.
8330 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8331 (calc_direction): idem.
8332 remove print function.
8334 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8336 * lily/dot-column.cc (calc_positioning_done): use callback.
8338 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8340 * lily/beam.cc (calc_direction): use pseudo-property for beam
8342 (calc_positions): use callback
8344 * lily/align-interface.cc (calc_positioning_done): use
8345 callback. Fold fixed distance and normal alignment in one function.
8347 * lily/stem.cc (calc_stem_end_position): use callback.
8348 (calc_positioning_done): idem.
8349 (calc_direction): idem.
8350 (calc_stem_end_position): idem
8351 (calc_stem_info): idem.
8353 * lily/grob-property.cc (get_property_data): new function:
8354 (try_callback): new function.
8356 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8359 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8361 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8363 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8367 * lily/include/*.hh (Module): compile fixes.
8369 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8371 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8372 as an argument for char-syntax: use (char-syntax (or nil 0))
8373 instead of (char-syntax nil), thanks to Milan Zamazal.
8375 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8377 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8380 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8383 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8385 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8386 add class_name() method.
8388 * lily/music-scheme.cc: remove ly:music-name.
8390 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8392 * cygwin/postinstall-lilypond.sh: Remove cruft.
8394 * cygwin/postremove-lilypond.sh: Remove.
8396 * cygwin/GNUmakefile (default): Remove postremove rules.
8398 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8400 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8403 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8406 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8407 consider break index for broken spanner.
8409 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8410 characters from string before splitting.
8412 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8414 * scm/framework-ps.scm (output-preview-framework): use
8415 is-book-title to determine whether to chop off the booktitle.
8417 * lily/paper-book.cc (systems): init from book-title-properties
8418 (add_score_title): init score-title-properties.
8420 * ly/paper-defaults.ly: add {score,book}-title-properties.
8422 * scm/document-backend.scm (lookup-interface): error message if
8423 using unknown interface.
8425 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8428 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8430 (make_bracket): new function.
8432 * scm/lily.scm (define-scheme-options): add paper-size option.
8434 * ly/declarations-init.ly (laissezVibrer): get paper size from
8437 * scm/translation-functions.scm: use \fontsize for changing the
8440 * scm/define-grobs.scm (all-grob-descriptions): set
8441 between-length-limit to 1.0
8443 * lily/tie-helper.cc: add between_length_limit_ detail property.
8445 * mf/feta-bolletjes.mf: typos.
8447 * lily/note-head.cc (internal_print): don't shadow idx
8448 parameter. This fixes wrong attachment for do shape heads.
8450 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8452 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8454 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8456 * scm/layout-slur.scm: rename from slur.scm
8458 * scm/layout-page-layout.scm: rename from page-layout.scm
8460 * scm/layout-beam.scm: rename from beam.scm
8462 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8463 bass-figure-interface
8465 * lily/new-figured-bass-engraver.cc (process_music): add
8466 implicitBassFigures property.
8468 * scm/define-markup-commands.scm (pad-x): new markup.
8470 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8471 minimumVerticalExtent on FiguredBass context.
8473 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8474 case the continuation crosses a line break.
8476 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8478 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8479 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8480 absolute file name bug.
8482 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8484 * VERSION (PACKAGE_NAME): release 2.7.12
8486 * input/regression/figured-bass-continuation-center.ly: new file.
8488 * input/regression/beam-outside-beamlets.ly: new file.
8490 * lily/beam.cc (set_beaming): don't clip edges.
8491 (connect_beams): don't clip edges.
8493 * lily/beaming-info.cc (clip_edges): new function.
8495 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8497 * Documentation/user/instrument-notation.itely (Figured bass):
8498 demonstrate extenders, update seealso links.
8500 * scm/titling.scm (marked-up-headfoot): change tagline
8501 handling. tagline = ##f will blank the tagline as well.
8503 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8505 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8507 * lily/new-figured-bass-engraver.cc (struct
8508 New_figured_bass_engraver): add new_music_found_ member.
8510 * lily/lilypond-version.cc (Lilypond_version): deal with
8511 incorrectly formatted version strings.
8513 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8514 New_figured_bass_engraver by default.
8516 * lily/ttf.cc (print_trailer): only define glyph names when
8517 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8519 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8521 * lily/horizontal-bracket.cc (make_bracket): new function.
8523 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8524 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8525 BassFigureLine, BassFigureAlignment
8527 * lily/new-figured-bass-engraver.cc (process_music): new file.
8529 * lily/figured-bass-continuation.cc: new file.
8531 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8534 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8536 * scripts/lilypond-book.py: Bug fix, put the quote around the
8537 actual score for LaTeX documents.
8539 * scm/define-grobs.scm (all-grob-descriptions): Change
8540 collapse-height of the SystemStartBracket grob to 5.0,
8541 so the bracket disappears for single stave score lines (similarly
8542 to SystemStartBraces).
8544 * Documentation/user/advanced-notation.itely (Polymetric
8545 notation): Clarify the use of compressMusic.
8547 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8548 that the grace spacer note in other staves need the same duration
8549 and document the stroke-style property.
8551 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8553 * Documentation/user/global.itely (Vertical spacing): document
8554 alignment-extra-space and fixed-alignment-extra-space.
8556 * Documentation/topdocs/NEWS.tely (Top): add entry.
8558 * input/regression/alignment-vertical-spacing.ly: new file.
8560 * python/convertrules.py (conv): add rule.
8562 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8564 * lily/align-interface.cc (stretch_after_break): new
8565 function. Read fixed-alignment-extra-space property.
8566 (align_elements_to_extents): read alignment-extra-space property.
8568 * lily/lily-guile.cc (robust_scm2dir): new function.
8570 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8571 (annotate-space-left): new function. Annotate space left on page.
8572 (annotate-y-interval): new function.
8573 (paper-system-annotate-last): new function. Annotate bottom-space.
8575 * mf/feta-beugel.mf (y):
8577 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8579 * VERSION (PACKAGE_NAME): release 2.7.11
8581 * scm/lily-library.scm (interval-translate): new function
8582 (interval-center): new function.
8584 * scm/page-layout.scm (paper-system-annotate): new function. Add
8585 arrows for dimensions.
8587 * scm/stencil.scm (dimension-arrows): new function.
8589 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8591 * input/regression/page-spacing.ly: add annotatespacing
8593 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8594 (LY_DEFINE): new function ly:paper-system-set-property!
8596 * Documentation/user/global.itely (Paper size): explain how to add
8599 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8600 correspond to GS's definition.
8602 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8604 (print): only connect to next bracket if the next one is alive.
8605 (print): set padding to 0.0 if the bound is a breakable
8606 column. This makes tupletFullLength brackets reach up to the staff
8607 line if it doesn't connect to the next line.
8609 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8611 * lily/bar-number-engraver.cc: correct docs.
8613 * scm/output-lib.scm (first-bar-number-invisible): rename from
8614 default-bar-number-visibility
8616 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8618 * scm/define-music-properties.scm (all-music-properties): remove
8621 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8623 * po/fi.po: refresh.
8625 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8627 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8629 (disappear): bugfix.
8631 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8633 * lily/include/paper-system.hh (class Paper_system): remove
8634 staff_extents_ member.
8636 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8638 * lily/include/paper-system.hh (class Paper_system): remove
8639 number_ variable. Remove is_title_. Remove break_before_penalty_
8641 * lily/paper-book.cc (systems): use 'number property iso. number_
8644 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8645 remove ly:paper-system-number.
8647 * scm/lily-library.scm (paper-system-title?): new function.
8649 * lily/book.cc (process): bugfix: flip ?: cases.
8651 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8654 * ly/music-functions-init.ly: add outputProperty music function.
8656 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8658 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8660 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8662 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8664 * lily/paper-system.cc (internal_get_property): new function.
8666 * Documentation/user/global.itely (Vertical spacing): refer to
8669 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8672 * input/regression/page-spacing.ly: new file.
8674 * input/regression/page-top-space.ly: new file.
8676 * lily/spacing-spanner.cc: cmath -> math.h
8678 * lily/paper-system.cc (read_left_bound): new function. Read
8679 line-break-system-details from left bound to determine extents.
8681 * Documentation/user/programming-interface.itely (Using LilyPond
8682 syntax inside Scheme): change applyxxx -> applyXxx.
8684 * ly/music-functions-init.ly: add outputProperty music function.
8686 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8688 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8690 * python/convertrules.py (conv): rule
8692 * ly/music-functions-init.ly: applyxxx -> applyXxx
8694 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8697 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8699 * flower/include/real.hh: include <math.h> iso. <cmath>
8701 * flower/include/offset.hh: include real.hh
8703 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8705 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8706 fix example, now that 'interfaces is no longer directly available.
8708 * lily/book.cc (process): don't crash if paper == NULL.
8712 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8714 * scm/define-music-types.scm (music-descriptions): set length and
8715 start-callback for QuoteMusic
8717 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8719 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8720 arguments. Fixes compilation error with gcc 3.3.
8722 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8724 * VERSION: release 2.7.10
8726 * stepmake/stepmake/python-module-rules.make
8727 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8729 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8732 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8734 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8735 -Werror. Otherwise GCC barfs over various optimizations.
8737 * scm/define-grob-properties.scm (all-internal-grob-properties):
8738 add note-head property
8740 * Documentation/user/instrument-notation.itely (Laissez vibrer
8743 * input/regression/laissez-vibrer-ties.ly: new file.
8745 * lily/laissez-vibrer-engraver.cc: new file.
8747 * lily/include/tie-column-format.hh: new file.
8749 * lily/tie-column-format.cc: new file.
8751 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8753 * lily/laissez-vibrer-tie.cc: new file.
8755 * lily/include/laissez-vibrer-tie.hh: new file.
8757 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8759 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8761 * scm/define-grobs.scm (all-grob-descriptions): add
8762 LaissezVibrerTie, LaissezVibrerTieColumn
8764 * lily/tie-column.cc (set_tie_config_directions): new function
8765 (final_shape_adjustment): new function.
8766 (shift_small_ties): new function.
8768 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8770 * lily/include/tie.hh (struct Tie_details): add x_gap_
8771 (struct Tie_configuration): add head_position_
8773 * lily/tie-column.cc (set_chord_outline): new function.
8775 * mf/cmr.enc.in: remove file.
8777 2005-09-11 Graham Percival <gpermus@gmail.com>
8779 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8781 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8783 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8784 reduce aliasing effects.
8786 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8789 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8791 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8793 * flower/include/real.hh: std::fabs too.
8795 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8797 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8799 * lily, flower: Include C++ iso C headers. Import namespace std
8802 * lily/side-position-interface.cc:
8804 * lily/note-head.cc:
8805 * lily/include/includable-lexer.hh:
8806 * flower/include/string-data.icc: Remove using std::*.
8808 * lily, flower: Include C++ iso C headers. Import namespace std
8811 * lily/side-position-interface.cc:
8813 * lily/note-head.cc:
8814 * lily/include/includable-lexer.hh:
8815 * flower/include/string-data.icc: Remove using std::*.
8817 * Documentation/user/instrument-notation.itely (Entering lyrics):
8818 Multiple latin-1->utf-8 conversion fix.
8820 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8822 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8824 * lily/tie.cc (get_configuration): also avoid dots for non-space
8827 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8829 * Documentation/user/instrument-notation.itely: Bugfix.
8831 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8833 * tex/GNUmakefile: don't install texinfo.tex
8835 * tex/ : cleanup: remove unused files.
8837 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8839 * flower/include/real.hh: using std::{isnan,isinf}
8841 * VERSION (PATCH_LEVEL): release 2.7.9
8843 2005-09-05 Graham Percival <gpermus@gmail.com>
8845 * Documentation/user/ instrument-notation.itely,
8846 advanced-notation.itely: minor tweaks.
8848 * input/test/script-chart.ly: add item padding.
8850 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8852 * flower/offset.cc: use math.h iso. <cmath>
8854 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8857 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8858 (widen-left-stencil-edges): new function. Fix alignment problems
8859 with LaTeX includegraphics.
8861 * lily/text-interface.cc (interpret_markup): use abort().
8863 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8865 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8867 * lily/tie.cc (get_configuration): update bezier shape as we
8869 (get_configuration): don't move large ties if we're outside of the
8872 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8874 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8876 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8878 * .cvsignore: Add auto-generated configure files and then some.
8880 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8882 * scm/define-grobs.scm (DynamicLineSpanner): Add
8883 X-extent-callback. Fixes hairpin-slur collision.
8885 2005-08-31 Graham Percival <gpermus@gmail.com>
8887 * Documentation/user/advanced-notation.itely,
8888 basic-notation.itely: minor changes.
8890 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8892 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8893 \linebreak between each .eps file if \betweenLilyPondSystem is
8896 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8897 music): Document the \linebreak
8899 * Documentation/user/lilypond-book.itely,
8900 input/tutorial/lbook-latex-test.tex,
8901 Documentation/user/examples.itely: Remove \usepackage{graphics}
8903 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8905 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8907 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8910 * scripts/lilypond-book.py (PREAMBLE_LY): define
8911 inside-lilypond-book
8912 (modify_preamble): new function. Insert \RequirePackage{graphics}
8913 when no {graphics found in preamble.
8915 2005-08030 Graham Percival <gpermus@gmail.com>
8917 * Documentation/user/basic-notation.itely, global.itely,
8918 tutorial.itely: misc small changes.
8920 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8922 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8925 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8927 * lily/tie-column.cc (new_directions): put Tie down on center
8930 * lily/script-interface.cc (before_line_breaking): use
8931 Grob::programming_error
8933 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8935 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8938 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8940 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8942 2005-08-29 Werner Lemberg <wl@gnu.org>
8944 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8945 the `*.scale.pfa' files to avoid warnings.
8947 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8949 * lily/tempo-performer.cc (process_music): idem.
8951 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8953 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8955 * Documentation/user/advanced-notation.itely (Text markup): not a
8958 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8960 * lily/staff-performer.cc (initialize): add tempo/name to
8963 2005-08-26 Graham Percival <gpermus@gmail.com>
8965 * Documentation/user/advanced.itely: add text-only example.
8967 * Documentation/user/invoking.itely: add index entries for
8970 * Documentation/user/ tutorial.itely, basic-notation.itely:
8971 small fixes suggested by Steve D. Thanks!
8973 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8975 * input/regression/markup-bidi-pango.ly: new file.
8977 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8978 standard. Remove #ifdef. Remove memleak.
8979 (text_stencil): use text_dir to decide how to composite items.
8980 (text_stencil): determine uniform text direction for the entire
8983 * scripts/lilypond-book.py (output_name): remove
8984 latex_filter_cmd. Non-portable to non-Unix systems.
8985 (get_latex_textwidth): use File.write and os.unlink() instead.
8987 * THANKS: add Vicente & Trevor.
8989 * lily/grob.cc (discretionary_processing): look up origin for
8990 programming_error too.
8992 * input/regression/tie-broken.ly: new file.
8994 * lily/tie-column.cc (set_chord_outlines): set outline for line
8997 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8999 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9000 unscaled transform, just translate stencils.
9002 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9005 * scm/define-markup-commands.scm (wordwrap-string): use
9007 (wordwrap-stencils): idem.
9010 (wordwrap-stencils): translate last line to right for
9011 text-direction = LEFT.
9013 * scm/define-grob-properties.scm (all-user-grob-properties): add
9016 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9018 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9019 when copying a Lily_parser object.
9021 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9023 * scm/define-markup-commands.scm (null): add null markup.
9025 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9027 * lily/item.cc: Add documentation of center-invisible
9029 2005-08-24 Graham Percival <gpermus@gmail.com>
9031 * Documentation/user/advanced-notation.itely: add info about
9034 * Documentation/user/programming-interface.itely: fix example
9035 involving raised text.
9037 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9039 * lily/beam.cc (print): fix X start/end points of isolated
9042 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9044 * lily/multi-measure-rest.cc (set_text_rods): new function.
9046 * lily/vertical-align-engraver.cc (process_music): call
9047 Align_interface::set_axis(). This forces #'elements to be ordered,
9048 preventing random vertical reordering of staves.
9050 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9051 add avoid-slur property.
9053 * Documentation/user/basic-notation.itely (Measure repeats): add
9054 countPercentRepeats example.
9056 * Documentation/user/advanced-notation.itely (Other text markup
9057 issues): remove remark about normal-font. We have \normal-text
9059 * input/regression/tie-chord.ly: add note about remaining bugs.
9061 * lily/tie.cc (print): try Tie_column::set_directions () if
9062 control-points not yet defined.
9064 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9066 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9067 extent. This fixes braces falling out of the EPS bbox.
9069 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9072 2005-08-23 Graham Percival <gpermus@gmail.com>
9074 * {various} : change #up->#UP and #down->#DOWN.
9076 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9078 * Documentation/user/advanced-notation.itely: clarify
9079 what objects handles text on a multimeasure rest.
9081 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9083 * VERSION (PATCH_LEVEL): release 2.7.7
9085 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9087 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9089 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9091 * input/regression/*.ly: formatting clean-up. Default layout
9092 before music expression.
9094 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9095 romanze28-2 example.
9097 * scm/ps-to-png.scm: remove dir-re function.
9098 (make-ps-images): generate page names, instead of globbing them.
9099 This brings down LilyPond memory usage for make web by a factor
9102 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9103 don't use glob. With 3000 files, globbing
9104 Documentation/user/out-www/ can take too much time.
9106 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9108 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9110 * input/regression/tie-manual.ly: new file
9112 * input/regression/tie-chord.ly: update.
9114 * flower/include/interval.hh (struct Interval_t):
9116 * lily/tie.cc (distance): new function
9117 (height): new function.
9118 (init): new function
9119 (Tie_details): new struct.
9121 * lily/skyline.cc (skyline_height): new function.
9123 * lily/tie-column.cc (set_chord_outlines): new function.
9124 (new_directions): read tie-configuration
9126 * lily/skyline.cc: fix ASCII art.
9128 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9130 * python/convertrules.py (string_or_scheme): Fix spelling error
9132 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9134 * lily/tie-column.cc (set_directions): set directions only once.
9135 (add_configuration): new function.
9137 * lily/tie.cc (set_control_points): new function
9139 * lily/tie-column.cc (new_directions): new function.
9141 * ly/music-functions-init.ly: set 'pitch property
9142 iso. trill-pitch. This makes \relative work with \pitchedTrill
9144 * lily/tie.cc (get_configuration): new function. Don't generate
9145 control points, rather, generate configuration.
9146 remove head-pair property.
9148 * lily/include/tie.hh (struct Tie_configuration): new struct.
9150 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9152 * Documentation/topdocs/NEWS.tely: clarify.
9154 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9156 * lily/tie.cc: remove minimum-length
9158 * scm/define-grob-properties.scm (all-user-grob-properties):
9159 remove staffline-clearance, y-offset
9161 * input/regression/tie-dots.ly (Module): remove.
9163 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9164 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9166 * input/regression/tie-single.ly: new file.
9168 2005-08-21 Graham Percival <gpermus@gmail.com>
9170 * ly/bagpipe.ly: fix compile problem.
9172 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9174 * lily/midi-item.cc (name): new method.
9176 * lily/staff-performer.cc (acknowledge_audio_element): use
9177 signature of baseclass.
9179 * lily/engraver-group.cc (do_announces): move recursion call out
9182 * lily/drum-note-performer.cc (class Drum_note_performer): use
9183 process_music everywhere.
9185 * ly/performer-init.ly: add default children everywhere.
9187 * lily/paper-book.cc (output): call paper-book-write-midis
9188 directly: always write MIDI, even if no \layout {} block.
9190 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9192 * VERSION (PACKAGE_NAME): release 2.7.6
9194 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9195 about not being able to handle repeat.
9197 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9199 * Documentation/user/examples.itely (Piano templates):
9200 * lily/include/performer-group.hh: Remove last traces of
9201 Performer_group_performer. Fixes make web.
9203 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9205 * Documentation/user/examples.itely (Piano templates): change
9206 Engraver_group_engraver -> Engraver_group
9208 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9209 scm_stand_in_procs is not weak_any.
9211 * lily/volta-bracket.cc (print): don't use strcmp().
9213 * lily/volta-engraver.cc (process_music): use
9214 Text_interface::is_markup() for setting the 'text property of the
9217 * input/mutopia/claop.py (accents): update syntax to 2.6
9219 * scm/define-context-properties.scm
9220 (all-user-translation-properties): add countPercentRepeats.
9222 * Documentation/user/basic-notation.itely (Measure repeats): add
9223 isolated percent example.
9225 2005-08-18 Graham Percival <gpermus@gmail.com>
9227 * input/ {various}: change direction #1, #-1 to
9228 #up/#down or \fooUp, \fooDown.
9230 * Documentation/user/music-glossary.tely: #-1 to #down.
9232 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9233 to #up, #-1 to #down.
9235 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9237 * lily/include/engraver-group.hh: rename.
9239 * lily/include/performer-group.hh: rename.
9241 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9243 * input/test/script-abbreviations.ly: Removed some old LaTeX
9246 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9248 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9249 Remove functions. Remove if 1: constructs, reindent.
9251 * scripts/convert-ly.py (add_version): Add functions from
9254 * scm/script.scm (default-script-alist):
9255 s/priority/script-priority. Fixes script stacking. Backportme.
9256 (Fermata): Very low priority.
9258 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9260 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9262 * input/regression/slur-script.ly: remove padding tweaks. Add
9265 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9266 time sigs and related stuff.
9268 * scm/define-grob-properties.scm (all-user-grob-properties): add