1 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3 git commit 64179afe25bf5723fe9bb5a6631799c050d12de2
5 * buildscripts/git-update-changelog.py:
8 git commit 614460c52e72c96824da0a583297123e510f6fff
13 git commit 6ca40e8913957dd9fa510855ae1c4efacde09603
16 * buildscripts/git-update-changelog.py:
17 script to update ChangeLog with Git messages.
19 git commit ef70710d3cf52502900408aa1f55a2354ed4e8ab
21 * lily/beam-engraver.cc:
22 * input/regression/rest-pitched-beam.ly:
23 don't set callback if staff-position set. Fixes #126.
25 git commit 6dcaa230251aa4f95e4153bd4de021c65207b798
27 * lily/bar-number-engraver.cc:
29 * lily/fingering-engraver.cc:
30 * lily/grob-property.cc:
32 * lily/include/grob.hh:
33 * lily/include/lily-guile-macros.hh:
34 * lily/mark-engraver.cc:
35 * lily/melody-engraver.cc:
36 * lily/script-column.cc:
37 * lily/tie-formatting-problem.cc:
39 internal_get_property_data() using ly_symbol2scm()
41 git commit 914e47b38f98b87c2622a5bbd8237ca97f97da34
43 * stepmake/stepmake/generic-targets.make:
44 create .gitignore in outdir.
46 git commit 122da86232bb745d50cddbd893e3cc48c3af6216
51 * stepmake/bin/add-html-footer.py (compose): remove setgcos
53 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
55 * GNUmakefile.in (install-help2man): install-help2man target.
57 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
59 * SConstruct (configure): Do not check for /bin/sh.
61 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
63 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
66 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
68 * input/regression/fret-boards.ly: new file.
70 * po/de.po: new po courtesy translation team.
72 * scripts/lilypond-book.py (get_option_parser): add newline to doc
75 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
77 * ly/gregorian-init.ly (neumeDemoLayout): update
78 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
80 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
81 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
83 2006-10-27 Erlend Aasland <erlenda@gmail.com>
85 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
86 Yet another build fix.
88 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
90 * SConstruct (lilypondprefix): use sorted() for list_sort()
93 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
95 * flower/SConscript: Unit test rules.
97 * flower/test-std.cc: Compile fix.
99 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
101 * python/midi.c (pymidi_parse_track): warning fixes.
103 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
104 include dot-column.hh
106 2006-10-26 Graham Percival <gpermus@gmail.com>
108 * Documentation/user/ {basic-, global}: minor changes from mailist.
110 2006-10-26 Erlend Aasland <erlenda@gmail.com>
112 * scm/define-grobs.scm: trivial beautification
114 * lily/tie-performer.cc: no need to #include "pqueue.hh"
116 * lily/source-file.cc: put multibyte var inside #if clause
118 * scm/define-grob-interfaces.scm:
119 * scm/define-grob-properties.scm:
120 Build fix (string-fret-finger-combinations)
122 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
125 * Documentation/user/lilypond-book.itely: Build fix.
127 2006-10-26 Joe Neeman <joeneeman@gmail.com>
129 * lily/system.cc (get_paper_system):
130 * lily/paper-book.cc (systems):
131 move most of the backwards compatibility stuff into
134 * Documentation/topdocs/NEWS.tely: add 2 entries for the
137 * Documentation/user/page.itely: remove time-scaled-music
138 bug for the Page_turn_engraver
140 * lily/paper-book.cc (set_system_penalty): backwards
141 compatibility (breakbefore) for the old page breaker
143 2006-10-25 Graham Percival <gpermus@gmail.com>
145 * Diocumentation/user/instrument-notation.itely: added more
146 info about stanzas; thanks Geoff!
148 * Documentation/user/ {basic, advanced}: small fixes from
151 * THANKS: add some bug reporters.
153 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
155 * scm/define-context-properties.scm (all-user-translation-properties):
156 noteToFretFunction: Add.
158 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
159 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
161 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
163 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
166 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
167 Remove bashism in delete.
169 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
171 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
173 * scm/translation-functions.scm (determine-frets-mf): flatten let*
175 * scm/define-context-properties.scm
176 (all-user-translation-properties): add maximumFretStretch property.
178 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
180 * lily/source-file.cc (get_counts): use multibyte variable.
182 * scm/translation-functions.scm (determine-frets-mf): new
183 function: compute fret numbers.
185 * scm/output-lib.scm (string-frets->description) new function.
186 (fret-board::calc-stencil): new function
188 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
190 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
192 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
194 * lily/tab-note-heads-engraver.cc: cleanups.
196 * lily/fretboard-engraver.cc: new file
198 * ly/engraver-init.ly: add FretBoards context
200 2006-10-24 Joe Neeman <joeneeman@gmail.com>
202 * lily/grob.cc (pure_relative_y_coordinate)
203 (pure_height): use the new call_pure_function stuff
205 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
208 * lily/side-position-interface.cc (pure_y_aligned_side): add an
211 * lily/simple-closure.cc (ly_eval_simple_closure): make
212 simple-closure evaluatable from scheme
213 (evaluate_with_simple_closure): make simple-closures pure-
216 * lily/slur.cc (pure_outside_slur_callback): new function
218 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
219 fits in with previous changes that made the page forces much
222 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
223 and pure-Y-extent into this new function.
224 (pure-conversions-alist): add outside-slur-callback
226 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
228 * Documentation/user/advanced-notation.itely (Instrument names):
229 Remove obsolete bug workaround for instrument names on piano
232 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
234 * Documentation/user/lilypond-book.itely (Integrating DocBook and
235 music): patch by Bertalan Fodor for docbook.
237 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
238 of $(LILYPOND). Prevents lilypond run for .txt files.
240 * INSTALL.txt: gitness.
242 * .cvsignore: update to force gitness.
244 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
246 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
247 detect suicide in nested tuplets.
249 2006-10-23 Werner Lemberg <wl@gnu.org>
251 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
252 typo in argument to FT_Get_X11_Font_Format.
254 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
256 * stepmake/stepmake/po-vars.make: more gitness.
258 * flower/polynomial.cc (check_sol): no empty if bodies.
260 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
262 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
264 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
266 * Documentation/user/examples.itely (Transcription of mensural
267 music): Added more comments in .ly source. Suggest to remove
268 Forbid_line_break_engraver to allow line breaking at all bars.
270 * Documentation/user/instrument-notation.itely (Ancient
271 articulations): Updated @refbugs regarding episem.
273 * Documentation/user/instrument-notation.itely (Gregorian square
274 neumes ligatures): Added \augmentum dots. Updated @refbugs
275 regarding \augmentum.
277 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
279 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
282 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
285 * ly/gregorian-init.ly: Added \augmentum macro.
287 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
289 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
291 * lily/pango-font.cc (pango_item_string_stencil): use
292 FT_Get_X11_Font_Format()
294 2006-10-22 John Mandereau <john.mandereau@free.fr>
296 * po/fr.po: update translation.
298 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
300 * VERSION (PATCH_LEVEL): bump version
302 * input/regression/horizontal-bracket-break.ly: new file.
304 * scm/define-grobs.scm (all-grob-descriptions): calc
307 * lily/horizontal-bracket.cc (make_bracket): support
308 connect-to-neighbor. Fix #118
310 * VERSION: release 2.9.26-2
312 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
314 * VERSION (PACKAGE_NAME): release 2.9.26
316 * buildscripts/output-distance.py (test_basic_compare): add
318 (FileLink.multi_img_cell): new function, glob multi-page png
321 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
323 * po/lilypond.pot: update.
325 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
327 * Documentation/user/global.itely (File structure): remove
330 * lily/parser.yy (FIXME): remove ADDQUOTE
332 * Documentation/user/global.itely (Extracting fragments of
333 notation): new node, about clip systems.
335 * Documentation/user/lilypond-book.itely (Many quotes of a large
336 score): ref to clip systems.
338 * Documentation/user/instrument-notation.itely (Entering lyrics):
339 add note about lyric ties and required font.
341 * lily/open-type-font.cc (glyph_list): format errors.
343 * Documentation/user/programming-interface.itely (Scheme
344 procedures as properties): more doco on simple-closure and scheme
346 (Input variables and Scheme): use lilypond[verbatim], document
349 * Documentation/user/page.itely (Displaying spacing): use \book
350 explicitly, so arrows show .
351 (Line breaking): add note about Forbid_line_break_engraver
353 * Documentation/user/tweaks.itely (Common tweaks): also set length
354 to prevent tie squeezing.
355 (Default files): use @var{}
357 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
358 (Generating LilyPond files): add FOMUS.
360 2006-10-20 Joe Neeman <joeneeman@gmail.com>
362 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
363 Y-offset for TextScript and Script
365 * lily/text-engraver.cc (make_item):
366 * lily/script-engraver.cc (make_script_from_event):
367 remove call to Side_position_interface::set_axis since all scripts
368 now have this set by default
371 * lily/prob.cc: use variables
373 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
375 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
376 at typography, rather analyse stream event duration.
378 * Documentation/user/page.itely (Page formatting): set a6 paper
379 for system separator example.
381 * lily/arpeggio.cc (Module): idem.
383 * lily/accidental-placement.cc: add script-priority property.
385 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
387 * lily/ttf.cc (print_trailer): if all else fails: use
388 glyphIndexXXXX as glyph name. Fixes #117.
390 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
391 entry if cmap contains glyph.
392 (get_index_to_charcode_map): remove from Pango_font class, use
393 global filename -> font mapping.
394 (get_glyph_index_name): new function.
395 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
398 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
400 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
403 * scm/define-grob-properties.scm (all-user-grob-properties):
404 remove outdated doc. Fixes #116
406 * lily/completion-note-heads-engraver.cc (process_music): always
407 clone input events; otherwise we may overwrite input 'duration
408 property. Fixes #115.
410 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
413 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
416 * VERSION (PATCH_LEVEL): bump version.
418 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
420 * lily/engraver.cc (internal_make_grob): use variables.
422 * flower/string-convert.cc (dec2double): clean-up warnings.
424 * configure.in (CXXFLAGS): add -Werror.
426 * VERSION (PACKAGE_NAME): release 2.9.25
428 2006-10-18 Joe Neeman <joeneeman@gmail.com>
430 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
431 line even if we precede a forced break.
433 * lily/optimal-page-breaking.cc (try_page_spacing): square line
434 forces too. Make page-spacing weight default to 10 because the
435 changes to vertical springs decreased the page force/line force
436 proportions. Also, take the average of line force and page force
437 instead of just the sum.
439 * lily/constrained-breaking.cc (initialize): make the stiffness
440 of the vertical springs depend on the height of the system. This
441 prevents pages with only a few large systems from getting huge
444 * Documentation/user/page.itely (Page formatting): document the
445 change in default page-spacing-weight
447 * lily/include/constrained-breaking.hh: initialise bottom_padding_
449 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
451 * input/typography-demo.ly (melody): remove superfluous slur.
453 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
454 add piano-pedal-script-interface
456 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
458 * scripts/lilypond-book.py: DocBook support.
460 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
462 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
464 (stop_translation_timestep): set bound to currentMusicalColumn if
465 not set yet. Fixes #102
467 * lily/piano-pedal-bracket.cc: formatting.
469 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
471 * lily/piano-pedal-align-engraver.cc: new class
472 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
475 2006-10-18 Heikki Junes <hjunes@gmail.com>
477 * po/fi.po: Update Finnish translation (before the next release).
479 2006-10-17 Joe Neeman <joeneeman@gmail.com>
481 * lily/system.cc (get_paper_system): reinstate the backwards-
482 compatible page breaking for the old page breaker.
484 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
486 * lily/recording-group-engraver.cc: removed
488 * lily/context.cc, lily/translator-group.cc: Don't touch
489 Context::implementation_ if it's null
491 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
493 * scm/paper.scm: only use left-margin if defined.
495 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
497 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
499 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
500 strokeFingerOrientations
502 * lily/script-column.cc (row_before_line_breaking): also handle
503 accidentals and arpeggios in horizontal script stacking.
505 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
508 * input/regression/script-stack-horizontal.ly: trim.
510 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
512 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
515 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
516 'text if string argument.
518 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
520 * scm/define-context-properties.scm
521 (all-user-translation-properties): change to strokeFingerOrientations
523 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
525 * lily/parser.yy: remove debug output
527 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
529 * ly/paper-defaults.ly: set left/right margin.
531 * scm/paper.scm (set-paper-dimensions): use left-margin and
532 right-margin for computing linewidth.
534 * Documentation/topdocs/NEWS.tely (Top): idem.
536 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
539 * scm/define-markup-commands.scm (tied-lyric): increase negative
540 space: space syllables tighter.
542 * VERSION (PATCH_LEVEL): bump version.
544 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
547 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
549 * COPYING: further clarification
551 * VERSION: release 2.9.24
553 * input/regression/script-stack-horizontal.ly: add version.
555 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
557 * input/regression/lyric-tie.ly (texidoc): use different words.
559 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
561 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
563 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
564 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
566 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
568 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
570 * Doxyfile: remove file.
572 * scm/define-grob-interfaces.scm (string-finger-interface): add
573 string-finger-interface
575 * lily/general-scheme.cc (LY_DEFINE): move
576 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
578 * Documentation/topdocs/NEWS.tely (Top): add note for
579 string-finger feature.
581 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
584 * scm/output-lib.scm (string-finger::calc-text): read 'digit
587 * input/regression/script-stack-horizontal.ly: new file.
589 * ly/engraver-init.ly: add Script_row_engraver.
591 * lily/script-column.cc (order_grobs): refactor: separate axis
593 (row_before_line_breaking): new function.
595 * lily/script-row-engraver.cc (Script_row_engraver): new file.
597 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
599 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
601 * Documentation/user/instrument-notation.itely: Cleanup: Remove
602 annoying skip notes from mensural ligature example. Update
603 @refbugs for ligatures and mensural ligatures.
605 * lily/coherent-ligature-engraver.cc,
606 lily/include/coherent-ligature-engraver.hh,
607 lily/mensural-ligature-engraver.cc,
608 lily/vaticana-ligature-engraver.cc: Revise code for item
609 reparentizing. There should now be less programming_error
612 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
614 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
615 Maintenance bugfix: Don't create empty Stencil (), but empty box
616 instead. This fix should eliminate some programming_error
619 * ly/engraver-init.ly (MensuralStaff): Set default accidental
622 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
623 \layout block _before_ score.
625 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
627 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
629 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
631 2006-10-13 Erlend Aasland <erlenda@gmail.com>
633 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
635 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
637 * VERSION (PATCH_LEVEL): bump version.
639 * COPYING: clarify exception note.
641 * lily/main.cc: remove remark about "COPYING".
643 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
644 system-count starts at 0 for each clip-region. Change name to
645 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
646 layout block, per score.
648 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
650 * lily/input-smob.cc: add equal_p for Input
652 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
655 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
657 * lily/prob.cc: Add equal_p predicate for Prob
659 * lily/translator.cc: small cleanup
661 * scm/document-music.cc: use data from translator listener
662 registration to generate documentation for event classes
664 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
666 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
668 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
670 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
672 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
674 * Documentation/topdocs/INSTALL.texi: Thinko.
676 * .cvsignore: Update.
678 * lexer-gcc-3.1.sh: Remove.
680 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
681 Update anonymous cvs access. Remove comment about gcc 3.0.4.
683 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
685 * VERSION: release 2.9.23
687 * lily/paper-column-engraver.cc (stop_translation_timestep): also
690 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
692 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
694 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
696 * input/regression/clip-systems.ly (Notes): new file.
698 * scm/lily.scm (define-scheme-options): add clip-systems option.
700 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
702 (dump-stencil-as-EPS): move bbox calculation from previous
704 (output-framework): use -dclip-systems
706 * scm/lily-library.scm (filtered-map): new function
708 * scm/framework-ps.scm (clip-system-EPS): new function.
709 (clip-system-EPSes): new function.
711 * lily/paper-column.cc: add rhythmic-location to interface
713 * scm/define-grob-properties.scm (all-user-grob-properties): add
714 rhythmic-location property.
716 * scm/clip-region.scm: new file: rhythmic-location data type and
717 system-clipped-x-extent function.
719 * ly/init.ly: use (scm clip-region)
721 * lily/paper-column-engraver.cc (stop_translation_timestep): set
722 rhythmic-location for paper column grobs.
724 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
726 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
728 * ly/engraver-init.ly: Remove obsolete comment on
731 * Documentation/user/instrument-notation.itely: Tune Ancient
732 Articulations figure, such that the episem actually shows.
734 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
735 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
737 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
740 2006-10-12 Graham Percival <gpermus@gmail.com>
742 * Documentation/user/ {some}: minor edits that were lost somehow.
744 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
746 * VERSION (PACKAGE_NAME): bump version.
748 * input/regression/lyric-tie.ly (texidoc): new file.
750 * Documentation/topdocs/NEWS.tely (Top): add new feature.
752 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
754 * scm/define-markup-commands.scm (tied-lyric): new function: split
755 string along ~ and reattach with U+203F (tie character) and
758 * scm/output-lib.scm (lyric-text::calc-text): new function.
760 * lily/lyric-engraver.cc (process_music): don't set 'text.
762 * scm/output-lib.scm (string-finger::calc-text): new function
763 (lyric-text::print): new function.
765 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
766 generic for fingering & string number. Use for string-finger.
768 * scm/define-music-types.scm (music-descriptions): add
771 * lily/fingering-engraver.cc (listen_string_finger): new function
773 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
775 * scm/define-context-properties.scm
776 (all-user-translation-properties): add stringFingerOrientations
778 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
780 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
781 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
783 * lily/dots.cc: Added style property for dots.
785 * mf/parmesan-heads.mf: Fix typo in comment.
787 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
788 adding longa head to feta font and removing obsolete default
791 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
793 * scm/output-lib.scm (fingering::calc-text): use origin
794 event-property, not music-property.
796 * lily/lilypond.rc.in: spell my name correctly.
798 2006-10-10 Joe Neeman <joeneeman@gmail.com>
800 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
801 already have a non-empty extent. Fixes estimation for Hara-kiri
804 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
806 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
809 * lily/ligature-engraver.cc: Remove unused #include.
811 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
812 Bugfix: remove method check_for_prefix_loss(Item *) from global
813 namespace to avoid namespace pollution.
815 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
817 * VERSION: release 2.9.22
819 * ly/generate-documentation.ly: update option name.
821 * lily/dynamic-text-spanner.cc (print): revert fix.
823 * scm/define-grob-interfaces.scm
824 (trill-pitch-accidental-interface):
825 add trill-pitch-accidental-interface
827 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
828 dereference if it's really a duration.
830 * lily/figured-bass-engraver.cc (process_music): clear spanner if
831 useBassFigureExtenders is not set.
832 (listen_bass_figure): record as new event if
833 useBassFigureExtenders not set. Fixes #103.
835 * scm/stencil.scm (circle-stencil): don't center stencil argument,
836 instead: move circle. Fixes #107.
838 * scm/define-grobs.scm (all-grob-descriptions): set
839 allow-loose-spacing for PaperColumn and
840 NonMusicalPaperColumn. Kludge for #110.
842 * lily/spaceable-grob.cc: add allow-loose-spacing property.
844 * lily/spacing-determine-loose-columns.cc (is_loose_column):
845 allow-loose-spacing property.
847 * scm/define-markup-commands.scm (postscript): gsave & grestore
848 around embedded PS. Do setlinewidth too. Fixes #109.
850 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
852 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
853 code. This patch fixes ligature brackets that were not at all
856 2006-10-08 Graham Percival <gpermus@gmail.com>
858 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
860 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
862 * scm/define-context-properties.scm: clarified docs (bug 91).
864 * Documentation/user/basic-notation.itely: document volta brackets
865 not aligning (bug 63).
867 * Documentation/user/ global.itely invoking.itely: ignore or
868 add warnings about texstr.
870 2006-10-08 John Mandereau <john.mandereau@free.fr>
872 * po/fr.po: update translation.
874 * po/: update msgids.
876 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
878 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
880 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
882 * Documentation/user/page.itely (Two-pass vertical spacing): add
883 documentation for two-pass spacing technique.
885 2006-10-06 Graham Percival <gpermus@gmail.com>
887 * Documentation/user/convert-ly.txt: new file; new
888 storage place for this file (moved from bugs/ CVS).
890 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
892 * lily/note-head.cc: Fixed programming_error message.
894 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
896 * scm/define-grobs.scm (pure-conversion): move pure-callback
899 * scm/script.scm (default-script-alist): set avoid-slur for turn,
900 marcato, stopped, thumb.
902 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
904 * lily/completion-note-heads-engraver.cc (process_music): don't
905 skimp on memory usage.
907 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
910 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
911 parenthesis item. This fixes premature Y-extent triggering. Fixes
914 * VERSION (PATCH_LEVEL): bump version.
916 2006-10-04 Graham Percival <gpermus@gmail.com>
918 * Documentation/user/advanced-notation.itely: added
919 info about instrument names for piano or other contexts,
922 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
924 * mf/feta-bolletjes.mf (solfa_quarter_width): use
925 solfa_base_notewidth as unit for non-DO-notes too.
927 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
929 * VERSION: release 2.9.21
931 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
934 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
936 * python/lilylib.py (progress): Minor fix.
938 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
940 * lily/note-name-engraver.cc: doc engraver.
942 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
944 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
946 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
949 * lily/stem-engraver.cc (make_stem): don't set duration-log
951 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
952 write snippet-names binary.
954 * python/lilylib.py (system): use os.system for mingw32
956 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
959 * scm/backend-library.scm: update email address.
961 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
964 * scm/define-grobs.scm (all-grob-descriptions): use callback to
967 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
968 handle dot creation separately.
970 * lily/tab-note-heads-engraver.cc (process_music): idem.
972 * lily/drum-note-engraver.cc (process_music): idem.
974 * lily/note-heads-engraver.cc (process_music): idem.
976 * lily/rest-engraver.cc: don't set duration-log.
978 * scm/output-lib.scm (string-number::calc-text): new function.
979 (note-head::calc-duration-log): new function.
981 * lily/fingering-engraver.cc (make_script): remove 'text setting.
983 * scm/output-lib.scm (fingering::calc-text): new function.
985 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
987 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
988 and include-eps-font -> include-eps-fonts
990 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
992 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
994 * lily/timing-translator.cc: list properties.
995 (start_translation_timestep): update internalBarNumber too.
997 * scm/define-context-properties.scm
998 (all-user-translation-properties): add internalBarNumber.
1000 * input/regression/spacing-no-note.ly: new file.
1002 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1004 * lily/book.cc: #include cleanup.
1006 * lily/include/lily-guile-macros.hh: add assert to
1007 scm_or_str2symbol(SCM).
1009 * VERSION (PATCH_LEVEL): bump version.
1011 * lily/spacing-spanner.cc (musical_column_spacing): handle
1012 musical->nonmusical spacing case, where there is no spacing
1013 wish. Fixes issue #61.
1015 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1016 (pango_item_string_stencil): use logical rect horizontally (to
1017 preserve spaces), ink_rect vertically (for time signatures).
1019 * lily/font-metric.cc (word_stencil): new interface function
1021 * input/regression/utf-8-mixed-text.ly: new file.
1023 * lily/percent-repeat-engraver.cc (listen_percent): remove
1026 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1027 non-dynamic scripts. Fixes #30.
1029 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1031 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1033 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1034 SCM_UNDEFINED for non-existent data.
1036 * lily/side-position-interface.cc (general_side_position): allow
1037 optional current_offset argument for chaining, so combinations of side-position
1038 and outside slur callback don't add up. Fixes issue #92.
1040 * lily/pango-font.cc (pango_item_string_stencil): use
1041 logical_rect. This prevents spaces after words from disappearing,
1044 * VERSION: release 2.9.20
1046 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1048 * scm/define-grob-properties.scm (all-user-grob-properties):
1049 mention stencil as user settable.
1051 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1053 * Documentation/user/page.itely (Page formatting):
1054 document auto-first-page-number
1056 * lily/page-breaking.cc (find_chunks_and_breaks):
1057 * lily/paper-score.cc (calc_breaking): Follow changes to the
1058 Constrained_breaking interface
1060 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1061 here backwards, as an optimisation
1062 (initialize): new function; move most of the code in resize () here
1063 (combine_demerits): cache ragged_right_
1064 (Constrained_breaking): constructor now takes the Paper_score
1066 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1068 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1069 avoid parser lookahead for 0-ary functions.
1071 * lily/translator.cc: Extract event classes from
1072 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1074 2006-10-02 Heikki Junes <hjunes@gmail.com>
1076 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1079 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1081 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1082 function. Call the page breaking function selected in the
1083 `page-breaking' \paper variable, then the post processing function
1084 chosen using the `page-post-process' \paper variable.
1085 (line-height): new function. Return the height of a system.
1086 (line-minimum-position-on-page): new function. Return the position
1087 of a system on page (using the previous line position), only
1088 considering between system padding.
1089 (stretchable-line?): new function. Says whether a line can be
1090 stretched (ie. is not a title nor a single staff system).
1091 (page-maximum-space-left): new function. Computes space left on a
1092 page, when all systems are separated by their padding.
1094 * lily/page-breaking.cc (breaking::make_pages): Move page post
1095 processing function call to page breaking wrapper (common to all
1098 * lily/paper-book.cc (book::pages): call the page breaking
1099 wrapper, instead of the page breaker directly
1101 * ly/paper-defaults.ly: Add \paper variables for page breaking
1102 wrapper and page post processing function. Make
1103 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1104 `system-maximum-stretch-procedure' variable for holding a function
1105 computing the maximum stretch a system allows.
1107 * scm/layout-page-dump.scm (write-page-breaks): computes the
1108 stretch to apply to systems on a page to minimize left
1109 space. Dump this stretch length.
1111 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1112 the system-stretch property of the tweak data to stretch the
1114 (includePageLayoutFile): Void function which includes the
1115 generated page-layout file if it exists and if the page layout
1116 dumping is not asked.
1117 (scoreTweak): if the score tweak named by the argument exists,
1120 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1122 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1123 handle correctly the case where there are multiple \noPageBreaks
1126 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1128 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1130 * abc2ly.py fix so that entering " -- " will translate to a -- in
1131 the lilypond instead of a " - - "
1133 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1135 * lily/align-interface.cc: fix typo
1137 * lily/dynamic-text-spanner.cc (print): Add a special case for
1138 trill spanner right sides.
1140 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1142 * lily/align-interface.cc (get_extents_aligned_translates): add
1143 support for padding variable.
1145 * lily/break-align-interface.cc (self_align_callback): oops: use
1146 loop variable in guard.
1148 * input/regression/repeat-percent-grace.ly: new file.
1150 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1151 remember first currentCommandColumn of a grace run. Fixes issue 70.
1153 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1154 move class definition to CC file.
1156 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1158 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1159 measure-long repeats.
1161 * flower/include/international.hh: include stdarg.h
1163 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1165 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1166 put_systems_on_pages to return an empty result, we need to assign
1167 demerits properly in that case.
1168 (put_systems_on_pages): Make the number of pages depend on the
1169 evenness of page_number. Add auto-first-page-number.
1170 (calc_subproblem): ensure that the page-number is even for the
1171 left-hand page. Warn if the first page-turn doesn't fit onto the
1172 first (right-hand) page.
1174 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1175 (min_page_count): make this publicly accessible
1176 (min_page_count): fix a bug when there are forced page breaks that
1177 was introduced when I made this loop run backwards
1178 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1179 replace space_systems_on_min_pages with these two. The logic in
1180 space_systems_on_min_pages was getting too convoluted and is better
1181 contained in page-turn-page-breaking.
1183 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1185 (breakable_column): typo
1187 * lily/source-file.cc (get_line): fix off-by-one error
1188 and clean up some of the logic
1190 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1192 * lily/page-breaking.cc (make_pages): honour the first-page-number
1195 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1197 * VERSION (PACKAGE_NAME): bump version.
1199 2006-09-26 Pal Benko <benko.pal@gmail.com>
1201 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1202 (the latter is the same as petrucci-f which is kept for compatibility)
1204 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1206 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1208 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1210 * lily/global-context.cc (run_iterator_on_me): break out of loop
1211 if moment doesn't increase.
1213 * scm/define-grob-properties.scm (all-user-grob-properties): add
1216 * lily/accidental.cc (after_line_breaking): read forced property.
1218 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1221 * input/regression/accidental-forced-tie.ly: new file.
1223 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1225 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1227 * lily/figured-bass-engraver.cc: only listen to rest events if
1228 ignoreFiguredBassRest is not set.
1230 * scm/define-context-properties.scm
1231 (all-user-translation-properties): add ignoreFiguredBassRest property
1233 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1235 * lily/paper-book.cc (get_system_specs):
1236 (set_system_penalty): fix breakbefore.
1237 We used to set a penalty on the system after the break, now we
1238 set a permission on the system before the break
1240 * lily/grob-property.cc: add scm debugging hooks into
1241 property modification
1243 * lily/context-property.cc:
1245 rename make_foo_from_properties to internal_make_foo and
1246 move it from context-property.cc to a member function of
1249 * lily/include/lily-guile-macros.hh:
1250 overload ly_symbol2scm macro so that there is no more need
1253 * lily/volta-repeat-iterator.cc:
1254 * lily/tweak-engraver.cc:
1255 * lily/tuplet-bracket.cc:
1256 * lily/span-bar-engraver.cc:
1257 * lily/script-engraver.cc:
1258 * lily/prob-scheme.cc:
1259 * lily/pointer-group-interface.cc:
1261 * lily/grob-scheme.cc:
1262 * lily/grob-property.cc:
1264 * lily/context-property.cc:
1265 * lily/break-substitution.cc:
1266 * lily/break-align-engraver.cc:
1267 * lily/axis-group-interface.cc:
1268 * lily/align-interface.cc:
1269 remove calls to internal_FOO
1271 * lily/system-start-delimiter-engraver.cc:
1272 * lily/parenthesis-engraver.cc:
1273 * lily/accidental-engraver.cc:
1274 remove calls to make_foo_from_properties
1276 2006-09-23 Graham Percival <gpermus@gmail.com>
1278 * Documentation/user/programming-iterfaces.itely: fix
1279 def-music-function -> define-music... leftover.
1281 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1283 * lily/page-spacing.cc (min_page_count): by running the loop
1284 backwards, we can calculate ragged_last properly.
1286 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1288 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1289 printfirst-page-number -> print-first-page-number
1291 * python/convertrules.py: corresponding rule.
1293 * Documentation/user/page.itely (Page formatting): Document the
1294 default values of all page layout parameters.
1296 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1298 * lily/lexer.ll: remove limitation on music function arity. New
1299 mode extratoken, which inserts extra EXPECT_* tokens after
1300 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1302 * lily/parser.yy: Change grammar for music function accordingly.
1304 * lily/include/lily-parser.hh: New method get_state, new member
1305 hidden_state. Works around a problem when parser fetches
1306 MUSIC_FUNCTION token but not the following EXPECT_* token.
1308 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1311 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1312 references to Music; use ASSIGN_EVENT_ONCE everywhere
1314 * lily/grob-info.cc: junk *music_cause
1316 * lily/music.cc: copy eventified articulations to stream event
1318 * lily/part-combine-iterator.cc: Cleanup using enums
1320 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1323 * lily/include/engraver.hh: Junk music.hh include
1325 * lily/stream-event.cc: Changed constructors
1327 2006-09-21 Graham Percival <gpermus@gmail.com>
1329 * Documentation/user/tweaks.itely (Fitting music onto fewer
1330 pages): change settings to avoid warning messages.
1332 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1334 * Documentation/user/tweaks.itely (Fitting music onto fewer
1335 pages): Add between-system-space setting.
1337 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1339 * lily/accidental-placement.cc (calc_positioning_done): don't
1340 trigger Y-extent calculation too early. Use pure_height instead.
1342 * lily/scale.cc (LY_DEFINE): new file.
1344 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1346 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1347 that happen at the start of a score: having a zero-length
1348 chunk was messing up min_system_count calculations.
1350 * lily/source-file.cc (get_line): lower_bound, not
1351 binary_search. Fixes problem where point-and-click would
1352 always point to the first line.
1354 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1356 * lily/accidental-placement.cc (calc_positioning_done): also put
1357 stems into accidental support.
1359 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1362 * scm/script.scm (default-script-alist): avoid-slur and
1363 slur-padding for portato script.
1365 * lily/stem-tremolo.cc (translated_stencil): new function.
1366 (height): use new function. Fixes tremolos on whole notes.
1368 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1371 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1373 * scripts/abc2ly.py (try_parse_comment): idem.
1375 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1376 bar_string iso. string.find()
1380 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1383 2006-09-18 Graham Percival <gpermus@gmail.com>
1385 * Documentation/user/basic-notation.itely: add bug
1386 warning about ties and octavation/clef.
1388 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1390 * VERSION (PACKAGE_NAME): release 2.9.18
1392 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1394 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1395 figure out midi file names right here.
1397 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1399 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1401 * scm/backend-library.scm: option naming: gs-font-load*s*
1403 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1406 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1408 * scm/define-music-types.scm (music-descriptions): remove
1409 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1410 Music::to_event doesn't complain.
1412 * lily/accidental-placement.cc (ape_compare):
1413 * lily/semi-tie.cc (compare):
1414 * lily/note-column.cc (shift_compare): replace by XXX_less
1416 * lily/tie-formatting-problem.cc (set_chord_outline):
1417 * lily/tie-column.cc (calc_positioning_done):
1418 * lily/system.cc (post_processing)
1420 * lily/stem.cc (note_head_positions)
1421 (calc_positioning_done):
1422 * lily/spanner.cc (do_break_processing)
1423 (find_broken_piece):
1424 * lily/span-bar.cc (print):
1425 * lily/semi-tie-column.cc (calc_positioning_done):
1426 * lily/rest-collision.cc (calc_positioning_done):
1427 * lily/program-option.cc (get_help_string):
1428 * lily/note-collision.cc (get_clash_groups):
1429 * lily/new-fingering-engraver.cc (position_scripts):
1430 * lily/keyword.cc (Keyword_table):
1431 * lily/hara-kiri-group-spanner.cc (request_suicide):
1432 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1433 * lily/accidental-placement.cc (calc_positioning_done):
1435 * lily/beam.cc (get_beam_segments):
1436 * lily/grob-array.cc (remove_duplicates):
1439 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1440 ragged-last-bottom = ##f (test the new page breaker)
1442 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1444 * scm/define-context-properties.scm
1445 (all-internal-translation-properties): remove properties that
1446 were used to communicate page-turn stuff to the paper-column
1449 * lily/lily-guile.cc (robust_scm2string): new function
1451 * lily/paper-column-engraver.cc: Clean up page turn stuff
1453 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1454 instead of cluttering up paper-column-engraver.cc
1456 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1458 * scm/layout-page-dump.scm (scm): export utility function names,
1459 to allow user writing cutsom dumping functions.
1461 * scm/layout-page-layout.scm: export utility function names to
1462 enable custom page breaking function writing. Tabify.
1463 (line-next-space): use ?-suffix only for predicates
1464 (page-maximum-space-to-fill): new function. Return the space
1465 between first and bottom system of a page, to give to
1467 (space-systems): use a space-to-fill argument (for instance as
1468 computed by page-maximum-space-to-fill) instead of computing
1469 internaly this space with the page height. That way, the caller
1470 can adjust the space to use.
1471 (make-page-from-systems, walk-paths): compute space to fill before
1472 calling space-systems.
1474 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1476 * scm/script.scm (default-script-alist): set paddings for every
1477 type here, increase for portato mark.
1479 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1482 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1484 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1485 use spanner::set-spacing-rods
1487 * lily/note-column.cc: reformat.
1489 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1490 step positioning for note/rest combinations.
1492 * input/regression/rest-note-collision.ly: new file.
1494 * scm/define-grobs.scm (all-grob-descriptions): add
1497 * flower/include/std-vector.hh: switch off again.
1499 * VERSION (PATCH_LEVEL): bump to 2.9.18
1501 * flower/include/std-string.hh: idem.
1503 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1505 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1507 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1510 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1512 * Documentation/user/page.itely: update page breaking documentation
1514 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1516 * lily/note-collision.cc (calc_positioning_done): only access
1517 first head if available.
1519 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1521 * scm/framework-ps.scm (output-preview-framework): use new name.
1523 * lily/program-option.cc (internal_set_option): use new names.
1525 * Documentation/user/SConscript (lilypond_book_flags): update -d
1528 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1529 output into other programs): new variable names.
1531 * scm/lily.scm (define-scheme-options): uniformize var names.
1533 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1534 tuplets_ is non-empty before popping.
1536 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1538 * lily/spanner.cc (find_broken_piece):
1539 * lily/spacing-spanner.cc (get_columns):
1540 * lily/source-file.cc (get_line):
1541 * lily/simple-spacer.cc (get_column_description):
1542 * lily/keyword.cc (lookup):
1543 use the new binary search.
1545 * flower/include/std-vector.hh: replace binary_search with
1546 a more STL-like version
1548 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1550 * lily/tie-performer.cc: remove unused last_event_ property.
1551 (class Tie_performer): add now_tied_heads_ property for
1552 partially-tied heads.
1553 (acknowledge_audio_element): when adding an Audio_note, put the
1554 note in now_tied_heads_ if the audio note is partially tied.
1555 (stop_translation_timestep): always include entries in
1556 now_tied_heads_ in heads_to_tie_.
1558 * lily/drum-note-performer.cc (process_music): look for tie-events
1559 in the articulations; pass to Audio_note constructor.
1561 * lily/note-performer.cc (process_music): look for tie-events in
1562 the articulations; pass to Audio_note constructor.
1564 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1567 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1568 include initializer in constructor.
1570 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1572 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1573 unless they are breakable. This fixes discrepancies between the forces
1574 calculated here and the forces calculated in get_line_configuration.
1576 * lily/grob.cc (pure_relative_y_coordinate): fix some
1577 mis-estimation that was happening with piano staves.
1579 * lily/constrained-breaking.cc (resize): don't choke if we get a
1580 measure that won't fit on a line.
1581 (combine_demerits): don't consider uniformity when ragged
1583 * lily/page-spacing.cc (solve): why the f* were there two of these?
1584 (calc_subproblem): properly handle the case where a system is taller
1587 * lily/system.cc (get_paper_system): ensure that all the permissions
1588 and penalties are passed to the paper systems.
1590 * lily/page-breaking.cc (create_system_list): support system-count.
1592 * scm/define-grobs.scm (pure-print-callbacks): add
1593 ly:script-interface::print
1595 * lily/page-spacing.cc (min_page_count): fix calculation of min
1596 pages if we are ragged and there are non-zero springs.
1598 * scm/layout-page-layout.scm: if the pure-height estimates are under
1599 the real height, allow space-systems to ignore padding if it is
1600 needed in order to fit the systems on one page
1602 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1604 (solve): fix performance problem. Make sure we always get at least
1607 * lily/page-breaking.cc (make_pages): include write-page-breaks
1610 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1612 * scm/define-grobs.scm: add the new slur-callback
1613 fix pure-relevant to not exclude grobs whose extent is already
1616 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1619 * lily/slur.cc (pure_height): new callback to estimate the height
1622 2006-09-02 Graham Percival <gpermus@gmail.com>
1624 * Documentation/user/invoking.itely: small update on
1625 MacOS X notes; thanks Trevor!
1627 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1629 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1631 * lily/lexer.ll: accept EOF in all states.
1633 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1635 * lily/source-file.cc (Source_file): always 0-terminate character
1636 array, to prevent Flex from barfing.
1638 * lily/global-context.cc (get_output): robustness: don't crash if
1639 no Score context found.
1641 * lily/include/book.hh (class Book): idem.
1643 * lily/include/context-def.hh (struct Context_def): idem.
1645 * lily/include/score.hh (class Score): don't derive from Input.
1647 * lily/book.cc (Book): add a copy ctor.
1649 * buildscripts/output-distance.py (FileLink.calc_distance): count
1650 orphans in distance too.
1652 * python/midi.c (midi_parse_track): robustness: don't read past
1655 * ly/performer-init.ly: add Control_track_performer, move
1656 Tempo_performer and Time_signature_performer to Score.
1658 * lily/score-performer.cc (acknowledge_audio_elements): override
1659 from base class: add to audio-columns
1661 * lily/control-track-performer.cc (add_text): new file: generate
1664 * lily/performance.cc: move output_header_track to
1665 Control_track_performer ()
1667 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1669 * lily/include/midi-item.hh (class Midi_channel_item): insert
1670 class into hierarchy, for items that can have a channel setting. Dehungarify.
1672 * lily/include/performer.hh (class Performer): remove
1673 play_element(); move functionality into announce/acknowledge.
1675 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1677 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1678 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1680 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1682 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1685 * lily/all-font-metrics.cc: remove TFM support.
1687 * lily/include/tfm.hh: remove TFM support, TFM reader.
1689 * lily/include/binary-source-file.hh: remove Binary_source_file.
1691 2006-08-27 Graham Percival <gpermus@gmail.com>
1693 * Documentation/topdocs/NEWS.itely: add @c marker for
1694 stuff I've processed.
1696 * Documentation/user/ various: info from NEWS.
1698 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1700 * lily/paper-column-engraver.cc (finalize): Oops, this change
1701 should have gone in on 2006-08-23
1703 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1705 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1706 quotes to quote arguments. Fixes Windows problem.
1708 * python/lilylib.py (progress): idem
1710 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1712 * scripts/musicxml2ly.py: fix for importing
1713 minor key signatures from MusicXML. (Phillip Kirlin)
1715 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1717 * python/musicxml.py:
1718 (Attributes.get_key_signature): now correctly retrieves mode from
1721 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1723 * lily/parser.yy (output_def_body): take ownership of identifier
1726 * Documentation/user/advanced-notation.itely (Metronome marks):
1727 update use of \tempo in \midi.
1729 * VERSION: release 2.9.16
1731 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1733 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1736 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1738 * input/regression/tie-chord-partial.ly: clarify example.
1740 * scm/define-music-properties.scm (all-music-properties): remove
1743 * ly/music-functions-init.ly: remove \untied.
1745 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1746 stream events and music events.
1747 (stop_translation_timestep): search acknowledged heads for
1750 * input/regression/tie-chord-partial.ly: new file.
1752 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1753 for \char markup command.
1755 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1757 * scm/define-music-types.scm (music-descriptions): consistency:
1758 Use solo-{one,two}-event iso. solo-[12]-event.
1760 * lily/part-combine-engraver.cc (process_music):
1761 Use solo-{one,two}-event iso. solo-[12]-event.
1763 * ly/declarations-init.ly (partCombineListener): add Timing as
1766 * flower/std-string.cc (string_copy): use copy ()
1768 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1770 2006-08-24 Graham Percival <gpermus@gmail.com>
1772 * Documentation/user/changing-defaults.itely, global.itely,
1773 lilypond-book.itely, page.itely: minor changes from mailist.
1775 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1777 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1780 * scm/define-context-properties.scm
1781 (translator-property-description): robustness: detect type errors
1782 in property definitions.
1784 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1785 after getting it from SCM.
1787 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1790 * lily/include/performer.hh (class Performer): strip get_tempo()
1793 * lily/midi-def.cc: strip file.
1795 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1797 * lily/include/context-def.hh (struct Context_def): use
1798 VIRTUAL_COPY_CONSTRUCTOR().
1800 * lily/source-file.cc: smobification.
1802 * lily/include/source-file.hh (class Source_file): smobify
1803 Source_file. Trim redundant members.
1805 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1806 clones after creation. This plugs a huge memory leak.
1808 * python/convertrules.py (FatalConversionError.sub_tempo):
1809 complete rule for \midi{ \tempo }
1811 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1813 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1815 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1817 * input/regression/optimal-page-breaking-hstretch.ly: test for
1818 ragged-last-bottom also
1820 * lily/paper-column-engraver.cc (finalize): make the end of a score
1821 breakable by default. This is to balance out a change in behaviour
1822 of the page-turn-breaker which no longer makes the end of a score
1825 * lily/paper-book.cc (pages): set the systems_ once the pages are
1828 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1829 Page_breaking interface.
1831 * lily/page-breaking.cc (class Page_breaking): make the interface
1832 more consistent and provide abstractions for dealing with
1835 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1836 algorithm. Use the new interface to Page_breaking.
1838 * lily/page-spacing.cc: better support for ragged-bottom and
1841 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1843 * python/convertrules.py (conv): warning on \tempo{}
1845 * ly/performer-init.ly: set tempoWholesPerMinute.
1847 * ly/midi-init.ly: remove \midi
1849 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1852 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1853 tempoUnitDuration for determining what to print.
1855 * lily/lyric-extender.cc: typo.
1857 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1859 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1862 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1864 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1865 eps-pad-boxes is set.
1867 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1869 * THANKS: update sponsors.
1871 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1873 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1875 * input/regression/tie-chord-untied.ly: new file.
1877 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1879 * scm/define-music-properties.scm (all-music-properties): add
1882 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1884 (headertext_nopics): sanitize no-examples text.
1886 * scm/page.scm (make-page-stencil): don't rely on extents of
1887 page-stencil. This fixes spurious space around .EPS files produced
1888 with the EPS backend.
1890 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1892 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1894 * lily/hara-kiri-engraver.cc (process_music): remember
1895 keepAliveInterfaces after processing \set
1897 * lily/lyric-extender.cc (print): support left/right-padding for
1900 * scm/documentation-generate.scm (string-append): revert lilypond/
1903 2006-08-20 Graham Percival <gpermus@gmail.com>
1905 * Documentation/user/lilypond.tely: clarification to
1906 license presentation (not to actual license).
1908 * Documentation/user/basic-notation.itely,
1909 instrument-notation.itely: minor changes.
1911 * input/ {regression, test}/+.ly: clarification to
1912 text (you can click on examples). Thanks, Mats!
1914 * input/manual/bar-lines.ly: adds ||: repeats.
1916 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1918 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1920 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1922 * Documentation/user/lilypond.tely: strip lilypond/ from info
1923 links, rename to category LilyPond
1925 * lily/pango-font.cc (description_string): new function.
1927 * VERSION: release 2.9.15
1929 * lily/spacing-engraver.cc (stop_translation_timestep): use
1930 Dscho's fix for spacing spanner.
1932 * scm/define-music-types.scm (music-descriptions): use
1933 apply-output-event for ApplyOutputEvent
1935 * lily/output-property-engraver.cc (listen_apply_output): rename
1936 from listen_layout_instruction.
1938 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1941 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1943 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1944 commandline args with contains, split by \n.
1946 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1947 write snippet-names file, call with -dread-file-list. Fixes
1948 command limitations on 64-bit systems.
1950 * input/regression/stencil-color-rotation.ly: new file.
1952 * lily/include/translator.hh (struct Acknowledge_information):
1953 revert: don't use Protected_scm in global objects, as GUILE can't
1954 handle gc_unprotect from automated destructors on MacOS X.
1956 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1957 color, not the original stencil. Fixes combinations of
1958 color/transparency/rotation.
1960 * scripts/lilypond-book.py (main): add --formats=eps for
1963 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1964 crash if spacing_ is nonexistent.
1966 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1968 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1969 \catcode`\@=12 in the LaTeX output.
1971 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1973 * scm/define-music-types.scm (music-descriptions):
1974 use sustain-event iso. sustain-pedal-event.
1976 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1978 * scripts/convert-ly.py: honour the -n command-line switch
1980 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1982 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1983 break specification.
1985 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1987 * Documentation/user: convert-ly the user manual
1989 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1991 * stepmake/aclocal.m4: version check patch (thanks MWD)
1993 * ly/music-functions-init.ly: robustness. Don't crash if
1994 currentBarNumber is not a number.
1996 * VERSION (PATCH_LEVEL): bump.
1998 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2000 * stepmake/aclocal.m4: better version check; handle fooX.Y
2003 * ly/performer-init.ly: instrument name fixup.
2005 * input/manual/chord-names-jazz.ly (banterProperties):
2006 instrumentName update
2008 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2010 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2012 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2013 function. Use hash tables to check membership.
2015 * lily/general-scheme.cc (LY_DEFINE): new function.
2017 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2019 * lily/include/translator.hh (struct Acknowledge_information): add
2022 * ly/music-functions-init.ly: change name to BreathingEvent
2024 * input/regression/*.ly: apply it.
2026 * python/convertrules.py (conv): better instrumentName conversion
2029 * scm/define-music-types.scm (music-descriptions): add
2030 line-break-event to LineBreakEvent music
2032 * lily/music.cc (to_event): don't crash if music type not set.
2034 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2037 * lily/spacing-engraver.cc (stop_translation_timestep): set
2038 spacing for proportional notation too.
2040 * scm/translation-functions.scm (format-bass-figure): inspect
2043 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2045 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2047 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2049 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2051 * scm/layout-page-layout.scm (make-page-from-systems): new function
2052 (optimal-page-breaks): use the new page-breaking calling convention
2054 * scm/define-context-properties.scm (all-user-translation-properties):
2057 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2058 revokePageTurns functionality. If there is a special barline within
2059 the breakable region, break there instead of at the end of the region.
2061 * lily/paper-book.cc (pages): use the new page-breaking calling
2064 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2066 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2068 * scripts/lilypond-book.py: insert \sourcefileline command in
2069 output, so lilypond error messages refer to the spot in the
2070 original .lytex / .itely sourcefile.
2072 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2074 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2075 space to next column for distance to fixed col.
2077 * VERSION (PACKAGE_NAME): release 2.9.14
2079 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2082 * lily/accidental-engraver.cc (process_acknowledged): don't create
2083 accidental for trill span event. This fixes spurious accidentals
2086 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2088 * scm/define-grob-properties.scm (all-user-grob-properties):
2089 Clarify documentation of side-axis and direction. Thanks to Paul
2090 for the inspiration.
2092 * lily/bar-line.cc: Add documentation for "||:" also in the
2093 interface documentation.
2095 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2097 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2099 * lily/paper-column.cc (set_system): new function.
2101 * lily/spacing-engraver.cc (stop_translation_timestep): store
2102 SpacingSpanner refs in Paper_column.
2104 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2105 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2107 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2109 * lily/beam-engraver.cc (listen_beam): add method for
2110 Grace_beam_engraver too.
2112 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2114 * python/convertrules.py: Fix indentation bug that broke
2115 conversion of files older than 1.3.117.
2116 Fix escape error in the description for 2.9.6.
2118 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2120 * lily/*-engraver.cc: convert all try_music functions to listen_*
2123 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2124 enums to represent pedal types, and calculate more data statically.
2126 * scm/part-combiner.scm (recording-group-emulate): create a
2127 softcoded substitute for recording-group-engraver.cc.
2129 * lily/music.cc: make a common transpose function for events and
2132 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2133 ManualMelismaEvent, and obsoletes Melisma_translator.
2135 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2137 * input/test/instrument-name-align.ly: update version.
2139 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2141 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2142 Doc the --pdf flag to lilypond-book.
2144 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2146 * Documentation/topdocs/NEWS.tely (Top): add description.
2148 * input/regression/tuplet-full-length-note.ly: add file.
2150 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2151 always store axis group.
2153 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2155 * input/regression/instrument-switch.ly: new file.
2157 * lily/instrument-switch-engraver.cc (process_music): new file.
2159 * ly/engraver-init.ly: add Instrument_switch_engraver
2161 * ly/music-functions-init.ly: \instrumentSwitch
2163 * scm/define-context-properties.scm
2164 (all-user-translation-properties): add instrumentCueName
2166 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2168 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2170 * ly/music-functions-init.ly: music function \transposition.
2172 * lily/parser.yy (command_element): softcode \transposition.
2174 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2175 (process_music): oops.
2177 * lily/instrument-name-engraver.cc (start_spanner): new
2178 function. Create spanner when property changes.
2179 (stop_spanner): new function.
2181 * python/convertrules.py (conv): add rule.
2183 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2184 shortInstrumentName iso. instr.
2186 * scm/output-ps.scm (dashed-line): add phase argument to
2189 * lily/bar-line.cc (dashed_bar_line): new function.
2190 (compound_barline): support \bar "dashed".
2192 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2193 --output=DIR to DIR/BASE if it is a dir.
2195 * flower/file-name.cc (file_part): new function
2196 (dir_part): new function
2198 * lily/lily-parser-scheme.cc (LY_DEFINE):
2200 * DEDICATION: update
2202 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2204 * lily/instrument-name-engraver.cc: formatting.
2206 * python/convertrules.py (conv): bugfix for \epsfile.
2208 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2212 * lily/gourlay-breaking.cc: Oops, these should have been included
2215 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2217 * scripts/*.py (program_name): cleanup relocation snippets.
2219 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2221 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2223 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2224 page-breakable by default
2226 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2227 correctly calculated for a single-system page
2229 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2230 bigger than the second number
2232 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2233 acknowledge that we aren't satisfying constraints)
2235 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2238 * lily/grob.cc (pure_height): add minimum-Y-extent
2240 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2243 * lily/constrained-breaking.cc: convert code to use new Matrix class
2244 (get_best_solution): new function
2246 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2247 is a page with no systems
2249 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2251 * VERSION (PACKAGE_NAME): release 2.9.13
2253 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2256 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2258 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2260 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2263 * scm/define-grob-properties.scm (all-user-grob-properties):
2264 remove grace-space-factor.
2266 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2267 grace-spacing-interface
2268 (spacing-options-interface): add.
2270 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2272 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2274 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2275 GraceSpacing object.
2277 * lily/note-spacing.cc: fix prop list formatting
2279 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2280 beaming for grace notes too.
2282 * input/regression/spacing-grace.ly: update.
2284 * lily/grace-spacing-engraver.cc: new file.
2286 * lily/spacing-spanner.cc: add strict-grace-spacing.
2288 2006-07-20 Graham Percival <gpermus@gmail.com>
2290 * lily/parser.yy: compile fix.
2292 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2294 * scm/define-grobs.scm (all-grob-descriptions): typo.
2296 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2297 .eps extension from includegraphics.
2299 * scripts/lilypond-book.py (main): add support for --pdf.
2301 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2302 callback to compute common shortest duration.
2303 (set_springs): typo.
2305 * scm/define-grob-properties.scm (all-user-grob-properties): add
2306 strict-grace-spacing.
2308 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2309 support float_grace_columns_.
2311 * lily/spacing-options.cc (init_from_grob): new file.
2313 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2315 * input/regression/spacing-loose-grace.ly: new file.
2317 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2319 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2320 tupletFullLengthNote too. Choose right bound depending on value.
2322 * input/regression/tuplet-full-length-note.ly: new file.
2324 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2326 * lily/*-performer.cc: Converted try_music to listen_*
2328 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2329 as a stream-event internally. Introduce event_cause (), deprecate
2332 * scm/define-music-types.scm: Removed BusyPlayingEvent
2334 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2336 * Documentation/user/advanced-notation.itely (Font selection):
2337 Document how to get a list of available fonts using 'lilypond
2338 -dshow-available-fonts blabla'.
2340 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2342 * GNUmakefile.in: filter lily-XXX.pdf files.
2344 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2346 * scm/define-grob-properties.scm (all-internal-grob-properties):
2347 remove delta-pitch. Use delta-position everywhere.
2349 * scm/output-lib.scm (fall::print): use new order.
2351 * scm/output-ps.scm (path): reorder arguments.
2353 * scm/output-svg.scm (path): support for path primitive.
2355 * input/regression/bend-after.ly: new file.
2357 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2358 recipe for eps -> pdf conversion.
2360 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2362 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2365 2006-07-19 Graham Percival <gpermus@gmail.com>
2367 * input/manual/screech-boink.ly: moved to here.
2369 * input/screech-boink.ly: deleted.
2371 * scm/define-grob-properties.scm: clarify doc string.
2373 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2375 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2377 * scm/output-ps.scm (path): define path.
2379 * scm/define-stencil-commands.scm
2380 (ly:register-stencil-expression): add path.
2382 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2384 * ly/engraver-init.ly: add Fall_engraver
2386 * lily/parser.yy (music_function_event): allow musicfunction
2387 without music arg as music_function_event.
2389 * lily/grob-scheme.cc (LY_DEFINE):
2390 ly:grob-robust-relative-extent. New function.
2392 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2394 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2396 * scm/output-lib.scm (fall::print): new function
2398 * lily/fall-engraver.cc (stop_fall): new file.
2400 * ly/music-functions-init.ly: alphabetise.
2402 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2405 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2407 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2409 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2412 * lily/translator-group.cc (connect_to_context): non const error message.
2414 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2416 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2419 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2421 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2423 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2426 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2428 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2430 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2432 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2434 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2436 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2438 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2440 * scm/layout-page-layout.scm: Define module, tidy code, use more
2441 functions iso. a single big one.
2443 * scm/layout-page-dump.scm: move page dump functions used in two
2444 pass spacing to this file. Define module.
2446 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2449 * ly/paper-defaults.ly: use module layout-page-layout.
2451 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2453 * lily/music.cc: Revised MusicEvent event class. It now contains
2454 event data directly instead of encapsulating it in music. The
2455 previously used class is renamed to OldMusicEvent.
2457 * lily/stream-event.cc: Stream events are now probs.
2459 * lily/translator-group.cc, lily/translator.cc: Translators can
2460 now listen directly to stream events, by using macros
2461 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2463 * lily/arpeggio-engraver.cc: Converted to use new event system
2465 * THANKS: Corrected spelling mistake.
2467 2006-07-12 Graham Percival <gpermus@gmail.com>
2469 * Documentation/user/SConscript, make/lilypond-vars.make,
2470 input/GNUmakefile: doc build looks in input/manual instead
2473 * input/manual/ GNUmakefile, SConscript: build files for
2476 * input/test/ various: some files moved to input/manual/
2478 * Documentation/user/basic-notation.itely: small updates;
2479 thanks Kieren and Charles!
2481 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2483 * VERSION (PACKAGE_NAME): release 2.9.11
2485 * Documentation/topdocs/NEWS.tely (Top): update prop value
2487 * Documentation/user/basic-notation.itely (Tuplets): new property
2490 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2492 * python/convertrules.py (conv): tweaks.
2494 * VERSION (PATCH_LEVEL): bump version.
2496 * python/convertrules.py (conv): add rule for
2497 tupletNumberFormatFunction.
2499 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2500 tupletNumberFormatFunction.
2502 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2503 text through 'text callback.
2505 * lily/time-scaled-music-iterator.cc (construct_children): copy
2506 tweaks generated events.
2508 * scm/define-context-properties.scm
2509 (all-user-translation-properties): remove tupletNumberFormatFunction
2511 * lily/tuplet-engraver.cc (process_music): don't read
2512 tupletNumberFormatFunction
2514 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2517 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2519 * lily/global-context-scheme.cc: Separated ly:run-translator into
2522 * lily/score-engraver.cc, lily/score-performer.cc,
2523 scm/define-context-properties.scm: Make paper/midi output
2524 accessable as a context property.
2526 * lily/score-translator.cc, lily/score-context.cc: Removed.
2528 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2530 * scm/ps-to-png.scm (Module):
2531 * scm/framework-tex.scm (Module):
2532 * scm/framework-ps.scm (Module):
2533 * scm/backend-library.scm (Module):
2534 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2535 "dDEVICEHEIGHTPOINTS".
2537 2006-07-04 Graham Percival <gpermus@gmail.com>
2539 * Documentation/user/ various: general improvements to
2540 "working with lilypond files" section.
2542 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2544 * lily/sequential-iterator.cc: Change the default get_music_list
2545 to read elements-callback music property
2547 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2548 processing of multimeasure rests. Softcoded
2549 sequential-music-iterator.
2551 * lily/sequential-music-iterator.cc: Removed.
2553 2006-06-28 Graham Percival <gpermus@gmail.com>
2555 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2557 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2559 * lily/parser.yy: Wrap non-post-events in EventChords before
2560 assigning them to identifiers.
2562 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2564 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2565 gives correct vertical placement of \bar ":" in all staff
2566 sizes. Thanks Martial!
2568 2006-06-26 Graham Percival <gpermus@gmail.com>
2570 * Documentation/user/invoking.itely : minor update from mailist.
2572 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2574 * lily/ various: Introduce stream events of types Prepare,
2575 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2576 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2578 * lily/global-context*.cc: Time is now -inf before iteration
2581 * lily/include/context.hh: Removed unique_, init_
2583 * Documentation/topdocs/NEWS: Make the feathered beam example
2584 avoid triggering a bug.
2586 2006-06-24 Graham Percival <gpermus@gmail.com>
2588 * Documentation/user/ various: small additions from mailist.
2590 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2592 * ly/performer-init.ly: Add some missing links in the context
2593 hierarchy for MIDI output. There are probably some more missing!
2595 2006-06-21 Graham Percival <gpermus@gmail.com>
2597 * Documentation/user/ various: minor spelling fixes;
2598 thanks Dave Luttinen!
2600 * Documentation/user/ various: small clarifications;
2601 thanks Anthony Youngman!
2603 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2605 * po/fr.po: add \n appropriately.
2607 * lily/lexer.ll: remove ? from version-seen?
2609 2006-06-19 John Mandereau <john.mandereau@free.fr>
2611 * po/fr.po; update translation, by Jean-Charles Malahieude and
2614 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2616 * THANKS: add Markus Schneider.
2618 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2619 Staff_symbol_engraver
2621 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2622 replace staff_engraver
2624 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2627 * lily/staff-collecting-engraver.cc
2628 (acknowledge_end_staff_symbol): new function
2630 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2632 * lily/staff-collecting-engraver.cc
2633 (acknowledge_end_staff_symbol): new function.
2635 * lily/main.cc: switch on relocation by default.
2637 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2639 * lily/spacing-spanner.cc (musical_column_spacing): set
2640 compound_fixed_note_space to 0.0. Document why.
2642 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2643 range of inverse_hooke_
2644 (Simple_spacer): init completely.
2646 (get_line_configuration): don't use cols.resize(); it introduces
2649 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2651 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2653 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2654 try. Divide by beatlength.
2656 * input/regression/beaming-ternary-metrum.ly: update doc.
2657 add beatLength hack.
2659 * scm/music-functions.scm (make-time-signature-set): add
2660 standard-beat-grouping.
2662 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2664 * input/regression/tie-whole.ly: new file.
2666 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2667 cross center of note head in case of invisible stem.
2669 2006-06-16 Graham Percival <gpermus@gmail.com>
2671 * Documentation/user/ various: small fixes from mailist.
2673 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2675 * lily/breathing-sign.cc (offset_callback): idem.
2677 * lily/align-interface.cc (align_to_fixed_distance): remove
2680 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2683 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2685 * VERSION (PACKAGE_NAME): release 2.9.9
2687 * ly/lilypond-book-preamble.ly: add \version
2689 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2691 * scripts/lilypond-book.py (PREAMBLE_LY): include
2692 lilypond-book-preamble.ly
2694 * lily/stem.cc (get_beaming): return max of 0 and
2695 scm_ilength. Fixes slurring from/to beams.
2697 * ly/lilypond-book-preamble.ly: new file.
2699 * lily/slur.cc: add inspect-index feature.
2701 2006-06-13 Graham Percival <gpermus@gmail.com>
2703 * Documentation/user/tutorial.itely: trivial fix.
2705 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2707 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2708 all non-event music in the parser via MAKE_SYNTAX.
2710 * lily/parser-scheme.cc: Add ly:parser-error function
2712 * scm/paper.scm: fix typo
2714 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2718 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2721 * buildscripts/output-distance.py (test_compare_signatures):
2723 (read_signature_file): use new signature format.
2725 * scm/stencil.scm (write-system-signature): simpler signature
2728 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2731 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2732 stem_end_position, but estimate instead.
2734 * lily/tuplet-bracket.cc (calc_positions): look at
2735 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2736 brackets narrower than beams.
2738 * lily/lexer.ll: set version-seen? even if version is
2741 * lily/rest.cc (y_offset_callback): bugfix: decide position
2742 override based on scm_is_number(). Fixes \rest on center staff
2745 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2746 patterns for 16th triplets.
2748 2006-06-10 Graham Percival <gpermus@gmail.com>
2750 * Documentation/user/ page.itely, global.itely: editing
2753 * Documentation/user/ various: findex -> funindex.
2755 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2757 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2758 insert extra tuplet events.
2760 2006-06-10 Graham Percival <gpermus@gmail.com>
2762 * Documentation/user/programming-interfaces.itely: add
2765 * python/convertrules.py: add annotatefoo -> annotate-foo
2768 * Documentation/user/global.itely: start editing.
2770 * Documentation/user/page.itely: major editing, new spacing
2773 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2775 * scm/define-markup-commands.scm (wordwrap-markups): use
2776 output-def 'line-width if undefined.
2778 * HACKING: trim outdated info.
2780 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2782 * scm/define-grobs.scm (all-grob-descriptions): Add
2783 line-spanner-interface to all grobs that already have
2784 text-spanner-interface or dynamic-text-spanner-interface
2786 * scm/page.scm: Rename annotate{headers,systems,page}->
2789 * input/regression/page-spacing.ly,
2790 input/regression/page-layout-manual-position.ly: idem
2792 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2794 * lily/line-spanner.cc: cleanup property list.
2796 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2797 generator expressions (2.3 compat).
2799 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2801 * lily/vertical-align-engraver.cc: Make sure that the
2802 align{Above,Below}Context properties are included in the automatic
2805 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2807 * scm/paper-system.scm (paper-system-annotate): also annotate the
2808 estimated pure-Y-extent
2810 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2812 * lily/system.cc (break_into_pieces): set the estimated height
2813 of each child system
2815 * lily/stem.cc (pure_height): new pure-Y-extent callback
2817 * lily/staff-symbol-referencer.cc (callback): don't destroy
2818 the staff-position property
2820 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2821 consider_suicide into two functions
2823 * lily/constrained-breaking.cc (resize): use the new pure
2824 callbacks to estimate the height of a system
2826 * lily/axis-group-interface.cc (pure_group_height): new
2827 side-effect-free VerticalAxisGroup height-callback
2829 * lily/align-interface.cc (get_extents_aligned_translates):
2830 split align_elements_to_extents into two functions
2831 (get_pure_child_y_translation): new function
2833 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2835 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2837 * lily/paper-score.cc: cache break_indices and columns
2839 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2841 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2843 * lily/font-config.cc (init_fontconfig): do the init if
2844 cache_file, but don't look at cache_file.
2846 * input/regression/quote-tie.ly: new file.
2848 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2849 to Head_event_tuple, so we deal gracefully with ties on
2852 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2855 2006-06-08 Graham Percival <gpermus@gmail.com>
2857 * input/test/ smart-transpose.ly, reverse-music.ly:
2858 \applyMusic to music functions update, thanks Michael!
2860 2006-06-07 Graham Percival <gpermus@gmail.com>
2862 * input/test/ add-staccato.ly, add-text-script.ly,
2863 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2864 music functions update, thanks to Michael Meixner.
2866 * Documentation/user/music-glossary.tely: small fix
2869 * Documentation/user/ various: minor additions from mailist.
2871 * Documentation/user/lilypond.tely, basic-notation.itely:
2872 small test of @funindex. (works here)
2874 * input/test/font-table.ly: reduce size to partially
2875 de-ugly version in manual.
2877 * Documentation/user/page.itely: new file (split former
2878 "global issues" into "page settings" and "non-musical
2881 * Documentation/user/ various: fix @ref{}s to match
2882 new chapter names (above).
2884 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2886 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2888 2006-06-06 Graham Percival <gpermus@gmail.com>
2890 * Documentation/user/advanced-notation.itely: add example
2891 for segno/coda on barline.
2893 * tex/texinfo.tex: merge from upstream.
2895 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2897 * scripts/lilypond-book.py (process_snippets): Argument fix.
2900 * buildscripts/builder.py:
2903 * Documentation/user/SConscript: More SCons fixes.
2905 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2907 * lily/font-config.cc (init_fontconfig): Only initialize if
2908 global cache_file is found.
2910 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2912 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2915 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2917 * VERSION (PACKAGE_NAME): release 2.9.8
2919 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2920 function. Delay ledger modifying ledgered grobs to
2921 stop_translation_timestep(), to ensure that we're ledgering
2922 according to the new spanner.
2923 (acknowledge_staff_symbol): don't check for non-NULL
2924 staff_sym->get_bound()
2926 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2929 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2932 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2933 directly from srcdir/stepmake/aclocal.m4
2935 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2938 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2940 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2942 * lily/simple-spacer.cc (get_line_configuration): add
2943 keep-inside-line rods
2944 (struct Column_desc): add constructor
2945 (struct Rod_desc): add constructor
2946 (get_line_forces): check for forced page breaks here too
2948 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2949 support/elements cycles between InstrumentNames and AxisGroups
2951 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2953 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2955 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2956 make-txt-files target.
2958 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2959 make-txt-files target.
2961 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2963 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2966 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2968 * Documentation/user/instrument-notation.itely,
2969 input/regression/breathing-sign-ancient.ly,
2970 input/test/divisiones.ly: Removed redundant property settings for
2973 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2974 fix lyrics alignment problems. They are implemented now as scheme
2975 functions that add the appropriate unicode char to the first lyric
2976 event rather than adding a separate lyric event. Minor edit of
2979 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2981 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2982 pollute src dir with built .txt files, but install directly from
2983 Documentation/topdocs/out/
2985 * buildscripts/output-distance.py
2986 (ComparisonData.create_html_result_page): put version/directories
2989 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2992 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2993 Patch by Karl Hammar
2995 * buildscripts/readlink.py: add file.
2996 Patch by Karl Hammar
2998 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3000 * lily/tuplet-number.cc (print): prevent stencil from being
3003 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3005 * scm/stencil.scm (write-system-signature): explicitly
3006 -well, superfluously- close output port.
3008 * buildscripts/output-distance.py (main): oops. Add extra argument.
3010 2006-06-05 Graham Percival <gpermus@gmail.com>
3012 * Documentation/user/music-glossary.tely: clarified example
3013 from Francisco Vila, thanks!
3015 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3017 * input/regression/spacing-section.ly: new file.
3019 * lily/input.cc (programming_error): new function.
3021 * lily/spacing-engraver.cc (try_music): new function. Accept
3022 spacing-section-event
3024 * lily/spacing-spanner.cc (set_springs): take slices of all
3025 columns for spacing.
3027 * lily/include/paper-column.hh (class Paper_column): add
3028 Paper_column::compare.
3030 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3032 * scm/define-music-types.scm (music-descriptions): add
3035 * lily/music-iterator.cc (report_event): use programming_error for
3036 sending non-event error.
3038 * lily/input.cc (programming_error): new function
3040 * buildscripts/output-distance.py (main): use compare-XXX for
3042 (main): --threshold option, default at 0.30
3044 * output-distance.py (main): add --threshold option.
3046 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3048 * scm/paper-system.scm (paper-system-annotate): fix problem when
3049 annotating an empty system
3051 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3053 * GNUmakefile.in: reinstate old web tar/copying.
3055 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3057 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3058 nothing changes. (Erik S)
3060 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3063 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3065 * scm/define-markup-commands.scm (whiteout): do not force
3066 foreground color of argument markup to black.
3068 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3069 the left of the arrow, instead of below the arrow name, so that,
3070 when two little arrows are vertically stacked, their dimensions
3071 and name should not overlap. Add a color key parameter.
3073 * scm/paper-system.scm (paper-system-annotate): Annotate
3074 next-space+next-padding instead of next-space. Annotate space
3075 between next-padding and next-space+padding, respectively, and
3076 following system extent and refpoint-Y-extent. Use colors.
3078 * scm/page.scm (annotate-page): translate annotations slightly to
3081 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3083 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3084 fix for x-staff slurs. Thanks Joe!
3086 * buildscripts/output-distance.py
3087 (SystemLink.output_expression_change_count): keep track of changed
3088 details, and dump in details html page.
3090 * input/regression/figured-bass-staff.ly: add note about setting
3091 properties in Staff context.
3093 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3094 add slurs and ties to support too.
3096 * buildscripts/output-distance.py (main): set dest_dir
3097 argument. Add --max-count option.
3099 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3101 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3102 shortcuts for special unicode chars that are useful in chant
3103 notation. Revised exisiting and added new comments.
3105 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3107 * make/mutopia-rules.make: remove duplicate recipe.
3109 2006-06-02 Werner Lemberg <wl@gnu.org>
3111 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3112 Add support for U+0132 (IJ) and U+0133 (ij).
3114 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3116 * buildscripts/output-distance.py (FileLink): new class. collect
3117 info systems from one .ly file.
3118 (FileLink.link_files_for_html): further tweaks.
3120 2006-06-02 Graham Percival <gpermus@gmail.com>
3122 * tex/texinfo.tex: partial fix for @funindex.
3124 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3127 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3129 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3131 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3132 @example too. Backportme.
3134 2006-06-02 Graham Percival <gpermus@gmail.com>
3136 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3137 from Werner Lemberg.
3139 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3141 * Documentation/user/music-glossary.tely: additional spanish
3142 updates and a lyrics fix in an example.
3144 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3146 * scm/define-grob-properties.scm: Previous patch contained
3147 spurious line from another patch not yet committed. Fixed.
3149 * scm/define-grob-properties.scm: Add missing doc strings for
3152 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3154 * buildscripts/output-distance.py
3155 (ComparisonData.write_text_result_page): separate the scores, sort
3158 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3161 * buildscripts/output-distance.py (me_path): use argv[0] for
3163 (ComparisonData.img_cell): use colored borders.
3165 * scm/stencil.scm (write-system-signature): escape newlines too.
3166 (write-system-signature): use (1,-1) interval for empty interval
3168 2006-01-01 Graham Percival <gpermus@gmail.com>
3170 * Documentation/user/music-glossary.tely: Spanish updates
3171 from Francisco Vila.
3173 * Documentation/user/lilypond-book.itely: addition from
3176 * Documentation/user/ various: edits, small additions
3179 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3181 * GNUmakefile.in (tree-lib-prefix-current):
3182 (tree-share-prefix-current): Use version number in tree, add
3185 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3187 * GNUmakefile.in: write VERSION, again.
3189 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3190 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3192 * stepmake/aclocal.m4: robuster version detection.
3194 * buildscripts/output-distance.py
3195 (ComparisonData.create_html_result_page): copy only if file
3196 exists, fixup src paths.
3198 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3200 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3202 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3203 Another datarootdir reto.
3205 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3206 available. This should be moved to postinstall-lilypond-doc.
3208 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3210 * GNUmakefile.in: simplify local-WWW-post.
3211 remove -type l from find.
3213 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3214 fixes. Don't follow symlinks.
3215 (ComparisonData.create_html_result_page): remove previous results.
3216 insert ../python in path.
3218 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3220 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3222 * config.make.in (datadir): Add datarootdir to silence autoconf.
3224 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3226 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3228 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3230 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3231 slash beams too wide.
3233 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3235 * VERSION: release 2.9.7
3237 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3239 * lily/relocate.cc (read_relocation_dir): Do not blindly
3242 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3244 * lily/parser.yy: replace THIS by PARSER
3246 * Documentation/index.html.in: add link to test-results.html page.
3248 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3250 * scm/translation-functions.scm (format-bass-figure): translate
3251 digits over 10 to the left
3253 * scm/define-markup-commands.scm (translate-scaled): new markup.
3255 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3258 * ly/engraver-init.ly: add Figured_bass_engraver
3260 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3262 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3264 * lily/score-engraver.cc (announce_grob): only note START announces.
3266 * lily/include/engraver-group.hh (Translator_group):
3267 acknowledge_hash_table_ is now drul.
3269 * lily/engraver.cc (announce_end_grob): new method.
3271 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3273 * lily/translator-dispatch-list.cc (create): take start_end argument.
3275 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3276 acknowledge_static_array_ to drul
3278 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3280 * scm/define-grob-interfaces.scm
3281 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3283 * scm/define-grobs.scm (all-grob-descriptions): add
3284 BassFigureAlignmentPositioning
3286 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3287 number stays up to date. Backportme.
3289 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3291 * Documentation/user/basic-notation.itely (Bar lines): Document
3294 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3296 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3298 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3299 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3302 * Resurrect `scons lily' build.
3304 * SConstruct (symlink_tree): Bugfix: link
3305 music-drawing-routines.ps to file iso directory.
3307 * lily/SConscript: Remove kpath-guile from LIBS.
3309 * SConstruct (libdir_package_version): Typo.
3310 (configure): Comment-out fontforge for lack of fontforge.pc .
3311 Also add libdir* to environment.
3313 2006-05-30 Graham Percival <gpermus@gmail.com>
3315 * Documentation/user/ various: minor additions from mailist and
3318 2006-05-30 Paco <fravd@ya.com>
3320 * Documentation/user/music-glossary.tely: numerous corrections and
3321 some new translations.
3323 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3327 * buildscripts/output-distance.py
3328 (ComparisonData.create_html_result_page): new routine: summarise
3329 results in HTML page with images.
3330 (ComparisonData.create_text_result_page): create summary text files too.
3332 * GNUmakefile.in (web-ext): package .signature files too. They
3335 * scm/stencil.scm (write-system-signature): typo.
3337 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3339 * scm/stencil.scm (write-system-signature): better escaping.
3340 only write signature for music systems, not for markup systems.
3342 * scm/framework-ps.scm (output-framework): dump-signatures support
3345 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3347 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3348 for -dno-point-and-click
3350 * lily/grob.cc (get_print_stencil): don't read
3351 point_and_click_global to determine whether to set grob-cause.
3353 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3355 * buildscripts/output-distance.py (main): new function.
3356 (ComparisonData): new class.
3358 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3359 careful with generating new LedgerLineSpanners.
3361 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3363 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3364 context. This fixes double ledger lines in output.
3366 * lily/system.cc (get_paper_system): remove 3 layer limit.
3368 * buildscripts/output-distance.py (SystemLink.distance): new
3369 file. Compare signatures.
3371 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3373 * lily/grob-array.cc (remove_duplicates): rename from
3374 uniq(). Sort before calling uniq() so it actually works.
3376 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3378 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3379 \version from lilypond file snippet.
3380 (Lilypond_file_snippet.ly): oops. typo.
3381 (find_toplevel_snippets): urgh. again.
3383 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3384 prevent duplicated broken items in output.
3386 * scm/framework-eps.scm (output-classic-framework): only dump if
3387 dump-signatures is set.
3389 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3391 * scm/stencil.scm (write-system-signature): new routine: write
3392 python parseable signature of a separate paper system.
3395 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3397 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3401 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3403 * translator-group.cc: send music events to engravers in
3404 non-bottom contexts.
3406 * tuplet-engraver.cc: process tuplet brackets in correct order.
3408 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3410 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3411 arg 2 might point us to a new binary (patch by Karl Hammar)
3413 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3415 * VERSION (PACKAGE_NAME): release 2.9.6
3417 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3419 * Documentation/user/*.itely: 2nd
3420 attempt: replace funindex -> findex globally.
3422 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3424 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3425 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3427 * scm/define-music-display-methods.scm: display methods for
3428 breaks. Fix \applyOutput.
3430 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3432 * Documentation/user/macros.itexi: comment out funindex expansion.
3434 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3437 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3438 Karl Hammar. Backportme.
3440 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3442 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3444 * Documentation/user/programming-interface.itely (Running a
3445 function on all layout objects): idem.
3447 * Documentation/user/introduction.itely (Automated engraving):
3448 update \applyOutput syntax
3450 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3451 remove debugging hook.
3453 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3456 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3458 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3459 TEXI2DVI_FLAGS to texi2dvi invocation.
3461 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3463 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3464 works. More work is done by iterator now, and engraver has been
3465 very much simplified.
3467 * lily/translator-group.cc: try_music is now invoked through a
3470 * lily/*-iterator.cc: Massive cleanups. Junked
3471 try_music_in_children globally. Renamed try_music to report_event,
3472 and made that method descend to a bottom context automatically.
3474 * lily/event-iterator.cc: New file.
3476 * lily/output-property-iterator.cc,
3477 lily/old-lyric-combine-music-iterator.cc: Removed.
3479 * python/convert-rules.py: Modified the syntax for \applyOutput.
3481 2006-05-23 Graham Percival <gpermus@gmail.com>
3483 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3486 * Documentation/user/ various: stuff that might have helped
3487 to fix the pdf creation, plus some minor doc additions.
3489 * Documentation/user/changing-defaults.itely: remove @b from
3490 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3492 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3494 * lily/beaming-pattern.cc (beamify): deal with negative start
3495 moments for beaming patterns.
3497 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3499 * lily/beaming-info.cc (beamify): new function: read beatLength
3500 and beatGrouping from context.
3502 * input/regression/beam-beat-grouping.ly (Module): new file.
3504 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3506 * lily/beam.cc (get_beam_segments): generate events for
3507 max_connect_ case too.
3508 (get_beam_segments): read Stem::max-beam-connect.
3510 * input/regression/beam-single-stem.ly: new file.
3512 * lily/stem.cc (set_beaming): use #f as signaling value for
3515 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3517 * lily/beam.cc (set_beaming): read clip-edges property.
3518 (calc_direction): don't suicide for single stem.
3520 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3521 argument, remove 1<<15 hack. Remove clip_edges()
3523 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3525 2006-05-21 Graham Percival <gpermus@gmail.com>
3527 * Documentation/user/basic-notation.itely: reorg.
3529 * Documentation/user/ various: minor fixes.
3531 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3533 * lily/stencil-expression.cc (register_stencil_head): opps, append
3534 to cdr of static SCM object.
3536 2006-05-19 Graham Percival <gpermus@gmail.com>
3538 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3539 update framework for command index. DOC WRITERS: use @funindex
3540 instead of @cindex @code{}.
3542 * Documentation/user/ various: replace @cindex @code{} => @funindex
3544 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3546 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3547 case positions is set manually.
3549 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3551 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3554 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3556 * Documentation/user/changing-defaults.itely (Contexts explained):
3557 use absolute dimension for @image.
3559 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3560 out image for illustration too.
3561 ($(outdir)/%.png): add more png <-> eps rules.
3563 2006-05-17 Graham Percival <gpermus@gmail.com>
3565 * Documentation/user/ various: remove trailing whitespace, cosmetic
3566 change to reduce changes produced by diff.
3568 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3570 * lily/main.cc (do_chroot_jail): correctness tweak.
3572 * python/lilylib.py (system): import subprocess in system () only.
3574 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3576 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3577 variable. Backportme.
3579 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3581 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3583 2006-05-17 Werner Lemberg <wl@gnu.org>
3585 * lily/lexer.ll (init_signature_has_table): Add
3586 `scm-scm-music-music'.
3588 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3589 (Generic_prefix_music_scm): Add rule for it.
3591 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3592 `quoted-transposition' property.
3594 * ly/music-functions-init.ly (transposedCueDuring): New function.
3596 * scm/define-music-properties.scm (all-music-properties): Updated.
3598 * Documenation/topdocs/NEWS.itely: Document it.
3600 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3602 * python/lilylib.py (system): move import subprocess to system()
3605 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3607 * VERSION (PATCH_LEVEL): release 2.9.5
3609 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3612 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3614 2006-05-16 Graham Percival <gpermus@gmail.com>
3616 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3618 * Documentation/user/ various: minor fixes.
3620 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3622 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3624 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3626 * Documentation/user/advanced-notation.itely (Instrument names):
3627 Modified obsolete instruction on how to move instrument names away
3628 from the staves. Hmm, at second thought the bug probably has been
3629 solved, so the full bug description should probably be removed.
3631 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3633 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3634 currentCommandColumn.
3636 * lily/hairpin.cc (print): also add padding for non-neighbor
3639 * scm/define-context-properties.scm
3640 (all-user-translation-properties): add hairpinToBarline
3642 * input/regression/hairpin-to-barline.ly: new file.
3644 * lily/context.cc (internal_send_stream_event): thinko fix.
3646 * lily/tie.cc (set_default_control_points): robustness fix.
3648 * python/musicxml.py (Part.interpret): don't complain about
3649 incomplete measures.
3651 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3652 new music if last_event_chord() returned None.
3654 * python/musicxml.py (Part.interpret): skip back over chord notes.
3656 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3658 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3659 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3660 lily/slash-repeat-engraver.cc,
3661 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3662 iterator sends PercentEvents
3664 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3665 rework tuplets: send start/stop events to engraver
3667 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3668 dispatchers event-source and events-below to Context
3670 2006-05-15 Graham Percival <gpermus@gmail.com>
3672 * Documentation/user/README.txt: update info for doc writers.
3674 * Documentation/user/programming-interface.itely: integrate
3675 Nicolas' fixes for chapter rewrite.
3677 * Documentation/user/ various: minor fixes.
3679 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3681 * lily/clef-engraver.cc: cleanup.
3683 * Documentation/user/GNUmakefile: dist context-example.eps too.
3685 * lily/key-engraver.cc (create_key): use
3686 explicitKeySignatureVisibility for cancellation too.
3688 * lily/font-config.cc (init_fontconfig): don't close file if
3691 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3693 * Documentation/topdocs/NEWS.tely: niente and rotation news
3695 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3697 * lily/include/stencil.hh
3698 * lily/stencil.cc (rotate): new function. Makes it possible
3699 to rotate a stencil around a given offset.
3701 * lily/grob.cc (get_print_stencil): add rotation support
3703 * lily/stencil-interpret.cc (interpret_stencil_expression):
3704 add rotation support
3706 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3708 * scm/define-grob-properties.scm: add 'rotation property
3710 * scm/define-markup-commands.scm: add rotate markup command
3712 * scm/output-ps.scm: add rotation support in PostScript backend
3714 * scm/output-svg.scm: add rotation support in SVG backend
3716 2006-05-13 Graham Percival <gpermus@gmail.com>
3718 * Documentation/user/music-glossary.itely: French correction.
3720 * Documentation/user/programming-interface.itely: major
3721 new docs, some reorg, some info from Nicolas.
3723 * Documentation/user/ various: small fixes.
3725 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3727 * Documentation/user/programming-interface.itely (Markup
3728 programmer interface): Remove duplicate text.
3730 2006-05-12 Graham Percival <gpermus@gmail.com>
3732 * Documentation/user/context-example.eps: new file.
3734 * Documentation/user/changing-defaults.itely: set up file to
3737 * Documentation/user/programming-interface.itely: changes
3740 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3742 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3744 2006-05-11 Graham Percival <gpermus@gmail.com>
3746 * Documentation/user/programming-interface.itely: first round of
3747 editing and merging emails from Nicolas.
3749 * Documentation/user/scheme-tutorial: minor edit.
3751 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3753 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3755 (Xml_node.message): use it.
3757 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3758 oops. Add duration argument.
3760 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3762 * lily/paper-column-engraver.cc (make_columns):
3763 * scm/define-grobs.scm: Revert my previous change and set the default
3764 in define-grobs.scm instead.
3766 2006-05-09 Graham Percival <gpermus@gmail.com>
3768 * Documentation/user/changing-defaults.itely: general editing,
3769 info about \set and \override.
3771 * Documentation/user/tweaking.itely, advanced-notation.itely:
3772 fixes from Dave Luttinen, thanks!
3774 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3776 * lily/paper-column-engraver.cc (make_columns): By default, a column
3777 needs to be breakable.
3779 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3781 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3783 (musicxml_time_to_lily): idem
3784 (musicxml_key_to_lily): idem
3785 (instrument_drumtype_dict): dict for supported drumtypes.
3786 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3787 moments and pending mm rests
3788 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3789 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3790 (musicxml_voice_to_lily_voice): add mode change.
3791 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3792 speed and less memory usage (factor 5 to 10).
3793 (convert): write -defs.ly and driver file separately so people
3794 can script their own part extraction.
3796 * python/musicxml.py (minidom_demarshal_node): new function:
3797 separate minidom handling.
3798 (lxml_demarshal_node): new function: support lxml.etree too.
3799 (Xml_node.message): new function: verbose error message, with XML
3800 path to offending node.
3801 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3802 (Part_list.generate_id_instrument_dict): new method: collect
3803 instrument names, to be able to set drum_type.
3804 (Part.interpret): handle underfull measures
3805 (Part.interpret): assign instrument names.
3807 * python/musicexp.py (Output_printer.close): new method
3808 (MusicWrapper.print_ly): new class: support other modes,
3810 (BarCheck.print_ly): new class. Support bar checks, with comments
3811 and fancy barchecks.
3812 (NoteEvent.__init__): also set drum_type for drum notes.
3813 (MultiMeasureRest.lisp_expression): dump mm rests.
3815 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3816 line-break-permission if forbidBreak is not set.
3818 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3820 * scm/define-context-properties.scm:
3821 * scm/define-grob-properties.scm:
3822 * scm/define-grobs.scm:
3823 * scm/define-music-display-methods.scm:
3824 * scm/define-music-properties.scm:
3825 * scm/define-music-types.scm:
3826 * scm/music-functions.scm:
3827 * ly/declarations-init.ly:
3828 * lily/include/constrained-breaking.hh:
3830 * lily/spaceable-grob.cc:
3831 * lily/simple-spacer.cc:
3832 * lily/paper-score.cc:
3833 * lily/paper-column.cc:
3834 * lily/paper-column-engraver.cc:
3836 * lily/gourlay-breaking.cc:
3837 * lily/constrained-breaking.cc:
3838 * python/convertrules.py:
3839 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3840 "page-break-penalty" and "line-break-permission".
3841 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3842 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3844 * lily/bar-engraver.cc:
3845 * lily/beam-engraver.cc:
3846 * lily/forbid-break-engraver.cc:
3847 * lily/ligature-engraver.cc:
3848 * lily/paper-column-engraver.cc:
3849 * lily/percent-repeat-engraver.cc:
3850 * lily/score-engraver.cc:
3851 * lily/score-engraver.hh:
3852 * lily/paper-column-engraver.hh:
3853 Inter-engraver communication regarding line breaks is done through context
3854 properties (Score.forbidBreak) instead of function calls.
3856 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3858 * VERSION (PACKAGE_NAME): release 2.9.4
3860 2006-05-08 Graham Percival <gpermus@gmail.com>
3862 * Documentation/user/working.itely: proofreading from Dave
3865 * Doucmentation/user/README.txt: updated with manual style info.
3867 * Documentation/user/ various: trim linewidth to 78 chars.
3869 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3871 * scm/define-grob-properties.scm (all-internal-grob-properties):
3872 remove chord-tremolo property.
3874 * lily/beam.cc (get_beam_segments): don't use stem position as
3875 base for broken ends.
3877 2006-05-06 Graham Percival <gpermus@gmail.com>
3879 * Documentation/user/putting.itely: proofreading from Dave
3882 * Documentation/user/ various: more reorg and clarifications.
3884 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3886 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3888 * ly/music-functions-init.ly: new function featherDurations
3890 * lily/beam.cc: read grow-direction for feathered beaming.
3892 * Documentation/topdocs/NEWS.tely (Top): typo.
3894 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3896 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3899 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3900 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3901 used by music streams.
3903 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3904 lily/stream-event.cc, lily/stream-event-scheme.cc,
3905 lily/listener.cc, lily/scheme-listener.cc,
3906 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3907 lily/include/stream-event.hh, lily/include/listener.hh,
3908 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3909 Created data structures for music streams.
3911 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3913 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3914 construction of a beam.
3917 * flower/include/std-vector.hh (default_compare): use only one comparison.
3919 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3920 (note-by-number): further attachment fixes.
3922 * scm/lily-library.scm (ordered-cons): new function.
3923 (interval-index): new function
3925 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3927 * lily/note-head.cc (get_stem_attachment): new function.
3929 * scm/define-markup-commands.scm (note-by-number): read 'style
3932 * input/regression/markup-note.ly: show note-head style option.
3934 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3937 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3939 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3941 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3943 * lily/include/constrained-breaking.hh: GCC 4 fix.
3945 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3947 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3948 Replace it with functions get_line_forces and get_line_configuration.
3949 (class Simple_spacer): Make data private.
3950 Rewrite compression algorithm to be faster and simpler.
3952 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3953 * lily/gourlay-breaking.cc (solve):
3954 * lily/constrained_breaking.cc (space_line):
3955 Change it to the new simple-spacer code.
3957 * lily/paper-score.cc (get_paper_systems):
3960 Delay breaking the systems until they are requested.
3961 (find_break_indices):
3962 Use vsize for indices.
3964 Move the "Calculating line breaks" message here.
3966 * lily/system.cc (pre_processing):
3967 Move the "Calculating line breaks" message away from here.
3968 (break_into_pieces):
3969 Allow multiple calls to this function in sequence (with touching-but-
3970 not-overlapping breakpoints).
3972 * lily/constrained-breaking.cc:
3973 Replace most of the get_XXXX functions with get_line_details.
3974 Only calculate the force for each line. Calculate configurations only
3975 for the lines we will actually use.
3976 Replace cols_ with lines_.
3978 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3980 * mf/GNUmakefile (depth): remove FC_FIND.
3982 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3984 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3986 * scm/framework-ps.scm (write-preamble): new function.
3987 (write-preamble): load mac fonts via fondu, even if gs-font-load
3990 2006-05-03 Werner Lemberg <wl@gnu.org>
3992 * mf/GNUmakefile (FC_FIND): Fix typo.
3994 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3996 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3998 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4000 * stepmake/aclocal.m4: run python-config for crosscompiling
4003 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4004 -f png for HTML, TEXINFO formats.
4006 * input/tutorial/lbook-html-test.html: new file.
4008 * lily/include/tie-formatting-problem.hh (class
4009 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4010 [column, direction]. This fixes laissez vibrer ties.
4012 * flower/include/tuple.hh (struct Tuple2): new file.
4014 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4015 $(FCMATCH), only if $(NCSB_DIR) not set.
4017 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4019 * config.make.in (DOCUMENTATION): set FCMATCH.
4021 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4023 2006-05-03 Graham Percival <gpermus@gmail.com>
4025 * Documentation/user/ various: final round of reorg.
4027 * Documentation/user/instrument-notation.itely: some more
4028 fixes from Eduardo, thanks!
4030 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4032 * VERSION (PACKAGE_NAME): release 2.9.3
4034 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4036 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4038 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4040 * scm/define-grob-properties.scm (all-user-grob-properties):
4041 Correct typo, thanks to Eduardo.
4043 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4045 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4047 * buildscripts/lilypond-words.py (F): indent fix.
4049 * input/regression/tie-arpeggio-collision.ly: new file.
4051 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4052 function: store outlines per column rank.
4054 * lily/include/tie-configuration.hh (class Tie_configuration): add
4055 column_ranks_ to specification and configuration, to distinguish
4056 between ties for different heads in arpegiated chords.
4058 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4060 * *.py: more 4 space indents.
4062 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4064 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4066 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4068 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4070 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4072 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4074 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4076 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4078 * python/convertrules.py (conv): indent 4 for python files.
4080 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4082 * Documentation/user/changing-defaults.itely (Creating contexts):
4083 Clarify \new semantics.
4085 2006-04-28 Graham Percival <gpermus@gmail.com>
4087 * Documentation/user/ various: major new sections in the
4088 Learning manual, slight reorg elsewhere.
4090 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4092 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4094 * scm/framework-ps.scm (output-framework): remove PageMedia
4096 2006-04-27 Graham Percival <gpermus@gmail.com>
4098 * Documentation/user/ tweaks.itely, working.itely: new
4099 files, being more advanced "learning manual" chapters.
4101 * Documentation/user/ tutorial, putting, lilypond: reorg.
4103 2006-04-26 Graham Percival <gpermus@gmail.com>
4105 * input/regression/lyric-combine-polyphonic.ly: fixed test
4106 (no more "can't find context `one'" error).
4108 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4110 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4112 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4114 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4116 * lily/relocate.cc (read_relocation_dir): new function.
4118 2006-04-26 Graham Percival <gpermus@gmail.com>
4120 * Documentation/user/instrument-notation.itely: a few more fixes
4121 from Eduardo, thanks!
4123 * Documentation/user/README.txt: new file; contains info on
4124 style that used to be in lilypond.tely.
4126 * Documentation/user/ various: first round of doc reorg.
4128 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4129 graphic; this probably causes problems on some pdf
4130 viewers, notably Adobe Acrobat.
4132 2006-04-24 Graham Percival <gpermus@gmail.com>
4134 * Documentation/user/instrument-notation.itely: many alterations
4135 to Vocal music, from Eduardo Viera.
4137 2006-04-23 Graham Percival <gpermus@gmail.com>
4139 * Documentation/user/instrument-notation.itely: fix \new
4140 instead of \context problem.
4142 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4144 * lily/relocate.cc (expand_environment_variables): new function.
4146 (read_relocation_file): id.
4148 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4150 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4152 * ly/engraver-init.ly: remove old comments from TabVoice
4154 2006-04-20 Graham Percival <gpermus@gmail.com>
4156 * Documentation/user/instrument-notation.itely: added Erlend's
4157 latest doc patch, thanks!
4159 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4161 * lily/include/slur.hh:
4163 * lily/phrasing-slur-engraver.cc:
4164 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4165 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4166 Slur_engraver:: and putting it in
4167 Slur::auxiliary_acknowledge_extra_object ().
4169 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4171 * lily/note-collision.cc: fix a comment
4173 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4175 * stepmake/bin/add-html-footer.py: fix footer position in
4176 generated html files: before </body> and </html> tags.
4178 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4180 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4181 Earlier successive `make' commands finally compiled ok.
4183 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4185 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4187 * lily/include/stem-tremolo.hh:
4188 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4192 * lily/include/lookup.hh: add rotated_box ()
4194 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4196 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4197 been generated. Fixes "can't get `--help'" bug after make clean.
4199 * THANKS: alphabetize contributors.
4201 2006-04-17 Graham Percival <gpermus@gmail.com>
4203 * Documentation/user/instrument-notation.itely: added Erlend's
4204 tabs and banjo doc patch. Thanks!
4206 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4208 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4210 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4212 * scm/output-lib.scm: add some more predefined string tunings.
4214 * Documentation/user/instrument-notation.itely: and doc them.
4216 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4218 * ly/engraver.ly: Remove obsolete comments.
4220 * ly/gregorian-init.ly: Define default layout block.
4222 * input/puer-fragment.ly: Updated and extended.
4224 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4226 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4227 pdf conversion behaviour.
4229 * flower/file-name.cc (dir_name)
4230 (get_working_directory): Move from relocate.cc.
4232 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4234 * lily/relocate.cc: Encapsulate sys/stat.h in
4237 2006-04-14 Graham Percival <gpermus@gmail.com>
4239 * Documentation/user/ various: small updates from Cameron
4240 and Juergen, thanks!
4242 * Documentation/user/ various: small updates of my own.
4244 * THANKS: 2.7 -> 2.8.
4246 2006-04-11 Graham Percival <gpermus@gmail.com>
4248 * scm/define-context-properties.scm: typo.
4250 * Documentation/user/ : many more small updates.
4252 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4254 * scm/define-music-types.scm: disposed "docme".
4256 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4258 * lily/hairpin.cc: make niente circles a bit smaller.
4260 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4262 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4263 get-pfa and get-*-fonts targets.
4265 2006-04-10 Graham Percival <gpermus@gmail.com>
4267 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4268 music-glossary, programming-interface: more minor fixes
4271 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4273 * scm/define-context-properties.scm: another old \property update.
4274 This time tested for compiling!
4276 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4278 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4280 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4282 * scm/define-context-properties.scm (all-user-translation-properties):
4283 * Documentation/user/global.itely (Page formatting): Compile fix.
4285 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4287 * Documentation/user/advanced-notation.itely (Polymetric
4288 notation): Update the example to use the "+" symbol and add link
4289 to input/test/compound-time.ly.
4291 2006-04-08 Graham Percival <gpermus@gmail.com>
4293 * scm/define-grob-properties.scm: clarify docs for #'direction.
4295 * scm/define-context-properties.scm: update old \property override.
4297 * Documentation/user/ advanced-notation, global, lilypond-book:
4298 more minor doc updates.
4300 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4302 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4304 * scm/backend-library.scm (search-gs): oops.
4306 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4308 * scripts/lilypond-book.py (output): use base, not filename for href.
4310 * scm/backend-library.scm: only look for gs.
4312 * scripts/lilypond-book.py (output): fix printfilename.
4314 * lily/parser.yy (music_function_musicless_prefix): fold together
4315 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4317 * lily/slur.cc (print): only set font-size if not set yet.
4319 * lily/slur-configuration.cc (add_score): improved layout of debug
4322 2006-04-05 David Feuer <David.Feuer@gmail.com>
4324 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4325 (draw_circle): Hopefully fixed regression.
4326 Improved documentation for several procedures.
4328 2006-03-04 Werner Lemberg <wl@gnu.org>
4330 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4332 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4334 * scripts/musicxml2ly.py (bindir): add dynamic
4337 2006-04-04 Graham Percival <gpermus@gmail.com>
4339 * Documentation/user/ basic-notation, advanced-notation, putting,
4340 instrument-notation, invoking, lilypond, THANKS: another ream of small
4341 fixes from the Doc Helpers.
4343 2006-04-03 David Feuer <David.Feuer@gmail.com>
4345 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4347 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4349 * Cleaned up interfaces between PostScript and Scheme, and moved
4350 computations from PostScript to Scheme:
4352 * music-drawing-routines.ps
4353 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4354 with stroke_and_fill throughout.
4355 (euclidean_length, print_letter, draw_box): Deleted unused
4356 procedures. If someone needs draw_box, implement it using
4357 draw_round_box; don't duplicate code.
4358 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4359 Refactored/cleaned up interfaces.
4362 * output-ps.scm: reordered arguments to PostScript functions to
4363 match new interfaces
4364 (glyph-string): Rewrote glyph-string.
4365 (grob-cause): Replaced string-append with format.
4366 (repeat-slash): Rewrote to do computation here.
4367 (round-filled-box): Rewrote to do computation here.
4369 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4371 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4373 * stepmake/stepmake/toplevel- targets.make: print help info about
4376 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4378 * input/regression/hairpin-circled.ly: new file
4380 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4382 * lily/hairpin.cc (print): add support for circled tip
4384 * scm/define-grob-properties.scm: add circled-tip parameter
4386 * scm/define-grobs.scm: init circled-tip to false
4388 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4390 * scm/music-functions.scm (quote-substitute): set
4393 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4395 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4398 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4400 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4402 2006-03-31 David Feuer <david.feuer@gmail.com>
4404 * scm/framework-ps.scm:
4406 * scm/output-ps.scm: glyph-string now produces smaller, more
4407 readable, and probably faster PostScript. Several findfont
4408 scalefont setfont instances changed to selectfont
4409 Hacked-up string-appends changed to formats.
4411 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4413 2006-03-30 Graham Percival <gpermus@gmail.com>
4415 * scm/lily-library.scm: make "no version" warning message more polite.
4417 * lily/music.cc: add double quotes to failed octave check.
4419 * Documentation/user/ advanced-notation, changing-defaults,
4420 instrument-notation, invoking, music-glossary: whole bunch of minor
4423 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4425 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4426 $(buildscriptdir) iso. depth.
4428 * VERSION (PACKAGE_NAME): release 2.9.1
4430 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4432 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4434 * VERSION (PATCH_LEVEL): bump version number.
4436 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4439 * lily/pango-font.cc (pango_item_string_stencil): use
4442 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4443 $(outdir)/emmentaler-%.svg): remove canary.
4445 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4446 glyphnames if we have a ttf font.
4448 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4450 * Documentation/user/advanced-notation.itely (Font selection):
4451 Corrected reference to the font-family-override.ly example.
4453 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4455 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4456 stem-tremolo object in the stem (or else the stem might not be
4459 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4461 * lily/ttf.cc (print_trailer): only print existing glyphs.
4463 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4465 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4466 position the tremolo based on the position of the notehead.
4468 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4469 notes and update the texidoc line with the new positioning rules.
4471 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4473 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4475 * scripts/lilypond-book.py (Module): set default for linewidth if
4478 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4480 * VERSION (PACKAGE_NAME): release 2.9.0.
4482 * input/regression/stem-tremolo-position.ly: new file.
4484 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4486 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4488 * lily/stem-tremolo.cc (print): position
4489 the tremolo depending only on the end of the stem
4490 and not on the notehead
4491 (raw_stencil): center, on the middle staff line, the
4492 flag that is closest to the end of the stem (previously
4494 (calc_width): add this callback to shorten a tremolo when
4495 it is beamed or it is stemup with a flag
4496 (style): add this callback to make a tremolo rectangular when
4497 it is beamed or it is stemup with a flag
4498 (rotated_box): this is like Lookup::beam but makes a rotated
4499 rectangle instead of a parallelogram
4501 * lily/stem.cc (calc_stem_info): make sure the stem
4502 is long enough to fit the tremolo
4503 (calc-length): reduce the length of tremolo stems since the
4504 tremolo code is now capable of better positioning
4506 * scm/define-grobs.scm: make calc_width the default beam-width
4507 callback for stem-tremolo and add the style callback
4509 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4511 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4514 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4516 * lily/ttf.cc (make_index_to_charcode_map): restore old
4519 2006-03-28 Werner Lemberg <wl@gnu.org>
4521 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4523 2006-03-28 Graham Percival <gpermus@gmail.com>
4525 * THANKS: update for 2.9, add section for Documentation helpers.
4527 * Documentation/topdocs/NEWS.tely: compile fix.
4529 * Documentation/user/ basic-notation, global, advanced-notation,
4530 examples.itely: minor fixes from mailist.
4532 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4534 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4537 * lily/ttf.cc (print_trailer): use it.
4539 * lily/pango-font.cc (get_unicode_name): new function.
4541 * lily/ttf.cc (make_index_to_charcode_map): move function from
4543 (print_trailer): substitute uniXXXX name if applicable.
4545 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4546 (pango_item_string_stencil): use it to generate uniXXXX names.
4548 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4549 note heads, for uniform widths in shape note output.
4550 (overdone_heads): hmm. remove them again.
4552 * scripts/lilypond-book.py (output): add links to filenames.
4554 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4556 * lily/note-collision.cc (get_clash_groups): only consider when
4557 Note_column::dir <> CENTER.
4559 * scripts/lilypond-book.py (get_option_parser): init output_name
4562 2006-03-24 Graham Percival <gpermus@gmail.com>
4564 * Documentation/topdocs/NEWS.tely: add @end itemize
4566 * Documentation/user/ global, advanced-notation: minor
4569 2006-03-23 Graham Percival <gpermus@gmail.com>
4571 * Documentation/user/ lilypond.tely, music-glossary,
4572 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4574 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4576 * mf/GNUmakefile: don't install .enc files.
4578 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4580 * VERSION (PATCH_LEVEL): bump to 2.9.0
4582 2006-03-22 Graham Percival <gpermus@gmail.com>
4584 * Documentation/user/advanced-notation.itely: minor fixes
4587 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4589 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4591 * branch lilypond_2_8
4593 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4595 * scripts/lilypond-book.py (samefile): new function, for windoze
4598 2006-03-21 Graham Percival <gpermus@gmail.com>
4600 * ly/engraver-init.ly: add info about StaffGroup.
4602 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4604 * input/regression/stem-direction-context.ly: idem.
4606 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4610 * input/regression/page-layout-twopass.ly: comment out \markup so
4613 * lily/instrument-name-engraver.cc (finalize): add to instrument
4614 name global System. This also fixes chopped instrument names, but
4615 doesn't crash when there are slurs/beams.
4617 * lily/slur-configuration.cc (add_score): disallow negative slur
4620 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4622 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4624 * lily/instrument-name-engraver.cc (process_music): kludge: add
4625 InstrumentName spanner to axis group of left bound. Fixes chopped
4626 off instrument names in EPS images.
4628 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4630 * scripts/abc2ly.py (option_parser): update to 2.7.40
4632 2006-03-20 Graham Percival <gpermus@gmail.com>
4634 * THANKS: move small doc contributors to SUGGESTIONS.
4636 * Documentation/user/ basic-notation, advanced-notation,
4637 global: small changes from mailist.
4639 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4641 * Documentation/user/advanced-notation.itely (Text marks): update
4642 for new rehearsalMarkAlignSymbol convention.
4644 * VERSION (PATCH_LEVEL): bump version.
4646 * input/test/instrument-name-align.ly: new file.
4648 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4650 * input/test/instrument-name-align.ly: new file. Document how to
4651 align instrument names.
4653 * lily/mark-engraver.cc: remove properties.
4655 * scm/define-context-properties.scm
4656 (all-user-translation-properties): remove align symbol properties
4657 for barnumber/reh. mark.
4659 * lily/break-align-interface.cc (self_align_callback): new
4660 interface, new function. Look at complete alignment. This handles
4661 tunable break alignments in case break-align-symbols are missing.
4663 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4665 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4667 * python/convertrules.py (conv): mark/bar number alignment rule.
4669 * lily/break-align-interface.cc (calc_positioning_done): also
4670 store offset from last visible break-alignment to its
4671 neighbor. This makes alignment on non-visible objects more reliable.
4673 * po/lilypond.pot (Module): ran po-replace.
4675 * input/regression/tie-single-manual.ly (Module): new file.
4677 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4678 look at has_manual_position_.
4679 (from_ties): set has_manual_position_ if tie has staff-position set.
4681 * lily/tuplet-bracket.cc (calc_positions): idem.
4683 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4686 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4688 * scm/define-markup-commands.scm (smallCaps): new markup command
4689 for turning a text to small caps using smaller font size and upper
4692 2006-03-17 Graham Percival <gpermus@gmail.com>
4694 * Documentation/user/ examples, instrument-notation,
4695 advnaced-notation: minor fixes from mailist.
4697 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4699 * Documentation/user/tutorial.itely (First steps): change example
4702 2006-03-17 Graham Percival <gpermus@gmail.com>
4704 * Documentation/user/ examples, advanced: minor changes from mailist.
4706 * THANKS: add Geoff Horton, for documentation stuff.
4708 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4710 * python/lilylib.py (system): revert have_select kludge.
4712 * Documentation/user/tutorial.itely (Commenting input files):
4713 update version numbers in doc.
4715 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4716 bound-padding to multi-measure-interface
4718 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4720 * input/test/engraver-example.ily: update version number.
4722 * VERSION (PACKAGE_NAME): release 2.7.39
4724 * lily/note-spacing.cc (get_spacing): heighten threshold where
4725 accidentals/arpeggios influence previous spacing fully.
4727 * lily/rest.cc (y_offset_callback): only use direction if
4728 staff-position wasn't set before.
4730 * lily/bar-number-engraver.cc: add support for
4731 barNumberAlignSymbol.
4732 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4734 * lily/pointer-group-interface.cc (set_ordered): new function.
4735 (add_unordered_grob): new function.
4737 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4738 to ordered, unless the opposite has been proved. This fixes
4739 random reordering of large object groups across linebreaks,
4742 * lily/main.cc (do_chroot_jail): printf format fix.
4744 * lily/tie-formatting-problem.cc (generate_configuration):
4745 multiply y-shift for dot with direction.
4747 * scm/define-markup-commands.scm (note-by-number): put (magstep
4748 size) in y-attach too.
4750 * Documentation/topdocs/NEWS.tely (Top): show override.
4752 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4753 direction for stems.
4755 2006-03-15 Graham Percival <gpermus@gmail.com>
4757 * Documentation/user/ changing-defaults, global: minor
4760 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4762 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4764 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4765 breakable items after uniformly stretched notes.
4767 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4768 outline with outer edge of note heads. This prevents infinity
4769 problems with tied whole notes.
4771 * scripts/lilypond-book.py (do_file): use os.popen
4773 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4775 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4777 * Documentation/user/invoking.itely: Add ragged-right to bug report
4780 2006-03-14 Graham Percival <gpermus@gmail.com>
4782 * Documentation/user/global.itely: small fix from mailist.
4784 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4786 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4787 file descriptor returned by tempfile.mkstemp() when writing
4788 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4791 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4793 * po/fi.po: newline bugfix.
4795 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4797 * scm/paper.scm (paper-alist): Rounding fixes.
4799 2006-03-13 Graham Percival <gpermus@gmail.com>
4801 * Documentation/user/ changing-defaults, instrument-notation,
4802 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4804 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4808 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4810 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4813 * python/lilylib.py (print_environment): move ps_page_count to
4816 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4818 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4820 * scm/framework-ps.scm (embed-document): new function. Use to
4823 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4825 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4827 * Documentation/user/instrument-notation.itely (Setting simple
4828 songs): Added \book{...} around the full example, so the separate
4829 markups are included in the printed example.
4831 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4833 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4836 * python/lilylib.py (system): rewrite system() using
4837 subprocess. Remove >& redirection trickery.
4839 2006-03-11 Graham Percival <gpermus@gmail.com>
4841 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4842 notation-appendices.itely: minor fixes from mailist.
4844 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4846 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4847 unsplit man also needs images.
4849 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4851 * VERSION (PACKAGE_NAME): 2.7.38 released.
4853 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4855 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4858 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4860 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4861 respects the Score.skipTypesetting property.
4863 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4865 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4866 Prolog. No %%EOF after CFF file.
4868 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4870 * lily/constrained-breaking.cc (get_max_systems): used to return a
4872 (combine_demerits): use pointers to reduce copying data
4873 (calc_subproblem): idem
4874 (get_page_penalty): add page turn penalties
4876 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4878 * Documentation/user/invoking.itely (Invoking lilypond): better
4879 explanation of -e usage.
4881 * lily/main.cc (main_with_guile): don't append to
4882 init_scheme_code_string
4884 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4886 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4888 * scripts/convert-ly.py (do_options): don't print help for
4891 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4892 @code and @example. Update from texinfo.tex from CVS.
4894 2006-03-08 Graham Percival <gpermus@gmail.com>
4896 * Documentation/user/scheme-tutorial.itely: clarifies distances
4897 measured in staff-spaces.
4899 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4901 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4902 consider[k] is true.
4904 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4906 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4907 consider columns that have originals. Unifies spacing for mm
4908 rests around line breaks.
4910 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4911 (set_text_rods): idem.
4912 (calculate_spacing_rods): new function: share code between
4913 set_text_rods and set_spacing_rods.
4914 (set_text_rods): take extents of bounds into account.
4916 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4918 * Documentation/user/basic-notation.itely (Writing music in
4919 parallel): don't use relative.
4921 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4923 * ly/music-functions-init.ly (Module): add shiftDurations
4925 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4927 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4929 * ly/engraver-init.ly: init vocalName to nil.
4931 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4933 * scm/music-functions.scm (music->make-music): bugfix,
4934 KeyChangeEvents are now handled correctly.
4936 * scripts/lilypond-book.py: Add --debug option.
4938 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4940 * python/lilylib.py: add tempfile.
4942 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4944 * VERSION (PACKAGE_NAME): release 2.7.37
4946 * python/lilylib.py (ps_page_count): remove make_ps_images().
4947 (ps_page_count): remove mkdir_p
4948 (system): remove cleanup_temp.
4949 (exit): remove lilypond_version_(check)
4950 (error_log): remove pseudo_filter_p
4955 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4958 * lily/accidental-engraver.cc (make_standard_accidental): only add
4959 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4961 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4962 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4963 Make incompatibilities.
4965 * scm/output-ps.scm (grob-cause): replace backslashes by /
4966 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4968 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4970 * cygwin/GNUmakefile: Install fixes.
4972 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4974 * lily/note-head.cc (head::get_balltype): Compile fix.
4976 * flower/file-name.cc (dos_to_posix): Flower string fix.
4978 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4980 * python/lilylib.py: pychecker cleanups.
4982 * scripts/lilypond-book.py
4983 (Lilypond_snippet.output_print_filename): pychecker cleanups
4985 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4987 * python/lilylib.py (underscore): remove identify() , warranty()
4989 * ps/music-drawing-routines.ps: change Border routine for GSView
4992 * lily/stem.cc (height): use quantize-positions. This triggers
4993 set_stem_lengths, so scripts on beamed stems are handled correctly.
4995 * lily/side-position-interface.cc (aligned_side): check if edges
4996 of script are inside staff. Fixes accent of edge of the staff.
4998 * input/regression/staccato-pos.ly: more examples.
5000 * stepmake/aclocal.m4 (depth): fix bashism.
5002 * lily/lyric-combine-music-iterator.cc: move from
5003 new-lyric-combine-iterator.cc
5004 (process): add pending_grace_lyric_ member to delay lyrics on
5007 * lily/system-start-text.cc (print): suicide if we don't have any
5008 elements. Fixes hara kiri'd instrument names.
5010 * scripts/mup2ly.py (Module): remove.
5012 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5014 * Documentation/user/global.itely (A single music expression):
5015 close @lilypond properly
5017 * lily/volta-bracket.cc (modify_edge_height): change from
5018 after_line_breaking_callback. Suicide last bracket if appropriate.
5020 * python/lilylib.py: strip getopt support
5022 * scripts/etf2ly.py (do_options): use optparse
5024 * scripts/midi2ly.py: optparse, strip lilylib copy.
5026 * scripts/abc2ly.py (voices): use optparse.
5028 * stepmake/stepmake/generic-vars.make: new function absdir.
5030 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5032 * scripts/lilypond-book.py (find_file): use global_options for
5035 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5038 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5040 * python/lilylib.py (get_global_option): ughness for extracting
5041 global options from lilylib.
5042 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5044 * scripts/lilypond-book.py (get_option_parser): use optparse for
5045 option handling. Put options in global_options variable.
5047 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5049 * Documentation/index.html.in: clarify.
5051 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5053 * scm/layout-page-layout.scm (write-page-breaks): add a
5054 music-system-heights property to the page layout output.
5056 * scm/page.scm (make-page-stencil): take footer into account when
5057 computing the 'space-left page property
5058 (annotate-space-left): take footer into account when annonating
5061 2006-02-28 Graham Percival <gpermus@gmail.com>
5063 * Documentation/user/ advanced-notation, global: more (final)
5064 docs for music expressions, removed special fermatas.
5066 2006-02-27 Graham Percival <gpermus@gmail.com>
5068 * Documentation/user/ basic-notation, global: minor changes
5071 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5073 * scm/framework-ps.scm:
5074 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5075 layer for inf? and nan? from framework-ps to lily-library.
5077 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5079 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5080 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5082 * buildscripts/substitute-encoding.py (Module): remove file.
5084 * mf/GNUmakefile: more PFA strippage.
5086 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5088 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5091 * scm/framework-ps.scm: remove font name munging.
5093 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5095 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5097 * scm/markup.scm (define-markup-command): change
5098 def-markup-command to define-markup-command
5100 * scm/music-functions.scm (define-music-function): change
5101 def-music-function to define-music-function.
5103 * python/convertrules.py (conv): rules for def-music-function
5104 and def-markup-commands
5106 * Documentation/user/programming-interface.itely,
5107 input/no-notation/display-lily-tests.ly,
5108 input/regression/lily-in-scheme.ly,
5109 input/regression/markup-user.ly,
5110 input/regression/music-function.ly, input/regression/tie-chord.ly,
5111 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5112 ly/gregorian-init.ly: use new macro names (define-music-function,
5113 define-markup-command).
5115 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5117 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5118 (output): add comments to lp-book latex output.
5120 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5123 2006-02-23 Graham Percival <gpermus@gmail.com>
5125 * Documentation/user/ tutorial, global: minor changes.
5127 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5129 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5130 blocks (for make 3.80)
5132 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5133 \notemode so that user should not have to explicitely type it.
5135 * scm/define-music-display-methods.scm: various
5136 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5139 * input/no-notation/display-lily-tests.ly: new tests for
5140 \applyOutput and \applyContext
5142 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5144 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5145 changed it slightly so that the number of systems returned by
5146 solve () will be the same as the last value passed to resize
5147 (). I've also added more documentation, removed casts, fixed style
5148 problems and put in some recovery if constraints aren't satisfied."
5150 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5152 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5153 for emacs < 22 compatibility.
5154 (count-rexp): Use it.
5155 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5156 substring juggling (Milan Zamazal).
5158 2006-02-23 Graham Percival <gpermus@gmail.com>
5160 * Documentation/user/ basic-notation, advanced-notation,
5161 global.itely, invoking.itely, tutorial,itely:
5162 minor fixes from mailist.
5164 * scm/define-markup-commands.scm: improve docs of \filled-box.
5166 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5168 * Documentation/index.html.in: changes concern the previous release.
5170 * input/regression/+.ly: cultivate typographical terminology.
5172 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5174 * scm/define-grob-interfaces.scm (parentheses-interface): add
5175 padding to parentheses-interface.
5177 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5178 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5180 * VERSION (PATCH_LEVEL): release 2.7.36
5182 * lily/slur.cc: add avoid-slur (ugh.)
5184 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5185 intersection gets smaller. This fixes slurs over extreme points.
5187 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5188 stems with neutral-direction set.
5190 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5192 * lily/open-type-font.cc (load_table): format error.
5194 * lily/change-iterator.cc (process): format fix.
5196 * flower/include/international.hh (_f): idem.
5198 * flower/include/std-string.hh: add format printf attribute.
5200 * scm/define-grobs.scm (all-grob-descriptions): height of all
5201 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5203 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5206 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5208 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5210 * input/regression/: upgraded syntax for some files.
5212 * THANKS: Add bughunters.
5214 2006-02-22 Graham Percival <gpermus@gmail.com>
5216 * Documentation/user/ invoking.itely, advanced-notation.itely,
5217 global.itely: long-awaited "let's make chapter 10 not suck"
5218 update. Rearrange chapter 10; now called "global issues",
5219 addresses file structure, etc. Some info from other files
5220 moved into global.itely.
5222 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5224 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5225 catch trill-span-event notes.
5227 * Documentation/user/examples.itely (Ancient notation templates): typo.
5230 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5232 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5234 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5236 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5238 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5239 froum Laissez_vibrer_engraver.
5241 * ly/declarations-init.ly (repeatTie): add \repeatTie
5243 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5245 * scm/define-grob-properties.scm (all-user-grob-properties): add
5246 head-direction property.
5248 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5249 from_lv_ties. Take head direction argument.
5251 * lily/semi-tie-column.cc: rename from
5252 laissez-vibrer-tie-column.cc. Rename class too.
5254 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5257 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5259 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5261 (find_breaks): idem.
5263 2006-02-21 Graham Percival <gpermus@gmail.com>
5265 * Documentation/user/advanced-notation.itely: fixed make-moment]
5268 * Documentation/user/basic-notation.itely: more clarification to
5271 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5273 * lily/include/constrained-breaking.hh (class
5274 Constrained_breaking): new file.
5276 * lily/constrained-breaking.cc (resize): new file.
5278 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5280 * Documentation/user/advanced-notation.itely (Clusters): insert
5283 * lily/tie-column.cc (calc_positioning_done): support for
5286 * lily/tie-formatting-problem.cc
5287 (generate_extremal_tie_variations): factor out.
5288 (score_ties_configuration): annotate all tie
5289 (print_ties_configuration): new routine.
5290 (generate_configuration): nudge extremal ties outside of the head
5292 (score_ties_configuration): oops. convert to staff-space before
5293 determining position symmetry.
5295 2006-02-20 Graham Percival <gpermus@gmail.com>
5297 * Documentation/user/*-notation.itely: misc minor editing,
5298 shifting doc sections around.
5300 * Documentation/user/*-notation-itely, global.itely,
5301 changing-defaults.itely: added new stuff from NEWS.
5303 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5307 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5309 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5310 lilypond --verbose for lp-book.
5312 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5313 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5315 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5316 $(buildscript-dir) iso. absolute depth.
5318 * buildscripts/genicon.py (dir): thinko.
5320 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5322 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5324 * scm/output-lib.scm: swap darkcyan/darkyellow
5326 * THANKS: Add bughunters.
5328 2006-02-19 Graham Percival <gpermus@gmail.com>
5330 * Documentation/user/programming-interfaces.itely: fixed example.
5332 * Documentation/user/instrument-notation.itely: fix @{ @}.
5334 * scm/script.scm: add avoid-slur for \open.
5336 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5338 * lily/tie-formatting-problem.cc (score_configuration): use
5339 sliding score for min-length.
5341 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5342 spaghetti for icons.
5344 * buildscripts/genicon.py (program_name): new file.
5346 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5348 (generate_configuration): for small ties, also look for collisions
5349 at Y + DIR*h + DELTA_Y.
5350 (get_variations): consider variation for dot positions too.
5352 * lily/side-position-interface.cc (aligned_side): take abs for
5353 quantized rounded position. Fixes tenuto below staff.
5355 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5356 markers when necessary.
5358 * lily/program-option.cc (internal_set_option): add
5359 strict_infinity_checking option.
5361 * scm/output-lib.scm (cyan): swap yellow and cyan.
5363 2006-02-19 Graham Percival <gpermus@gmail.com>
5365 * darwin.patch: trivial linenumber update.
5367 * Documentation/user/ {various}: `\context foo = named' changed
5368 to `\new foo = "name"' in docs.
5370 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5372 * scm/stencil.scm (annotate-y-interval): use it.
5374 * scm/lily-library.scm (interval-sane?): new function.
5376 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5379 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5382 * flower/include/std-vector.hh (iterof): add iterof macro.
5384 * lily/enclosing-bracket.cc (width): new function.
5386 * lily/align-interface.cc (align_elements_to_extents): reinstate
5389 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5391 * Documentation/index.html.in: fix spelling: thankyous.
5393 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5395 * lily/lyric-hyphen.cc: typo.
5397 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5399 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5400 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5403 * VERSION: release 2.7.35
5405 * lily/beam.cc (get_default_dir): oops. Take abs () for
5407 (get_default_dir): use extreme position criterion only in absence
5408 of forced stem directions.
5410 * VERSION (PATCH_LEVEL): bump VERSION.
5412 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5413 dependencies. Necessary for -jX builds.
5415 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5417 * lily/relocate.cc (setup_paths): Yet another const fix.
5419 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5421 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5423 * lily/relocate.cc (setup_paths): oops.
5425 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5427 * Documentation/index.html.in: order links: html before PDF.
5429 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5431 * lily/tie-column-format.cc (Module): remove.
5433 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5435 * lily/text-spanner.cc (print): idem.
5437 * lily/dynamic-text-spanner.cc (print): only print line if longer
5440 * lily/auto-change-iterator.cc (change_to): formatting.
5442 * lily/beam.cc (get_default_dir): take extreme note head as input
5445 * lily/tie.cc (get_default_dir): only look directions for visible
5448 * lily/side-position-interface.cc (aligned_side): oops. Don't
5449 mutiply with direction. This fixes quantized (staccato, tenuto)
5450 scripts below notes.
5452 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5453 direction. Fixes c-lyrics-center-align.ly
5455 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5457 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5460 * lily/std-string.cc:
5461 * lily/include/std-vector.hh (split_string): Move and rename from
5462 lily/include/misc.hh, lily/misc.cc. Update callers.
5464 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5466 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5468 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5470 * flower/test-file.cc: New file.
5472 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5475 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5477 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5479 * flower/include/file-storage.hh: remove file.
5481 * lily/include/midi-item.hh (class Midi_track): idem.
5483 * lily/include/source.hh (class Sources): idem.
5485 * lily/include/performance.hh (class Performance): use vector
5488 * flower/include/cons.hh (class Cons): remove file.
5490 * flower/include/flower-proto.hh: remove template cruft.
5492 * lily/include/font-metric.hh: use size_t not vsize for indices.
5494 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5497 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5499 * lily/include/paper-book.hh (class Paper_book):
5500 make get_system_specs() public.
5502 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5503 the force=10000 case if we don't have a current-best.
5505 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5508 * flower/include/flower-proto.hh: remove outdated templates.
5510 * scm/page.scm: use annotate-spacing
5512 2006-02-15 Graham Percival <gpermus@gmail.com>
5514 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5516 * THANKS: moved Erlend Aasland to contributors.
5518 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5520 * config.hh.in: remove HAVE_PANGO_16
5522 * lily/tuplet-bracket.cc (calc_positions): multiply with
5523 staff-space for beam case. This fixes tuplets+beams on scaled
5526 * config.hh.in: remove all Kpathsea related defines.
5528 * lily/dot-column.cc (side_position): reach stem via dots->
5529 head->stem. Inspect all stems for dot collisions.
5531 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5534 * lily/bar-number-engraver.cc (process_music): document function
5537 * lily/score.cc (default_rendering): add pscore, not systems
5540 * lily/paper-book.cc (get_system_specs): separate generation of
5543 * flower/include/std-vector.hh: don't include config.hh
5545 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5547 * flower/include/std-vector.hh: Better wrapper compatibility with
5550 * flower/include/flower-proto.hh: Remove cheap forward declaration
5553 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5555 2006-02-14 Graham Percival <gpermus@gmail.com>
5557 * Documentation/user/invoking.itely: add warning about command line.
5559 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5561 * lily/include/lily-proto.hh: add Prob, rm Page.
5563 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5565 * VERSION: release 2.7.34
5567 * lily/relocate.cc (framework_relocation): show canary if
5568 GHOSTSCRIPT_VERSION undefined.
5570 * GNUmakefile.in: remove $(VERSION) symlink.
5572 * lily/relocate.cc (setup_paths): add +
5574 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5576 * Documentation/index.html.in: specify sizes for all big HTML pages.
5578 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5580 * config.hh.in: remove @FRAMEWORKDIR@
5582 * lily/system-start-text.cc (get_stencil): new file: separate out
5583 system-start-delimiter text support.
5585 * input/**ly: replace \context with \new where appropriate.
5589 * lily/slur-scoring.cc (get_base_attachments): use
5590 robust_relative_extent. This fixes problems with empty paper-columns.
5592 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5594 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5596 * scm/define-music-properties.scm (all-music-properties):
5597 create-new property.
5599 * lily/context-specced-music-iterator.cc (construct_children):
5600 inspect 'create-new property iso. magical $uniqueContextId context
5603 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5605 * lily/context-key-manager.cc (Module): new file. Encapsulate
5606 object key generation.
5608 * lily/include/context-key-manager.hh (Module): new file.
5610 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5612 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5615 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5617 (reloc_b): excise --enable-framework-dir
5619 * lily/relocate.cc (framework_relocation): use getenv
5620 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5622 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5624 * flower/include/std-string.hh:
5625 * flower/include/std-vector.hh: Finish std:: conversion; move
5626 flower extensions from std:: namespace. Update users.
5628 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5629 their expansion to vector<*>. Update users.
5631 2006-02-10 Graham Percival <gpermus@gmail.com>
5633 * Documentation/user/invoking.itely: add example to File structure.
5635 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5636 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5638 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5640 * ly/paper-defaults.ly: typo.
5642 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5643 set_parent() for parentheses. This will make it show up in bbox
5646 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5647 ly:grob-common* functions.
5649 * lily/grob-scheme.cc (LY_DEFINE):
5650 ly:grob-common-refpoint-of-array: new function
5651 ly:grob-common-refpoint: new function
5652 ly:grob-relative-coordinate: new function
5654 * lily/instrument-name-engraver.cc (process_music): use
5655 Text_interface::is_markup(). This fixes \markup on instrument names.
5657 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5660 * lily/slur.cc (print): idem.
5662 * lily/tie.cc: add line-thickness for ties.
5664 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5666 * scm/output-svg.scm: Document diversion from GNU coding standards
5667 as a workaround for a bug in Microsoft Internet Explorer.
5669 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5671 * lily/instrument-name-engraver.cc (process_music): use
5672 is_markup() iso. is_string()
5674 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5676 * lily/percent-repeat-engraver.cc (process_music): only look at
5677 main_part_ for % repeats.
5679 * lily/stem-tremolo.cc (get_beam_translation): new function.
5680 (calc_slope): new function.
5681 (height): don't use real slope.
5683 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5685 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5686 new connect-to-neighbor, control-points and staff-padding
5687 properties to make ligature brackets showing up again.
5689 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5691 * VERSION: release 2.7.33
5693 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5696 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5697 remove applyOutput example.
5698 (Objects connected to the input): document \tweak, \parenthesize
5700 * lily/relocate.cc (prefix_relocation): allow "current"
5701 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5702 changing VERSION in a lily tree less painful.
5704 * input/regression/parenthesize.ly: new file.
5706 * scm/output-lib.scm (parenthesize-element): new function.
5708 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5710 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5712 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5713 cause: accidentals are caused by note heads, not note events.
5715 2006-02-08 Graham Percival <gpermus@gmail.com>
5717 * darwin.patch: small patch from Erlend, thanks!
5719 * Documentation/user/basic-notation.itely: add stem-neutral example.
5721 * Documentation/user/putting.itely: clarifications.
5723 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5725 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5726 note, add more guidelines to what should go into NEWS.
5728 * input/sakura-sakura.ly: document how to override font.
5730 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5732 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5734 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5736 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5738 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5739 convertrules. Add explicit grouping, needed for python2.2.
5741 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5743 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5745 2006-02-07 Graham Percival <gpermus@gmail.com>
5747 * Documentation/user/global.itely: fix line-width in (text) docs.
5749 * Documentation/user/lilypond-book.itely: same.
5751 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5753 * VERSION (PACKAGE_NAME): release 2.7.32
5755 * Documentation/topdocs/NEWS.tely (Top): document new variable
5758 * flower/include/array.icc (Message): remove file.
5760 * flower/include/std-vector.hh: make sure vsize and VPOS are
5761 defined for binary_search_bounds().
5763 * flower/std-string.cc (std): add to_string(long unsigned).
5765 * configure.in (gui_b): excise std_string option.
5766 (gui_b): excise std_vector option.
5768 * flower/string.cc (Module): excise flower array & string
5770 * flower/include/std-string.hh: excise flower string.
5772 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5774 * python/convertrules.py (lilypond_version_re_str): require
5775 only numbers and dots in \version string.
5777 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5779 * lily/system-start-delimiter.cc (print): allow style = text too.
5781 * lily/system-start-delimiter-engraver.cc
5782 (acknowledge_system_start_text): new function, also add add to
5783 support of system-start-text (instrument names). This fixes
5784 instrument names on piano staves.
5786 * lily/instrument-name-engraver.cc: rewrite. Use
5787 system-start-delimiter approach. This save memory and cpu.
5789 * scm/define-grobs.scm (all-grob-descriptions): remove
5790 instrument-name from break-alignment.
5792 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5794 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5796 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5799 * configure.in (std_vector): On by default.
5801 * lily/include/font-metric.hh:
5802 * lily/include/tfm-reader.hh:
5803 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5806 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5808 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5810 * VERSION (PACKAGE_NAME): 2.7.31
5812 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5813 EPS edge at 0, but take minimum with left-overshoot. This fixes
5814 cut off system start delims.
5816 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5817 hack: add to axis group if not added yet. This fixes hara kiri'd
5820 * lily/hara-kiri-group-spanner.cc
5821 (force_hara_kiri_in_y_parent_callback): fix signatures.
5823 * lily/hairpin.cc (print): check next hairpin to see whether or
5824 not to be continuing.
5826 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5828 * Remove trailing whitespace from makefiles.
5830 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5833 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5835 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5837 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5839 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5841 * configure.in: Use it.
5843 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5845 * scm/music-functions.scm (pitch-of-note): new function.
5847 * ly/music-functions-init.ly: add \octave and \addquote
5849 * lily/parser.yy (music_function_chord_body): softcode \octave.
5850 (lilypond_header): softcode \addquote
5852 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5854 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5855 array.hh, parray.hh at all. Getting ready to flip the
5858 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5860 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5863 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5865 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5867 * flower/include/array.hh: typo.
5869 2006-02-02 Graham Percival <gpermus@gmail.com>
5871 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5873 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5875 * flower/include/pqueue.hh: Derive from std::vector.
5877 * flower/include/parray.hh: Conform to std::vector interface.
5880 2006-02-02 Graham Percival <gpermus@gmail.com>
5882 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5884 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5886 * flower/file-path.cc (is_file): remove if 0 section.
5888 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5889 selecting afii61352.
5891 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5893 * flower/include/std-vector.hh (boundary): Oops, reverse.
5895 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5896 remove superfluous `d'.
5898 * flower/include/std-vector.hh (boundary, top): Detach from class.
5899 Remove empty vector shell.
5901 * flower/include/array.hh (reverse, swap): Detach from class.
5904 * flower/include/std-vector.hh
5905 * flower/include/array.hh (concat): Globally change to insert ().
5908 * flower/include/std-vector.hh
5909 * flower/include/parray.hh
5910 * flower/include/array.hh (elem, elem_ref): Globally replace by
5913 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5915 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5917 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5918 anticipate on identifier substitutions.
5920 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5922 * flower/include/std-vector.hh (insert): Remove, replace by
5923 std::vector interface. Update callers.
5925 * flower/include/array.icc (insert): Change signature to
5926 match std::vector interface.
5928 * flower/include/array.icc (vector_sort): Bugfix.
5930 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5932 * lily/parser.yy (output_def_head_with_mode_switch): new
5933 production. Result: dashes and underscores may be used in the
5936 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5938 * python/convertrules.py (conv): oops. One slash too much.
5940 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5942 * flower/include/std-vector.hh (sort): Remove, replace by
5943 ::vector_sort. Update callers.
5945 * flower/include/std-vector.hh (slice): Remove. Update callers.
5948 * flower/test-std.cc (vector_sort): New test.
5950 2006-02-01 Graham Percival <gpermus@gmail.com>
5952 * Documentation/user/putting.itely: fixes from Erik.
5954 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5956 * flower/test-std.cc: Add simple unit test for vector migration.
5958 * stepmake/stepmake/test*: Unit test support.
5960 * flower/include/std-vector.hh (del): Remove. Use erase (),
5963 * flower/include/array.hh (begin, end): Add.
5966 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5968 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5969 std::string not String.
5971 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5974 * lily/prob.cc (Prob): copy type_ too.
5976 * lily/lily-guile.cc (mangle_cxx_identifier): new
5977 function. Class_bla::foo_bar_[px] ->
5978 ly:class-bla::foo-bar[?!]. Changes throughout
5980 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5982 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5984 * lily/beam.cc (calc_direction): take dir from visible stem in
5987 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5989 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5990 Fix -1, >=0 boundary checks for unsigned vsize.
5992 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5993 loop for unsigned vsize.
5995 * configure.in (--enable-std-vector): New option.
5996 (--enable-std-string): On by default.
5998 * flower/include/std-vector.hh: New file. Enable switch to
5999 std::vector, update client code.
6001 2006-01-30 Graham Percival <gpermus@gmail.com>
6003 * scm/document-translation.scm: clarify "this context is also
6004 known as". Thanks, Werner!
6006 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6008 * Documentation/user/invoking.itely: small fix from Don.
6010 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6012 * scm/lily.scm (define-scheme-options): rename option
6013 preview-include-book-title to book-title-preview
6014 (define-scheme-options): move force-eps-font-include (from paper
6015 block) to eps-font-include -d option.
6017 * VERSION (PATCH_LEVEL): release 2.7.30
6019 * input/bach-schenker.ly (staffPiano): new file.
6021 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6023 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6026 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6028 * ps/lilyponddefs.ps: remove start-system, stop-system,
6029 start-page fluff. This saves putting { } code on the stack, fixing
6030 stack overflows when including EPS files.
6032 2006-01-29 Graham Percival <gpermus@gmail.com>
6034 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6036 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6038 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6040 2006-01-28 Graham Percival <gpermus@gmail.com>
6042 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6044 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6046 * input/mutopia/claop.py: Update.
6048 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6050 * input/regression/completion-heads.ly (texidoc): fix.
6052 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6054 * lily/tie-formatting-problem.cc
6055 (set_ties_config_standard_directions): use abs iso fabs for ints.
6057 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6059 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6060 little less than noteheight, to prevent overlaps in chords.
6062 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6063 head, and fudge stem-attachment.
6065 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6067 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6069 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6071 * lily/main.cc (main): Debugging aid: catch exceptions.
6073 * flower/std-string.cc (to_string): Robustification. Fixes midi
6074 output with std::string.
6076 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6078 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6080 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6082 * Fix -DSTRING_UTILS_INLINED.
6084 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6086 * VERSION (PATCH_LEVEL): release 2.7.29
6088 * lily/relocate.cc (setup_paths): mingw uses std string too.
6090 * lily/*.cc: various fixes for substr(ARG).
6092 * lily/sustain-pedal.cc (print):
6094 * flower/file-name.cc (slashify): use std strings.
6096 * flower/string-convert.cc: remove publib.h
6098 * scm/define-markup-commands.scm (verbatim-file): new markup
6099 command \verbatim-file
6101 * Documentation/topdocs/NEWS.tely: fixup URLs
6103 * input/regression/alignment-vertical-manual-setting.ly (Module):
6106 * lily/align-interface.cc (align_elements_to_extents): overwrite
6107 translations with numbers in alignment-offsets from left bound
6109 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6110 (page-translate-systems): new function: take into account Y-offset.
6112 * Documentation/topdocs/NEWS.tely (Top): document new features.
6114 * input/regression/page-layout-manual-position.ly (Module): new
6117 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6119 * flower/file-path.cc (path::parse_path): Oops.
6121 * Finish std::string interface. For now, use std:: marker
6122 throughout for easy s/r.
6124 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6126 * Documentation/user/putting.itely (Score is a single musical
6128 (Score is a single musical expression): more typos.
6130 * scm/page.scm (annotate-space-left): thinko.
6131 (annotate-page): more thinkos.
6133 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6135 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6136 for different \score blocks separately.
6137 (post-process-pages): put write-page-layout into paper block.
6139 * lily/output-def.cc (get_parser): new file.
6141 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6144 * lily/include/output-def.hh (class Output_def): add parser_ member.
6146 * input/regression/page-layout-twopass.ly (Module): new file.
6148 * scm/lily.scm: remove cpp hack.
6150 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6152 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6154 * GNUmakefile.in (c-clean): New target.
6156 * flower/include/std-string.hh: String/std::string compatibility:
6157 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6160 * flower/rational.cc:
6161 * flower/include/rational.hh:
6164 * flower/include/offset.hh:
6166 * flower/interval.cc:
6167 * flower/include/interval.hh:
6169 * flower/string-convert.cc:
6170 * flower/include/string-convert.hh: Use std::string [interface].
6173 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6175 * Documentation/index.html.in: clean up.
6177 2006-01-25 Graham Percival <gpermus@gmail.com>
6179 * Documentation/user/putting.itely: another new untested doc section.
6181 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6183 * scm/layout-page-layout.scm (write-page-breaks): write
6184 \spacingTweaks #ALIST. Handle grace timing.
6186 * scm/: more imports.
6188 * scm/page.scm (make-page): add footer/header.
6189 (annotate-space-left): revise: only take page argument.
6190 (layout->page-init): new function.
6192 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6193 version of the system/spacing/linebreak hack writing to the output
6195 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6198 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6201 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6203 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6205 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6207 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6208 handling to page.scm
6210 * lily/prob-scheme.cc (LY_DEFINE): new file.
6211 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6213 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6216 * lily/music.cc (derived_mark): derive Music from Prob.
6218 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6220 * lily/prob.cc (Module): Implement Prob (Property Object), object
6221 with shared and r/w property alists.
6223 * lily/include/prob.hh (Module): new file. Declare Prob.
6225 * flower/string.cc: remove is_empty().
6227 * flower/include/string.hh (class String): remove String:: qualifier.
6229 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6230 substitute appropriate functions.
6232 * flower/include/string.hh (class String): remove to_str0 and
6233 is_empty(). S&R everywhere.
6235 2006-01-23 Graham Percival <gpermus@gmail.com>
6237 * Documentation/user/basic-notation.itely: add hairpin
6238 after-linebreak tweak to commonprop.
6240 * Documentation/user/putting.itely: added two new sections.
6242 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6244 * flower/international.cc:
6245 * flower/include/international.hh:
6247 * flower/getopt-long.cc:
6248 * flower/include/getopt-long.hh: Use std::string [interface].
6251 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6253 * stepmake/stepmake/executable-rules.make: Add dependency on
6256 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6258 * flower/file-path.cc:
6259 * flower/include/file-path.hh: Use std::string [interface].
6262 * flower/direction.cc:
6263 * flower/axis.cc: Unused. Remove.
6265 * configure.in (--enable-std-string): New option.
6267 * flower/std-string.cc:
6268 * flower/include/std-string.hh: New file.
6270 * flower/file-name.cc[STD_STRING]:
6271 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6273 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6275 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6277 * scm/define-markup-commands.scm (with-dimensions):
6278 with-dimensions markup command.
6280 * input/test/font-table.ly: use it.
6282 * lily/open-type-font.cc (glyph_list): new function.
6284 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6286 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6288 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6290 * ly/music-functions-init.ly (parallelMusic): new music function
6291 for parallel music entry.
6293 * scm/define-music-properties.scm (all-music-properties): new
6294 'void music property
6296 * scm/music-functions.scm (ly:music-message): make public, to be
6297 used in music function definitions
6299 * scm/lily-library.scm (collect-music-for-book): discard music
6300 when the 'void property is set.
6302 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6304 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6306 * mf/GNUmakefile: idem.
6308 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6310 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6312 * Documentation/user/notation-appendices.itely (The Feta font):
6315 * input/test/font-table.ly: new file. Generate font table within lily.
6317 * Documentation/user/notation-appendices.itely (The Feta font):
6318 use new font-table.ly file.
6320 * stepmake/stepmake/install-out-targets.make
6321 (local-install-outfiles): only create directory if
6322 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6324 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6326 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6328 * VERSION (PACKAGE_NAME): release 2.7.28
6330 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6331 the right font from a Mac dfont.
6332 (write-preamble): don't forget directory, only look at files.
6334 This fixes problems with TTF files in dfonts that don't match
6335 their PostScript names.
6337 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6338 PS name from TTF font.
6340 * input/regression/tie-manual.ly: document new feature.
6342 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6344 * VERSION (MY_PATCH_LEVEL): bump to .28
6346 * Documentation/user/basic-notation.itely (Ties): add tie examples
6349 * lily/tie-formatting-problem.cc (score_ties_configuration):
6350 symmetry penalties for outer ties.
6352 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6354 * lily/tie-formatting-problem.cc (generate_configuration)
6355 (set_manual_tie_configuration): skip non-pair manual
6356 tie-configuration, so you can set individual ties as
6358 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6360 * input/regression/tie-chord.ly: use generateTiePattern to
6363 * lily/tie-formatting-problem.cc (peak_around): new function.
6364 (score_configuration): use sliding criterion for staff line collisions.
6365 (score_configuration): idem for dot collisions.
6366 (generate_configuration): use separate stem_gap for gap to stem.
6368 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6369 separate penalty factors for x and y distance.
6370 (struct Tie_details): separate penalties for tip and center line collisions.
6372 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6374 * lily/tie-formatting-problem.cc (generate_configuration): make
6375 large ties avoid stafflines in the horizontal section.
6376 (score_configuration): use softcoded penalties
6377 (score_aptitude): idem.
6379 * lily/tie-helper.cc (from_grob): softcode tie details
6381 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6383 * lily/staff-symbol-referencer.cc (on_line): rename from
6386 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6388 * ly/music-functions-init.ly: remove duplicate tag.
6390 * lily/include/*.hh: GCC 4.1 fixes.
6392 006-01-16 Erlend Aasland <erlenda@gmail.com>
6394 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6396 * scm/define-music-types.scm: fix bug in desc. string
6397 for OverrideProperty
6399 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6401 * scripts/lilypond-book.py: bugfix
6403 * scm/define-music-types.scm: fix typos.
6405 2006-01-14 Graham Percival <gpermus@gmail.com>
6407 * Documentation/user/ basic-notation.itely, global.itely,
6408 advanced-notation.itely, instrument-notation.itely: small
6409 additions (bugs and commonly tweaked properties).
6411 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6413 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6414 detection of mingw build.
6415 (MINGW_BUILD): opps.
6417 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6419 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6422 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6424 * scm/music-functions.scm (skip->rest): add skip->rest
6426 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6428 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6431 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6432 config dirs. Aids debugging.
6433 (display_config): also display config files.
6435 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6437 * VERSION: release 2.7.27
6439 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6440 for determining bar size.
6442 * lily/staff-symbol.cc (print): place lines at distance line-positions
6444 * scm/define-grob-properties.scm (all-user-grob-properties): add
6447 * lily/staff-symbol.cc (height): new function.
6449 * input/regression/staff-line-positions.ly: new file.
6451 2006-01-06 Graham Percival <gpermus@gmail.com>
6453 * input/test/add-staccato.ly: remove reference to old file.
6455 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6457 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6458 lilypond binary too.
6460 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6462 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6464 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6466 * scripts/midi2ly.py: Bugfix: Declare datadir.
6468 * make/ly-rules.make:
6469 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6470 that seems to be gone). Fixes make web.
6472 * The grand 2005-2006 replace.
6474 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6476 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6478 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6479 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6480 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6481 like -dgs-font-load.
6483 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6484 remove absolute path to lilypond binary.
6486 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6488 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6490 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6492 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6494 * mf/GNUmakefile: remove broken dvips map symlink.
6496 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6499 * configure.in: Cosmetic fixes.
6501 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6503 * Documentation/user/music-glossary.tely (Pitch names): Added
6504 Spanish pitch names and durations, thanks to Ernesto Gancedo
6506 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6508 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6509 init. Fixes verbose printing of .scm files.
6511 * stepmake/aclocal.m4: add spaces before - options.
6513 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6515 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6516 of path search in local block variable.
6518 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6520 * configure.in (NCSB_DIR): --enable-ncsb-dir
6521 (LINK_GXX_STATICALLY): denko.
6523 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6525 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6526 use locate to find c059033l.pfb.
6528 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6530 * lily/tie-formatting-problem.cc
6531 (problem::generate_base_chord_configuration): Use my_round (was
6534 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6535 do not invoke mbrtowc.
6537 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6539 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6541 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6543 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6545 * Documentation/user/invoking.itely (svg): revise.
6547 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6549 * lily/lexer.ll: use sourcefilename iso. renameinput.
6551 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6553 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6554 <PostScriptName>.ttf instead of c059XXXttf.
6556 * lily/program-option.cc (LY_DEFINE): special support for
6557 --verbose, so it works before option init too.
6559 * mf/GNUmakefile (local-install): oops.
6561 * lily/lyric-hyphen.cc (print): oops.
6563 * buildscripts/pfx2ttf.fontforge: new file.
6565 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6566 ($(outdir)/%.ttf): new rule.
6568 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6571 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6574 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6576 * VERSION: release 2.7.26
6578 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6580 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6582 * lily/font-config.cc (init_fontconfig): verbosity.
6584 * THANKS: add Muziekacademie Lede.
6586 * scripts/musicxml2ly.py (print_voice_definitions): new function
6587 (print_score_setup): new function
6588 (convert): read part definition to output staves properly.
6590 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6593 * python/musicexp.py (Output_printer.__init__): use _ in data
6595 (Output_printer.unformatted_output): new function: no formatting,
6597 (Duration.get_length): remove isinstance() checks for
6598 Output_printer everywhere.
6600 * input/regression/lyrics-bar.ly (texidoc): add
6601 Separating_line_group_engraver.
6603 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6605 * lily/relocate.cc (framework_relocation): New function,
6606 factored from set_relocation ().
6607 (prefix_relocation): Rename from set_relocation ().
6608 (setup_paths): Use it.
6610 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6612 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6613 numbers. Patch by Erlend Aasland.
6615 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6617 * lily/font-config.cc (init_fontconfig): print warning if cache
6618 file is not existant.
6620 * lily/main.cc: don't use #ifdef but #if
6622 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6624 * lily/grob-property.cc (internal_set_property): don't abort on
6625 calculation-in-progress.
6627 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6629 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6630 connect-to-neighbor property not connect-to-other
6632 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6633 (LY_DEFINE): oops. don't forget protection.
6635 * flower/parse-afm.cc (Module): strip AFM handling completely.
6637 * lily/stencil-expression.cc: idem.
6639 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6641 * lily/function-documentation.cc (ly_add_function_documentation):
6642 use static member iso. Protected_scm
6644 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6646 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6648 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6650 * lily/relocate.cc (set_env_dir): New function.
6651 (set_relocation): Use it to fix setting PANGO_PREFIX.
6653 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6655 * input/regression/stem-direction-context.ly: remove rest.
6657 * lily/melody-engraver.cc (process_music): restart for bar lines.
6658 (acknowledge_slur): restart for slurs.
6660 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6662 * Documentation/user/invoking.itely: describe how to view SVG
6663 output using Inkscape which replace embedded fonts with OTF fonts.
6665 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6667 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6669 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6671 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6674 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6676 * VERSION (PACKAGE_NAME): release 2.7.25
6678 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6680 * input/regression/stem-direction-context.ly: new file.
6682 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6684 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6687 * ly/engraver-init.ly: add Melody_engraver
6689 * lily/beam.cc (calc_direction): use default-direction
6690 iso. get_default_direction()
6692 * scm/define-grob-properties.scm (all-user-grob-properties): add
6693 default-direction property.
6695 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6697 * lily/stem.cc (calc_default_direction): remove
6698 Stem::get_default_direction, use default-direction with callback
6701 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6703 * lily/melody-engraver.cc: new file. Acknowledge stems for
6704 interpolated stem directions.
6706 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6708 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6710 * lily/slur-configuration.cc (fit_factor): more robust check for
6711 point in curve X-extent.
6713 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6714 (outside_slur_callback): check for 'outside avoidance.
6716 * lily/slur-configuration.cc (score_extra_encompass): don't use
6717 bound->column() == avoid->column() for checking extents, as this
6718 doesn't work for accidentals.
6720 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6721 DynamicText hardcoding.
6723 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6724 crash if bound stem is NULL
6726 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6729 2005-12-22 Graham Percival <gpermus@gmail.com>
6731 * scm/define-markup-commands.scm: typo. @code{\raise}
6734 * darwin.patch: now used again, includes a
6735 required patch from fink.
6737 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6739 * po/TODO: mention gtranslator along with kbabel.
6740 * po/fi.po: update translations.
6742 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6744 * lily/relocate.cc (setup_paths): Bugfix.
6746 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6748 * lily/slur-configuration.cc (score_extra_encompass): don't use
6749 "avoid" choice for avoid-slur.
6751 * stepmake/bin/install.py (dest): don't create existing dir.
6753 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6755 * stepmake/bin/install.py: Remove file before copying.
6758 * stepmake/aclocal.m4: Do not substitute INSTALL.
6760 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6762 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6763 depend on link-tree.
6765 * lily/relocate.cc (setup_paths): only check path for non-absolute
6766 dir without directory part.
6768 * flower/file-name.cc (is_absolute): new method.
6769 (is_absolute): check root_ too.
6771 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6773 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6774 relocation code. Oops, don't comment out too much.
6776 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6779 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6782 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6784 * .cvsignore: Add install-sh.
6786 * autogen.sh (srcdir): Typo.
6788 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6790 * autogen.sh (srcdir): urg. Touch install-sh.
6792 * stepmake/bin/install-sh (Module): remove.
6794 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6796 * lily/include/relocate.hh: new file.
6798 * lily/relocate.cc: new file. Contain relocation logic.
6800 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6801 (main): read LILYPOND_VERBOSE as the first thing.
6803 * stepmake/aclocal.m4: remove INSTALL variable.
6805 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6806 separate target for making font symlinks.
6807 (documentation-dir): use $(if $(findstring )) for switching off
6810 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6811 something if DOCUMENTATION is no.
6813 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6815 * VERSION: release 2.7.24
6817 * lily/script-column-engraver.cc (stop_translation_timestep):
6818 delay adding to script-column.
6820 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6822 * python/convertrules.py (conv): rule for number-visibility
6824 * lily/slur-configuration.cc (score_extra_encompass): different
6825 distance measure for avoid and inside avoidance.
6826 (score_extra_encompass): use 1/(distance+eps) as penalty.
6828 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6829 encompass objects for generating slur curves.
6831 * lily/slur.cc: use details iso. slur-details property.
6833 * input/regression/slur-tuplet.ly: new file.
6835 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6837 * flower/include/offset.hh (class Offset): new operator /=
6839 * lily/tuplet-number.cc (print): new file, new interface.
6841 * scm/define-grob-properties.scm (all-user-grob-properties):
6842 remove number-visibility property.
6844 * lily/tuplet-bracket.cc (calc_control_points): new function
6845 (calc_connect_to_neighbors): new function.
6846 (print): remove text handling for tuplet numberdef.
6848 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6851 * lily/lily-guile.cc (robust_scm2booldrul): new function
6853 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6855 * lily/tuplet-bracket.cc (calc_position_and_height): use
6856 staff-padding to control whether tuplet brackets are over staves.
6858 * lily/grob.cc (suicide): clear dim_caches_.
6860 * lily/dimension-cache.cc (clear): new function.
6862 * lily/grob.cc (extent): swap order of min-extent and extent
6863 calculations. This fixes hara kiri staves.
6865 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6867 * lily/main.cc: Nitpick: relocation is not based on path, but on
6868 directory (location).
6870 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6872 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6874 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6876 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6878 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6880 * stepmake/stepmake/generic-vars.make (Module): idem.
6882 * stepmake/stepmake/executable-targets.make (default): use it.
6884 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6886 * make/GNUmakefile: don't install make rules.
6888 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6890 (prepend_env_path): more verbosity.
6892 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6894 * GNUmakefile.in: add dir argument for find command.
6896 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6897 fixes weird line numbers for point & click.
6899 * lily/source-file.cc (get_counts): init line/column/char counts.
6901 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6903 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6905 2005-12-16 Graham Percival <gpermus@gmail.com>
6907 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6908 minor fixes from Fredric. Thanks!
6910 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6912 * ly/music-functions-init.ly: add \bar and \clef music function
6914 * lily/lily-lexer.cc: idem.
6916 * lily/parser.yy (FIXME): remove BAR and CLEF.
6918 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6920 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6922 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6923 function arguments too
6925 * lily/main.cc (set_relocation): new function.
6927 * scripts/musicxml2ly.py (convert): add \version
6929 * lily/tie.cc: remove get_default_attachments()
6931 * VERSION (PACKAGE_NAME): release 2.7.23
6933 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6934 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6936 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6938 * lily/tie-formatting-problem.cc (score_ties): new function
6939 (get_variations): new function. Try flipping dirs for collisions.
6940 (generate_optimal_chord_configuration): new function. 1-opt search
6941 for better configuration.
6943 * lily/tie-configuration.cc: new file.
6945 * lily/tie.cc: junk Tie::get_configuration()
6947 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6948 (score_ties_configuration): new function.
6949 (generate_ties_configuration): new function.
6950 (generate_base_chord_configuration): new function.
6951 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6952 (set_manual_tie_configuration): Move body from tie-column-format.cc
6954 * input/regression/tie-dot.ly: new file.
6956 * lily/tie-formatting-problem.cc (score_configuration): score
6959 * lily/tie-helper.cc (get_transformed_bezier): new function
6961 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6963 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6964 -undefined suppress iso. -framework Python
6966 * scm/define-grobs.scm (all-grob-descriptions): set
6967 springs-and-rods (thanks Joe Neeman!)
6969 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6971 * input/no-notation/display-lily-tests.ly (test):
6972 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6973 changed from \tag #'(a b) to \tag #'a \tag #'b
6975 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6977 * Documentation/topdocs/NEWS.tely: strip out-www.
6979 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6981 * config.make.in (AR): add AR and RANLIB
6983 * flower/libc-extension.cc: include cassert
6985 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6988 2005-12-11 Graham Percival <gpermus@gmail.com>
6990 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6992 * stepmake/stepmake/python-modules-vars.make: define
6993 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6995 * THANKS: added Johannes Schindelin.
6997 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6999 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7001 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7002 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7004 * lily/parser.yy: reorganize file layout.
7006 * ly/music-functions-init.ly: add tweak music function.
7008 * lily/grob-info.cc (ultimate_music_cause): new function:
7009 recursively lookup causes.
7011 * lily/parser.yy (chord_body_element): allow music functions for
7012 post-events, allow music functions for chord elements.
7014 * lily/font-config-scheme.cc (display_fontset): add cast.
7016 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7017 #'(a b) -> \tag #'a \tag #'b rule.
7019 * python/musicexp.py (Output_printer.dump_version): new function
7021 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7023 * lily/parser.yy (FIXME): remove \tag
7024 (FIXME): remove tag_music() function.
7026 * lily/lily-lexer.cc: remove \tag
7028 * ly/music-functions-init.ly: define music-function "tag"
7030 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7032 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7034 * VERSION (PATCH_LEVEL): release 2.7.22
7036 * input/regression/lyric-hyphen-retain.ly: renew.
7038 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7041 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7042 iso. minimum-length property for rods.
7044 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7045 LyricSpace item to keep lyrics spaced apart.
7047 * ly/engraver-init.ly: remove Separating_line_group_engraver
7049 * Documentation/user/music-glossary.tely: do setfilename before
7052 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7054 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7055 See xref documentation, for example.
7057 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7059 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7060 pending_skip iso. ly_voice[-1]
7061 (main): add if __main__ for debugging.
7063 * python/musicxml.py (Accidental.__init__): new class.
7065 * scripts/musicxml2ly.py (progress): new function
7066 (musicxml_key_to_lily): don't barf on modeless keys.
7067 (create_skip_music): new function.
7068 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7069 (musicxml_note_to_lily_main_event): new function.
7071 * python/musicexp.py (Music.__init__): add comment field.
7072 (NestedMusic.append): new routine.
7073 (SequentialMusic.print_ly): print comment.
7074 (ArpeggioEvent.ly_expression): new class
7075 (BeamEvent.ly_expression): new class
7076 (NoteEvent.__init__): support for cautionary/forced accs.
7078 * lily/lookup.cc (slur): normal order for array loop.
7080 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7083 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7086 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7088 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7090 * scripts/lilypond-book.py: Introduce option
7091 --preserve-line-breaks, for usage with srcltx
7093 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7095 * scm/output-lib.scm (print-circled-text-callback): draw circle
7096 around text using make-circle-markup.
7098 * Documentation/user/*: strip out-www from file names.
7100 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7102 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7103 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7105 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7107 * Documentation/user/GNUmakefile: idem.
7109 * Documentation/user/macros.itexi: strip out-www
7111 * python/rational.py: python 2.3 compat.
7113 * VERSION (PATCH_LEVEL): release 2.7.21
7115 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7116 option formatting, lilypond style.
7118 * python/musicexp.py: grab from Ikebana: a library for composing
7119 ly music expressions.
7120 (Output_printer): class for advanced .ly printing.
7123 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7124 convert to pythonesque structure.
7126 * python/rational.py: PD rational number class.
7128 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7130 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7132 * lily/part-combine-iterator.cc: Minor bugfix
7134 * THANKS: Update bughunters
7136 2005-12-02 Werner Lemberg <wl@gnu.org>
7138 * mf/README: Document process for proper mf2pt1 conversion.
7140 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7143 * mf/feta-harmonica.mf: Removed. Unused.
7145 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7147 * scripts/lilypond-book.py (do_file): fix thinkos.
7149 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7151 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7152 ($(outdir)/parser.cc):
7153 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7155 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7157 * ly/titling-init.ly (tagline): it should be a space between
7158 "Music engraving by LilyPond" and the version number.
7160 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7162 * VERSION (PACKAGE_NAME): release 2.7.20
7164 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7166 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7168 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7170 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7172 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7174 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7176 * kpath-guile/: remove directory
7178 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7179 file. Encapsulate kpathsea using commandline tools.
7181 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7184 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7186 * Documentation/user/advanced-notation.itely (Setting automatic
7187 beam behavior): Correct a few typos. Thanks to David Bobroff.
7189 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7190 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7192 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7194 * scripts/*.py: gmane address for bugs.
7196 2005-11-28 Pal Benko <benkop@freestart.hu>
7198 * make/ly-rules.make: add -f switch to mv
7200 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7202 * lily/bar-line.cc: interpret it
7204 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7206 * configure.in (--disable-documentation): New switch.
7208 * GNUmakefile.in: Use it.
7210 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7212 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7214 * scripts/lilypond-book.py (do_file): search chunks for
7217 * GNUmakefile.in: add copy step in between so we can lose the
7218 out-www directories.
7220 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7222 * lily/pango-font.cc (pango_item_string_stencil): put
7223 geometry.width into glyph-string too.
7225 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7227 * scm/define-music-display-methods.scm (RevertProperty):
7228 (OverrideProperty): Use grob-property-path property, a list of
7229 symbols, instead of grob-property, which used to be a single
7231 (BassFigureEvent): a figure can be a plain number, not necessarily a
7234 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7236 * VERSION: release 2.7.19
7238 * lily/figured-bass-engraver.cc (process_music): check
7239 figuredBassCenterContinuations first.
7241 * scm/translation-functions.scm (format-bass-figure): make double
7244 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7247 * lily/system-start-delimiter-engraver.cc: move from
7248 Nested_system_start_delimiter_engraver, rename
7249 Nested_system_start_delimiter_engraver ->
7250 System_start_delimiter_engraver.
7252 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7253 bracket type from hierarchy.
7255 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7257 * lily/rest.cc (y_offset_callback): read staff-position.
7259 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7260 mark after-line-breaking-callback as internal.
7262 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7264 2005-11-25 Werner Lemberg <wl@gnu.org>
7266 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7268 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7270 * stepmake/bin/add-html-footer.py (do_file): add google
7272 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7273 staff if first_start_ is true.
7275 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7277 * scripts/midi2ly.py (split_track): add __repr__ members.
7278 (track_first_item): only return Item if not None. This fixes a
7279 problem when dumping a track that starts with an empty channel.
7281 * python/midi.c: doc module.
7283 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7285 * Documentation/user/global.itely (Creating MIDI files): Fix
7286 compilation problem.
7288 2005-11-22 Graham Percival <gpermus@gmail.com>
7290 * Documentation/user/basic-notation.itely: clarify dynamic
7293 * Documentation/user/advanced-notation.itely: add unicode
7294 escape control example, whatever that is. :)
7296 * Documentation/user/global.itely: added "removing dynamics
7299 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7301 * VERSION (PATCH_LEVEL): release 2.7.18
7303 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7304 System_start_delimiter_engraver by
7305 Nested_system_start_delimiter_engraver.
7307 * lily/nested-system-start-delimiter-engraver.cc (struct
7308 Bracket_nesting_node): new class.
7309 (struct Bracket_nesting_group): new class
7310 (struct Bracket_nesting_staff): new class.
7311 (process_music): create hierarchy of grobs. This allows separate
7312 tuning of different SSDs.
7314 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7315 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7317 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7319 * lily/side-position-interface.cc (aligned_side): multiply
7322 * lily/script-engraver.cc (make_script_from_event): allow setting
7325 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7327 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7329 * scm/define-grobs.scm (all-grob-descriptions): new grob
7330 NestedSystemStartDelimiter.
7332 * input/regression/system-start-heavy-bar.ly: new file.
7334 * lily/nested-system-start-delimiter-engraver.cc: new file.
7336 * lily/nested-system-start-delimiter.cc: new file.
7338 * input/regression/system-start-nesting.ly: new file.
7340 * scm/define-grobs.scm (all-grob-descriptions): use X side
7341 positioning for positioning braces for nested contexts.
7343 * lily/system-start-delimiter.cc (print): don't divide extent by
7345 (print): use style iso. glyph.
7346 (staff_bracket): translate glyph inside routine already.
7348 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7350 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7353 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7355 * scm/define-context-properties.scm
7356 (all-user-translation-properties): rename figuredBassFormatter
7357 from newFiguredBassFormatter.
7359 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7361 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7363 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7365 * lily/beam.cc (calc_beaming): new function.
7366 (calc_shorten): new function.
7368 * THANKS: add Edward Neeman.
7370 * input/regression/accidental-clef-change.ly: new file.
7372 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7374 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7376 * lily/clef-engraver.cc (inspect_clef_properties): reset
7377 localKeySignature for clef changes.
7379 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7381 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7382 add dummy definition that works in Linux and add information in
7383 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7385 * Documentation/user/changing-defaults.itely (Modifying context
7386 plug-ins): Add index for \with.
7388 * Documentation/user/music-glossary.tely (dal segno): Updated
7389 example to version >=2.6.
7391 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7393 * Documentation/user/instrument-notation.itely (Printing chord
7394 names): Reorder \chordmode and \repeat in one example.
7396 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7398 * VERSION: release 2.7.17
7400 * Documentation/topdocs/NEWS.tely (Top): add note about
7403 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7404 new function. Search region of 3 positions for best tie.
7405 (score_configuration): new function.
7406 (score_aptitude): new function.
7407 (generate_configuration): new function.
7408 (get_configuration): new function.
7409 (Tie_formatting_problem): new function
7411 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7413 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7415 * THANKS: add Eduardo Vieira & Ralph Little
7417 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7420 * lily/include/tie-formatting-problem.hh (class
7421 Tie_formatting_problem): add Tie_details to
7422 Tie_formatting_problem. Update calling conventions.
7424 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7427 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7429 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7431 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7432 scm/define-context-properties.scm: Maintenance bugfix: make
7433 ligature brackets work again by removing obsolete ligature
7434 primitive callback push/pop.
7436 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7437 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7440 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7442 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7443 used and do not call it a path.
7444 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7446 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7448 * lily/include/tie-formatting-problem.hh (class
7449 Tie_formatting_problem): new file.
7451 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7453 * Documentation/misc/ChangeLog-2.3: new file.
7455 * lily/audio-staff.cc (output): degarianize.
7457 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7459 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7460 Unset PYTHONOPTIMIZE. Fixes install if set.
7462 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7464 * python/convertrules.py (conv): add warning about drums.
7466 * make/stepmake.make: include toplevel-version.make after config.make.
7468 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7469 also allow python2.4
7471 * config.make.in (configure-srcdir): remove GXX GCC vars.
7473 * stepmake/aclocal.m4: don't do non-srcdir build with
7474 symlinks. Use inclusion, so the src directory name can be changed.
7476 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7478 * make/mutopia-vars.make:
7479 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7482 2005-11-13 Werner Lemberg <wl@gnu.org>
7484 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7485 but the affected path. This ensures that the (overlapping) outlines
7486 have the same direction, which is a necessary prerequisite for
7487 FontForge's algorithm to remove overlaps.
7490 * mf/feta-haak.mf: Formatting.
7491 (draw_bracket): Slightly modify outline to avoid an unnecessary
7493 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7494 them from the affected paths.
7496 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7498 * mf/README: remove xpm / accordion notes.
7500 * lily/tie-column-format.cc (set_chord_outline): add dots into
7501 skyline extents. This fixes tie formatting if the left head has dots.
7503 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7504 space inside the staff.
7505 (get_configuration): shift another position if necessary in case
7508 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7510 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7511 buildscript-dir iso. $(depth)/buildscripts.
7513 * tex/GNUmakefile (local-uninstall): remove
7514 music-drawing-routines.ps juggling.
7516 * stepmake/stepmake/install-targets.make (local-install-files):
7517 prepend src-dir to install targets.
7519 * lily/system-start-delimiter-engraver.cc
7520 (acknowledge_system_start_delimiter): use
7521 add_offset_callback(). This fixes translation of nested
7524 * lily/grob-closure.cc (add_offset_callback): only encaps in
7525 simple_closure if it's a procedure.
7527 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7530 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7531 remove-empty where pertinent.
7533 2005-11-12 Graham Percival <gpermus@gmail.com>
7535 * Documentation/user/instrument-notation.itely: added
7536 Cameron Horsburgh's multiple stanzas docs. Thanks!
7538 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7541 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7542 make picture in builddir, not srcdir.
7544 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7546 * VERSION: release 2.7.16
7548 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7551 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7553 * Documentation/user/examples.itely (Piano templates): Minor
7554 modification to the Piano centered lyrics example.
7556 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7558 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7561 * Documentation/user/point-and-click.itely: simplify p&c
7562 instruction: don't configure firefox. Put lilypond-invoke-editor
7563 in front of the browser.
7565 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7566 (run-browser): new function.
7568 * lily/parser.yy (Lily_lexer): recognize Book
7570 * lily/book.cc (clone): new function
7572 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7574 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7576 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7577 Maintenance bugfix: reduce number of font related warnings by
7578 updating naming conventions for glyph-name.
7580 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * scm/define-grobs.scm (all-grob-descriptions): add
7583 rhythmic-grob-interface to TabNoteHead.
7585 * scm/layout-beam.scm (check-quant-callbacks): remove
7588 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7590 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7591 alignment of centered divisiones.
7593 * scm/scripts.scm (articulations): Maintenance bugfix:
7594 follow-into-staff -> quantize-position.
7596 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7597 plica head in porrectus deminutus.
7599 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7601 * make/lilypond.fedora.spec.in (Group): add %clean section.
7603 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7604 less then 1/5th of total length.
7605 (print): use gap too. Fixes tupletUp-single-bracket.ly
7607 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7608 events into EventChord. This fixes textspanners on mm rests. Fixes
7611 * lily/side-position-interface.cc (get_axis): read side-axis
7612 (set_axis): set side-axis.
7614 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7615 properties everywhere.
7617 * lily/spacing-spanner.cc (breakable_column_spacing): add
7618 average-spacing-wishes. Take maximum if not set.
7619 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7621 * scm/define-grobs.scm (all-grob-descriptions): add
7622 average-spacing-wishes.
7624 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7625 offset callbacks. This fixes alignment for Fingering objects.
7627 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7628 space for key - timesig combination.
7630 * input/regression/script-stem-tremolo.ly (Module): new file.
7632 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7635 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7636 Fixes: c-tremolo-script.ly.
7638 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7640 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7642 * scm/define-grobs.scm (all-grob-descriptions): remove
7643 self-X-offset. Fixes alignment of octavate-8.
7645 * scripts/lilypond-book.py (datadir): look in
7646 LILYPONDPREFIX/share/lilypond/current/
7648 * GNUmakefile.in: symlink current to <VERSION>.
7650 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7652 * lily/main.cc: eps listed as a backend.
7654 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7656 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7658 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7660 * lily/include/score.hh (class Score): remove texts_ member.
7662 * lily/beam.cc (set_stem_lengths): force direction callback.
7663 (print): read quantized-positions, so we can force
7664 Beam::set_stem_lengths to occur.
7665 (rest_collision_callback): use common X parent.
7667 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7669 * flower/file-path.cc (find): Bugfix: Return name of file found.
7671 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7672 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7673 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7675 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7677 * flower/offset.cc: idem.
7679 * mf/*.mf: update email address.
7681 * lily/font-config-scheme.cc: new file.
7683 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7685 * lily/*: cs.uu.nl -> xs4all.nl
7687 * VERSION (PATCH_LEVEL): release 2.7.15
7689 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7692 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7694 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7696 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7698 * lily/staff-performer.cc (process_music): add audio
7699 elements. This makes MIDI instrument changes work once again.
7701 * lily/main.cc (LY_DEFINE): add gmane address.
7703 * lily/beam.cc: remove calc_positions()
7705 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7706 original_ in private scope.
7707 (class Grob): drop pscore_ pointer, change to output_def pointer.
7708 (class Grob): cleanup class definition.
7710 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7712 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7714 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7715 absolute. Better diagnostics.
7717 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7718 This makes lilypond run from the build directory using argv0
7719 relocation (without any --prefix or LILYPONDPREFIX setting).
7721 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7723 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7725 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7726 with simple-closure.
7728 * lily/self-aligment-interface.cc (set_align_self): new function
7729 (set_center_parent): new function.
7731 * lily/side-position-interface.cc (set_axis): new function.
7733 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7736 * scm/define-grob-properties.scm (all-user-grob-properties):
7737 remove [XY]-offset-callbacks add [YX]-offset
7739 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7741 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7742 entry for time signatures after breathing signs. Bug report by
7745 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7747 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7748 not absolute, make it absolute using PATH.
7750 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7752 * python/midi.c (initmidi): Fix type for mingw.
7754 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7756 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7758 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7761 * stepmake/aclocal.m4: Support python cross compiling.
7763 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7766 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7768 * scm/output-lib.scm (chain-grob-member-functions): replace
7771 * lily/chained-callback.cc (Module): remove file.
7773 * lily/rest-collision.cc (force_shift_callback_rest): change to
7776 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7778 * lily/grob.cc (y_parent_positioning): remove axis argument from
7779 parent_positioning callbacks.
7780 (Grob): junk init code
7781 (get_offset): use generic property callbacks for
7782 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7783 (axis_parent_positioning): new function
7784 (axis_offset_symbol): new function
7785 (chain_offset_callback): new function
7786 (add_offset_callback): new function
7788 * lily/beam.cc (rest_collision_callback): change signature; this
7789 is now a chained callback.
7791 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7792 callback administration.
7794 * lily/simple-closure.cc: new file. Smob type that allows "grob
7797 (ly:make-simple-closure FUNC A B)
7799 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7802 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7805 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7807 * lily/rest.cc (polyphonic_offset_callback): remove.
7809 * lily/script-engraver.cc (try_music): remove bool* argument.
7811 * scm/script.scm (default-script-alist): set quantize-position
7814 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7816 * lily/side-position-interface.cc (aligned_side): move staff
7817 position quantization from
7818 Side_position_interface::quantised_position().
7819 (quantised_position): remove
7821 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7823 * input/regression/beam-quant-standard.ly: reindent, set
7824 debug-beam-quanting to #t.
7826 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7827 10000 if this is a "hard" concave beam.
7829 * lily/beam.cc (calc_least_squares_positions): change from
7830 calc_least_squares_dy
7831 (set_stem_lengths): this is now a chained callback.
7833 * lily/context-property.cc (execute_general_pushpop_property):
7834 bugfix override with procedure should have effect.
7836 * scm/define-grob-properties.scm (all-internal-grob-properties):
7837 remove position-callbacks.
7839 * scm/define-grobs.scm (all-grob-descriptions): use
7840 ly:make-callback-chain for positions property.
7842 * scm/layout-beam.scm (check-quant-callbacks): return list of
7845 * scm/lily.scm (type-p-name-alist): add callback-chain
7847 * lily/lily-guile.cc (type_check_assignment): type check failure
7848 is warning not message.
7850 * lily/grob-property.cc (try_callback): walk callback chain if
7853 * lily/chained-callback.cc: new file. new smob type.
7855 * lily/lily-guile.cc (procedure_arity): new function.
7857 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7859 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7861 2005-10-25 John Mandereau <john.mandereau@free.fr>
7863 * Documentation/user/instrument-notation.itely (Figured bass):
7864 describe new features
7866 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7868 * lily/beam.cc (calc_least_squares_dy): use property callback.
7870 * lily/beam-concave.cc (calc_concaveness): use property callback.
7872 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7874 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7878 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7880 * scm/layout-page-layout.scm (page-headfoot): annotate
7883 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7885 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7886 doesn't take y-space.
7888 * scm/paper.scm (paper-alist): fix A7 dimensions.
7890 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7892 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7893 src-wildcard, remove $(wildcard).
7895 * po/GNUmakefile (PO_FILES):
7896 * ps/GNUmakefile (PS_FILES):
7897 * tex/GNUmakefile (TEX_FILES):
7898 * cygwin/GNUmakefile (POSTINSTALLS):
7899 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7900 some wildcard calls.
7902 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7904 * THANKS: add Thomas Bushnell.
7906 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7908 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7909 (lilypond-main): Redirect to gui-main if 'gui is set.
7911 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7912 for alternative installations kludging s/share/lib/g
7915 * SConstruct (libdir_package_version): Define.
7917 * python/SConscript:
7918 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7921 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7923 * lily/main.cc: clarify --safe.
7925 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7927 * VERSION: release 2.7.14
7929 * Documentation/user/*.itely: remove minimumVerticalExtent.
7931 * scm/define-grobs.scm (all-grob-descriptions): remove
7932 RemoveEmptyVerticalGroup
7934 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7936 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7939 * python/convertrules.py (conv): add rules.
7941 * lily/grob.cc: remove is_empty()
7943 * lily/grob-property.cc: remove add_to_list_property().
7945 * scripts/convert-ly.py (datadir): add prefix switching hack to
7948 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7949 space-function tweak.
7951 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7953 * scm/define-grob-properties.scm (all-user-grob-properties):
7954 remove callback property.
7956 * lily/include/grob.hh (class Grob): remove property_callbacks_
7957 member. Properties of procedure type are assumed to be callbacks.
7959 * lily/ligature-engraver.cc (override_stencil_callback):
7960 rewrite. Use noteHeadLigaturePrimitive as source.
7962 * scm/define-grob-properties.scm (all-internal-grob-properties):
7963 remove ligature-primitive-callback
7965 * lily/include/dimension-cache.hh (class Dimension_cache): make
7966 class, with Grob as friend.
7968 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7969 has_extent_callback()
7971 * scm/translation-functions.scm (format-new-bass-figure): read
7972 figuredBassPlusDirection
7974 * scm/define-context-properties.scm
7975 (all-user-translation-properties): add figuredBassPlusDirection.
7977 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7979 * lily/align-interface.cc (set_ordered): new function.
7981 * lily/grob.cc (flush_extent_cache): rewrite.
7983 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7984 Interval pointer directly.
7986 * lily/main.cc (setup_paths): insert extra / .
7987 (setup_paths): junk cff entry.
7989 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7992 * lily/axis-group-engraver.cc (finalize): remove
7993 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7995 * lily/grob.cc (Grob): don't set extent from ctor.
7996 (extent): use property callbacks.
7998 * lily/axis-group-interface.cc: remove set_axes() function.
8000 * lily/grob-property.cc (del_property): new function.
8002 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8004 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8006 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8008 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8010 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8012 * mf/SConscript: Updates.
8014 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8016 * stepmake/stepmake/*:
8020 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8021 from any directory in build-dir. Cleanups.
8023 * make/srcdir.make.in: Remove.
8025 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8027 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8030 * lily/SConscript: Remove ttftools.
8032 * SConstruct: Resurrect.
8034 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8036 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8039 * lily/paper-book.cc (add_score_title): put Paper_score title into
8042 * scm/translation-functions.scm (format-new-bass-figure): also
8043 allow plus in combination with _
8045 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8047 * VERSION: 2.7.13 released.
8049 * lily/note-collision.cc (check_meshing_chords): don't wipe
8050 stencil, merely set transparent.
8052 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8053 (Top): document #'callbacks.
8054 (Top): document nested \override.
8056 * input/regression/figured-bass.ly: update for slash and pluses.
8058 * input/regression/figured-bass-continuation-forbid.ly (Module):
8061 * scm/translation-functions.scm (format-new-bass-figure): use
8062 slashed-digit if diminished is set.
8063 (format-new-bass-figure): add + if 'augmented is set.
8065 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8067 * input/test/piano-staff-distance.ly: remove file.
8069 * Documentation/user/advanced-notation.itely (Formatting cue
8070 notes): use length-fraction for making stems/beams smaller.
8072 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8075 * lily/new-figured-bass-engraver.cc: new property
8076 centerFiguredBassContinuations
8078 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8081 * lily/context-property.cc (execute_general_pushpop_property):
8084 * input/regression/override-nest.ly: new file.
8086 * python/convertrules.py (FatalConversionError.subber): conversion
8087 rule for #'callbacks
8089 * input/regression/override-nest.ly: new function.
8091 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8094 * lily/context-property.cc (lookup_nested_property): new function.
8095 (evict_from_alist): new function.
8096 (general_pushpop_property): new function.
8097 (execute_general_pushpop_property): rewrite. Support nested
8100 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8102 * lily/beam.cc: use length-fraction too.
8104 * scm/define-grob-properties.scm (all-user-grob-properties):
8105 remove property flag-width-function
8106 (all-user-grob-properties): remove space-function.
8108 * scm/layout-beam.scm: remove flag-width-function.
8110 * lily/beam.cc: remove flag-width-function
8112 * scm/layout-beam.scm: remove beam dir functions.
8114 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8116 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8117 for easier grace tweaks.
8119 * lily/beam.cc: remove dir-function.
8121 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8123 * lily/grob.cc: remove spacing-procedure.
8125 * lily/note-head.cc (calc_stem_attachment): new function.
8126 (internal_print): use callback to get glyph-name.
8128 * lily/grob-property.cc (get_interfaces): new function.
8130 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8132 * lily/stem.cc (calc_stem_end_position): new function.
8133 (calc_length): new function.
8134 document details for stem.
8135 remove Stem::get_direction()
8137 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8139 * lily/grob-property.cc (set_callback): new function.
8141 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8143 * lily/item-scheme.cc: new file.
8145 * lily/bar-line.cc (before_line_breaking): remove function.
8146 remove bar-size-procedure, break-glyph-function
8148 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8150 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8152 * lily/system-start-delimiter.cc (print): suicide from
8153 here. Remove after_line_breaking_callback.
8155 * lily/script-interface.cc (calc_direction): use callback for direction.
8157 * lily/side-position-interface.cc (aligned_side): don't use
8158 Side_position_interface::get_direction directly. Use callback.
8160 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8162 (get_print_stencil): rename from get_stencil: create stencil with
8163 transparency, color and cause.
8165 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8167 * python/convertrules.py (conv): insert temporary warning rule.
8169 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8171 * lily/grob-property.cc (try_callback): remove marker if applicable.
8173 * lily/grob.cc: elucidate doc about after/before-line-breaking
8175 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8177 * lily/stem.cc (height): idem.
8179 * lily/stem-tremolo.cc: idem.
8181 * lily/slur.cc (height): don't use get_uncached_stencil()
8183 * lily/rest.cc (y_offset_callback): use offset callback
8184 iso. after-line-breaking callback.
8186 * lily/grob.cc: change after/before-line-breaking-callback to
8187 after/before-line-breaking dummy properties.
8189 * lily/include/grob.hh: remove Grob_status.
8191 * scm/define-context-properties.scm
8192 (all-user-translation-properties): remove verticalAlignmentChildCallback
8194 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8195 (calc_direction): use callback
8196 (calc_positions): use callback.
8198 * lily/tie.cc (calc_direction): use callback. Only call parent
8199 positioning for more than one tie.
8201 * lily/tie-column.cc (calc_positioning_done): use callback
8203 * lily/slur-scoring.cc (calc_control_points): use callback
8205 * lily/slur.cc (calc_direction): use callback.
8207 * lily/note-collision.cc (force_shift_callback): remove.
8209 * lily/dot-column.cc (force_shift_callback): remove. Use
8210 other_axis_parent_positioning.
8212 * lily/grob.cc (other_axis_parent_positioning): new function.
8213 (same_axis_parent_positioning): new function
8215 * lily/align-interface.cc (alignment_callback): remove function.
8217 * lily/note-collision.cc (calc_positioning_done): use callback.
8219 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8220 (calc_direction): idem.
8221 remove print function.
8223 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8225 * lily/dot-column.cc (calc_positioning_done): use callback.
8227 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8229 * lily/beam.cc (calc_direction): use pseudo-property for beam
8231 (calc_positions): use callback
8233 * lily/align-interface.cc (calc_positioning_done): use
8234 callback. Fold fixed distance and normal alignment in one function.
8236 * lily/stem.cc (calc_stem_end_position): use callback.
8237 (calc_positioning_done): idem.
8238 (calc_direction): idem.
8239 (calc_stem_end_position): idem
8240 (calc_stem_info): idem.
8242 * lily/grob-property.cc (get_property_data): new function:
8243 (try_callback): new function.
8245 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8248 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8250 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8252 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8256 * lily/include/*.hh (Module): compile fixes.
8258 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8260 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8261 as an argument for char-syntax: use (char-syntax (or nil 0))
8262 instead of (char-syntax nil), thanks to Milan Zamazal.
8264 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8266 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8269 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8272 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8274 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8275 add class_name() method.
8277 * lily/music-scheme.cc: remove ly:music-name.
8279 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8281 * cygwin/postinstall-lilypond.sh: Remove cruft.
8283 * cygwin/postremove-lilypond.sh: Remove.
8285 * cygwin/GNUmakefile (default): Remove postremove rules.
8287 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8289 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8292 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8295 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8296 consider break index for broken spanner.
8298 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8299 characters from string before splitting.
8301 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8303 * scm/framework-ps.scm (output-preview-framework): use
8304 is-book-title to determine whether to chop off the booktitle.
8306 * lily/paper-book.cc (systems): init from book-title-properties
8307 (add_score_title): init score-title-properties.
8309 * ly/paper-defaults.ly: add {score,book}-title-properties.
8311 * scm/document-backend.scm (lookup-interface): error message if
8312 using unknown interface.
8314 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8317 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8319 (make_bracket): new function.
8321 * scm/lily.scm (define-scheme-options): add paper-size option.
8323 * ly/declarations-init.ly (laissezVibrer): get paper size from
8326 * scm/translation-functions.scm: use \fontsize for changing the
8329 * scm/define-grobs.scm (all-grob-descriptions): set
8330 between-length-limit to 1.0
8332 * lily/tie-helper.cc: add between_length_limit_ detail property.
8334 * mf/feta-bolletjes.mf: typos.
8336 * lily/note-head.cc (internal_print): don't shadow idx
8337 parameter. This fixes wrong attachment for do shape heads.
8339 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8341 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8343 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8345 * scm/layout-slur.scm: rename from slur.scm
8347 * scm/layout-page-layout.scm: rename from page-layout.scm
8349 * scm/layout-beam.scm: rename from beam.scm
8351 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8352 bass-figure-interface
8354 * lily/new-figured-bass-engraver.cc (process_music): add
8355 implicitBassFigures property.
8357 * scm/define-markup-commands.scm (pad-x): new markup.
8359 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8360 minimumVerticalExtent on FiguredBass context.
8362 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8363 case the continuation crosses a line break.
8365 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8367 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8368 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8369 absolute file name bug.
8371 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8373 * VERSION (PACKAGE_NAME): release 2.7.12
8375 * input/regression/figured-bass-continuation-center.ly: new file.
8377 * input/regression/beam-outside-beamlets.ly: new file.
8379 * lily/beam.cc (set_beaming): don't clip edges.
8380 (connect_beams): don't clip edges.
8382 * lily/beaming-info.cc (clip_edges): new function.
8384 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8386 * Documentation/user/instrument-notation.itely (Figured bass):
8387 demonstrate extenders, update seealso links.
8389 * scm/titling.scm (marked-up-headfoot): change tagline
8390 handling. tagline = ##f will blank the tagline as well.
8392 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8394 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8396 * lily/new-figured-bass-engraver.cc (struct
8397 New_figured_bass_engraver): add new_music_found_ member.
8399 * lily/lilypond-version.cc (Lilypond_version): deal with
8400 incorrectly formatted version strings.
8402 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8403 New_figured_bass_engraver by default.
8405 * lily/ttf.cc (print_trailer): only define glyph names when
8406 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8408 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8410 * lily/horizontal-bracket.cc (make_bracket): new function.
8412 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8413 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8414 BassFigureLine, BassFigureAlignment
8416 * lily/new-figured-bass-engraver.cc (process_music): new file.
8418 * lily/figured-bass-continuation.cc: new file.
8420 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8423 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8425 * scripts/lilypond-book.py: Bug fix, put the quote around the
8426 actual score for LaTeX documents.
8428 * scm/define-grobs.scm (all-grob-descriptions): Change
8429 collapse-height of the SystemStartBracket grob to 5.0,
8430 so the bracket disappears for single stave score lines (similarly
8431 to SystemStartBraces).
8433 * Documentation/user/advanced-notation.itely (Polymetric
8434 notation): Clarify the use of compressMusic.
8436 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8437 that the grace spacer note in other staves need the same duration
8438 and document the stroke-style property.
8440 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8442 * Documentation/user/global.itely (Vertical spacing): document
8443 alignment-extra-space and fixed-alignment-extra-space.
8445 * Documentation/topdocs/NEWS.tely (Top): add entry.
8447 * input/regression/alignment-vertical-spacing.ly: new file.
8449 * python/convertrules.py (conv): add rule.
8451 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8453 * lily/align-interface.cc (stretch_after_break): new
8454 function. Read fixed-alignment-extra-space property.
8455 (align_elements_to_extents): read alignment-extra-space property.
8457 * lily/lily-guile.cc (robust_scm2dir): new function.
8459 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8460 (annotate-space-left): new function. Annotate space left on page.
8461 (annotate-y-interval): new function.
8462 (paper-system-annotate-last): new function. Annotate bottom-space.
8464 * mf/feta-beugel.mf (y):
8466 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8468 * VERSION (PACKAGE_NAME): release 2.7.11
8470 * scm/lily-library.scm (interval-translate): new function
8471 (interval-center): new function.
8473 * scm/page-layout.scm (paper-system-annotate): new function. Add
8474 arrows for dimensions.
8476 * scm/stencil.scm (dimension-arrows): new function.
8478 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8480 * input/regression/page-spacing.ly: add annotatespacing
8482 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8483 (LY_DEFINE): new function ly:paper-system-set-property!
8485 * Documentation/user/global.itely (Paper size): explain how to add
8488 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8489 correspond to GS's definition.
8491 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8493 (print): only connect to next bracket if the next one is alive.
8494 (print): set padding to 0.0 if the bound is a breakable
8495 column. This makes tupletFullLength brackets reach up to the staff
8496 line if it doesn't connect to the next line.
8498 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8500 * lily/bar-number-engraver.cc: correct docs.
8502 * scm/output-lib.scm (first-bar-number-invisible): rename from
8503 default-bar-number-visibility
8505 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8507 * scm/define-music-properties.scm (all-music-properties): remove
8510 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8512 * po/fi.po: refresh.
8514 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8516 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8518 (disappear): bugfix.
8520 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8522 * lily/include/paper-system.hh (class Paper_system): remove
8523 staff_extents_ member.
8525 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8527 * lily/include/paper-system.hh (class Paper_system): remove
8528 number_ variable. Remove is_title_. Remove break_before_penalty_
8530 * lily/paper-book.cc (systems): use 'number property iso. number_
8533 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8534 remove ly:paper-system-number.
8536 * scm/lily-library.scm (paper-system-title?): new function.
8538 * lily/book.cc (process): bugfix: flip ?: cases.
8540 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8543 * ly/music-functions-init.ly: add outputProperty music function.
8545 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8547 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8549 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8551 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8553 * lily/paper-system.cc (internal_get_property): new function.
8555 * Documentation/user/global.itely (Vertical spacing): refer to
8558 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8561 * input/regression/page-spacing.ly: new file.
8563 * input/regression/page-top-space.ly: new file.
8565 * lily/spacing-spanner.cc: cmath -> math.h
8567 * lily/paper-system.cc (read_left_bound): new function. Read
8568 line-break-system-details from left bound to determine extents.
8570 * Documentation/user/programming-interface.itely (Using LilyPond
8571 syntax inside Scheme): change applyxxx -> applyXxx.
8573 * ly/music-functions-init.ly: add outputProperty music function.
8575 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8577 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8579 * python/convertrules.py (conv): rule
8581 * ly/music-functions-init.ly: applyxxx -> applyXxx
8583 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8586 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8588 * flower/include/real.hh: include <math.h> iso. <cmath>
8590 * flower/include/offset.hh: include real.hh
8592 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8594 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8595 fix example, now that 'interfaces is no longer directly available.
8597 * lily/book.cc (process): don't crash if paper == NULL.
8601 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8603 * scm/define-music-types.scm (music-descriptions): set length and
8604 start-callback for QuoteMusic
8606 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8608 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8609 arguments. Fixes compilation error with gcc 3.3.
8611 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8613 * VERSION: release 2.7.10
8615 * stepmake/stepmake/python-module-rules.make
8616 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8618 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8621 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8623 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8624 -Werror. Otherwise GCC barfs over various optimizations.
8626 * scm/define-grob-properties.scm (all-internal-grob-properties):
8627 add note-head property
8629 * Documentation/user/instrument-notation.itely (Laissez vibrer
8632 * input/regression/laissez-vibrer-ties.ly: new file.
8634 * lily/laissez-vibrer-engraver.cc: new file.
8636 * lily/include/tie-column-format.hh: new file.
8638 * lily/tie-column-format.cc: new file.
8640 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8642 * lily/laissez-vibrer-tie.cc: new file.
8644 * lily/include/laissez-vibrer-tie.hh: new file.
8646 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8648 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8650 * scm/define-grobs.scm (all-grob-descriptions): add
8651 LaissezVibrerTie, LaissezVibrerTieColumn
8653 * lily/tie-column.cc (set_tie_config_directions): new function
8654 (final_shape_adjustment): new function.
8655 (shift_small_ties): new function.
8657 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8659 * lily/include/tie.hh (struct Tie_details): add x_gap_
8660 (struct Tie_configuration): add head_position_
8662 * lily/tie-column.cc (set_chord_outline): new function.
8664 * mf/cmr.enc.in: remove file.
8666 2005-09-11 Graham Percival <gpermus@gmail.com>
8668 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8670 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8672 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8673 reduce aliasing effects.
8675 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8678 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8680 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8682 * flower/include/real.hh: std::fabs too.
8684 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8686 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8688 * lily, flower: Include C++ iso C headers. Import namespace std
8691 * lily/side-position-interface.cc:
8693 * lily/note-head.cc:
8694 * lily/include/includable-lexer.hh:
8695 * flower/include/string-data.icc: Remove using std::*.
8697 * lily, flower: Include C++ iso C headers. Import namespace std
8700 * lily/side-position-interface.cc:
8702 * lily/note-head.cc:
8703 * lily/include/includable-lexer.hh:
8704 * flower/include/string-data.icc: Remove using std::*.
8706 * Documentation/user/instrument-notation.itely (Entering lyrics):
8707 Multiple latin-1->utf-8 conversion fix.
8709 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8711 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8713 * lily/tie.cc (get_configuration): also avoid dots for non-space
8716 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8718 * Documentation/user/instrument-notation.itely: Bugfix.
8720 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8722 * tex/GNUmakefile: don't install texinfo.tex
8724 * tex/ : cleanup: remove unused files.
8726 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8728 * flower/include/real.hh: using std::{isnan,isinf}
8730 * VERSION (PATCH_LEVEL): release 2.7.9
8732 2005-09-05 Graham Percival <gpermus@gmail.com>
8734 * Documentation/user/ instrument-notation.itely,
8735 advanced-notation.itely: minor tweaks.
8737 * input/test/script-chart.ly: add item padding.
8739 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8741 * flower/offset.cc: use math.h iso. <cmath>
8743 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8746 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8747 (widen-left-stencil-edges): new function. Fix alignment problems
8748 with LaTeX includegraphics.
8750 * lily/text-interface.cc (interpret_markup): use abort().
8752 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8754 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8756 * lily/tie.cc (get_configuration): update bezier shape as we
8758 (get_configuration): don't move large ties if we're outside of the
8761 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8763 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8765 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8767 * .cvsignore: Add auto-generated configure files and then some.
8769 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8771 * scm/define-grobs.scm (DynamicLineSpanner): Add
8772 X-extent-callback. Fixes hairpin-slur collision.
8774 2005-08-31 Graham Percival <gpermus@gmail.com>
8776 * Documentation/user/advanced-notation.itely,
8777 basic-notation.itely: minor changes.
8779 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8781 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8782 \linebreak between each .eps file if \betweenLilyPondSystem is
8785 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8786 music): Document the \linebreak
8788 * Documentation/user/lilypond-book.itely,
8789 input/tutorial/lbook-latex-test.tex,
8790 Documentation/user/examples.itely: Remove \usepackage{graphics}
8792 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8794 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8796 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8799 * scripts/lilypond-book.py (PREAMBLE_LY): define
8800 inside-lilypond-book
8801 (modify_preamble): new function. Insert \RequirePackage{graphics}
8802 when no {graphics found in preamble.
8804 2005-08030 Graham Percival <gpermus@gmail.com>
8806 * Documentation/user/basic-notation.itely, global.itely,
8807 tutorial.itely: misc small changes.
8809 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8811 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8814 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8816 * lily/tie-column.cc (new_directions): put Tie down on center
8819 * lily/script-interface.cc (before_line_breaking): use
8820 Grob::programming_error
8822 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8824 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8827 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8829 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8831 2005-08-29 Werner Lemberg <wl@gnu.org>
8833 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8834 the `*.scale.pfa' files to avoid warnings.
8836 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8838 * lily/tempo-performer.cc (process_music): idem.
8840 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8842 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8844 * Documentation/user/advanced-notation.itely (Text markup): not a
8847 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8849 * lily/staff-performer.cc (initialize): add tempo/name to
8853 2005-08-26 Graham Percival <gpermus@gmail.com>
8855 * Documentation/user/advanced.itely: add text-only example.
8857 * Documentation/user/invoking.itely: add index entries for
8860 * Documentation/user/ tutorial.itely, basic-notation.itely:
8861 small fixes suggested by Steve D. Thanks!
8863 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8865 * input/regression/markup-bidi-pango.ly: new file.
8867 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8868 standard. Remove #ifdef. Remove memleak.
8869 (text_stencil): use text_dir to decide how to composite items.
8870 (text_stencil): determine uniform text direction for the entire
8873 * scripts/lilypond-book.py (output_name): remove
8874 latex_filter_cmd. Non-portable to non-Unix systems.
8875 (get_latex_textwidth): use File.write and os.unlink() instead.
8877 * THANKS: add Vicente & Trevor.
8879 * lily/grob.cc (discretionary_processing): look up origin for
8880 programming_error too.
8882 * input/regression/tie-broken.ly: new file.
8884 * lily/tie-column.cc (set_chord_outlines): set outline for line
8887 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8889 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8890 unscaled transform, just translate stencils.
8892 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8895 * scm/define-markup-commands.scm (wordwrap-string): use
8897 (wordwrap-stencils): idem.
8900 (wordwrap-stencils): translate last line to right for
8901 text-direction = LEFT.
8903 * scm/define-grob-properties.scm (all-user-grob-properties): add
8906 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8908 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8909 when copying a Lily_parser object.
8911 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8913 * scm/define-markup-commands.scm (null): add null markup.
8915 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8917 * lily/item.cc: Add documentation of center-invisible
8919 2005-08-24 Graham Percival <gpermus@gmail.com>
8921 * Documentation/user/advanced-notation.itely: add info about
8924 * Documentation/user/programming-interface.itely: fix example
8925 involving raised text.
8927 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8929 * lily/beam.cc (print): fix X start/end points of isolated
8932 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8934 * lily/multi-measure-rest.cc (set_text_rods): new function.
8936 * lily/vertical-align-engraver.cc (process_music): call
8937 Align_interface::set_axis(). This forces #'elements to be ordered,
8938 preventing random vertical reordering of staves.
8940 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8941 add avoid-slur property.
8943 * Documentation/user/basic-notation.itely (Measure repeats): add
8944 countPercentRepeats example.
8946 * Documentation/user/advanced-notation.itely (Other text markup
8947 issues): remove remark about normal-font. We have \normal-text
8949 * input/regression/tie-chord.ly: add note about remaining bugs.
8951 * lily/tie.cc (print): try Tie_column::set_directions () if
8952 control-points not yet defined.
8954 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8956 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8957 extent. This fixes braces falling out of the EPS bbox.
8959 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8962 2005-08-23 Graham Percival <gpermus@gmail.com>
8964 * {various} : change #up->#UP and #down->#DOWN.
8966 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8968 * Documentation/user/advanced-notation.itely: clarify
8969 what objects handles text on a multimeasure rest.
8971 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8973 * VERSION (PATCH_LEVEL): release 2.7.7
8975 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8977 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8979 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8981 * input/regression/*.ly: formatting clean-up. Default layout
8982 before music expression.
8984 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8985 romanze28-2 example.
8987 * scm/ps-to-png.scm: remove dir-re function.
8988 (make-ps-images): generate page names, instead of globbing them.
8989 This brings down LilyPond memory usage for make web by a factor
8992 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8993 don't use glob. With 3000 files, globbing
8994 Documentation/user/out-www/ can take too much time.
8996 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8998 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9000 * input/regression/tie-manual.ly: new file
9002 * input/regression/tie-chord.ly: update.
9004 * flower/include/interval.hh (struct Interval_t):
9006 * lily/tie.cc (distance): new function
9007 (height): new function.
9008 (init): new function
9009 (Tie_details): new struct.
9011 * lily/skyline.cc (skyline_height): new function.
9013 * lily/tie-column.cc (set_chord_outlines): new function.
9014 (new_directions): read tie-configuration
9016 * lily/skyline.cc: fix ASCII art.
9018 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9020 * python/convertrules.py (string_or_scheme): Fix spelling error
9022 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9024 * lily/tie-column.cc (set_directions): set directions only once.
9025 (add_configuration): new function.
9027 * lily/tie.cc (set_control_points): new function
9029 * lily/tie-column.cc (new_directions): new function.
9031 * ly/music-functions-init.ly: set 'pitch property
9032 iso. trill-pitch. This makes \relative work with \pitchedTrill
9034 * lily/tie.cc (get_configuration): new function. Don't generate
9035 control points, rather, generate configuration.
9036 remove head-pair property.
9038 * lily/include/tie.hh (struct Tie_configuration): new struct.
9040 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9042 * Documentation/topdocs/NEWS.tely: clarify.
9044 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9046 * lily/tie.cc: remove minimum-length
9048 * scm/define-grob-properties.scm (all-user-grob-properties):
9049 remove staffline-clearance, y-offset
9051 * input/regression/tie-dots.ly (Module): remove.
9053 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9054 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9056 * input/regression/tie-single.ly: new file.
9058 2005-08-21 Graham Percival <gpermus@gmail.com>
9060 * ly/bagpipe.ly: fix compile problem.
9062 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9064 * lily/midi-item.cc (name): new method.
9066 * lily/staff-performer.cc (acknowledge_audio_element): use
9067 signature of baseclass.
9069 * lily/engraver-group.cc (do_announces): move recursion call out
9072 * lily/drum-note-performer.cc (class Drum_note_performer): use
9073 process_music everywhere.
9075 * ly/performer-init.ly: add default children everywhere.
9077 * lily/paper-book.cc (output): call paper-book-write-midis
9078 directly: always write MIDI, even if no \layout {} block.
9080 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9082 * VERSION (PACKAGE_NAME): release 2.7.6
9084 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9085 about not being able to handle repeat.
9087 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9089 * Documentation/user/examples.itely (Piano templates):
9090 * lily/include/performer-group.hh: Remove last traces of
9091 Performer_group_performer. Fixes make web.
9093 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9095 * Documentation/user/examples.itely (Piano templates): change
9096 Engraver_group_engraver -> Engraver_group
9098 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9099 scm_stand_in_procs is not weak_any.
9101 * lily/volta-bracket.cc (print): don't use strcmp().
9103 * lily/volta-engraver.cc (process_music): use
9104 Text_interface::is_markup() for setting the 'text property of the
9107 * input/mutopia/claop.py (accents): update syntax to 2.6
9109 * scm/define-context-properties.scm
9110 (all-user-translation-properties): add countPercentRepeats.
9112 * Documentation/user/basic-notation.itely (Measure repeats): add
9113 isolated percent example.
9115 2005-08-18 Graham Percival <gpermus@gmail.com>
9117 * input/ {various}: change direction #1, #-1 to
9118 #up/#down or \fooUp, \fooDown.
9120 * Documentation/user/music-glossary.tely: #-1 to #down.
9122 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9123 to #up, #-1 to #down.
9125 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9127 * lily/include/engraver-group.hh: rename.
9129 * lily/include/performer-group.hh: rename.
9131 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9133 * input/test/script-abbreviations.ly: Removed some old LaTeX
9136 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9138 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9139 Remove functions. Remove if 1: constructs, reindent.
9141 * scripts/convert-ly.py (add_version): Add functions from
9144 * scm/script.scm (default-script-alist):
9145 s/priority/script-priority. Fixes script stacking. Backportme.
9146 (Fermata): Very low priority.
9148 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9150 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9152 * input/regression/slur-script.ly: remove padding tweaks. Add
9155 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9156 time sigs and related stuff.
9158 * scm/define-grob-properties.scm (all-user-grob-properties): add