1 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Hand-force git changes to commit. Where is my changelog?
5 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
7 * buildscripts/git-update-changelog.py (main): write .msg and cvs
10 * scm/define-grobs.scm:
11 separation-items have width
17 * Documentation/topdocs/NEWS.tely:
18 * lily/separating-group-spanner.cc:
19 * lily/slur-engraver.cc:
20 * lily/slur-scoring.cc:
21 * scm/define-grobs.scm:
22 * input/regression/slur-clef.ly:
23 add breakableSeparationItem to extra encompass for slurs. This
24 fixes slur/clef slur/key collisions etc. Should fix #49
26 * lily/include/slur-scoring.hh:
27 * lily/slur-scoring.cc:
28 Use X of separation item as slur start. Fixes #120
30 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
32 * buildscripts/git-update-changelog.py (changelog_body): don't
35 * lily/grob.cc: add avoid-slur
37 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
41 move server/emacsclient to elisp/
43 * buildscripts/git-update-changelog.py (Commit.note_del_file):
46 * elisp/server.el.patch:
49 * elisp/emacsclient.patch:
52 * buildscripts/git-update-changelog.py:
59 * buildscripts/git-update-changelog.py:
60 script to update ChangeLog with Git messages.
62 * lily/beam-engraver.cc:
63 * input/regression/rest-pitched-beam.ly:
64 don't set callback if staff-position set. Fixes #126.
66 * lily/bar-number-engraver.cc:
68 * lily/fingering-engraver.cc:
69 * lily/grob-property.cc:
71 * lily/include/grob.hh:
72 * lily/include/lily-guile-macros.hh:
73 * lily/mark-engraver.cc:
74 * lily/melody-engraver.cc:
75 * lily/script-column.cc:
76 * lily/tie-formatting-problem.cc:
78 internal_get_property_data() using ly_symbol2scm()
80 * stepmake/stepmake/generic-targets.make:
81 create .gitignore in outdir.
86 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
88 * input/test/vertical-extent.ly:
89 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
91 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
93 * stepmake/bin/add-html-footer.py (compose): remove setgcos
95 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
97 * GNUmakefile.in (install-help2man): install-help2man target.
99 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
101 * SConstruct (configure): Do not check for /bin/sh.
103 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
105 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
108 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
110 * input/regression/fret-boards.ly: new file.
112 * po/de.po: new po courtesy translation team.
114 * scripts/lilypond-book.py (get_option_parser): add newline to doc
117 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
119 * ly/gregorian-init.ly (neumeDemoLayout): update
120 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
122 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
123 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
125 2006-10-27 Erlend Aasland <erlenda@gmail.com>
127 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
128 Yet another build fix.
130 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
132 * SConstruct (lilypondprefix): use sorted() for list_sort()
135 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
137 * flower/SConscript: Unit test rules.
139 * flower/test-std.cc: Compile fix.
141 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
143 * python/midi.c (pymidi_parse_track): warning fixes.
145 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
146 include dot-column.hh
148 2006-10-26 Graham Percival <gpermus@gmail.com>
150 * Documentation/user/{basic-, global}: minor changes from mailist.
152 2006-10-26 Erlend Aasland <erlenda@gmail.com>
154 * scm/define-grobs.scm: trivial beautification
156 * lily/tie-performer.cc: no need to #include "pqueue.hh"
158 * lily/source-file.cc: put multibyte var inside #if clause
160 * scm/define-grob-interfaces.scm:
161 * scm/define-grob-properties.scm:
162 Build fix (string-fret-finger-combinations)
164 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
167 * Documentation/user/lilypond-book.itely: Build fix.
169 2006-10-26 Joe Neeman <joeneeman@gmail.com>
171 * lily/system.cc (get_paper_system):
172 * lily/paper-book.cc (systems):
173 move most of the backwards compatibility stuff into
176 * Documentation/topdocs/NEWS.tely: add 2 entries for the
179 * Documentation/user/page.itely: remove time-scaled-music
180 bug for the Page_turn_engraver
182 * lily/paper-book.cc (set_system_penalty): backwards
183 compatibility (breakbefore) for the old page breaker
185 2006-10-25 Graham Percival <gpermus@gmail.com>
187 * Diocumentation/user/instrument-notation.itely: added more
188 info about stanzas; thanks Geoff!
190 * Documentation/user/ {basic, advanced}: small fixes from
193 * THANKS: add some bug reporters.
195 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
197 * scm/define-context-properties.scm (all-user-translation-properties):
198 noteToFretFunction: Add.
200 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
201 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
203 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
205 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
208 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
209 Remove bashism in delete.
211 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
213 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
215 * scm/translation-functions.scm (determine-frets-mf): flatten let*
217 * scm/define-context-properties.scm
218 (all-user-translation-properties): add maximumFretStretch property.
220 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
222 * lily/source-file.cc (get_counts): use multibyte variable.
224 * scm/translation-functions.scm (determine-frets-mf): new
225 function: compute fret numbers.
227 * scm/output-lib.scm (string-frets->description) new function.
228 (fret-board::calc-stencil): new function
230 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
232 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
234 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
236 * lily/tab-note-heads-engraver.cc: cleanups.
238 * lily/fretboard-engraver.cc: new file
240 * ly/engraver-init.ly: add FretBoards context
242 2006-10-24 Joe Neeman <joeneeman@gmail.com>
244 * lily/grob.cc (pure_relative_y_coordinate)
245 (pure_height): use the new call_pure_function stuff
247 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
250 * lily/side-position-interface.cc (pure_y_aligned_side): add an
253 * lily/simple-closure.cc (ly_eval_simple_closure): make
254 simple-closure evaluatable from scheme
255 (evaluate_with_simple_closure): make simple-closures pure-
258 * lily/slur.cc (pure_outside_slur_callback): new function
260 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
261 fits in with previous changes that made the page forces much
264 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
265 and pure-Y-extent into this new function.
266 (pure-conversions-alist): add outside-slur-callback
268 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
270 * Documentation/user/advanced-notation.itely (Instrument names):
271 Remove obsolete bug workaround for instrument names on piano
274 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
276 * Documentation/user/lilypond-book.itely (Integrating DocBook and
277 music): patch by Bertalan Fodor for docbook.
279 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
280 of $(LILYPOND). Prevents lilypond run for .txt files.
282 * INSTALL.txt: gitness.
284 * .cvsignore: update to force gitness.
286 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
288 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
289 detect suicide in nested tuplets.
291 2006-10-23 Werner Lemberg <wl@gnu.org>
293 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
294 typo in argument to FT_Get_X11_Font_Format.
296 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
298 * stepmake/stepmake/po-vars.make: more gitness.
300 * flower/polynomial.cc (check_sol): no empty if bodies.
302 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
304 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
306 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
308 * Documentation/user/examples.itely (Transcription of mensural
309 music): Added more comments in .ly source. Suggest to remove
310 Forbid_line_break_engraver to allow line breaking at all bars.
312 * Documentation/user/instrument-notation.itely (Ancient
313 articulations): Updated @refbugs regarding episem.
315 * Documentation/user/instrument-notation.itely (Gregorian square
316 neumes ligatures): Added \augmentum dots. Updated @refbugs
317 regarding \augmentum.
319 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
321 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
324 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
327 * ly/gregorian-init.ly: Added \augmentum macro.
329 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
331 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
333 * lily/pango-font.cc (pango_item_string_stencil): use
334 FT_Get_X11_Font_Format()
336 2006-10-22 John Mandereau <john.mandereau@free.fr>
338 * po/fr.po: update translation.
340 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
342 * VERSION (PATCH_LEVEL): bump version
344 * input/regression/horizontal-bracket-break.ly: new file.
346 * scm/define-grobs.scm (all-grob-descriptions): calc
349 * lily/horizontal-bracket.cc (make_bracket): support
350 connect-to-neighbor. Fix #118
352 * VERSION: release 2.9.26-2
354 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
356 * VERSION (PACKAGE_NAME): release 2.9.26
358 * buildscripts/output-distance.py (test_basic_compare): add
360 (FileLink.multi_img_cell): new function, glob multi-page png
363 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
365 * po/lilypond.pot: update.
367 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
369 * Documentation/user/global.itely (File structure): remove
372 * lily/parser.yy (FIXME): remove ADDQUOTE
374 * Documentation/user/global.itely (Extracting fragments of
375 notation): new node, about clip systems.
377 * Documentation/user/lilypond-book.itely (Many quotes of a large
378 score): ref to clip systems.
380 * Documentation/user/instrument-notation.itely (Entering lyrics):
381 add note about lyric ties and required font.
383 * lily/open-type-font.cc (glyph_list): format errors.
385 * Documentation/user/programming-interface.itely (Scheme
386 procedures as properties): more doco on simple-closure and scheme
388 (Input variables and Scheme): use lilypond[verbatim], document
391 * Documentation/user/page.itely (Displaying spacing): use \book
392 explicitly, so arrows show .
393 (Line breaking): add note about Forbid_line_break_engraver
395 * Documentation/user/tweaks.itely (Common tweaks): also set length
396 to prevent tie squeezing.
397 (Default files): use @var{}
399 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
400 (Generating LilyPond files): add FOMUS.
402 2006-10-20 Joe Neeman <joeneeman@gmail.com>
404 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
405 Y-offset for TextScript and Script
407 * lily/text-engraver.cc (make_item):
408 * lily/script-engraver.cc (make_script_from_event):
409 remove call to Side_position_interface::set_axis since all scripts
410 now have this set by default
413 * lily/prob.cc: use variables
415 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
417 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
418 at typography, rather analyse stream event duration.
420 * Documentation/user/page.itely (Page formatting): set a6 paper
421 for system separator example.
423 * lily/arpeggio.cc (Module): idem.
425 * lily/accidental-placement.cc: add script-priority property.
427 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
429 * lily/ttf.cc (print_trailer): if all else fails: use
430 glyphIndexXXXX as glyph name. Fixes #117.
432 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
433 entry if cmap contains glyph.
434 (get_index_to_charcode_map): remove from Pango_font class, use
435 global filename -> font mapping.
436 (get_glyph_index_name): new function.
437 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
440 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
442 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
445 * scm/define-grob-properties.scm (all-user-grob-properties):
446 remove outdated doc. Fixes #116
448 * lily/completion-note-heads-engraver.cc (process_music): always
449 clone input events; otherwise we may overwrite input 'duration
450 property. Fixes #115.
452 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
455 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
458 * VERSION (PATCH_LEVEL): bump version.
460 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
462 * lily/engraver.cc (internal_make_grob): use variables.
464 * flower/string-convert.cc (dec2double): clean-up warnings.
466 * configure.in (CXXFLAGS): add -Werror.
468 * VERSION (PACKAGE_NAME): release 2.9.25
470 2006-10-18 Joe Neeman <joeneeman@gmail.com>
472 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
473 line even if we precede a forced break.
475 * lily/optimal-page-breaking.cc (try_page_spacing): square line
476 forces too. Make page-spacing weight default to 10 because the
477 changes to vertical springs decreased the page force/line force
478 proportions. Also, take the average of line force and page force
479 instead of just the sum.
481 * lily/constrained-breaking.cc (initialize): make the stiffness
482 of the vertical springs depend on the height of the system. This
483 prevents pages with only a few large systems from getting huge
486 * Documentation/user/page.itely (Page formatting): document the
487 change in default page-spacing-weight
489 * lily/include/constrained-breaking.hh: initialise bottom_padding_
491 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
493 * input/typography-demo.ly (melody): remove superfluous slur.
495 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
496 add piano-pedal-script-interface
498 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
500 * scripts/lilypond-book.py: DocBook support.
502 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
504 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
506 (stop_translation_timestep): set bound to currentMusicalColumn if
507 not set yet. Fixes #102
509 * lily/piano-pedal-bracket.cc: formatting.
511 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
513 * lily/piano-pedal-align-engraver.cc: new class
514 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
517 2006-10-18 Heikki Junes <hjunes@gmail.com>
519 * po/fi.po: Update Finnish translation (before the next release).
521 2006-10-17 Joe Neeman <joeneeman@gmail.com>
523 * lily/system.cc (get_paper_system): reinstate the backwards-
524 compatible page breaking for the old page breaker.
526 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
528 * lily/recording-group-engraver.cc: removed
530 * lily/context.cc, lily/translator-group.cc: Don't touch
531 Context::implementation_ if it's null
533 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
535 * scm/paper.scm: only use left-margin if defined.
537 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
539 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
541 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
542 strokeFingerOrientations
544 * lily/script-column.cc (row_before_line_breaking): also handle
545 accidentals and arpeggios in horizontal script stacking.
547 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
550 * input/regression/script-stack-horizontal.ly: trim.
552 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
554 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
557 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
558 'text if string argument.
560 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
562 * scm/define-context-properties.scm
563 (all-user-translation-properties): change to strokeFingerOrientations
565 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
567 * lily/parser.yy: remove debug output
569 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
571 * ly/paper-defaults.ly: set left/right margin.
573 * scm/paper.scm (set-paper-dimensions): use left-margin and
574 right-margin for computing linewidth.
576 * Documentation/topdocs/NEWS.tely (Top): idem.
578 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
581 * scm/define-markup-commands.scm (tied-lyric): increase negative
582 space: space syllables tighter.
584 * VERSION (PATCH_LEVEL): bump version.
586 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
589 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
591 * COPYING: further clarification
593 * VERSION: release 2.9.24
595 * input/regression/script-stack-horizontal.ly: add version.
597 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
599 * input/regression/lyric-tie.ly (texidoc): use different words.
601 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
603 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
605 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
606 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
608 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
610 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
612 * Doxyfile: remove file.
614 * scm/define-grob-interfaces.scm (string-finger-interface): add
615 string-finger-interface
617 * lily/general-scheme.cc (LY_DEFINE): move
618 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
620 * Documentation/topdocs/NEWS.tely (Top): add note for
621 string-finger feature.
623 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
626 * scm/output-lib.scm (string-finger::calc-text): read 'digit
629 * input/regression/script-stack-horizontal.ly: new file.
631 * ly/engraver-init.ly: add Script_row_engraver.
633 * lily/script-column.cc (order_grobs): refactor: separate axis
635 (row_before_line_breaking): new function.
637 * lily/script-row-engraver.cc (Script_row_engraver): new file.
639 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
641 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
643 * Documentation/user/instrument-notation.itely: Cleanup: Remove
644 annoying skip notes from mensural ligature example. Update
645 @refbugs for ligatures and mensural ligatures.
647 * lily/coherent-ligature-engraver.cc,
648 lily/include/coherent-ligature-engraver.hh,
649 lily/mensural-ligature-engraver.cc,
650 lily/vaticana-ligature-engraver.cc: Revise code for item
651 reparentizing. There should now be less programming_error
654 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
656 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
657 Maintenance bugfix: Don't create empty Stencil (), but empty box
658 instead. This fix should eliminate some programming_error
661 * ly/engraver-init.ly (MensuralStaff): Set default accidental
664 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
665 \layout block _before_ score.
667 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
669 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
671 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
673 2006-10-13 Erlend Aasland <erlenda@gmail.com>
675 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
677 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
679 * VERSION (PATCH_LEVEL): bump version.
681 * COPYING: clarify exception note.
683 * lily/main.cc: remove remark about "COPYING".
685 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
686 system-count starts at 0 for each clip-region. Change name to
687 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
688 layout block, per score.
690 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
692 * lily/input-smob.cc: add equal_p for Input
694 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
697 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
699 * lily/prob.cc: Add equal_p predicate for Prob
701 * lily/translator.cc: small cleanup
703 * scm/document-music.cc: use data from translator listener
704 registration to generate documentation for event classes
706 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
708 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
710 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
712 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
714 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
716 * Documentation/topdocs/INSTALL.texi: Thinko.
718 * .cvsignore: Update.
720 * lexer-gcc-3.1.sh: Remove.
722 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
723 Update anonymous cvs access. Remove comment about gcc 3.0.4.
725 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
727 * VERSION: release 2.9.23
729 * lily/paper-column-engraver.cc (stop_translation_timestep): also
732 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
734 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
736 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
738 * input/regression/clip-systems.ly (Notes): new file.
740 * scm/lily.scm (define-scheme-options): add clip-systems option.
742 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
744 (dump-stencil-as-EPS): move bbox calculation from previous
746 (output-framework): use -dclip-systems
748 * scm/lily-library.scm (filtered-map): new function
750 * scm/framework-ps.scm (clip-system-EPS): new function.
751 (clip-system-EPSes): new function.
753 * lily/paper-column.cc: add rhythmic-location to interface
755 * scm/define-grob-properties.scm (all-user-grob-properties): add
756 rhythmic-location property.
758 * scm/clip-region.scm: new file: rhythmic-location data type and
759 system-clipped-x-extent function.
761 * ly/init.ly: use (scm clip-region)
763 * lily/paper-column-engraver.cc (stop_translation_timestep): set
764 rhythmic-location for paper column grobs.
766 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
768 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
770 * ly/engraver-init.ly: Remove obsolete comment on
773 * Documentation/user/instrument-notation.itely: Tune Ancient
774 Articulations figure, such that the episem actually shows.
776 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
777 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
779 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
782 2006-10-12 Graham Percival <gpermus@gmail.com>
784 * Documentation/user/ {some}: minor edits that were lost somehow.
786 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
788 * VERSION (PACKAGE_NAME): bump version.
790 * input/regression/lyric-tie.ly (texidoc): new file.
792 * Documentation/topdocs/NEWS.tely (Top): add new feature.
794 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
796 * scm/define-markup-commands.scm (tied-lyric): new function: split
797 string along ~ and reattach with U+203F (tie character) and
800 * scm/output-lib.scm (lyric-text::calc-text): new function.
802 * lily/lyric-engraver.cc (process_music): don't set 'text.
804 * scm/output-lib.scm (string-finger::calc-text): new function
805 (lyric-text::print): new function.
807 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
808 generic for fingering & string number. Use for string-finger.
810 * scm/define-music-types.scm (music-descriptions): add
813 * lily/fingering-engraver.cc (listen_string_finger): new function
815 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
817 * scm/define-context-properties.scm
818 (all-user-translation-properties): add stringFingerOrientations
820 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
822 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
823 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
825 * lily/dots.cc: Added style property for dots.
827 * mf/parmesan-heads.mf: Fix typo in comment.
829 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
830 adding longa head to feta font and removing obsolete default
833 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
835 * scm/output-lib.scm (fingering::calc-text): use origin
836 event-property, not music-property.
838 * lily/lilypond.rc.in: spell my name correctly.
840 2006-10-10 Joe Neeman <joeneeman@gmail.com>
842 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
843 already have a non-empty extent. Fixes estimation for Hara-kiri
846 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
848 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
851 * lily/ligature-engraver.cc: Remove unused #include.
853 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
854 Bugfix: remove method check_for_prefix_loss(Item *) from global
855 namespace to avoid namespace pollution.
857 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
859 * VERSION: release 2.9.22
861 * ly/generate-documentation.ly: update option name.
863 * lily/dynamic-text-spanner.cc (print): revert fix.
865 * scm/define-grob-interfaces.scm
866 (trill-pitch-accidental-interface):
867 add trill-pitch-accidental-interface
869 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
870 dereference if it's really a duration.
872 * lily/figured-bass-engraver.cc (process_music): clear spanner if
873 useBassFigureExtenders is not set.
874 (listen_bass_figure): record as new event if
875 useBassFigureExtenders not set. Fixes #103.
877 * scm/stencil.scm (circle-stencil): don't center stencil argument,
878 instead: move circle. Fixes #107.
880 * scm/define-grobs.scm (all-grob-descriptions): set
881 allow-loose-spacing for PaperColumn and
882 NonMusicalPaperColumn. Kludge for #110.
884 * lily/spaceable-grob.cc: add allow-loose-spacing property.
886 * lily/spacing-determine-loose-columns.cc (is_loose_column):
887 allow-loose-spacing property.
889 * scm/define-markup-commands.scm (postscript): gsave & grestore
890 around embedded PS. Do setlinewidth too. Fixes #109.
892 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
894 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
895 code. This patch fixes ligature brackets that were not at all
898 2006-10-08 Graham Percival <gpermus@gmail.com>
900 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
902 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
904 * scm/define-context-properties.scm: clarified docs (bug 91).
906 * Documentation/user/basic-notation.itely: document volta brackets
907 not aligning (bug 63).
909 * Documentation/user/ global.itely invoking.itely: ignore or
910 add warnings about texstr.
912 2006-10-08 John Mandereau <john.mandereau@free.fr>
914 * po/fr.po: update translation.
916 * po/: update msgids.
918 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
920 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
922 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
924 * Documentation/user/page.itely (Two-pass vertical spacing): add
925 documentation for two-pass spacing technique.
927 2006-10-06 Graham Percival <gpermus@gmail.com>
929 * Documentation/user/convert-ly.txt: new file; new
930 storage place for this file (moved from bugs/ CVS).
932 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
934 * lily/note-head.cc: Fixed programming_error message.
936 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
938 * scm/define-grobs.scm (pure-conversion): move pure-callback
941 * scm/script.scm (default-script-alist): set avoid-slur for turn,
942 marcato, stopped, thumb.
944 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
946 * lily/completion-note-heads-engraver.cc (process_music): don't
947 skimp on memory usage.
949 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
952 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
953 parenthesis item. This fixes premature Y-extent triggering. Fixes
956 * VERSION (PATCH_LEVEL): bump version.
958 2006-10-04 Graham Percival <gpermus@gmail.com>
960 * Documentation/user/advanced-notation.itely: added
961 info about instrument names for piano or other contexts,
964 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
966 * mf/feta-bolletjes.mf (solfa_quarter_width): use
967 solfa_base_notewidth as unit for non-DO-notes too.
969 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
971 * VERSION: release 2.9.21
973 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
976 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
978 * python/lilylib.py (progress): Minor fix.
980 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
982 * lily/note-name-engraver.cc: doc engraver.
984 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
986 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
988 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
991 * lily/stem-engraver.cc (make_stem): don't set duration-log
993 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
994 write snippet-names binary.
996 * python/lilylib.py (system): use os.system for mingw32
998 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1001 * scm/backend-library.scm: update email address.
1003 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1006 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1009 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1010 handle dot creation separately.
1012 * lily/tab-note-heads-engraver.cc (process_music): idem.
1014 * lily/drum-note-engraver.cc (process_music): idem.
1016 * lily/note-heads-engraver.cc (process_music): idem.
1018 * lily/rest-engraver.cc: don't set duration-log.
1020 * scm/output-lib.scm (string-number::calc-text): new function.
1021 (note-head::calc-duration-log): new function.
1023 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1025 * scm/output-lib.scm (fingering::calc-text): new function.
1027 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1029 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1030 and include-eps-font -> include-eps-fonts
1032 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1034 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1036 * lily/timing-translator.cc: list properties.
1037 (start_translation_timestep): update internalBarNumber too.
1039 * scm/define-context-properties.scm
1040 (all-user-translation-properties): add internalBarNumber.
1042 * input/regression/spacing-no-note.ly: new file.
1044 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1046 * lily/book.cc: #include cleanup.
1048 * lily/include/lily-guile-macros.hh: add assert to
1049 scm_or_str2symbol(SCM).
1051 * VERSION (PATCH_LEVEL): bump version.
1053 * lily/spacing-spanner.cc (musical_column_spacing): handle
1054 musical->nonmusical spacing case, where there is no spacing
1055 wish. Fixes issue #61.
1057 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1058 (pango_item_string_stencil): use logical rect horizontally (to
1059 preserve spaces), ink_rect vertically (for time signatures).
1061 * lily/font-metric.cc (word_stencil): new interface function
1063 * input/regression/utf-8-mixed-text.ly: new file.
1065 * lily/percent-repeat-engraver.cc (listen_percent): remove
1068 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1069 non-dynamic scripts. Fixes #30.
1071 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1073 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1075 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1076 SCM_UNDEFINED for non-existent data.
1078 * lily/side-position-interface.cc (general_side_position): allow
1079 optional current_offset argument for chaining, so combinations of side-position
1080 and outside slur callback don't add up. Fixes issue #92.
1082 * lily/pango-font.cc (pango_item_string_stencil): use
1083 logical_rect. This prevents spaces after words from disappearing,
1086 * VERSION: release 2.9.20
1088 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1090 * scm/define-grob-properties.scm (all-user-grob-properties):
1091 mention stencil as user settable.
1093 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1095 * Documentation/user/page.itely (Page formatting):
1096 document auto-first-page-number
1098 * lily/page-breaking.cc (find_chunks_and_breaks):
1099 * lily/paper-score.cc (calc_breaking): Follow changes to the
1100 Constrained_breaking interface
1102 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1103 here backwards, as an optimisation
1104 (initialize): new function; move most of the code in resize () here
1105 (combine_demerits): cache ragged_right_
1106 (Constrained_breaking): constructor now takes the Paper_score
1108 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1110 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1111 avoid parser lookahead for 0-ary functions.
1113 * lily/translator.cc: Extract event classes from
1114 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1116 2006-10-02 Heikki Junes <hjunes@gmail.com>
1118 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1121 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1123 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1124 function. Call the page breaking function selected in the
1125 `page-breaking' \paper variable, then the post processing function
1126 chosen using the `page-post-process' \paper variable.
1127 (line-height): new function. Return the height of a system.
1128 (line-minimum-position-on-page): new function. Return the position
1129 of a system on page (using the previous line position), only
1130 considering between system padding.
1131 (stretchable-line?): new function. Says whether a line can be
1132 stretched (ie. is not a title nor a single staff system).
1133 (page-maximum-space-left): new function. Computes space left on a
1134 page, when all systems are separated by their padding.
1136 * lily/page-breaking.cc (breaking::make_pages): Move page post
1137 processing function call to page breaking wrapper (common to all
1140 * lily/paper-book.cc (book::pages): call the page breaking
1141 wrapper, instead of the page breaker directly
1143 * ly/paper-defaults.ly: Add \paper variables for page breaking
1144 wrapper and page post processing function. Make
1145 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1146 `system-maximum-stretch-procedure' variable for holding a function
1147 computing the maximum stretch a system allows.
1149 * scm/layout-page-dump.scm (write-page-breaks): computes the
1150 stretch to apply to systems on a page to minimize left
1151 space. Dump this stretch length.
1153 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1154 the system-stretch property of the tweak data to stretch the
1156 (includePageLayoutFile): Void function which includes the
1157 generated page-layout file if it exists and if the page layout
1158 dumping is not asked.
1159 (scoreTweak): if the score tweak named by the argument exists,
1162 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1164 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1165 handle correctly the case where there are multiple \noPageBreaks
1168 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1170 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1172 * abc2ly.py fix so that entering " -- " will translate to a -- in
1173 the lilypond instead of a " - - "
1175 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1177 * lily/align-interface.cc: fix typo
1179 * lily/dynamic-text-spanner.cc (print): Add a special case for
1180 trill spanner right sides.
1182 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1184 * lily/align-interface.cc (get_extents_aligned_translates): add
1185 support for padding variable.
1187 * lily/break-align-interface.cc (self_align_callback): oops: use
1188 loop variable in guard.
1190 * input/regression/repeat-percent-grace.ly: new file.
1192 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1193 remember first currentCommandColumn of a grace run. Fixes issue 70.
1195 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1196 move class definition to CC file.
1198 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1200 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1201 measure-long repeats.
1203 * flower/include/international.hh: include stdarg.h
1205 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1207 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1208 put_systems_on_pages to return an empty result, we need to assign
1209 demerits properly in that case.
1210 (put_systems_on_pages): Make the number of pages depend on the
1211 evenness of page_number. Add auto-first-page-number.
1212 (calc_subproblem): ensure that the page-number is even for the
1213 left-hand page. Warn if the first page-turn doesn't fit onto the
1214 first (right-hand) page.
1216 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1217 (min_page_count): make this publicly accessible
1218 (min_page_count): fix a bug when there are forced page breaks that
1219 was introduced when I made this loop run backwards
1220 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1221 replace space_systems_on_min_pages with these two. The logic in
1222 space_systems_on_min_pages was getting too convoluted and is better
1223 contained in page-turn-page-breaking.
1225 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1227 (breakable_column): typo
1229 * lily/source-file.cc (get_line): fix off-by-one error
1230 and clean up some of the logic
1232 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1234 * lily/page-breaking.cc (make_pages): honour the first-page-number
1237 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1239 * VERSION (PACKAGE_NAME): bump version.
1241 2006-09-26 Pal Benko <benko.pal@gmail.com>
1243 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1244 (the latter is the same as petrucci-f which is kept for compatibility)
1246 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1248 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1250 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1252 * lily/global-context.cc (run_iterator_on_me): break out of loop
1253 if moment doesn't increase.
1255 * scm/define-grob-properties.scm (all-user-grob-properties): add
1258 * lily/accidental.cc (after_line_breaking): read forced property.
1260 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1263 * input/regression/accidental-forced-tie.ly: new file.
1265 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1267 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1269 * lily/figured-bass-engraver.cc: only listen to rest events if
1270 ignoreFiguredBassRest is not set.
1272 * scm/define-context-properties.scm
1273 (all-user-translation-properties): add ignoreFiguredBassRest property
1275 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1277 * lily/paper-book.cc (get_system_specs):
1278 (set_system_penalty): fix breakbefore.
1279 We used to set a penalty on the system after the break, now we
1280 set a permission on the system before the break
1282 * lily/grob-property.cc: add scm debugging hooks into
1283 property modification
1285 * lily/context-property.cc:
1287 rename make_foo_from_properties to internal_make_foo and
1288 move it from context-property.cc to a member function of
1291 * lily/include/lily-guile-macros.hh:
1292 overload ly_symbol2scm macro so that there is no more need
1295 * lily/volta-repeat-iterator.cc:
1296 * lily/tweak-engraver.cc:
1297 * lily/tuplet-bracket.cc:
1298 * lily/span-bar-engraver.cc:
1299 * lily/script-engraver.cc:
1300 * lily/prob-scheme.cc:
1301 * lily/pointer-group-interface.cc:
1303 * lily/grob-scheme.cc:
1304 * lily/grob-property.cc:
1306 * lily/context-property.cc:
1307 * lily/break-substitution.cc:
1308 * lily/break-align-engraver.cc:
1309 * lily/axis-group-interface.cc:
1310 * lily/align-interface.cc:
1311 remove calls to internal_FOO
1313 * lily/system-start-delimiter-engraver.cc:
1314 * lily/parenthesis-engraver.cc:
1315 * lily/accidental-engraver.cc:
1316 remove calls to make_foo_from_properties
1318 2006-09-23 Graham Percival <gpermus@gmail.com>
1320 * Documentation/user/programming-iterfaces.itely: fix
1321 def-music-function -> define-music... leftover.
1323 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1325 * lily/page-spacing.cc (min_page_count): by running the loop
1326 backwards, we can calculate ragged_last properly.
1328 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1330 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1331 printfirst-page-number -> print-first-page-number
1333 * python/convertrules.py: corresponding rule.
1335 * Documentation/user/page.itely (Page formatting): Document the
1336 default values of all page layout parameters.
1338 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1340 * lily/lexer.ll: remove limitation on music function arity. New
1341 mode extratoken, which inserts extra EXPECT_* tokens after
1342 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1344 * lily/parser.yy: Change grammar for music function accordingly.
1346 * lily/include/lily-parser.hh: New method get_state, new member
1347 hidden_state. Works around a problem when parser fetches
1348 MUSIC_FUNCTION token but not the following EXPECT_* token.
1350 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1353 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1354 references to Music; use ASSIGN_EVENT_ONCE everywhere
1356 * lily/grob-info.cc: junk *music_cause
1358 * lily/music.cc: copy eventified articulations to stream event
1360 * lily/part-combine-iterator.cc: Cleanup using enums
1362 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1365 * lily/include/engraver.hh: Junk music.hh include
1367 * lily/stream-event.cc: Changed constructors
1369 2006-09-21 Graham Percival <gpermus@gmail.com>
1371 * Documentation/user/tweaks.itely (Fitting music onto fewer
1372 pages): change settings to avoid warning messages.
1374 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1376 * Documentation/user/tweaks.itely (Fitting music onto fewer
1377 pages): Add between-system-space setting.
1379 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1381 * lily/accidental-placement.cc (calc_positioning_done): don't
1382 trigger Y-extent calculation too early. Use pure_height instead.
1384 * lily/scale.cc (LY_DEFINE): new file.
1386 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1388 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1389 that happen at the start of a score: having a zero-length
1390 chunk was messing up min_system_count calculations.
1392 * lily/source-file.cc (get_line): lower_bound, not
1393 binary_search. Fixes problem where point-and-click would
1394 always point to the first line.
1396 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1398 * lily/accidental-placement.cc (calc_positioning_done): also put
1399 stems into accidental support.
1401 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1404 * scm/script.scm (default-script-alist): avoid-slur and
1405 slur-padding for portato script.
1407 * lily/stem-tremolo.cc (translated_stencil): new function.
1408 (height): use new function. Fixes tremolos on whole notes.
1410 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1413 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1415 * scripts/abc2ly.py (try_parse_comment): idem.
1417 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1418 bar_string iso. string.find()
1422 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1425 2006-09-18 Graham Percival <gpermus@gmail.com>
1427 * Documentation/user/basic-notation.itely: add bug
1428 warning about ties and octavation/clef.
1430 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1432 * VERSION (PACKAGE_NAME): release 2.9.18
1434 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1436 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1437 figure out midi file names right here.
1439 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1441 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1443 * scm/backend-library.scm: option naming: gs-font-load*s*
1445 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1448 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1450 * scm/define-music-types.scm (music-descriptions): remove
1451 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1452 Music::to_event doesn't complain.
1454 * lily/accidental-placement.cc (ape_compare):
1455 * lily/semi-tie.cc (compare):
1456 * lily/note-column.cc (shift_compare): replace by XXX_less
1458 * lily/tie-formatting-problem.cc (set_chord_outline):
1459 * lily/tie-column.cc (calc_positioning_done):
1460 * lily/system.cc (post_processing)
1462 * lily/stem.cc (note_head_positions)
1463 (calc_positioning_done):
1464 * lily/spanner.cc (do_break_processing)
1465 (find_broken_piece):
1466 * lily/span-bar.cc (print):
1467 * lily/semi-tie-column.cc (calc_positioning_done):
1468 * lily/rest-collision.cc (calc_positioning_done):
1469 * lily/program-option.cc (get_help_string):
1470 * lily/note-collision.cc (get_clash_groups):
1471 * lily/new-fingering-engraver.cc (position_scripts):
1472 * lily/keyword.cc (Keyword_table):
1473 * lily/hara-kiri-group-spanner.cc (request_suicide):
1474 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1475 * lily/accidental-placement.cc (calc_positioning_done):
1477 * lily/beam.cc (get_beam_segments):
1478 * lily/grob-array.cc (remove_duplicates):
1481 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1482 ragged-last-bottom = ##f (test the new page breaker)
1484 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1486 * scm/define-context-properties.scm
1487 (all-internal-translation-properties): remove properties that
1488 were used to communicate page-turn stuff to the paper-column
1491 * lily/lily-guile.cc (robust_scm2string): new function
1493 * lily/paper-column-engraver.cc: Clean up page turn stuff
1495 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1496 instead of cluttering up paper-column-engraver.cc
1498 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1500 * scm/layout-page-dump.scm (scm): export utility function names,
1501 to allow user writing cutsom dumping functions.
1503 * scm/layout-page-layout.scm: export utility function names to
1504 enable custom page breaking function writing. Tabify.
1505 (line-next-space): use ?-suffix only for predicates
1506 (page-maximum-space-to-fill): new function. Return the space
1507 between first and bottom system of a page, to give to
1509 (space-systems): use a space-to-fill argument (for instance as
1510 computed by page-maximum-space-to-fill) instead of computing
1511 internaly this space with the page height. That way, the caller
1512 can adjust the space to use.
1513 (make-page-from-systems, walk-paths): compute space to fill before
1514 calling space-systems.
1516 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1518 * scm/script.scm (default-script-alist): set paddings for every
1519 type here, increase for portato mark.
1521 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1524 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1526 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1527 use spanner::set-spacing-rods
1529 * lily/note-column.cc: reformat.
1531 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1532 step positioning for note/rest combinations.
1534 * input/regression/rest-note-collision.ly: new file.
1536 * scm/define-grobs.scm (all-grob-descriptions): add
1539 * flower/include/std-vector.hh: switch off again.
1541 * VERSION (PATCH_LEVEL): bump to 2.9.18
1543 * flower/include/std-string.hh: idem.
1545 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1547 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1549 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1552 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1554 * Documentation/user/page.itely: update page breaking documentation
1556 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1558 * lily/note-collision.cc (calc_positioning_done): only access
1559 first head if available.
1561 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1563 * scm/framework-ps.scm (output-preview-framework): use new name.
1565 * lily/program-option.cc (internal_set_option): use new names.
1567 * Documentation/user/SConscript (lilypond_book_flags): update -d
1570 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1571 output into other programs): new variable names.
1573 * scm/lily.scm (define-scheme-options): uniformize var names.
1575 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1576 tuplets_ is non-empty before popping.
1578 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1580 * lily/spanner.cc (find_broken_piece):
1581 * lily/spacing-spanner.cc (get_columns):
1582 * lily/source-file.cc (get_line):
1583 * lily/simple-spacer.cc (get_column_description):
1584 * lily/keyword.cc (lookup):
1585 use the new binary search.
1587 * flower/include/std-vector.hh: replace binary_search with
1588 a more STL-like version
1590 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1592 * lily/tie-performer.cc: remove unused last_event_ property.
1593 (class Tie_performer): add now_tied_heads_ property for
1594 partially-tied heads.
1595 (acknowledge_audio_element): when adding an Audio_note, put the
1596 note in now_tied_heads_ if the audio note is partially tied.
1597 (stop_translation_timestep): always include entries in
1598 now_tied_heads_ in heads_to_tie_.
1600 * lily/drum-note-performer.cc (process_music): look for tie-events
1601 in the articulations; pass to Audio_note constructor.
1603 * lily/note-performer.cc (process_music): look for tie-events in
1604 the articulations; pass to Audio_note constructor.
1606 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1609 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1610 include initializer in constructor.
1612 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1614 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1615 unless they are breakable. This fixes discrepancies between the forces
1616 calculated here and the forces calculated in get_line_configuration.
1618 * lily/grob.cc (pure_relative_y_coordinate): fix some
1619 mis-estimation that was happening with piano staves.
1621 * lily/constrained-breaking.cc (resize): don't choke if we get a
1622 measure that won't fit on a line.
1623 (combine_demerits): don't consider uniformity when ragged
1625 * lily/page-spacing.cc (solve): why the f* were there two of these?
1626 (calc_subproblem): properly handle the case where a system is taller
1629 * lily/system.cc (get_paper_system): ensure that all the permissions
1630 and penalties are passed to the paper systems.
1632 * lily/page-breaking.cc (create_system_list): support system-count.
1634 * scm/define-grobs.scm (pure-print-callbacks): add
1635 ly:script-interface::print
1637 * lily/page-spacing.cc (min_page_count): fix calculation of min
1638 pages if we are ragged and there are non-zero springs.
1640 * scm/layout-page-layout.scm: if the pure-height estimates are under
1641 the real height, allow space-systems to ignore padding if it is
1642 needed in order to fit the systems on one page
1644 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1646 (solve): fix performance problem. Make sure we always get at least
1649 * lily/page-breaking.cc (make_pages): include write-page-breaks
1652 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1654 * scm/define-grobs.scm: add the new slur-callback
1655 fix pure-relevant to not exclude grobs whose extent is already
1658 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1661 * lily/slur.cc (pure_height): new callback to estimate the height
1664 2006-09-02 Graham Percival <gpermus@gmail.com>
1666 * Documentation/user/invoking.itely: small update on
1667 MacOS X notes; thanks Trevor!
1669 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1671 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1673 * lily/lexer.ll: accept EOF in all states.
1675 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1677 * lily/source-file.cc (Source_file): always 0-terminate character
1678 array, to prevent Flex from barfing.
1680 * lily/global-context.cc (get_output): robustness: don't crash if
1681 no Score context found.
1683 * lily/include/book.hh (class Book): idem.
1685 * lily/include/context-def.hh (struct Context_def): idem.
1687 * lily/include/score.hh (class Score): don't derive from Input.
1689 * lily/book.cc (Book): add a copy ctor.
1691 * buildscripts/output-distance.py (FileLink.calc_distance): count
1692 orphans in distance too.
1694 * python/midi.c (midi_parse_track): robustness: don't read past
1697 * ly/performer-init.ly: add Control_track_performer, move
1698 Tempo_performer and Time_signature_performer to Score.
1700 * lily/score-performer.cc (acknowledge_audio_elements): override
1701 from base class: add to audio-columns
1703 * lily/control-track-performer.cc (add_text): new file: generate
1706 * lily/performance.cc: move output_header_track to
1707 Control_track_performer ()
1709 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1711 * lily/include/midi-item.hh (class Midi_channel_item): insert
1712 class into hierarchy, for items that can have a channel setting. Dehungarify.
1714 * lily/include/performer.hh (class Performer): remove
1715 play_element(); move functionality into announce/acknowledge.
1717 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1719 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1720 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1722 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1724 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1727 * lily/all-font-metrics.cc: remove TFM support.
1729 * lily/include/tfm.hh: remove TFM support, TFM reader.
1731 * lily/include/binary-source-file.hh: remove Binary_source_file.
1733 2006-08-27 Graham Percival <gpermus@gmail.com>
1735 * Documentation/topdocs/NEWS.itely: add @c marker for
1736 stuff I've processed.
1738 * Documentation/user/ various: info from NEWS.
1740 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1742 * lily/paper-column-engraver.cc (finalize): Oops, this change
1743 should have gone in on 2006-08-23
1745 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1747 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1748 quotes to quote arguments. Fixes Windows problem.
1750 * python/lilylib.py (progress): idem
1752 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1754 * scripts/musicxml2ly.py: fix for importing
1755 minor key signatures from MusicXML. (Phillip Kirlin)
1757 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1759 * python/musicxml.py:
1760 (Attributes.get_key_signature): now correctly retrieves mode from
1763 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1765 * lily/parser.yy (output_def_body): take ownership of identifier
1768 * Documentation/user/advanced-notation.itely (Metronome marks):
1769 update use of \tempo in \midi.
1771 * VERSION: release 2.9.16
1773 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1775 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1778 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1780 * input/regression/tie-chord-partial.ly: clarify example.
1782 * scm/define-music-properties.scm (all-music-properties): remove
1785 * ly/music-functions-init.ly: remove \untied.
1787 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1788 stream events and music events.
1789 (stop_translation_timestep): search acknowledged heads for
1792 * input/regression/tie-chord-partial.ly: new file.
1794 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1795 for \char markup command.
1797 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1799 * scm/define-music-types.scm (music-descriptions): consistency:
1800 Use solo-{one,two}-event iso. solo-[12]-event.
1802 * lily/part-combine-engraver.cc (process_music):
1803 Use solo-{one,two}-event iso. solo-[12]-event.
1805 * ly/declarations-init.ly (partCombineListener): add Timing as
1808 * flower/std-string.cc (string_copy): use copy ()
1810 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1812 2006-08-24 Graham Percival <gpermus@gmail.com>
1814 * Documentation/user/changing-defaults.itely, global.itely,
1815 lilypond-book.itely, page.itely: minor changes from mailist.
1817 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1819 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1822 * scm/define-context-properties.scm
1823 (translator-property-description): robustness: detect type errors
1824 in property definitions.
1826 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1827 after getting it from SCM.
1829 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1832 * lily/include/performer.hh (class Performer): strip get_tempo()
1835 * lily/midi-def.cc: strip file.
1837 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1839 * lily/include/context-def.hh (struct Context_def): use
1840 VIRTUAL_COPY_CONSTRUCTOR().
1842 * lily/source-file.cc: smobification.
1844 * lily/include/source-file.hh (class Source_file): smobify
1845 Source_file. Trim redundant members.
1847 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1848 clones after creation. This plugs a huge memory leak.
1850 * python/convertrules.py (FatalConversionError.sub_tempo):
1851 complete rule for \midi{ \tempo }
1853 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1855 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1857 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1859 * input/regression/optimal-page-breaking-hstretch.ly: test for
1860 ragged-last-bottom also
1862 * lily/paper-column-engraver.cc (finalize): make the end of a score
1863 breakable by default. This is to balance out a change in behaviour
1864 of the page-turn-breaker which no longer makes the end of a score
1867 * lily/paper-book.cc (pages): set the systems_ once the pages are
1870 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1871 Page_breaking interface.
1873 * lily/page-breaking.cc (class Page_breaking): make the interface
1874 more consistent and provide abstractions for dealing with
1877 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1878 algorithm. Use the new interface to Page_breaking.
1880 * lily/page-spacing.cc: better support for ragged-bottom and
1883 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1885 * python/convertrules.py (conv): warning on \tempo{}
1887 * ly/performer-init.ly: set tempoWholesPerMinute.
1889 * ly/midi-init.ly: remove \midi
1891 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1894 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1895 tempoUnitDuration for determining what to print.
1897 * lily/lyric-extender.cc: typo.
1899 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1901 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1904 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1906 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1907 eps-pad-boxes is set.
1909 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1911 * THANKS: update sponsors.
1913 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1915 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1917 * input/regression/tie-chord-untied.ly: new file.
1919 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1921 * scm/define-music-properties.scm (all-music-properties): add
1924 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1926 (headertext_nopics): sanitize no-examples text.
1928 * scm/page.scm (make-page-stencil): don't rely on extents of
1929 page-stencil. This fixes spurious space around .EPS files produced
1930 with the EPS backend.
1932 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1934 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1936 * lily/hara-kiri-engraver.cc (process_music): remember
1937 keepAliveInterfaces after processing \set
1939 * lily/lyric-extender.cc (print): support left/right-padding for
1942 * scm/documentation-generate.scm (string-append): revert lilypond/
1945 2006-08-20 Graham Percival <gpermus@gmail.com>
1947 * Documentation/user/lilypond.tely: clarification to
1948 license presentation (not to actual license).
1950 * Documentation/user/basic-notation.itely,
1951 instrument-notation.itely: minor changes.
1953 * input/ {regression, test}/+.ly: clarification to
1954 text (you can click on examples). Thanks, Mats!
1956 * input/manual/bar-lines.ly: adds ||: repeats.
1958 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1960 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1962 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1964 * Documentation/user/lilypond.tely: strip lilypond/ from info
1965 links, rename to category LilyPond
1967 * lily/pango-font.cc (description_string): new function.
1969 * VERSION: release 2.9.15
1971 * lily/spacing-engraver.cc (stop_translation_timestep): use
1972 Dscho's fix for spacing spanner.
1974 * scm/define-music-types.scm (music-descriptions): use
1975 apply-output-event for ApplyOutputEvent
1977 * lily/output-property-engraver.cc (listen_apply_output): rename
1978 from listen_layout_instruction.
1980 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1983 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1985 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1986 commandline args with contains, split by \n.
1988 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1989 write snippet-names file, call with -dread-file-list. Fixes
1990 command limitations on 64-bit systems.
1992 * input/regression/stencil-color-rotation.ly: new file.
1994 * lily/include/translator.hh (struct Acknowledge_information):
1995 revert: don't use Protected_scm in global objects, as GUILE can't
1996 handle gc_unprotect from automated destructors on MacOS X.
1998 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1999 color, not the original stencil. Fixes combinations of
2000 color/transparency/rotation.
2002 * scripts/lilypond-book.py (main): add --formats=eps for
2005 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2006 crash if spacing_ is nonexistent.
2008 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2010 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2011 \catcode`\@=12 in the LaTeX output.
2013 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2015 * scm/define-music-types.scm (music-descriptions):
2016 use sustain-event iso. sustain-pedal-event.
2018 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2020 * scripts/convert-ly.py: honour the -n command-line switch
2022 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2024 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2025 break specification.
2027 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2029 * Documentation/user: convert-ly the user manual
2031 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2033 * stepmake/aclocal.m4: version check patch (thanks MWD)
2035 * ly/music-functions-init.ly: robustness. Don't crash if
2036 currentBarNumber is not a number.
2038 * VERSION (PATCH_LEVEL): bump.
2040 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2042 * stepmake/aclocal.m4: better version check; handle fooX.Y
2045 * ly/performer-init.ly: instrument name fixup.
2047 * input/manual/chord-names-jazz.ly (banterProperties):
2048 instrumentName update
2050 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2052 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2054 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2055 function. Use hash tables to check membership.
2057 * lily/general-scheme.cc (LY_DEFINE): new function.
2059 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2061 * lily/include/translator.hh (struct Acknowledge_information): add
2064 * ly/music-functions-init.ly: change name to BreathingEvent
2066 * input/regression/*.ly: apply it.
2068 * python/convertrules.py (conv): better instrumentName conversion
2071 * scm/define-music-types.scm (music-descriptions): add
2072 line-break-event to LineBreakEvent music
2074 * lily/music.cc (to_event): don't crash if music type not set.
2076 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2079 * lily/spacing-engraver.cc (stop_translation_timestep): set
2080 spacing for proportional notation too.
2082 * scm/translation-functions.scm (format-bass-figure): inspect
2085 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2087 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2089 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2091 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2093 * scm/layout-page-layout.scm (make-page-from-systems): new function
2094 (optimal-page-breaks): use the new page-breaking calling convention
2096 * scm/define-context-properties.scm (all-user-translation-properties):
2099 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2100 revokePageTurns functionality. If there is a special barline within
2101 the breakable region, break there instead of at the end of the region.
2103 * lily/paper-book.cc (pages): use the new page-breaking calling
2106 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2108 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2110 * scripts/lilypond-book.py: insert \sourcefileline command in
2111 output, so lilypond error messages refer to the spot in the
2112 original .lytex / .itely sourcefile.
2114 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2116 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2117 space to next column for distance to fixed col.
2119 * VERSION (PACKAGE_NAME): release 2.9.14
2121 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2124 * lily/accidental-engraver.cc (process_acknowledged): don't create
2125 accidental for trill span event. This fixes spurious accidentals
2128 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2130 * scm/define-grob-properties.scm (all-user-grob-properties):
2131 Clarify documentation of side-axis and direction. Thanks to Paul
2132 for the inspiration.
2134 * lily/bar-line.cc: Add documentation for "||:" also in the
2135 interface documentation.
2137 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2139 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2141 * lily/paper-column.cc (set_system): new function.
2143 * lily/spacing-engraver.cc (stop_translation_timestep): store
2144 SpacingSpanner refs in Paper_column.
2146 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2147 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2149 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2151 * lily/beam-engraver.cc (listen_beam): add method for
2152 Grace_beam_engraver too.
2154 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2156 * python/convertrules.py: Fix indentation bug that broke
2157 conversion of files older than 1.3.117.
2158 Fix escape error in the description for 2.9.6.
2160 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2162 * lily/*-engraver.cc: convert all try_music functions to listen_*
2165 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2166 enums to represent pedal types, and calculate more data statically.
2168 * scm/part-combiner.scm (recording-group-emulate): create a
2169 softcoded substitute for recording-group-engraver.cc.
2171 * lily/music.cc: make a common transpose function for events and
2174 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2175 ManualMelismaEvent, and obsoletes Melisma_translator.
2177 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2179 * input/test/instrument-name-align.ly: update version.
2181 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2183 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2184 Doc the --pdf flag to lilypond-book.
2186 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2188 * Documentation/topdocs/NEWS.tely (Top): add description.
2190 * input/regression/tuplet-full-length-note.ly: add file.
2192 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2193 always store axis group.
2195 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2197 * input/regression/instrument-switch.ly: new file.
2199 * lily/instrument-switch-engraver.cc (process_music): new file.
2201 * ly/engraver-init.ly: add Instrument_switch_engraver
2203 * ly/music-functions-init.ly: \instrumentSwitch
2205 * scm/define-context-properties.scm
2206 (all-user-translation-properties): add instrumentCueName
2208 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2210 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2212 * ly/music-functions-init.ly: music function \transposition.
2214 * lily/parser.yy (command_element): softcode \transposition.
2216 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2217 (process_music): oops.
2219 * lily/instrument-name-engraver.cc (start_spanner): new
2220 function. Create spanner when property changes.
2221 (stop_spanner): new function.
2223 * python/convertrules.py (conv): add rule.
2225 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2226 shortInstrumentName iso. instr.
2228 * scm/output-ps.scm (dashed-line): add phase argument to
2231 * lily/bar-line.cc (dashed_bar_line): new function.
2232 (compound_barline): support \bar "dashed".
2234 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2235 --output=DIR to DIR/BASE if it is a dir.
2237 * flower/file-name.cc (file_part): new function
2238 (dir_part): new function
2240 * lily/lily-parser-scheme.cc (LY_DEFINE):
2242 * DEDICATION: update
2244 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2246 * lily/instrument-name-engraver.cc: formatting.
2248 * python/convertrules.py (conv): bugfix for \epsfile.
2250 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2254 * lily/gourlay-breaking.cc: Oops, these should have been included
2257 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2259 * scripts/*.py (program_name): cleanup relocation snippets.
2261 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2263 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2265 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2266 page-breakable by default
2268 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2269 correctly calculated for a single-system page
2271 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2272 bigger than the second number
2274 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2275 acknowledge that we aren't satisfying constraints)
2277 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2280 * lily/grob.cc (pure_height): add minimum-Y-extent
2282 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2285 * lily/constrained-breaking.cc: convert code to use new Matrix class
2286 (get_best_solution): new function
2288 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2289 is a page with no systems
2291 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2293 * VERSION (PACKAGE_NAME): release 2.9.13
2295 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2298 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2300 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2302 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2305 * scm/define-grob-properties.scm (all-user-grob-properties):
2306 remove grace-space-factor.
2308 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2309 grace-spacing-interface
2310 (spacing-options-interface): add.
2312 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2314 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2316 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2317 GraceSpacing object.
2319 * lily/note-spacing.cc: fix prop list formatting
2321 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2322 beaming for grace notes too.
2324 * input/regression/spacing-grace.ly: update.
2326 * lily/grace-spacing-engraver.cc: new file.
2328 * lily/spacing-spanner.cc: add strict-grace-spacing.
2330 2006-07-20 Graham Percival <gpermus@gmail.com>
2332 * lily/parser.yy: compile fix.
2334 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2336 * scm/define-grobs.scm (all-grob-descriptions): typo.
2338 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2339 .eps extension from includegraphics.
2341 * scripts/lilypond-book.py (main): add support for --pdf.
2343 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2344 callback to compute common shortest duration.
2345 (set_springs): typo.
2347 * scm/define-grob-properties.scm (all-user-grob-properties): add
2348 strict-grace-spacing.
2350 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2351 support float_grace_columns_.
2353 * lily/spacing-options.cc (init_from_grob): new file.
2355 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2357 * input/regression/spacing-loose-grace.ly: new file.
2359 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2361 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2362 tupletFullLengthNote too. Choose right bound depending on value.
2364 * input/regression/tuplet-full-length-note.ly: new file.
2366 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2368 * lily/*-performer.cc: Converted try_music to listen_*
2370 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2371 as a stream-event internally. Introduce event_cause (), deprecate
2374 * scm/define-music-types.scm: Removed BusyPlayingEvent
2376 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2378 * Documentation/user/advanced-notation.itely (Font selection):
2379 Document how to get a list of available fonts using 'lilypond
2380 -dshow-available-fonts blabla'.
2382 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2384 * GNUmakefile.in: filter lily-XXX.pdf files.
2386 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2388 * scm/define-grob-properties.scm (all-internal-grob-properties):
2389 remove delta-pitch. Use delta-position everywhere.
2391 * scm/output-lib.scm (fall::print): use new order.
2393 * scm/output-ps.scm (path): reorder arguments.
2395 * scm/output-svg.scm (path): support for path primitive.
2397 * input/regression/bend-after.ly: new file.
2399 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2400 recipe for eps -> pdf conversion.
2402 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2404 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2407 2006-07-19 Graham Percival <gpermus@gmail.com>
2409 * input/manual/screech-boink.ly: moved to here.
2411 * input/screech-boink.ly: deleted.
2413 * scm/define-grob-properties.scm: clarify doc string.
2415 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2417 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2419 * scm/output-ps.scm (path): define path.
2421 * scm/define-stencil-commands.scm
2422 (ly:register-stencil-expression): add path.
2424 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2426 * ly/engraver-init.ly: add Fall_engraver
2428 * lily/parser.yy (music_function_event): allow musicfunction
2429 without music arg as music_function_event.
2431 * lily/grob-scheme.cc (LY_DEFINE):
2432 ly:grob-robust-relative-extent. New function.
2434 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2436 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2438 * scm/output-lib.scm (fall::print): new function
2440 * lily/fall-engraver.cc (stop_fall): new file.
2442 * ly/music-functions-init.ly: alphabetise.
2444 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2447 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2449 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2451 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2454 * lily/translator-group.cc (connect_to_context): non const error message.
2456 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2458 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2461 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2463 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2465 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2468 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2470 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2472 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2474 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2476 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2478 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2480 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2482 * scm/layout-page-layout.scm: Define module, tidy code, use more
2483 functions iso. a single big one.
2485 * scm/layout-page-dump.scm: move page dump functions used in two
2486 pass spacing to this file. Define module.
2488 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2491 * ly/paper-defaults.ly: use module layout-page-layout.
2493 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2495 * lily/music.cc: Revised MusicEvent event class. It now contains
2496 event data directly instead of encapsulating it in music. The
2497 previously used class is renamed to OldMusicEvent.
2499 * lily/stream-event.cc: Stream events are now probs.
2501 * lily/translator-group.cc, lily/translator.cc: Translators can
2502 now listen directly to stream events, by using macros
2503 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2505 * lily/arpeggio-engraver.cc: Converted to use new event system
2507 * THANKS: Corrected spelling mistake.
2509 2006-07-12 Graham Percival <gpermus@gmail.com>
2511 * Documentation/user/SConscript, make/lilypond-vars.make,
2512 input/GNUmakefile: doc build looks in input/manual instead
2515 * input/manual/ GNUmakefile, SConscript: build files for
2518 * input/test/ various: some files moved to input/manual/
2520 * Documentation/user/basic-notation.itely: small updates;
2521 thanks Kieren and Charles!
2523 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2525 * VERSION (PACKAGE_NAME): release 2.9.11
2527 * Documentation/topdocs/NEWS.tely (Top): update prop value
2529 * Documentation/user/basic-notation.itely (Tuplets): new property
2532 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2534 * python/convertrules.py (conv): tweaks.
2536 * VERSION (PATCH_LEVEL): bump version.
2538 * python/convertrules.py (conv): add rule for
2539 tupletNumberFormatFunction.
2541 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2542 tupletNumberFormatFunction.
2544 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2545 text through 'text callback.
2547 * lily/time-scaled-music-iterator.cc (construct_children): copy
2548 tweaks generated events.
2550 * scm/define-context-properties.scm
2551 (all-user-translation-properties): remove tupletNumberFormatFunction
2553 * lily/tuplet-engraver.cc (process_music): don't read
2554 tupletNumberFormatFunction
2556 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2559 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2561 * lily/global-context-scheme.cc: Separated ly:run-translator into
2564 * lily/score-engraver.cc, lily/score-performer.cc,
2565 scm/define-context-properties.scm: Make paper/midi output
2566 accessable as a context property.
2568 * lily/score-translator.cc, lily/score-context.cc: Removed.
2570 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2572 * scm/ps-to-png.scm (Module):
2573 * scm/framework-tex.scm (Module):
2574 * scm/framework-ps.scm (Module):
2575 * scm/backend-library.scm (Module):
2576 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2577 "dDEVICEHEIGHTPOINTS".
2579 2006-07-04 Graham Percival <gpermus@gmail.com>
2581 * Documentation/user/ various: general improvements to
2582 "working with lilypond files" section.
2584 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2586 * lily/sequential-iterator.cc: Change the default get_music_list
2587 to read elements-callback music property
2589 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2590 processing of multimeasure rests. Softcoded
2591 sequential-music-iterator.
2593 * lily/sequential-music-iterator.cc: Removed.
2595 2006-06-28 Graham Percival <gpermus@gmail.com>
2597 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2599 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2601 * lily/parser.yy: Wrap non-post-events in EventChords before
2602 assigning them to identifiers.
2604 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2606 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2607 gives correct vertical placement of \bar ":" in all staff
2608 sizes. Thanks Martial!
2610 2006-06-26 Graham Percival <gpermus@gmail.com>
2612 * Documentation/user/invoking.itely : minor update from mailist.
2614 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2616 * lily/ various: Introduce stream events of types Prepare,
2617 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2618 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2620 * lily/global-context*.cc: Time is now -inf before iteration
2623 * lily/include/context.hh: Removed unique_, init_
2625 * Documentation/topdocs/NEWS: Make the feathered beam example
2626 avoid triggering a bug.
2628 2006-06-24 Graham Percival <gpermus@gmail.com>
2630 * Documentation/user/ various: small additions from mailist.
2632 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2634 * ly/performer-init.ly: Add some missing links in the context
2635 hierarchy for MIDI output. There are probably some more missing!
2637 2006-06-21 Graham Percival <gpermus@gmail.com>
2639 * Documentation/user/ various: minor spelling fixes;
2640 thanks Dave Luttinen!
2642 * Documentation/user/ various: small clarifications;
2643 thanks Anthony Youngman!
2645 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2647 * po/fr.po: add \n appropriately.
2649 * lily/lexer.ll: remove ? from version-seen?
2651 2006-06-19 John Mandereau <john.mandereau@free.fr>
2653 * po/fr.po; update translation, by Jean-Charles Malahieude and
2656 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2658 * THANKS: add Markus Schneider.
2660 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2661 Staff_symbol_engraver
2663 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2664 replace staff_engraver
2666 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2669 * lily/staff-collecting-engraver.cc
2670 (acknowledge_end_staff_symbol): new function
2672 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2674 * lily/staff-collecting-engraver.cc
2675 (acknowledge_end_staff_symbol): new function.
2677 * lily/main.cc: switch on relocation by default.
2679 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2681 * lily/spacing-spanner.cc (musical_column_spacing): set
2682 compound_fixed_note_space to 0.0. Document why.
2684 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2685 range of inverse_hooke_
2686 (Simple_spacer): init completely.
2688 (get_line_configuration): don't use cols.resize(); it introduces
2691 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2693 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2695 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2696 try. Divide by beatlength.
2698 * input/regression/beaming-ternary-metrum.ly: update doc.
2699 add beatLength hack.
2701 * scm/music-functions.scm (make-time-signature-set): add
2702 standard-beat-grouping.
2704 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2706 * input/regression/tie-whole.ly: new file.
2708 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2709 cross center of note head in case of invisible stem.
2711 2006-06-16 Graham Percival <gpermus@gmail.com>
2713 * Documentation/user/ various: small fixes from mailist.
2715 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2717 * lily/breathing-sign.cc (offset_callback): idem.
2719 * lily/align-interface.cc (align_to_fixed_distance): remove
2722 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2725 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2727 * VERSION (PACKAGE_NAME): release 2.9.9
2729 * ly/lilypond-book-preamble.ly: add \version
2731 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2733 * scripts/lilypond-book.py (PREAMBLE_LY): include
2734 lilypond-book-preamble.ly
2736 * lily/stem.cc (get_beaming): return max of 0 and
2737 scm_ilength. Fixes slurring from/to beams.
2739 * ly/lilypond-book-preamble.ly: new file.
2741 * lily/slur.cc: add inspect-index feature.
2743 2006-06-13 Graham Percival <gpermus@gmail.com>
2745 * Documentation/user/tutorial.itely: trivial fix.
2747 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2749 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2750 all non-event music in the parser via MAKE_SYNTAX.
2752 * lily/parser-scheme.cc: Add ly:parser-error function
2754 * scm/paper.scm: fix typo
2756 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2760 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2763 * buildscripts/output-distance.py (test_compare_signatures):
2765 (read_signature_file): use new signature format.
2767 * scm/stencil.scm (write-system-signature): simpler signature
2770 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2773 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2774 stem_end_position, but estimate instead.
2776 * lily/tuplet-bracket.cc (calc_positions): look at
2777 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2778 brackets narrower than beams.
2780 * lily/lexer.ll: set version-seen? even if version is
2783 * lily/rest.cc (y_offset_callback): bugfix: decide position
2784 override based on scm_is_number(). Fixes \rest on center staff
2787 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2788 patterns for 16th triplets.
2790 2006-06-10 Graham Percival <gpermus@gmail.com>
2792 * Documentation/user/ page.itely, global.itely: editing
2795 * Documentation/user/ various: findex -> funindex.
2797 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2799 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2800 insert extra tuplet events.
2802 2006-06-10 Graham Percival <gpermus@gmail.com>
2804 * Documentation/user/programming-interfaces.itely: add
2807 * python/convertrules.py: add annotatefoo -> annotate-foo
2810 * Documentation/user/global.itely: start editing.
2812 * Documentation/user/page.itely: major editing, new spacing
2815 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2817 * scm/define-markup-commands.scm (wordwrap-markups): use
2818 output-def 'line-width if undefined.
2820 * HACKING: trim outdated info.
2822 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2824 * scm/define-grobs.scm (all-grob-descriptions): Add
2825 line-spanner-interface to all grobs that already have
2826 text-spanner-interface or dynamic-text-spanner-interface
2828 * scm/page.scm: Rename annotate{headers,systems,page}->
2831 * input/regression/page-spacing.ly,
2832 input/regression/page-layout-manual-position.ly: idem
2834 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2836 * lily/line-spanner.cc: cleanup property list.
2838 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2839 generator expressions (2.3 compat).
2841 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2843 * lily/vertical-align-engraver.cc: Make sure that the
2844 align{Above,Below}Context properties are included in the automatic
2847 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2849 * scm/paper-system.scm (paper-system-annotate): also annotate the
2850 estimated pure-Y-extent
2852 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2854 * lily/system.cc (break_into_pieces): set the estimated height
2855 of each child system
2857 * lily/stem.cc (pure_height): new pure-Y-extent callback
2859 * lily/staff-symbol-referencer.cc (callback): don't destroy
2860 the staff-position property
2862 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2863 consider_suicide into two functions
2865 * lily/constrained-breaking.cc (resize): use the new pure
2866 callbacks to estimate the height of a system
2868 * lily/axis-group-interface.cc (pure_group_height): new
2869 side-effect-free VerticalAxisGroup height-callback
2871 * lily/align-interface.cc (get_extents_aligned_translates):
2872 split align_elements_to_extents into two functions
2873 (get_pure_child_y_translation): new function
2875 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2877 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2879 * lily/paper-score.cc: cache break_indices and columns
2881 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2883 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2885 * lily/font-config.cc (init_fontconfig): do the init if
2886 cache_file, but don't look at cache_file.
2888 * input/regression/quote-tie.ly: new file.
2890 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2891 to Head_event_tuple, so we deal gracefully with ties on
2894 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2897 2006-06-08 Graham Percival <gpermus@gmail.com>
2899 * input/test/ smart-transpose.ly, reverse-music.ly:
2900 \applyMusic to music functions update, thanks Michael!
2902 2006-06-07 Graham Percival <gpermus@gmail.com>
2904 * input/test/ add-staccato.ly, add-text-script.ly,
2905 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2906 music functions update, thanks to Michael Meixner.
2908 * Documentation/user/music-glossary.tely: small fix
2911 * Documentation/user/ various: minor additions from mailist.
2913 * Documentation/user/lilypond.tely, basic-notation.itely:
2914 small test of @funindex. (works here)
2916 * input/test/font-table.ly: reduce size to partially
2917 de-ugly version in manual.
2919 * Documentation/user/page.itely: new file (split former
2920 "global issues" into "page settings" and "non-musical
2923 * Documentation/user/ various: fix @ref{}s to match
2924 new chapter names (above).
2926 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2928 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2930 2006-06-06 Graham Percival <gpermus@gmail.com>
2932 * Documentation/user/advanced-notation.itely: add example
2933 for segno/coda on barline.
2935 * tex/texinfo.tex: merge from upstream.
2937 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2939 * scripts/lilypond-book.py (process_snippets): Argument fix.
2942 * buildscripts/builder.py:
2945 * Documentation/user/SConscript: More SCons fixes.
2947 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2949 * lily/font-config.cc (init_fontconfig): Only initialize if
2950 global cache_file is found.
2952 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2954 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2957 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2959 * VERSION (PACKAGE_NAME): release 2.9.8
2961 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2962 function. Delay ledger modifying ledgered grobs to
2963 stop_translation_timestep(), to ensure that we're ledgering
2964 according to the new spanner.
2965 (acknowledge_staff_symbol): don't check for non-NULL
2966 staff_sym->get_bound()
2968 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2971 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2974 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2975 directly from srcdir/stepmake/aclocal.m4
2977 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2980 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2982 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2984 * lily/simple-spacer.cc (get_line_configuration): add
2985 keep-inside-line rods
2986 (struct Column_desc): add constructor
2987 (struct Rod_desc): add constructor
2988 (get_line_forces): check for forced page breaks here too
2990 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2991 support/elements cycles between InstrumentNames and AxisGroups
2993 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2995 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2997 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2998 make-txt-files target.
3000 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3001 make-txt-files target.
3003 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3005 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3008 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3010 * Documentation/user/instrument-notation.itely,
3011 input/regression/breathing-sign-ancient.ly,
3012 input/test/divisiones.ly: Removed redundant property settings for
3015 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3016 fix lyrics alignment problems. They are implemented now as scheme
3017 functions that add the appropriate unicode char to the first lyric
3018 event rather than adding a separate lyric event. Minor edit of
3021 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3023 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3024 pollute src dir with built .txt files, but install directly from
3025 Documentation/topdocs/out/
3027 * buildscripts/output-distance.py
3028 (ComparisonData.create_html_result_page): put version/directories
3031 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3034 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3035 Patch by Karl Hammar
3037 * buildscripts/readlink.py: add file.
3038 Patch by Karl Hammar
3040 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3042 * lily/tuplet-number.cc (print): prevent stencil from being
3045 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3047 * scm/stencil.scm (write-system-signature): explicitly
3048 -well, superfluously- close output port.
3050 * buildscripts/output-distance.py (main): oops. Add extra argument.
3052 2006-06-05 Graham Percival <gpermus@gmail.com>
3054 * Documentation/user/music-glossary.tely: clarified example
3055 from Francisco Vila, thanks!
3057 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3059 * input/regression/spacing-section.ly: new file.
3061 * lily/input.cc (programming_error): new function.
3063 * lily/spacing-engraver.cc (try_music): new function. Accept
3064 spacing-section-event
3066 * lily/spacing-spanner.cc (set_springs): take slices of all
3067 columns for spacing.
3069 * lily/include/paper-column.hh (class Paper_column): add
3070 Paper_column::compare.
3072 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3074 * scm/define-music-types.scm (music-descriptions): add
3077 * lily/music-iterator.cc (report_event): use programming_error for
3078 sending non-event error.
3080 * lily/input.cc (programming_error): new function
3082 * buildscripts/output-distance.py (main): use compare-XXX for
3084 (main): --threshold option, default at 0.30
3086 * output-distance.py (main): add --threshold option.
3088 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3090 * scm/paper-system.scm (paper-system-annotate): fix problem when
3091 annotating an empty system
3093 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3095 * GNUmakefile.in: reinstate old web tar/copying.
3097 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3099 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3100 nothing changes. (Erik S)
3102 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3105 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3107 * scm/define-markup-commands.scm (whiteout): do not force
3108 foreground color of argument markup to black.
3110 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3111 the left of the arrow, instead of below the arrow name, so that,
3112 when two little arrows are vertically stacked, their dimensions
3113 and name should not overlap. Add a color key parameter.
3115 * scm/paper-system.scm (paper-system-annotate): Annotate
3116 next-space+next-padding instead of next-space. Annotate space
3117 between next-padding and next-space+padding, respectively, and
3118 following system extent and refpoint-Y-extent. Use colors.
3120 * scm/page.scm (annotate-page): translate annotations slightly to
3123 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3125 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3126 fix for x-staff slurs. Thanks Joe!
3128 * buildscripts/output-distance.py
3129 (SystemLink.output_expression_change_count): keep track of changed
3130 details, and dump in details html page.
3132 * input/regression/figured-bass-staff.ly: add note about setting
3133 properties in Staff context.
3135 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3136 add slurs and ties to support too.
3138 * buildscripts/output-distance.py (main): set dest_dir
3139 argument. Add --max-count option.
3141 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3143 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3144 shortcuts for special unicode chars that are useful in chant
3145 notation. Revised exisiting and added new comments.
3147 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3149 * make/mutopia-rules.make: remove duplicate recipe.
3151 2006-06-02 Werner Lemberg <wl@gnu.org>
3153 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3154 Add support for U+0132 (IJ) and U+0133 (ij).
3156 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3158 * buildscripts/output-distance.py (FileLink): new class. collect
3159 info systems from one .ly file.
3160 (FileLink.link_files_for_html): further tweaks.
3162 2006-06-02 Graham Percival <gpermus@gmail.com>
3164 * tex/texinfo.tex: partial fix for @funindex.
3166 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3169 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3171 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3173 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3174 @example too. Backportme.
3176 2006-06-02 Graham Percival <gpermus@gmail.com>
3178 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3179 from Werner Lemberg.
3181 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3183 * Documentation/user/music-glossary.tely: additional spanish
3184 updates and a lyrics fix in an example.
3186 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3188 * scm/define-grob-properties.scm: Previous patch contained
3189 spurious line from another patch not yet committed. Fixed.
3191 * scm/define-grob-properties.scm: Add missing doc strings for
3194 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3196 * buildscripts/output-distance.py
3197 (ComparisonData.write_text_result_page): separate the scores, sort
3200 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3203 * buildscripts/output-distance.py (me_path): use argv[0] for
3205 (ComparisonData.img_cell): use colored borders.
3207 * scm/stencil.scm (write-system-signature): escape newlines too.
3208 (write-system-signature): use (1,-1) interval for empty interval
3210 2006-01-01 Graham Percival <gpermus@gmail.com>
3212 * Documentation/user/music-glossary.tely: Spanish updates
3213 from Francisco Vila.
3215 * Documentation/user/lilypond-book.itely: addition from
3218 * Documentation/user/ various: edits, small additions
3221 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3223 * GNUmakefile.in (tree-lib-prefix-current):
3224 (tree-share-prefix-current): Use version number in tree, add
3227 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3229 * GNUmakefile.in: write VERSION, again.
3231 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3232 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3234 * stepmake/aclocal.m4: robuster version detection.
3236 * buildscripts/output-distance.py
3237 (ComparisonData.create_html_result_page): copy only if file
3238 exists, fixup src paths.
3240 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3242 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3244 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3245 Another datarootdir reto.
3247 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3248 available. This should be moved to postinstall-lilypond-doc.
3250 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3252 * GNUmakefile.in: simplify local-WWW-post.
3253 remove -type l from find.
3255 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3256 fixes. Don't follow symlinks.
3257 (ComparisonData.create_html_result_page): remove previous results.
3258 insert ../python in path.
3260 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3262 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3264 * config.make.in (datadir): Add datarootdir to silence autoconf.
3266 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3268 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3270 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3272 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3273 slash beams too wide.
3275 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3277 * VERSION: release 2.9.7
3279 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3281 * lily/relocate.cc (read_relocation_dir): Do not blindly
3284 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3286 * lily/parser.yy: replace THIS by PARSER
3288 * Documentation/index.html.in: add link to test-results.html page.
3290 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3292 * scm/translation-functions.scm (format-bass-figure): translate
3293 digits over 10 to the left
3295 * scm/define-markup-commands.scm (translate-scaled): new markup.
3297 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3300 * ly/engraver-init.ly: add Figured_bass_engraver
3302 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3304 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3306 * lily/score-engraver.cc (announce_grob): only note START announces.
3308 * lily/include/engraver-group.hh (Translator_group):
3309 acknowledge_hash_table_ is now drul.
3311 * lily/engraver.cc (announce_end_grob): new method.
3313 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3315 * lily/translator-dispatch-list.cc (create): take start_end argument.
3317 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3318 acknowledge_static_array_ to drul
3320 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3322 * scm/define-grob-interfaces.scm
3323 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3325 * scm/define-grobs.scm (all-grob-descriptions): add
3326 BassFigureAlignmentPositioning
3328 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3329 number stays up to date. Backportme.
3331 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3333 * Documentation/user/basic-notation.itely (Bar lines): Document
3336 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3338 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3340 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3341 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3344 * Resurrect `scons lily' build.
3346 * SConstruct (symlink_tree): Bugfix: link
3347 music-drawing-routines.ps to file iso directory.
3349 * lily/SConscript: Remove kpath-guile from LIBS.
3351 * SConstruct (libdir_package_version): Typo.
3352 (configure): Comment-out fontforge for lack of fontforge.pc .
3353 Also add libdir* to environment.
3355 2006-05-30 Graham Percival <gpermus@gmail.com>
3357 * Documentation/user/ various: minor additions from mailist and
3360 2006-05-30 Paco <fravd@ya.com>
3362 * Documentation/user/music-glossary.tely: numerous corrections and
3363 some new translations.
3365 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3369 * buildscripts/output-distance.py
3370 (ComparisonData.create_html_result_page): new routine: summarise
3371 results in HTML page with images.
3372 (ComparisonData.create_text_result_page): create summary text files too.
3374 * GNUmakefile.in (web-ext): package .signature files too. They
3377 * scm/stencil.scm (write-system-signature): typo.
3379 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3381 * scm/stencil.scm (write-system-signature): better escaping.
3382 only write signature for music systems, not for markup systems.
3384 * scm/framework-ps.scm (output-framework): dump-signatures support
3387 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3389 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3390 for -dno-point-and-click
3392 * lily/grob.cc (get_print_stencil): don't read
3393 point_and_click_global to determine whether to set grob-cause.
3395 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3397 * buildscripts/output-distance.py (main): new function.
3398 (ComparisonData): new class.
3400 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3401 careful with generating new LedgerLineSpanners.
3403 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3405 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3406 context. This fixes double ledger lines in output.
3408 * lily/system.cc (get_paper_system): remove 3 layer limit.
3410 * buildscripts/output-distance.py (SystemLink.distance): new
3411 file. Compare signatures.
3413 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3415 * lily/grob-array.cc (remove_duplicates): rename from
3416 uniq(). Sort before calling uniq() so it actually works.
3418 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3420 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3421 \version from lilypond file snippet.
3422 (Lilypond_file_snippet.ly): oops. typo.
3423 (find_toplevel_snippets): urgh. again.
3425 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3426 prevent duplicated broken items in output.
3428 * scm/framework-eps.scm (output-classic-framework): only dump if
3429 dump-signatures is set.
3431 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3433 * scm/stencil.scm (write-system-signature): new routine: write
3434 python parseable signature of a separate paper system.
3437 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3439 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3443 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3445 * translator-group.cc: send music events to engravers in
3446 non-bottom contexts.
3448 * tuplet-engraver.cc: process tuplet brackets in correct order.
3450 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3452 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3453 arg 2 might point us to a new binary (patch by Karl Hammar)
3455 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3457 * VERSION (PACKAGE_NAME): release 2.9.6
3459 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3461 * Documentation/user/*.itely: 2nd
3462 attempt: replace funindex -> findex globally.
3464 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3466 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3467 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3469 * scm/define-music-display-methods.scm: display methods for
3470 breaks. Fix \applyOutput.
3472 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3474 * Documentation/user/macros.itexi: comment out funindex expansion.
3476 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3479 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3480 Karl Hammar. Backportme.
3482 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3484 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3486 * Documentation/user/programming-interface.itely (Running a
3487 function on all layout objects): idem.
3489 * Documentation/user/introduction.itely (Automated engraving):
3490 update \applyOutput syntax
3492 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3493 remove debugging hook.
3495 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3498 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3500 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3501 TEXI2DVI_FLAGS to texi2dvi invocation.
3503 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3505 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3506 works. More work is done by iterator now, and engraver has been
3507 very much simplified.
3509 * lily/translator-group.cc: try_music is now invoked through a
3512 * lily/*-iterator.cc: Massive cleanups. Junked
3513 try_music_in_children globally. Renamed try_music to report_event,
3514 and made that method descend to a bottom context automatically.
3516 * lily/event-iterator.cc: New file.
3518 * lily/output-property-iterator.cc,
3519 lily/old-lyric-combine-music-iterator.cc: Removed.
3521 * python/convert-rules.py: Modified the syntax for \applyOutput.
3523 2006-05-23 Graham Percival <gpermus@gmail.com>
3525 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3528 * Documentation/user/ various: stuff that might have helped
3529 to fix the pdf creation, plus some minor doc additions.
3531 * Documentation/user/changing-defaults.itely: remove @b from
3532 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3534 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3536 * lily/beaming-pattern.cc (beamify): deal with negative start
3537 moments for beaming patterns.
3539 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3541 * lily/beaming-info.cc (beamify): new function: read beatLength
3542 and beatGrouping from context.
3544 * input/regression/beam-beat-grouping.ly (Module): new file.
3546 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3548 * lily/beam.cc (get_beam_segments): generate events for
3549 max_connect_ case too.
3550 (get_beam_segments): read Stem::max-beam-connect.
3552 * input/regression/beam-single-stem.ly: new file.
3554 * lily/stem.cc (set_beaming): use #f as signaling value for
3557 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3559 * lily/beam.cc (set_beaming): read clip-edges property.
3560 (calc_direction): don't suicide for single stem.
3562 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3563 argument, remove 1<<15 hack. Remove clip_edges()
3565 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3567 2006-05-21 Graham Percival <gpermus@gmail.com>
3569 * Documentation/user/basic-notation.itely: reorg.
3571 * Documentation/user/ various: minor fixes.
3573 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3575 * lily/stencil-expression.cc (register_stencil_head): opps, append
3576 to cdr of static SCM object.
3578 2006-05-19 Graham Percival <gpermus@gmail.com>
3580 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3581 update framework for command index. DOC WRITERS: use @funindex
3582 instead of @cindex @code{}.
3584 * Documentation/user/ various: replace @cindex @code{} => @funindex
3586 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3588 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3589 case positions is set manually.
3591 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3593 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3596 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3598 * Documentation/user/changing-defaults.itely (Contexts explained):
3599 use absolute dimension for @image.
3601 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3602 out image for illustration too.
3603 ($(outdir)/%.png): add more png <-> eps rules.
3605 2006-05-17 Graham Percival <gpermus@gmail.com>
3607 * Documentation/user/ various: remove trailing whitespace, cosmetic
3608 change to reduce changes produced by diff.
3610 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3612 * lily/main.cc (do_chroot_jail): correctness tweak.
3614 * python/lilylib.py (system): import subprocess in system () only.
3616 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3618 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3619 variable. Backportme.
3621 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3623 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3625 2006-05-17 Werner Lemberg <wl@gnu.org>
3627 * lily/lexer.ll (init_signature_has_table): Add
3628 `scm-scm-music-music'.
3630 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3631 (Generic_prefix_music_scm): Add rule for it.
3633 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3634 `quoted-transposition' property.
3636 * ly/music-functions-init.ly (transposedCueDuring): New function.
3638 * scm/define-music-properties.scm (all-music-properties): Updated.
3640 * Documenation/topdocs/NEWS.itely: Document it.
3642 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3644 * python/lilylib.py (system): move import subprocess to system()
3647 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3649 * VERSION (PATCH_LEVEL): release 2.9.5
3651 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3654 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3656 2006-05-16 Graham Percival <gpermus@gmail.com>
3658 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3660 * Documentation/user/ various: minor fixes.
3662 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3664 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3666 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3668 * Documentation/user/advanced-notation.itely (Instrument names):
3669 Modified obsolete instruction on how to move instrument names away
3670 from the staves. Hmm, at second thought the bug probably has been
3671 solved, so the full bug description should probably be removed.
3673 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3675 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3676 currentCommandColumn.
3678 * lily/hairpin.cc (print): also add padding for non-neighbor
3681 * scm/define-context-properties.scm
3682 (all-user-translation-properties): add hairpinToBarline
3684 * input/regression/hairpin-to-barline.ly: new file.
3686 * lily/context.cc (internal_send_stream_event): thinko fix.
3688 * lily/tie.cc (set_default_control_points): robustness fix.
3690 * python/musicxml.py (Part.interpret): don't complain about
3691 incomplete measures.
3693 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3694 new music if last_event_chord() returned None.
3696 * python/musicxml.py (Part.interpret): skip back over chord notes.
3698 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3700 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3701 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3702 lily/slash-repeat-engraver.cc,
3703 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3704 iterator sends PercentEvents
3706 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3707 rework tuplets: send start/stop events to engraver
3709 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3710 dispatchers event-source and events-below to Context
3712 2006-05-15 Graham Percival <gpermus@gmail.com>
3714 * Documentation/user/README.txt: update info for doc writers.
3716 * Documentation/user/programming-interface.itely: integrate
3717 Nicolas' fixes for chapter rewrite.
3719 * Documentation/user/ various: minor fixes.
3721 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3723 * lily/clef-engraver.cc: cleanup.
3725 * Documentation/user/GNUmakefile: dist context-example.eps too.
3727 * lily/key-engraver.cc (create_key): use
3728 explicitKeySignatureVisibility for cancellation too.
3730 * lily/font-config.cc (init_fontconfig): don't close file if
3733 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3735 * Documentation/topdocs/NEWS.tely: niente and rotation news
3737 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3739 * lily/include/stencil.hh
3740 * lily/stencil.cc (rotate): new function. Makes it possible
3741 to rotate a stencil around a given offset.
3743 * lily/grob.cc (get_print_stencil): add rotation support
3745 * lily/stencil-interpret.cc (interpret_stencil_expression):
3746 add rotation support
3748 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3750 * scm/define-grob-properties.scm: add 'rotation property
3752 * scm/define-markup-commands.scm: add rotate markup command
3754 * scm/output-ps.scm: add rotation support in PostScript backend
3756 * scm/output-svg.scm: add rotation support in SVG backend
3758 2006-05-13 Graham Percival <gpermus@gmail.com>
3760 * Documentation/user/music-glossary.itely: French correction.
3762 * Documentation/user/programming-interface.itely: major
3763 new docs, some reorg, some info from Nicolas.
3765 * Documentation/user/ various: small fixes.
3767 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3769 * Documentation/user/programming-interface.itely (Markup
3770 programmer interface): Remove duplicate text.
3772 2006-05-12 Graham Percival <gpermus@gmail.com>
3774 * Documentation/user/context-example.eps: new file.
3776 * Documentation/user/changing-defaults.itely: set up file to
3779 * Documentation/user/programming-interface.itely: changes
3782 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3784 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3786 2006-05-11 Graham Percival <gpermus@gmail.com>
3788 * Documentation/user/programming-interface.itely: first round of
3789 editing and merging emails from Nicolas.
3791 * Documentation/user/scheme-tutorial: minor edit.
3793 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3795 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3797 (Xml_node.message): use it.
3799 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3800 oops. Add duration argument.
3802 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3804 * lily/paper-column-engraver.cc (make_columns):
3805 * scm/define-grobs.scm: Revert my previous change and set the default
3806 in define-grobs.scm instead.
3808 2006-05-09 Graham Percival <gpermus@gmail.com>
3810 * Documentation/user/changing-defaults.itely: general editing,
3811 info about \set and \override.
3813 * Documentation/user/tweaking.itely, advanced-notation.itely:
3814 fixes from Dave Luttinen, thanks!
3816 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3818 * lily/paper-column-engraver.cc (make_columns): By default, a column
3819 needs to be breakable.
3821 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3823 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3825 (musicxml_time_to_lily): idem
3826 (musicxml_key_to_lily): idem
3827 (instrument_drumtype_dict): dict for supported drumtypes.
3828 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3829 moments and pending mm rests
3830 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3831 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3832 (musicxml_voice_to_lily_voice): add mode change.
3833 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3834 speed and less memory usage (factor 5 to 10).
3835 (convert): write -defs.ly and driver file separately so people
3836 can script their own part extraction.
3838 * python/musicxml.py (minidom_demarshal_node): new function:
3839 separate minidom handling.
3840 (lxml_demarshal_node): new function: support lxml.etree too.
3841 (Xml_node.message): new function: verbose error message, with XML
3842 path to offending node.
3843 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3844 (Part_list.generate_id_instrument_dict): new method: collect
3845 instrument names, to be able to set drum_type.
3846 (Part.interpret): handle underfull measures
3847 (Part.interpret): assign instrument names.
3849 * python/musicexp.py (Output_printer.close): new method
3850 (MusicWrapper.print_ly): new class: support other modes,
3852 (BarCheck.print_ly): new class. Support bar checks, with comments
3853 and fancy barchecks.
3854 (NoteEvent.__init__): also set drum_type for drum notes.
3855 (MultiMeasureRest.lisp_expression): dump mm rests.
3857 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3858 line-break-permission if forbidBreak is not set.
3860 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3862 * scm/define-context-properties.scm:
3863 * scm/define-grob-properties.scm:
3864 * scm/define-grobs.scm:
3865 * scm/define-music-display-methods.scm:
3866 * scm/define-music-properties.scm:
3867 * scm/define-music-types.scm:
3868 * scm/music-functions.scm:
3869 * ly/declarations-init.ly:
3870 * lily/include/constrained-breaking.hh:
3872 * lily/spaceable-grob.cc:
3873 * lily/simple-spacer.cc:
3874 * lily/paper-score.cc:
3875 * lily/paper-column.cc:
3876 * lily/paper-column-engraver.cc:
3878 * lily/gourlay-breaking.cc:
3879 * lily/constrained-breaking.cc:
3880 * python/convertrules.py:
3881 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3882 "page-break-penalty" and "line-break-permission".
3883 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3884 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3886 * lily/bar-engraver.cc:
3887 * lily/beam-engraver.cc:
3888 * lily/forbid-break-engraver.cc:
3889 * lily/ligature-engraver.cc:
3890 * lily/paper-column-engraver.cc:
3891 * lily/percent-repeat-engraver.cc:
3892 * lily/score-engraver.cc:
3893 * lily/score-engraver.hh:
3894 * lily/paper-column-engraver.hh:
3895 Inter-engraver communication regarding line breaks is done through context
3896 properties (Score.forbidBreak) instead of function calls.
3898 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3900 * VERSION (PACKAGE_NAME): release 2.9.4
3902 2006-05-08 Graham Percival <gpermus@gmail.com>
3904 * Documentation/user/working.itely: proofreading from Dave
3907 * Doucmentation/user/README.txt: updated with manual style info.
3909 * Documentation/user/ various: trim linewidth to 78 chars.
3911 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3913 * scm/define-grob-properties.scm (all-internal-grob-properties):
3914 remove chord-tremolo property.
3916 * lily/beam.cc (get_beam_segments): don't use stem position as
3917 base for broken ends.
3919 2006-05-06 Graham Percival <gpermus@gmail.com>
3921 * Documentation/user/putting.itely: proofreading from Dave
3924 * Documentation/user/ various: more reorg and clarifications.
3926 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3928 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3930 * ly/music-functions-init.ly: new function featherDurations
3932 * lily/beam.cc: read grow-direction for feathered beaming.
3934 * Documentation/topdocs/NEWS.tely (Top): typo.
3936 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3938 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3941 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3942 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3943 used by music streams.
3945 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3946 lily/stream-event.cc, lily/stream-event-scheme.cc,
3947 lily/listener.cc, lily/scheme-listener.cc,
3948 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3949 lily/include/stream-event.hh, lily/include/listener.hh,
3950 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3951 Created data structures for music streams.
3953 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3955 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3956 construction of a beam.
3959 * flower/include/std-vector.hh (default_compare): use only one comparison.
3961 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3962 (note-by-number): further attachment fixes.
3964 * scm/lily-library.scm (ordered-cons): new function.
3965 (interval-index): new function
3967 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3969 * lily/note-head.cc (get_stem_attachment): new function.
3971 * scm/define-markup-commands.scm (note-by-number): read 'style
3974 * input/regression/markup-note.ly: show note-head style option.
3976 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3979 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3981 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3983 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3985 * lily/include/constrained-breaking.hh: GCC 4 fix.
3987 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3989 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3990 Replace it with functions get_line_forces and get_line_configuration.
3991 (class Simple_spacer): Make data private.
3992 Rewrite compression algorithm to be faster and simpler.
3994 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3995 * lily/gourlay-breaking.cc (solve):
3996 * lily/constrained_breaking.cc (space_line):
3997 Change it to the new simple-spacer code.
3999 * lily/paper-score.cc (get_paper_systems):
4002 Delay breaking the systems until they are requested.
4003 (find_break_indices):
4004 Use vsize for indices.
4006 Move the "Calculating line breaks" message here.
4008 * lily/system.cc (pre_processing):
4009 Move the "Calculating line breaks" message away from here.
4010 (break_into_pieces):
4011 Allow multiple calls to this function in sequence (with touching-but-
4012 not-overlapping breakpoints).
4014 * lily/constrained-breaking.cc:
4015 Replace most of the get_XXXX functions with get_line_details.
4016 Only calculate the force for each line. Calculate configurations only
4017 for the lines we will actually use.
4018 Replace cols_ with lines_.
4020 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4022 * mf/GNUmakefile (depth): remove FC_FIND.
4024 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4026 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4028 * scm/framework-ps.scm (write-preamble): new function.
4029 (write-preamble): load mac fonts via fondu, even if gs-font-load
4032 2006-05-03 Werner Lemberg <wl@gnu.org>
4034 * mf/GNUmakefile (FC_FIND): Fix typo.
4036 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4038 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4040 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4042 * stepmake/aclocal.m4: run python-config for crosscompiling
4045 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4046 -f png for HTML, TEXINFO formats.
4048 * input/tutorial/lbook-html-test.html: new file.
4050 * lily/include/tie-formatting-problem.hh (class
4051 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4052 [column, direction]. This fixes laissez vibrer ties.
4054 * flower/include/tuple.hh (struct Tuple2): new file.
4056 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4057 $(FCMATCH), only if $(NCSB_DIR) not set.
4059 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4061 * config.make.in (DOCUMENTATION): set FCMATCH.
4063 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4065 2006-05-03 Graham Percival <gpermus@gmail.com>
4067 * Documentation/user/ various: final round of reorg.
4069 * Documentation/user/instrument-notation.itely: some more
4070 fixes from Eduardo, thanks!
4072 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4074 * VERSION (PACKAGE_NAME): release 2.9.3
4076 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4078 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4080 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4082 * scm/define-grob-properties.scm (all-user-grob-properties):
4083 Correct typo, thanks to Eduardo.
4085 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4087 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4089 * buildscripts/lilypond-words.py (F): indent fix.
4091 * input/regression/tie-arpeggio-collision.ly: new file.
4093 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4094 function: store outlines per column rank.
4096 * lily/include/tie-configuration.hh (class Tie_configuration): add
4097 column_ranks_ to specification and configuration, to distinguish
4098 between ties for different heads in arpegiated chords.
4100 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4102 * *.py: more 4 space indents.
4104 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4106 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4108 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4110 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4112 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4114 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4116 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4118 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4120 * python/convertrules.py (conv): indent 4 for python files.
4122 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4124 * Documentation/user/changing-defaults.itely (Creating contexts):
4125 Clarify \new semantics.
4127 2006-04-28 Graham Percival <gpermus@gmail.com>
4129 * Documentation/user/ various: major new sections in the
4130 Learning manual, slight reorg elsewhere.
4132 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4134 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4136 * scm/framework-ps.scm (output-framework): remove PageMedia
4138 2006-04-27 Graham Percival <gpermus@gmail.com>
4140 * Documentation/user/ tweaks.itely, working.itely: new
4141 files, being more advanced "learning manual" chapters.
4143 * Documentation/user/ tutorial, putting, lilypond: reorg.
4145 2006-04-26 Graham Percival <gpermus@gmail.com>
4147 * input/regression/lyric-combine-polyphonic.ly: fixed test
4148 (no more "can't find context `one'" error).
4150 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4152 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4154 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4156 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4158 * lily/relocate.cc (read_relocation_dir): new function.
4160 2006-04-26 Graham Percival <gpermus@gmail.com>
4162 * Documentation/user/instrument-notation.itely: a few more fixes
4163 from Eduardo, thanks!
4165 * Documentation/user/README.txt: new file; contains info on
4166 style that used to be in lilypond.tely.
4168 * Documentation/user/ various: first round of doc reorg.
4170 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4171 graphic; this probably causes problems on some pdf
4172 viewers, notably Adobe Acrobat.
4174 2006-04-24 Graham Percival <gpermus@gmail.com>
4176 * Documentation/user/instrument-notation.itely: many alterations
4177 to Vocal music, from Eduardo Viera.
4179 2006-04-23 Graham Percival <gpermus@gmail.com>
4181 * Documentation/user/instrument-notation.itely: fix \new
4182 instead of \context problem.
4184 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4186 * lily/relocate.cc (expand_environment_variables): new function.
4188 (read_relocation_file): id.
4190 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4192 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4194 * ly/engraver-init.ly: remove old comments from TabVoice
4196 2006-04-20 Graham Percival <gpermus@gmail.com>
4198 * Documentation/user/instrument-notation.itely: added Erlend's
4199 latest doc patch, thanks!
4201 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4203 * lily/include/slur.hh:
4205 * lily/phrasing-slur-engraver.cc:
4206 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4207 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4208 Slur_engraver:: and putting it in
4209 Slur::auxiliary_acknowledge_extra_object ().
4211 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4213 * lily/note-collision.cc: fix a comment
4215 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4217 * stepmake/bin/add-html-footer.py: fix footer position in
4218 generated html files: before </body> and </html> tags.
4220 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4222 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4223 Earlier successive `make' commands finally compiled ok.
4225 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4227 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4229 * lily/include/stem-tremolo.hh:
4230 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4234 * lily/include/lookup.hh: add rotated_box ()
4236 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4238 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4239 been generated. Fixes "can't get `--help'" bug after make clean.
4241 * THANKS: alphabetize contributors.
4243 2006-04-17 Graham Percival <gpermus@gmail.com>
4245 * Documentation/user/instrument-notation.itely: added Erlend's
4246 tabs and banjo doc patch. Thanks!
4248 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4250 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4252 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4254 * scm/output-lib.scm: add some more predefined string tunings.
4256 * Documentation/user/instrument-notation.itely: and doc them.
4258 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4260 * ly/engraver.ly: Remove obsolete comments.
4262 * ly/gregorian-init.ly: Define default layout block.
4264 * input/puer-fragment.ly: Updated and extended.
4266 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4268 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4269 pdf conversion behaviour.
4271 * flower/file-name.cc (dir_name)
4272 (get_working_directory): Move from relocate.cc.
4274 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4276 * lily/relocate.cc: Encapsulate sys/stat.h in
4279 2006-04-14 Graham Percival <gpermus@gmail.com>
4281 * Documentation/user/ various: small updates from Cameron
4282 and Juergen, thanks!
4284 * Documentation/user/ various: small updates of my own.
4286 * THANKS: 2.7 -> 2.8.
4288 2006-04-11 Graham Percival <gpermus@gmail.com>
4290 * scm/define-context-properties.scm: typo.
4292 * Documentation/user/ : many more small updates.
4294 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4296 * scm/define-music-types.scm: disposed "docme".
4298 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4300 * lily/hairpin.cc: make niente circles a bit smaller.
4302 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4304 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4305 get-pfa and get-*-fonts targets.
4307 2006-04-10 Graham Percival <gpermus@gmail.com>
4309 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4310 music-glossary, programming-interface: more minor fixes
4313 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4315 * scm/define-context-properties.scm: another old \property update.
4316 This time tested for compiling!
4318 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4320 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4322 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4324 * scm/define-context-properties.scm (all-user-translation-properties):
4325 * Documentation/user/global.itely (Page formatting): Compile fix.
4327 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4329 * Documentation/user/advanced-notation.itely (Polymetric
4330 notation): Update the example to use the "+" symbol and add link
4331 to input/test/compound-time.ly.
4333 2006-04-08 Graham Percival <gpermus@gmail.com>
4335 * scm/define-grob-properties.scm: clarify docs for #'direction.
4337 * scm/define-context-properties.scm: update old \property override.
4339 * Documentation/user/ advanced-notation, global, lilypond-book:
4340 more minor doc updates.
4342 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4344 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4346 * scm/backend-library.scm (search-gs): oops.
4348 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4350 * scripts/lilypond-book.py (output): use base, not filename for href.
4352 * scm/backend-library.scm: only look for gs.
4354 * scripts/lilypond-book.py (output): fix printfilename.
4356 * lily/parser.yy (music_function_musicless_prefix): fold together
4357 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4359 * lily/slur.cc (print): only set font-size if not set yet.
4361 * lily/slur-configuration.cc (add_score): improved layout of debug
4364 2006-04-05 David Feuer <David.Feuer@gmail.com>
4366 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4367 (draw_circle): Hopefully fixed regression.
4368 Improved documentation for several procedures.
4370 2006-03-04 Werner Lemberg <wl@gnu.org>
4372 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4374 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4376 * scripts/musicxml2ly.py (bindir): add dynamic
4379 2006-04-04 Graham Percival <gpermus@gmail.com>
4381 * Documentation/user/ basic-notation, advanced-notation, putting,
4382 instrument-notation, invoking, lilypond, THANKS: another ream of small
4383 fixes from the Doc Helpers.
4385 2006-04-03 David Feuer <David.Feuer@gmail.com>
4387 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4389 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4391 * Cleaned up interfaces between PostScript and Scheme, and moved
4392 computations from PostScript to Scheme:
4394 * music-drawing-routines.ps
4395 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4396 with stroke_and_fill throughout.
4397 (euclidean_length, print_letter, draw_box): Deleted unused
4398 procedures. If someone needs draw_box, implement it using
4399 draw_round_box; don't duplicate code.
4400 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4401 Refactored/cleaned up interfaces.
4404 * output-ps.scm: reordered arguments to PostScript functions to
4405 match new interfaces
4406 (glyph-string): Rewrote glyph-string.
4407 (grob-cause): Replaced string-append with format.
4408 (repeat-slash): Rewrote to do computation here.
4409 (round-filled-box): Rewrote to do computation here.
4411 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4413 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4415 * stepmake/stepmake/toplevel- targets.make: print help info about
4418 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4420 * input/regression/hairpin-circled.ly: new file
4422 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4424 * lily/hairpin.cc (print): add support for circled tip
4426 * scm/define-grob-properties.scm: add circled-tip parameter
4428 * scm/define-grobs.scm: init circled-tip to false
4430 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4432 * scm/music-functions.scm (quote-substitute): set
4435 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4437 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4440 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4442 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4444 2006-03-31 David Feuer <david.feuer@gmail.com>
4446 * scm/framework-ps.scm:
4448 * scm/output-ps.scm: glyph-string now produces smaller, more
4449 readable, and probably faster PostScript. Several findfont
4450 scalefont setfont instances changed to selectfont
4451 Hacked-up string-appends changed to formats.
4453 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4455 2006-03-30 Graham Percival <gpermus@gmail.com>
4457 * scm/lily-library.scm: make "no version" warning message more polite.
4459 * lily/music.cc: add double quotes to failed octave check.
4461 * Documentation/user/ advanced-notation, changing-defaults,
4462 instrument-notation, invoking, music-glossary: whole bunch of minor
4465 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4467 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4468 $(buildscriptdir) iso. depth.
4470 * VERSION (PACKAGE_NAME): release 2.9.1
4472 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4474 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4476 * VERSION (PATCH_LEVEL): bump version number.
4478 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4481 * lily/pango-font.cc (pango_item_string_stencil): use
4484 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4485 $(outdir)/emmentaler-%.svg): remove canary.
4487 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4488 glyphnames if we have a ttf font.
4490 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4492 * Documentation/user/advanced-notation.itely (Font selection):
4493 Corrected reference to the font-family-override.ly example.
4495 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4497 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4498 stem-tremolo object in the stem (or else the stem might not be
4501 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4503 * lily/ttf.cc (print_trailer): only print existing glyphs.
4505 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4507 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4508 position the tremolo based on the position of the notehead.
4510 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4511 notes and update the texidoc line with the new positioning rules.
4513 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4515 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4517 * scripts/lilypond-book.py (Module): set default for linewidth if
4520 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4522 * VERSION (PACKAGE_NAME): release 2.9.0.
4524 * input/regression/stem-tremolo-position.ly: new file.
4526 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4528 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4530 * lily/stem-tremolo.cc (print): position
4531 the tremolo depending only on the end of the stem
4532 and not on the notehead
4533 (raw_stencil): center, on the middle staff line, the
4534 flag that is closest to the end of the stem (previously
4536 (calc_width): add this callback to shorten a tremolo when
4537 it is beamed or it is stemup with a flag
4538 (style): add this callback to make a tremolo rectangular when
4539 it is beamed or it is stemup with a flag
4540 (rotated_box): this is like Lookup::beam but makes a rotated
4541 rectangle instead of a parallelogram
4543 * lily/stem.cc (calc_stem_info): make sure the stem
4544 is long enough to fit the tremolo
4545 (calc-length): reduce the length of tremolo stems since the
4546 tremolo code is now capable of better positioning
4548 * scm/define-grobs.scm: make calc_width the default beam-width
4549 callback for stem-tremolo and add the style callback
4551 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4553 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4556 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4558 * lily/ttf.cc (make_index_to_charcode_map): restore old
4561 2006-03-28 Werner Lemberg <wl@gnu.org>
4563 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4565 2006-03-28 Graham Percival <gpermus@gmail.com>
4567 * THANKS: update for 2.9, add section for Documentation helpers.
4569 * Documentation/topdocs/NEWS.tely: compile fix.
4571 * Documentation/user/ basic-notation, global, advanced-notation,
4572 examples.itely: minor fixes from mailist.
4574 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4576 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4579 * lily/ttf.cc (print_trailer): use it.
4581 * lily/pango-font.cc (get_unicode_name): new function.
4583 * lily/ttf.cc (make_index_to_charcode_map): move function from
4585 (print_trailer): substitute uniXXXX name if applicable.
4587 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4588 (pango_item_string_stencil): use it to generate uniXXXX names.
4590 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4591 note heads, for uniform widths in shape note output.
4592 (overdone_heads): hmm. remove them again.
4594 * scripts/lilypond-book.py (output): add links to filenames.
4596 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4598 * lily/note-collision.cc (get_clash_groups): only consider when
4599 Note_column::dir <> CENTER.
4601 * scripts/lilypond-book.py (get_option_parser): init output_name
4604 2006-03-24 Graham Percival <gpermus@gmail.com>
4606 * Documentation/topdocs/NEWS.tely: add @end itemize
4608 * Documentation/user/ global, advanced-notation: minor
4611 2006-03-23 Graham Percival <gpermus@gmail.com>
4613 * Documentation/user/ lilypond.tely, music-glossary,
4614 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4616 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4618 * mf/GNUmakefile: don't install .enc files.
4620 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4622 * VERSION (PATCH_LEVEL): bump to 2.9.0
4624 2006-03-22 Graham Percival <gpermus@gmail.com>
4626 * Documentation/user/advanced-notation.itely: minor fixes
4629 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4631 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4633 * branch lilypond_2_8
4635 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4637 * scripts/lilypond-book.py (samefile): new function, for windoze
4640 2006-03-21 Graham Percival <gpermus@gmail.com>
4642 * ly/engraver-init.ly: add info about StaffGroup.
4644 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4646 * input/regression/stem-direction-context.ly: idem.
4648 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4652 * input/regression/page-layout-twopass.ly: comment out \markup so
4655 * lily/instrument-name-engraver.cc (finalize): add to instrument
4656 name global System. This also fixes chopped instrument names, but
4657 doesn't crash when there are slurs/beams.
4659 * lily/slur-configuration.cc (add_score): disallow negative slur
4662 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4664 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4666 * lily/instrument-name-engraver.cc (process_music): kludge: add
4667 InstrumentName spanner to axis group of left bound. Fixes chopped
4668 off instrument names in EPS images.
4670 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4672 * scripts/abc2ly.py (option_parser): update to 2.7.40
4674 2006-03-20 Graham Percival <gpermus@gmail.com>
4676 * THANKS: move small doc contributors to SUGGESTIONS.
4678 * Documentation/user/ basic-notation, advanced-notation,
4679 global: small changes from mailist.
4681 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4683 * Documentation/user/advanced-notation.itely (Text marks): update
4684 for new rehearsalMarkAlignSymbol convention.
4686 * VERSION (PATCH_LEVEL): bump version.
4688 * input/test/instrument-name-align.ly: new file.
4690 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4692 * input/test/instrument-name-align.ly: new file. Document how to
4693 align instrument names.
4695 * lily/mark-engraver.cc: remove properties.
4697 * scm/define-context-properties.scm
4698 (all-user-translation-properties): remove align symbol properties
4699 for barnumber/reh. mark.
4701 * lily/break-align-interface.cc (self_align_callback): new
4702 interface, new function. Look at complete alignment. This handles
4703 tunable break alignments in case break-align-symbols are missing.
4705 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4707 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4709 * python/convertrules.py (conv): mark/bar number alignment rule.
4711 * lily/break-align-interface.cc (calc_positioning_done): also
4712 store offset from last visible break-alignment to its
4713 neighbor. This makes alignment on non-visible objects more reliable.
4715 * po/lilypond.pot (Module): ran po-replace.
4717 * input/regression/tie-single-manual.ly (Module): new file.
4719 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4720 look at has_manual_position_.
4721 (from_ties): set has_manual_position_ if tie has staff-position set.
4723 * lily/tuplet-bracket.cc (calc_positions): idem.
4725 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4728 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4730 * scm/define-markup-commands.scm (smallCaps): new markup command
4731 for turning a text to small caps using smaller font size and upper
4734 2006-03-17 Graham Percival <gpermus@gmail.com>
4736 * Documentation/user/ examples, instrument-notation,
4737 advnaced-notation: minor fixes from mailist.
4739 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4741 * Documentation/user/tutorial.itely (First steps): change example
4744 2006-03-17 Graham Percival <gpermus@gmail.com>
4746 * Documentation/user/ examples, advanced: minor changes from mailist.
4748 * THANKS: add Geoff Horton, for documentation stuff.
4750 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4752 * python/lilylib.py (system): revert have_select kludge.
4754 * Documentation/user/tutorial.itely (Commenting input files):
4755 update version numbers in doc.
4757 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4758 bound-padding to multi-measure-interface
4760 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4762 * input/test/engraver-example.ily: update version number.
4764 * VERSION (PACKAGE_NAME): release 2.7.39
4766 * lily/note-spacing.cc (get_spacing): heighten threshold where
4767 accidentals/arpeggios influence previous spacing fully.
4769 * lily/rest.cc (y_offset_callback): only use direction if
4770 staff-position wasn't set before.
4772 * lily/bar-number-engraver.cc: add support for
4773 barNumberAlignSymbol.
4774 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4776 * lily/pointer-group-interface.cc (set_ordered): new function.
4777 (add_unordered_grob): new function.
4779 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4780 to ordered, unless the opposite has been proved. This fixes
4781 random reordering of large object groups across linebreaks,
4784 * lily/main.cc (do_chroot_jail): printf format fix.
4786 * lily/tie-formatting-problem.cc (generate_configuration):
4787 multiply y-shift for dot with direction.
4789 * scm/define-markup-commands.scm (note-by-number): put (magstep
4790 size) in y-attach too.
4792 * Documentation/topdocs/NEWS.tely (Top): show override.
4794 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4795 direction for stems.
4797 2006-03-15 Graham Percival <gpermus@gmail.com>
4799 * Documentation/user/ changing-defaults, global: minor
4802 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4804 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4806 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4807 breakable items after uniformly stretched notes.
4809 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4810 outline with outer edge of note heads. This prevents infinity
4811 problems with tied whole notes.
4813 * scripts/lilypond-book.py (do_file): use os.popen
4815 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4817 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4819 * Documentation/user/invoking.itely: Add ragged-right to bug report
4822 2006-03-14 Graham Percival <gpermus@gmail.com>
4824 * Documentation/user/global.itely: small fix from mailist.
4826 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4828 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4829 file descriptor returned by tempfile.mkstemp() when writing
4830 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4833 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4835 * po/fi.po: newline bugfix.
4837 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4839 * scm/paper.scm (paper-alist): Rounding fixes.
4841 2006-03-13 Graham Percival <gpermus@gmail.com>
4843 * Documentation/user/ changing-defaults, instrument-notation,
4844 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4846 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4850 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4852 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4855 * python/lilylib.py (print_environment): move ps_page_count to
4858 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4860 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4862 * scm/framework-ps.scm (embed-document): new function. Use to
4865 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4867 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4869 * Documentation/user/instrument-notation.itely (Setting simple
4870 songs): Added \book{...} around the full example, so the separate
4871 markups are included in the printed example.
4873 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4875 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4878 * python/lilylib.py (system): rewrite system() using
4879 subprocess. Remove >& redirection trickery.
4881 2006-03-11 Graham Percival <gpermus@gmail.com>
4883 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4884 notation-appendices.itely: minor fixes from mailist.
4886 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4888 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4889 unsplit man also needs images.
4891 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4893 * VERSION (PACKAGE_NAME): 2.7.38 released.
4895 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4897 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4900 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4902 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4903 respects the Score.skipTypesetting property.
4905 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4907 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4908 Prolog. No %%EOF after CFF file.
4910 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4912 * lily/constrained-breaking.cc (get_max_systems): used to return a
4914 (combine_demerits): use pointers to reduce copying data
4915 (calc_subproblem): idem
4916 (get_page_penalty): add page turn penalties
4918 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4920 * Documentation/user/invoking.itely (Invoking lilypond): better
4921 explanation of -e usage.
4923 * lily/main.cc (main_with_guile): don't append to
4924 init_scheme_code_string
4926 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4928 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4930 * scripts/convert-ly.py (do_options): don't print help for
4933 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4934 @code and @example. Update from texinfo.tex from CVS.
4936 2006-03-08 Graham Percival <gpermus@gmail.com>
4938 * Documentation/user/scheme-tutorial.itely: clarifies distances
4939 measured in staff-spaces.
4941 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4943 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4944 consider[k] is true.
4946 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4948 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4949 consider columns that have originals. Unifies spacing for mm
4950 rests around line breaks.
4952 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4953 (set_text_rods): idem.
4954 (calculate_spacing_rods): new function: share code between
4955 set_text_rods and set_spacing_rods.
4956 (set_text_rods): take extents of bounds into account.
4958 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4960 * Documentation/user/basic-notation.itely (Writing music in
4961 parallel): don't use relative.
4963 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4965 * ly/music-functions-init.ly (Module): add shiftDurations
4967 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4969 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4971 * ly/engraver-init.ly: init vocalName to nil.
4973 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4975 * scm/music-functions.scm (music->make-music): bugfix,
4976 KeyChangeEvents are now handled correctly.
4978 * scripts/lilypond-book.py: Add --debug option.
4980 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4982 * python/lilylib.py: add tempfile.
4984 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4986 * VERSION (PACKAGE_NAME): release 2.7.37
4988 * python/lilylib.py (ps_page_count): remove make_ps_images().
4989 (ps_page_count): remove mkdir_p
4990 (system): remove cleanup_temp.
4991 (exit): remove lilypond_version_(check)
4992 (error_log): remove pseudo_filter_p
4997 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5000 * lily/accidental-engraver.cc (make_standard_accidental): only add
5001 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5003 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5004 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5005 Make incompatibilities.
5007 * scm/output-ps.scm (grob-cause): replace backslashes by /
5008 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5010 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5012 * cygwin/GNUmakefile: Install fixes.
5014 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5016 * lily/note-head.cc (head::get_balltype): Compile fix.
5018 * flower/file-name.cc (dos_to_posix): Flower string fix.
5020 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5022 * python/lilylib.py: pychecker cleanups.
5024 * scripts/lilypond-book.py
5025 (Lilypond_snippet.output_print_filename): pychecker cleanups
5027 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5029 * python/lilylib.py (underscore): remove identify() , warranty()
5031 * ps/music-drawing-routines.ps: change Border routine for GSView
5034 * lily/stem.cc (height): use quantize-positions. This triggers
5035 set_stem_lengths, so scripts on beamed stems are handled correctly.
5037 * lily/side-position-interface.cc (aligned_side): check if edges
5038 of script are inside staff. Fixes accent of edge of the staff.
5040 * input/regression/staccato-pos.ly: more examples.
5042 * stepmake/aclocal.m4 (depth): fix bashism.
5044 * lily/lyric-combine-music-iterator.cc: move from
5045 new-lyric-combine-iterator.cc
5046 (process): add pending_grace_lyric_ member to delay lyrics on
5049 * lily/system-start-text.cc (print): suicide if we don't have any
5050 elements. Fixes hara kiri'd instrument names.
5052 * scripts/mup2ly.py (Module): remove.
5054 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5056 * Documentation/user/global.itely (A single music expression):
5057 close @lilypond properly
5059 * lily/volta-bracket.cc (modify_edge_height): change from
5060 after_line_breaking_callback. Suicide last bracket if appropriate.
5062 * python/lilylib.py: strip getopt support
5064 * scripts/etf2ly.py (do_options): use optparse
5066 * scripts/midi2ly.py: optparse, strip lilylib copy.
5068 * scripts/abc2ly.py (voices): use optparse.
5070 * stepmake/stepmake/generic-vars.make: new function absdir.
5072 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5074 * scripts/lilypond-book.py (find_file): use global_options for
5077 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5080 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5082 * python/lilylib.py (get_global_option): ughness for extracting
5083 global options from lilylib.
5084 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5086 * scripts/lilypond-book.py (get_option_parser): use optparse for
5087 option handling. Put options in global_options variable.
5089 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5091 * Documentation/index.html.in: clarify.
5093 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5095 * scm/layout-page-layout.scm (write-page-breaks): add a
5096 music-system-heights property to the page layout output.
5098 * scm/page.scm (make-page-stencil): take footer into account when
5099 computing the 'space-left page property
5100 (annotate-space-left): take footer into account when annonating
5103 2006-02-28 Graham Percival <gpermus@gmail.com>
5105 * Documentation/user/ advanced-notation, global: more (final)
5106 docs for music expressions, removed special fermatas.
5108 2006-02-27 Graham Percival <gpermus@gmail.com>
5110 * Documentation/user/ basic-notation, global: minor changes
5113 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5115 * scm/framework-ps.scm:
5116 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5117 layer for inf? and nan? from framework-ps to lily-library.
5119 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5121 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5122 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5124 * buildscripts/substitute-encoding.py (Module): remove file.
5126 * mf/GNUmakefile: more PFA strippage.
5128 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5130 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5133 * scm/framework-ps.scm: remove font name munging.
5135 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5137 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5139 * scm/markup.scm (define-markup-command): change
5140 def-markup-command to define-markup-command
5142 * scm/music-functions.scm (define-music-function): change
5143 def-music-function to define-music-function.
5145 * python/convertrules.py (conv): rules for def-music-function
5146 and def-markup-commands
5148 * Documentation/user/programming-interface.itely,
5149 input/no-notation/display-lily-tests.ly,
5150 input/regression/lily-in-scheme.ly,
5151 input/regression/markup-user.ly,
5152 input/regression/music-function.ly, input/regression/tie-chord.ly,
5153 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5154 ly/gregorian-init.ly: use new macro names (define-music-function,
5155 define-markup-command).
5157 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5159 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5160 (output): add comments to lp-book latex output.
5162 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5165 2006-02-23 Graham Percival <gpermus@gmail.com>
5167 * Documentation/user/ tutorial, global: minor changes.
5169 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5171 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5172 blocks (for make 3.80)
5174 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5175 \notemode so that user should not have to explicitely type it.
5177 * scm/define-music-display-methods.scm: various
5178 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5181 * input/no-notation/display-lily-tests.ly: new tests for
5182 \applyOutput and \applyContext
5184 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5186 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5187 changed it slightly so that the number of systems returned by
5188 solve () will be the same as the last value passed to resize
5189 (). I've also added more documentation, removed casts, fixed style
5190 problems and put in some recovery if constraints aren't satisfied."
5192 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5194 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5195 for emacs < 22 compatibility.
5196 (count-rexp): Use it.
5197 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5198 substring juggling (Milan Zamazal).
5200 2006-02-23 Graham Percival <gpermus@gmail.com>
5202 * Documentation/user/ basic-notation, advanced-notation,
5203 global.itely, invoking.itely, tutorial,itely:
5204 minor fixes from mailist.
5206 * scm/define-markup-commands.scm: improve docs of \filled-box.
5208 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5210 * Documentation/index.html.in: changes concern the previous release.
5212 * input/regression/+.ly: cultivate typographical terminology.
5214 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5216 * scm/define-grob-interfaces.scm (parentheses-interface): add
5217 padding to parentheses-interface.
5219 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5220 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5222 * VERSION (PATCH_LEVEL): release 2.7.36
5224 * lily/slur.cc: add avoid-slur (ugh.)
5226 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5227 intersection gets smaller. This fixes slurs over extreme points.
5229 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5230 stems with neutral-direction set.
5232 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5234 * lily/open-type-font.cc (load_table): format error.
5236 * lily/change-iterator.cc (process): format fix.
5238 * flower/include/international.hh (_f): idem.
5240 * flower/include/std-string.hh: add format printf attribute.
5242 * scm/define-grobs.scm (all-grob-descriptions): height of all
5243 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5245 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5248 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5250 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5252 * input/regression/: upgraded syntax for some files.
5254 * THANKS: Add bughunters.
5256 2006-02-22 Graham Percival <gpermus@gmail.com>
5258 * Documentation/user/ invoking.itely, advanced-notation.itely,
5259 global.itely: long-awaited "let's make chapter 10 not suck"
5260 update. Rearrange chapter 10; now called "global issues",
5261 addresses file structure, etc. Some info from other files
5262 moved into global.itely.
5264 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5266 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5267 catch trill-span-event notes.
5269 * Documentation/user/examples.itely (Ancient notation templates): typo.
5272 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5274 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5276 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5278 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5280 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5281 froum Laissez_vibrer_engraver.
5283 * ly/declarations-init.ly (repeatTie): add \repeatTie
5285 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5287 * scm/define-grob-properties.scm (all-user-grob-properties): add
5288 head-direction property.
5290 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5291 from_lv_ties. Take head direction argument.
5293 * lily/semi-tie-column.cc: rename from
5294 laissez-vibrer-tie-column.cc. Rename class too.
5296 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5299 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5301 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5303 (find_breaks): idem.
5305 2006-02-21 Graham Percival <gpermus@gmail.com>
5307 * Documentation/user/advanced-notation.itely: fixed make-moment]
5310 * Documentation/user/basic-notation.itely: more clarification to
5313 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5315 * lily/include/constrained-breaking.hh (class
5316 Constrained_breaking): new file.
5318 * lily/constrained-breaking.cc (resize): new file.
5320 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5322 * Documentation/user/advanced-notation.itely (Clusters): insert
5325 * lily/tie-column.cc (calc_positioning_done): support for
5328 * lily/tie-formatting-problem.cc
5329 (generate_extremal_tie_variations): factor out.
5330 (score_ties_configuration): annotate all tie
5331 (print_ties_configuration): new routine.
5332 (generate_configuration): nudge extremal ties outside of the head
5334 (score_ties_configuration): oops. convert to staff-space before
5335 determining position symmetry.
5337 2006-02-20 Graham Percival <gpermus@gmail.com>
5339 * Documentation/user/*-notation.itely: misc minor editing,
5340 shifting doc sections around.
5342 * Documentation/user/*-notation-itely, global.itely,
5343 changing-defaults.itely: added new stuff from NEWS.
5345 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5349 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5351 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5352 lilypond --verbose for lp-book.
5354 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5355 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5357 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5358 $(buildscript-dir) iso. absolute depth.
5360 * buildscripts/genicon.py (dir): thinko.
5362 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5364 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5366 * scm/output-lib.scm: swap darkcyan/darkyellow
5368 * THANKS: Add bughunters.
5370 2006-02-19 Graham Percival <gpermus@gmail.com>
5372 * Documentation/user/programming-interfaces.itely: fixed example.
5374 * Documentation/user/instrument-notation.itely: fix @{ @}.
5376 * scm/script.scm: add avoid-slur for \open.
5378 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5380 * lily/tie-formatting-problem.cc (score_configuration): use
5381 sliding score for min-length.
5383 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5384 spaghetti for icons.
5386 * buildscripts/genicon.py (program_name): new file.
5388 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5390 (generate_configuration): for small ties, also look for collisions
5391 at Y + DIR*h + DELTA_Y.
5392 (get_variations): consider variation for dot positions too.
5394 * lily/side-position-interface.cc (aligned_side): take abs for
5395 quantized rounded position. Fixes tenuto below staff.
5397 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5398 markers when necessary.
5400 * lily/program-option.cc (internal_set_option): add
5401 strict_infinity_checking option.
5403 * scm/output-lib.scm (cyan): swap yellow and cyan.
5405 2006-02-19 Graham Percival <gpermus@gmail.com>
5407 * darwin.patch: trivial linenumber update.
5409 * Documentation/user/ {various}: `\context foo = named' changed
5410 to `\new foo = "name"' in docs.
5412 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5414 * scm/stencil.scm (annotate-y-interval): use it.
5416 * scm/lily-library.scm (interval-sane?): new function.
5418 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5421 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5424 * flower/include/std-vector.hh (iterof): add iterof macro.
5426 * lily/enclosing-bracket.cc (width): new function.
5428 * lily/align-interface.cc (align_elements_to_extents): reinstate
5431 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5433 * Documentation/index.html.in: fix spelling: thankyous.
5435 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5437 * lily/lyric-hyphen.cc: typo.
5439 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5441 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5442 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5445 * VERSION: release 2.7.35
5447 * lily/beam.cc (get_default_dir): oops. Take abs () for
5449 (get_default_dir): use extreme position criterion only in absence
5450 of forced stem directions.
5452 * VERSION (PATCH_LEVEL): bump VERSION.
5454 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5455 dependencies. Necessary for -jX builds.
5457 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5459 * lily/relocate.cc (setup_paths): Yet another const fix.
5461 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5463 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5465 * lily/relocate.cc (setup_paths): oops.
5467 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5469 * Documentation/index.html.in: order links: html before PDF.
5471 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5473 * lily/tie-column-format.cc (Module): remove.
5475 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5477 * lily/text-spanner.cc (print): idem.
5479 * lily/dynamic-text-spanner.cc (print): only print line if longer
5482 * lily/auto-change-iterator.cc (change_to): formatting.
5484 * lily/beam.cc (get_default_dir): take extreme note head as input
5487 * lily/tie.cc (get_default_dir): only look directions for visible
5490 * lily/side-position-interface.cc (aligned_side): oops. Don't
5491 mutiply with direction. This fixes quantized (staccato, tenuto)
5492 scripts below notes.
5494 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5495 direction. Fixes c-lyrics-center-align.ly
5497 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5499 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5502 * lily/std-string.cc:
5503 * lily/include/std-vector.hh (split_string): Move and rename from
5504 lily/include/misc.hh, lily/misc.cc. Update callers.
5506 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5508 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5510 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5512 * flower/test-file.cc: New file.
5514 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5517 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5519 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5521 * flower/include/file-storage.hh: remove file.
5523 * lily/include/midi-item.hh (class Midi_track): idem.
5525 * lily/include/source.hh (class Sources): idem.
5527 * lily/include/performance.hh (class Performance): use vector
5530 * flower/include/cons.hh (class Cons): remove file.
5532 * flower/include/flower-proto.hh: remove template cruft.
5534 * lily/include/font-metric.hh: use size_t not vsize for indices.
5536 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5539 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5541 * lily/include/paper-book.hh (class Paper_book):
5542 make get_system_specs() public.
5544 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5545 the force=10000 case if we don't have a current-best.
5547 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5550 * flower/include/flower-proto.hh: remove outdated templates.
5552 * scm/page.scm: use annotate-spacing
5554 2006-02-15 Graham Percival <gpermus@gmail.com>
5556 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5558 * THANKS: moved Erlend Aasland to contributors.
5560 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5562 * config.hh.in: remove HAVE_PANGO_16
5564 * lily/tuplet-bracket.cc (calc_positions): multiply with
5565 staff-space for beam case. This fixes tuplets+beams on scaled
5568 * config.hh.in: remove all Kpathsea related defines.
5570 * lily/dot-column.cc (side_position): reach stem via dots->
5571 head->stem. Inspect all stems for dot collisions.
5573 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5576 * lily/bar-number-engraver.cc (process_music): document function
5579 * lily/score.cc (default_rendering): add pscore, not systems
5582 * lily/paper-book.cc (get_system_specs): separate generation of
5585 * flower/include/std-vector.hh: don't include config.hh
5587 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5589 * flower/include/std-vector.hh: Better wrapper compatibility with
5592 * flower/include/flower-proto.hh: Remove cheap forward declaration
5595 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5597 2006-02-14 Graham Percival <gpermus@gmail.com>
5599 * Documentation/user/invoking.itely: add warning about command line.
5601 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5603 * lily/include/lily-proto.hh: add Prob, rm Page.
5605 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5607 * VERSION: release 2.7.34
5609 * lily/relocate.cc (framework_relocation): show canary if
5610 GHOSTSCRIPT_VERSION undefined.
5612 * GNUmakefile.in: remove $(VERSION) symlink.
5614 * lily/relocate.cc (setup_paths): add +
5616 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5618 * Documentation/index.html.in: specify sizes for all big HTML pages.
5620 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5622 * config.hh.in: remove @FRAMEWORKDIR@
5624 * lily/system-start-text.cc (get_stencil): new file: separate out
5625 system-start-delimiter text support.
5627 * input/**ly: replace \context with \new where appropriate.
5631 * lily/slur-scoring.cc (get_base_attachments): use
5632 robust_relative_extent. This fixes problems with empty paper-columns.
5634 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5636 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5638 * scm/define-music-properties.scm (all-music-properties):
5639 create-new property.
5641 * lily/context-specced-music-iterator.cc (construct_children):
5642 inspect 'create-new property iso. magical $uniqueContextId context
5645 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5647 * lily/context-key-manager.cc (Module): new file. Encapsulate
5648 object key generation.
5650 * lily/include/context-key-manager.hh (Module): new file.
5652 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5654 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5657 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5659 (reloc_b): excise --enable-framework-dir
5661 * lily/relocate.cc (framework_relocation): use getenv
5662 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5664 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5666 * flower/include/std-string.hh:
5667 * flower/include/std-vector.hh: Finish std:: conversion; move
5668 flower extensions from std:: namespace. Update users.
5670 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5671 their expansion to vector<*>. Update users.
5673 2006-02-10 Graham Percival <gpermus@gmail.com>
5675 * Documentation/user/invoking.itely: add example to File structure.
5677 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5678 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5680 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5682 * ly/paper-defaults.ly: typo.
5684 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5685 set_parent() for parentheses. This will make it show up in bbox
5688 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5689 ly:grob-common* functions.
5691 * lily/grob-scheme.cc (LY_DEFINE):
5692 ly:grob-common-refpoint-of-array: new function
5693 ly:grob-common-refpoint: new function
5694 ly:grob-relative-coordinate: new function
5696 * lily/instrument-name-engraver.cc (process_music): use
5697 Text_interface::is_markup(). This fixes \markup on instrument names.
5699 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5702 * lily/slur.cc (print): idem.
5704 * lily/tie.cc: add line-thickness for ties.
5706 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5708 * scm/output-svg.scm: Document diversion from GNU coding standards
5709 as a workaround for a bug in Microsoft Internet Explorer.
5711 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5713 * lily/instrument-name-engraver.cc (process_music): use
5714 is_markup() iso. is_string()
5716 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5718 * lily/percent-repeat-engraver.cc (process_music): only look at
5719 main_part_ for % repeats.
5721 * lily/stem-tremolo.cc (get_beam_translation): new function.
5722 (calc_slope): new function.
5723 (height): don't use real slope.
5725 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5727 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5728 new connect-to-neighbor, control-points and staff-padding
5729 properties to make ligature brackets showing up again.
5731 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5733 * VERSION: release 2.7.33
5735 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5738 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5739 remove applyOutput example.
5740 (Objects connected to the input): document \tweak, \parenthesize
5742 * lily/relocate.cc (prefix_relocation): allow "current"
5743 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5744 changing VERSION in a lily tree less painful.
5746 * input/regression/parenthesize.ly: new file.
5748 * scm/output-lib.scm (parenthesize-element): new function.
5750 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5752 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5754 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5755 cause: accidentals are caused by note heads, not note events.
5757 2006-02-08 Graham Percival <gpermus@gmail.com>
5759 * darwin.patch: small patch from Erlend, thanks!
5761 * Documentation/user/basic-notation.itely: add stem-neutral example.
5763 * Documentation/user/putting.itely: clarifications.
5765 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5767 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5768 note, add more guidelines to what should go into NEWS.
5770 * input/sakura-sakura.ly: document how to override font.
5772 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5774 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5776 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5778 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5780 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5781 convertrules. Add explicit grouping, needed for python2.2.
5783 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5785 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5787 2006-02-07 Graham Percival <gpermus@gmail.com>
5789 * Documentation/user/global.itely: fix line-width in (text) docs.
5791 * Documentation/user/lilypond-book.itely: same.
5793 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5795 * VERSION (PACKAGE_NAME): release 2.7.32
5797 * Documentation/topdocs/NEWS.tely (Top): document new variable
5800 * flower/include/array.icc (Message): remove file.
5802 * flower/include/std-vector.hh: make sure vsize and VPOS are
5803 defined for binary_search_bounds().
5805 * flower/std-string.cc (std): add to_string(long unsigned).
5807 * configure.in (gui_b): excise std_string option.
5808 (gui_b): excise std_vector option.
5810 * flower/string.cc (Module): excise flower array & string
5812 * flower/include/std-string.hh: excise flower string.
5814 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5816 * python/convertrules.py (lilypond_version_re_str): require
5817 only numbers and dots in \version string.
5819 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5821 * lily/system-start-delimiter.cc (print): allow style = text too.
5823 * lily/system-start-delimiter-engraver.cc
5824 (acknowledge_system_start_text): new function, also add add to
5825 support of system-start-text (instrument names). This fixes
5826 instrument names on piano staves.
5828 * lily/instrument-name-engraver.cc: rewrite. Use
5829 system-start-delimiter approach. This save memory and cpu.
5831 * scm/define-grobs.scm (all-grob-descriptions): remove
5832 instrument-name from break-alignment.
5834 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5836 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5838 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5841 * configure.in (std_vector): On by default.
5843 * lily/include/font-metric.hh:
5844 * lily/include/tfm-reader.hh:
5845 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5848 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5850 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5852 * VERSION (PACKAGE_NAME): 2.7.31
5854 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5855 EPS edge at 0, but take minimum with left-overshoot. This fixes
5856 cut off system start delims.
5858 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5859 hack: add to axis group if not added yet. This fixes hara kiri'd
5862 * lily/hara-kiri-group-spanner.cc
5863 (force_hara_kiri_in_y_parent_callback): fix signatures.
5865 * lily/hairpin.cc (print): check next hairpin to see whether or
5866 not to be continuing.
5868 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5870 * Remove trailing whitespace from makefiles.
5872 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5875 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5877 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5879 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5881 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5883 * configure.in: Use it.
5885 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5887 * scm/music-functions.scm (pitch-of-note): new function.
5889 * ly/music-functions-init.ly: add \octave and \addquote
5891 * lily/parser.yy (music_function_chord_body): softcode \octave.
5892 (lilypond_header): softcode \addquote
5894 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5896 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5897 array.hh, parray.hh at all. Getting ready to flip the
5900 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5902 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5905 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5907 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5909 * flower/include/array.hh: typo.
5911 2006-02-02 Graham Percival <gpermus@gmail.com>
5913 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5915 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5917 * flower/include/pqueue.hh: Derive from std::vector.
5919 * flower/include/parray.hh: Conform to std::vector interface.
5922 2006-02-02 Graham Percival <gpermus@gmail.com>
5924 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5926 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5928 * flower/file-path.cc (is_file): remove if 0 section.
5930 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5931 selecting afii61352.
5933 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5935 * flower/include/std-vector.hh (boundary): Oops, reverse.
5937 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5938 remove superfluous `d'.
5940 * flower/include/std-vector.hh (boundary, top): Detach from class.
5941 Remove empty vector shell.
5943 * flower/include/array.hh (reverse, swap): Detach from class.
5946 * flower/include/std-vector.hh
5947 * flower/include/array.hh (concat): Globally change to insert ().
5949 * flower/include/std-vector.hh
5950 * flower/include/parray.hh
5951 * flower/include/array.hh (elem, elem_ref): Globally replace by
5954 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5956 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5958 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5959 anticipate on identifier substitutions.
5961 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5963 * flower/include/std-vector.hh (insert): Remove, replace by
5964 std::vector interface. Update callers.
5966 * flower/include/array.icc (insert): Change signature to
5967 match std::vector interface.
5969 * flower/include/array.icc (vector_sort): Bugfix.
5971 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5973 * lily/parser.yy (output_def_head_with_mode_switch): new
5974 production. Result: dashes and underscores may be used in the
5977 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5979 * python/convertrules.py (conv): oops. One slash too much.
5981 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5983 * flower/include/std-vector.hh (sort): Remove, replace by
5984 ::vector_sort. Update callers.
5986 * flower/include/std-vector.hh (slice): Remove. Update callers.
5989 * flower/test-std.cc (vector_sort): New test.
5991 2006-02-01 Graham Percival <gpermus@gmail.com>
5993 * Documentation/user/putting.itely: fixes from Erik.
5995 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5997 * flower/test-std.cc: Add simple unit test for vector migration.
5999 * stepmake/stepmake/test*: Unit test support.
6001 * flower/include/std-vector.hh (del): Remove. Use erase (),
6004 * flower/include/array.hh (begin, end): Add.
6007 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6009 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6010 std::string not String.
6012 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6015 * lily/prob.cc (Prob): copy type_ too.
6017 * lily/lily-guile.cc (mangle_cxx_identifier): new
6018 function. Class_bla::foo_bar_[px] ->
6019 ly:class-bla::foo-bar[?!]. Changes throughout
6021 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6023 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6025 * lily/beam.cc (calc_direction): take dir from visible stem in
6028 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6030 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6031 Fix -1, >=0 boundary checks for unsigned vsize.
6033 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6034 loop for unsigned vsize.
6036 * configure.in (--enable-std-vector): New option.
6037 (--enable-std-string): On by default.
6039 * flower/include/std-vector.hh: New file. Enable switch to
6040 std::vector, update client code.
6042 2006-01-30 Graham Percival <gpermus@gmail.com>
6044 * scm/document-translation.scm: clarify "this context is also
6045 known as". Thanks, Werner!
6047 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6049 * Documentation/user/invoking.itely: small fix from Don.
6051 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6053 * scm/lily.scm (define-scheme-options): rename option
6054 preview-include-book-title to book-title-preview
6055 (define-scheme-options): move force-eps-font-include (from paper
6056 block) to eps-font-include -d option.
6058 * VERSION (PATCH_LEVEL): release 2.7.30
6060 * input/bach-schenker.ly (staffPiano): new file.
6062 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6064 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6067 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6069 * ps/lilyponddefs.ps: remove start-system, stop-system,
6070 start-page fluff. This saves putting { } code on the stack, fixing
6071 stack overflows when including EPS files.
6073 2006-01-29 Graham Percival <gpermus@gmail.com>
6075 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6077 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6079 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6081 2006-01-28 Graham Percival <gpermus@gmail.com>
6083 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6085 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6087 * input/mutopia/claop.py: Update.
6089 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6091 * input/regression/completion-heads.ly (texidoc): fix.
6093 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6095 * lily/tie-formatting-problem.cc
6096 (set_ties_config_standard_directions): use abs iso fabs for ints.
6098 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6100 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6101 little less than noteheight, to prevent overlaps in chords.
6103 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6104 head, and fudge stem-attachment.
6106 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6108 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6110 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6112 * lily/main.cc (main): Debugging aid: catch exceptions.
6114 * flower/std-string.cc (to_string): Robustification. Fixes midi
6115 output with std::string.
6117 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6119 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6121 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6123 * Fix -DSTRING_UTILS_INLINED.
6125 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6127 * VERSION (PATCH_LEVEL): release 2.7.29
6129 * lily/relocate.cc (setup_paths): mingw uses std string too.
6131 * lily/*.cc: various fixes for substr(ARG).
6133 * lily/sustain-pedal.cc (print):
6135 * flower/file-name.cc (slashify): use std strings.
6137 * flower/string-convert.cc: remove publib.h
6139 * scm/define-markup-commands.scm (verbatim-file): new markup
6140 command \verbatim-file
6142 * Documentation/topdocs/NEWS.tely: fixup URLs
6144 * input/regression/alignment-vertical-manual-setting.ly (Module):
6147 * lily/align-interface.cc (align_elements_to_extents): overwrite
6148 translations with numbers in alignment-offsets from left bound
6150 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6151 (page-translate-systems): new function: take into account Y-offset.
6153 * Documentation/topdocs/NEWS.tely (Top): document new features.
6155 * input/regression/page-layout-manual-position.ly (Module): new
6158 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6160 * flower/file-path.cc (path::parse_path): Oops.
6162 * Finish std::string interface. For now, use std:: marker
6163 throughout for easy s/r.
6165 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6167 * Documentation/user/putting.itely (Score is a single musical
6169 (Score is a single musical expression): more typos.
6171 * scm/page.scm (annotate-space-left): thinko.
6172 (annotate-page): more thinkos.
6174 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6176 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6177 for different \score blocks separately.
6178 (post-process-pages): put write-page-layout into paper block.
6180 * lily/output-def.cc (get_parser): new file.
6182 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6185 * lily/include/output-def.hh (class Output_def): add parser_ member.
6187 * input/regression/page-layout-twopass.ly (Module): new file.
6189 * scm/lily.scm: remove cpp hack.
6191 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6193 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6195 * GNUmakefile.in (c-clean): New target.
6197 * flower/include/std-string.hh: String/std::string compatibility:
6198 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6201 * flower/rational.cc:
6202 * flower/include/rational.hh:
6205 * flower/include/offset.hh:
6207 * flower/interval.cc:
6208 * flower/include/interval.hh:
6210 * flower/string-convert.cc:
6211 * flower/include/string-convert.hh: Use std::string [interface].
6214 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6216 * Documentation/index.html.in: clean up.
6218 2006-01-25 Graham Percival <gpermus@gmail.com>
6220 * Documentation/user/putting.itely: another new untested doc section.
6222 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6224 * scm/layout-page-layout.scm (write-page-breaks): write
6225 \spacingTweaks #ALIST. Handle grace timing.
6227 * scm/: more imports.
6229 * scm/page.scm (make-page): add footer/header.
6230 (annotate-space-left): revise: only take page argument.
6231 (layout->page-init): new function.
6233 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6234 version of the system/spacing/linebreak hack writing to the output
6236 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6239 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6242 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6244 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6246 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6248 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6249 handling to page.scm
6251 * lily/prob-scheme.cc (LY_DEFINE): new file.
6252 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6254 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6257 * lily/music.cc (derived_mark): derive Music from Prob.
6259 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6261 * lily/prob.cc (Module): Implement Prob (Property Object), object
6262 with shared and r/w property alists.
6264 * lily/include/prob.hh (Module): new file. Declare Prob.
6266 * flower/string.cc: remove is_empty().
6268 * flower/include/string.hh (class String): remove String:: qualifier.
6270 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6271 substitute appropriate functions.
6273 * flower/include/string.hh (class String): remove to_str0 and
6274 is_empty(). S&R everywhere.
6276 2006-01-23 Graham Percival <gpermus@gmail.com>
6278 * Documentation/user/basic-notation.itely: add hairpin
6279 after-linebreak tweak to commonprop.
6281 * Documentation/user/putting.itely: added two new sections.
6283 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6285 * flower/international.cc:
6286 * flower/include/international.hh:
6288 * flower/getopt-long.cc:
6289 * flower/include/getopt-long.hh: Use std::string [interface].
6292 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6294 * stepmake/stepmake/executable-rules.make: Add dependency on
6297 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6299 * flower/file-path.cc:
6300 * flower/include/file-path.hh: Use std::string [interface].
6303 * flower/direction.cc:
6304 * flower/axis.cc: Unused. Remove.
6306 * configure.in (--enable-std-string): New option.
6308 * flower/std-string.cc:
6309 * flower/include/std-string.hh: New file.
6311 * flower/file-name.cc[STD_STRING]:
6312 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6314 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6316 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6318 * scm/define-markup-commands.scm (with-dimensions):
6319 with-dimensions markup command.
6321 * input/test/font-table.ly: use it.
6323 * lily/open-type-font.cc (glyph_list): new function.
6325 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6327 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6329 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6331 * ly/music-functions-init.ly (parallelMusic): new music function
6332 for parallel music entry.
6334 * scm/define-music-properties.scm (all-music-properties): new
6335 'void music property
6337 * scm/music-functions.scm (ly:music-message): make public, to be
6338 used in music function definitions
6340 * scm/lily-library.scm (collect-music-for-book): discard music
6341 when the 'void property is set.
6343 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6345 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6347 * mf/GNUmakefile: idem.
6349 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6351 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6353 * Documentation/user/notation-appendices.itely (The Feta font):
6356 * input/test/font-table.ly: new file. Generate font table within lily.
6358 * Documentation/user/notation-appendices.itely (The Feta font):
6359 use new font-table.ly file.
6361 * stepmake/stepmake/install-out-targets.make
6362 (local-install-outfiles): only create directory if
6363 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6365 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6367 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6369 * VERSION (PACKAGE_NAME): release 2.7.28
6371 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6372 the right font from a Mac dfont.
6373 (write-preamble): don't forget directory, only look at files.
6375 This fixes problems with TTF files in dfonts that don't match
6376 their PostScript names.
6378 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6379 PS name from TTF font.
6381 * input/regression/tie-manual.ly: document new feature.
6383 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6385 * VERSION (MY_PATCH_LEVEL): bump to .28
6387 * Documentation/user/basic-notation.itely (Ties): add tie examples
6390 * lily/tie-formatting-problem.cc (score_ties_configuration):
6391 symmetry penalties for outer ties.
6393 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6395 * lily/tie-formatting-problem.cc (generate_configuration)
6396 (set_manual_tie_configuration): skip non-pair manual
6397 tie-configuration, so you can set individual ties as
6399 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6401 * input/regression/tie-chord.ly: use generateTiePattern to
6404 * lily/tie-formatting-problem.cc (peak_around): new function.
6405 (score_configuration): use sliding criterion for staff line collisions.
6406 (score_configuration): idem for dot collisions.
6407 (generate_configuration): use separate stem_gap for gap to stem.
6409 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6410 separate penalty factors for x and y distance.
6411 (struct Tie_details): separate penalties for tip and center line collisions.
6413 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6415 * lily/tie-formatting-problem.cc (generate_configuration): make
6416 large ties avoid stafflines in the horizontal section.
6417 (score_configuration): use softcoded penalties
6418 (score_aptitude): idem.
6420 * lily/tie-helper.cc (from_grob): softcode tie details
6422 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6424 * lily/staff-symbol-referencer.cc (on_line): rename from
6427 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6429 * ly/music-functions-init.ly: remove duplicate tag.
6431 * lily/include/*.hh: GCC 4.1 fixes.
6433 006-01-16 Erlend Aasland <erlenda@gmail.com>
6435 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6437 * scm/define-music-types.scm: fix bug in desc. string
6438 for OverrideProperty
6440 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6442 * scripts/lilypond-book.py: bugfix
6444 * scm/define-music-types.scm: fix typos.
6446 2006-01-14 Graham Percival <gpermus@gmail.com>
6448 * Documentation/user/ basic-notation.itely, global.itely,
6449 advanced-notation.itely, instrument-notation.itely: small
6450 additions (bugs and commonly tweaked properties).
6452 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6454 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6455 detection of mingw build.
6456 (MINGW_BUILD): opps.
6458 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6460 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6463 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6465 * scm/music-functions.scm (skip->rest): add skip->rest
6467 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6469 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6472 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6473 config dirs. Aids debugging.
6474 (display_config): also display config files.
6476 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6478 * VERSION: release 2.7.27
6480 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6481 for determining bar size.
6483 * lily/staff-symbol.cc (print): place lines at distance line-positions
6485 * scm/define-grob-properties.scm (all-user-grob-properties): add
6488 * lily/staff-symbol.cc (height): new function.
6490 * input/regression/staff-line-positions.ly: new file.
6492 2006-01-06 Graham Percival <gpermus@gmail.com>
6494 * input/test/add-staccato.ly: remove reference to old file.
6496 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6498 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6499 lilypond binary too.
6501 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6503 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6505 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6507 * scripts/midi2ly.py: Bugfix: Declare datadir.
6509 * make/ly-rules.make:
6510 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6511 that seems to be gone). Fixes make web.
6513 * The grand 2005-2006 replace.
6515 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6517 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6519 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6520 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6521 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6522 like -dgs-font-load.
6524 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6525 remove absolute path to lilypond binary.
6527 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6529 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6531 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6533 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6535 * mf/GNUmakefile: remove broken dvips map symlink.
6537 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6540 * configure.in: Cosmetic fixes.
6542 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6544 * Documentation/user/music-glossary.tely (Pitch names): Added
6545 Spanish pitch names and durations, thanks to Ernesto Gancedo
6547 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6549 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6550 init. Fixes verbose printing of .scm files.
6552 * stepmake/aclocal.m4: add spaces before - options.
6554 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6556 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6557 of path search in local block variable.
6559 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6561 * configure.in (NCSB_DIR): --enable-ncsb-dir
6562 (LINK_GXX_STATICALLY): denko.
6564 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6566 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6567 use locate to find c059033l.pfb.
6569 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6571 * lily/tie-formatting-problem.cc
6572 (problem::generate_base_chord_configuration): Use my_round (was
6575 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6576 do not invoke mbrtowc.
6578 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6580 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6582 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6584 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6586 * Documentation/user/invoking.itely (svg): revise.
6588 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6590 * lily/lexer.ll: use sourcefilename iso. renameinput.
6592 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6594 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6595 <PostScriptName>.ttf instead of c059XXXttf.
6597 * lily/program-option.cc (LY_DEFINE): special support for
6598 --verbose, so it works before option init too.
6600 * mf/GNUmakefile (local-install): oops.
6602 * lily/lyric-hyphen.cc (print): oops.
6604 * buildscripts/pfx2ttf.fontforge: new file.
6606 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6607 ($(outdir)/%.ttf): new rule.
6609 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6612 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6615 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6617 * VERSION: release 2.7.26
6619 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6621 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6623 * lily/font-config.cc (init_fontconfig): verbosity.
6625 * THANKS: add Muziekacademie Lede.
6627 * scripts/musicxml2ly.py (print_voice_definitions): new function
6628 (print_score_setup): new function
6629 (convert): read part definition to output staves properly.
6631 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6634 * python/musicexp.py (Output_printer.__init__): use _ in data
6636 (Output_printer.unformatted_output): new function: no formatting,
6638 (Duration.get_length): remove isinstance() checks for
6639 Output_printer everywhere.
6641 * input/regression/lyrics-bar.ly (texidoc): add
6642 Separating_line_group_engraver.
6644 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6646 * lily/relocate.cc (framework_relocation): New function,
6647 factored from set_relocation ().
6648 (prefix_relocation): Rename from set_relocation ().
6649 (setup_paths): Use it.
6651 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6653 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6654 numbers. Patch by Erlend Aasland.
6656 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6658 * lily/font-config.cc (init_fontconfig): print warning if cache
6659 file is not existant.
6661 * lily/main.cc: don't use #ifdef but #if
6663 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6665 * lily/grob-property.cc (internal_set_property): don't abort on
6666 calculation-in-progress.
6668 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6670 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6671 connect-to-neighbor property not connect-to-other
6673 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6674 (LY_DEFINE): oops. don't forget protection.
6676 * flower/parse-afm.cc (Module): strip AFM handling completely.
6678 * lily/stencil-expression.cc: idem.
6680 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6682 * lily/function-documentation.cc (ly_add_function_documentation):
6683 use static member iso. Protected_scm
6685 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6687 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6689 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6691 * lily/relocate.cc (set_env_dir): New function.
6692 (set_relocation): Use it to fix setting PANGO_PREFIX.
6694 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6696 * input/regression/stem-direction-context.ly: remove rest.
6698 * lily/melody-engraver.cc (process_music): restart for bar lines.
6699 (acknowledge_slur): restart for slurs.
6701 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6703 * Documentation/user/invoking.itely: describe how to view SVG
6704 output using Inkscape which replace embedded fonts with OTF fonts.
6706 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6708 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6710 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6712 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6715 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6717 * VERSION (PACKAGE_NAME): release 2.7.25
6719 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6721 * input/regression/stem-direction-context.ly: new file.
6723 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6725 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6728 * ly/engraver-init.ly: add Melody_engraver
6730 * lily/beam.cc (calc_direction): use default-direction
6731 iso. get_default_direction()
6733 * scm/define-grob-properties.scm (all-user-grob-properties): add
6734 default-direction property.
6736 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6738 * lily/stem.cc (calc_default_direction): remove
6739 Stem::get_default_direction, use default-direction with callback
6742 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6744 * lily/melody-engraver.cc: new file. Acknowledge stems for
6745 interpolated stem directions.
6747 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6749 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6751 * lily/slur-configuration.cc (fit_factor): more robust check for
6752 point in curve X-extent.
6754 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6755 (outside_slur_callback): check for 'outside avoidance.
6757 * lily/slur-configuration.cc (score_extra_encompass): don't use
6758 bound->column() == avoid->column() for checking extents, as this
6759 doesn't work for accidentals.
6761 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6762 DynamicText hardcoding.
6764 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6765 crash if bound stem is NULL
6767 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6770 2005-12-22 Graham Percival <gpermus@gmail.com>
6772 * scm/define-markup-commands.scm: typo. @code{\raise}
6775 * darwin.patch: now used again, includes a
6776 required patch from fink.
6778 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6780 * po/TODO: mention gtranslator along with kbabel.
6781 * po/fi.po: update translations.
6783 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6785 * lily/relocate.cc (setup_paths): Bugfix.
6787 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6789 * lily/slur-configuration.cc (score_extra_encompass): don't use
6790 "avoid" choice for avoid-slur.
6792 * stepmake/bin/install.py (dest): don't create existing dir.
6794 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6796 * stepmake/bin/install.py: Remove file before copying.
6799 * stepmake/aclocal.m4: Do not substitute INSTALL.
6801 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6803 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6804 depend on link-tree.
6806 * lily/relocate.cc (setup_paths): only check path for non-absolute
6807 dir without directory part.
6809 * flower/file-name.cc (is_absolute): new method.
6810 (is_absolute): check root_ too.
6812 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6814 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6815 relocation code. Oops, don't comment out too much.
6817 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6820 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6823 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6825 * .cvsignore: Add install-sh.
6827 * autogen.sh (srcdir): Typo.
6829 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6831 * autogen.sh (srcdir): urg. Touch install-sh.
6833 * stepmake/bin/install-sh (Module): remove.
6835 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6837 * lily/include/relocate.hh: new file.
6839 * lily/relocate.cc: new file. Contain relocation logic.
6841 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6842 (main): read LILYPOND_VERBOSE as the first thing.
6844 * stepmake/aclocal.m4: remove INSTALL variable.
6846 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6847 separate target for making font symlinks.
6848 (documentation-dir): use $(if $(findstring )) for switching off
6851 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6852 something if DOCUMENTATION is no.
6854 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6856 * VERSION: release 2.7.24
6858 * lily/script-column-engraver.cc (stop_translation_timestep):
6859 delay adding to script-column.
6861 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6863 * python/convertrules.py (conv): rule for number-visibility
6865 * lily/slur-configuration.cc (score_extra_encompass): different
6866 distance measure for avoid and inside avoidance.
6867 (score_extra_encompass): use 1/(distance+eps) as penalty.
6869 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6870 encompass objects for generating slur curves.
6872 * lily/slur.cc: use details iso. slur-details property.
6874 * input/regression/slur-tuplet.ly: new file.
6876 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6878 * flower/include/offset.hh (class Offset): new operator /=
6880 * lily/tuplet-number.cc (print): new file, new interface.
6882 * scm/define-grob-properties.scm (all-user-grob-properties):
6883 remove number-visibility property.
6885 * lily/tuplet-bracket.cc (calc_control_points): new function
6886 (calc_connect_to_neighbors): new function.
6887 (print): remove text handling for tuplet numberdef.
6889 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6892 * lily/lily-guile.cc (robust_scm2booldrul): new function
6894 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6896 * lily/tuplet-bracket.cc (calc_position_and_height): use
6897 staff-padding to control whether tuplet brackets are over staves.
6899 * lily/grob.cc (suicide): clear dim_caches_.
6901 * lily/dimension-cache.cc (clear): new function.
6903 * lily/grob.cc (extent): swap order of min-extent and extent
6904 calculations. This fixes hara kiri staves.
6906 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6908 * lily/main.cc: Nitpick: relocation is not based on path, but on
6909 directory (location).
6911 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6913 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6915 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6917 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6919 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6921 * stepmake/stepmake/generic-vars.make (Module): idem.
6923 * stepmake/stepmake/executable-targets.make (default): use it.
6925 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6927 * make/GNUmakefile: don't install make rules.
6929 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6931 (prepend_env_path): more verbosity.
6933 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6935 * GNUmakefile.in: add dir argument for find command.
6937 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6938 fixes weird line numbers for point & click.
6940 * lily/source-file.cc (get_counts): init line/column/char counts.
6942 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6944 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6946 2005-12-16 Graham Percival <gpermus@gmail.com>
6948 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6949 minor fixes from Fredric. Thanks!
6951 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6953 * ly/music-functions-init.ly: add \bar and \clef music function
6955 * lily/lily-lexer.cc: idem.
6957 * lily/parser.yy (FIXME): remove BAR and CLEF.
6959 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6961 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6963 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6964 function arguments too
6966 * lily/main.cc (set_relocation): new function.
6968 * scripts/musicxml2ly.py (convert): add \version
6970 * lily/tie.cc: remove get_default_attachments()
6972 * VERSION (PACKAGE_NAME): release 2.7.23
6974 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6975 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6977 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6979 * lily/tie-formatting-problem.cc (score_ties): new function
6980 (get_variations): new function. Try flipping dirs for collisions.
6981 (generate_optimal_chord_configuration): new function. 1-opt search
6982 for better configuration.
6984 * lily/tie-configuration.cc: new file.
6986 * lily/tie.cc: junk Tie::get_configuration()
6988 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6989 (score_ties_configuration): new function.
6990 (generate_ties_configuration): new function.
6991 (generate_base_chord_configuration): new function.
6992 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6993 (set_manual_tie_configuration): Move body from tie-column-format.cc
6995 * input/regression/tie-dot.ly: new file.
6997 * lily/tie-formatting-problem.cc (score_configuration): score
7000 * lily/tie-helper.cc (get_transformed_bezier): new function
7002 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7004 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7005 -undefined suppress iso. -framework Python
7007 * scm/define-grobs.scm (all-grob-descriptions): set
7008 springs-and-rods (thanks Joe Neeman!)
7010 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7012 * input/no-notation/display-lily-tests.ly (test):
7013 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7014 changed from \tag #'(a b) to \tag #'a \tag #'b
7016 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7018 * Documentation/topdocs/NEWS.tely: strip out-www.
7020 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7022 * config.make.in (AR): add AR and RANLIB
7024 * flower/libc-extension.cc: include cassert
7026 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7029 2005-12-11 Graham Percival <gpermus@gmail.com>
7031 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7033 * stepmake/stepmake/python-modules-vars.make: define
7034 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7036 * THANKS: added Johannes Schindelin.
7038 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7040 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7042 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7043 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7045 * lily/parser.yy: reorganize file layout.
7047 * ly/music-functions-init.ly: add tweak music function.
7049 * lily/grob-info.cc (ultimate_music_cause): new function:
7050 recursively lookup causes.
7052 * lily/parser.yy (chord_body_element): allow music functions for
7053 post-events, allow music functions for chord elements.
7055 * lily/font-config-scheme.cc (display_fontset): add cast.
7057 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7058 #'(a b) -> \tag #'a \tag #'b rule.
7060 * python/musicexp.py (Output_printer.dump_version): new function
7062 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7064 * lily/parser.yy (FIXME): remove \tag
7065 (FIXME): remove tag_music() function.
7067 * lily/lily-lexer.cc: remove \tag
7069 * ly/music-functions-init.ly: define music-function "tag"
7071 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7073 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7075 * VERSION (PATCH_LEVEL): release 2.7.22
7077 * input/regression/lyric-hyphen-retain.ly: renew.
7079 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7082 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7083 iso. minimum-length property for rods.
7085 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7086 LyricSpace item to keep lyrics spaced apart.
7088 * ly/engraver-init.ly: remove Separating_line_group_engraver
7090 * Documentation/user/music-glossary.tely: do setfilename before
7093 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7095 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7096 See xref documentation, for example.
7098 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7100 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7101 pending_skip iso. ly_voice[-1]
7102 (main): add if __main__ for debugging.
7104 * python/musicxml.py (Accidental.__init__): new class.
7106 * scripts/musicxml2ly.py (progress): new function
7107 (musicxml_key_to_lily): don't barf on modeless keys.
7108 (create_skip_music): new function.
7109 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7110 (musicxml_note_to_lily_main_event): new function.
7112 * python/musicexp.py (Music.__init__): add comment field.
7113 (NestedMusic.append): new routine.
7114 (SequentialMusic.print_ly): print comment.
7115 (ArpeggioEvent.ly_expression): new class
7116 (BeamEvent.ly_expression): new class
7117 (NoteEvent.__init__): support for cautionary/forced accs.
7119 * lily/lookup.cc (slur): normal order for array loop.
7121 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7124 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7127 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7129 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7131 * scripts/lilypond-book.py: Introduce option
7132 --preserve-line-breaks, for usage with srcltx
7134 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7136 * scm/output-lib.scm (print-circled-text-callback): draw circle
7137 around text using make-circle-markup.
7139 * Documentation/user/*: strip out-www from file names.
7141 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7143 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7144 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7146 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7148 * Documentation/user/GNUmakefile: idem.
7150 * Documentation/user/macros.itexi: strip out-www
7152 * python/rational.py: python 2.3 compat.
7154 * VERSION (PATCH_LEVEL): release 2.7.21
7156 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7157 option formatting, lilypond style.
7159 * python/musicexp.py: grab from Ikebana: a library for composing
7160 ly music expressions.
7161 (Output_printer): class for advanced .ly printing.
7164 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7165 convert to pythonesque structure.
7167 * python/rational.py: PD rational number class.
7169 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7171 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7173 * lily/part-combine-iterator.cc: Minor bugfix
7175 * THANKS: Update bughunters
7177 2005-12-02 Werner Lemberg <wl@gnu.org>
7179 * mf/README: Document process for proper mf2pt1 conversion.
7181 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7184 * mf/feta-harmonica.mf: Removed. Unused.
7186 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7188 * scripts/lilypond-book.py (do_file): fix thinkos.
7190 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7192 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7193 ($(outdir)/parser.cc):
7194 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7196 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7198 * ly/titling-init.ly (tagline): it should be a space between
7199 "Music engraving by LilyPond" and the version number.
7201 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7203 * VERSION (PACKAGE_NAME): release 2.7.20
7205 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7207 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7209 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7211 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7213 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7215 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7217 * kpath-guile/: remove directory
7219 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7220 file. Encapsulate kpathsea using commandline tools.
7222 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7225 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7227 * Documentation/user/advanced-notation.itely (Setting automatic
7228 beam behavior): Correct a few typos. Thanks to David Bobroff.
7230 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7231 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7233 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7235 * scripts/*.py: gmane address for bugs.
7237 2005-11-28 Pal Benko <benkop@freestart.hu>
7239 * make/ly-rules.make: add -f switch to mv
7241 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7243 * lily/bar-line.cc: interpret it
7245 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7247 * configure.in (--disable-documentation): New switch.
7249 * GNUmakefile.in: Use it.
7251 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7253 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7255 * scripts/lilypond-book.py (do_file): search chunks for
7258 * GNUmakefile.in: add copy step in between so we can lose the
7259 out-www directories.
7261 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7263 * lily/pango-font.cc (pango_item_string_stencil): put
7264 geometry.width into glyph-string too.
7266 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7268 * scm/define-music-display-methods.scm (RevertProperty):
7269 (OverrideProperty): Use grob-property-path property, a list of
7270 symbols, instead of grob-property, which used to be a single
7272 (BassFigureEvent): a figure can be a plain number, not necessarily a
7275 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7277 * VERSION: release 2.7.19
7279 * lily/figured-bass-engraver.cc (process_music): check
7280 figuredBassCenterContinuations first.
7282 * scm/translation-functions.scm (format-bass-figure): make double
7285 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7288 * lily/system-start-delimiter-engraver.cc: move from
7289 Nested_system_start_delimiter_engraver, rename
7290 Nested_system_start_delimiter_engraver ->
7291 System_start_delimiter_engraver.
7293 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7294 bracket type from hierarchy.
7296 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7298 * lily/rest.cc (y_offset_callback): read staff-position.
7300 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7301 mark after-line-breaking-callback as internal.
7303 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7305 2005-11-25 Werner Lemberg <wl@gnu.org>
7307 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7309 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7311 * stepmake/bin/add-html-footer.py (do_file): add google
7313 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7314 staff if first_start_ is true.
7316 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7318 * scripts/midi2ly.py (split_track): add __repr__ members.
7319 (track_first_item): only return Item if not None. This fixes a
7320 problem when dumping a track that starts with an empty channel.
7322 * python/midi.c: doc module.
7324 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7326 * Documentation/user/global.itely (Creating MIDI files): Fix
7327 compilation problem.
7329 2005-11-22 Graham Percival <gpermus@gmail.com>
7331 * Documentation/user/basic-notation.itely: clarify dynamic
7334 * Documentation/user/advanced-notation.itely: add unicode
7335 escape control example, whatever that is. :)
7337 * Documentation/user/global.itely: added "removing dynamics
7340 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7342 * VERSION (PATCH_LEVEL): release 2.7.18
7344 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7345 System_start_delimiter_engraver by
7346 Nested_system_start_delimiter_engraver.
7348 * lily/nested-system-start-delimiter-engraver.cc (struct
7349 Bracket_nesting_node): new class.
7350 (struct Bracket_nesting_group): new class
7351 (struct Bracket_nesting_staff): new class.
7352 (process_music): create hierarchy of grobs. This allows separate
7353 tuning of different SSDs.
7355 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7356 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7358 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7360 * lily/side-position-interface.cc (aligned_side): multiply
7363 * lily/script-engraver.cc (make_script_from_event): allow setting
7366 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7368 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7370 * scm/define-grobs.scm (all-grob-descriptions): new grob
7371 NestedSystemStartDelimiter.
7373 * input/regression/system-start-heavy-bar.ly: new file.
7375 * lily/nested-system-start-delimiter-engraver.cc: new file.
7377 * lily/nested-system-start-delimiter.cc: new file.
7379 * input/regression/system-start-nesting.ly: new file.
7381 * scm/define-grobs.scm (all-grob-descriptions): use X side
7382 positioning for positioning braces for nested contexts.
7384 * lily/system-start-delimiter.cc (print): don't divide extent by
7386 (print): use style iso. glyph.
7387 (staff_bracket): translate glyph inside routine already.
7389 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7391 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7394 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7396 * scm/define-context-properties.scm
7397 (all-user-translation-properties): rename figuredBassFormatter
7398 from newFiguredBassFormatter.
7400 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7402 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7404 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7406 * lily/beam.cc (calc_beaming): new function.
7407 (calc_shorten): new function.
7409 * THANKS: add Edward Neeman.
7411 * input/regression/accidental-clef-change.ly: new file.
7413 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7415 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7417 * lily/clef-engraver.cc (inspect_clef_properties): reset
7418 localKeySignature for clef changes.
7420 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7422 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7423 add dummy definition that works in Linux and add information in
7424 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7426 * Documentation/user/changing-defaults.itely (Modifying context
7427 plug-ins): Add index for \with.
7429 * Documentation/user/music-glossary.tely (dal segno): Updated
7430 example to version >=2.6.
7432 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7434 * Documentation/user/instrument-notation.itely (Printing chord
7435 names): Reorder \chordmode and \repeat in one example.
7437 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7439 * VERSION: release 2.7.17
7441 * Documentation/topdocs/NEWS.tely (Top): add note about
7444 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7445 new function. Search region of 3 positions for best tie.
7446 (score_configuration): new function.
7447 (score_aptitude): new function.
7448 (generate_configuration): new function.
7449 (get_configuration): new function.
7450 (Tie_formatting_problem): new function
7452 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7454 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7456 * THANKS: add Eduardo Vieira & Ralph Little
7458 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7461 * lily/include/tie-formatting-problem.hh (class
7462 Tie_formatting_problem): add Tie_details to
7463 Tie_formatting_problem. Update calling conventions.
7465 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7468 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7470 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7472 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7473 scm/define-context-properties.scm: Maintenance bugfix: make
7474 ligature brackets work again by removing obsolete ligature
7475 primitive callback push/pop.
7477 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7478 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7481 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7483 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7484 used and do not call it a path.
7485 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7487 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7489 * lily/include/tie-formatting-problem.hh (class
7490 Tie_formatting_problem): new file.
7492 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7494 * Documentation/misc/ChangeLog-2.3: new file.
7496 * lily/audio-staff.cc (output): degarianize.
7498 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7500 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7501 Unset PYTHONOPTIMIZE. Fixes install if set.
7503 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7505 * python/convertrules.py (conv): add warning about drums.
7507 * make/stepmake.make: include toplevel-version.make after config.make.
7509 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7510 also allow python2.4
7512 * config.make.in (configure-srcdir): remove GXX GCC vars.
7514 * stepmake/aclocal.m4: don't do non-srcdir build with
7515 symlinks. Use inclusion, so the src directory name can be changed.
7517 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7519 * make/mutopia-vars.make:
7520 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7523 2005-11-13 Werner Lemberg <wl@gnu.org>
7525 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7526 but the affected path. This ensures that the (overlapping) outlines
7527 have the same direction, which is a necessary prerequisite for
7528 FontForge's algorithm to remove overlaps.
7531 * mf/feta-haak.mf: Formatting.
7532 (draw_bracket): Slightly modify outline to avoid an unnecessary
7534 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7535 them from the affected paths.
7537 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7539 * mf/README: remove xpm / accordion notes.
7541 * lily/tie-column-format.cc (set_chord_outline): add dots into
7542 skyline extents. This fixes tie formatting if the left head has dots.
7544 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7545 space inside the staff.
7546 (get_configuration): shift another position if necessary in case
7549 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7551 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7552 buildscript-dir iso. $(depth)/buildscripts.
7554 * tex/GNUmakefile (local-uninstall): remove
7555 music-drawing-routines.ps juggling.
7557 * stepmake/stepmake/install-targets.make (local-install-files):
7558 prepend src-dir to install targets.
7560 * lily/system-start-delimiter-engraver.cc
7561 (acknowledge_system_start_delimiter): use
7562 add_offset_callback(). This fixes translation of nested
7565 * lily/grob-closure.cc (add_offset_callback): only encaps in
7566 simple_closure if it's a procedure.
7568 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7571 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7572 remove-empty where pertinent.
7574 2005-11-12 Graham Percival <gpermus@gmail.com>
7576 * Documentation/user/instrument-notation.itely: added
7577 Cameron Horsburgh's multiple stanzas docs. Thanks!
7579 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7583 make picture in builddir, not srcdir.
7585 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7587 * VERSION: release 2.7.16
7589 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7592 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7594 * Documentation/user/examples.itely (Piano templates): Minor
7595 modification to the Piano centered lyrics example.
7597 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7599 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7602 * Documentation/user/point-and-click.itely: simplify p&c
7603 instruction: don't configure firefox. Put lilypond-invoke-editor
7604 in front of the browser.
7606 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7607 (run-browser): new function.
7609 * lily/parser.yy (Lily_lexer): recognize Book
7611 * lily/book.cc (clone): new function
7613 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7615 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7617 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7618 Maintenance bugfix: reduce number of font related warnings by
7619 updating naming conventions for glyph-name.
7621 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7623 * scm/define-grobs.scm (all-grob-descriptions): add
7624 rhythmic-grob-interface to TabNoteHead.
7626 * scm/layout-beam.scm (check-quant-callbacks): remove
7629 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7631 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7632 alignment of centered divisiones.
7634 * scm/scripts.scm (articulations): Maintenance bugfix:
7635 follow-into-staff -> quantize-position.
7637 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7638 plica head in porrectus deminutus.
7640 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7642 * make/lilypond.fedora.spec.in (Group): add %clean section.
7644 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7645 less then 1/5th of total length.
7646 (print): use gap too. Fixes tupletUp-single-bracket.ly
7648 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7649 events into EventChord. This fixes textspanners on mm rests. Fixes
7652 * lily/side-position-interface.cc (get_axis): read side-axis
7653 (set_axis): set side-axis.
7655 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7656 properties everywhere.
7658 * lily/spacing-spanner.cc (breakable_column_spacing): add
7659 average-spacing-wishes. Take maximum if not set.
7660 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7662 * scm/define-grobs.scm (all-grob-descriptions): add
7663 average-spacing-wishes.
7665 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7666 offset callbacks. This fixes alignment for Fingering objects.
7668 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7669 space for key - timesig combination.
7671 * input/regression/script-stem-tremolo.ly (Module): new file.
7673 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7676 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7677 Fixes: c-tremolo-script.ly.
7679 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7681 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7683 * scm/define-grobs.scm (all-grob-descriptions): remove
7684 self-X-offset. Fixes alignment of octavate-8.
7686 * scripts/lilypond-book.py (datadir): look in
7687 LILYPONDPREFIX/share/lilypond/current/
7689 * GNUmakefile.in: symlink current to <VERSION>.
7691 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7693 * lily/main.cc: eps listed as a backend.
7695 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7697 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7699 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7701 * lily/include/score.hh (class Score): remove texts_ member.
7703 * lily/beam.cc (set_stem_lengths): force direction callback.
7704 (print): read quantized-positions, so we can force
7705 Beam::set_stem_lengths to occur.
7706 (rest_collision_callback): use common X parent.
7708 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7710 * flower/file-path.cc (find): Bugfix: Return name of file found.
7712 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7713 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7714 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7716 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7718 * flower/offset.cc: idem.
7720 * mf/*.mf: update email address.
7722 * lily/font-config-scheme.cc: new file.
7724 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7726 * lily/*: cs.uu.nl -> xs4all.nl
7728 * VERSION (PATCH_LEVEL): release 2.7.15
7730 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7733 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7735 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7737 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7739 * lily/staff-performer.cc (process_music): add audio
7740 elements. This makes MIDI instrument changes work once again.
7742 * lily/main.cc (LY_DEFINE): add gmane address.
7744 * lily/beam.cc: remove calc_positions()
7746 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7747 original_ in private scope.
7748 (class Grob): drop pscore_ pointer, change to output_def pointer.
7749 (class Grob): cleanup class definition.
7751 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7753 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7755 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7756 absolute. Better diagnostics.
7758 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7759 This makes lilypond run from the build directory using argv0
7760 relocation (without any --prefix or LILYPONDPREFIX setting).
7762 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7764 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7766 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7767 with simple-closure.
7769 * lily/self-aligment-interface.cc (set_align_self): new function
7770 (set_center_parent): new function.
7772 * lily/side-position-interface.cc (set_axis): new function.
7774 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7777 * scm/define-grob-properties.scm (all-user-grob-properties):
7778 remove [XY]-offset-callbacks add [YX]-offset
7780 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7782 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7783 entry for time signatures after breathing signs. Bug report by
7786 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7788 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7789 not absolute, make it absolute using PATH.
7791 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7793 * python/midi.c (initmidi): Fix type for mingw.
7795 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7797 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7799 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7802 * stepmake/aclocal.m4: Support python cross compiling.
7804 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7807 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7809 * scm/output-lib.scm (chain-grob-member-functions): replace
7812 * lily/chained-callback.cc (Module): remove file.
7814 * lily/rest-collision.cc (force_shift_callback_rest): change to
7817 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7819 * lily/grob.cc (y_parent_positioning): remove axis argument from
7820 parent_positioning callbacks.
7821 (Grob): junk init code
7822 (get_offset): use generic property callbacks for
7823 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7824 (axis_parent_positioning): new function
7825 (axis_offset_symbol): new function
7826 (chain_offset_callback): new function
7827 (add_offset_callback): new function
7829 * lily/beam.cc (rest_collision_callback): change signature; this
7830 is now a chained callback.
7832 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7833 callback administration.
7835 * lily/simple-closure.cc: new file. Smob type that allows "grob
7838 (ly:make-simple-closure FUNC A B)
7840 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7843 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7846 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7848 * lily/rest.cc (polyphonic_offset_callback): remove.
7850 * lily/script-engraver.cc (try_music): remove bool* argument.
7852 * scm/script.scm (default-script-alist): set quantize-position
7855 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7857 * lily/side-position-interface.cc (aligned_side): move staff
7858 position quantization from
7859 Side_position_interface::quantised_position().
7860 (quantised_position): remove
7862 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7864 * input/regression/beam-quant-standard.ly: reindent, set
7865 debug-beam-quanting to #t.
7867 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7868 10000 if this is a "hard" concave beam.
7870 * lily/beam.cc (calc_least_squares_positions): change from
7871 calc_least_squares_dy
7872 (set_stem_lengths): this is now a chained callback.
7874 * lily/context-property.cc (execute_general_pushpop_property):
7875 bugfix override with procedure should have effect.
7877 * scm/define-grob-properties.scm (all-internal-grob-properties):
7878 remove position-callbacks.
7880 * scm/define-grobs.scm (all-grob-descriptions): use
7881 ly:make-callback-chain for positions property.
7883 * scm/layout-beam.scm (check-quant-callbacks): return list of
7886 * scm/lily.scm (type-p-name-alist): add callback-chain
7888 * lily/lily-guile.cc (type_check_assignment): type check failure
7889 is warning not message.
7891 * lily/grob-property.cc (try_callback): walk callback chain if
7894 * lily/chained-callback.cc: new file. new smob type.
7896 * lily/lily-guile.cc (procedure_arity): new function.
7898 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7900 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7902 2005-10-25 John Mandereau <john.mandereau@free.fr>
7904 * Documentation/user/instrument-notation.itely (Figured bass):
7905 describe new features
7907 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7909 * lily/beam.cc (calc_least_squares_dy): use property callback.
7911 * lily/beam-concave.cc (calc_concaveness): use property callback.
7913 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7915 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7919 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7921 * scm/layout-page-layout.scm (page-headfoot): annotate
7924 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7926 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7927 doesn't take y-space.
7929 * scm/paper.scm (paper-alist): fix A7 dimensions.
7931 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7933 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7934 src-wildcard, remove $(wildcard).
7936 * po/GNUmakefile (PO_FILES):
7937 * ps/GNUmakefile (PS_FILES):
7938 * tex/GNUmakefile (TEX_FILES):
7939 * cygwin/GNUmakefile (POSTINSTALLS):
7940 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7941 some wildcard calls.
7943 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7945 * THANKS: add Thomas Bushnell.
7947 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7949 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7950 (lilypond-main): Redirect to gui-main if 'gui is set.
7952 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7953 for alternative installations kludging s/share/lib/g
7956 * SConstruct (libdir_package_version): Define.
7958 * python/SConscript:
7959 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7962 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7964 * lily/main.cc: clarify --safe.
7966 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7968 * VERSION: release 2.7.14
7970 * Documentation/user/*.itely: remove minimumVerticalExtent.
7972 * scm/define-grobs.scm (all-grob-descriptions): remove
7973 RemoveEmptyVerticalGroup
7975 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7977 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7980 * python/convertrules.py (conv): add rules.
7982 * lily/grob.cc: remove is_empty()
7984 * lily/grob-property.cc: remove add_to_list_property().
7986 * scripts/convert-ly.py (datadir): add prefix switching hack to
7989 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7990 space-function tweak.
7992 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7994 * scm/define-grob-properties.scm (all-user-grob-properties):
7995 remove callback property.
7997 * lily/include/grob.hh (class Grob): remove property_callbacks_
7998 member. Properties of procedure type are assumed to be callbacks.
8000 * lily/ligature-engraver.cc (override_stencil_callback):
8001 rewrite. Use noteHeadLigaturePrimitive as source.
8003 * scm/define-grob-properties.scm (all-internal-grob-properties):
8004 remove ligature-primitive-callback
8006 * lily/include/dimension-cache.hh (class Dimension_cache): make
8007 class, with Grob as friend.
8009 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8010 has_extent_callback()
8012 * scm/translation-functions.scm (format-new-bass-figure): read
8013 figuredBassPlusDirection
8015 * scm/define-context-properties.scm
8016 (all-user-translation-properties): add figuredBassPlusDirection.
8018 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8020 * lily/align-interface.cc (set_ordered): new function.
8022 * lily/grob.cc (flush_extent_cache): rewrite.
8024 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8025 Interval pointer directly.
8027 * lily/main.cc (setup_paths): insert extra / .
8028 (setup_paths): junk cff entry.
8030 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8033 * lily/axis-group-engraver.cc (finalize): remove
8034 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8036 * lily/grob.cc (Grob): don't set extent from ctor.
8037 (extent): use property callbacks.
8039 * lily/axis-group-interface.cc: remove set_axes() function.
8041 * lily/grob-property.cc (del_property): new function.
8043 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8045 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8047 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8049 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8051 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8053 * mf/SConscript: Updates.
8055 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8057 * stepmake/stepmake/*:
8061 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8062 from any directory in build-dir. Cleanups.
8064 * make/srcdir.make.in: Remove.
8066 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8068 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8071 * lily/SConscript: Remove ttftools.
8073 * SConstruct: Resurrect.
8075 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8077 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8080 * lily/paper-book.cc (add_score_title): put Paper_score title into
8083 * scm/translation-functions.scm (format-new-bass-figure): also
8084 allow plus in combination with _
8086 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8088 * VERSION: 2.7.13 released.
8090 * lily/note-collision.cc (check_meshing_chords): don't wipe
8091 stencil, merely set transparent.
8093 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8094 (Top): document #'callbacks.
8095 (Top): document nested \override.
8097 * input/regression/figured-bass.ly: update for slash and pluses.
8099 * input/regression/figured-bass-continuation-forbid.ly (Module):
8102 * scm/translation-functions.scm (format-new-bass-figure): use
8103 slashed-digit if diminished is set.
8104 (format-new-bass-figure): add + if 'augmented is set.
8106 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8108 * input/test/piano-staff-distance.ly: remove file.
8110 * Documentation/user/advanced-notation.itely (Formatting cue
8111 notes): use length-fraction for making stems/beams smaller.
8113 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8116 * lily/new-figured-bass-engraver.cc: new property
8117 centerFiguredBassContinuations
8119 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8122 * lily/context-property.cc (execute_general_pushpop_property):
8125 * input/regression/override-nest.ly: new file.
8127 * python/convertrules.py (FatalConversionError.subber): conversion
8128 rule for #'callbacks
8130 * input/regression/override-nest.ly: new function.
8132 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8135 * lily/context-property.cc (lookup_nested_property): new function.
8136 (evict_from_alist): new function.
8137 (general_pushpop_property): new function.
8138 (execute_general_pushpop_property): rewrite. Support nested
8141 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8143 * lily/beam.cc: use length-fraction too.
8145 * scm/define-grob-properties.scm (all-user-grob-properties):
8146 remove property flag-width-function
8147 (all-user-grob-properties): remove space-function.
8149 * scm/layout-beam.scm: remove flag-width-function.
8151 * lily/beam.cc: remove flag-width-function
8153 * scm/layout-beam.scm: remove beam dir functions.
8155 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8157 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8158 for easier grace tweaks.
8160 * lily/beam.cc: remove dir-function.
8162 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8164 * lily/grob.cc: remove spacing-procedure.
8166 * lily/note-head.cc (calc_stem_attachment): new function.
8167 (internal_print): use callback to get glyph-name.
8169 * lily/grob-property.cc (get_interfaces): new function.
8171 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8173 * lily/stem.cc (calc_stem_end_position): new function.
8174 (calc_length): new function.
8175 document details for stem.
8176 remove Stem::get_direction()
8178 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8180 * lily/grob-property.cc (set_callback): new function.
8182 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8184 * lily/item-scheme.cc: new file.
8186 * lily/bar-line.cc (before_line_breaking): remove function.
8187 remove bar-size-procedure, break-glyph-function
8189 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8191 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8193 * lily/system-start-delimiter.cc (print): suicide from
8194 here. Remove after_line_breaking_callback.
8196 * lily/script-interface.cc (calc_direction): use callback for direction.
8198 * lily/side-position-interface.cc (aligned_side): don't use
8199 Side_position_interface::get_direction directly. Use callback.
8201 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8203 (get_print_stencil): rename from get_stencil: create stencil with
8204 transparency, color and cause.
8206 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8208 * python/convertrules.py (conv): insert temporary warning rule.
8210 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8212 * lily/grob-property.cc (try_callback): remove marker if applicable.
8214 * lily/grob.cc: elucidate doc about after/before-line-breaking
8216 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8218 * lily/stem.cc (height): idem.
8220 * lily/stem-tremolo.cc: idem.
8222 * lily/slur.cc (height): don't use get_uncached_stencil()
8224 * lily/rest.cc (y_offset_callback): use offset callback
8225 iso. after-line-breaking callback.
8227 * lily/grob.cc: change after/before-line-breaking-callback to
8228 after/before-line-breaking dummy properties.
8230 * lily/include/grob.hh: remove Grob_status.
8232 * scm/define-context-properties.scm
8233 (all-user-translation-properties): remove verticalAlignmentChildCallback
8235 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8236 (calc_direction): use callback
8237 (calc_positions): use callback.
8239 * lily/tie.cc (calc_direction): use callback. Only call parent
8240 positioning for more than one tie.
8242 * lily/tie-column.cc (calc_positioning_done): use callback
8244 * lily/slur-scoring.cc (calc_control_points): use callback
8246 * lily/slur.cc (calc_direction): use callback.
8248 * lily/note-collision.cc (force_shift_callback): remove.
8250 * lily/dot-column.cc (force_shift_callback): remove. Use
8251 other_axis_parent_positioning.
8253 * lily/grob.cc (other_axis_parent_positioning): new function.
8254 (same_axis_parent_positioning): new function
8256 * lily/align-interface.cc (alignment_callback): remove function.
8258 * lily/note-collision.cc (calc_positioning_done): use callback.
8260 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8261 (calc_direction): idem.
8262 remove print function.
8264 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8266 * lily/dot-column.cc (calc_positioning_done): use callback.
8268 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8270 * lily/beam.cc (calc_direction): use pseudo-property for beam
8272 (calc_positions): use callback
8274 * lily/align-interface.cc (calc_positioning_done): use
8275 callback. Fold fixed distance and normal alignment in one function.
8277 * lily/stem.cc (calc_stem_end_position): use callback.
8278 (calc_positioning_done): idem.
8279 (calc_direction): idem.
8280 (calc_stem_end_position): idem
8281 (calc_stem_info): idem.
8283 * lily/grob-property.cc (get_property_data): new function:
8284 (try_callback): new function.
8286 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8289 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8291 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8293 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8297 * lily/include/*.hh (Module): compile fixes.
8299 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8301 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8302 as an argument for char-syntax: use (char-syntax (or nil 0))
8303 instead of (char-syntax nil), thanks to Milan Zamazal.
8305 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8307 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8310 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8313 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8315 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8316 add class_name() method.
8318 * lily/music-scheme.cc: remove ly:music-name.
8320 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8322 * cygwin/postinstall-lilypond.sh: Remove cruft.
8324 * cygwin/postremove-lilypond.sh: Remove.
8326 * cygwin/GNUmakefile (default): Remove postremove rules.
8328 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8330 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8333 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8336 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8337 consider break index for broken spanner.
8339 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8340 characters from string before splitting.
8342 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8344 * scm/framework-ps.scm (output-preview-framework): use
8345 is-book-title to determine whether to chop off the booktitle.
8347 * lily/paper-book.cc (systems): init from book-title-properties
8348 (add_score_title): init score-title-properties.
8350 * ly/paper-defaults.ly: add {score,book}-title-properties.
8352 * scm/document-backend.scm (lookup-interface): error message if
8353 using unknown interface.
8355 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8358 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8360 (make_bracket): new function.
8362 * scm/lily.scm (define-scheme-options): add paper-size option.
8364 * ly/declarations-init.ly (laissezVibrer): get paper size from
8367 * scm/translation-functions.scm: use \fontsize for changing the
8370 * scm/define-grobs.scm (all-grob-descriptions): set
8371 between-length-limit to 1.0
8373 * lily/tie-helper.cc: add between_length_limit_ detail property.
8375 * mf/feta-bolletjes.mf: typos.
8377 * lily/note-head.cc (internal_print): don't shadow idx
8378 parameter. This fixes wrong attachment for do shape heads.
8380 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8382 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8384 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8386 * scm/layout-slur.scm: rename from slur.scm
8388 * scm/layout-page-layout.scm: rename from page-layout.scm
8390 * scm/layout-beam.scm: rename from beam.scm
8392 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8393 bass-figure-interface
8395 * lily/new-figured-bass-engraver.cc (process_music): add
8396 implicitBassFigures property.
8398 * scm/define-markup-commands.scm (pad-x): new markup.
8400 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8401 minimumVerticalExtent on FiguredBass context.
8403 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8404 case the continuation crosses a line break.
8406 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8408 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8409 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8410 absolute file name bug.
8412 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8414 * VERSION (PACKAGE_NAME): release 2.7.12
8416 * input/regression/figured-bass-continuation-center.ly: new file.
8418 * input/regression/beam-outside-beamlets.ly: new file.
8420 * lily/beam.cc (set_beaming): don't clip edges.
8421 (connect_beams): don't clip edges.
8423 * lily/beaming-info.cc (clip_edges): new function.
8425 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8427 * Documentation/user/instrument-notation.itely (Figured bass):
8428 demonstrate extenders, update seealso links.
8430 * scm/titling.scm (marked-up-headfoot): change tagline
8431 handling. tagline = ##f will blank the tagline as well.
8433 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8435 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8437 * lily/new-figured-bass-engraver.cc (struct
8438 New_figured_bass_engraver): add new_music_found_ member.
8440 * lily/lilypond-version.cc (Lilypond_version): deal with
8441 incorrectly formatted version strings.
8443 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8444 New_figured_bass_engraver by default.
8446 * lily/ttf.cc (print_trailer): only define glyph names when
8447 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8449 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8451 * lily/horizontal-bracket.cc (make_bracket): new function.
8453 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8454 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8455 BassFigureLine, BassFigureAlignment
8457 * lily/new-figured-bass-engraver.cc (process_music): new file.
8459 * lily/figured-bass-continuation.cc: new file.
8461 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8464 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8466 * scripts/lilypond-book.py: Bug fix, put the quote around the
8467 actual score for LaTeX documents.
8469 * scm/define-grobs.scm (all-grob-descriptions): Change
8470 collapse-height of the SystemStartBracket grob to 5.0,
8471 so the bracket disappears for single stave score lines (similarly
8472 to SystemStartBraces).
8474 * Documentation/user/advanced-notation.itely (Polymetric
8475 notation): Clarify the use of compressMusic.
8477 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8478 that the grace spacer note in other staves need the same duration
8479 and document the stroke-style property.
8481 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8483 * Documentation/user/global.itely (Vertical spacing): document
8484 alignment-extra-space and fixed-alignment-extra-space.
8486 * Documentation/topdocs/NEWS.tely (Top): add entry.
8488 * input/regression/alignment-vertical-spacing.ly: new file.
8490 * python/convertrules.py (conv): add rule.
8492 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8494 * lily/align-interface.cc (stretch_after_break): new
8495 function. Read fixed-alignment-extra-space property.
8496 (align_elements_to_extents): read alignment-extra-space property.
8498 * lily/lily-guile.cc (robust_scm2dir): new function.
8500 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8501 (annotate-space-left): new function. Annotate space left on page.
8502 (annotate-y-interval): new function.
8503 (paper-system-annotate-last): new function. Annotate bottom-space.
8505 * mf/feta-beugel.mf (y):
8507 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8509 * VERSION (PACKAGE_NAME): release 2.7.11
8511 * scm/lily-library.scm (interval-translate): new function
8512 (interval-center): new function.
8514 * scm/page-layout.scm (paper-system-annotate): new function. Add
8515 arrows for dimensions.
8517 * scm/stencil.scm (dimension-arrows): new function.
8519 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8521 * input/regression/page-spacing.ly: add annotatespacing
8523 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8524 (LY_DEFINE): new function ly:paper-system-set-property!
8526 * Documentation/user/global.itely (Paper size): explain how to add
8529 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8530 correspond to GS's definition.
8532 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8534 (print): only connect to next bracket if the next one is alive.
8535 (print): set padding to 0.0 if the bound is a breakable
8536 column. This makes tupletFullLength brackets reach up to the staff
8537 line if it doesn't connect to the next line.
8539 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8541 * lily/bar-number-engraver.cc: correct docs.
8543 * scm/output-lib.scm (first-bar-number-invisible): rename from
8544 default-bar-number-visibility
8546 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8548 * scm/define-music-properties.scm (all-music-properties): remove
8551 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8553 * po/fi.po: refresh.
8555 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8557 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8559 (disappear): bugfix.
8561 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8563 * lily/include/paper-system.hh (class Paper_system): remove
8564 staff_extents_ member.
8566 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8568 * lily/include/paper-system.hh (class Paper_system): remove
8569 number_ variable. Remove is_title_. Remove break_before_penalty_
8571 * lily/paper-book.cc (systems): use 'number property iso. number_
8574 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8575 remove ly:paper-system-number.
8577 * scm/lily-library.scm (paper-system-title?): new function.
8579 * lily/book.cc (process): bugfix: flip ?: cases.
8581 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8584 * ly/music-functions-init.ly: add outputProperty music function.
8586 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8588 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8590 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8592 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8594 * lily/paper-system.cc (internal_get_property): new function.
8596 * Documentation/user/global.itely (Vertical spacing): refer to
8599 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8602 * input/regression/page-spacing.ly: new file.
8604 * input/regression/page-top-space.ly: new file.
8606 * lily/spacing-spanner.cc: cmath -> math.h
8608 * lily/paper-system.cc (read_left_bound): new function. Read
8609 line-break-system-details from left bound to determine extents.
8611 * Documentation/user/programming-interface.itely (Using LilyPond
8612 syntax inside Scheme): change applyxxx -> applyXxx.
8614 * ly/music-functions-init.ly: add outputProperty music function.
8616 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8618 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8620 * python/convertrules.py (conv): rule
8622 * ly/music-functions-init.ly: applyxxx -> applyXxx
8624 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8627 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8629 * flower/include/real.hh: include <math.h> iso. <cmath>
8631 * flower/include/offset.hh: include real.hh
8633 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8635 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8636 fix example, now that 'interfaces is no longer directly available.
8638 * lily/book.cc (process): don't crash if paper == NULL.
8642 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8644 * scm/define-music-types.scm (music-descriptions): set length and
8645 start-callback for QuoteMusic
8647 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8649 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8650 arguments. Fixes compilation error with gcc 3.3.
8652 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8654 * VERSION: release 2.7.10
8656 * stepmake/stepmake/python-module-rules.make
8657 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8659 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8662 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8664 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8665 -Werror. Otherwise GCC barfs over various optimizations.
8667 * scm/define-grob-properties.scm (all-internal-grob-properties):
8668 add note-head property
8670 * Documentation/user/instrument-notation.itely (Laissez vibrer
8673 * input/regression/laissez-vibrer-ties.ly: new file.
8675 * lily/laissez-vibrer-engraver.cc: new file.
8677 * lily/include/tie-column-format.hh: new file.
8679 * lily/tie-column-format.cc: new file.
8681 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8683 * lily/laissez-vibrer-tie.cc: new file.
8685 * lily/include/laissez-vibrer-tie.hh: new file.
8687 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8689 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8691 * scm/define-grobs.scm (all-grob-descriptions): add
8692 LaissezVibrerTie, LaissezVibrerTieColumn
8694 * lily/tie-column.cc (set_tie_config_directions): new function
8695 (final_shape_adjustment): new function.
8696 (shift_small_ties): new function.
8698 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8700 * lily/include/tie.hh (struct Tie_details): add x_gap_
8701 (struct Tie_configuration): add head_position_
8703 * lily/tie-column.cc (set_chord_outline): new function.
8705 * mf/cmr.enc.in: remove file.
8707 2005-09-11 Graham Percival <gpermus@gmail.com>
8709 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8711 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8713 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8714 reduce aliasing effects.
8716 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8719 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8721 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8723 * flower/include/real.hh: std::fabs too.
8725 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8727 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8729 * lily, flower: Include C++ iso C headers. Import namespace std
8732 * lily/side-position-interface.cc:
8734 * lily/note-head.cc:
8735 * lily/include/includable-lexer.hh:
8736 * flower/include/string-data.icc: Remove using std::*.
8738 * lily, flower: Include C++ iso C headers. Import namespace std
8741 * lily/side-position-interface.cc:
8743 * lily/note-head.cc:
8744 * lily/include/includable-lexer.hh:
8745 * flower/include/string-data.icc: Remove using std::*.
8747 * Documentation/user/instrument-notation.itely (Entering lyrics):
8748 Multiple latin-1->utf-8 conversion fix.
8750 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8752 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8754 * lily/tie.cc (get_configuration): also avoid dots for non-space
8757 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8759 * Documentation/user/instrument-notation.itely: Bugfix.
8761 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8763 * tex/GNUmakefile: don't install texinfo.tex
8765 * tex/ : cleanup: remove unused files.
8767 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8769 * flower/include/real.hh: using std::{isnan,isinf}
8771 * VERSION (PATCH_LEVEL): release 2.7.9
8773 2005-09-05 Graham Percival <gpermus@gmail.com>
8775 * Documentation/user/ instrument-notation.itely,
8776 advanced-notation.itely: minor tweaks.
8778 * input/test/script-chart.ly: add item padding.
8780 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8782 * flower/offset.cc: use math.h iso. <cmath>
8784 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8787 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8788 (widen-left-stencil-edges): new function. Fix alignment problems
8789 with LaTeX includegraphics.
8791 * lily/text-interface.cc (interpret_markup): use abort().
8793 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8795 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8797 * lily/tie.cc (get_configuration): update bezier shape as we
8799 (get_configuration): don't move large ties if we're outside of the
8802 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8804 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8806 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8808 * .cvsignore: Add auto-generated configure files and then some.
8810 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8812 * scm/define-grobs.scm (DynamicLineSpanner): Add
8813 X-extent-callback. Fixes hairpin-slur collision.
8815 2005-08-31 Graham Percival <gpermus@gmail.com>
8817 * Documentation/user/advanced-notation.itely,
8818 basic-notation.itely: minor changes.
8820 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8822 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8823 \linebreak between each .eps file if \betweenLilyPondSystem is
8826 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8827 music): Document the \linebreak
8829 * Documentation/user/lilypond-book.itely,
8830 input/tutorial/lbook-latex-test.tex,
8831 Documentation/user/examples.itely: Remove \usepackage{graphics}
8833 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8835 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8837 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8840 * scripts/lilypond-book.py (PREAMBLE_LY): define
8841 inside-lilypond-book
8842 (modify_preamble): new function. Insert \RequirePackage{graphics}
8843 when no {graphics found in preamble.
8845 2005-08030 Graham Percival <gpermus@gmail.com>
8847 * Documentation/user/basic-notation.itely, global.itely,
8848 tutorial.itely: misc small changes.
8850 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8852 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8855 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8857 * lily/tie-column.cc (new_directions): put Tie down on center
8860 * lily/script-interface.cc (before_line_breaking): use
8861 Grob::programming_error
8863 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8865 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8868 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8870 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8872 2005-08-29 Werner Lemberg <wl@gnu.org>
8874 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8875 the `*.scale.pfa' files to avoid warnings.
8877 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8879 * lily/tempo-performer.cc (process_music): idem.
8881 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8883 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8885 * Documentation/user/advanced-notation.itely (Text markup): not a
8888 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8890 * lily/staff-performer.cc (initialize): add tempo/name to
8893 2005-08-26 Graham Percival <gpermus@gmail.com>
8895 * Documentation/user/advanced.itely: add text-only example.
8897 * Documentation/user/invoking.itely: add index entries for
8900 * Documentation/user/ tutorial.itely, basic-notation.itely:
8901 small fixes suggested by Steve D. Thanks!
8903 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8905 * input/regression/markup-bidi-pango.ly: new file.
8907 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8908 standard. Remove #ifdef. Remove memleak.
8909 (text_stencil): use text_dir to decide how to composite items.
8910 (text_stencil): determine uniform text direction for the entire
8913 * scripts/lilypond-book.py (output_name): remove
8914 latex_filter_cmd. Non-portable to non-Unix systems.
8915 (get_latex_textwidth): use File.write and os.unlink() instead.
8917 * THANKS: add Vicente & Trevor.
8919 * lily/grob.cc (discretionary_processing): look up origin for
8920 programming_error too.
8922 * input/regression/tie-broken.ly: new file.
8924 * lily/tie-column.cc (set_chord_outlines): set outline for line
8927 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8929 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8930 unscaled transform, just translate stencils.
8932 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8935 * scm/define-markup-commands.scm (wordwrap-string): use
8937 (wordwrap-stencils): idem.
8940 (wordwrap-stencils): translate last line to right for
8941 text-direction = LEFT.
8943 * scm/define-grob-properties.scm (all-user-grob-properties): add
8946 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8948 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8949 when copying a Lily_parser object.
8951 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8953 * scm/define-markup-commands.scm (null): add null markup.
8955 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8957 * lily/item.cc: Add documentation of center-invisible
8959 2005-08-24 Graham Percival <gpermus@gmail.com>
8961 * Documentation/user/advanced-notation.itely: add info about
8964 * Documentation/user/programming-interface.itely: fix example
8965 involving raised text.
8967 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8969 * lily/beam.cc (print): fix X start/end points of isolated
8972 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8974 * lily/multi-measure-rest.cc (set_text_rods): new function.
8976 * lily/vertical-align-engraver.cc (process_music): call
8977 Align_interface::set_axis(). This forces #'elements to be ordered,
8978 preventing random vertical reordering of staves.
8980 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8981 add avoid-slur property.
8983 * Documentation/user/basic-notation.itely (Measure repeats): add
8984 countPercentRepeats example.
8986 * Documentation/user/advanced-notation.itely (Other text markup
8987 issues): remove remark about normal-font. We have \normal-text
8989 * input/regression/tie-chord.ly: add note about remaining bugs.
8991 * lily/tie.cc (print): try Tie_column::set_directions () if
8992 control-points not yet defined.
8994 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8996 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8997 extent. This fixes braces falling out of the EPS bbox.
8999 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9002 2005-08-23 Graham Percival <gpermus@gmail.com>
9004 * {various} : change #up->#UP and #down->#DOWN.
9006 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9008 * Documentation/user/advanced-notation.itely: clarify
9009 what objects handles text on a multimeasure rest.
9011 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9013 * VERSION (PATCH_LEVEL): release 2.7.7
9015 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9017 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9019 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9021 * input/regression/*.ly: formatting clean-up. Default layout
9022 before music expression.
9024 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9025 romanze28-2 example.
9027 * scm/ps-to-png.scm: remove dir-re function.
9028 (make-ps-images): generate page names, instead of globbing them.
9029 This brings down LilyPond memory usage for make web by a factor
9032 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9033 don't use glob. With 3000 files, globbing
9034 Documentation/user/out-www/ can take too much time.
9036 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9038 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9040 * input/regression/tie-manual.ly: new file
9042 * input/regression/tie-chord.ly: update.
9044 * flower/include/interval.hh (struct Interval_t):
9046 * lily/tie.cc (distance): new function
9047 (height): new function.
9048 (init): new function
9049 (Tie_details): new struct.
9051 * lily/skyline.cc (skyline_height): new function.
9053 * lily/tie-column.cc (set_chord_outlines): new function.
9054 (new_directions): read tie-configuration
9056 * lily/skyline.cc: fix ASCII art.
9058 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9060 * python/convertrules.py (string_or_scheme): Fix spelling error
9062 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9064 * lily/tie-column.cc (set_directions): set directions only once.
9065 (add_configuration): new function.
9067 * lily/tie.cc (set_control_points): new function
9069 * lily/tie-column.cc (new_directions): new function.
9071 * ly/music-functions-init.ly: set 'pitch property
9072 iso. trill-pitch. This makes \relative work with \pitchedTrill
9074 * lily/tie.cc (get_configuration): new function. Don't generate
9075 control points, rather, generate configuration.
9076 remove head-pair property.
9078 * lily/include/tie.hh (struct Tie_configuration): new struct.
9080 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9082 * Documentation/topdocs/NEWS.tely: clarify.
9084 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9086 * lily/tie.cc: remove minimum-length
9088 * scm/define-grob-properties.scm (all-user-grob-properties):
9089 remove staffline-clearance, y-offset
9091 * input/regression/tie-dots.ly (Module): remove.
9093 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9094 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9096 * input/regression/tie-single.ly: new file.
9098 2005-08-21 Graham Percival <gpermus@gmail.com>
9100 * ly/bagpipe.ly: fix compile problem.
9102 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9104 * lily/midi-item.cc (name): new method.
9106 * lily/staff-performer.cc (acknowledge_audio_element): use
9107 signature of baseclass.
9109 * lily/engraver-group.cc (do_announces): move recursion call out
9112 * lily/drum-note-performer.cc (class Drum_note_performer): use
9113 process_music everywhere.
9115 * ly/performer-init.ly: add default children everywhere.
9117 * lily/paper-book.cc (output): call paper-book-write-midis
9118 directly: always write MIDI, even if no \layout {} block.
9120 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9122 * VERSION (PACKAGE_NAME): release 2.7.6
9124 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9125 about not being able to handle repeat.
9127 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9129 * Documentation/user/examples.itely (Piano templates):
9130 * lily/include/performer-group.hh: Remove last traces of
9131 Performer_group_performer. Fixes make web.
9133 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9135 * Documentation/user/examples.itely (Piano templates): change
9136 Engraver_group_engraver -> Engraver_group
9138 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9139 scm_stand_in_procs is not weak_any.
9141 * lily/volta-bracket.cc (print): don't use strcmp().
9143 * lily/volta-engraver.cc (process_music): use
9144 Text_interface::is_markup() for setting the 'text property of the
9147 * input/mutopia/claop.py (accents): update syntax to 2.6
9149 * scm/define-context-properties.scm
9150 (all-user-translation-properties): add countPercentRepeats.
9152 * Documentation/user/basic-notation.itely (Measure repeats): add
9153 isolated percent example.
9155 2005-08-18 Graham Percival <gpermus@gmail.com>
9157 * input/ {various}: change direction #1, #-1 to
9158 #up/#down or \fooUp, \fooDown.
9160 * Documentation/user/music-glossary.tely: #-1 to #down.
9162 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9163 to #up, #-1 to #down.
9165 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9167 * lily/include/engraver-group.hh: rename.
9169 * lily/include/performer-group.hh: rename.
9171 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9173 * input/test/script-abbreviations.ly: Removed some old LaTeX
9176 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9178 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9179 Remove functions. Remove if 1: constructs, reindent.
9181 * scripts/convert-ly.py (add_version): Add functions from
9184 * scm/script.scm (default-script-alist):
9185 s/priority/script-priority. Fixes script stacking. Backportme.
9186 (Fermata): Very low priority.
9188 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9190 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9192 * input/regression/slur-script.ly: remove padding tweaks. Add
9195 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9196 time sigs and related stuff.
9198 * scm/define-grob-properties.scm (all-user-grob-properties): add