1 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * buildscripts/git-update-changelog.py (main): write .msg and cvs command.
5 * scm/define-grobs.scm:
6 separation-items have width
12 * Documentation/topdocs/NEWS.tely:
13 * lily/separating-group-spanner.cc:
14 * lily/slur-engraver.cc:
15 * lily/slur-scoring.cc:
16 * scm/define-grobs.scm:
17 * input/regression/slur-clef.ly:
18 add breakableSeparationItem to extra encompass for slurs. This
19 fixes slur/clef slur/key collisions etc. Should fix #49
21 * lily/include/slur-scoring.hh:
22 * lily/slur-scoring.cc:
23 Use X of separation item as slur start. Fixes #120
25 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
27 * buildscripts/git-update-changelog.py (changelog_body): don't
30 * lily/grob.cc: add avoid-slur
32 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
36 move server/emacsclient to elisp/
38 * buildscripts/git-update-changelog.py (Commit.note_del_file):
41 * elisp/server.el.patch:
44 * elisp/emacsclient.patch:
47 * buildscripts/git-update-changelog.py:
54 * buildscripts/git-update-changelog.py:
55 script to update ChangeLog with Git messages.
57 * lily/beam-engraver.cc:
58 * input/regression/rest-pitched-beam.ly:
59 don't set callback if staff-position set. Fixes #126.
61 * lily/bar-number-engraver.cc:
63 * lily/fingering-engraver.cc:
64 * lily/grob-property.cc:
66 * lily/include/grob.hh:
67 * lily/include/lily-guile-macros.hh:
68 * lily/mark-engraver.cc:
69 * lily/melody-engraver.cc:
70 * lily/script-column.cc:
71 * lily/tie-formatting-problem.cc:
73 internal_get_property_data() using ly_symbol2scm()
75 * stepmake/stepmake/generic-targets.make:
76 create .gitignore in outdir.
81 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
83 * input/test/vertical-extent.ly:
84 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
86 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
88 * stepmake/bin/add-html-footer.py (compose): remove setgcos
90 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
92 * GNUmakefile.in (install-help2man): install-help2man target.
94 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
96 * SConstruct (configure): Do not check for /bin/sh.
98 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
100 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
103 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
105 * input/regression/fret-boards.ly: new file.
107 * po/de.po: new po courtesy translation team.
109 * scripts/lilypond-book.py (get_option_parser): add newline to doc
112 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
114 * ly/gregorian-init.ly (neumeDemoLayout): update
115 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
117 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
118 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
120 2006-10-27 Erlend Aasland <erlenda@gmail.com>
122 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
123 Yet another build fix.
125 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
127 * SConstruct (lilypondprefix): use sorted() for list_sort()
130 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
132 * flower/SConscript: Unit test rules.
134 * flower/test-std.cc: Compile fix.
136 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
138 * python/midi.c (pymidi_parse_track): warning fixes.
140 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
141 include dot-column.hh
143 2006-10-26 Graham Percival <gpermus@gmail.com>
145 * Documentation/user/{basic-, global}: minor changes from mailist.
147 2006-10-26 Erlend Aasland <erlenda@gmail.com>
149 * scm/define-grobs.scm: trivial beautification
151 * lily/tie-performer.cc: no need to #include "pqueue.hh"
153 * lily/source-file.cc: put multibyte var inside #if clause
155 * scm/define-grob-interfaces.scm:
156 * scm/define-grob-properties.scm:
157 Build fix (string-fret-finger-combinations)
159 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
162 * Documentation/user/lilypond-book.itely: Build fix.
164 2006-10-26 Joe Neeman <joeneeman@gmail.com>
166 * lily/system.cc (get_paper_system):
167 * lily/paper-book.cc (systems):
168 move most of the backwards compatibility stuff into
171 * Documentation/topdocs/NEWS.tely: add 2 entries for the
174 * Documentation/user/page.itely: remove time-scaled-music
175 bug for the Page_turn_engraver
177 * lily/paper-book.cc (set_system_penalty): backwards
178 compatibility (breakbefore) for the old page breaker
180 2006-10-25 Graham Percival <gpermus@gmail.com>
182 * Diocumentation/user/instrument-notation.itely: added more
183 info about stanzas; thanks Geoff!
185 * Documentation/user/ {basic, advanced}: small fixes from
188 * THANKS: add some bug reporters.
190 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
192 * scm/define-context-properties.scm (all-user-translation-properties):
193 noteToFretFunction: Add.
195 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
196 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
198 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
200 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
203 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
204 Remove bashism in delete.
206 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
208 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
210 * scm/translation-functions.scm (determine-frets-mf): flatten let*
212 * scm/define-context-properties.scm
213 (all-user-translation-properties): add maximumFretStretch property.
215 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
217 * lily/source-file.cc (get_counts): use multibyte variable.
219 * scm/translation-functions.scm (determine-frets-mf): new
220 function: compute fret numbers.
222 * scm/output-lib.scm (string-frets->description) new function.
223 (fret-board::calc-stencil): new function
225 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
227 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
229 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
231 * lily/tab-note-heads-engraver.cc: cleanups.
233 * lily/fretboard-engraver.cc: new file
235 * ly/engraver-init.ly: add FretBoards context
237 2006-10-24 Joe Neeman <joeneeman@gmail.com>
239 * lily/grob.cc (pure_relative_y_coordinate)
240 (pure_height): use the new call_pure_function stuff
242 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
245 * lily/side-position-interface.cc (pure_y_aligned_side): add an
248 * lily/simple-closure.cc (ly_eval_simple_closure): make
249 simple-closure evaluatable from scheme
250 (evaluate_with_simple_closure): make simple-closures pure-
253 * lily/slur.cc (pure_outside_slur_callback): new function
255 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
256 fits in with previous changes that made the page forces much
259 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
260 and pure-Y-extent into this new function.
261 (pure-conversions-alist): add outside-slur-callback
263 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
265 * Documentation/user/advanced-notation.itely (Instrument names):
266 Remove obsolete bug workaround for instrument names on piano
269 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
271 * Documentation/user/lilypond-book.itely (Integrating DocBook and
272 music): patch by Bertalan Fodor for docbook.
274 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
275 of $(LILYPOND). Prevents lilypond run for .txt files.
277 * INSTALL.txt: gitness.
279 * .cvsignore: update to force gitness.
281 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
283 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
284 detect suicide in nested tuplets.
286 2006-10-23 Werner Lemberg <wl@gnu.org>
288 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
289 typo in argument to FT_Get_X11_Font_Format.
291 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
293 * stepmake/stepmake/po-vars.make: more gitness.
295 * flower/polynomial.cc (check_sol): no empty if bodies.
297 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
299 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
301 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
303 * Documentation/user/examples.itely (Transcription of mensural
304 music): Added more comments in .ly source. Suggest to remove
305 Forbid_line_break_engraver to allow line breaking at all bars.
307 * Documentation/user/instrument-notation.itely (Ancient
308 articulations): Updated @refbugs regarding episem.
310 * Documentation/user/instrument-notation.itely (Gregorian square
311 neumes ligatures): Added \augmentum dots. Updated @refbugs
312 regarding \augmentum.
314 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
316 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
319 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
322 * ly/gregorian-init.ly: Added \augmentum macro.
324 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
326 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
328 * lily/pango-font.cc (pango_item_string_stencil): use
329 FT_Get_X11_Font_Format()
331 2006-10-22 John Mandereau <john.mandereau@free.fr>
333 * po/fr.po: update translation.
335 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
337 * VERSION (PATCH_LEVEL): bump version
339 * input/regression/horizontal-bracket-break.ly: new file.
341 * scm/define-grobs.scm (all-grob-descriptions): calc
344 * lily/horizontal-bracket.cc (make_bracket): support
345 connect-to-neighbor. Fix #118
347 * VERSION: release 2.9.26-2
349 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
351 * VERSION (PACKAGE_NAME): release 2.9.26
353 * buildscripts/output-distance.py (test_basic_compare): add
355 (FileLink.multi_img_cell): new function, glob multi-page png
358 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
360 * po/lilypond.pot: update.
362 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
364 * Documentation/user/global.itely (File structure): remove
367 * lily/parser.yy (FIXME): remove ADDQUOTE
369 * Documentation/user/global.itely (Extracting fragments of
370 notation): new node, about clip systems.
372 * Documentation/user/lilypond-book.itely (Many quotes of a large
373 score): ref to clip systems.
375 * Documentation/user/instrument-notation.itely (Entering lyrics):
376 add note about lyric ties and required font.
378 * lily/open-type-font.cc (glyph_list): format errors.
380 * Documentation/user/programming-interface.itely (Scheme
381 procedures as properties): more doco on simple-closure and scheme
383 (Input variables and Scheme): use lilypond[verbatim], document
386 * Documentation/user/page.itely (Displaying spacing): use \book
387 explicitly, so arrows show .
388 (Line breaking): add note about Forbid_line_break_engraver
390 * Documentation/user/tweaks.itely (Common tweaks): also set length
391 to prevent tie squeezing.
392 (Default files): use @var{}
394 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
395 (Generating LilyPond files): add FOMUS.
397 2006-10-20 Joe Neeman <joeneeman@gmail.com>
399 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
400 Y-offset for TextScript and Script
402 * lily/text-engraver.cc (make_item):
403 * lily/script-engraver.cc (make_script_from_event):
404 remove call to Side_position_interface::set_axis since all scripts
405 now have this set by default
408 * lily/prob.cc: use variables
410 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
412 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
413 at typography, rather analyse stream event duration.
415 * Documentation/user/page.itely (Page formatting): set a6 paper
416 for system separator example.
418 * lily/arpeggio.cc (Module): idem.
420 * lily/accidental-placement.cc: add script-priority property.
422 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
424 * lily/ttf.cc (print_trailer): if all else fails: use
425 glyphIndexXXXX as glyph name. Fixes #117.
427 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
428 entry if cmap contains glyph.
429 (get_index_to_charcode_map): remove from Pango_font class, use
430 global filename -> font mapping.
431 (get_glyph_index_name): new function.
432 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
435 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
437 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
440 * scm/define-grob-properties.scm (all-user-grob-properties):
441 remove outdated doc. Fixes #116
443 * lily/completion-note-heads-engraver.cc (process_music): always
444 clone input events; otherwise we may overwrite input 'duration
445 property. Fixes #115.
447 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
450 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
453 * VERSION (PATCH_LEVEL): bump version.
455 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
457 * lily/engraver.cc (internal_make_grob): use variables.
459 * flower/string-convert.cc (dec2double): clean-up warnings.
461 * configure.in (CXXFLAGS): add -Werror.
463 * VERSION (PACKAGE_NAME): release 2.9.25
465 2006-10-18 Joe Neeman <joeneeman@gmail.com>
467 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
468 line even if we precede a forced break.
470 * lily/optimal-page-breaking.cc (try_page_spacing): square line
471 forces too. Make page-spacing weight default to 10 because the
472 changes to vertical springs decreased the page force/line force
473 proportions. Also, take the average of line force and page force
474 instead of just the sum.
476 * lily/constrained-breaking.cc (initialize): make the stiffness
477 of the vertical springs depend on the height of the system. This
478 prevents pages with only a few large systems from getting huge
481 * Documentation/user/page.itely (Page formatting): document the
482 change in default page-spacing-weight
484 * lily/include/constrained-breaking.hh: initialise bottom_padding_
486 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
488 * input/typography-demo.ly (melody): remove superfluous slur.
490 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
491 add piano-pedal-script-interface
493 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
495 * scripts/lilypond-book.py: DocBook support.
497 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
499 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
501 (stop_translation_timestep): set bound to currentMusicalColumn if
502 not set yet. Fixes #102
504 * lily/piano-pedal-bracket.cc: formatting.
506 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
508 * lily/piano-pedal-align-engraver.cc: new class
509 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
512 2006-10-18 Heikki Junes <hjunes@gmail.com>
514 * po/fi.po: Update Finnish translation (before the next release).
516 2006-10-17 Joe Neeman <joeneeman@gmail.com>
518 * lily/system.cc (get_paper_system): reinstate the backwards-
519 compatible page breaking for the old page breaker.
521 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
523 * lily/recording-group-engraver.cc: removed
525 * lily/context.cc, lily/translator-group.cc: Don't touch
526 Context::implementation_ if it's null
528 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
530 * scm/paper.scm: only use left-margin if defined.
532 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
534 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
536 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
537 strokeFingerOrientations
539 * lily/script-column.cc (row_before_line_breaking): also handle
540 accidentals and arpeggios in horizontal script stacking.
542 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
545 * input/regression/script-stack-horizontal.ly: trim.
547 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
549 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
552 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
553 'text if string argument.
555 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
557 * scm/define-context-properties.scm
558 (all-user-translation-properties): change to strokeFingerOrientations
560 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
562 * lily/parser.yy: remove debug output
564 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
566 * ly/paper-defaults.ly: set left/right margin.
568 * scm/paper.scm (set-paper-dimensions): use left-margin and
569 right-margin for computing linewidth.
571 * Documentation/topdocs/NEWS.tely (Top): idem.
573 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
576 * scm/define-markup-commands.scm (tied-lyric): increase negative
577 space: space syllables tighter.
579 * VERSION (PATCH_LEVEL): bump version.
581 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
584 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
586 * COPYING: further clarification
588 * VERSION: release 2.9.24
590 * input/regression/script-stack-horizontal.ly: add version.
592 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
594 * input/regression/lyric-tie.ly (texidoc): use different words.
596 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
598 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
600 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
601 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
603 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
605 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
607 * Doxyfile: remove file.
609 * scm/define-grob-interfaces.scm (string-finger-interface): add
610 string-finger-interface
612 * lily/general-scheme.cc (LY_DEFINE): move
613 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
615 * Documentation/topdocs/NEWS.tely (Top): add note for
616 string-finger feature.
618 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
621 * scm/output-lib.scm (string-finger::calc-text): read 'digit
624 * input/regression/script-stack-horizontal.ly: new file.
626 * ly/engraver-init.ly: add Script_row_engraver.
628 * lily/script-column.cc (order_grobs): refactor: separate axis
630 (row_before_line_breaking): new function.
632 * lily/script-row-engraver.cc (Script_row_engraver): new file.
634 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
636 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
638 * Documentation/user/instrument-notation.itely: Cleanup: Remove
639 annoying skip notes from mensural ligature example. Update
640 @refbugs for ligatures and mensural ligatures.
642 * lily/coherent-ligature-engraver.cc,
643 lily/include/coherent-ligature-engraver.hh,
644 lily/mensural-ligature-engraver.cc,
645 lily/vaticana-ligature-engraver.cc: Revise code for item
646 reparentizing. There should now be less programming_error
649 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
651 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
652 Maintenance bugfix: Don't create empty Stencil (), but empty box
653 instead. This fix should eliminate some programming_error
656 * ly/engraver-init.ly (MensuralStaff): Set default accidental
659 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
660 \layout block _before_ score.
662 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
664 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
666 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
668 2006-10-13 Erlend Aasland <erlenda@gmail.com>
670 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
672 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
674 * VERSION (PATCH_LEVEL): bump version.
676 * COPYING: clarify exception note.
678 * lily/main.cc: remove remark about "COPYING".
680 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
681 system-count starts at 0 for each clip-region. Change name to
682 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
683 layout block, per score.
685 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
687 * lily/input-smob.cc: add equal_p for Input
689 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
692 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
694 * lily/prob.cc: Add equal_p predicate for Prob
696 * lily/translator.cc: small cleanup
698 * scm/document-music.cc: use data from translator listener
699 registration to generate documentation for event classes
701 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
703 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
705 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
707 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
709 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
711 * Documentation/topdocs/INSTALL.texi: Thinko.
713 * .cvsignore: Update.
715 * lexer-gcc-3.1.sh: Remove.
717 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
718 Update anonymous cvs access. Remove comment about gcc 3.0.4.
720 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
722 * VERSION: release 2.9.23
724 * lily/paper-column-engraver.cc (stop_translation_timestep): also
727 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
729 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
731 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
733 * input/regression/clip-systems.ly (Notes): new file.
735 * scm/lily.scm (define-scheme-options): add clip-systems option.
737 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
739 (dump-stencil-as-EPS): move bbox calculation from previous
741 (output-framework): use -dclip-systems
743 * scm/lily-library.scm (filtered-map): new function
745 * scm/framework-ps.scm (clip-system-EPS): new function.
746 (clip-system-EPSes): new function.
748 * lily/paper-column.cc: add rhythmic-location to interface
750 * scm/define-grob-properties.scm (all-user-grob-properties): add
751 rhythmic-location property.
753 * scm/clip-region.scm: new file: rhythmic-location data type and
754 system-clipped-x-extent function.
756 * ly/init.ly: use (scm clip-region)
758 * lily/paper-column-engraver.cc (stop_translation_timestep): set
759 rhythmic-location for paper column grobs.
761 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
763 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
765 * ly/engraver-init.ly: Remove obsolete comment on
768 * Documentation/user/instrument-notation.itely: Tune Ancient
769 Articulations figure, such that the episem actually shows.
771 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
772 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
774 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
777 2006-10-12 Graham Percival <gpermus@gmail.com>
779 * Documentation/user/ {some}: minor edits that were lost somehow.
781 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
783 * VERSION (PACKAGE_NAME): bump version.
785 * input/regression/lyric-tie.ly (texidoc): new file.
787 * Documentation/topdocs/NEWS.tely (Top): add new feature.
789 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
791 * scm/define-markup-commands.scm (tied-lyric): new function: split
792 string along ~ and reattach with U+203F (tie character) and
795 * scm/output-lib.scm (lyric-text::calc-text): new function.
797 * lily/lyric-engraver.cc (process_music): don't set 'text.
799 * scm/output-lib.scm (string-finger::calc-text): new function
800 (lyric-text::print): new function.
802 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
803 generic for fingering & string number. Use for string-finger.
805 * scm/define-music-types.scm (music-descriptions): add
808 * lily/fingering-engraver.cc (listen_string_finger): new function
810 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
812 * scm/define-context-properties.scm
813 (all-user-translation-properties): add stringFingerOrientations
815 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
817 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
818 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
820 * lily/dots.cc: Added style property for dots.
822 * mf/parmesan-heads.mf: Fix typo in comment.
824 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
825 adding longa head to feta font and removing obsolete default
828 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
830 * scm/output-lib.scm (fingering::calc-text): use origin
831 event-property, not music-property.
833 * lily/lilypond.rc.in: spell my name correctly.
835 2006-10-10 Joe Neeman <joeneeman@gmail.com>
837 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
838 already have a non-empty extent. Fixes estimation for Hara-kiri
841 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
843 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
846 * lily/ligature-engraver.cc: Remove unused #include.
848 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
849 Bugfix: remove method check_for_prefix_loss(Item *) from global
850 namespace to avoid namespace pollution.
852 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
854 * VERSION: release 2.9.22
856 * ly/generate-documentation.ly: update option name.
858 * lily/dynamic-text-spanner.cc (print): revert fix.
860 * scm/define-grob-interfaces.scm
861 (trill-pitch-accidental-interface):
862 add trill-pitch-accidental-interface
864 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
865 dereference if it's really a duration.
867 * lily/figured-bass-engraver.cc (process_music): clear spanner if
868 useBassFigureExtenders is not set.
869 (listen_bass_figure): record as new event if
870 useBassFigureExtenders not set. Fixes #103.
872 * scm/stencil.scm (circle-stencil): don't center stencil argument,
873 instead: move circle. Fixes #107.
875 * scm/define-grobs.scm (all-grob-descriptions): set
876 allow-loose-spacing for PaperColumn and
877 NonMusicalPaperColumn. Kludge for #110.
879 * lily/spaceable-grob.cc: add allow-loose-spacing property.
881 * lily/spacing-determine-loose-columns.cc (is_loose_column):
882 allow-loose-spacing property.
884 * scm/define-markup-commands.scm (postscript): gsave & grestore
885 around embedded PS. Do setlinewidth too. Fixes #109.
887 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
889 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
890 code. This patch fixes ligature brackets that were not at all
893 2006-10-08 Graham Percival <gpermus@gmail.com>
895 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
897 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
899 * scm/define-context-properties.scm: clarified docs (bug 91).
901 * Documentation/user/basic-notation.itely: document volta brackets
902 not aligning (bug 63).
904 * Documentation/user/ global.itely invoking.itely: ignore or
905 add warnings about texstr.
907 2006-10-08 John Mandereau <john.mandereau@free.fr>
909 * po/fr.po: update translation.
911 * po/: update msgids.
913 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
915 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
917 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
919 * Documentation/user/page.itely (Two-pass vertical spacing): add
920 documentation for two-pass spacing technique.
922 2006-10-06 Graham Percival <gpermus@gmail.com>
924 * Documentation/user/convert-ly.txt: new file; new
925 storage place for this file (moved from bugs/ CVS).
927 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
929 * lily/note-head.cc: Fixed programming_error message.
931 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
933 * scm/define-grobs.scm (pure-conversion): move pure-callback
936 * scm/script.scm (default-script-alist): set avoid-slur for turn,
937 marcato, stopped, thumb.
939 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
941 * lily/completion-note-heads-engraver.cc (process_music): don't
942 skimp on memory usage.
944 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
947 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
948 parenthesis item. This fixes premature Y-extent triggering. Fixes
951 * VERSION (PATCH_LEVEL): bump version.
953 2006-10-04 Graham Percival <gpermus@gmail.com>
955 * Documentation/user/advanced-notation.itely: added
956 info about instrument names for piano or other contexts,
959 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
961 * mf/feta-bolletjes.mf (solfa_quarter_width): use
962 solfa_base_notewidth as unit for non-DO-notes too.
964 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
966 * VERSION: release 2.9.21
968 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
971 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
973 * python/lilylib.py (progress): Minor fix.
975 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
977 * lily/note-name-engraver.cc: doc engraver.
979 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
981 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
983 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
986 * lily/stem-engraver.cc (make_stem): don't set duration-log
988 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
989 write snippet-names binary.
991 * python/lilylib.py (system): use os.system for mingw32
993 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
996 * scm/backend-library.scm: update email address.
998 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1001 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1004 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1005 handle dot creation separately.
1007 * lily/tab-note-heads-engraver.cc (process_music): idem.
1009 * lily/drum-note-engraver.cc (process_music): idem.
1011 * lily/note-heads-engraver.cc (process_music): idem.
1013 * lily/rest-engraver.cc: don't set duration-log.
1015 * scm/output-lib.scm (string-number::calc-text): new function.
1016 (note-head::calc-duration-log): new function.
1018 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1020 * scm/output-lib.scm (fingering::calc-text): new function.
1022 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1024 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1025 and include-eps-font -> include-eps-fonts
1027 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1029 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1031 * lily/timing-translator.cc: list properties.
1032 (start_translation_timestep): update internalBarNumber too.
1034 * scm/define-context-properties.scm
1035 (all-user-translation-properties): add internalBarNumber.
1037 * input/regression/spacing-no-note.ly: new file.
1039 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1041 * lily/book.cc: #include cleanup.
1043 * lily/include/lily-guile-macros.hh: add assert to
1044 scm_or_str2symbol(SCM).
1046 * VERSION (PATCH_LEVEL): bump version.
1048 * lily/spacing-spanner.cc (musical_column_spacing): handle
1049 musical->nonmusical spacing case, where there is no spacing
1050 wish. Fixes issue #61.
1052 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1053 (pango_item_string_stencil): use logical rect horizontally (to
1054 preserve spaces), ink_rect vertically (for time signatures).
1056 * lily/font-metric.cc (word_stencil): new interface function
1058 * input/regression/utf-8-mixed-text.ly: new file.
1060 * lily/percent-repeat-engraver.cc (listen_percent): remove
1063 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1064 non-dynamic scripts. Fixes #30.
1066 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1068 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1070 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1071 SCM_UNDEFINED for non-existent data.
1073 * lily/side-position-interface.cc (general_side_position): allow
1074 optional current_offset argument for chaining, so combinations of side-position
1075 and outside slur callback don't add up. Fixes issue #92.
1077 * lily/pango-font.cc (pango_item_string_stencil): use
1078 logical_rect. This prevents spaces after words from disappearing,
1081 * VERSION: release 2.9.20
1083 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1085 * scm/define-grob-properties.scm (all-user-grob-properties):
1086 mention stencil as user settable.
1088 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1090 * Documentation/user/page.itely (Page formatting):
1091 document auto-first-page-number
1093 * lily/page-breaking.cc (find_chunks_and_breaks):
1094 * lily/paper-score.cc (calc_breaking): Follow changes to the
1095 Constrained_breaking interface
1097 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1098 here backwards, as an optimisation
1099 (initialize): new function; move most of the code in resize () here
1100 (combine_demerits): cache ragged_right_
1101 (Constrained_breaking): constructor now takes the Paper_score
1103 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1105 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1106 avoid parser lookahead for 0-ary functions.
1108 * lily/translator.cc: Extract event classes from
1109 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1111 2006-10-02 Heikki Junes <hjunes@gmail.com>
1113 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1116 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1118 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1119 function. Call the page breaking function selected in the
1120 `page-breaking' \paper variable, then the post processing function
1121 chosen using the `page-post-process' \paper variable.
1122 (line-height): new function. Return the height of a system.
1123 (line-minimum-position-on-page): new function. Return the position
1124 of a system on page (using the previous line position), only
1125 considering between system padding.
1126 (stretchable-line?): new function. Says whether a line can be
1127 stretched (ie. is not a title nor a single staff system).
1128 (page-maximum-space-left): new function. Computes space left on a
1129 page, when all systems are separated by their padding.
1131 * lily/page-breaking.cc (breaking::make_pages): Move page post
1132 processing function call to page breaking wrapper (common to all
1135 * lily/paper-book.cc (book::pages): call the page breaking
1136 wrapper, instead of the page breaker directly
1138 * ly/paper-defaults.ly: Add \paper variables for page breaking
1139 wrapper and page post processing function. Make
1140 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1141 `system-maximum-stretch-procedure' variable for holding a function
1142 computing the maximum stretch a system allows.
1144 * scm/layout-page-dump.scm (write-page-breaks): computes the
1145 stretch to apply to systems on a page to minimize left
1146 space. Dump this stretch length.
1148 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1149 the system-stretch property of the tweak data to stretch the
1151 (includePageLayoutFile): Void function which includes the
1152 generated page-layout file if it exists and if the page layout
1153 dumping is not asked.
1154 (scoreTweak): if the score tweak named by the argument exists,
1157 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1159 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1160 handle correctly the case where there are multiple \noPageBreaks
1163 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1165 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1167 * abc2ly.py fix so that entering " -- " will translate to a -- in
1168 the lilypond instead of a " - - "
1170 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1172 * lily/align-interface.cc: fix typo
1174 * lily/dynamic-text-spanner.cc (print): Add a special case for
1175 trill spanner right sides.
1177 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1179 * lily/align-interface.cc (get_extents_aligned_translates): add
1180 support for padding variable.
1182 * lily/break-align-interface.cc (self_align_callback): oops: use
1183 loop variable in guard.
1185 * input/regression/repeat-percent-grace.ly: new file.
1187 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1188 remember first currentCommandColumn of a grace run. Fixes issue 70.
1190 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1191 move class definition to CC file.
1193 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1195 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1196 measure-long repeats.
1198 * flower/include/international.hh: include stdarg.h
1200 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1202 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1203 put_systems_on_pages to return an empty result, we need to assign
1204 demerits properly in that case.
1205 (put_systems_on_pages): Make the number of pages depend on the
1206 evenness of page_number. Add auto-first-page-number.
1207 (calc_subproblem): ensure that the page-number is even for the
1208 left-hand page. Warn if the first page-turn doesn't fit onto the
1209 first (right-hand) page.
1211 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1212 (min_page_count): make this publicly accessible
1213 (min_page_count): fix a bug when there are forced page breaks that
1214 was introduced when I made this loop run backwards
1215 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1216 replace space_systems_on_min_pages with these two. The logic in
1217 space_systems_on_min_pages was getting too convoluted and is better
1218 contained in page-turn-page-breaking.
1220 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1222 (breakable_column): typo
1224 * lily/source-file.cc (get_line): fix off-by-one error
1225 and clean up some of the logic
1227 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1229 * lily/page-breaking.cc (make_pages): honour the first-page-number
1232 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1234 * VERSION (PACKAGE_NAME): bump version.
1236 2006-09-26 Pal Benko <benko.pal@gmail.com>
1238 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1239 (the latter is the same as petrucci-f which is kept for compatibility)
1241 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1243 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1245 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1247 * lily/global-context.cc (run_iterator_on_me): break out of loop
1248 if moment doesn't increase.
1250 * scm/define-grob-properties.scm (all-user-grob-properties): add
1253 * lily/accidental.cc (after_line_breaking): read forced property.
1255 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1258 * input/regression/accidental-forced-tie.ly: new file.
1260 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1262 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1264 * lily/figured-bass-engraver.cc: only listen to rest events if
1265 ignoreFiguredBassRest is not set.
1267 * scm/define-context-properties.scm
1268 (all-user-translation-properties): add ignoreFiguredBassRest property
1270 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1272 * lily/paper-book.cc (get_system_specs):
1273 (set_system_penalty): fix breakbefore.
1274 We used to set a penalty on the system after the break, now we
1275 set a permission on the system before the break
1277 * lily/grob-property.cc: add scm debugging hooks into
1278 property modification
1280 * lily/context-property.cc:
1282 rename make_foo_from_properties to internal_make_foo and
1283 move it from context-property.cc to a member function of
1286 * lily/include/lily-guile-macros.hh:
1287 overload ly_symbol2scm macro so that there is no more need
1290 * lily/volta-repeat-iterator.cc:
1291 * lily/tweak-engraver.cc:
1292 * lily/tuplet-bracket.cc:
1293 * lily/span-bar-engraver.cc:
1294 * lily/script-engraver.cc:
1295 * lily/prob-scheme.cc:
1296 * lily/pointer-group-interface.cc:
1298 * lily/grob-scheme.cc:
1299 * lily/grob-property.cc:
1301 * lily/context-property.cc:
1302 * lily/break-substitution.cc:
1303 * lily/break-align-engraver.cc:
1304 * lily/axis-group-interface.cc:
1305 * lily/align-interface.cc:
1306 remove calls to internal_FOO
1308 * lily/system-start-delimiter-engraver.cc:
1309 * lily/parenthesis-engraver.cc:
1310 * lily/accidental-engraver.cc:
1311 remove calls to make_foo_from_properties
1313 2006-09-23 Graham Percival <gpermus@gmail.com>
1315 * Documentation/user/programming-iterfaces.itely: fix
1316 def-music-function -> define-music... leftover.
1318 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1320 * lily/page-spacing.cc (min_page_count): by running the loop
1321 backwards, we can calculate ragged_last properly.
1323 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1325 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1326 printfirst-page-number -> print-first-page-number
1328 * python/convertrules.py: corresponding rule.
1330 * Documentation/user/page.itely (Page formatting): Document the
1331 default values of all page layout parameters.
1333 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1335 * lily/lexer.ll: remove limitation on music function arity. New
1336 mode extratoken, which inserts extra EXPECT_* tokens after
1337 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1339 * lily/parser.yy: Change grammar for music function accordingly.
1341 * lily/include/lily-parser.hh: New method get_state, new member
1342 hidden_state. Works around a problem when parser fetches
1343 MUSIC_FUNCTION token but not the following EXPECT_* token.
1345 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1348 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1349 references to Music; use ASSIGN_EVENT_ONCE everywhere
1351 * lily/grob-info.cc: junk *music_cause
1353 * lily/music.cc: copy eventified articulations to stream event
1355 * lily/part-combine-iterator.cc: Cleanup using enums
1357 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1360 * lily/include/engraver.hh: Junk music.hh include
1362 * lily/stream-event.cc: Changed constructors
1364 2006-09-21 Graham Percival <gpermus@gmail.com>
1366 * Documentation/user/tweaks.itely (Fitting music onto fewer
1367 pages): change settings to avoid warning messages.
1369 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1371 * Documentation/user/tweaks.itely (Fitting music onto fewer
1372 pages): Add between-system-space setting.
1374 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1376 * lily/accidental-placement.cc (calc_positioning_done): don't
1377 trigger Y-extent calculation too early. Use pure_height instead.
1379 * lily/scale.cc (LY_DEFINE): new file.
1381 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1383 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1384 that happen at the start of a score: having a zero-length
1385 chunk was messing up min_system_count calculations.
1387 * lily/source-file.cc (get_line): lower_bound, not
1388 binary_search. Fixes problem where point-and-click would
1389 always point to the first line.
1391 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1393 * lily/accidental-placement.cc (calc_positioning_done): also put
1394 stems into accidental support.
1396 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1399 * scm/script.scm (default-script-alist): avoid-slur and
1400 slur-padding for portato script.
1402 * lily/stem-tremolo.cc (translated_stencil): new function.
1403 (height): use new function. Fixes tremolos on whole notes.
1405 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1408 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1410 * scripts/abc2ly.py (try_parse_comment): idem.
1412 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1413 bar_string iso. string.find()
1417 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1420 2006-09-18 Graham Percival <gpermus@gmail.com>
1422 * Documentation/user/basic-notation.itely: add bug
1423 warning about ties and octavation/clef.
1425 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1427 * VERSION (PACKAGE_NAME): release 2.9.18
1429 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1431 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1432 figure out midi file names right here.
1434 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1436 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1438 * scm/backend-library.scm: option naming: gs-font-load*s*
1440 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1443 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1445 * scm/define-music-types.scm (music-descriptions): remove
1446 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1447 Music::to_event doesn't complain.
1449 * lily/accidental-placement.cc (ape_compare):
1450 * lily/semi-tie.cc (compare):
1451 * lily/note-column.cc (shift_compare): replace by XXX_less
1453 * lily/tie-formatting-problem.cc (set_chord_outline):
1454 * lily/tie-column.cc (calc_positioning_done):
1455 * lily/system.cc (post_processing)
1457 * lily/stem.cc (note_head_positions)
1458 (calc_positioning_done):
1459 * lily/spanner.cc (do_break_processing)
1460 (find_broken_piece):
1461 * lily/span-bar.cc (print):
1462 * lily/semi-tie-column.cc (calc_positioning_done):
1463 * lily/rest-collision.cc (calc_positioning_done):
1464 * lily/program-option.cc (get_help_string):
1465 * lily/note-collision.cc (get_clash_groups):
1466 * lily/new-fingering-engraver.cc (position_scripts):
1467 * lily/keyword.cc (Keyword_table):
1468 * lily/hara-kiri-group-spanner.cc (request_suicide):
1469 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1470 * lily/accidental-placement.cc (calc_positioning_done):
1472 * lily/beam.cc (get_beam_segments):
1473 * lily/grob-array.cc (remove_duplicates):
1476 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1477 ragged-last-bottom = ##f (test the new page breaker)
1479 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1481 * scm/define-context-properties.scm
1482 (all-internal-translation-properties): remove properties that
1483 were used to communicate page-turn stuff to the paper-column
1486 * lily/lily-guile.cc (robust_scm2string): new function
1488 * lily/paper-column-engraver.cc: Clean up page turn stuff
1490 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1491 instead of cluttering up paper-column-engraver.cc
1493 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1495 * scm/layout-page-dump.scm (scm): export utility function names,
1496 to allow user writing cutsom dumping functions.
1498 * scm/layout-page-layout.scm: export utility function names to
1499 enable custom page breaking function writing. Tabify.
1500 (line-next-space): use ?-suffix only for predicates
1501 (page-maximum-space-to-fill): new function. Return the space
1502 between first and bottom system of a page, to give to
1504 (space-systems): use a space-to-fill argument (for instance as
1505 computed by page-maximum-space-to-fill) instead of computing
1506 internaly this space with the page height. That way, the caller
1507 can adjust the space to use.
1508 (make-page-from-systems, walk-paths): compute space to fill before
1509 calling space-systems.
1511 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1513 * scm/script.scm (default-script-alist): set paddings for every
1514 type here, increase for portato mark.
1516 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1519 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1521 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1522 use spanner::set-spacing-rods
1524 * lily/note-column.cc: reformat.
1526 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1527 step positioning for note/rest combinations.
1529 * input/regression/rest-note-collision.ly: new file.
1531 * scm/define-grobs.scm (all-grob-descriptions): add
1534 * flower/include/std-vector.hh: switch off again.
1536 * VERSION (PATCH_LEVEL): bump to 2.9.18
1538 * flower/include/std-string.hh: idem.
1540 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1542 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1544 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1547 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1549 * Documentation/user/page.itely: update page breaking documentation
1551 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1553 * lily/note-collision.cc (calc_positioning_done): only access
1554 first head if available.
1556 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1558 * scm/framework-ps.scm (output-preview-framework): use new name.
1560 * lily/program-option.cc (internal_set_option): use new names.
1562 * Documentation/user/SConscript (lilypond_book_flags): update -d
1565 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1566 output into other programs): new variable names.
1568 * scm/lily.scm (define-scheme-options): uniformize var names.
1570 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1571 tuplets_ is non-empty before popping.
1573 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1575 * lily/spanner.cc (find_broken_piece):
1576 * lily/spacing-spanner.cc (get_columns):
1577 * lily/source-file.cc (get_line):
1578 * lily/simple-spacer.cc (get_column_description):
1579 * lily/keyword.cc (lookup):
1580 use the new binary search.
1582 * flower/include/std-vector.hh: replace binary_search with
1583 a more STL-like version
1585 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1587 * lily/tie-performer.cc: remove unused last_event_ property.
1588 (class Tie_performer): add now_tied_heads_ property for
1589 partially-tied heads.
1590 (acknowledge_audio_element): when adding an Audio_note, put the
1591 note in now_tied_heads_ if the audio note is partially tied.
1592 (stop_translation_timestep): always include entries in
1593 now_tied_heads_ in heads_to_tie_.
1595 * lily/drum-note-performer.cc (process_music): look for tie-events
1596 in the articulations; pass to Audio_note constructor.
1598 * lily/note-performer.cc (process_music): look for tie-events in
1599 the articulations; pass to Audio_note constructor.
1601 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1604 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1605 include initializer in constructor.
1607 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1609 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1610 unless they are breakable. This fixes discrepancies between the forces
1611 calculated here and the forces calculated in get_line_configuration.
1613 * lily/grob.cc (pure_relative_y_coordinate): fix some
1614 mis-estimation that was happening with piano staves.
1616 * lily/constrained-breaking.cc (resize): don't choke if we get a
1617 measure that won't fit on a line.
1618 (combine_demerits): don't consider uniformity when ragged
1620 * lily/page-spacing.cc (solve): why the f* were there two of these?
1621 (calc_subproblem): properly handle the case where a system is taller
1624 * lily/system.cc (get_paper_system): ensure that all the permissions
1625 and penalties are passed to the paper systems.
1627 * lily/page-breaking.cc (create_system_list): support system-count.
1629 * scm/define-grobs.scm (pure-print-callbacks): add
1630 ly:script-interface::print
1632 * lily/page-spacing.cc (min_page_count): fix calculation of min
1633 pages if we are ragged and there are non-zero springs.
1635 * scm/layout-page-layout.scm: if the pure-height estimates are under
1636 the real height, allow space-systems to ignore padding if it is
1637 needed in order to fit the systems on one page
1639 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1641 (solve): fix performance problem. Make sure we always get at least
1644 * lily/page-breaking.cc (make_pages): include write-page-breaks
1647 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1649 * scm/define-grobs.scm: add the new slur-callback
1650 fix pure-relevant to not exclude grobs whose extent is already
1653 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1656 * lily/slur.cc (pure_height): new callback to estimate the height
1659 2006-09-02 Graham Percival <gpermus@gmail.com>
1661 * Documentation/user/invoking.itely: small update on
1662 MacOS X notes; thanks Trevor!
1664 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1666 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1668 * lily/lexer.ll: accept EOF in all states.
1670 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1672 * lily/source-file.cc (Source_file): always 0-terminate character
1673 array, to prevent Flex from barfing.
1675 * lily/global-context.cc (get_output): robustness: don't crash if
1676 no Score context found.
1678 * lily/include/book.hh (class Book): idem.
1680 * lily/include/context-def.hh (struct Context_def): idem.
1682 * lily/include/score.hh (class Score): don't derive from Input.
1684 * lily/book.cc (Book): add a copy ctor.
1686 * buildscripts/output-distance.py (FileLink.calc_distance): count
1687 orphans in distance too.
1689 * python/midi.c (midi_parse_track): robustness: don't read past
1692 * ly/performer-init.ly: add Control_track_performer, move
1693 Tempo_performer and Time_signature_performer to Score.
1695 * lily/score-performer.cc (acknowledge_audio_elements): override
1696 from base class: add to audio-columns
1698 * lily/control-track-performer.cc (add_text): new file: generate
1701 * lily/performance.cc: move output_header_track to
1702 Control_track_performer ()
1704 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1706 * lily/include/midi-item.hh (class Midi_channel_item): insert
1707 class into hierarchy, for items that can have a channel setting. Dehungarify.
1709 * lily/include/performer.hh (class Performer): remove
1710 play_element(); move functionality into announce/acknowledge.
1712 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1714 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1715 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1717 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1719 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1722 * lily/all-font-metrics.cc: remove TFM support.
1724 * lily/include/tfm.hh: remove TFM support, TFM reader.
1726 * lily/include/binary-source-file.hh: remove Binary_source_file.
1728 2006-08-27 Graham Percival <gpermus@gmail.com>
1730 * Documentation/topdocs/NEWS.itely: add @c marker for
1731 stuff I've processed.
1733 * Documentation/user/ various: info from NEWS.
1735 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1737 * lily/paper-column-engraver.cc (finalize): Oops, this change
1738 should have gone in on 2006-08-23
1740 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1742 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1743 quotes to quote arguments. Fixes Windows problem.
1745 * python/lilylib.py (progress): idem
1747 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1749 * scripts/musicxml2ly.py: fix for importing
1750 minor key signatures from MusicXML. (Phillip Kirlin)
1752 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1754 * python/musicxml.py:
1755 (Attributes.get_key_signature): now correctly retrieves mode from
1758 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1760 * lily/parser.yy (output_def_body): take ownership of identifier
1763 * Documentation/user/advanced-notation.itely (Metronome marks):
1764 update use of \tempo in \midi.
1766 * VERSION: release 2.9.16
1768 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1770 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1773 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1775 * input/regression/tie-chord-partial.ly: clarify example.
1777 * scm/define-music-properties.scm (all-music-properties): remove
1780 * ly/music-functions-init.ly: remove \untied.
1782 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1783 stream events and music events.
1784 (stop_translation_timestep): search acknowledged heads for
1787 * input/regression/tie-chord-partial.ly: new file.
1789 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1790 for \char markup command.
1792 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1794 * scm/define-music-types.scm (music-descriptions): consistency:
1795 Use solo-{one,two}-event iso. solo-[12]-event.
1797 * lily/part-combine-engraver.cc (process_music):
1798 Use solo-{one,two}-event iso. solo-[12]-event.
1800 * ly/declarations-init.ly (partCombineListener): add Timing as
1803 * flower/std-string.cc (string_copy): use copy ()
1805 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1807 2006-08-24 Graham Percival <gpermus@gmail.com>
1809 * Documentation/user/changing-defaults.itely, global.itely,
1810 lilypond-book.itely, page.itely: minor changes from mailist.
1812 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1814 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1817 * scm/define-context-properties.scm
1818 (translator-property-description): robustness: detect type errors
1819 in property definitions.
1821 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1822 after getting it from SCM.
1824 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1827 * lily/include/performer.hh (class Performer): strip get_tempo()
1830 * lily/midi-def.cc: strip file.
1832 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1834 * lily/include/context-def.hh (struct Context_def): use
1835 VIRTUAL_COPY_CONSTRUCTOR().
1837 * lily/source-file.cc: smobification.
1839 * lily/include/source-file.hh (class Source_file): smobify
1840 Source_file. Trim redundant members.
1842 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1843 clones after creation. This plugs a huge memory leak.
1845 * python/convertrules.py (FatalConversionError.sub_tempo):
1846 complete rule for \midi{ \tempo }
1848 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1850 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1852 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1854 * input/regression/optimal-page-breaking-hstretch.ly: test for
1855 ragged-last-bottom also
1857 * lily/paper-column-engraver.cc (finalize): make the end of a score
1858 breakable by default. This is to balance out a change in behaviour
1859 of the page-turn-breaker which no longer makes the end of a score
1862 * lily/paper-book.cc (pages): set the systems_ once the pages are
1865 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1866 Page_breaking interface.
1868 * lily/page-breaking.cc (class Page_breaking): make the interface
1869 more consistent and provide abstractions for dealing with
1872 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1873 algorithm. Use the new interface to Page_breaking.
1875 * lily/page-spacing.cc: better support for ragged-bottom and
1878 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1880 * python/convertrules.py (conv): warning on \tempo{}
1882 * ly/performer-init.ly: set tempoWholesPerMinute.
1884 * ly/midi-init.ly: remove \midi
1886 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1889 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1890 tempoUnitDuration for determining what to print.
1892 * lily/lyric-extender.cc: typo.
1894 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1896 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1899 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1901 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1902 eps-pad-boxes is set.
1904 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1906 * THANKS: update sponsors.
1908 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1910 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1912 * input/regression/tie-chord-untied.ly: new file.
1914 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1916 * scm/define-music-properties.scm (all-music-properties): add
1919 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1921 (headertext_nopics): sanitize no-examples text.
1923 * scm/page.scm (make-page-stencil): don't rely on extents of
1924 page-stencil. This fixes spurious space around .EPS files produced
1925 with the EPS backend.
1927 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1929 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1931 * lily/hara-kiri-engraver.cc (process_music): remember
1932 keepAliveInterfaces after processing \set
1934 * lily/lyric-extender.cc (print): support left/right-padding for
1937 * scm/documentation-generate.scm (string-append): revert lilypond/
1940 2006-08-20 Graham Percival <gpermus@gmail.com>
1942 * Documentation/user/lilypond.tely: clarification to
1943 license presentation (not to actual license).
1945 * Documentation/user/basic-notation.itely,
1946 instrument-notation.itely: minor changes.
1948 * input/ {regression, test}/+.ly: clarification to
1949 text (you can click on examples). Thanks, Mats!
1951 * input/manual/bar-lines.ly: adds ||: repeats.
1953 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1955 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1957 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1959 * Documentation/user/lilypond.tely: strip lilypond/ from info
1960 links, rename to category LilyPond
1962 * lily/pango-font.cc (description_string): new function.
1964 * VERSION: release 2.9.15
1966 * lily/spacing-engraver.cc (stop_translation_timestep): use
1967 Dscho's fix for spacing spanner.
1969 * scm/define-music-types.scm (music-descriptions): use
1970 apply-output-event for ApplyOutputEvent
1972 * lily/output-property-engraver.cc (listen_apply_output): rename
1973 from listen_layout_instruction.
1975 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1978 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1980 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1981 commandline args with contains, split by \n.
1983 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1984 write snippet-names file, call with -dread-file-list. Fixes
1985 command limitations on 64-bit systems.
1987 * input/regression/stencil-color-rotation.ly: new file.
1989 * lily/include/translator.hh (struct Acknowledge_information):
1990 revert: don't use Protected_scm in global objects, as GUILE can't
1991 handle gc_unprotect from automated destructors on MacOS X.
1993 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1994 color, not the original stencil. Fixes combinations of
1995 color/transparency/rotation.
1997 * scripts/lilypond-book.py (main): add --formats=eps for
2000 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2001 crash if spacing_ is nonexistent.
2003 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2005 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2006 \catcode`\@=12 in the LaTeX output.
2008 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2010 * scm/define-music-types.scm (music-descriptions):
2011 use sustain-event iso. sustain-pedal-event.
2013 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2015 * scripts/convert-ly.py: honour the -n command-line switch
2017 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2019 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2020 break specification.
2022 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2024 * Documentation/user: convert-ly the user manual
2026 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2028 * stepmake/aclocal.m4: version check patch (thanks MWD)
2030 * ly/music-functions-init.ly: robustness. Don't crash if
2031 currentBarNumber is not a number.
2033 * VERSION (PATCH_LEVEL): bump.
2035 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2037 * stepmake/aclocal.m4: better version check; handle fooX.Y
2040 * ly/performer-init.ly: instrument name fixup.
2042 * input/manual/chord-names-jazz.ly (banterProperties):
2043 instrumentName update
2045 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2047 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2049 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2050 function. Use hash tables to check membership.
2052 * lily/general-scheme.cc (LY_DEFINE): new function.
2054 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2056 * lily/include/translator.hh (struct Acknowledge_information): add
2059 * ly/music-functions-init.ly: change name to BreathingEvent
2061 * input/regression/*.ly: apply it.
2063 * python/convertrules.py (conv): better instrumentName conversion
2066 * scm/define-music-types.scm (music-descriptions): add
2067 line-break-event to LineBreakEvent music
2069 * lily/music.cc (to_event): don't crash if music type not set.
2071 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2074 * lily/spacing-engraver.cc (stop_translation_timestep): set
2075 spacing for proportional notation too.
2077 * scm/translation-functions.scm (format-bass-figure): inspect
2080 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2082 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2084 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2086 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2088 * scm/layout-page-layout.scm (make-page-from-systems): new function
2089 (optimal-page-breaks): use the new page-breaking calling convention
2091 * scm/define-context-properties.scm (all-user-translation-properties):
2094 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2095 revokePageTurns functionality. If there is a special barline within
2096 the breakable region, break there instead of at the end of the region.
2098 * lily/paper-book.cc (pages): use the new page-breaking calling
2101 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2103 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2105 * scripts/lilypond-book.py: insert \sourcefileline command in
2106 output, so lilypond error messages refer to the spot in the
2107 original .lytex / .itely sourcefile.
2109 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2111 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2112 space to next column for distance to fixed col.
2114 * VERSION (PACKAGE_NAME): release 2.9.14
2116 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2119 * lily/accidental-engraver.cc (process_acknowledged): don't create
2120 accidental for trill span event. This fixes spurious accidentals
2123 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2125 * scm/define-grob-properties.scm (all-user-grob-properties):
2126 Clarify documentation of side-axis and direction. Thanks to Paul
2127 for the inspiration.
2129 * lily/bar-line.cc: Add documentation for "||:" also in the
2130 interface documentation.
2132 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2134 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2136 * lily/paper-column.cc (set_system): new function.
2138 * lily/spacing-engraver.cc (stop_translation_timestep): store
2139 SpacingSpanner refs in Paper_column.
2141 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2142 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2144 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2146 * lily/beam-engraver.cc (listen_beam): add method for
2147 Grace_beam_engraver too.
2149 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2151 * python/convertrules.py: Fix indentation bug that broke
2152 conversion of files older than 1.3.117.
2153 Fix escape error in the description for 2.9.6.
2155 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2157 * lily/*-engraver.cc: convert all try_music functions to listen_*
2160 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2161 enums to represent pedal types, and calculate more data statically.
2163 * scm/part-combiner.scm (recording-group-emulate): create a
2164 softcoded substitute for recording-group-engraver.cc.
2166 * lily/music.cc: make a common transpose function for events and
2169 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2170 ManualMelismaEvent, and obsoletes Melisma_translator.
2172 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2174 * input/test/instrument-name-align.ly: update version.
2176 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2178 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2179 Doc the --pdf flag to lilypond-book.
2181 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2183 * Documentation/topdocs/NEWS.tely (Top): add description.
2185 * input/regression/tuplet-full-length-note.ly: add file.
2187 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2188 always store axis group.
2190 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2192 * input/regression/instrument-switch.ly: new file.
2194 * lily/instrument-switch-engraver.cc (process_music): new file.
2196 * ly/engraver-init.ly: add Instrument_switch_engraver
2198 * ly/music-functions-init.ly: \instrumentSwitch
2200 * scm/define-context-properties.scm
2201 (all-user-translation-properties): add instrumentCueName
2203 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2205 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2207 * ly/music-functions-init.ly: music function \transposition.
2209 * lily/parser.yy (command_element): softcode \transposition.
2211 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2212 (process_music): oops.
2214 * lily/instrument-name-engraver.cc (start_spanner): new
2215 function. Create spanner when property changes.
2216 (stop_spanner): new function.
2218 * python/convertrules.py (conv): add rule.
2220 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2221 shortInstrumentName iso. instr.
2223 * scm/output-ps.scm (dashed-line): add phase argument to
2226 * lily/bar-line.cc (dashed_bar_line): new function.
2227 (compound_barline): support \bar "dashed".
2229 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2230 --output=DIR to DIR/BASE if it is a dir.
2232 * flower/file-name.cc (file_part): new function
2233 (dir_part): new function
2235 * lily/lily-parser-scheme.cc (LY_DEFINE):
2237 * DEDICATION: update
2239 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2241 * lily/instrument-name-engraver.cc: formatting.
2243 * python/convertrules.py (conv): bugfix for \epsfile.
2245 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2249 * lily/gourlay-breaking.cc: Oops, these should have been included
2252 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2254 * scripts/*.py (program_name): cleanup relocation snippets.
2256 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2258 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2260 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2261 page-breakable by default
2263 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2264 correctly calculated for a single-system page
2266 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2267 bigger than the second number
2269 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2270 acknowledge that we aren't satisfying constraints)
2272 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2275 * lily/grob.cc (pure_height): add minimum-Y-extent
2277 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2280 * lily/constrained-breaking.cc: convert code to use new Matrix class
2281 (get_best_solution): new function
2283 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2284 is a page with no systems
2286 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2288 * VERSION (PACKAGE_NAME): release 2.9.13
2290 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2293 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2295 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2297 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2300 * scm/define-grob-properties.scm (all-user-grob-properties):
2301 remove grace-space-factor.
2303 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2304 grace-spacing-interface
2305 (spacing-options-interface): add.
2307 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2309 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2311 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2312 GraceSpacing object.
2314 * lily/note-spacing.cc: fix prop list formatting
2316 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2317 beaming for grace notes too.
2319 * input/regression/spacing-grace.ly: update.
2321 * lily/grace-spacing-engraver.cc: new file.
2323 * lily/spacing-spanner.cc: add strict-grace-spacing.
2325 2006-07-20 Graham Percival <gpermus@gmail.com>
2327 * lily/parser.yy: compile fix.
2329 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2331 * scm/define-grobs.scm (all-grob-descriptions): typo.
2333 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2334 .eps extension from includegraphics.
2336 * scripts/lilypond-book.py (main): add support for --pdf.
2338 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2339 callback to compute common shortest duration.
2340 (set_springs): typo.
2342 * scm/define-grob-properties.scm (all-user-grob-properties): add
2343 strict-grace-spacing.
2345 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2346 support float_grace_columns_.
2348 * lily/spacing-options.cc (init_from_grob): new file.
2350 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2352 * input/regression/spacing-loose-grace.ly: new file.
2354 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2356 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2357 tupletFullLengthNote too. Choose right bound depending on value.
2359 * input/regression/tuplet-full-length-note.ly: new file.
2361 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2363 * lily/*-performer.cc: Converted try_music to listen_*
2365 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2366 as a stream-event internally. Introduce event_cause (), deprecate
2369 * scm/define-music-types.scm: Removed BusyPlayingEvent
2371 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2373 * Documentation/user/advanced-notation.itely (Font selection):
2374 Document how to get a list of available fonts using 'lilypond
2375 -dshow-available-fonts blabla'.
2377 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2379 * GNUmakefile.in: filter lily-XXX.pdf files.
2381 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2383 * scm/define-grob-properties.scm (all-internal-grob-properties):
2384 remove delta-pitch. Use delta-position everywhere.
2386 * scm/output-lib.scm (fall::print): use new order.
2388 * scm/output-ps.scm (path): reorder arguments.
2390 * scm/output-svg.scm (path): support for path primitive.
2392 * input/regression/bend-after.ly: new file.
2394 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2395 recipe for eps -> pdf conversion.
2397 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2399 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2402 2006-07-19 Graham Percival <gpermus@gmail.com>
2404 * input/manual/screech-boink.ly: moved to here.
2406 * input/screech-boink.ly: deleted.
2408 * scm/define-grob-properties.scm: clarify doc string.
2410 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2412 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2414 * scm/output-ps.scm (path): define path.
2416 * scm/define-stencil-commands.scm
2417 (ly:register-stencil-expression): add path.
2419 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2421 * ly/engraver-init.ly: add Fall_engraver
2423 * lily/parser.yy (music_function_event): allow musicfunction
2424 without music arg as music_function_event.
2426 * lily/grob-scheme.cc (LY_DEFINE):
2427 ly:grob-robust-relative-extent. New function.
2429 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2431 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2433 * scm/output-lib.scm (fall::print): new function
2435 * lily/fall-engraver.cc (stop_fall): new file.
2437 * ly/music-functions-init.ly: alphabetise.
2439 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2442 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2444 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2446 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2449 * lily/translator-group.cc (connect_to_context): non const error message.
2451 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2453 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2456 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2458 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2460 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2463 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2465 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2467 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2469 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2471 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2473 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2475 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2477 * scm/layout-page-layout.scm: Define module, tidy code, use more
2478 functions iso. a single big one.
2480 * scm/layout-page-dump.scm: move page dump functions used in two
2481 pass spacing to this file. Define module.
2483 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2486 * ly/paper-defaults.ly: use module layout-page-layout.
2488 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2490 * lily/music.cc: Revised MusicEvent event class. It now contains
2491 event data directly instead of encapsulating it in music. The
2492 previously used class is renamed to OldMusicEvent.
2494 * lily/stream-event.cc: Stream events are now probs.
2496 * lily/translator-group.cc, lily/translator.cc: Translators can
2497 now listen directly to stream events, by using macros
2498 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2500 * lily/arpeggio-engraver.cc: Converted to use new event system
2502 * THANKS: Corrected spelling mistake.
2504 2006-07-12 Graham Percival <gpermus@gmail.com>
2506 * Documentation/user/SConscript, make/lilypond-vars.make,
2507 input/GNUmakefile: doc build looks in input/manual instead
2510 * input/manual/ GNUmakefile, SConscript: build files for
2513 * input/test/ various: some files moved to input/manual/
2515 * Documentation/user/basic-notation.itely: small updates;
2516 thanks Kieren and Charles!
2518 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2520 * VERSION (PACKAGE_NAME): release 2.9.11
2522 * Documentation/topdocs/NEWS.tely (Top): update prop value
2524 * Documentation/user/basic-notation.itely (Tuplets): new property
2527 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2529 * python/convertrules.py (conv): tweaks.
2531 * VERSION (PATCH_LEVEL): bump version.
2533 * python/convertrules.py (conv): add rule for
2534 tupletNumberFormatFunction.
2536 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2537 tupletNumberFormatFunction.
2539 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2540 text through 'text callback.
2542 * lily/time-scaled-music-iterator.cc (construct_children): copy
2543 tweaks generated events.
2545 * scm/define-context-properties.scm
2546 (all-user-translation-properties): remove tupletNumberFormatFunction
2548 * lily/tuplet-engraver.cc (process_music): don't read
2549 tupletNumberFormatFunction
2551 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2554 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2556 * lily/global-context-scheme.cc: Separated ly:run-translator into
2559 * lily/score-engraver.cc, lily/score-performer.cc,
2560 scm/define-context-properties.scm: Make paper/midi output
2561 accessable as a context property.
2563 * lily/score-translator.cc, lily/score-context.cc: Removed.
2565 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2567 * scm/ps-to-png.scm (Module):
2568 * scm/framework-tex.scm (Module):
2569 * scm/framework-ps.scm (Module):
2570 * scm/backend-library.scm (Module):
2571 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2572 "dDEVICEHEIGHTPOINTS".
2574 2006-07-04 Graham Percival <gpermus@gmail.com>
2576 * Documentation/user/ various: general improvements to
2577 "working with lilypond files" section.
2579 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2581 * lily/sequential-iterator.cc: Change the default get_music_list
2582 to read elements-callback music property
2584 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2585 processing of multimeasure rests. Softcoded
2586 sequential-music-iterator.
2588 * lily/sequential-music-iterator.cc: Removed.
2590 2006-06-28 Graham Percival <gpermus@gmail.com>
2592 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2594 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2596 * lily/parser.yy: Wrap non-post-events in EventChords before
2597 assigning them to identifiers.
2599 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2601 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2602 gives correct vertical placement of \bar ":" in all staff
2603 sizes. Thanks Martial!
2605 2006-06-26 Graham Percival <gpermus@gmail.com>
2607 * Documentation/user/invoking.itely : minor update from mailist.
2609 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2611 * lily/ various: Introduce stream events of types Prepare,
2612 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2613 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2615 * lily/global-context*.cc: Time is now -inf before iteration
2618 * lily/include/context.hh: Removed unique_, init_
2620 * Documentation/topdocs/NEWS: Make the feathered beam example
2621 avoid triggering a bug.
2623 2006-06-24 Graham Percival <gpermus@gmail.com>
2625 * Documentation/user/ various: small additions from mailist.
2627 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2629 * ly/performer-init.ly: Add some missing links in the context
2630 hierarchy for MIDI output. There are probably some more missing!
2632 2006-06-21 Graham Percival <gpermus@gmail.com>
2634 * Documentation/user/ various: minor spelling fixes;
2635 thanks Dave Luttinen!
2637 * Documentation/user/ various: small clarifications;
2638 thanks Anthony Youngman!
2640 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2642 * po/fr.po: add \n appropriately.
2644 * lily/lexer.ll: remove ? from version-seen?
2646 2006-06-19 John Mandereau <john.mandereau@free.fr>
2648 * po/fr.po; update translation, by Jean-Charles Malahieude and
2651 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2653 * THANKS: add Markus Schneider.
2655 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2656 Staff_symbol_engraver
2658 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2659 replace staff_engraver
2661 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2664 * lily/staff-collecting-engraver.cc
2665 (acknowledge_end_staff_symbol): new function
2667 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2669 * lily/staff-collecting-engraver.cc
2670 (acknowledge_end_staff_symbol): new function.
2672 * lily/main.cc: switch on relocation by default.
2674 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2676 * lily/spacing-spanner.cc (musical_column_spacing): set
2677 compound_fixed_note_space to 0.0. Document why.
2679 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2680 range of inverse_hooke_
2681 (Simple_spacer): init completely.
2683 (get_line_configuration): don't use cols.resize(); it introduces
2686 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2688 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2690 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2691 try. Divide by beatlength.
2693 * input/regression/beaming-ternary-metrum.ly: update doc.
2694 add beatLength hack.
2696 * scm/music-functions.scm (make-time-signature-set): add
2697 standard-beat-grouping.
2699 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2701 * input/regression/tie-whole.ly: new file.
2703 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2704 cross center of note head in case of invisible stem.
2706 2006-06-16 Graham Percival <gpermus@gmail.com>
2708 * Documentation/user/ various: small fixes from mailist.
2710 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2712 * lily/breathing-sign.cc (offset_callback): idem.
2714 * lily/align-interface.cc (align_to_fixed_distance): remove
2717 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2720 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2722 * VERSION (PACKAGE_NAME): release 2.9.9
2724 * ly/lilypond-book-preamble.ly: add \version
2726 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2728 * scripts/lilypond-book.py (PREAMBLE_LY): include
2729 lilypond-book-preamble.ly
2731 * lily/stem.cc (get_beaming): return max of 0 and
2732 scm_ilength. Fixes slurring from/to beams.
2734 * ly/lilypond-book-preamble.ly: new file.
2736 * lily/slur.cc: add inspect-index feature.
2738 2006-06-13 Graham Percival <gpermus@gmail.com>
2740 * Documentation/user/tutorial.itely: trivial fix.
2742 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2744 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2745 all non-event music in the parser via MAKE_SYNTAX.
2747 * lily/parser-scheme.cc: Add ly:parser-error function
2749 * scm/paper.scm: fix typo
2751 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2755 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2758 * buildscripts/output-distance.py (test_compare_signatures):
2760 (read_signature_file): use new signature format.
2762 * scm/stencil.scm (write-system-signature): simpler signature
2765 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2768 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2769 stem_end_position, but estimate instead.
2771 * lily/tuplet-bracket.cc (calc_positions): look at
2772 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2773 brackets narrower than beams.
2775 * lily/lexer.ll: set version-seen? even if version is
2778 * lily/rest.cc (y_offset_callback): bugfix: decide position
2779 override based on scm_is_number(). Fixes \rest on center staff
2782 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2783 patterns for 16th triplets.
2785 2006-06-10 Graham Percival <gpermus@gmail.com>
2787 * Documentation/user/ page.itely, global.itely: editing
2790 * Documentation/user/ various: findex -> funindex.
2792 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2794 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2795 insert extra tuplet events.
2797 2006-06-10 Graham Percival <gpermus@gmail.com>
2799 * Documentation/user/programming-interfaces.itely: add
2802 * python/convertrules.py: add annotatefoo -> annotate-foo
2805 * Documentation/user/global.itely: start editing.
2807 * Documentation/user/page.itely: major editing, new spacing
2810 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2812 * scm/define-markup-commands.scm (wordwrap-markups): use
2813 output-def 'line-width if undefined.
2815 * HACKING: trim outdated info.
2817 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2819 * scm/define-grobs.scm (all-grob-descriptions): Add
2820 line-spanner-interface to all grobs that already have
2821 text-spanner-interface or dynamic-text-spanner-interface
2823 * scm/page.scm: Rename annotate{headers,systems,page}->
2826 * input/regression/page-spacing.ly,
2827 input/regression/page-layout-manual-position.ly: idem
2829 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2831 * lily/line-spanner.cc: cleanup property list.
2833 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2834 generator expressions (2.3 compat).
2836 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2838 * lily/vertical-align-engraver.cc: Make sure that the
2839 align{Above,Below}Context properties are included in the automatic
2842 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2844 * scm/paper-system.scm (paper-system-annotate): also annotate the
2845 estimated pure-Y-extent
2847 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2849 * lily/system.cc (break_into_pieces): set the estimated height
2850 of each child system
2852 * lily/stem.cc (pure_height): new pure-Y-extent callback
2854 * lily/staff-symbol-referencer.cc (callback): don't destroy
2855 the staff-position property
2857 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2858 consider_suicide into two functions
2860 * lily/constrained-breaking.cc (resize): use the new pure
2861 callbacks to estimate the height of a system
2863 * lily/axis-group-interface.cc (pure_group_height): new
2864 side-effect-free VerticalAxisGroup height-callback
2866 * lily/align-interface.cc (get_extents_aligned_translates):
2867 split align_elements_to_extents into two functions
2868 (get_pure_child_y_translation): new function
2870 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2872 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2874 * lily/paper-score.cc: cache break_indices and columns
2876 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2878 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2880 * lily/font-config.cc (init_fontconfig): do the init if
2881 cache_file, but don't look at cache_file.
2883 * input/regression/quote-tie.ly: new file.
2885 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2886 to Head_event_tuple, so we deal gracefully with ties on
2889 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2892 2006-06-08 Graham Percival <gpermus@gmail.com>
2894 * input/test/ smart-transpose.ly, reverse-music.ly:
2895 \applyMusic to music functions update, thanks Michael!
2897 2006-06-07 Graham Percival <gpermus@gmail.com>
2899 * input/test/ add-staccato.ly, add-text-script.ly,
2900 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2901 music functions update, thanks to Michael Meixner.
2903 * Documentation/user/music-glossary.tely: small fix
2906 * Documentation/user/ various: minor additions from mailist.
2908 * Documentation/user/lilypond.tely, basic-notation.itely:
2909 small test of @funindex. (works here)
2911 * input/test/font-table.ly: reduce size to partially
2912 de-ugly version in manual.
2914 * Documentation/user/page.itely: new file (split former
2915 "global issues" into "page settings" and "non-musical
2918 * Documentation/user/ various: fix @ref{}s to match
2919 new chapter names (above).
2921 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2923 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2925 2006-06-06 Graham Percival <gpermus@gmail.com>
2927 * Documentation/user/advanced-notation.itely: add example
2928 for segno/coda on barline.
2930 * tex/texinfo.tex: merge from upstream.
2932 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2934 * scripts/lilypond-book.py (process_snippets): Argument fix.
2937 * buildscripts/builder.py:
2940 * Documentation/user/SConscript: More SCons fixes.
2942 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2944 * lily/font-config.cc (init_fontconfig): Only initialize if
2945 global cache_file is found.
2947 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2949 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2952 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2954 * VERSION (PACKAGE_NAME): release 2.9.8
2956 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2957 function. Delay ledger modifying ledgered grobs to
2958 stop_translation_timestep(), to ensure that we're ledgering
2959 according to the new spanner.
2960 (acknowledge_staff_symbol): don't check for non-NULL
2961 staff_sym->get_bound()
2963 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2966 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2969 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2970 directly from srcdir/stepmake/aclocal.m4
2972 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2975 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2977 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2979 * lily/simple-spacer.cc (get_line_configuration): add
2980 keep-inside-line rods
2981 (struct Column_desc): add constructor
2982 (struct Rod_desc): add constructor
2983 (get_line_forces): check for forced page breaks here too
2985 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2986 support/elements cycles between InstrumentNames and AxisGroups
2988 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2990 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2992 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2993 make-txt-files target.
2995 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2996 make-txt-files target.
2998 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3000 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3003 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3005 * Documentation/user/instrument-notation.itely,
3006 input/regression/breathing-sign-ancient.ly,
3007 input/test/divisiones.ly: Removed redundant property settings for
3010 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3011 fix lyrics alignment problems. They are implemented now as scheme
3012 functions that add the appropriate unicode char to the first lyric
3013 event rather than adding a separate lyric event. Minor edit of
3016 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3018 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3019 pollute src dir with built .txt files, but install directly from
3020 Documentation/topdocs/out/
3022 * buildscripts/output-distance.py
3023 (ComparisonData.create_html_result_page): put version/directories
3026 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3029 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3030 Patch by Karl Hammar
3032 * buildscripts/readlink.py: add file.
3033 Patch by Karl Hammar
3035 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3037 * lily/tuplet-number.cc (print): prevent stencil from being
3040 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3042 * scm/stencil.scm (write-system-signature): explicitly
3043 -well, superfluously- close output port.
3045 * buildscripts/output-distance.py (main): oops. Add extra argument.
3047 2006-06-05 Graham Percival <gpermus@gmail.com>
3049 * Documentation/user/music-glossary.tely: clarified example
3050 from Francisco Vila, thanks!
3052 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3054 * input/regression/spacing-section.ly: new file.
3056 * lily/input.cc (programming_error): new function.
3058 * lily/spacing-engraver.cc (try_music): new function. Accept
3059 spacing-section-event
3061 * lily/spacing-spanner.cc (set_springs): take slices of all
3062 columns for spacing.
3064 * lily/include/paper-column.hh (class Paper_column): add
3065 Paper_column::compare.
3067 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3069 * scm/define-music-types.scm (music-descriptions): add
3072 * lily/music-iterator.cc (report_event): use programming_error for
3073 sending non-event error.
3075 * lily/input.cc (programming_error): new function
3077 * buildscripts/output-distance.py (main): use compare-XXX for
3079 (main): --threshold option, default at 0.30
3081 * output-distance.py (main): add --threshold option.
3083 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3085 * scm/paper-system.scm (paper-system-annotate): fix problem when
3086 annotating an empty system
3088 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3090 * GNUmakefile.in: reinstate old web tar/copying.
3092 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3094 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3095 nothing changes. (Erik S)
3097 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3100 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3102 * scm/define-markup-commands.scm (whiteout): do not force
3103 foreground color of argument markup to black.
3105 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3106 the left of the arrow, instead of below the arrow name, so that,
3107 when two little arrows are vertically stacked, their dimensions
3108 and name should not overlap. Add a color key parameter.
3110 * scm/paper-system.scm (paper-system-annotate): Annotate
3111 next-space+next-padding instead of next-space. Annotate space
3112 between next-padding and next-space+padding, respectively, and
3113 following system extent and refpoint-Y-extent. Use colors.
3115 * scm/page.scm (annotate-page): translate annotations slightly to
3118 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3120 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3121 fix for x-staff slurs. Thanks Joe!
3123 * buildscripts/output-distance.py
3124 (SystemLink.output_expression_change_count): keep track of changed
3125 details, and dump in details html page.
3127 * input/regression/figured-bass-staff.ly: add note about setting
3128 properties in Staff context.
3130 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3131 add slurs and ties to support too.
3133 * buildscripts/output-distance.py (main): set dest_dir
3134 argument. Add --max-count option.
3136 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3138 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3139 shortcuts for special unicode chars that are useful in chant
3140 notation. Revised exisiting and added new comments.
3142 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3144 * make/mutopia-rules.make: remove duplicate recipe.
3146 2006-06-02 Werner Lemberg <wl@gnu.org>
3148 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3149 Add support for U+0132 (IJ) and U+0133 (ij).
3151 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3153 * buildscripts/output-distance.py (FileLink): new class. collect
3154 info systems from one .ly file.
3155 (FileLink.link_files_for_html): further tweaks.
3157 2006-06-02 Graham Percival <gpermus@gmail.com>
3159 * tex/texinfo.tex: partial fix for @funindex.
3161 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3164 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3166 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3168 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3169 @example too. Backportme.
3171 2006-06-02 Graham Percival <gpermus@gmail.com>
3173 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3174 from Werner Lemberg.
3176 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3178 * Documentation/user/music-glossary.tely: additional spanish
3179 updates and a lyrics fix in an example.
3181 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3183 * scm/define-grob-properties.scm: Previous patch contained
3184 spurious line from another patch not yet committed. Fixed.
3186 * scm/define-grob-properties.scm: Add missing doc strings for
3189 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3191 * buildscripts/output-distance.py
3192 (ComparisonData.write_text_result_page): separate the scores, sort
3195 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3198 * buildscripts/output-distance.py (me_path): use argv[0] for
3200 (ComparisonData.img_cell): use colored borders.
3202 * scm/stencil.scm (write-system-signature): escape newlines too.
3203 (write-system-signature): use (1,-1) interval for empty interval
3205 2006-01-01 Graham Percival <gpermus@gmail.com>
3207 * Documentation/user/music-glossary.tely: Spanish updates
3208 from Francisco Vila.
3210 * Documentation/user/lilypond-book.itely: addition from
3213 * Documentation/user/ various: edits, small additions
3216 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3218 * GNUmakefile.in (tree-lib-prefix-current):
3219 (tree-share-prefix-current): Use version number in tree, add
3222 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3224 * GNUmakefile.in: write VERSION, again.
3226 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3227 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3229 * stepmake/aclocal.m4: robuster version detection.
3231 * buildscripts/output-distance.py
3232 (ComparisonData.create_html_result_page): copy only if file
3233 exists, fixup src paths.
3235 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3237 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3239 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3240 Another datarootdir reto.
3242 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3243 available. This should be moved to postinstall-lilypond-doc.
3245 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3247 * GNUmakefile.in: simplify local-WWW-post.
3248 remove -type l from find.
3250 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3251 fixes. Don't follow symlinks.
3252 (ComparisonData.create_html_result_page): remove previous results.
3253 insert ../python in path.
3255 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3257 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3259 * config.make.in (datadir): Add datarootdir to silence autoconf.
3261 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3263 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3265 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3267 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3268 slash beams too wide.
3270 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3272 * VERSION: release 2.9.7
3274 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3276 * lily/relocate.cc (read_relocation_dir): Do not blindly
3279 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3281 * lily/parser.yy: replace THIS by PARSER
3283 * Documentation/index.html.in: add link to test-results.html page.
3285 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3287 * scm/translation-functions.scm (format-bass-figure): translate
3288 digits over 10 to the left
3290 * scm/define-markup-commands.scm (translate-scaled): new markup.
3292 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3295 * ly/engraver-init.ly: add Figured_bass_engraver
3297 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3299 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3301 * lily/score-engraver.cc (announce_grob): only note START announces.
3303 * lily/include/engraver-group.hh (Translator_group):
3304 acknowledge_hash_table_ is now drul.
3306 * lily/engraver.cc (announce_end_grob): new method.
3308 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3310 * lily/translator-dispatch-list.cc (create): take start_end argument.
3312 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3313 acknowledge_static_array_ to drul
3315 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3317 * scm/define-grob-interfaces.scm
3318 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3320 * scm/define-grobs.scm (all-grob-descriptions): add
3321 BassFigureAlignmentPositioning
3323 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3324 number stays up to date. Backportme.
3326 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3328 * Documentation/user/basic-notation.itely (Bar lines): Document
3331 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3333 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3335 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3336 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3339 * Resurrect `scons lily' build.
3341 * SConstruct (symlink_tree): Bugfix: link
3342 music-drawing-routines.ps to file iso directory.
3344 * lily/SConscript: Remove kpath-guile from LIBS.
3346 * SConstruct (libdir_package_version): Typo.
3347 (configure): Comment-out fontforge for lack of fontforge.pc .
3348 Also add libdir* to environment.
3350 2006-05-30 Graham Percival <gpermus@gmail.com>
3352 * Documentation/user/ various: minor additions from mailist and
3355 2006-05-30 Paco <fravd@ya.com>
3357 * Documentation/user/music-glossary.tely: numerous corrections and
3358 some new translations.
3360 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3364 * buildscripts/output-distance.py
3365 (ComparisonData.create_html_result_page): new routine: summarise
3366 results in HTML page with images.
3367 (ComparisonData.create_text_result_page): create summary text files too.
3369 * GNUmakefile.in (web-ext): package .signature files too. They
3372 * scm/stencil.scm (write-system-signature): typo.
3374 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3376 * scm/stencil.scm (write-system-signature): better escaping.
3377 only write signature for music systems, not for markup systems.
3379 * scm/framework-ps.scm (output-framework): dump-signatures support
3382 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3384 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3385 for -dno-point-and-click
3387 * lily/grob.cc (get_print_stencil): don't read
3388 point_and_click_global to determine whether to set grob-cause.
3390 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3392 * buildscripts/output-distance.py (main): new function.
3393 (ComparisonData): new class.
3395 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3396 careful with generating new LedgerLineSpanners.
3398 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3400 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3401 context. This fixes double ledger lines in output.
3403 * lily/system.cc (get_paper_system): remove 3 layer limit.
3405 * buildscripts/output-distance.py (SystemLink.distance): new
3406 file. Compare signatures.
3408 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3410 * lily/grob-array.cc (remove_duplicates): rename from
3411 uniq(). Sort before calling uniq() so it actually works.
3413 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3415 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3416 \version from lilypond file snippet.
3417 (Lilypond_file_snippet.ly): oops. typo.
3418 (find_toplevel_snippets): urgh. again.
3420 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3421 prevent duplicated broken items in output.
3423 * scm/framework-eps.scm (output-classic-framework): only dump if
3424 dump-signatures is set.
3426 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3428 * scm/stencil.scm (write-system-signature): new routine: write
3429 python parseable signature of a separate paper system.
3432 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3434 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3438 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3440 * translator-group.cc: send music events to engravers in
3441 non-bottom contexts.
3443 * tuplet-engraver.cc: process tuplet brackets in correct order.
3445 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3447 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3448 arg 2 might point us to a new binary (patch by Karl Hammar)
3450 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3452 * VERSION (PACKAGE_NAME): release 2.9.6
3454 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3456 * Documentation/user/*.itely: 2nd
3457 attempt: replace funindex -> findex globally.
3459 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3461 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3462 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3464 * scm/define-music-display-methods.scm: display methods for
3465 breaks. Fix \applyOutput.
3467 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3469 * Documentation/user/macros.itexi: comment out funindex expansion.
3471 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3474 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3475 Karl Hammar. Backportme.
3477 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3479 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3481 * Documentation/user/programming-interface.itely (Running a
3482 function on all layout objects): idem.
3484 * Documentation/user/introduction.itely (Automated engraving):
3485 update \applyOutput syntax
3487 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3488 remove debugging hook.
3490 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3493 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3495 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3496 TEXI2DVI_FLAGS to texi2dvi invocation.
3498 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3500 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3501 works. More work is done by iterator now, and engraver has been
3502 very much simplified.
3504 * lily/translator-group.cc: try_music is now invoked through a
3507 * lily/*-iterator.cc: Massive cleanups. Junked
3508 try_music_in_children globally. Renamed try_music to report_event,
3509 and made that method descend to a bottom context automatically.
3511 * lily/event-iterator.cc: New file.
3513 * lily/output-property-iterator.cc,
3514 lily/old-lyric-combine-music-iterator.cc: Removed.
3516 * python/convert-rules.py: Modified the syntax for \applyOutput.
3518 2006-05-23 Graham Percival <gpermus@gmail.com>
3520 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3523 * Documentation/user/ various: stuff that might have helped
3524 to fix the pdf creation, plus some minor doc additions.
3526 * Documentation/user/changing-defaults.itely: remove @b from
3527 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3529 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3531 * lily/beaming-pattern.cc (beamify): deal with negative start
3532 moments for beaming patterns.
3534 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3536 * lily/beaming-info.cc (beamify): new function: read beatLength
3537 and beatGrouping from context.
3539 * input/regression/beam-beat-grouping.ly (Module): new file.
3541 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3543 * lily/beam.cc (get_beam_segments): generate events for
3544 max_connect_ case too.
3545 (get_beam_segments): read Stem::max-beam-connect.
3547 * input/regression/beam-single-stem.ly: new file.
3549 * lily/stem.cc (set_beaming): use #f as signaling value for
3552 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3554 * lily/beam.cc (set_beaming): read clip-edges property.
3555 (calc_direction): don't suicide for single stem.
3557 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3558 argument, remove 1<<15 hack. Remove clip_edges()
3560 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3562 2006-05-21 Graham Percival <gpermus@gmail.com>
3564 * Documentation/user/basic-notation.itely: reorg.
3566 * Documentation/user/ various: minor fixes.
3568 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3570 * lily/stencil-expression.cc (register_stencil_head): opps, append
3571 to cdr of static SCM object.
3573 2006-05-19 Graham Percival <gpermus@gmail.com>
3575 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3576 update framework for command index. DOC WRITERS: use @funindex
3577 instead of @cindex @code{}.
3579 * Documentation/user/ various: replace @cindex @code{} => @funindex
3581 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3583 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3584 case positions is set manually.
3586 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3588 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3591 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3593 * Documentation/user/changing-defaults.itely (Contexts explained):
3594 use absolute dimension for @image.
3596 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3597 out image for illustration too.
3598 ($(outdir)/%.png): add more png <-> eps rules.
3600 2006-05-17 Graham Percival <gpermus@gmail.com>
3602 * Documentation/user/ various: remove trailing whitespace, cosmetic
3603 change to reduce changes produced by diff.
3605 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3607 * lily/main.cc (do_chroot_jail): correctness tweak.
3609 * python/lilylib.py (system): import subprocess in system () only.
3611 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3613 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3614 variable. Backportme.
3616 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3618 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3620 2006-05-17 Werner Lemberg <wl@gnu.org>
3622 * lily/lexer.ll (init_signature_has_table): Add
3623 `scm-scm-music-music'.
3625 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3626 (Generic_prefix_music_scm): Add rule for it.
3628 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3629 `quoted-transposition' property.
3631 * ly/music-functions-init.ly (transposedCueDuring): New function.
3633 * scm/define-music-properties.scm (all-music-properties): Updated.
3635 * Documenation/topdocs/NEWS.itely: Document it.
3637 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3639 * python/lilylib.py (system): move import subprocess to system()
3642 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3644 * VERSION (PATCH_LEVEL): release 2.9.5
3646 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3649 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3651 2006-05-16 Graham Percival <gpermus@gmail.com>
3653 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3655 * Documentation/user/ various: minor fixes.
3657 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3659 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3661 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3663 * Documentation/user/advanced-notation.itely (Instrument names):
3664 Modified obsolete instruction on how to move instrument names away
3665 from the staves. Hmm, at second thought the bug probably has been
3666 solved, so the full bug description should probably be removed.
3668 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3670 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3671 currentCommandColumn.
3673 * lily/hairpin.cc (print): also add padding for non-neighbor
3676 * scm/define-context-properties.scm
3677 (all-user-translation-properties): add hairpinToBarline
3679 * input/regression/hairpin-to-barline.ly: new file.
3681 * lily/context.cc (internal_send_stream_event): thinko fix.
3683 * lily/tie.cc (set_default_control_points): robustness fix.
3685 * python/musicxml.py (Part.interpret): don't complain about
3686 incomplete measures.
3688 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3689 new music if last_event_chord() returned None.
3691 * python/musicxml.py (Part.interpret): skip back over chord notes.
3693 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3695 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3696 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3697 lily/slash-repeat-engraver.cc,
3698 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3699 iterator sends PercentEvents
3701 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3702 rework tuplets: send start/stop events to engraver
3704 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3705 dispatchers event-source and events-below to Context
3707 2006-05-15 Graham Percival <gpermus@gmail.com>
3709 * Documentation/user/README.txt: update info for doc writers.
3711 * Documentation/user/programming-interface.itely: integrate
3712 Nicolas' fixes for chapter rewrite.
3714 * Documentation/user/ various: minor fixes.
3716 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3718 * lily/clef-engraver.cc: cleanup.
3720 * Documentation/user/GNUmakefile: dist context-example.eps too.
3722 * lily/key-engraver.cc (create_key): use
3723 explicitKeySignatureVisibility for cancellation too.
3725 * lily/font-config.cc (init_fontconfig): don't close file if
3728 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3730 * Documentation/topdocs/NEWS.tely: niente and rotation news
3732 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3734 * lily/include/stencil.hh
3735 * lily/stencil.cc (rotate): new function. Makes it possible
3736 to rotate a stencil around a given offset.
3738 * lily/grob.cc (get_print_stencil): add rotation support
3740 * lily/stencil-interpret.cc (interpret_stencil_expression):
3741 add rotation support
3743 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3745 * scm/define-grob-properties.scm: add 'rotation property
3747 * scm/define-markup-commands.scm: add rotate markup command
3749 * scm/output-ps.scm: add rotation support in PostScript backend
3751 * scm/output-svg.scm: add rotation support in SVG backend
3753 2006-05-13 Graham Percival <gpermus@gmail.com>
3755 * Documentation/user/music-glossary.itely: French correction.
3757 * Documentation/user/programming-interface.itely: major
3758 new docs, some reorg, some info from Nicolas.
3760 * Documentation/user/ various: small fixes.
3762 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3764 * Documentation/user/programming-interface.itely (Markup
3765 programmer interface): Remove duplicate text.
3767 2006-05-12 Graham Percival <gpermus@gmail.com>
3769 * Documentation/user/context-example.eps: new file.
3771 * Documentation/user/changing-defaults.itely: set up file to
3774 * Documentation/user/programming-interface.itely: changes
3777 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3779 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3781 2006-05-11 Graham Percival <gpermus@gmail.com>
3783 * Documentation/user/programming-interface.itely: first round of
3784 editing and merging emails from Nicolas.
3786 * Documentation/user/scheme-tutorial: minor edit.
3788 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3790 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3792 (Xml_node.message): use it.
3794 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3795 oops. Add duration argument.
3797 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3799 * lily/paper-column-engraver.cc (make_columns):
3800 * scm/define-grobs.scm: Revert my previous change and set the default
3801 in define-grobs.scm instead.
3803 2006-05-09 Graham Percival <gpermus@gmail.com>
3805 * Documentation/user/changing-defaults.itely: general editing,
3806 info about \set and \override.
3808 * Documentation/user/tweaking.itely, advanced-notation.itely:
3809 fixes from Dave Luttinen, thanks!
3811 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3813 * lily/paper-column-engraver.cc (make_columns): By default, a column
3814 needs to be breakable.
3816 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3818 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3820 (musicxml_time_to_lily): idem
3821 (musicxml_key_to_lily): idem
3822 (instrument_drumtype_dict): dict for supported drumtypes.
3823 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3824 moments and pending mm rests
3825 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3826 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3827 (musicxml_voice_to_lily_voice): add mode change.
3828 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3829 speed and less memory usage (factor 5 to 10).
3830 (convert): write -defs.ly and driver file separately so people
3831 can script their own part extraction.
3833 * python/musicxml.py (minidom_demarshal_node): new function:
3834 separate minidom handling.
3835 (lxml_demarshal_node): new function: support lxml.etree too.
3836 (Xml_node.message): new function: verbose error message, with XML
3837 path to offending node.
3838 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3839 (Part_list.generate_id_instrument_dict): new method: collect
3840 instrument names, to be able to set drum_type.
3841 (Part.interpret): handle underfull measures
3842 (Part.interpret): assign instrument names.
3844 * python/musicexp.py (Output_printer.close): new method
3845 (MusicWrapper.print_ly): new class: support other modes,
3847 (BarCheck.print_ly): new class. Support bar checks, with comments
3848 and fancy barchecks.
3849 (NoteEvent.__init__): also set drum_type for drum notes.
3850 (MultiMeasureRest.lisp_expression): dump mm rests.
3852 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3853 line-break-permission if forbidBreak is not set.
3855 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3857 * scm/define-context-properties.scm:
3858 * scm/define-grob-properties.scm:
3859 * scm/define-grobs.scm:
3860 * scm/define-music-display-methods.scm:
3861 * scm/define-music-properties.scm:
3862 * scm/define-music-types.scm:
3863 * scm/music-functions.scm:
3864 * ly/declarations-init.ly:
3865 * lily/include/constrained-breaking.hh:
3867 * lily/spaceable-grob.cc:
3868 * lily/simple-spacer.cc:
3869 * lily/paper-score.cc:
3870 * lily/paper-column.cc:
3871 * lily/paper-column-engraver.cc:
3873 * lily/gourlay-breaking.cc:
3874 * lily/constrained-breaking.cc:
3875 * python/convertrules.py:
3876 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3877 "page-break-penalty" and "line-break-permission".
3878 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3879 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3881 * lily/bar-engraver.cc:
3882 * lily/beam-engraver.cc:
3883 * lily/forbid-break-engraver.cc:
3884 * lily/ligature-engraver.cc:
3885 * lily/paper-column-engraver.cc:
3886 * lily/percent-repeat-engraver.cc:
3887 * lily/score-engraver.cc:
3888 * lily/score-engraver.hh:
3889 * lily/paper-column-engraver.hh:
3890 Inter-engraver communication regarding line breaks is done through context
3891 properties (Score.forbidBreak) instead of function calls.
3893 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3895 * VERSION (PACKAGE_NAME): release 2.9.4
3897 2006-05-08 Graham Percival <gpermus@gmail.com>
3899 * Documentation/user/working.itely: proofreading from Dave
3902 * Doucmentation/user/README.txt: updated with manual style info.
3904 * Documentation/user/ various: trim linewidth to 78 chars.
3906 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3908 * scm/define-grob-properties.scm (all-internal-grob-properties):
3909 remove chord-tremolo property.
3911 * lily/beam.cc (get_beam_segments): don't use stem position as
3912 base for broken ends.
3914 2006-05-06 Graham Percival <gpermus@gmail.com>
3916 * Documentation/user/putting.itely: proofreading from Dave
3919 * Documentation/user/ various: more reorg and clarifications.
3921 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3923 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3925 * ly/music-functions-init.ly: new function featherDurations
3927 * lily/beam.cc: read grow-direction for feathered beaming.
3929 * Documentation/topdocs/NEWS.tely (Top): typo.
3931 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3933 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3936 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3937 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3938 used by music streams.
3940 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3941 lily/stream-event.cc, lily/stream-event-scheme.cc,
3942 lily/listener.cc, lily/scheme-listener.cc,
3943 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3944 lily/include/stream-event.hh, lily/include/listener.hh,
3945 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3946 Created data structures for music streams.
3948 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3950 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3951 construction of a beam.
3954 * flower/include/std-vector.hh (default_compare): use only one comparison.
3956 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3957 (note-by-number): further attachment fixes.
3959 * scm/lily-library.scm (ordered-cons): new function.
3960 (interval-index): new function
3962 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3964 * lily/note-head.cc (get_stem_attachment): new function.
3966 * scm/define-markup-commands.scm (note-by-number): read 'style
3969 * input/regression/markup-note.ly: show note-head style option.
3971 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3974 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3976 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3978 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3980 * lily/include/constrained-breaking.hh: GCC 4 fix.
3982 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3984 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3985 Replace it with functions get_line_forces and get_line_configuration.
3986 (class Simple_spacer): Make data private.
3987 Rewrite compression algorithm to be faster and simpler.
3989 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3990 * lily/gourlay-breaking.cc (solve):
3991 * lily/constrained_breaking.cc (space_line):
3992 Change it to the new simple-spacer code.
3994 * lily/paper-score.cc (get_paper_systems):
3997 Delay breaking the systems until they are requested.
3998 (find_break_indices):
3999 Use vsize for indices.
4001 Move the "Calculating line breaks" message here.
4003 * lily/system.cc (pre_processing):
4004 Move the "Calculating line breaks" message away from here.
4005 (break_into_pieces):
4006 Allow multiple calls to this function in sequence (with touching-but-
4007 not-overlapping breakpoints).
4009 * lily/constrained-breaking.cc:
4010 Replace most of the get_XXXX functions with get_line_details.
4011 Only calculate the force for each line. Calculate configurations only
4012 for the lines we will actually use.
4013 Replace cols_ with lines_.
4015 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4017 * mf/GNUmakefile (depth): remove FC_FIND.
4019 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4021 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4023 * scm/framework-ps.scm (write-preamble): new function.
4024 (write-preamble): load mac fonts via fondu, even if gs-font-load
4027 2006-05-03 Werner Lemberg <wl@gnu.org>
4029 * mf/GNUmakefile (FC_FIND): Fix typo.
4031 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4033 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4035 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4037 * stepmake/aclocal.m4: run python-config for crosscompiling
4040 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4041 -f png for HTML, TEXINFO formats.
4043 * input/tutorial/lbook-html-test.html: new file.
4045 * lily/include/tie-formatting-problem.hh (class
4046 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4047 [column, direction]. This fixes laissez vibrer ties.
4049 * flower/include/tuple.hh (struct Tuple2): new file.
4051 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4052 $(FCMATCH), only if $(NCSB_DIR) not set.
4054 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4056 * config.make.in (DOCUMENTATION): set FCMATCH.
4058 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4060 2006-05-03 Graham Percival <gpermus@gmail.com>
4062 * Documentation/user/ various: final round of reorg.
4064 * Documentation/user/instrument-notation.itely: some more
4065 fixes from Eduardo, thanks!
4067 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4069 * VERSION (PACKAGE_NAME): release 2.9.3
4071 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4073 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4075 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4077 * scm/define-grob-properties.scm (all-user-grob-properties):
4078 Correct typo, thanks to Eduardo.
4080 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4082 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4084 * buildscripts/lilypond-words.py (F): indent fix.
4086 * input/regression/tie-arpeggio-collision.ly: new file.
4088 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4089 function: store outlines per column rank.
4091 * lily/include/tie-configuration.hh (class Tie_configuration): add
4092 column_ranks_ to specification and configuration, to distinguish
4093 between ties for different heads in arpegiated chords.
4095 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4097 * *.py: more 4 space indents.
4099 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4101 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4103 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4105 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4107 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4109 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4111 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4113 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4115 * python/convertrules.py (conv): indent 4 for python files.
4117 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4119 * Documentation/user/changing-defaults.itely (Creating contexts):
4120 Clarify \new semantics.
4122 2006-04-28 Graham Percival <gpermus@gmail.com>
4124 * Documentation/user/ various: major new sections in the
4125 Learning manual, slight reorg elsewhere.
4127 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4129 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4131 * scm/framework-ps.scm (output-framework): remove PageMedia
4133 2006-04-27 Graham Percival <gpermus@gmail.com>
4135 * Documentation/user/ tweaks.itely, working.itely: new
4136 files, being more advanced "learning manual" chapters.
4138 * Documentation/user/ tutorial, putting, lilypond: reorg.
4140 2006-04-26 Graham Percival <gpermus@gmail.com>
4142 * input/regression/lyric-combine-polyphonic.ly: fixed test
4143 (no more "can't find context `one'" error).
4145 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4147 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4149 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4151 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4153 * lily/relocate.cc (read_relocation_dir): new function.
4155 2006-04-26 Graham Percival <gpermus@gmail.com>
4157 * Documentation/user/instrument-notation.itely: a few more fixes
4158 from Eduardo, thanks!
4160 * Documentation/user/README.txt: new file; contains info on
4161 style that used to be in lilypond.tely.
4163 * Documentation/user/ various: first round of doc reorg.
4165 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4166 graphic; this probably causes problems on some pdf
4167 viewers, notably Adobe Acrobat.
4169 2006-04-24 Graham Percival <gpermus@gmail.com>
4171 * Documentation/user/instrument-notation.itely: many alterations
4172 to Vocal music, from Eduardo Viera.
4174 2006-04-23 Graham Percival <gpermus@gmail.com>
4176 * Documentation/user/instrument-notation.itely: fix \new
4177 instead of \context problem.
4179 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4181 * lily/relocate.cc (expand_environment_variables): new function.
4183 (read_relocation_file): id.
4185 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4187 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4189 * ly/engraver-init.ly: remove old comments from TabVoice
4191 2006-04-20 Graham Percival <gpermus@gmail.com>
4193 * Documentation/user/instrument-notation.itely: added Erlend's
4194 latest doc patch, thanks!
4196 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4198 * lily/include/slur.hh:
4200 * lily/phrasing-slur-engraver.cc:
4201 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4202 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4203 Slur_engraver:: and putting it in
4204 Slur::auxiliary_acknowledge_extra_object ().
4206 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4208 * lily/note-collision.cc: fix a comment
4210 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4212 * stepmake/bin/add-html-footer.py: fix footer position in
4213 generated html files: before </body> and </html> tags.
4215 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4217 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4218 Earlier successive `make' commands finally compiled ok.
4220 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4222 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4224 * lily/include/stem-tremolo.hh:
4225 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4229 * lily/include/lookup.hh: add rotated_box ()
4231 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4233 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4234 been generated. Fixes "can't get `--help'" bug after make clean.
4236 * THANKS: alphabetize contributors.
4238 2006-04-17 Graham Percival <gpermus@gmail.com>
4240 * Documentation/user/instrument-notation.itely: added Erlend's
4241 tabs and banjo doc patch. Thanks!
4243 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4245 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4247 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4249 * scm/output-lib.scm: add some more predefined string tunings.
4251 * Documentation/user/instrument-notation.itely: and doc them.
4253 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4255 * ly/engraver.ly: Remove obsolete comments.
4257 * ly/gregorian-init.ly: Define default layout block.
4259 * input/puer-fragment.ly: Updated and extended.
4261 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4263 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4264 pdf conversion behaviour.
4266 * flower/file-name.cc (dir_name)
4267 (get_working_directory): Move from relocate.cc.
4269 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4271 * lily/relocate.cc: Encapsulate sys/stat.h in
4274 2006-04-14 Graham Percival <gpermus@gmail.com>
4276 * Documentation/user/ various: small updates from Cameron
4277 and Juergen, thanks!
4279 * Documentation/user/ various: small updates of my own.
4281 * THANKS: 2.7 -> 2.8.
4283 2006-04-11 Graham Percival <gpermus@gmail.com>
4285 * scm/define-context-properties.scm: typo.
4287 * Documentation/user/ : many more small updates.
4289 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4291 * scm/define-music-types.scm: disposed "docme".
4293 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4295 * lily/hairpin.cc: make niente circles a bit smaller.
4297 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4299 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4300 get-pfa and get-*-fonts targets.
4302 2006-04-10 Graham Percival <gpermus@gmail.com>
4304 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4305 music-glossary, programming-interface: more minor fixes
4308 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4310 * scm/define-context-properties.scm: another old \property update.
4311 This time tested for compiling!
4313 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4315 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4317 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4319 * scm/define-context-properties.scm (all-user-translation-properties):
4320 * Documentation/user/global.itely (Page formatting): Compile fix.
4322 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4324 * Documentation/user/advanced-notation.itely (Polymetric
4325 notation): Update the example to use the "+" symbol and add link
4326 to input/test/compound-time.ly.
4328 2006-04-08 Graham Percival <gpermus@gmail.com>
4330 * scm/define-grob-properties.scm: clarify docs for #'direction.
4332 * scm/define-context-properties.scm: update old \property override.
4334 * Documentation/user/ advanced-notation, global, lilypond-book:
4335 more minor doc updates.
4337 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4339 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4341 * scm/backend-library.scm (search-gs): oops.
4343 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4345 * scripts/lilypond-book.py (output): use base, not filename for href.
4347 * scm/backend-library.scm: only look for gs.
4349 * scripts/lilypond-book.py (output): fix printfilename.
4351 * lily/parser.yy (music_function_musicless_prefix): fold together
4352 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4354 * lily/slur.cc (print): only set font-size if not set yet.
4356 * lily/slur-configuration.cc (add_score): improved layout of debug
4359 2006-04-05 David Feuer <David.Feuer@gmail.com>
4361 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4362 (draw_circle): Hopefully fixed regression.
4363 Improved documentation for several procedures.
4365 2006-03-04 Werner Lemberg <wl@gnu.org>
4367 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4369 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4371 * scripts/musicxml2ly.py (bindir): add dynamic
4374 2006-04-04 Graham Percival <gpermus@gmail.com>
4376 * Documentation/user/ basic-notation, advanced-notation, putting,
4377 instrument-notation, invoking, lilypond, THANKS: another ream of small
4378 fixes from the Doc Helpers.
4380 2006-04-03 David Feuer <David.Feuer@gmail.com>
4382 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4384 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4386 * Cleaned up interfaces between PostScript and Scheme, and moved
4387 computations from PostScript to Scheme:
4389 * music-drawing-routines.ps
4390 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4391 with stroke_and_fill throughout.
4392 (euclidean_length, print_letter, draw_box): Deleted unused
4393 procedures. If someone needs draw_box, implement it using
4394 draw_round_box; don't duplicate code.
4395 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4396 Refactored/cleaned up interfaces.
4399 * output-ps.scm: reordered arguments to PostScript functions to
4400 match new interfaces
4401 (glyph-string): Rewrote glyph-string.
4402 (grob-cause): Replaced string-append with format.
4403 (repeat-slash): Rewrote to do computation here.
4404 (round-filled-box): Rewrote to do computation here.
4406 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4408 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4410 * stepmake/stepmake/toplevel- targets.make: print help info about
4413 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4415 * input/regression/hairpin-circled.ly: new file
4417 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4419 * lily/hairpin.cc (print): add support for circled tip
4421 * scm/define-grob-properties.scm: add circled-tip parameter
4423 * scm/define-grobs.scm: init circled-tip to false
4425 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4427 * scm/music-functions.scm (quote-substitute): set
4430 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4432 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4435 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4437 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4439 2006-03-31 David Feuer <david.feuer@gmail.com>
4441 * scm/framework-ps.scm:
4443 * scm/output-ps.scm: glyph-string now produces smaller, more
4444 readable, and probably faster PostScript. Several findfont
4445 scalefont setfont instances changed to selectfont
4446 Hacked-up string-appends changed to formats.
4448 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4450 2006-03-30 Graham Percival <gpermus@gmail.com>
4452 * scm/lily-library.scm: make "no version" warning message more polite.
4454 * lily/music.cc: add double quotes to failed octave check.
4456 * Documentation/user/ advanced-notation, changing-defaults,
4457 instrument-notation, invoking, music-glossary: whole bunch of minor
4460 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4462 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4463 $(buildscriptdir) iso. depth.
4465 * VERSION (PACKAGE_NAME): release 2.9.1
4467 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4469 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4471 * VERSION (PATCH_LEVEL): bump version number.
4473 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4476 * lily/pango-font.cc (pango_item_string_stencil): use
4479 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4480 $(outdir)/emmentaler-%.svg): remove canary.
4482 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4483 glyphnames if we have a ttf font.
4485 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4487 * Documentation/user/advanced-notation.itely (Font selection):
4488 Corrected reference to the font-family-override.ly example.
4490 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4492 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4493 stem-tremolo object in the stem (or else the stem might not be
4496 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4498 * lily/ttf.cc (print_trailer): only print existing glyphs.
4500 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4502 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4503 position the tremolo based on the position of the notehead.
4505 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4506 notes and update the texidoc line with the new positioning rules.
4508 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4510 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4512 * scripts/lilypond-book.py (Module): set default for linewidth if
4515 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4517 * VERSION (PACKAGE_NAME): release 2.9.0.
4519 * input/regression/stem-tremolo-position.ly: new file.
4521 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4523 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4525 * lily/stem-tremolo.cc (print): position
4526 the tremolo depending only on the end of the stem
4527 and not on the notehead
4528 (raw_stencil): center, on the middle staff line, the
4529 flag that is closest to the end of the stem (previously
4531 (calc_width): add this callback to shorten a tremolo when
4532 it is beamed or it is stemup with a flag
4533 (style): add this callback to make a tremolo rectangular when
4534 it is beamed or it is stemup with a flag
4535 (rotated_box): this is like Lookup::beam but makes a rotated
4536 rectangle instead of a parallelogram
4538 * lily/stem.cc (calc_stem_info): make sure the stem
4539 is long enough to fit the tremolo
4540 (calc-length): reduce the length of tremolo stems since the
4541 tremolo code is now capable of better positioning
4543 * scm/define-grobs.scm: make calc_width the default beam-width
4544 callback for stem-tremolo and add the style callback
4546 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4548 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4551 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4553 * lily/ttf.cc (make_index_to_charcode_map): restore old
4556 2006-03-28 Werner Lemberg <wl@gnu.org>
4558 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4560 2006-03-28 Graham Percival <gpermus@gmail.com>
4562 * THANKS: update for 2.9, add section for Documentation helpers.
4564 * Documentation/topdocs/NEWS.tely: compile fix.
4566 * Documentation/user/ basic-notation, global, advanced-notation,
4567 examples.itely: minor fixes from mailist.
4569 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4571 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4574 * lily/ttf.cc (print_trailer): use it.
4576 * lily/pango-font.cc (get_unicode_name): new function.
4578 * lily/ttf.cc (make_index_to_charcode_map): move function from
4580 (print_trailer): substitute uniXXXX name if applicable.
4582 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4583 (pango_item_string_stencil): use it to generate uniXXXX names.
4585 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4586 note heads, for uniform widths in shape note output.
4587 (overdone_heads): hmm. remove them again.
4589 * scripts/lilypond-book.py (output): add links to filenames.
4591 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4593 * lily/note-collision.cc (get_clash_groups): only consider when
4594 Note_column::dir <> CENTER.
4596 * scripts/lilypond-book.py (get_option_parser): init output_name
4599 2006-03-24 Graham Percival <gpermus@gmail.com>
4601 * Documentation/topdocs/NEWS.tely: add @end itemize
4603 * Documentation/user/ global, advanced-notation: minor
4606 2006-03-23 Graham Percival <gpermus@gmail.com>
4608 * Documentation/user/ lilypond.tely, music-glossary,
4609 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4611 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4613 * mf/GNUmakefile: don't install .enc files.
4615 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4617 * VERSION (PATCH_LEVEL): bump to 2.9.0
4619 2006-03-22 Graham Percival <gpermus@gmail.com>
4621 * Documentation/user/advanced-notation.itely: minor fixes
4624 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4626 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4628 * branch lilypond_2_8
4630 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4632 * scripts/lilypond-book.py (samefile): new function, for windoze
4635 2006-03-21 Graham Percival <gpermus@gmail.com>
4637 * ly/engraver-init.ly: add info about StaffGroup.
4639 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4641 * input/regression/stem-direction-context.ly: idem.
4643 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4647 * input/regression/page-layout-twopass.ly: comment out \markup so
4650 * lily/instrument-name-engraver.cc (finalize): add to instrument
4651 name global System. This also fixes chopped instrument names, but
4652 doesn't crash when there are slurs/beams.
4654 * lily/slur-configuration.cc (add_score): disallow negative slur
4657 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4659 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4661 * lily/instrument-name-engraver.cc (process_music): kludge: add
4662 InstrumentName spanner to axis group of left bound. Fixes chopped
4663 off instrument names in EPS images.
4665 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4667 * scripts/abc2ly.py (option_parser): update to 2.7.40
4669 2006-03-20 Graham Percival <gpermus@gmail.com>
4671 * THANKS: move small doc contributors to SUGGESTIONS.
4673 * Documentation/user/ basic-notation, advanced-notation,
4674 global: small changes from mailist.
4676 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4678 * Documentation/user/advanced-notation.itely (Text marks): update
4679 for new rehearsalMarkAlignSymbol convention.
4681 * VERSION (PATCH_LEVEL): bump version.
4683 * input/test/instrument-name-align.ly: new file.
4685 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4687 * input/test/instrument-name-align.ly: new file. Document how to
4688 align instrument names.
4690 * lily/mark-engraver.cc: remove properties.
4692 * scm/define-context-properties.scm
4693 (all-user-translation-properties): remove align symbol properties
4694 for barnumber/reh. mark.
4696 * lily/break-align-interface.cc (self_align_callback): new
4697 interface, new function. Look at complete alignment. This handles
4698 tunable break alignments in case break-align-symbols are missing.
4700 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4702 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4704 * python/convertrules.py (conv): mark/bar number alignment rule.
4706 * lily/break-align-interface.cc (calc_positioning_done): also
4707 store offset from last visible break-alignment to its
4708 neighbor. This makes alignment on non-visible objects more reliable.
4710 * po/lilypond.pot (Module): ran po-replace.
4712 * input/regression/tie-single-manual.ly (Module): new file.
4714 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4715 look at has_manual_position_.
4716 (from_ties): set has_manual_position_ if tie has staff-position set.
4718 * lily/tuplet-bracket.cc (calc_positions): idem.
4720 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4723 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4725 * scm/define-markup-commands.scm (smallCaps): new markup command
4726 for turning a text to small caps using smaller font size and upper
4729 2006-03-17 Graham Percival <gpermus@gmail.com>
4731 * Documentation/user/ examples, instrument-notation,
4732 advnaced-notation: minor fixes from mailist.
4734 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4736 * Documentation/user/tutorial.itely (First steps): change example
4739 2006-03-17 Graham Percival <gpermus@gmail.com>
4741 * Documentation/user/ examples, advanced: minor changes from mailist.
4743 * THANKS: add Geoff Horton, for documentation stuff.
4745 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4747 * python/lilylib.py (system): revert have_select kludge.
4749 * Documentation/user/tutorial.itely (Commenting input files):
4750 update version numbers in doc.
4752 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4753 bound-padding to multi-measure-interface
4755 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4757 * input/test/engraver-example.ily: update version number.
4759 * VERSION (PACKAGE_NAME): release 2.7.39
4761 * lily/note-spacing.cc (get_spacing): heighten threshold where
4762 accidentals/arpeggios influence previous spacing fully.
4764 * lily/rest.cc (y_offset_callback): only use direction if
4765 staff-position wasn't set before.
4767 * lily/bar-number-engraver.cc: add support for
4768 barNumberAlignSymbol.
4769 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4771 * lily/pointer-group-interface.cc (set_ordered): new function.
4772 (add_unordered_grob): new function.
4774 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4775 to ordered, unless the opposite has been proved. This fixes
4776 random reordering of large object groups across linebreaks,
4779 * lily/main.cc (do_chroot_jail): printf format fix.
4781 * lily/tie-formatting-problem.cc (generate_configuration):
4782 multiply y-shift for dot with direction.
4784 * scm/define-markup-commands.scm (note-by-number): put (magstep
4785 size) in y-attach too.
4787 * Documentation/topdocs/NEWS.tely (Top): show override.
4789 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4790 direction for stems.
4792 2006-03-15 Graham Percival <gpermus@gmail.com>
4794 * Documentation/user/ changing-defaults, global: minor
4797 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4799 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4801 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4802 breakable items after uniformly stretched notes.
4804 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4805 outline with outer edge of note heads. This prevents infinity
4806 problems with tied whole notes.
4808 * scripts/lilypond-book.py (do_file): use os.popen
4810 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4812 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4814 * Documentation/user/invoking.itely: Add ragged-right to bug report
4817 2006-03-14 Graham Percival <gpermus@gmail.com>
4819 * Documentation/user/global.itely: small fix from mailist.
4821 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4823 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4824 file descriptor returned by tempfile.mkstemp() when writing
4825 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4828 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4830 * po/fi.po: newline bugfix.
4832 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4834 * scm/paper.scm (paper-alist): Rounding fixes.
4836 2006-03-13 Graham Percival <gpermus@gmail.com>
4838 * Documentation/user/ changing-defaults, instrument-notation,
4839 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4841 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4845 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4847 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4850 * python/lilylib.py (print_environment): move ps_page_count to
4853 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4855 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4857 * scm/framework-ps.scm (embed-document): new function. Use to
4860 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4862 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4864 * Documentation/user/instrument-notation.itely (Setting simple
4865 songs): Added \book{...} around the full example, so the separate
4866 markups are included in the printed example.
4868 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4870 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4873 * python/lilylib.py (system): rewrite system() using
4874 subprocess. Remove >& redirection trickery.
4876 2006-03-11 Graham Percival <gpermus@gmail.com>
4878 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4879 notation-appendices.itely: minor fixes from mailist.
4881 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4883 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4884 unsplit man also needs images.
4886 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4888 * VERSION (PACKAGE_NAME): 2.7.38 released.
4890 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4892 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4895 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4897 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4898 respects the Score.skipTypesetting property.
4900 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4902 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4903 Prolog. No %%EOF after CFF file.
4905 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4907 * lily/constrained-breaking.cc (get_max_systems): used to return a
4909 (combine_demerits): use pointers to reduce copying data
4910 (calc_subproblem): idem
4911 (get_page_penalty): add page turn penalties
4913 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4915 * Documentation/user/invoking.itely (Invoking lilypond): better
4916 explanation of -e usage.
4918 * lily/main.cc (main_with_guile): don't append to
4919 init_scheme_code_string
4921 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4923 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4925 * scripts/convert-ly.py (do_options): don't print help for
4928 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4929 @code and @example. Update from texinfo.tex from CVS.
4931 2006-03-08 Graham Percival <gpermus@gmail.com>
4933 * Documentation/user/scheme-tutorial.itely: clarifies distances
4934 measured in staff-spaces.
4936 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4938 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4939 consider[k] is true.
4941 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4943 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4944 consider columns that have originals. Unifies spacing for mm
4945 rests around line breaks.
4947 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4948 (set_text_rods): idem.
4949 (calculate_spacing_rods): new function: share code between
4950 set_text_rods and set_spacing_rods.
4951 (set_text_rods): take extents of bounds into account.
4953 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4955 * Documentation/user/basic-notation.itely (Writing music in
4956 parallel): don't use relative.
4958 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4960 * ly/music-functions-init.ly (Module): add shiftDurations
4962 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4964 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4966 * ly/engraver-init.ly: init vocalName to nil.
4968 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4970 * scm/music-functions.scm (music->make-music): bugfix,
4971 KeyChangeEvents are now handled correctly.
4973 * scripts/lilypond-book.py: Add --debug option.
4975 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4977 * python/lilylib.py: add tempfile.
4979 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4981 * VERSION (PACKAGE_NAME): release 2.7.37
4983 * python/lilylib.py (ps_page_count): remove make_ps_images().
4984 (ps_page_count): remove mkdir_p
4985 (system): remove cleanup_temp.
4986 (exit): remove lilypond_version_(check)
4987 (error_log): remove pseudo_filter_p
4992 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4995 * lily/accidental-engraver.cc (make_standard_accidental): only add
4996 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4998 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4999 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5000 Make incompatibilities.
5002 * scm/output-ps.scm (grob-cause): replace backslashes by /
5003 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5005 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5007 * cygwin/GNUmakefile: Install fixes.
5009 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5011 * lily/note-head.cc (head::get_balltype): Compile fix.
5013 * flower/file-name.cc (dos_to_posix): Flower string fix.
5015 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5017 * python/lilylib.py: pychecker cleanups.
5019 * scripts/lilypond-book.py
5020 (Lilypond_snippet.output_print_filename): pychecker cleanups
5022 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5024 * python/lilylib.py (underscore): remove identify() , warranty()
5026 * ps/music-drawing-routines.ps: change Border routine for GSView
5029 * lily/stem.cc (height): use quantize-positions. This triggers
5030 set_stem_lengths, so scripts on beamed stems are handled correctly.
5032 * lily/side-position-interface.cc (aligned_side): check if edges
5033 of script are inside staff. Fixes accent of edge of the staff.
5035 * input/regression/staccato-pos.ly: more examples.
5037 * stepmake/aclocal.m4 (depth): fix bashism.
5039 * lily/lyric-combine-music-iterator.cc: move from
5040 new-lyric-combine-iterator.cc
5041 (process): add pending_grace_lyric_ member to delay lyrics on
5044 * lily/system-start-text.cc (print): suicide if we don't have any
5045 elements. Fixes hara kiri'd instrument names.
5047 * scripts/mup2ly.py (Module): remove.
5049 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5051 * Documentation/user/global.itely (A single music expression):
5052 close @lilypond properly
5054 * lily/volta-bracket.cc (modify_edge_height): change from
5055 after_line_breaking_callback. Suicide last bracket if appropriate.
5057 * python/lilylib.py: strip getopt support
5059 * scripts/etf2ly.py (do_options): use optparse
5061 * scripts/midi2ly.py: optparse, strip lilylib copy.
5063 * scripts/abc2ly.py (voices): use optparse.
5065 * stepmake/stepmake/generic-vars.make: new function absdir.
5067 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5069 * scripts/lilypond-book.py (find_file): use global_options for
5072 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5075 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5077 * python/lilylib.py (get_global_option): ughness for extracting
5078 global options from lilylib.
5079 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5081 * scripts/lilypond-book.py (get_option_parser): use optparse for
5082 option handling. Put options in global_options variable.
5084 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5086 * Documentation/index.html.in: clarify.
5088 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5090 * scm/layout-page-layout.scm (write-page-breaks): add a
5091 music-system-heights property to the page layout output.
5093 * scm/page.scm (make-page-stencil): take footer into account when
5094 computing the 'space-left page property
5095 (annotate-space-left): take footer into account when annonating
5098 2006-02-28 Graham Percival <gpermus@gmail.com>
5100 * Documentation/user/ advanced-notation, global: more (final)
5101 docs for music expressions, removed special fermatas.
5103 2006-02-27 Graham Percival <gpermus@gmail.com>
5105 * Documentation/user/ basic-notation, global: minor changes
5108 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5110 * scm/framework-ps.scm:
5111 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5112 layer for inf? and nan? from framework-ps to lily-library.
5114 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5116 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5117 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5119 * buildscripts/substitute-encoding.py (Module): remove file.
5121 * mf/GNUmakefile: more PFA strippage.
5123 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5125 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5128 * scm/framework-ps.scm: remove font name munging.
5130 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5132 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5134 * scm/markup.scm (define-markup-command): change
5135 def-markup-command to define-markup-command
5137 * scm/music-functions.scm (define-music-function): change
5138 def-music-function to define-music-function.
5140 * python/convertrules.py (conv): rules for def-music-function
5141 and def-markup-commands
5143 * Documentation/user/programming-interface.itely,
5144 input/no-notation/display-lily-tests.ly,
5145 input/regression/lily-in-scheme.ly,
5146 input/regression/markup-user.ly,
5147 input/regression/music-function.ly, input/regression/tie-chord.ly,
5148 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5149 ly/gregorian-init.ly: use new macro names (define-music-function,
5150 define-markup-command).
5152 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5154 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5155 (output): add comments to lp-book latex output.
5157 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5160 2006-02-23 Graham Percival <gpermus@gmail.com>
5162 * Documentation/user/ tutorial, global: minor changes.
5164 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5166 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5167 blocks (for make 3.80)
5169 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5170 \notemode so that user should not have to explicitely type it.
5172 * scm/define-music-display-methods.scm: various
5173 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5176 * input/no-notation/display-lily-tests.ly: new tests for
5177 \applyOutput and \applyContext
5179 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5181 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5182 changed it slightly so that the number of systems returned by
5183 solve () will be the same as the last value passed to resize
5184 (). I've also added more documentation, removed casts, fixed style
5185 problems and put in some recovery if constraints aren't satisfied."
5187 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5189 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5190 for emacs < 22 compatibility.
5191 (count-rexp): Use it.
5192 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5193 substring juggling (Milan Zamazal).
5195 2006-02-23 Graham Percival <gpermus@gmail.com>
5197 * Documentation/user/ basic-notation, advanced-notation,
5198 global.itely, invoking.itely, tutorial,itely:
5199 minor fixes from mailist.
5201 * scm/define-markup-commands.scm: improve docs of \filled-box.
5203 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5205 * Documentation/index.html.in: changes concern the previous release.
5207 * input/regression/+.ly: cultivate typographical terminology.
5209 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5211 * scm/define-grob-interfaces.scm (parentheses-interface): add
5212 padding to parentheses-interface.
5214 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5215 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5217 * VERSION (PATCH_LEVEL): release 2.7.36
5219 * lily/slur.cc: add avoid-slur (ugh.)
5221 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5222 intersection gets smaller. This fixes slurs over extreme points.
5224 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5225 stems with neutral-direction set.
5227 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5229 * lily/open-type-font.cc (load_table): format error.
5231 * lily/change-iterator.cc (process): format fix.
5233 * flower/include/international.hh (_f): idem.
5235 * flower/include/std-string.hh: add format printf attribute.
5237 * scm/define-grobs.scm (all-grob-descriptions): height of all
5238 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5240 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5243 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5245 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5247 * input/regression/: upgraded syntax for some files.
5249 * THANKS: Add bughunters.
5251 2006-02-22 Graham Percival <gpermus@gmail.com>
5253 * Documentation/user/ invoking.itely, advanced-notation.itely,
5254 global.itely: long-awaited "let's make chapter 10 not suck"
5255 update. Rearrange chapter 10; now called "global issues",
5256 addresses file structure, etc. Some info from other files
5257 moved into global.itely.
5259 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5261 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5262 catch trill-span-event notes.
5264 * Documentation/user/examples.itely (Ancient notation templates): typo.
5267 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5269 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5271 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5273 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5275 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5276 froum Laissez_vibrer_engraver.
5278 * ly/declarations-init.ly (repeatTie): add \repeatTie
5280 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5282 * scm/define-grob-properties.scm (all-user-grob-properties): add
5283 head-direction property.
5285 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5286 from_lv_ties. Take head direction argument.
5288 * lily/semi-tie-column.cc: rename from
5289 laissez-vibrer-tie-column.cc. Rename class too.
5291 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5294 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5296 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5298 (find_breaks): idem.
5300 2006-02-21 Graham Percival <gpermus@gmail.com>
5302 * Documentation/user/advanced-notation.itely: fixed make-moment]
5305 * Documentation/user/basic-notation.itely: more clarification to
5308 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5310 * lily/include/constrained-breaking.hh (class
5311 Constrained_breaking): new file.
5313 * lily/constrained-breaking.cc (resize): new file.
5315 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5317 * Documentation/user/advanced-notation.itely (Clusters): insert
5320 * lily/tie-column.cc (calc_positioning_done): support for
5323 * lily/tie-formatting-problem.cc
5324 (generate_extremal_tie_variations): factor out.
5325 (score_ties_configuration): annotate all tie
5326 (print_ties_configuration): new routine.
5327 (generate_configuration): nudge extremal ties outside of the head
5329 (score_ties_configuration): oops. convert to staff-space before
5330 determining position symmetry.
5332 2006-02-20 Graham Percival <gpermus@gmail.com>
5334 * Documentation/user/*-notation.itely: misc minor editing,
5335 shifting doc sections around.
5337 * Documentation/user/*-notation-itely, global.itely,
5338 changing-defaults.itely: added new stuff from NEWS.
5340 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5344 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5346 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5347 lilypond --verbose for lp-book.
5349 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5350 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5352 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5353 $(buildscript-dir) iso. absolute depth.
5355 * buildscripts/genicon.py (dir): thinko.
5357 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5359 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5361 * scm/output-lib.scm: swap darkcyan/darkyellow
5363 * THANKS: Add bughunters.
5365 2006-02-19 Graham Percival <gpermus@gmail.com>
5367 * Documentation/user/programming-interfaces.itely: fixed example.
5369 * Documentation/user/instrument-notation.itely: fix @{ @}.
5371 * scm/script.scm: add avoid-slur for \open.
5373 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5375 * lily/tie-formatting-problem.cc (score_configuration): use
5376 sliding score for min-length.
5378 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5379 spaghetti for icons.
5381 * buildscripts/genicon.py (program_name): new file.
5383 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5385 (generate_configuration): for small ties, also look for collisions
5386 at Y + DIR*h + DELTA_Y.
5387 (get_variations): consider variation for dot positions too.
5389 * lily/side-position-interface.cc (aligned_side): take abs for
5390 quantized rounded position. Fixes tenuto below staff.
5392 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5393 markers when necessary.
5395 * lily/program-option.cc (internal_set_option): add
5396 strict_infinity_checking option.
5398 * scm/output-lib.scm (cyan): swap yellow and cyan.
5400 2006-02-19 Graham Percival <gpermus@gmail.com>
5402 * darwin.patch: trivial linenumber update.
5404 * Documentation/user/ {various}: `\context foo = named' changed
5405 to `\new foo = "name"' in docs.
5407 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5409 * scm/stencil.scm (annotate-y-interval): use it.
5411 * scm/lily-library.scm (interval-sane?): new function.
5413 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5416 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5419 * flower/include/std-vector.hh (iterof): add iterof macro.
5421 * lily/enclosing-bracket.cc (width): new function.
5423 * lily/align-interface.cc (align_elements_to_extents): reinstate
5426 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5428 * Documentation/index.html.in: fix spelling: thankyous.
5430 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5432 * lily/lyric-hyphen.cc: typo.
5434 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5436 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5437 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5440 * VERSION: release 2.7.35
5442 * lily/beam.cc (get_default_dir): oops. Take abs () for
5444 (get_default_dir): use extreme position criterion only in absence
5445 of forced stem directions.
5447 * VERSION (PATCH_LEVEL): bump VERSION.
5449 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5450 dependencies. Necessary for -jX builds.
5452 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5454 * lily/relocate.cc (setup_paths): Yet another const fix.
5456 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5458 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5460 * lily/relocate.cc (setup_paths): oops.
5462 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5464 * Documentation/index.html.in: order links: html before PDF.
5466 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5468 * lily/tie-column-format.cc (Module): remove.
5470 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5472 * lily/text-spanner.cc (print): idem.
5474 * lily/dynamic-text-spanner.cc (print): only print line if longer
5477 * lily/auto-change-iterator.cc (change_to): formatting.
5479 * lily/beam.cc (get_default_dir): take extreme note head as input
5482 * lily/tie.cc (get_default_dir): only look directions for visible
5485 * lily/side-position-interface.cc (aligned_side): oops. Don't
5486 mutiply with direction. This fixes quantized (staccato, tenuto)
5487 scripts below notes.
5489 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5490 direction. Fixes c-lyrics-center-align.ly
5492 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5494 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5497 * lily/std-string.cc:
5498 * lily/include/std-vector.hh (split_string): Move and rename from
5499 lily/include/misc.hh, lily/misc.cc. Update callers.
5501 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5503 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5505 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5507 * flower/test-file.cc: New file.
5509 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5512 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5514 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5516 * flower/include/file-storage.hh: remove file.
5518 * lily/include/midi-item.hh (class Midi_track): idem.
5520 * lily/include/source.hh (class Sources): idem.
5522 * lily/include/performance.hh (class Performance): use vector
5525 * flower/include/cons.hh (class Cons): remove file.
5527 * flower/include/flower-proto.hh: remove template cruft.
5529 * lily/include/font-metric.hh: use size_t not vsize for indices.
5531 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5534 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5536 * lily/include/paper-book.hh (class Paper_book):
5537 make get_system_specs() public.
5539 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5540 the force=10000 case if we don't have a current-best.
5542 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5545 * flower/include/flower-proto.hh: remove outdated templates.
5547 * scm/page.scm: use annotate-spacing
5549 2006-02-15 Graham Percival <gpermus@gmail.com>
5551 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5553 * THANKS: moved Erlend Aasland to contributors.
5555 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5557 * config.hh.in: remove HAVE_PANGO_16
5559 * lily/tuplet-bracket.cc (calc_positions): multiply with
5560 staff-space for beam case. This fixes tuplets+beams on scaled
5563 * config.hh.in: remove all Kpathsea related defines.
5565 * lily/dot-column.cc (side_position): reach stem via dots->
5566 head->stem. Inspect all stems for dot collisions.
5568 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5571 * lily/bar-number-engraver.cc (process_music): document function
5574 * lily/score.cc (default_rendering): add pscore, not systems
5577 * lily/paper-book.cc (get_system_specs): separate generation of
5580 * flower/include/std-vector.hh: don't include config.hh
5582 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5584 * flower/include/std-vector.hh: Better wrapper compatibility with
5587 * flower/include/flower-proto.hh: Remove cheap forward declaration
5590 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5592 2006-02-14 Graham Percival <gpermus@gmail.com>
5594 * Documentation/user/invoking.itely: add warning about command line.
5596 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5598 * lily/include/lily-proto.hh: add Prob, rm Page.
5600 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5602 * VERSION: release 2.7.34
5604 * lily/relocate.cc (framework_relocation): show canary if
5605 GHOSTSCRIPT_VERSION undefined.
5607 * GNUmakefile.in: remove $(VERSION) symlink.
5609 * lily/relocate.cc (setup_paths): add +
5611 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5613 * Documentation/index.html.in: specify sizes for all big HTML pages.
5615 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5617 * config.hh.in: remove @FRAMEWORKDIR@
5619 * lily/system-start-text.cc (get_stencil): new file: separate out
5620 system-start-delimiter text support.
5622 * input/**ly: replace \context with \new where appropriate.
5626 * lily/slur-scoring.cc (get_base_attachments): use
5627 robust_relative_extent. This fixes problems with empty paper-columns.
5629 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5631 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5633 * scm/define-music-properties.scm (all-music-properties):
5634 create-new property.
5636 * lily/context-specced-music-iterator.cc (construct_children):
5637 inspect 'create-new property iso. magical $uniqueContextId context
5640 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5642 * lily/context-key-manager.cc (Module): new file. Encapsulate
5643 object key generation.
5645 * lily/include/context-key-manager.hh (Module): new file.
5647 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5649 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5652 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5654 (reloc_b): excise --enable-framework-dir
5656 * lily/relocate.cc (framework_relocation): use getenv
5657 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5659 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5661 * flower/include/std-string.hh:
5662 * flower/include/std-vector.hh: Finish std:: conversion; move
5663 flower extensions from std:: namespace. Update users.
5665 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5666 their expansion to vector<*>. Update users.
5668 2006-02-10 Graham Percival <gpermus@gmail.com>
5670 * Documentation/user/invoking.itely: add example to File structure.
5672 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5673 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5675 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5677 * ly/paper-defaults.ly: typo.
5679 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5680 set_parent() for parentheses. This will make it show up in bbox
5683 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5684 ly:grob-common* functions.
5686 * lily/grob-scheme.cc (LY_DEFINE):
5687 ly:grob-common-refpoint-of-array: new function
5688 ly:grob-common-refpoint: new function
5689 ly:grob-relative-coordinate: new function
5691 * lily/instrument-name-engraver.cc (process_music): use
5692 Text_interface::is_markup(). This fixes \markup on instrument names.
5694 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5697 * lily/slur.cc (print): idem.
5699 * lily/tie.cc: add line-thickness for ties.
5701 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5703 * scm/output-svg.scm: Document diversion from GNU coding standards
5704 as a workaround for a bug in Microsoft Internet Explorer.
5706 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5708 * lily/instrument-name-engraver.cc (process_music): use
5709 is_markup() iso. is_string()
5711 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5713 * lily/percent-repeat-engraver.cc (process_music): only look at
5714 main_part_ for % repeats.
5716 * lily/stem-tremolo.cc (get_beam_translation): new function.
5717 (calc_slope): new function.
5718 (height): don't use real slope.
5720 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5722 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5723 new connect-to-neighbor, control-points and staff-padding
5724 properties to make ligature brackets showing up again.
5726 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5728 * VERSION: release 2.7.33
5730 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5733 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5734 remove applyOutput example.
5735 (Objects connected to the input): document \tweak, \parenthesize
5737 * lily/relocate.cc (prefix_relocation): allow "current"
5738 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5739 changing VERSION in a lily tree less painful.
5741 * input/regression/parenthesize.ly: new file.
5743 * scm/output-lib.scm (parenthesize-element): new function.
5745 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5747 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5749 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5750 cause: accidentals are caused by note heads, not note events.
5752 2006-02-08 Graham Percival <gpermus@gmail.com>
5754 * darwin.patch: small patch from Erlend, thanks!
5756 * Documentation/user/basic-notation.itely: add stem-neutral example.
5758 * Documentation/user/putting.itely: clarifications.
5760 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5762 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5763 note, add more guidelines to what should go into NEWS.
5765 * input/sakura-sakura.ly: document how to override font.
5767 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5769 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5771 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5773 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5775 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5776 convertrules. Add explicit grouping, needed for python2.2.
5778 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5780 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5782 2006-02-07 Graham Percival <gpermus@gmail.com>
5784 * Documentation/user/global.itely: fix line-width in (text) docs.
5786 * Documentation/user/lilypond-book.itely: same.
5788 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5790 * VERSION (PACKAGE_NAME): release 2.7.32
5792 * Documentation/topdocs/NEWS.tely (Top): document new variable
5795 * flower/include/array.icc (Message): remove file.
5797 * flower/include/std-vector.hh: make sure vsize and VPOS are
5798 defined for binary_search_bounds().
5800 * flower/std-string.cc (std): add to_string(long unsigned).
5802 * configure.in (gui_b): excise std_string option.
5803 (gui_b): excise std_vector option.
5805 * flower/string.cc (Module): excise flower array & string
5807 * flower/include/std-string.hh: excise flower string.
5809 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5811 * python/convertrules.py (lilypond_version_re_str): require
5812 only numbers and dots in \version string.
5814 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5816 * lily/system-start-delimiter.cc (print): allow style = text too.
5818 * lily/system-start-delimiter-engraver.cc
5819 (acknowledge_system_start_text): new function, also add add to
5820 support of system-start-text (instrument names). This fixes
5821 instrument names on piano staves.
5823 * lily/instrument-name-engraver.cc: rewrite. Use
5824 system-start-delimiter approach. This save memory and cpu.
5826 * scm/define-grobs.scm (all-grob-descriptions): remove
5827 instrument-name from break-alignment.
5829 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5831 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5833 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5836 * configure.in (std_vector): On by default.
5838 * lily/include/font-metric.hh:
5839 * lily/include/tfm-reader.hh:
5840 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5843 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5845 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5847 * VERSION (PACKAGE_NAME): 2.7.31
5849 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5850 EPS edge at 0, but take minimum with left-overshoot. This fixes
5851 cut off system start delims.
5853 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5854 hack: add to axis group if not added yet. This fixes hara kiri'd
5857 * lily/hara-kiri-group-spanner.cc
5858 (force_hara_kiri_in_y_parent_callback): fix signatures.
5860 * lily/hairpin.cc (print): check next hairpin to see whether or
5861 not to be continuing.
5863 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5865 * Remove trailing whitespace from makefiles.
5867 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5870 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5872 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5874 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5876 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5878 * configure.in: Use it.
5880 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5882 * scm/music-functions.scm (pitch-of-note): new function.
5884 * ly/music-functions-init.ly: add \octave and \addquote
5886 * lily/parser.yy (music_function_chord_body): softcode \octave.
5887 (lilypond_header): softcode \addquote
5889 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5891 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5892 array.hh, parray.hh at all. Getting ready to flip the
5895 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5897 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5900 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5902 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5904 * flower/include/array.hh: typo.
5906 2006-02-02 Graham Percival <gpermus@gmail.com>
5908 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5910 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5912 * flower/include/pqueue.hh: Derive from std::vector.
5914 * flower/include/parray.hh: Conform to std::vector interface.
5917 2006-02-02 Graham Percival <gpermus@gmail.com>
5919 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5921 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5923 * flower/file-path.cc (is_file): remove if 0 section.
5925 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5926 selecting afii61352.
5928 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5930 * flower/include/std-vector.hh (boundary): Oops, reverse.
5932 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5933 remove superfluous `d'.
5935 * flower/include/std-vector.hh (boundary, top): Detach from class.
5936 Remove empty vector shell.
5938 * flower/include/array.hh (reverse, swap): Detach from class.
5941 * flower/include/std-vector.hh
5942 * flower/include/array.hh (concat): Globally change to insert ().
5944 * flower/include/std-vector.hh
5945 * flower/include/parray.hh
5946 * flower/include/array.hh (elem, elem_ref): Globally replace by
5949 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5951 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5953 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5954 anticipate on identifier substitutions.
5956 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5958 * flower/include/std-vector.hh (insert): Remove, replace by
5959 std::vector interface. Update callers.
5961 * flower/include/array.icc (insert): Change signature to
5962 match std::vector interface.
5964 * flower/include/array.icc (vector_sort): Bugfix.
5966 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5968 * lily/parser.yy (output_def_head_with_mode_switch): new
5969 production. Result: dashes and underscores may be used in the
5972 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5974 * python/convertrules.py (conv): oops. One slash too much.
5976 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5978 * flower/include/std-vector.hh (sort): Remove, replace by
5979 ::vector_sort. Update callers.
5981 * flower/include/std-vector.hh (slice): Remove. Update callers.
5984 * flower/test-std.cc (vector_sort): New test.
5986 2006-02-01 Graham Percival <gpermus@gmail.com>
5988 * Documentation/user/putting.itely: fixes from Erik.
5990 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5992 * flower/test-std.cc: Add simple unit test for vector migration.
5994 * stepmake/stepmake/test*: Unit test support.
5996 * flower/include/std-vector.hh (del): Remove. Use erase (),
5999 * flower/include/array.hh (begin, end): Add.
6002 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6004 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6005 std::string not String.
6007 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6010 * lily/prob.cc (Prob): copy type_ too.
6012 * lily/lily-guile.cc (mangle_cxx_identifier): new
6013 function. Class_bla::foo_bar_[px] ->
6014 ly:class-bla::foo-bar[?!]. Changes throughout
6016 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6018 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6020 * lily/beam.cc (calc_direction): take dir from visible stem in
6023 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6025 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6026 Fix -1, >=0 boundary checks for unsigned vsize.
6028 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6029 loop for unsigned vsize.
6031 * configure.in (--enable-std-vector): New option.
6032 (--enable-std-string): On by default.
6034 * flower/include/std-vector.hh: New file. Enable switch to
6035 std::vector, update client code.
6037 2006-01-30 Graham Percival <gpermus@gmail.com>
6039 * scm/document-translation.scm: clarify "this context is also
6040 known as". Thanks, Werner!
6042 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6044 * Documentation/user/invoking.itely: small fix from Don.
6046 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6048 * scm/lily.scm (define-scheme-options): rename option
6049 preview-include-book-title to book-title-preview
6050 (define-scheme-options): move force-eps-font-include (from paper
6051 block) to eps-font-include -d option.
6053 * VERSION (PATCH_LEVEL): release 2.7.30
6055 * input/bach-schenker.ly (staffPiano): new file.
6057 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6059 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6062 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6064 * ps/lilyponddefs.ps: remove start-system, stop-system,
6065 start-page fluff. This saves putting { } code on the stack, fixing
6066 stack overflows when including EPS files.
6068 2006-01-29 Graham Percival <gpermus@gmail.com>
6070 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6072 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6074 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6076 2006-01-28 Graham Percival <gpermus@gmail.com>
6078 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6080 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6082 * input/mutopia/claop.py: Update.
6084 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6086 * input/regression/completion-heads.ly (texidoc): fix.
6088 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6090 * lily/tie-formatting-problem.cc
6091 (set_ties_config_standard_directions): use abs iso fabs for ints.
6093 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6095 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6096 little less than noteheight, to prevent overlaps in chords.
6098 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6099 head, and fudge stem-attachment.
6101 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6103 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6105 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6107 * lily/main.cc (main): Debugging aid: catch exceptions.
6109 * flower/std-string.cc (to_string): Robustification. Fixes midi
6110 output with std::string.
6112 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6114 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6116 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6118 * Fix -DSTRING_UTILS_INLINED.
6120 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6122 * VERSION (PATCH_LEVEL): release 2.7.29
6124 * lily/relocate.cc (setup_paths): mingw uses std string too.
6126 * lily/*.cc: various fixes for substr(ARG).
6128 * lily/sustain-pedal.cc (print):
6130 * flower/file-name.cc (slashify): use std strings.
6132 * flower/string-convert.cc: remove publib.h
6134 * scm/define-markup-commands.scm (verbatim-file): new markup
6135 command \verbatim-file
6137 * Documentation/topdocs/NEWS.tely: fixup URLs
6139 * input/regression/alignment-vertical-manual-setting.ly (Module):
6142 * lily/align-interface.cc (align_elements_to_extents): overwrite
6143 translations with numbers in alignment-offsets from left bound
6145 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6146 (page-translate-systems): new function: take into account Y-offset.
6148 * Documentation/topdocs/NEWS.tely (Top): document new features.
6150 * input/regression/page-layout-manual-position.ly (Module): new
6153 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6155 * flower/file-path.cc (path::parse_path): Oops.
6157 * Finish std::string interface. For now, use std:: marker
6158 throughout for easy s/r.
6160 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6162 * Documentation/user/putting.itely (Score is a single musical
6164 (Score is a single musical expression): more typos.
6166 * scm/page.scm (annotate-space-left): thinko.
6167 (annotate-page): more thinkos.
6169 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6171 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6172 for different \score blocks separately.
6173 (post-process-pages): put write-page-layout into paper block.
6175 * lily/output-def.cc (get_parser): new file.
6177 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6180 * lily/include/output-def.hh (class Output_def): add parser_ member.
6182 * input/regression/page-layout-twopass.ly (Module): new file.
6184 * scm/lily.scm: remove cpp hack.
6186 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6188 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6190 * GNUmakefile.in (c-clean): New target.
6192 * flower/include/std-string.hh: String/std::string compatibility:
6193 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6196 * flower/rational.cc:
6197 * flower/include/rational.hh:
6200 * flower/include/offset.hh:
6202 * flower/interval.cc:
6203 * flower/include/interval.hh:
6205 * flower/string-convert.cc:
6206 * flower/include/string-convert.hh: Use std::string [interface].
6209 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6211 * Documentation/index.html.in: clean up.
6213 2006-01-25 Graham Percival <gpermus@gmail.com>
6215 * Documentation/user/putting.itely: another new untested doc section.
6217 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6219 * scm/layout-page-layout.scm (write-page-breaks): write
6220 \spacingTweaks #ALIST. Handle grace timing.
6222 * scm/: more imports.
6224 * scm/page.scm (make-page): add footer/header.
6225 (annotate-space-left): revise: only take page argument.
6226 (layout->page-init): new function.
6228 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6229 version of the system/spacing/linebreak hack writing to the output
6231 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6234 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6237 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6239 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6241 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6243 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6244 handling to page.scm
6246 * lily/prob-scheme.cc (LY_DEFINE): new file.
6247 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6249 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6252 * lily/music.cc (derived_mark): derive Music from Prob.
6254 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6256 * lily/prob.cc (Module): Implement Prob (Property Object), object
6257 with shared and r/w property alists.
6259 * lily/include/prob.hh (Module): new file. Declare Prob.
6261 * flower/string.cc: remove is_empty().
6263 * flower/include/string.hh (class String): remove String:: qualifier.
6265 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6266 substitute appropriate functions.
6268 * flower/include/string.hh (class String): remove to_str0 and
6269 is_empty(). S&R everywhere.
6271 2006-01-23 Graham Percival <gpermus@gmail.com>
6273 * Documentation/user/basic-notation.itely: add hairpin
6274 after-linebreak tweak to commonprop.
6276 * Documentation/user/putting.itely: added two new sections.
6278 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6280 * flower/international.cc:
6281 * flower/include/international.hh:
6283 * flower/getopt-long.cc:
6284 * flower/include/getopt-long.hh: Use std::string [interface].
6287 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6289 * stepmake/stepmake/executable-rules.make: Add dependency on
6292 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6294 * flower/file-path.cc:
6295 * flower/include/file-path.hh: Use std::string [interface].
6298 * flower/direction.cc:
6299 * flower/axis.cc: Unused. Remove.
6301 * configure.in (--enable-std-string): New option.
6303 * flower/std-string.cc:
6304 * flower/include/std-string.hh: New file.
6306 * flower/file-name.cc[STD_STRING]:
6307 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6309 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6311 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6313 * scm/define-markup-commands.scm (with-dimensions):
6314 with-dimensions markup command.
6316 * input/test/font-table.ly: use it.
6318 * lily/open-type-font.cc (glyph_list): new function.
6320 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6322 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6324 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6326 * ly/music-functions-init.ly (parallelMusic): new music function
6327 for parallel music entry.
6329 * scm/define-music-properties.scm (all-music-properties): new
6330 'void music property
6332 * scm/music-functions.scm (ly:music-message): make public, to be
6333 used in music function definitions
6335 * scm/lily-library.scm (collect-music-for-book): discard music
6336 when the 'void property is set.
6338 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6340 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6342 * mf/GNUmakefile: idem.
6344 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6346 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6348 * Documentation/user/notation-appendices.itely (The Feta font):
6351 * input/test/font-table.ly: new file. Generate font table within lily.
6353 * Documentation/user/notation-appendices.itely (The Feta font):
6354 use new font-table.ly file.
6356 * stepmake/stepmake/install-out-targets.make
6357 (local-install-outfiles): only create directory if
6358 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6360 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6362 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6364 * VERSION (PACKAGE_NAME): release 2.7.28
6366 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6367 the right font from a Mac dfont.
6368 (write-preamble): don't forget directory, only look at files.
6370 This fixes problems with TTF files in dfonts that don't match
6371 their PostScript names.
6373 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6374 PS name from TTF font.
6376 * input/regression/tie-manual.ly: document new feature.
6378 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6380 * VERSION (MY_PATCH_LEVEL): bump to .28
6382 * Documentation/user/basic-notation.itely (Ties): add tie examples
6385 * lily/tie-formatting-problem.cc (score_ties_configuration):
6386 symmetry penalties for outer ties.
6388 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6390 * lily/tie-formatting-problem.cc (generate_configuration)
6391 (set_manual_tie_configuration): skip non-pair manual
6392 tie-configuration, so you can set individual ties as
6394 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6396 * input/regression/tie-chord.ly: use generateTiePattern to
6399 * lily/tie-formatting-problem.cc (peak_around): new function.
6400 (score_configuration): use sliding criterion for staff line collisions.
6401 (score_configuration): idem for dot collisions.
6402 (generate_configuration): use separate stem_gap for gap to stem.
6404 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6405 separate penalty factors for x and y distance.
6406 (struct Tie_details): separate penalties for tip and center line collisions.
6408 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6410 * lily/tie-formatting-problem.cc (generate_configuration): make
6411 large ties avoid stafflines in the horizontal section.
6412 (score_configuration): use softcoded penalties
6413 (score_aptitude): idem.
6415 * lily/tie-helper.cc (from_grob): softcode tie details
6417 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6419 * lily/staff-symbol-referencer.cc (on_line): rename from
6422 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6424 * ly/music-functions-init.ly: remove duplicate tag.
6426 * lily/include/*.hh: GCC 4.1 fixes.
6428 006-01-16 Erlend Aasland <erlenda@gmail.com>
6430 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6432 * scm/define-music-types.scm: fix bug in desc. string
6433 for OverrideProperty
6435 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6437 * scripts/lilypond-book.py: bugfix
6439 * scm/define-music-types.scm: fix typos.
6441 2006-01-14 Graham Percival <gpermus@gmail.com>
6443 * Documentation/user/ basic-notation.itely, global.itely,
6444 advanced-notation.itely, instrument-notation.itely: small
6445 additions (bugs and commonly tweaked properties).
6447 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6449 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6450 detection of mingw build.
6451 (MINGW_BUILD): opps.
6453 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6455 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6458 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6460 * scm/music-functions.scm (skip->rest): add skip->rest
6462 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6464 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6467 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6468 config dirs. Aids debugging.
6469 (display_config): also display config files.
6471 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6473 * VERSION: release 2.7.27
6475 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6476 for determining bar size.
6478 * lily/staff-symbol.cc (print): place lines at distance line-positions
6480 * scm/define-grob-properties.scm (all-user-grob-properties): add
6483 * lily/staff-symbol.cc (height): new function.
6485 * input/regression/staff-line-positions.ly: new file.
6487 2006-01-06 Graham Percival <gpermus@gmail.com>
6489 * input/test/add-staccato.ly: remove reference to old file.
6491 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6493 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6494 lilypond binary too.
6496 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6498 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6500 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6502 * scripts/midi2ly.py: Bugfix: Declare datadir.
6504 * make/ly-rules.make:
6505 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6506 that seems to be gone). Fixes make web.
6508 * The grand 2005-2006 replace.
6510 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6512 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6514 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6515 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6516 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6517 like -dgs-font-load.
6519 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6520 remove absolute path to lilypond binary.
6522 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6524 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6526 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6528 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6530 * mf/GNUmakefile: remove broken dvips map symlink.
6532 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6535 * configure.in: Cosmetic fixes.
6537 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6539 * Documentation/user/music-glossary.tely (Pitch names): Added
6540 Spanish pitch names and durations, thanks to Ernesto Gancedo
6542 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6544 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6545 init. Fixes verbose printing of .scm files.
6547 * stepmake/aclocal.m4: add spaces before - options.
6549 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6551 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6552 of path search in local block variable.
6554 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6556 * configure.in (NCSB_DIR): --enable-ncsb-dir
6557 (LINK_GXX_STATICALLY): denko.
6559 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6561 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6562 use locate to find c059033l.pfb.
6564 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6566 * lily/tie-formatting-problem.cc
6567 (problem::generate_base_chord_configuration): Use my_round (was
6570 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6571 do not invoke mbrtowc.
6573 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6575 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6577 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6579 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6581 * Documentation/user/invoking.itely (svg): revise.
6583 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6585 * lily/lexer.ll: use sourcefilename iso. renameinput.
6587 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6589 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6590 <PostScriptName>.ttf instead of c059XXXttf.
6592 * lily/program-option.cc (LY_DEFINE): special support for
6593 --verbose, so it works before option init too.
6595 * mf/GNUmakefile (local-install): oops.
6597 * lily/lyric-hyphen.cc (print): oops.
6599 * buildscripts/pfx2ttf.fontforge: new file.
6601 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6602 ($(outdir)/%.ttf): new rule.
6604 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6607 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6610 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6612 * VERSION: release 2.7.26
6614 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6616 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6618 * lily/font-config.cc (init_fontconfig): verbosity.
6620 * THANKS: add Muziekacademie Lede.
6622 * scripts/musicxml2ly.py (print_voice_definitions): new function
6623 (print_score_setup): new function
6624 (convert): read part definition to output staves properly.
6626 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6629 * python/musicexp.py (Output_printer.__init__): use _ in data
6631 (Output_printer.unformatted_output): new function: no formatting,
6633 (Duration.get_length): remove isinstance() checks for
6634 Output_printer everywhere.
6636 * input/regression/lyrics-bar.ly (texidoc): add
6637 Separating_line_group_engraver.
6639 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6641 * lily/relocate.cc (framework_relocation): New function,
6642 factored from set_relocation ().
6643 (prefix_relocation): Rename from set_relocation ().
6644 (setup_paths): Use it.
6646 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6648 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6649 numbers. Patch by Erlend Aasland.
6651 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6653 * lily/font-config.cc (init_fontconfig): print warning if cache
6654 file is not existant.
6656 * lily/main.cc: don't use #ifdef but #if
6658 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6660 * lily/grob-property.cc (internal_set_property): don't abort on
6661 calculation-in-progress.
6663 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6665 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6666 connect-to-neighbor property not connect-to-other
6668 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6669 (LY_DEFINE): oops. don't forget protection.
6671 * flower/parse-afm.cc (Module): strip AFM handling completely.
6673 * lily/stencil-expression.cc: idem.
6675 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6677 * lily/function-documentation.cc (ly_add_function_documentation):
6678 use static member iso. Protected_scm
6680 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6682 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6684 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6686 * lily/relocate.cc (set_env_dir): New function.
6687 (set_relocation): Use it to fix setting PANGO_PREFIX.
6689 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6691 * input/regression/stem-direction-context.ly: remove rest.
6693 * lily/melody-engraver.cc (process_music): restart for bar lines.
6694 (acknowledge_slur): restart for slurs.
6696 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6698 * Documentation/user/invoking.itely: describe how to view SVG
6699 output using Inkscape which replace embedded fonts with OTF fonts.
6701 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6703 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6705 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6707 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6710 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6712 * VERSION (PACKAGE_NAME): release 2.7.25
6714 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6716 * input/regression/stem-direction-context.ly: new file.
6718 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6720 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6723 * ly/engraver-init.ly: add Melody_engraver
6725 * lily/beam.cc (calc_direction): use default-direction
6726 iso. get_default_direction()
6728 * scm/define-grob-properties.scm (all-user-grob-properties): add
6729 default-direction property.
6731 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6733 * lily/stem.cc (calc_default_direction): remove
6734 Stem::get_default_direction, use default-direction with callback
6737 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6739 * lily/melody-engraver.cc: new file. Acknowledge stems for
6740 interpolated stem directions.
6742 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6744 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6746 * lily/slur-configuration.cc (fit_factor): more robust check for
6747 point in curve X-extent.
6749 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6750 (outside_slur_callback): check for 'outside avoidance.
6752 * lily/slur-configuration.cc (score_extra_encompass): don't use
6753 bound->column() == avoid->column() for checking extents, as this
6754 doesn't work for accidentals.
6756 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6757 DynamicText hardcoding.
6759 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6760 crash if bound stem is NULL
6762 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6765 2005-12-22 Graham Percival <gpermus@gmail.com>
6767 * scm/define-markup-commands.scm: typo. @code{\raise}
6770 * darwin.patch: now used again, includes a
6771 required patch from fink.
6773 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6775 * po/TODO: mention gtranslator along with kbabel.
6776 * po/fi.po: update translations.
6778 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6780 * lily/relocate.cc (setup_paths): Bugfix.
6782 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6784 * lily/slur-configuration.cc (score_extra_encompass): don't use
6785 "avoid" choice for avoid-slur.
6787 * stepmake/bin/install.py (dest): don't create existing dir.
6789 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6791 * stepmake/bin/install.py: Remove file before copying.
6794 * stepmake/aclocal.m4: Do not substitute INSTALL.
6796 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6798 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6799 depend on link-tree.
6801 * lily/relocate.cc (setup_paths): only check path for non-absolute
6802 dir without directory part.
6804 * flower/file-name.cc (is_absolute): new method.
6805 (is_absolute): check root_ too.
6807 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6809 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6810 relocation code. Oops, don't comment out too much.
6812 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6815 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6818 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6820 * .cvsignore: Add install-sh.
6822 * autogen.sh (srcdir): Typo.
6824 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6826 * autogen.sh (srcdir): urg. Touch install-sh.
6828 * stepmake/bin/install-sh (Module): remove.
6830 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6832 * lily/include/relocate.hh: new file.
6834 * lily/relocate.cc: new file. Contain relocation logic.
6836 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6837 (main): read LILYPOND_VERBOSE as the first thing.
6839 * stepmake/aclocal.m4: remove INSTALL variable.
6841 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6842 separate target for making font symlinks.
6843 (documentation-dir): use $(if $(findstring )) for switching off
6846 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6847 something if DOCUMENTATION is no.
6849 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6851 * VERSION: release 2.7.24
6853 * lily/script-column-engraver.cc (stop_translation_timestep):
6854 delay adding to script-column.
6856 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6858 * python/convertrules.py (conv): rule for number-visibility
6860 * lily/slur-configuration.cc (score_extra_encompass): different
6861 distance measure for avoid and inside avoidance.
6862 (score_extra_encompass): use 1/(distance+eps) as penalty.
6864 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6865 encompass objects for generating slur curves.
6867 * lily/slur.cc: use details iso. slur-details property.
6869 * input/regression/slur-tuplet.ly: new file.
6871 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6873 * flower/include/offset.hh (class Offset): new operator /=
6875 * lily/tuplet-number.cc (print): new file, new interface.
6877 * scm/define-grob-properties.scm (all-user-grob-properties):
6878 remove number-visibility property.
6880 * lily/tuplet-bracket.cc (calc_control_points): new function
6881 (calc_connect_to_neighbors): new function.
6882 (print): remove text handling for tuplet numberdef.
6884 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6887 * lily/lily-guile.cc (robust_scm2booldrul): new function
6889 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6891 * lily/tuplet-bracket.cc (calc_position_and_height): use
6892 staff-padding to control whether tuplet brackets are over staves.
6894 * lily/grob.cc (suicide): clear dim_caches_.
6896 * lily/dimension-cache.cc (clear): new function.
6898 * lily/grob.cc (extent): swap order of min-extent and extent
6899 calculations. This fixes hara kiri staves.
6901 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6903 * lily/main.cc: Nitpick: relocation is not based on path, but on
6904 directory (location).
6906 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6908 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6910 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6912 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6914 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6916 * stepmake/stepmake/generic-vars.make (Module): idem.
6918 * stepmake/stepmake/executable-targets.make (default): use it.
6920 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6922 * make/GNUmakefile: don't install make rules.
6924 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6926 (prepend_env_path): more verbosity.
6928 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6930 * GNUmakefile.in: add dir argument for find command.
6932 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6933 fixes weird line numbers for point & click.
6935 * lily/source-file.cc (get_counts): init line/column/char counts.
6937 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6939 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6941 2005-12-16 Graham Percival <gpermus@gmail.com>
6943 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6944 minor fixes from Fredric. Thanks!
6946 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6948 * ly/music-functions-init.ly: add \bar and \clef music function
6950 * lily/lily-lexer.cc: idem.
6952 * lily/parser.yy (FIXME): remove BAR and CLEF.
6954 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6956 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6958 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6959 function arguments too
6961 * lily/main.cc (set_relocation): new function.
6963 * scripts/musicxml2ly.py (convert): add \version
6965 * lily/tie.cc: remove get_default_attachments()
6967 * VERSION (PACKAGE_NAME): release 2.7.23
6969 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6970 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6972 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6974 * lily/tie-formatting-problem.cc (score_ties): new function
6975 (get_variations): new function. Try flipping dirs for collisions.
6976 (generate_optimal_chord_configuration): new function. 1-opt search
6977 for better configuration.
6979 * lily/tie-configuration.cc: new file.
6981 * lily/tie.cc: junk Tie::get_configuration()
6983 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6984 (score_ties_configuration): new function.
6985 (generate_ties_configuration): new function.
6986 (generate_base_chord_configuration): new function.
6987 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6988 (set_manual_tie_configuration): Move body from tie-column-format.cc
6990 * input/regression/tie-dot.ly: new file.
6992 * lily/tie-formatting-problem.cc (score_configuration): score
6995 * lily/tie-helper.cc (get_transformed_bezier): new function
6997 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6999 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7000 -undefined suppress iso. -framework Python
7002 * scm/define-grobs.scm (all-grob-descriptions): set
7003 springs-and-rods (thanks Joe Neeman!)
7005 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7007 * input/no-notation/display-lily-tests.ly (test):
7008 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7009 changed from \tag #'(a b) to \tag #'a \tag #'b
7011 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7013 * Documentation/topdocs/NEWS.tely: strip out-www.
7015 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7017 * config.make.in (AR): add AR and RANLIB
7019 * flower/libc-extension.cc: include cassert
7021 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7024 2005-12-11 Graham Percival <gpermus@gmail.com>
7026 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7028 * stepmake/stepmake/python-modules-vars.make: define
7029 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7031 * THANKS: added Johannes Schindelin.
7033 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7035 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7037 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7038 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7040 * lily/parser.yy: reorganize file layout.
7042 * ly/music-functions-init.ly: add tweak music function.
7044 * lily/grob-info.cc (ultimate_music_cause): new function:
7045 recursively lookup causes.
7047 * lily/parser.yy (chord_body_element): allow music functions for
7048 post-events, allow music functions for chord elements.
7050 * lily/font-config-scheme.cc (display_fontset): add cast.
7052 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7053 #'(a b) -> \tag #'a \tag #'b rule.
7055 * python/musicexp.py (Output_printer.dump_version): new function
7057 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7059 * lily/parser.yy (FIXME): remove \tag
7060 (FIXME): remove tag_music() function.
7062 * lily/lily-lexer.cc: remove \tag
7064 * ly/music-functions-init.ly: define music-function "tag"
7066 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7068 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7070 * VERSION (PATCH_LEVEL): release 2.7.22
7072 * input/regression/lyric-hyphen-retain.ly: renew.
7074 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7077 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7078 iso. minimum-length property for rods.
7080 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7081 LyricSpace item to keep lyrics spaced apart.
7083 * ly/engraver-init.ly: remove Separating_line_group_engraver
7085 * Documentation/user/music-glossary.tely: do setfilename before
7088 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7090 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7091 See xref documentation, for example.
7093 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7095 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7096 pending_skip iso. ly_voice[-1]
7097 (main): add if __main__ for debugging.
7099 * python/musicxml.py (Accidental.__init__): new class.
7101 * scripts/musicxml2ly.py (progress): new function
7102 (musicxml_key_to_lily): don't barf on modeless keys.
7103 (create_skip_music): new function.
7104 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7105 (musicxml_note_to_lily_main_event): new function.
7107 * python/musicexp.py (Music.__init__): add comment field.
7108 (NestedMusic.append): new routine.
7109 (SequentialMusic.print_ly): print comment.
7110 (ArpeggioEvent.ly_expression): new class
7111 (BeamEvent.ly_expression): new class
7112 (NoteEvent.__init__): support for cautionary/forced accs.
7114 * lily/lookup.cc (slur): normal order for array loop.
7116 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7119 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7122 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7124 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7126 * scripts/lilypond-book.py: Introduce option
7127 --preserve-line-breaks, for usage with srcltx
7129 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7131 * scm/output-lib.scm (print-circled-text-callback): draw circle
7132 around text using make-circle-markup.
7134 * Documentation/user/*: strip out-www from file names.
7136 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7138 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7139 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7141 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7143 * Documentation/user/GNUmakefile: idem.
7145 * Documentation/user/macros.itexi: strip out-www
7147 * python/rational.py: python 2.3 compat.
7149 * VERSION (PATCH_LEVEL): release 2.7.21
7151 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7152 option formatting, lilypond style.
7154 * python/musicexp.py: grab from Ikebana: a library for composing
7155 ly music expressions.
7156 (Output_printer): class for advanced .ly printing.
7159 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7160 convert to pythonesque structure.
7162 * python/rational.py: PD rational number class.
7164 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7166 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7168 * lily/part-combine-iterator.cc: Minor bugfix
7170 * THANKS: Update bughunters
7172 2005-12-02 Werner Lemberg <wl@gnu.org>
7174 * mf/README: Document process for proper mf2pt1 conversion.
7176 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7179 * mf/feta-harmonica.mf: Removed. Unused.
7181 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7183 * scripts/lilypond-book.py (do_file): fix thinkos.
7185 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7187 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7188 ($(outdir)/parser.cc):
7189 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7191 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7193 * ly/titling-init.ly (tagline): it should be a space between
7194 "Music engraving by LilyPond" and the version number.
7196 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7198 * VERSION (PACKAGE_NAME): release 2.7.20
7200 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7202 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7204 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7206 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7208 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7210 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7212 * kpath-guile/: remove directory
7214 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7215 file. Encapsulate kpathsea using commandline tools.
7217 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7220 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7222 * Documentation/user/advanced-notation.itely (Setting automatic
7223 beam behavior): Correct a few typos. Thanks to David Bobroff.
7225 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7226 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7228 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7230 * scripts/*.py: gmane address for bugs.
7232 2005-11-28 Pal Benko <benkop@freestart.hu>
7234 * make/ly-rules.make: add -f switch to mv
7236 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7238 * lily/bar-line.cc: interpret it
7240 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7242 * configure.in (--disable-documentation): New switch.
7244 * GNUmakefile.in: Use it.
7246 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7248 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7250 * scripts/lilypond-book.py (do_file): search chunks for
7253 * GNUmakefile.in: add copy step in between so we can lose the
7254 out-www directories.
7256 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7258 * lily/pango-font.cc (pango_item_string_stencil): put
7259 geometry.width into glyph-string too.
7261 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7263 * scm/define-music-display-methods.scm (RevertProperty):
7264 (OverrideProperty): Use grob-property-path property, a list of
7265 symbols, instead of grob-property, which used to be a single
7267 (BassFigureEvent): a figure can be a plain number, not necessarily a
7270 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7272 * VERSION: release 2.7.19
7274 * lily/figured-bass-engraver.cc (process_music): check
7275 figuredBassCenterContinuations first.
7277 * scm/translation-functions.scm (format-bass-figure): make double
7280 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7283 * lily/system-start-delimiter-engraver.cc: move from
7284 Nested_system_start_delimiter_engraver, rename
7285 Nested_system_start_delimiter_engraver ->
7286 System_start_delimiter_engraver.
7288 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7289 bracket type from hierarchy.
7291 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7293 * lily/rest.cc (y_offset_callback): read staff-position.
7295 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7296 mark after-line-breaking-callback as internal.
7298 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7300 2005-11-25 Werner Lemberg <wl@gnu.org>
7302 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7304 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7306 * stepmake/bin/add-html-footer.py (do_file): add google
7308 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7309 staff if first_start_ is true.
7311 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7313 * scripts/midi2ly.py (split_track): add __repr__ members.
7314 (track_first_item): only return Item if not None. This fixes a
7315 problem when dumping a track that starts with an empty channel.
7317 * python/midi.c: doc module.
7319 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7321 * Documentation/user/global.itely (Creating MIDI files): Fix
7322 compilation problem.
7324 2005-11-22 Graham Percival <gpermus@gmail.com>
7326 * Documentation/user/basic-notation.itely: clarify dynamic
7329 * Documentation/user/advanced-notation.itely: add unicode
7330 escape control example, whatever that is. :)
7332 * Documentation/user/global.itely: added "removing dynamics
7335 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7337 * VERSION (PATCH_LEVEL): release 2.7.18
7339 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7340 System_start_delimiter_engraver by
7341 Nested_system_start_delimiter_engraver.
7343 * lily/nested-system-start-delimiter-engraver.cc (struct
7344 Bracket_nesting_node): new class.
7345 (struct Bracket_nesting_group): new class
7346 (struct Bracket_nesting_staff): new class.
7347 (process_music): create hierarchy of grobs. This allows separate
7348 tuning of different SSDs.
7350 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7351 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7353 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7355 * lily/side-position-interface.cc (aligned_side): multiply
7358 * lily/script-engraver.cc (make_script_from_event): allow setting
7361 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7363 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7365 * scm/define-grobs.scm (all-grob-descriptions): new grob
7366 NestedSystemStartDelimiter.
7368 * input/regression/system-start-heavy-bar.ly: new file.
7370 * lily/nested-system-start-delimiter-engraver.cc: new file.
7372 * lily/nested-system-start-delimiter.cc: new file.
7374 * input/regression/system-start-nesting.ly: new file.
7376 * scm/define-grobs.scm (all-grob-descriptions): use X side
7377 positioning for positioning braces for nested contexts.
7379 * lily/system-start-delimiter.cc (print): don't divide extent by
7381 (print): use style iso. glyph.
7382 (staff_bracket): translate glyph inside routine already.
7384 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7386 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7389 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7391 * scm/define-context-properties.scm
7392 (all-user-translation-properties): rename figuredBassFormatter
7393 from newFiguredBassFormatter.
7395 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7397 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7399 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7401 * lily/beam.cc (calc_beaming): new function.
7402 (calc_shorten): new function.
7404 * THANKS: add Edward Neeman.
7406 * input/regression/accidental-clef-change.ly: new file.
7408 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7410 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7412 * lily/clef-engraver.cc (inspect_clef_properties): reset
7413 localKeySignature for clef changes.
7415 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7417 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7418 add dummy definition that works in Linux and add information in
7419 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7421 * Documentation/user/changing-defaults.itely (Modifying context
7422 plug-ins): Add index for \with.
7424 * Documentation/user/music-glossary.tely (dal segno): Updated
7425 example to version >=2.6.
7427 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7429 * Documentation/user/instrument-notation.itely (Printing chord
7430 names): Reorder \chordmode and \repeat in one example.
7432 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7434 * VERSION: release 2.7.17
7436 * Documentation/topdocs/NEWS.tely (Top): add note about
7439 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7440 new function. Search region of 3 positions for best tie.
7441 (score_configuration): new function.
7442 (score_aptitude): new function.
7443 (generate_configuration): new function.
7444 (get_configuration): new function.
7445 (Tie_formatting_problem): new function
7447 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7449 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7451 * THANKS: add Eduardo Vieira & Ralph Little
7453 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7456 * lily/include/tie-formatting-problem.hh (class
7457 Tie_formatting_problem): add Tie_details to
7458 Tie_formatting_problem. Update calling conventions.
7460 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7463 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7465 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7467 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7468 scm/define-context-properties.scm: Maintenance bugfix: make
7469 ligature brackets work again by removing obsolete ligature
7470 primitive callback push/pop.
7472 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7473 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7476 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7478 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7479 used and do not call it a path.
7480 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7482 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7484 * lily/include/tie-formatting-problem.hh (class
7485 Tie_formatting_problem): new file.
7487 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7489 * Documentation/misc/ChangeLog-2.3: new file.
7491 * lily/audio-staff.cc (output): degarianize.
7493 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7495 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7496 Unset PYTHONOPTIMIZE. Fixes install if set.
7498 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7500 * python/convertrules.py (conv): add warning about drums.
7502 * make/stepmake.make: include toplevel-version.make after config.make.
7504 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7505 also allow python2.4
7507 * config.make.in (configure-srcdir): remove GXX GCC vars.
7509 * stepmake/aclocal.m4: don't do non-srcdir build with
7510 symlinks. Use inclusion, so the src directory name can be changed.
7512 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7514 * make/mutopia-vars.make:
7515 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7518 2005-11-13 Werner Lemberg <wl@gnu.org>
7520 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7521 but the affected path. This ensures that the (overlapping) outlines
7522 have the same direction, which is a necessary prerequisite for
7523 FontForge's algorithm to remove overlaps.
7526 * mf/feta-haak.mf: Formatting.
7527 (draw_bracket): Slightly modify outline to avoid an unnecessary
7529 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7530 them from the affected paths.
7532 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7534 * mf/README: remove xpm / accordion notes.
7536 * lily/tie-column-format.cc (set_chord_outline): add dots into
7537 skyline extents. This fixes tie formatting if the left head has dots.
7539 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7540 space inside the staff.
7541 (get_configuration): shift another position if necessary in case
7544 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7546 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7547 buildscript-dir iso. $(depth)/buildscripts.
7549 * tex/GNUmakefile (local-uninstall): remove
7550 music-drawing-routines.ps juggling.
7552 * stepmake/stepmake/install-targets.make (local-install-files):
7553 prepend src-dir to install targets.
7555 * lily/system-start-delimiter-engraver.cc
7556 (acknowledge_system_start_delimiter): use
7557 add_offset_callback(). This fixes translation of nested
7560 * lily/grob-closure.cc (add_offset_callback): only encaps in
7561 simple_closure if it's a procedure.
7563 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7566 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7567 remove-empty where pertinent.
7569 2005-11-12 Graham Percival <gpermus@gmail.com>
7571 * Documentation/user/instrument-notation.itely: added
7572 Cameron Horsburgh's multiple stanzas docs. Thanks!
7574 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7577 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7578 make picture in builddir, not srcdir.
7580 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * VERSION: release 2.7.16
7584 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7587 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7589 * Documentation/user/examples.itely (Piano templates): Minor
7590 modification to the Piano centered lyrics example.
7592 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7594 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7597 * Documentation/user/point-and-click.itely: simplify p&c
7598 instruction: don't configure firefox. Put lilypond-invoke-editor
7599 in front of the browser.
7601 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7602 (run-browser): new function.
7604 * lily/parser.yy (Lily_lexer): recognize Book
7606 * lily/book.cc (clone): new function
7608 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7610 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7612 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7613 Maintenance bugfix: reduce number of font related warnings by
7614 updating naming conventions for glyph-name.
7616 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7618 * scm/define-grobs.scm (all-grob-descriptions): add
7619 rhythmic-grob-interface to TabNoteHead.
7621 * scm/layout-beam.scm (check-quant-callbacks): remove
7624 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7626 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7627 alignment of centered divisiones.
7629 * scm/scripts.scm (articulations): Maintenance bugfix:
7630 follow-into-staff -> quantize-position.
7632 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7633 plica head in porrectus deminutus.
7635 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7637 * make/lilypond.fedora.spec.in (Group): add %clean section.
7639 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7640 less then 1/5th of total length.
7641 (print): use gap too. Fixes tupletUp-single-bracket.ly
7643 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7644 events into EventChord. This fixes textspanners on mm rests. Fixes
7647 * lily/side-position-interface.cc (get_axis): read side-axis
7648 (set_axis): set side-axis.
7650 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7651 properties everywhere.
7653 * lily/spacing-spanner.cc (breakable_column_spacing): add
7654 average-spacing-wishes. Take maximum if not set.
7655 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7657 * scm/define-grobs.scm (all-grob-descriptions): add
7658 average-spacing-wishes.
7660 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7661 offset callbacks. This fixes alignment for Fingering objects.
7663 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7664 space for key - timesig combination.
7666 * input/regression/script-stem-tremolo.ly (Module): new file.
7668 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7671 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7672 Fixes: c-tremolo-script.ly.
7674 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7676 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7678 * scm/define-grobs.scm (all-grob-descriptions): remove
7679 self-X-offset. Fixes alignment of octavate-8.
7681 * scripts/lilypond-book.py (datadir): look in
7682 LILYPONDPREFIX/share/lilypond/current/
7684 * GNUmakefile.in: symlink current to <VERSION>.
7686 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7688 * lily/main.cc: eps listed as a backend.
7690 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7692 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7694 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7696 * lily/include/score.hh (class Score): remove texts_ member.
7698 * lily/beam.cc (set_stem_lengths): force direction callback.
7699 (print): read quantized-positions, so we can force
7700 Beam::set_stem_lengths to occur.
7701 (rest_collision_callback): use common X parent.
7703 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7705 * flower/file-path.cc (find): Bugfix: Return name of file found.
7707 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7708 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7709 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7711 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7713 * flower/offset.cc: idem.
7715 * mf/*.mf: update email address.
7717 * lily/font-config-scheme.cc: new file.
7719 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7721 * lily/*: cs.uu.nl -> xs4all.nl
7723 * VERSION (PATCH_LEVEL): release 2.7.15
7725 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7728 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7730 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7732 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7734 * lily/staff-performer.cc (process_music): add audio
7735 elements. This makes MIDI instrument changes work once again.
7737 * lily/main.cc (LY_DEFINE): add gmane address.
7739 * lily/beam.cc: remove calc_positions()
7741 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7742 original_ in private scope.
7743 (class Grob): drop pscore_ pointer, change to output_def pointer.
7744 (class Grob): cleanup class definition.
7746 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7748 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7750 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7751 absolute. Better diagnostics.
7753 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7754 This makes lilypond run from the build directory using argv0
7755 relocation (without any --prefix or LILYPONDPREFIX setting).
7757 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7759 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7761 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7762 with simple-closure.
7764 * lily/self-aligment-interface.cc (set_align_self): new function
7765 (set_center_parent): new function.
7767 * lily/side-position-interface.cc (set_axis): new function.
7769 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7772 * scm/define-grob-properties.scm (all-user-grob-properties):
7773 remove [XY]-offset-callbacks add [YX]-offset
7775 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7777 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7778 entry for time signatures after breathing signs. Bug report by
7781 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7783 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7784 not absolute, make it absolute using PATH.
7786 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7788 * python/midi.c (initmidi): Fix type for mingw.
7790 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7792 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7794 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7797 * stepmake/aclocal.m4: Support python cross compiling.
7799 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7802 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7804 * scm/output-lib.scm (chain-grob-member-functions): replace
7807 * lily/chained-callback.cc (Module): remove file.
7809 * lily/rest-collision.cc (force_shift_callback_rest): change to
7812 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7814 * lily/grob.cc (y_parent_positioning): remove axis argument from
7815 parent_positioning callbacks.
7816 (Grob): junk init code
7817 (get_offset): use generic property callbacks for
7818 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7819 (axis_parent_positioning): new function
7820 (axis_offset_symbol): new function
7821 (chain_offset_callback): new function
7822 (add_offset_callback): new function
7824 * lily/beam.cc (rest_collision_callback): change signature; this
7825 is now a chained callback.
7827 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7828 callback administration.
7830 * lily/simple-closure.cc: new file. Smob type that allows "grob
7833 (ly:make-simple-closure FUNC A B)
7835 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7838 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7841 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7843 * lily/rest.cc (polyphonic_offset_callback): remove.
7845 * lily/script-engraver.cc (try_music): remove bool* argument.
7847 * scm/script.scm (default-script-alist): set quantize-position
7850 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7852 * lily/side-position-interface.cc (aligned_side): move staff
7853 position quantization from
7854 Side_position_interface::quantised_position().
7855 (quantised_position): remove
7857 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7859 * input/regression/beam-quant-standard.ly: reindent, set
7860 debug-beam-quanting to #t.
7862 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7863 10000 if this is a "hard" concave beam.
7865 * lily/beam.cc (calc_least_squares_positions): change from
7866 calc_least_squares_dy
7867 (set_stem_lengths): this is now a chained callback.
7869 * lily/context-property.cc (execute_general_pushpop_property):
7870 bugfix override with procedure should have effect.
7872 * scm/define-grob-properties.scm (all-internal-grob-properties):
7873 remove position-callbacks.
7875 * scm/define-grobs.scm (all-grob-descriptions): use
7876 ly:make-callback-chain for positions property.
7878 * scm/layout-beam.scm (check-quant-callbacks): return list of
7881 * scm/lily.scm (type-p-name-alist): add callback-chain
7883 * lily/lily-guile.cc (type_check_assignment): type check failure
7884 is warning not message.
7886 * lily/grob-property.cc (try_callback): walk callback chain if
7889 * lily/chained-callback.cc: new file. new smob type.
7891 * lily/lily-guile.cc (procedure_arity): new function.
7893 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7895 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7897 2005-10-25 John Mandereau <john.mandereau@free.fr>
7899 * Documentation/user/instrument-notation.itely (Figured bass):
7900 describe new features
7902 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7904 * lily/beam.cc (calc_least_squares_dy): use property callback.
7906 * lily/beam-concave.cc (calc_concaveness): use property callback.
7908 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7910 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7914 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7916 * scm/layout-page-layout.scm (page-headfoot): annotate
7919 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7921 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7922 doesn't take y-space.
7924 * scm/paper.scm (paper-alist): fix A7 dimensions.
7926 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7928 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7929 src-wildcard, remove $(wildcard).
7931 * po/GNUmakefile (PO_FILES):
7932 * ps/GNUmakefile (PS_FILES):
7933 * tex/GNUmakefile (TEX_FILES):
7934 * cygwin/GNUmakefile (POSTINSTALLS):
7935 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7936 some wildcard calls.
7938 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7940 * THANKS: add Thomas Bushnell.
7942 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7944 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7945 (lilypond-main): Redirect to gui-main if 'gui is set.
7947 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7948 for alternative installations kludging s/share/lib/g
7951 * SConstruct (libdir_package_version): Define.
7953 * python/SConscript:
7954 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7957 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7959 * lily/main.cc: clarify --safe.
7961 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7963 * VERSION: release 2.7.14
7965 * Documentation/user/*.itely: remove minimumVerticalExtent.
7967 * scm/define-grobs.scm (all-grob-descriptions): remove
7968 RemoveEmptyVerticalGroup
7970 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7972 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7975 * python/convertrules.py (conv): add rules.
7977 * lily/grob.cc: remove is_empty()
7979 * lily/grob-property.cc: remove add_to_list_property().
7981 * scripts/convert-ly.py (datadir): add prefix switching hack to
7984 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7985 space-function tweak.
7987 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7989 * scm/define-grob-properties.scm (all-user-grob-properties):
7990 remove callback property.
7992 * lily/include/grob.hh (class Grob): remove property_callbacks_
7993 member. Properties of procedure type are assumed to be callbacks.
7995 * lily/ligature-engraver.cc (override_stencil_callback):
7996 rewrite. Use noteHeadLigaturePrimitive as source.
7998 * scm/define-grob-properties.scm (all-internal-grob-properties):
7999 remove ligature-primitive-callback
8001 * lily/include/dimension-cache.hh (class Dimension_cache): make
8002 class, with Grob as friend.
8004 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8005 has_extent_callback()
8007 * scm/translation-functions.scm (format-new-bass-figure): read
8008 figuredBassPlusDirection
8010 * scm/define-context-properties.scm
8011 (all-user-translation-properties): add figuredBassPlusDirection.
8013 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8015 * lily/align-interface.cc (set_ordered): new function.
8017 * lily/grob.cc (flush_extent_cache): rewrite.
8019 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8020 Interval pointer directly.
8022 * lily/main.cc (setup_paths): insert extra / .
8023 (setup_paths): junk cff entry.
8025 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8028 * lily/axis-group-engraver.cc (finalize): remove
8029 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8031 * lily/grob.cc (Grob): don't set extent from ctor.
8032 (extent): use property callbacks.
8034 * lily/axis-group-interface.cc: remove set_axes() function.
8036 * lily/grob-property.cc (del_property): new function.
8038 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8040 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8042 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8044 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8046 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8048 * mf/SConscript: Updates.
8050 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8052 * stepmake/stepmake/*:
8056 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8057 from any directory in build-dir. Cleanups.
8059 * make/srcdir.make.in: Remove.
8061 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8063 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8066 * lily/SConscript: Remove ttftools.
8068 * SConstruct: Resurrect.
8070 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8072 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8075 * lily/paper-book.cc (add_score_title): put Paper_score title into
8078 * scm/translation-functions.scm (format-new-bass-figure): also
8079 allow plus in combination with _
8081 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8083 * VERSION: 2.7.13 released.
8085 * lily/note-collision.cc (check_meshing_chords): don't wipe
8086 stencil, merely set transparent.
8088 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8089 (Top): document #'callbacks.
8090 (Top): document nested \override.
8092 * input/regression/figured-bass.ly: update for slash and pluses.
8094 * input/regression/figured-bass-continuation-forbid.ly (Module):
8097 * scm/translation-functions.scm (format-new-bass-figure): use
8098 slashed-digit if diminished is set.
8099 (format-new-bass-figure): add + if 'augmented is set.
8101 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8103 * input/test/piano-staff-distance.ly: remove file.
8105 * Documentation/user/advanced-notation.itely (Formatting cue
8106 notes): use length-fraction for making stems/beams smaller.
8108 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8111 * lily/new-figured-bass-engraver.cc: new property
8112 centerFiguredBassContinuations
8114 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8117 * lily/context-property.cc (execute_general_pushpop_property):
8120 * input/regression/override-nest.ly: new file.
8122 * python/convertrules.py (FatalConversionError.subber): conversion
8123 rule for #'callbacks
8125 * input/regression/override-nest.ly: new function.
8127 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8130 * lily/context-property.cc (lookup_nested_property): new function.
8131 (evict_from_alist): new function.
8132 (general_pushpop_property): new function.
8133 (execute_general_pushpop_property): rewrite. Support nested
8136 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8138 * lily/beam.cc: use length-fraction too.
8140 * scm/define-grob-properties.scm (all-user-grob-properties):
8141 remove property flag-width-function
8142 (all-user-grob-properties): remove space-function.
8144 * scm/layout-beam.scm: remove flag-width-function.
8146 * lily/beam.cc: remove flag-width-function
8148 * scm/layout-beam.scm: remove beam dir functions.
8150 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8152 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8153 for easier grace tweaks.
8155 * lily/beam.cc: remove dir-function.
8157 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8159 * lily/grob.cc: remove spacing-procedure.
8161 * lily/note-head.cc (calc_stem_attachment): new function.
8162 (internal_print): use callback to get glyph-name.
8164 * lily/grob-property.cc (get_interfaces): new function.
8166 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8168 * lily/stem.cc (calc_stem_end_position): new function.
8169 (calc_length): new function.
8170 document details for stem.
8171 remove Stem::get_direction()
8173 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8175 * lily/grob-property.cc (set_callback): new function.
8177 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8179 * lily/item-scheme.cc: new file.
8181 * lily/bar-line.cc (before_line_breaking): remove function.
8182 remove bar-size-procedure, break-glyph-function
8184 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8186 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8188 * lily/system-start-delimiter.cc (print): suicide from
8189 here. Remove after_line_breaking_callback.
8191 * lily/script-interface.cc (calc_direction): use callback for direction.
8193 * lily/side-position-interface.cc (aligned_side): don't use
8194 Side_position_interface::get_direction directly. Use callback.
8196 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8198 (get_print_stencil): rename from get_stencil: create stencil with
8199 transparency, color and cause.
8201 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8203 * python/convertrules.py (conv): insert temporary warning rule.
8205 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8207 * lily/grob-property.cc (try_callback): remove marker if applicable.
8209 * lily/grob.cc: elucidate doc about after/before-line-breaking
8211 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8213 * lily/stem.cc (height): idem.
8215 * lily/stem-tremolo.cc: idem.
8217 * lily/slur.cc (height): don't use get_uncached_stencil()
8219 * lily/rest.cc (y_offset_callback): use offset callback
8220 iso. after-line-breaking callback.
8222 * lily/grob.cc: change after/before-line-breaking-callback to
8223 after/before-line-breaking dummy properties.
8225 * lily/include/grob.hh: remove Grob_status.
8227 * scm/define-context-properties.scm
8228 (all-user-translation-properties): remove verticalAlignmentChildCallback
8230 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8231 (calc_direction): use callback
8232 (calc_positions): use callback.
8234 * lily/tie.cc (calc_direction): use callback. Only call parent
8235 positioning for more than one tie.
8237 * lily/tie-column.cc (calc_positioning_done): use callback
8239 * lily/slur-scoring.cc (calc_control_points): use callback
8241 * lily/slur.cc (calc_direction): use callback.
8243 * lily/note-collision.cc (force_shift_callback): remove.
8245 * lily/dot-column.cc (force_shift_callback): remove. Use
8246 other_axis_parent_positioning.
8248 * lily/grob.cc (other_axis_parent_positioning): new function.
8249 (same_axis_parent_positioning): new function
8251 * lily/align-interface.cc (alignment_callback): remove function.
8253 * lily/note-collision.cc (calc_positioning_done): use callback.
8255 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8256 (calc_direction): idem.
8257 remove print function.
8259 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8261 * lily/dot-column.cc (calc_positioning_done): use callback.
8263 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8265 * lily/beam.cc (calc_direction): use pseudo-property for beam
8267 (calc_positions): use callback
8269 * lily/align-interface.cc (calc_positioning_done): use
8270 callback. Fold fixed distance and normal alignment in one function.
8272 * lily/stem.cc (calc_stem_end_position): use callback.
8273 (calc_positioning_done): idem.
8274 (calc_direction): idem.
8275 (calc_stem_end_position): idem
8276 (calc_stem_info): idem.
8278 * lily/grob-property.cc (get_property_data): new function:
8279 (try_callback): new function.
8281 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8284 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8286 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8288 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8292 * lily/include/*.hh (Module): compile fixes.
8294 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8296 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8297 as an argument for char-syntax: use (char-syntax (or nil 0))
8298 instead of (char-syntax nil), thanks to Milan Zamazal.
8300 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8302 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8305 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8308 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8310 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8311 add class_name() method.
8313 * lily/music-scheme.cc: remove ly:music-name.
8315 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8317 * cygwin/postinstall-lilypond.sh: Remove cruft.
8319 * cygwin/postremove-lilypond.sh: Remove.
8321 * cygwin/GNUmakefile (default): Remove postremove rules.
8323 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8325 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8328 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8331 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8332 consider break index for broken spanner.
8334 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8335 characters from string before splitting.
8337 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8339 * scm/framework-ps.scm (output-preview-framework): use
8340 is-book-title to determine whether to chop off the booktitle.
8342 * lily/paper-book.cc (systems): init from book-title-properties
8343 (add_score_title): init score-title-properties.
8345 * ly/paper-defaults.ly: add {score,book}-title-properties.
8347 * scm/document-backend.scm (lookup-interface): error message if
8348 using unknown interface.
8350 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8353 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8355 (make_bracket): new function.
8357 * scm/lily.scm (define-scheme-options): add paper-size option.
8359 * ly/declarations-init.ly (laissezVibrer): get paper size from
8362 * scm/translation-functions.scm: use \fontsize for changing the
8365 * scm/define-grobs.scm (all-grob-descriptions): set
8366 between-length-limit to 1.0
8368 * lily/tie-helper.cc: add between_length_limit_ detail property.
8370 * mf/feta-bolletjes.mf: typos.
8372 * lily/note-head.cc (internal_print): don't shadow idx
8373 parameter. This fixes wrong attachment for do shape heads.
8375 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8377 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8379 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8381 * scm/layout-slur.scm: rename from slur.scm
8383 * scm/layout-page-layout.scm: rename from page-layout.scm
8385 * scm/layout-beam.scm: rename from beam.scm
8387 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8388 bass-figure-interface
8390 * lily/new-figured-bass-engraver.cc (process_music): add
8391 implicitBassFigures property.
8393 * scm/define-markup-commands.scm (pad-x): new markup.
8395 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8396 minimumVerticalExtent on FiguredBass context.
8398 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8399 case the continuation crosses a line break.
8401 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8403 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8404 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8405 absolute file name bug.
8407 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8409 * VERSION (PACKAGE_NAME): release 2.7.12
8411 * input/regression/figured-bass-continuation-center.ly: new file.
8413 * input/regression/beam-outside-beamlets.ly: new file.
8415 * lily/beam.cc (set_beaming): don't clip edges.
8416 (connect_beams): don't clip edges.
8418 * lily/beaming-info.cc (clip_edges): new function.
8420 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8422 * Documentation/user/instrument-notation.itely (Figured bass):
8423 demonstrate extenders, update seealso links.
8425 * scm/titling.scm (marked-up-headfoot): change tagline
8426 handling. tagline = ##f will blank the tagline as well.
8428 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8430 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8432 * lily/new-figured-bass-engraver.cc (struct
8433 New_figured_bass_engraver): add new_music_found_ member.
8435 * lily/lilypond-version.cc (Lilypond_version): deal with
8436 incorrectly formatted version strings.
8438 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8439 New_figured_bass_engraver by default.
8441 * lily/ttf.cc (print_trailer): only define glyph names when
8442 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8444 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8446 * lily/horizontal-bracket.cc (make_bracket): new function.
8448 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8449 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8450 BassFigureLine, BassFigureAlignment
8452 * lily/new-figured-bass-engraver.cc (process_music): new file.
8454 * lily/figured-bass-continuation.cc: new file.
8456 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8459 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8461 * scripts/lilypond-book.py: Bug fix, put the quote around the
8462 actual score for LaTeX documents.
8464 * scm/define-grobs.scm (all-grob-descriptions): Change
8465 collapse-height of the SystemStartBracket grob to 5.0,
8466 so the bracket disappears for single stave score lines (similarly
8467 to SystemStartBraces).
8469 * Documentation/user/advanced-notation.itely (Polymetric
8470 notation): Clarify the use of compressMusic.
8472 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8473 that the grace spacer note in other staves need the same duration
8474 and document the stroke-style property.
8476 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8478 * Documentation/user/global.itely (Vertical spacing): document
8479 alignment-extra-space and fixed-alignment-extra-space.
8481 * Documentation/topdocs/NEWS.tely (Top): add entry.
8483 * input/regression/alignment-vertical-spacing.ly: new file.
8485 * python/convertrules.py (conv): add rule.
8487 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8489 * lily/align-interface.cc (stretch_after_break): new
8490 function. Read fixed-alignment-extra-space property.
8491 (align_elements_to_extents): read alignment-extra-space property.
8493 * lily/lily-guile.cc (robust_scm2dir): new function.
8495 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8496 (annotate-space-left): new function. Annotate space left on page.
8497 (annotate-y-interval): new function.
8498 (paper-system-annotate-last): new function. Annotate bottom-space.
8500 * mf/feta-beugel.mf (y):
8502 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8504 * VERSION (PACKAGE_NAME): release 2.7.11
8506 * scm/lily-library.scm (interval-translate): new function
8507 (interval-center): new function.
8509 * scm/page-layout.scm (paper-system-annotate): new function. Add
8510 arrows for dimensions.
8512 * scm/stencil.scm (dimension-arrows): new function.
8514 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8516 * input/regression/page-spacing.ly: add annotatespacing
8518 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8519 (LY_DEFINE): new function ly:paper-system-set-property!
8521 * Documentation/user/global.itely (Paper size): explain how to add
8524 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8525 correspond to GS's definition.
8527 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8529 (print): only connect to next bracket if the next one is alive.
8530 (print): set padding to 0.0 if the bound is a breakable
8531 column. This makes tupletFullLength brackets reach up to the staff
8532 line if it doesn't connect to the next line.
8534 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8536 * lily/bar-number-engraver.cc: correct docs.
8538 * scm/output-lib.scm (first-bar-number-invisible): rename from
8539 default-bar-number-visibility
8541 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8543 * scm/define-music-properties.scm (all-music-properties): remove
8546 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8548 * po/fi.po: refresh.
8550 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8552 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8554 (disappear): bugfix.
8556 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8558 * lily/include/paper-system.hh (class Paper_system): remove
8559 staff_extents_ member.
8561 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8563 * lily/include/paper-system.hh (class Paper_system): remove
8564 number_ variable. Remove is_title_. Remove break_before_penalty_
8566 * lily/paper-book.cc (systems): use 'number property iso. number_
8569 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8570 remove ly:paper-system-number.
8572 * scm/lily-library.scm (paper-system-title?): new function.
8574 * lily/book.cc (process): bugfix: flip ?: cases.
8576 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8579 * ly/music-functions-init.ly: add outputProperty music function.
8581 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8583 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8585 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8587 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8589 * lily/paper-system.cc (internal_get_property): new function.
8591 * Documentation/user/global.itely (Vertical spacing): refer to
8594 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8597 * input/regression/page-spacing.ly: new file.
8599 * input/regression/page-top-space.ly: new file.
8601 * lily/spacing-spanner.cc: cmath -> math.h
8603 * lily/paper-system.cc (read_left_bound): new function. Read
8604 line-break-system-details from left bound to determine extents.
8606 * Documentation/user/programming-interface.itely (Using LilyPond
8607 syntax inside Scheme): change applyxxx -> applyXxx.
8609 * ly/music-functions-init.ly: add outputProperty music function.
8611 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8613 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8615 * python/convertrules.py (conv): rule
8617 * ly/music-functions-init.ly: applyxxx -> applyXxx
8619 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8622 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8624 * flower/include/real.hh: include <math.h> iso. <cmath>
8626 * flower/include/offset.hh: include real.hh
8628 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8630 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8631 fix example, now that 'interfaces is no longer directly available.
8633 * lily/book.cc (process): don't crash if paper == NULL.
8637 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8639 * scm/define-music-types.scm (music-descriptions): set length and
8640 start-callback for QuoteMusic
8642 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8644 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8645 arguments. Fixes compilation error with gcc 3.3.
8647 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8649 * VERSION: release 2.7.10
8651 * stepmake/stepmake/python-module-rules.make
8652 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8654 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8657 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8659 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8660 -Werror. Otherwise GCC barfs over various optimizations.
8662 * scm/define-grob-properties.scm (all-internal-grob-properties):
8663 add note-head property
8665 * Documentation/user/instrument-notation.itely (Laissez vibrer
8668 * input/regression/laissez-vibrer-ties.ly: new file.
8670 * lily/laissez-vibrer-engraver.cc: new file.
8672 * lily/include/tie-column-format.hh: new file.
8674 * lily/tie-column-format.cc: new file.
8676 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8678 * lily/laissez-vibrer-tie.cc: new file.
8680 * lily/include/laissez-vibrer-tie.hh: new file.
8682 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8684 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8686 * scm/define-grobs.scm (all-grob-descriptions): add
8687 LaissezVibrerTie, LaissezVibrerTieColumn
8689 * lily/tie-column.cc (set_tie_config_directions): new function
8690 (final_shape_adjustment): new function.
8691 (shift_small_ties): new function.
8693 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8695 * lily/include/tie.hh (struct Tie_details): add x_gap_
8696 (struct Tie_configuration): add head_position_
8698 * lily/tie-column.cc (set_chord_outline): new function.
8700 * mf/cmr.enc.in: remove file.
8702 2005-09-11 Graham Percival <gpermus@gmail.com>
8704 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8706 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8708 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8709 reduce aliasing effects.
8711 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8714 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8716 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8718 * flower/include/real.hh: std::fabs too.
8720 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8722 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8724 * lily, flower: Include C++ iso C headers. Import namespace std
8727 * lily/side-position-interface.cc:
8729 * lily/note-head.cc:
8730 * lily/include/includable-lexer.hh:
8731 * flower/include/string-data.icc: Remove using std::*.
8733 * lily, flower: Include C++ iso C headers. Import namespace std
8736 * lily/side-position-interface.cc:
8738 * lily/note-head.cc:
8739 * lily/include/includable-lexer.hh:
8740 * flower/include/string-data.icc: Remove using std::*.
8742 * Documentation/user/instrument-notation.itely (Entering lyrics):
8743 Multiple latin-1->utf-8 conversion fix.
8745 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8747 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8749 * lily/tie.cc (get_configuration): also avoid dots for non-space
8752 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8754 * Documentation/user/instrument-notation.itely: Bugfix.
8756 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8758 * tex/GNUmakefile: don't install texinfo.tex
8760 * tex/ : cleanup: remove unused files.
8762 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8764 * flower/include/real.hh: using std::{isnan,isinf}
8766 * VERSION (PATCH_LEVEL): release 2.7.9
8768 2005-09-05 Graham Percival <gpermus@gmail.com>
8770 * Documentation/user/ instrument-notation.itely,
8771 advanced-notation.itely: minor tweaks.
8773 * input/test/script-chart.ly: add item padding.
8775 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8777 * flower/offset.cc: use math.h iso. <cmath>
8779 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8782 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8783 (widen-left-stencil-edges): new function. Fix alignment problems
8784 with LaTeX includegraphics.
8786 * lily/text-interface.cc (interpret_markup): use abort().
8788 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8790 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8792 * lily/tie.cc (get_configuration): update bezier shape as we
8794 (get_configuration): don't move large ties if we're outside of the
8797 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8799 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8801 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8803 * .cvsignore: Add auto-generated configure files and then some.
8805 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8807 * scm/define-grobs.scm (DynamicLineSpanner): Add
8808 X-extent-callback. Fixes hairpin-slur collision.
8810 2005-08-31 Graham Percival <gpermus@gmail.com>
8812 * Documentation/user/advanced-notation.itely,
8813 basic-notation.itely: minor changes.
8815 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8817 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8818 \linebreak between each .eps file if \betweenLilyPondSystem is
8821 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8822 music): Document the \linebreak
8824 * Documentation/user/lilypond-book.itely,
8825 input/tutorial/lbook-latex-test.tex,
8826 Documentation/user/examples.itely: Remove \usepackage{graphics}
8828 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8830 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8832 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8835 * scripts/lilypond-book.py (PREAMBLE_LY): define
8836 inside-lilypond-book
8837 (modify_preamble): new function. Insert \RequirePackage{graphics}
8838 when no {graphics found in preamble.
8840 2005-08030 Graham Percival <gpermus@gmail.com>
8842 * Documentation/user/basic-notation.itely, global.itely,
8843 tutorial.itely: misc small changes.
8845 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8847 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8850 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8852 * lily/tie-column.cc (new_directions): put Tie down on center
8855 * lily/script-interface.cc (before_line_breaking): use
8856 Grob::programming_error
8858 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8860 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8863 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8865 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8867 2005-08-29 Werner Lemberg <wl@gnu.org>
8869 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8870 the `*.scale.pfa' files to avoid warnings.
8872 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8874 * lily/tempo-performer.cc (process_music): idem.
8876 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8878 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8880 * Documentation/user/advanced-notation.itely (Text markup): not a
8883 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8885 * lily/staff-performer.cc (initialize): add tempo/name to
8888 2005-08-26 Graham Percival <gpermus@gmail.com>
8890 * Documentation/user/advanced.itely: add text-only example.
8892 * Documentation/user/invoking.itely: add index entries for
8895 * Documentation/user/ tutorial.itely, basic-notation.itely:
8896 small fixes suggested by Steve D. Thanks!
8898 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8900 * input/regression/markup-bidi-pango.ly: new file.
8902 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8903 standard. Remove #ifdef. Remove memleak.
8904 (text_stencil): use text_dir to decide how to composite items.
8905 (text_stencil): determine uniform text direction for the entire
8908 * scripts/lilypond-book.py (output_name): remove
8909 latex_filter_cmd. Non-portable to non-Unix systems.
8910 (get_latex_textwidth): use File.write and os.unlink() instead.
8912 * THANKS: add Vicente & Trevor.
8914 * lily/grob.cc (discretionary_processing): look up origin for
8915 programming_error too.
8917 * input/regression/tie-broken.ly: new file.
8919 * lily/tie-column.cc (set_chord_outlines): set outline for line
8922 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8924 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8925 unscaled transform, just translate stencils.
8927 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8930 * scm/define-markup-commands.scm (wordwrap-string): use
8932 (wordwrap-stencils): idem.
8935 (wordwrap-stencils): translate last line to right for
8936 text-direction = LEFT.
8938 * scm/define-grob-properties.scm (all-user-grob-properties): add
8941 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8943 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8944 when copying a Lily_parser object.
8946 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8948 * scm/define-markup-commands.scm (null): add null markup.
8950 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8952 * lily/item.cc: Add documentation of center-invisible
8954 2005-08-24 Graham Percival <gpermus@gmail.com>
8956 * Documentation/user/advanced-notation.itely: add info about
8959 * Documentation/user/programming-interface.itely: fix example
8960 involving raised text.
8962 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8964 * lily/beam.cc (print): fix X start/end points of isolated
8967 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8969 * lily/multi-measure-rest.cc (set_text_rods): new function.
8971 * lily/vertical-align-engraver.cc (process_music): call
8972 Align_interface::set_axis(). This forces #'elements to be ordered,
8973 preventing random vertical reordering of staves.
8975 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8976 add avoid-slur property.
8978 * Documentation/user/basic-notation.itely (Measure repeats): add
8979 countPercentRepeats example.
8981 * Documentation/user/advanced-notation.itely (Other text markup
8982 issues): remove remark about normal-font. We have \normal-text
8984 * input/regression/tie-chord.ly: add note about remaining bugs.
8986 * lily/tie.cc (print): try Tie_column::set_directions () if
8987 control-points not yet defined.
8989 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8991 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8992 extent. This fixes braces falling out of the EPS bbox.
8994 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8997 2005-08-23 Graham Percival <gpermus@gmail.com>
8999 * {various} : change #up->#UP and #down->#DOWN.
9001 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9003 * Documentation/user/advanced-notation.itely: clarify
9004 what objects handles text on a multimeasure rest.
9006 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9008 * VERSION (PATCH_LEVEL): release 2.7.7
9010 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9012 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9014 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9016 * input/regression/*.ly: formatting clean-up. Default layout
9017 before music expression.
9019 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9020 romanze28-2 example.
9022 * scm/ps-to-png.scm: remove dir-re function.
9023 (make-ps-images): generate page names, instead of globbing them.
9024 This brings down LilyPond memory usage for make web by a factor
9027 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9028 don't use glob. With 3000 files, globbing
9029 Documentation/user/out-www/ can take too much time.
9031 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9033 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9035 * input/regression/tie-manual.ly: new file
9037 * input/regression/tie-chord.ly: update.
9039 * flower/include/interval.hh (struct Interval_t):
9041 * lily/tie.cc (distance): new function
9042 (height): new function.
9043 (init): new function
9044 (Tie_details): new struct.
9046 * lily/skyline.cc (skyline_height): new function.
9048 * lily/tie-column.cc (set_chord_outlines): new function.
9049 (new_directions): read tie-configuration
9051 * lily/skyline.cc: fix ASCII art.
9053 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9055 * python/convertrules.py (string_or_scheme): Fix spelling error
9057 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9059 * lily/tie-column.cc (set_directions): set directions only once.
9060 (add_configuration): new function.
9062 * lily/tie.cc (set_control_points): new function
9064 * lily/tie-column.cc (new_directions): new function.
9066 * ly/music-functions-init.ly: set 'pitch property
9067 iso. trill-pitch. This makes \relative work with \pitchedTrill
9069 * lily/tie.cc (get_configuration): new function. Don't generate
9070 control points, rather, generate configuration.
9071 remove head-pair property.
9073 * lily/include/tie.hh (struct Tie_configuration): new struct.
9075 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9077 * Documentation/topdocs/NEWS.tely: clarify.
9079 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9081 * lily/tie.cc: remove minimum-length
9083 * scm/define-grob-properties.scm (all-user-grob-properties):
9084 remove staffline-clearance, y-offset
9086 * input/regression/tie-dots.ly (Module): remove.
9088 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9089 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9091 * input/regression/tie-single.ly: new file.
9093 2005-08-21 Graham Percival <gpermus@gmail.com>
9095 * ly/bagpipe.ly: fix compile problem.
9097 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9099 * lily/midi-item.cc (name): new method.
9101 * lily/staff-performer.cc (acknowledge_audio_element): use
9102 signature of baseclass.
9104 * lily/engraver-group.cc (do_announces): move recursion call out
9107 * lily/drum-note-performer.cc (class Drum_note_performer): use
9108 process_music everywhere.
9110 * ly/performer-init.ly: add default children everywhere.
9112 * lily/paper-book.cc (output): call paper-book-write-midis
9113 directly: always write MIDI, even if no \layout {} block.
9115 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9117 * VERSION (PACKAGE_NAME): release 2.7.6
9119 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9120 about not being able to handle repeat.
9122 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9124 * Documentation/user/examples.itely (Piano templates):
9125 * lily/include/performer-group.hh: Remove last traces of
9126 Performer_group_performer. Fixes make web.
9128 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9130 * Documentation/user/examples.itely (Piano templates): change
9131 Engraver_group_engraver -> Engraver_group
9133 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9134 scm_stand_in_procs is not weak_any.
9136 * lily/volta-bracket.cc (print): don't use strcmp().
9138 * lily/volta-engraver.cc (process_music): use
9139 Text_interface::is_markup() for setting the 'text property of the
9142 * input/mutopia/claop.py (accents): update syntax to 2.6
9144 * scm/define-context-properties.scm
9145 (all-user-translation-properties): add countPercentRepeats.
9147 * Documentation/user/basic-notation.itely (Measure repeats): add
9148 isolated percent example.
9150 2005-08-18 Graham Percival <gpermus@gmail.com>
9152 * input/ {various}: change direction #1, #-1 to
9153 #up/#down or \fooUp, \fooDown.
9155 * Documentation/user/music-glossary.tely: #-1 to #down.
9157 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9158 to #up, #-1 to #down.
9160 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9162 * lily/include/engraver-group.hh: rename.
9164 * lily/include/performer-group.hh: rename.
9166 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9168 * input/test/script-abbreviations.ly: Removed some old LaTeX
9171 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9173 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9174 Remove functions. Remove if 1: constructs, reindent.
9176 * scripts/convert-ly.py (add_version): Add functions from
9179 * scm/script.scm (default-script-alist):
9180 s/priority/script-priority. Fixes script stacking. Backportme.
9181 (Fermata): Very low priority.
9183 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9185 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9187 * input/regression/slur-script.ly: remove padding tweaks. Add
9190 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9191 time sigs and related stuff.
9193 * scm/define-grob-properties.scm (all-user-grob-properties): add