1 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * *: The Joy of Merging.
5 * buildscripts/git-update-changelog.py:
6 sort commits, and use .git-commits-done file.
10 dist emacs patches too.
12 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
17 * lily/context-def.cc:
18 * lily/include/parse-scm.hh:
19 * lily/include/smobs.hh:
22 * lily/program-option.cc:
24 implement and use ASSERT_LIVE_IS_ALLOWED()
26 * ly/music-functions-init.ly:
28 set-part-combine fix for autochange.
30 * lily/include/lily-lexer.hh:
31 * lily/include/lily-parser.hh:
33 * lily/lily-parser-scheme.cc:
34 * lily/lily-parser.cc:
35 clear lexer scopes after parsing file. Plugs pseudo memory leak
37 * ly/declarations-init.ly:
38 * ly/music-functions-init.ly:
39 * scm/part-combiner.scm:
40 Remove set-part-combine-listener. This plugs a memory leak.
46 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
51 * lily/part-combine-iterator.cc:
52 don't allocate part combine events statically. Plugs small leak.
54 * lily/lily-parser-scheme.cc:
55 plug memleak in case of failed files.
57 * lily/include/source.hh:
62 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
64 * lily/include/program-option.hh:
65 * lily/program-option.cc:
66 get_program_option() function
69 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
71 * lily/include/translator.hh:
72 * lily/include/translator.icc:
76 * lily/figured-bass-engraver.cc:
77 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
79 * stepmake/stepmake/compile-vars.make:
80 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
82 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
88 trim warning messages.
93 * input/regression/utf-8.ly:
94 document utf-8 meaning of phrases.
96 * scm/define-markup-commands.scm:
97 make \caps markup default to smallCaps
101 use glyph indexing for glyph name .notdef
103 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
105 * input/regression/utf-8.ly: Fix doc to match order of language
108 2006-11-01 Joe Neeman <joeneeman@gmail.com>
110 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
111 page and line forces.
113 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
115 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
117 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
119 * Documentation/user/GNUmakefile:
120 don't use ImageMagick, use GS directly.
123 otf depends on otf-g?table. Fixes race condition in -j2 build.
124 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
130 remove .deb/.rpm downloading.
132 * buildscripts/git-update-changelog.py:
133 bugfixes for git-update-changelog.py
135 * Documentation/user/GNUmakefile:
138 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
140 * input/regression/tie-semi-single.ly:
141 use position/direction from single tie case too. This fixes
142 overrides and defaults for single laissez-vibrer and repeat ties.
144 * buildscripts/git-update-changelog.py:
145 only prepend header if one patch was successful.
147 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
149 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
150 stuff. Remove cygwin packaging stuff.
152 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
154 * python/convertrules.py (conv): Part 2 fixes vertical extent.
156 * input/test/vertical-extent.ly: Fix and elaborate on vertical
157 staff extent. (Thanks Mats)
159 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
161 * buildscripts/git-update-changelog.py (main): write .msg and cvs
164 * scm/define-grobs.scm:
165 separation-items have width
171 * Documentation/topdocs/NEWS.tely:
172 * lily/separating-group-spanner.cc:
173 * lily/slur-engraver.cc:
174 * lily/slur-scoring.cc:
175 * scm/define-grobs.scm:
176 * input/regression/slur-clef.ly:
177 add breakableSeparationItem to extra encompass for slurs. This
178 fixes slur/clef slur/key collisions etc. Should fix #49
180 * lily/include/slur-scoring.hh:
181 * lily/slur-scoring.cc:
182 Use X of separation item as slur start. Fixes #120
184 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
186 * buildscripts/git-update-changelog.py (changelog_body): don't
189 * lily/grob.cc: add avoid-slur
191 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
195 move server/emacsclient to elisp/
197 * buildscripts/git-update-changelog.py (Commit.note_del_file):
200 * elisp/server.el.patch:
203 * elisp/emacsclient.patch:
206 * buildscripts/git-update-changelog.py:
213 * buildscripts/git-update-changelog.py:
214 script to update ChangeLog with Git messages.
216 * lily/beam-engraver.cc:
217 * input/regression/rest-pitched-beam.ly:
218 don't set callback if staff-position set. Fixes #126.
220 * lily/bar-number-engraver.cc:
222 * lily/fingering-engraver.cc:
223 * lily/grob-property.cc:
225 * lily/include/grob.hh:
226 * lily/include/lily-guile-macros.hh:
227 * lily/mark-engraver.cc:
228 * lily/melody-engraver.cc:
229 * lily/script-column.cc:
230 * lily/tie-formatting-problem.cc:
232 internal_get_property_data() using ly_symbol2scm()
234 * stepmake/stepmake/generic-targets.make:
235 create .gitignore in outdir.
240 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
242 * input/test/vertical-extent.ly:
243 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
245 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
247 * stepmake/bin/add-html-footer.py (compose): remove setgcos
249 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
251 * GNUmakefile.in (install-help2man): install-help2man target.
253 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
255 * SConstruct (configure): Do not check for /bin/sh.
257 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
259 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
262 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
264 * input/regression/fret-boards.ly: new file.
266 * po/de.po: new po courtesy translation team.
268 * scripts/lilypond-book.py (get_option_parser): add newline to doc
271 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
273 * ly/gregorian-init.ly (neumeDemoLayout): update
274 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
276 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
277 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
279 2006-10-27 Erlend Aasland <erlenda@gmail.com>
281 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
282 Yet another build fix.
284 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
286 * SConstruct (lilypondprefix): use sorted() for list_sort()
289 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
291 * flower/SConscript: Unit test rules.
293 * flower/test-std.cc: Compile fix.
295 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
297 * python/midi.c (pymidi_parse_track): warning fixes.
299 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
300 include dot-column.hh
302 2006-10-26 Graham Percival <gpermus@gmail.com>
304 * Documentation/user/{basic-, global}: minor changes from mailist.
306 2006-10-26 Erlend Aasland <erlenda@gmail.com>
308 * scm/define-grobs.scm: trivial beautification
310 * lily/tie-performer.cc: no need to #include "pqueue.hh"
312 * lily/source-file.cc: put multibyte var inside #if clause
314 * scm/define-grob-interfaces.scm:
315 * scm/define-grob-properties.scm:
316 Build fix (string-fret-finger-combinations)
318 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
321 * Documentation/user/lilypond-book.itely: Build fix.
323 2006-10-26 Joe Neeman <joeneeman@gmail.com>
325 * lily/system.cc (get_paper_system):
326 * lily/paper-book.cc (systems):
327 move most of the backwards compatibility stuff into
330 * Documentation/topdocs/NEWS.tely: add 2 entries for the
333 * Documentation/user/page.itely: remove time-scaled-music
334 bug for the Page_turn_engraver
336 * lily/paper-book.cc (set_system_penalty): backwards
337 compatibility (breakbefore) for the old page breaker
339 2006-10-25 Graham Percival <gpermus@gmail.com>
341 * Diocumentation/user/instrument-notation.itely: added more
342 info about stanzas; thanks Geoff!
344 * Documentation/user/ {basic, advanced}: small fixes from
347 * THANKS: add some bug reporters.
349 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
351 * scm/define-context-properties.scm (all-user-translation-properties):
352 noteToFretFunction: Add.
354 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
355 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
357 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
359 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
362 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
363 Remove bashism in delete.
365 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
367 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
369 * scm/translation-functions.scm (determine-frets-mf): flatten let*
371 * scm/define-context-properties.scm
372 (all-user-translation-properties): add maximumFretStretch property.
374 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
376 * lily/source-file.cc (get_counts): use multibyte variable.
378 * scm/translation-functions.scm (determine-frets-mf): new
379 function: compute fret numbers.
381 * scm/output-lib.scm (string-frets->description) new function.
382 (fret-board::calc-stencil): new function
384 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
386 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
388 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
390 * lily/tab-note-heads-engraver.cc: cleanups.
392 * lily/fretboard-engraver.cc: new file
394 * ly/engraver-init.ly: add FretBoards context
396 2006-10-24 Joe Neeman <joeneeman@gmail.com>
398 * lily/grob.cc (pure_relative_y_coordinate)
399 (pure_height): use the new call_pure_function stuff
401 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
404 * lily/side-position-interface.cc (pure_y_aligned_side): add an
407 * lily/simple-closure.cc (ly_eval_simple_closure): make
408 simple-closure evaluatable from scheme
409 (evaluate_with_simple_closure): make simple-closures pure-
412 * lily/slur.cc (pure_outside_slur_callback): new function
414 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
415 fits in with previous changes that made the page forces much
418 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
419 and pure-Y-extent into this new function.
420 (pure-conversions-alist): add outside-slur-callback
422 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
424 * Documentation/user/advanced-notation.itely (Instrument names):
425 Remove obsolete bug workaround for instrument names on piano
428 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
430 * Documentation/user/lilypond-book.itely (Integrating DocBook and
431 music): patch by Bertalan Fodor for docbook.
433 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
434 of $(LILYPOND). Prevents lilypond run for .txt files.
436 * INSTALL.txt: gitness.
438 * .cvsignore: update to force gitness.
440 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
442 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
443 detect suicide in nested tuplets.
445 2006-10-23 Werner Lemberg <wl@gnu.org>
447 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
448 typo in argument to FT_Get_X11_Font_Format.
450 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
452 * stepmake/stepmake/po-vars.make: more gitness.
454 * flower/polynomial.cc (check_sol): no empty if bodies.
456 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
458 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
460 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
462 * Documentation/user/examples.itely (Transcription of mensural
463 music): Added more comments in .ly source. Suggest to remove
464 Forbid_line_break_engraver to allow line breaking at all bars.
466 * Documentation/user/instrument-notation.itely (Ancient
467 articulations): Updated @refbugs regarding episem.
469 * Documentation/user/instrument-notation.itely (Gregorian square
470 neumes ligatures): Added \augmentum dots. Updated @refbugs
471 regarding \augmentum.
473 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
475 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
478 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
481 * ly/gregorian-init.ly: Added \augmentum macro.
483 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
485 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
487 * lily/pango-font.cc (pango_item_string_stencil): use
488 FT_Get_X11_Font_Format()
490 2006-10-22 John Mandereau <john.mandereau@free.fr>
492 * po/fr.po: update translation.
494 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
496 * VERSION (PATCH_LEVEL): bump version
498 * input/regression/horizontal-bracket-break.ly: new file.
500 * scm/define-grobs.scm (all-grob-descriptions): calc
503 * lily/horizontal-bracket.cc (make_bracket): support
504 connect-to-neighbor. Fix #118
506 * VERSION: release 2.9.26-2
508 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
510 * VERSION (PACKAGE_NAME): release 2.9.26
512 * buildscripts/output-distance.py (test_basic_compare): add
514 (FileLink.multi_img_cell): new function, glob multi-page png
517 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
519 * po/lilypond.pot: update.
521 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
523 * Documentation/user/global.itely (File structure): remove
526 * lily/parser.yy (FIXME): remove ADDQUOTE
528 * Documentation/user/global.itely (Extracting fragments of
529 notation): new node, about clip systems.
531 * Documentation/user/lilypond-book.itely (Many quotes of a large
532 score): ref to clip systems.
534 * Documentation/user/instrument-notation.itely (Entering lyrics):
535 add note about lyric ties and required font.
537 * lily/open-type-font.cc (glyph_list): format errors.
539 * Documentation/user/programming-interface.itely (Scheme
540 procedures as properties): more doco on simple-closure and scheme
542 (Input variables and Scheme): use lilypond[verbatim], document
545 * Documentation/user/page.itely (Displaying spacing): use \book
546 explicitly, so arrows show .
547 (Line breaking): add note about Forbid_line_break_engraver
549 * Documentation/user/tweaks.itely (Common tweaks): also set length
550 to prevent tie squeezing.
551 (Default files): use @var{}
553 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
554 (Generating LilyPond files): add FOMUS.
556 2006-10-20 Joe Neeman <joeneeman@gmail.com>
558 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
559 Y-offset for TextScript and Script
561 * lily/text-engraver.cc (make_item):
562 * lily/script-engraver.cc (make_script_from_event):
563 remove call to Side_position_interface::set_axis since all scripts
564 now have this set by default
567 * lily/prob.cc: use variables
569 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
571 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
572 at typography, rather analyse stream event duration.
574 * Documentation/user/page.itely (Page formatting): set a6 paper
575 for system separator example.
577 * lily/arpeggio.cc (Module): idem.
579 * lily/accidental-placement.cc: add script-priority property.
581 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
583 * lily/ttf.cc (print_trailer): if all else fails: use
584 glyphIndexXXXX as glyph name. Fixes #117.
586 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
587 entry if cmap contains glyph.
588 (get_index_to_charcode_map): remove from Pango_font class, use
589 global filename -> font mapping.
590 (get_glyph_index_name): new function.
591 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
594 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
596 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
599 * scm/define-grob-properties.scm (all-user-grob-properties):
600 remove outdated doc. Fixes #116
602 * lily/completion-note-heads-engraver.cc (process_music): always
603 clone input events; otherwise we may overwrite input 'duration
604 property. Fixes #115.
606 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
609 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
612 * VERSION (PATCH_LEVEL): bump version.
614 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
616 * lily/engraver.cc (internal_make_grob): use variables.
618 * flower/string-convert.cc (dec2double): clean-up warnings.
620 * configure.in (CXXFLAGS): add -Werror.
622 * VERSION (PACKAGE_NAME): release 2.9.25
624 2006-10-18 Joe Neeman <joeneeman@gmail.com>
626 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
627 line even if we precede a forced break.
629 * lily/optimal-page-breaking.cc (try_page_spacing): square line
630 forces too. Make page-spacing weight default to 10 because the
631 changes to vertical springs decreased the page force/line force
632 proportions. Also, take the average of line force and page force
633 instead of just the sum.
635 * lily/constrained-breaking.cc (initialize): make the stiffness
636 of the vertical springs depend on the height of the system. This
637 prevents pages with only a few large systems from getting huge
640 * Documentation/user/page.itely (Page formatting): document the
641 change in default page-spacing-weight
643 * lily/include/constrained-breaking.hh: initialise bottom_padding_
645 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
647 * input/typography-demo.ly (melody): remove superfluous slur.
649 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
650 add piano-pedal-script-interface
652 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
654 * scripts/lilypond-book.py: DocBook support.
656 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
658 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
660 (stop_translation_timestep): set bound to currentMusicalColumn if
661 not set yet. Fixes #102
663 * lily/piano-pedal-bracket.cc: formatting.
665 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
667 * lily/piano-pedal-align-engraver.cc: new class
668 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
671 2006-10-18 Heikki Junes <hjunes@gmail.com>
673 * po/fi.po: Update Finnish translation (before the next release).
675 2006-10-17 Joe Neeman <joeneeman@gmail.com>
677 * lily/system.cc (get_paper_system): reinstate the backwards-
678 compatible page breaking for the old page breaker.
680 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
682 * lily/recording-group-engraver.cc: removed
684 * lily/context.cc, lily/translator-group.cc: Don't touch
685 Context::implementation_ if it's null
687 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
689 * scm/paper.scm: only use left-margin if defined.
691 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
693 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
695 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
696 strokeFingerOrientations
698 * lily/script-column.cc (row_before_line_breaking): also handle
699 accidentals and arpeggios in horizontal script stacking.
701 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
704 * input/regression/script-stack-horizontal.ly: trim.
706 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
708 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
711 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
712 'text if string argument.
714 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
716 * scm/define-context-properties.scm
717 (all-user-translation-properties): change to strokeFingerOrientations
719 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
721 * lily/parser.yy: remove debug output
723 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
725 * ly/paper-defaults.ly: set left/right margin.
727 * scm/paper.scm (set-paper-dimensions): use left-margin and
728 right-margin for computing linewidth.
730 * Documentation/topdocs/NEWS.tely (Top): idem.
732 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
735 * scm/define-markup-commands.scm (tied-lyric): increase negative
736 space: space syllables tighter.
738 * VERSION (PATCH_LEVEL): bump version.
740 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
743 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
745 * COPYING: further clarification
747 * VERSION: release 2.9.24
749 * input/regression/script-stack-horizontal.ly: add version.
751 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
753 * input/regression/lyric-tie.ly (texidoc): use different words.
755 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
757 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
759 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
760 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
762 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
764 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
766 * Doxyfile: remove file.
768 * scm/define-grob-interfaces.scm (string-finger-interface): add
769 string-finger-interface
771 * lily/general-scheme.cc (LY_DEFINE): move
772 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
774 * Documentation/topdocs/NEWS.tely (Top): add note for
775 string-finger feature.
777 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
780 * scm/output-lib.scm (string-finger::calc-text): read 'digit
783 * input/regression/script-stack-horizontal.ly: new file.
785 * ly/engraver-init.ly: add Script_row_engraver.
787 * lily/script-column.cc (order_grobs): refactor: separate axis
789 (row_before_line_breaking): new function.
791 * lily/script-row-engraver.cc (Script_row_engraver): new file.
793 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
795 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
797 * Documentation/user/instrument-notation.itely: Cleanup: Remove
798 annoying skip notes from mensural ligature example. Update
799 @refbugs for ligatures and mensural ligatures.
801 * lily/coherent-ligature-engraver.cc,
802 lily/include/coherent-ligature-engraver.hh,
803 lily/mensural-ligature-engraver.cc,
804 lily/vaticana-ligature-engraver.cc: Revise code for item
805 reparentizing. There should now be less programming_error
808 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
810 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
811 Maintenance bugfix: Don't create empty Stencil (), but empty box
812 instead. This fix should eliminate some programming_error
815 * ly/engraver-init.ly (MensuralStaff): Set default accidental
818 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
819 \layout block _before_ score.
821 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
823 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
825 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
827 2006-10-13 Erlend Aasland <erlenda@gmail.com>
829 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
831 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
833 * VERSION (PATCH_LEVEL): bump version.
835 * COPYING: clarify exception note.
837 * lily/main.cc: remove remark about "COPYING".
839 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
840 system-count starts at 0 for each clip-region. Change name to
841 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
842 layout block, per score.
844 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
846 * lily/input-smob.cc: add equal_p for Input
848 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
851 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
853 * lily/prob.cc: Add equal_p predicate for Prob
855 * lily/translator.cc: small cleanup
857 * scm/document-music.cc: use data from translator listener
858 registration to generate documentation for event classes
860 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
862 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
864 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
866 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
868 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
870 * Documentation/topdocs/INSTALL.texi: Thinko.
872 * .cvsignore: Update.
874 * lexer-gcc-3.1.sh: Remove.
876 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
877 Update anonymous cvs access. Remove comment about gcc 3.0.4.
879 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
881 * VERSION: release 2.9.23
883 * lily/paper-column-engraver.cc (stop_translation_timestep): also
886 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
888 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
890 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
892 * input/regression/clip-systems.ly (Notes): new file.
894 * scm/lily.scm (define-scheme-options): add clip-systems option.
896 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
898 (dump-stencil-as-EPS): move bbox calculation from previous
900 (output-framework): use -dclip-systems
902 * scm/lily-library.scm (filtered-map): new function
904 * scm/framework-ps.scm (clip-system-EPS): new function.
905 (clip-system-EPSes): new function.
907 * lily/paper-column.cc: add rhythmic-location to interface
909 * scm/define-grob-properties.scm (all-user-grob-properties): add
910 rhythmic-location property.
912 * scm/clip-region.scm: new file: rhythmic-location data type and
913 system-clipped-x-extent function.
915 * ly/init.ly: use (scm clip-region)
917 * lily/paper-column-engraver.cc (stop_translation_timestep): set
918 rhythmic-location for paper column grobs.
920 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
922 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
924 * ly/engraver-init.ly: Remove obsolete comment on
927 * Documentation/user/instrument-notation.itely: Tune Ancient
928 Articulations figure, such that the episem actually shows.
930 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
931 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
933 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
936 2006-10-12 Graham Percival <gpermus@gmail.com>
938 * Documentation/user/ {some}: minor edits that were lost somehow.
940 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
942 * VERSION (PACKAGE_NAME): bump version.
944 * input/regression/lyric-tie.ly (texidoc): new file.
946 * Documentation/topdocs/NEWS.tely (Top): add new feature.
948 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
950 * scm/define-markup-commands.scm (tied-lyric): new function: split
951 string along ~ and reattach with U+203F (tie character) and
954 * scm/output-lib.scm (lyric-text::calc-text): new function.
956 * lily/lyric-engraver.cc (process_music): don't set 'text.
958 * scm/output-lib.scm (string-finger::calc-text): new function
959 (lyric-text::print): new function.
961 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
962 generic for fingering & string number. Use for string-finger.
964 * scm/define-music-types.scm (music-descriptions): add
967 * lily/fingering-engraver.cc (listen_string_finger): new function
969 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
971 * scm/define-context-properties.scm
972 (all-user-translation-properties): add stringFingerOrientations
974 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
976 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
977 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
979 * lily/dots.cc: Added style property for dots.
981 * mf/parmesan-heads.mf: Fix typo in comment.
983 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
984 adding longa head to feta font and removing obsolete default
987 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
989 * scm/output-lib.scm (fingering::calc-text): use origin
990 event-property, not music-property.
992 * lily/lilypond.rc.in: spell my name correctly.
994 2006-10-10 Joe Neeman <joeneeman@gmail.com>
996 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
997 already have a non-empty extent. Fixes estimation for Hara-kiri
1000 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1002 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1005 * lily/ligature-engraver.cc: Remove unused #include.
1007 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1008 Bugfix: remove method check_for_prefix_loss(Item *) from global
1009 namespace to avoid namespace pollution.
1011 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1013 * VERSION: release 2.9.22
1015 * ly/generate-documentation.ly: update option name.
1017 * lily/dynamic-text-spanner.cc (print): revert fix.
1019 * scm/define-grob-interfaces.scm
1020 (trill-pitch-accidental-interface):
1021 add trill-pitch-accidental-interface
1023 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1024 dereference if it's really a duration.
1026 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1027 useBassFigureExtenders is not set.
1028 (listen_bass_figure): record as new event if
1029 useBassFigureExtenders not set. Fixes #103.
1031 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1032 instead: move circle. Fixes #107.
1034 * scm/define-grobs.scm (all-grob-descriptions): set
1035 allow-loose-spacing for PaperColumn and
1036 NonMusicalPaperColumn. Kludge for #110.
1038 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1040 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1041 allow-loose-spacing property.
1043 * scm/define-markup-commands.scm (postscript): gsave & grestore
1044 around embedded PS. Do setlinewidth too. Fixes #109.
1046 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1048 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1049 code. This patch fixes ligature brackets that were not at all
1052 2006-10-08 Graham Percival <gpermus@gmail.com>
1054 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1056 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1058 * scm/define-context-properties.scm: clarified docs (bug 91).
1060 * Documentation/user/basic-notation.itely: document volta brackets
1061 not aligning (bug 63).
1063 * Documentation/user/ global.itely invoking.itely: ignore or
1064 add warnings about texstr.
1066 2006-10-08 John Mandereau <john.mandereau@free.fr>
1068 * po/fr.po: update translation.
1070 * po/: update msgids.
1072 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1074 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1076 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1078 * Documentation/user/page.itely (Two-pass vertical spacing): add
1079 documentation for two-pass spacing technique.
1081 2006-10-06 Graham Percival <gpermus@gmail.com>
1083 * Documentation/user/convert-ly.txt: new file; new
1084 storage place for this file (moved from bugs/ CVS).
1086 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1088 * lily/note-head.cc: Fixed programming_error message.
1090 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1092 * scm/define-grobs.scm (pure-conversion): move pure-callback
1095 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1096 marcato, stopped, thumb.
1098 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1100 * lily/completion-note-heads-engraver.cc (process_music): don't
1101 skimp on memory usage.
1103 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1106 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1107 parenthesis item. This fixes premature Y-extent triggering. Fixes
1110 * VERSION (PATCH_LEVEL): bump version.
1112 2006-10-04 Graham Percival <gpermus@gmail.com>
1114 * Documentation/user/advanced-notation.itely: added
1115 info about instrument names for piano or other contexts,
1118 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1120 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1121 solfa_base_notewidth as unit for non-DO-notes too.
1123 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1125 * VERSION: release 2.9.21
1127 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1130 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1132 * python/lilylib.py (progress): Minor fix.
1134 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1136 * lily/note-name-engraver.cc: doc engraver.
1138 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1140 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1142 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1145 * lily/stem-engraver.cc (make_stem): don't set duration-log
1147 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1148 write snippet-names binary.
1150 * python/lilylib.py (system): use os.system for mingw32
1152 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1155 * scm/backend-library.scm: update email address.
1157 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1160 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1163 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1164 handle dot creation separately.
1166 * lily/tab-note-heads-engraver.cc (process_music): idem.
1168 * lily/drum-note-engraver.cc (process_music): idem.
1170 * lily/note-heads-engraver.cc (process_music): idem.
1172 * lily/rest-engraver.cc: don't set duration-log.
1174 * scm/output-lib.scm (string-number::calc-text): new function.
1175 (note-head::calc-duration-log): new function.
1177 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1179 * scm/output-lib.scm (fingering::calc-text): new function.
1181 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1183 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1184 and include-eps-font -> include-eps-fonts
1186 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1188 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1190 * lily/timing-translator.cc: list properties.
1191 (start_translation_timestep): update internalBarNumber too.
1193 * scm/define-context-properties.scm
1194 (all-user-translation-properties): add internalBarNumber.
1196 * input/regression/spacing-no-note.ly: new file.
1198 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1200 * lily/book.cc: #include cleanup.
1202 * lily/include/lily-guile-macros.hh: add assert to
1203 scm_or_str2symbol(SCM).
1205 * VERSION (PATCH_LEVEL): bump version.
1207 * lily/spacing-spanner.cc (musical_column_spacing): handle
1208 musical->nonmusical spacing case, where there is no spacing
1209 wish. Fixes issue #61.
1211 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1212 (pango_item_string_stencil): use logical rect horizontally (to
1213 preserve spaces), ink_rect vertically (for time signatures).
1215 * lily/font-metric.cc (word_stencil): new interface function
1217 * input/regression/utf-8-mixed-text.ly: new file.
1219 * lily/percent-repeat-engraver.cc (listen_percent): remove
1222 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1223 non-dynamic scripts. Fixes #30.
1225 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1227 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1229 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1230 SCM_UNDEFINED for non-existent data.
1232 * lily/side-position-interface.cc (general_side_position): allow
1233 optional current_offset argument for chaining, so combinations of side-position
1234 and outside slur callback don't add up. Fixes issue #92.
1236 * lily/pango-font.cc (pango_item_string_stencil): use
1237 logical_rect. This prevents spaces after words from disappearing,
1240 * VERSION: release 2.9.20
1242 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1244 * scm/define-grob-properties.scm (all-user-grob-properties):
1245 mention stencil as user settable.
1247 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1249 * Documentation/user/page.itely (Page formatting):
1250 document auto-first-page-number
1252 * lily/page-breaking.cc (find_chunks_and_breaks):
1253 * lily/paper-score.cc (calc_breaking): Follow changes to the
1254 Constrained_breaking interface
1256 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1257 here backwards, as an optimisation
1258 (initialize): new function; move most of the code in resize () here
1259 (combine_demerits): cache ragged_right_
1260 (Constrained_breaking): constructor now takes the Paper_score
1262 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1264 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1265 avoid parser lookahead for 0-ary functions.
1267 * lily/translator.cc: Extract event classes from
1268 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1270 2006-10-02 Heikki Junes <hjunes@gmail.com>
1272 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1275 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1277 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1278 function. Call the page breaking function selected in the
1279 `page-breaking' \paper variable, then the post processing function
1280 chosen using the `page-post-process' \paper variable.
1281 (line-height): new function. Return the height of a system.
1282 (line-minimum-position-on-page): new function. Return the position
1283 of a system on page (using the previous line position), only
1284 considering between system padding.
1285 (stretchable-line?): new function. Says whether a line can be
1286 stretched (ie. is not a title nor a single staff system).
1287 (page-maximum-space-left): new function. Computes space left on a
1288 page, when all systems are separated by their padding.
1290 * lily/page-breaking.cc (breaking::make_pages): Move page post
1291 processing function call to page breaking wrapper (common to all
1294 * lily/paper-book.cc (book::pages): call the page breaking
1295 wrapper, instead of the page breaker directly
1297 * ly/paper-defaults.ly: Add \paper variables for page breaking
1298 wrapper and page post processing function. Make
1299 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1300 `system-maximum-stretch-procedure' variable for holding a function
1301 computing the maximum stretch a system allows.
1303 * scm/layout-page-dump.scm (write-page-breaks): computes the
1304 stretch to apply to systems on a page to minimize left
1305 space. Dump this stretch length.
1307 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1308 the system-stretch property of the tweak data to stretch the
1310 (includePageLayoutFile): Void function which includes the
1311 generated page-layout file if it exists and if the page layout
1312 dumping is not asked.
1313 (scoreTweak): if the score tweak named by the argument exists,
1316 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1318 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1319 handle correctly the case where there are multiple \noPageBreaks
1322 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1324 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1326 * abc2ly.py fix so that entering " -- " will translate to a -- in
1327 the lilypond instead of a " - - "
1329 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1331 * lily/align-interface.cc: fix typo
1333 * lily/dynamic-text-spanner.cc (print): Add a special case for
1334 trill spanner right sides.
1336 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1338 * lily/align-interface.cc (get_extents_aligned_translates): add
1339 support for padding variable.
1341 * lily/break-align-interface.cc (self_align_callback): oops: use
1342 loop variable in guard.
1344 * input/regression/repeat-percent-grace.ly: new file.
1346 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1347 remember first currentCommandColumn of a grace run. Fixes issue 70.
1349 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1350 move class definition to CC file.
1352 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1354 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1355 measure-long repeats.
1357 * flower/include/international.hh: include stdarg.h
1359 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1361 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1362 put_systems_on_pages to return an empty result, we need to assign
1363 demerits properly in that case.
1364 (put_systems_on_pages): Make the number of pages depend on the
1365 evenness of page_number. Add auto-first-page-number.
1366 (calc_subproblem): ensure that the page-number is even for the
1367 left-hand page. Warn if the first page-turn doesn't fit onto the
1368 first (right-hand) page.
1370 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1371 (min_page_count): make this publicly accessible
1372 (min_page_count): fix a bug when there are forced page breaks that
1373 was introduced when I made this loop run backwards
1374 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1375 replace space_systems_on_min_pages with these two. The logic in
1376 space_systems_on_min_pages was getting too convoluted and is better
1377 contained in page-turn-page-breaking.
1379 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1381 (breakable_column): typo
1383 * lily/source-file.cc (get_line): fix off-by-one error
1384 and clean up some of the logic
1386 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1388 * lily/page-breaking.cc (make_pages): honour the first-page-number
1391 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1393 * VERSION (PACKAGE_NAME): bump version.
1395 2006-09-26 Pal Benko <benko.pal@gmail.com>
1397 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1398 (the latter is the same as petrucci-f which is kept for compatibility)
1400 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1402 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1404 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1406 * lily/global-context.cc (run_iterator_on_me): break out of loop
1407 if moment doesn't increase.
1409 * scm/define-grob-properties.scm (all-user-grob-properties): add
1412 * lily/accidental.cc (after_line_breaking): read forced property.
1414 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1417 * input/regression/accidental-forced-tie.ly: new file.
1419 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1421 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1423 * lily/figured-bass-engraver.cc: only listen to rest events if
1424 ignoreFiguredBassRest is not set.
1426 * scm/define-context-properties.scm
1427 (all-user-translation-properties): add ignoreFiguredBassRest property
1429 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1431 * lily/paper-book.cc (get_system_specs):
1432 (set_system_penalty): fix breakbefore.
1433 We used to set a penalty on the system after the break, now we
1434 set a permission on the system before the break
1436 * lily/grob-property.cc: add scm debugging hooks into
1437 property modification
1439 * lily/context-property.cc:
1441 rename make_foo_from_properties to internal_make_foo and
1442 move it from context-property.cc to a member function of
1445 * lily/include/lily-guile-macros.hh:
1446 overload ly_symbol2scm macro so that there is no more need
1449 * lily/volta-repeat-iterator.cc:
1450 * lily/tweak-engraver.cc:
1451 * lily/tuplet-bracket.cc:
1452 * lily/span-bar-engraver.cc:
1453 * lily/script-engraver.cc:
1454 * lily/prob-scheme.cc:
1455 * lily/pointer-group-interface.cc:
1457 * lily/grob-scheme.cc:
1458 * lily/grob-property.cc:
1460 * lily/context-property.cc:
1461 * lily/break-substitution.cc:
1462 * lily/break-align-engraver.cc:
1463 * lily/axis-group-interface.cc:
1464 * lily/align-interface.cc:
1465 remove calls to internal_FOO
1467 * lily/system-start-delimiter-engraver.cc:
1468 * lily/parenthesis-engraver.cc:
1469 * lily/accidental-engraver.cc:
1470 remove calls to make_foo_from_properties
1472 2006-09-23 Graham Percival <gpermus@gmail.com>
1474 * Documentation/user/programming-iterfaces.itely: fix
1475 def-music-function -> define-music... leftover.
1477 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1479 * lily/page-spacing.cc (min_page_count): by running the loop
1480 backwards, we can calculate ragged_last properly.
1482 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1484 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1485 printfirst-page-number -> print-first-page-number
1487 * python/convertrules.py: corresponding rule.
1489 * Documentation/user/page.itely (Page formatting): Document the
1490 default values of all page layout parameters.
1492 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1494 * lily/lexer.ll: remove limitation on music function arity. New
1495 mode extratoken, which inserts extra EXPECT_* tokens after
1496 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1498 * lily/parser.yy: Change grammar for music function accordingly.
1500 * lily/include/lily-parser.hh: New method get_state, new member
1501 hidden_state. Works around a problem when parser fetches
1502 MUSIC_FUNCTION token but not the following EXPECT_* token.
1504 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1507 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1508 references to Music; use ASSIGN_EVENT_ONCE everywhere
1510 * lily/grob-info.cc: junk *music_cause
1512 * lily/music.cc: copy eventified articulations to stream event
1514 * lily/part-combine-iterator.cc: Cleanup using enums
1516 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1519 * lily/include/engraver.hh: Junk music.hh include
1521 * lily/stream-event.cc: Changed constructors
1523 2006-09-21 Graham Percival <gpermus@gmail.com>
1525 * Documentation/user/tweaks.itely (Fitting music onto fewer
1526 pages): change settings to avoid warning messages.
1528 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1530 * Documentation/user/tweaks.itely (Fitting music onto fewer
1531 pages): Add between-system-space setting.
1533 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1535 * lily/accidental-placement.cc (calc_positioning_done): don't
1536 trigger Y-extent calculation too early. Use pure_height instead.
1538 * lily/scale.cc (LY_DEFINE): new file.
1540 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1542 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1543 that happen at the start of a score: having a zero-length
1544 chunk was messing up min_system_count calculations.
1546 * lily/source-file.cc (get_line): lower_bound, not
1547 binary_search. Fixes problem where point-and-click would
1548 always point to the first line.
1550 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1552 * lily/accidental-placement.cc (calc_positioning_done): also put
1553 stems into accidental support.
1555 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1558 * scm/script.scm (default-script-alist): avoid-slur and
1559 slur-padding for portato script.
1561 * lily/stem-tremolo.cc (translated_stencil): new function.
1562 (height): use new function. Fixes tremolos on whole notes.
1564 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1567 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1569 * scripts/abc2ly.py (try_parse_comment): idem.
1571 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1572 bar_string iso. string.find()
1576 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1579 2006-09-18 Graham Percival <gpermus@gmail.com>
1581 * Documentation/user/basic-notation.itely: add bug
1582 warning about ties and octavation/clef.
1584 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1586 * VERSION (PACKAGE_NAME): release 2.9.18
1588 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1590 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1591 figure out midi file names right here.
1593 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1595 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1597 * scm/backend-library.scm: option naming: gs-font-load*s*
1599 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1602 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1604 * scm/define-music-types.scm (music-descriptions): remove
1605 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1606 Music::to_event doesn't complain.
1608 * lily/accidental-placement.cc (ape_compare):
1609 * lily/semi-tie.cc (compare):
1610 * lily/note-column.cc (shift_compare): replace by XXX_less
1612 * lily/tie-formatting-problem.cc (set_chord_outline):
1613 * lily/tie-column.cc (calc_positioning_done):
1614 * lily/system.cc (post_processing)
1616 * lily/stem.cc (note_head_positions)
1617 (calc_positioning_done):
1618 * lily/spanner.cc (do_break_processing)
1619 (find_broken_piece):
1620 * lily/span-bar.cc (print):
1621 * lily/semi-tie-column.cc (calc_positioning_done):
1622 * lily/rest-collision.cc (calc_positioning_done):
1623 * lily/program-option.cc (get_help_string):
1624 * lily/note-collision.cc (get_clash_groups):
1625 * lily/new-fingering-engraver.cc (position_scripts):
1626 * lily/keyword.cc (Keyword_table):
1627 * lily/hara-kiri-group-spanner.cc (request_suicide):
1628 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1629 * lily/accidental-placement.cc (calc_positioning_done):
1631 * lily/beam.cc (get_beam_segments):
1632 * lily/grob-array.cc (remove_duplicates):
1635 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1636 ragged-last-bottom = ##f (test the new page breaker)
1638 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1640 * scm/define-context-properties.scm
1641 (all-internal-translation-properties): remove properties that
1642 were used to communicate page-turn stuff to the paper-column
1645 * lily/lily-guile.cc (robust_scm2string): new function
1647 * lily/paper-column-engraver.cc: Clean up page turn stuff
1649 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1650 instead of cluttering up paper-column-engraver.cc
1652 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1654 * scm/layout-page-dump.scm (scm): export utility function names,
1655 to allow user writing cutsom dumping functions.
1657 * scm/layout-page-layout.scm: export utility function names to
1658 enable custom page breaking function writing. Tabify.
1659 (line-next-space): use ?-suffix only for predicates
1660 (page-maximum-space-to-fill): new function. Return the space
1661 between first and bottom system of a page, to give to
1663 (space-systems): use a space-to-fill argument (for instance as
1664 computed by page-maximum-space-to-fill) instead of computing
1665 internaly this space with the page height. That way, the caller
1666 can adjust the space to use.
1667 (make-page-from-systems, walk-paths): compute space to fill before
1668 calling space-systems.
1670 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1672 * scm/script.scm (default-script-alist): set paddings for every
1673 type here, increase for portato mark.
1675 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1678 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1680 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1681 use spanner::set-spacing-rods
1683 * lily/note-column.cc: reformat.
1685 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1686 step positioning for note/rest combinations.
1688 * input/regression/rest-note-collision.ly: new file.
1690 * scm/define-grobs.scm (all-grob-descriptions): add
1693 * flower/include/std-vector.hh: switch off again.
1695 * VERSION (PATCH_LEVEL): bump to 2.9.18
1697 * flower/include/std-string.hh: idem.
1699 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1701 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1703 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1706 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1708 * Documentation/user/page.itely: update page breaking documentation
1710 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1712 * lily/note-collision.cc (calc_positioning_done): only access
1713 first head if available.
1715 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1717 * scm/framework-ps.scm (output-preview-framework): use new name.
1719 * lily/program-option.cc (internal_set_option): use new names.
1721 * Documentation/user/SConscript (lilypond_book_flags): update -d
1724 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1725 output into other programs): new variable names.
1727 * scm/lily.scm (define-scheme-options): uniformize var names.
1729 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1730 tuplets_ is non-empty before popping.
1732 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1734 * lily/spanner.cc (find_broken_piece):
1735 * lily/spacing-spanner.cc (get_columns):
1736 * lily/source-file.cc (get_line):
1737 * lily/simple-spacer.cc (get_column_description):
1738 * lily/keyword.cc (lookup):
1739 use the new binary search.
1741 * flower/include/std-vector.hh: replace binary_search with
1742 a more STL-like version
1744 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1746 * lily/tie-performer.cc: remove unused last_event_ property.
1747 (class Tie_performer): add now_tied_heads_ property for
1748 partially-tied heads.
1749 (acknowledge_audio_element): when adding an Audio_note, put the
1750 note in now_tied_heads_ if the audio note is partially tied.
1751 (stop_translation_timestep): always include entries in
1752 now_tied_heads_ in heads_to_tie_.
1754 * lily/drum-note-performer.cc (process_music): look for tie-events
1755 in the articulations; pass to Audio_note constructor.
1757 * lily/note-performer.cc (process_music): look for tie-events in
1758 the articulations; pass to Audio_note constructor.
1760 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1763 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1764 include initializer in constructor.
1766 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1768 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1769 unless they are breakable. This fixes discrepancies between the forces
1770 calculated here and the forces calculated in get_line_configuration.
1772 * lily/grob.cc (pure_relative_y_coordinate): fix some
1773 mis-estimation that was happening with piano staves.
1775 * lily/constrained-breaking.cc (resize): don't choke if we get a
1776 measure that won't fit on a line.
1777 (combine_demerits): don't consider uniformity when ragged
1779 * lily/page-spacing.cc (solve): why the f* were there two of these?
1780 (calc_subproblem): properly handle the case where a system is taller
1783 * lily/system.cc (get_paper_system): ensure that all the permissions
1784 and penalties are passed to the paper systems.
1786 * lily/page-breaking.cc (create_system_list): support system-count.
1788 * scm/define-grobs.scm (pure-print-callbacks): add
1789 ly:script-interface::print
1791 * lily/page-spacing.cc (min_page_count): fix calculation of min
1792 pages if we are ragged and there are non-zero springs.
1794 * scm/layout-page-layout.scm: if the pure-height estimates are under
1795 the real height, allow space-systems to ignore padding if it is
1796 needed in order to fit the systems on one page
1798 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1800 (solve): fix performance problem. Make sure we always get at least
1803 * lily/page-breaking.cc (make_pages): include write-page-breaks
1806 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1808 * scm/define-grobs.scm: add the new slur-callback
1809 fix pure-relevant to not exclude grobs whose extent is already
1812 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1815 * lily/slur.cc (pure_height): new callback to estimate the height
1818 2006-09-02 Graham Percival <gpermus@gmail.com>
1820 * Documentation/user/invoking.itely: small update on
1821 MacOS X notes; thanks Trevor!
1823 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1825 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1827 * lily/lexer.ll: accept EOF in all states.
1829 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1831 * lily/source-file.cc (Source_file): always 0-terminate character
1832 array, to prevent Flex from barfing.
1834 * lily/global-context.cc (get_output): robustness: don't crash if
1835 no Score context found.
1837 * lily/include/book.hh (class Book): idem.
1839 * lily/include/context-def.hh (struct Context_def): idem.
1841 * lily/include/score.hh (class Score): don't derive from Input.
1843 * lily/book.cc (Book): add a copy ctor.
1845 * buildscripts/output-distance.py (FileLink.calc_distance): count
1846 orphans in distance too.
1848 * python/midi.c (midi_parse_track): robustness: don't read past
1851 * ly/performer-init.ly: add Control_track_performer, move
1852 Tempo_performer and Time_signature_performer to Score.
1854 * lily/score-performer.cc (acknowledge_audio_elements): override
1855 from base class: add to audio-columns
1857 * lily/control-track-performer.cc (add_text): new file: generate
1860 * lily/performance.cc: move output_header_track to
1861 Control_track_performer ()
1863 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1865 * lily/include/midi-item.hh (class Midi_channel_item): insert
1866 class into hierarchy, for items that can have a channel setting. Dehungarify.
1868 * lily/include/performer.hh (class Performer): remove
1869 play_element(); move functionality into announce/acknowledge.
1871 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1873 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1874 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1876 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1878 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1881 * lily/all-font-metrics.cc: remove TFM support.
1883 * lily/include/tfm.hh: remove TFM support, TFM reader.
1885 * lily/include/binary-source-file.hh: remove Binary_source_file.
1887 2006-08-27 Graham Percival <gpermus@gmail.com>
1889 * Documentation/topdocs/NEWS.itely: add @c marker for
1890 stuff I've processed.
1892 * Documentation/user/ various: info from NEWS.
1894 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1896 * lily/paper-column-engraver.cc (finalize): Oops, this change
1897 should have gone in on 2006-08-23
1899 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1901 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1902 quotes to quote arguments. Fixes Windows problem.
1904 * python/lilylib.py (progress): idem
1906 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1908 * scripts/musicxml2ly.py: fix for importing
1909 minor key signatures from MusicXML. (Phillip Kirlin)
1911 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1913 * python/musicxml.py:
1914 (Attributes.get_key_signature): now correctly retrieves mode from
1917 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1919 * lily/parser.yy (output_def_body): take ownership of identifier
1922 * Documentation/user/advanced-notation.itely (Metronome marks):
1923 update use of \tempo in \midi.
1925 * VERSION: release 2.9.16
1927 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1929 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1932 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1934 * input/regression/tie-chord-partial.ly: clarify example.
1936 * scm/define-music-properties.scm (all-music-properties): remove
1939 * ly/music-functions-init.ly: remove \untied.
1941 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1942 stream events and music events.
1943 (stop_translation_timestep): search acknowledged heads for
1946 * input/regression/tie-chord-partial.ly: new file.
1948 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1949 for \char markup command.
1951 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1953 * scm/define-music-types.scm (music-descriptions): consistency:
1954 Use solo-{one,two}-event iso. solo-[12]-event.
1956 * lily/part-combine-engraver.cc (process_music):
1957 Use solo-{one,two}-event iso. solo-[12]-event.
1959 * ly/declarations-init.ly (partCombineListener): add Timing as
1962 * flower/std-string.cc (string_copy): use copy ()
1964 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1966 2006-08-24 Graham Percival <gpermus@gmail.com>
1968 * Documentation/user/changing-defaults.itely, global.itely,
1969 lilypond-book.itely, page.itely: minor changes from mailist.
1971 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1973 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1976 * scm/define-context-properties.scm
1977 (translator-property-description): robustness: detect type errors
1978 in property definitions.
1980 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1981 after getting it from SCM.
1983 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1986 * lily/include/performer.hh (class Performer): strip get_tempo()
1989 * lily/midi-def.cc: strip file.
1991 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1993 * lily/include/context-def.hh (struct Context_def): use
1994 VIRTUAL_COPY_CONSTRUCTOR().
1996 * lily/source-file.cc: smobification.
1998 * lily/include/source-file.hh (class Source_file): smobify
1999 Source_file. Trim redundant members.
2001 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2002 clones after creation. This plugs a huge memory leak.
2004 * python/convertrules.py (FatalConversionError.sub_tempo):
2005 complete rule for \midi{ \tempo }
2007 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2009 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2011 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2013 * input/regression/optimal-page-breaking-hstretch.ly: test for
2014 ragged-last-bottom also
2016 * lily/paper-column-engraver.cc (finalize): make the end of a score
2017 breakable by default. This is to balance out a change in behaviour
2018 of the page-turn-breaker which no longer makes the end of a score
2021 * lily/paper-book.cc (pages): set the systems_ once the pages are
2024 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2025 Page_breaking interface.
2027 * lily/page-breaking.cc (class Page_breaking): make the interface
2028 more consistent and provide abstractions for dealing with
2031 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2032 algorithm. Use the new interface to Page_breaking.
2034 * lily/page-spacing.cc: better support for ragged-bottom and
2037 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2039 * python/convertrules.py (conv): warning on \tempo{}
2041 * ly/performer-init.ly: set tempoWholesPerMinute.
2043 * ly/midi-init.ly: remove \midi
2045 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2048 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2049 tempoUnitDuration for determining what to print.
2051 * lily/lyric-extender.cc: typo.
2053 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2055 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2058 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2060 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2061 eps-pad-boxes is set.
2063 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2065 * THANKS: update sponsors.
2067 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2069 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2071 * input/regression/tie-chord-untied.ly: new file.
2073 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2075 * scm/define-music-properties.scm (all-music-properties): add
2078 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2080 (headertext_nopics): sanitize no-examples text.
2082 * scm/page.scm (make-page-stencil): don't rely on extents of
2083 page-stencil. This fixes spurious space around .EPS files produced
2084 with the EPS backend.
2086 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2088 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2090 * lily/hara-kiri-engraver.cc (process_music): remember
2091 keepAliveInterfaces after processing \set
2093 * lily/lyric-extender.cc (print): support left/right-padding for
2096 * scm/documentation-generate.scm (string-append): revert lilypond/
2099 2006-08-20 Graham Percival <gpermus@gmail.com>
2101 * Documentation/user/lilypond.tely: clarification to
2102 license presentation (not to actual license).
2104 * Documentation/user/basic-notation.itely,
2105 instrument-notation.itely: minor changes.
2107 * input/ {regression, test}/+.ly: clarification to
2108 text (you can click on examples). Thanks, Mats!
2110 * input/manual/bar-lines.ly: adds ||: repeats.
2112 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2114 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2116 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2118 * Documentation/user/lilypond.tely: strip lilypond/ from info
2119 links, rename to category LilyPond
2121 * lily/pango-font.cc (description_string): new function.
2123 * VERSION: release 2.9.15
2125 * lily/spacing-engraver.cc (stop_translation_timestep): use
2126 Dscho's fix for spacing spanner.
2128 * scm/define-music-types.scm (music-descriptions): use
2129 apply-output-event for ApplyOutputEvent
2131 * lily/output-property-engraver.cc (listen_apply_output): rename
2132 from listen_layout_instruction.
2134 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2137 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2139 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2140 commandline args with contains, split by \n.
2142 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2143 write snippet-names file, call with -dread-file-list. Fixes
2144 command limitations on 64-bit systems.
2146 * input/regression/stencil-color-rotation.ly: new file.
2148 * lily/include/translator.hh (struct Acknowledge_information):
2149 revert: don't use Protected_scm in global objects, as GUILE can't
2150 handle gc_unprotect from automated destructors on MacOS X.
2152 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2153 color, not the original stencil. Fixes combinations of
2154 color/transparency/rotation.
2156 * scripts/lilypond-book.py (main): add --formats=eps for
2159 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2160 crash if spacing_ is nonexistent.
2162 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2164 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2165 \catcode`\@=12 in the LaTeX output.
2167 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2169 * scm/define-music-types.scm (music-descriptions):
2170 use sustain-event iso. sustain-pedal-event.
2172 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2174 * scripts/convert-ly.py: honour the -n command-line switch
2176 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2178 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2179 break specification.
2181 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2183 * Documentation/user: convert-ly the user manual
2185 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2187 * stepmake/aclocal.m4: version check patch (thanks MWD)
2189 * ly/music-functions-init.ly: robustness. Don't crash if
2190 currentBarNumber is not a number.
2192 * VERSION (PATCH_LEVEL): bump.
2194 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2196 * stepmake/aclocal.m4: better version check; handle fooX.Y
2199 * ly/performer-init.ly: instrument name fixup.
2201 * input/manual/chord-names-jazz.ly (banterProperties):
2202 instrumentName update
2204 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2206 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2208 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2209 function. Use hash tables to check membership.
2211 * lily/general-scheme.cc (LY_DEFINE): new function.
2213 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2215 * lily/include/translator.hh (struct Acknowledge_information): add
2218 * ly/music-functions-init.ly: change name to BreathingEvent
2220 * input/regression/*.ly: apply it.
2222 * python/convertrules.py (conv): better instrumentName conversion
2225 * scm/define-music-types.scm (music-descriptions): add
2226 line-break-event to LineBreakEvent music
2228 * lily/music.cc (to_event): don't crash if music type not set.
2230 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2233 * lily/spacing-engraver.cc (stop_translation_timestep): set
2234 spacing for proportional notation too.
2236 * scm/translation-functions.scm (format-bass-figure): inspect
2239 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2241 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2243 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2245 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2247 * scm/layout-page-layout.scm (make-page-from-systems): new function
2248 (optimal-page-breaks): use the new page-breaking calling convention
2250 * scm/define-context-properties.scm (all-user-translation-properties):
2253 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2254 revokePageTurns functionality. If there is a special barline within
2255 the breakable region, break there instead of at the end of the region.
2257 * lily/paper-book.cc (pages): use the new page-breaking calling
2260 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2262 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2264 * scripts/lilypond-book.py: insert \sourcefileline command in
2265 output, so lilypond error messages refer to the spot in the
2266 original .lytex / .itely sourcefile.
2268 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2270 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2271 space to next column for distance to fixed col.
2273 * VERSION (PACKAGE_NAME): release 2.9.14
2275 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2278 * lily/accidental-engraver.cc (process_acknowledged): don't create
2279 accidental for trill span event. This fixes spurious accidentals
2282 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2284 * scm/define-grob-properties.scm (all-user-grob-properties):
2285 Clarify documentation of side-axis and direction. Thanks to Paul
2286 for the inspiration.
2288 * lily/bar-line.cc: Add documentation for "||:" also in the
2289 interface documentation.
2291 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2293 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2295 * lily/paper-column.cc (set_system): new function.
2297 * lily/spacing-engraver.cc (stop_translation_timestep): store
2298 SpacingSpanner refs in Paper_column.
2300 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2301 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2303 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2305 * lily/beam-engraver.cc (listen_beam): add method for
2306 Grace_beam_engraver too.
2308 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2310 * python/convertrules.py: Fix indentation bug that broke
2311 conversion of files older than 1.3.117.
2312 Fix escape error in the description for 2.9.6.
2314 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2316 * lily/*-engraver.cc: convert all try_music functions to listen_*
2319 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2320 enums to represent pedal types, and calculate more data statically.
2322 * scm/part-combiner.scm (recording-group-emulate): create a
2323 softcoded substitute for recording-group-engraver.cc.
2325 * lily/music.cc: make a common transpose function for events and
2328 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2329 ManualMelismaEvent, and obsoletes Melisma_translator.
2331 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2333 * input/test/instrument-name-align.ly: update version.
2335 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2337 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2338 Doc the --pdf flag to lilypond-book.
2340 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2342 * Documentation/topdocs/NEWS.tely (Top): add description.
2344 * input/regression/tuplet-full-length-note.ly: add file.
2346 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2347 always store axis group.
2349 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2351 * input/regression/instrument-switch.ly: new file.
2353 * lily/instrument-switch-engraver.cc (process_music): new file.
2355 * ly/engraver-init.ly: add Instrument_switch_engraver
2357 * ly/music-functions-init.ly: \instrumentSwitch
2359 * scm/define-context-properties.scm
2360 (all-user-translation-properties): add instrumentCueName
2362 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2364 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2366 * ly/music-functions-init.ly: music function \transposition.
2368 * lily/parser.yy (command_element): softcode \transposition.
2370 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2371 (process_music): oops.
2373 * lily/instrument-name-engraver.cc (start_spanner): new
2374 function. Create spanner when property changes.
2375 (stop_spanner): new function.
2377 * python/convertrules.py (conv): add rule.
2379 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2380 shortInstrumentName iso. instr.
2382 * scm/output-ps.scm (dashed-line): add phase argument to
2385 * lily/bar-line.cc (dashed_bar_line): new function.
2386 (compound_barline): support \bar "dashed".
2388 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2389 --output=DIR to DIR/BASE if it is a dir.
2391 * flower/file-name.cc (file_part): new function
2392 (dir_part): new function
2394 * lily/lily-parser-scheme.cc (LY_DEFINE):
2396 * DEDICATION: update
2398 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2400 * lily/instrument-name-engraver.cc: formatting.
2402 * python/convertrules.py (conv): bugfix for \epsfile.
2404 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2408 * lily/gourlay-breaking.cc: Oops, these should have been included
2411 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2413 * scripts/*.py (program_name): cleanup relocation snippets.
2415 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2417 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2419 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2420 page-breakable by default
2422 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2423 correctly calculated for a single-system page
2425 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2426 bigger than the second number
2428 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2429 acknowledge that we aren't satisfying constraints)
2431 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2434 * lily/grob.cc (pure_height): add minimum-Y-extent
2436 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2439 * lily/constrained-breaking.cc: convert code to use new Matrix class
2440 (get_best_solution): new function
2442 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2443 is a page with no systems
2445 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2447 * VERSION (PACKAGE_NAME): release 2.9.13
2449 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2452 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2454 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2456 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2459 * scm/define-grob-properties.scm (all-user-grob-properties):
2460 remove grace-space-factor.
2462 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2463 grace-spacing-interface
2464 (spacing-options-interface): add.
2466 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2468 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2470 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2471 GraceSpacing object.
2473 * lily/note-spacing.cc: fix prop list formatting
2475 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2476 beaming for grace notes too.
2478 * input/regression/spacing-grace.ly: update.
2480 * lily/grace-spacing-engraver.cc: new file.
2482 * lily/spacing-spanner.cc: add strict-grace-spacing.
2484 2006-07-20 Graham Percival <gpermus@gmail.com>
2486 * lily/parser.yy: compile fix.
2488 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2490 * scm/define-grobs.scm (all-grob-descriptions): typo.
2492 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2493 .eps extension from includegraphics.
2495 * scripts/lilypond-book.py (main): add support for --pdf.
2497 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2498 callback to compute common shortest duration.
2499 (set_springs): typo.
2501 * scm/define-grob-properties.scm (all-user-grob-properties): add
2502 strict-grace-spacing.
2504 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2505 support float_grace_columns_.
2507 * lily/spacing-options.cc (init_from_grob): new file.
2509 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2511 * input/regression/spacing-loose-grace.ly: new file.
2513 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2515 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2516 tupletFullLengthNote too. Choose right bound depending on value.
2518 * input/regression/tuplet-full-length-note.ly: new file.
2520 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2522 * lily/*-performer.cc: Converted try_music to listen_*
2524 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2525 as a stream-event internally. Introduce event_cause (), deprecate
2528 * scm/define-music-types.scm: Removed BusyPlayingEvent
2530 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2532 * Documentation/user/advanced-notation.itely (Font selection):
2533 Document how to get a list of available fonts using 'lilypond
2534 -dshow-available-fonts blabla'.
2536 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2538 * GNUmakefile.in: filter lily-XXX.pdf files.
2540 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2542 * scm/define-grob-properties.scm (all-internal-grob-properties):
2543 remove delta-pitch. Use delta-position everywhere.
2545 * scm/output-lib.scm (fall::print): use new order.
2547 * scm/output-ps.scm (path): reorder arguments.
2549 * scm/output-svg.scm (path): support for path primitive.
2551 * input/regression/bend-after.ly: new file.
2553 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2554 recipe for eps -> pdf conversion.
2556 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2558 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2561 2006-07-19 Graham Percival <gpermus@gmail.com>
2563 * input/manual/screech-boink.ly: moved to here.
2565 * input/screech-boink.ly: deleted.
2567 * scm/define-grob-properties.scm: clarify doc string.
2569 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2571 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2573 * scm/output-ps.scm (path): define path.
2575 * scm/define-stencil-commands.scm
2576 (ly:register-stencil-expression): add path.
2578 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2580 * ly/engraver-init.ly: add Fall_engraver
2582 * lily/parser.yy (music_function_event): allow musicfunction
2583 without music arg as music_function_event.
2585 * lily/grob-scheme.cc (LY_DEFINE):
2586 ly:grob-robust-relative-extent. New function.
2588 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2590 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2592 * scm/output-lib.scm (fall::print): new function
2594 * lily/fall-engraver.cc (stop_fall): new file.
2596 * ly/music-functions-init.ly: alphabetise.
2598 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2601 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2603 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2605 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2608 * lily/translator-group.cc (connect_to_context): non const error message.
2610 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2612 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2615 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2617 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2619 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2622 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2624 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2626 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2628 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2630 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2632 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2634 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2636 * scm/layout-page-layout.scm: Define module, tidy code, use more
2637 functions iso. a single big one.
2639 * scm/layout-page-dump.scm: move page dump functions used in two
2640 pass spacing to this file. Define module.
2642 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2645 * ly/paper-defaults.ly: use module layout-page-layout.
2647 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2649 * lily/music.cc: Revised MusicEvent event class. It now contains
2650 event data directly instead of encapsulating it in music. The
2651 previously used class is renamed to OldMusicEvent.
2653 * lily/stream-event.cc: Stream events are now probs.
2655 * lily/translator-group.cc, lily/translator.cc: Translators can
2656 now listen directly to stream events, by using macros
2657 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2659 * lily/arpeggio-engraver.cc: Converted to use new event system
2661 * THANKS: Corrected spelling mistake.
2663 2006-07-12 Graham Percival <gpermus@gmail.com>
2665 * Documentation/user/SConscript, make/lilypond-vars.make,
2666 input/GNUmakefile: doc build looks in input/manual instead
2669 * input/manual/ GNUmakefile, SConscript: build files for
2672 * input/test/ various: some files moved to input/manual/
2674 * Documentation/user/basic-notation.itely: small updates;
2675 thanks Kieren and Charles!
2677 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2679 * VERSION (PACKAGE_NAME): release 2.9.11
2681 * Documentation/topdocs/NEWS.tely (Top): update prop value
2683 * Documentation/user/basic-notation.itely (Tuplets): new property
2686 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2688 * python/convertrules.py (conv): tweaks.
2690 * VERSION (PATCH_LEVEL): bump version.
2692 * python/convertrules.py (conv): add rule for
2693 tupletNumberFormatFunction.
2695 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2696 tupletNumberFormatFunction.
2698 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2699 text through 'text callback.
2701 * lily/time-scaled-music-iterator.cc (construct_children): copy
2702 tweaks generated events.
2704 * scm/define-context-properties.scm
2705 (all-user-translation-properties): remove tupletNumberFormatFunction
2707 * lily/tuplet-engraver.cc (process_music): don't read
2708 tupletNumberFormatFunction
2710 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2713 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2715 * lily/global-context-scheme.cc: Separated ly:run-translator into
2718 * lily/score-engraver.cc, lily/score-performer.cc,
2719 scm/define-context-properties.scm: Make paper/midi output
2720 accessable as a context property.
2722 * lily/score-translator.cc, lily/score-context.cc: Removed.
2724 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2726 * scm/ps-to-png.scm (Module):
2727 * scm/framework-tex.scm (Module):
2728 * scm/framework-ps.scm (Module):
2729 * scm/backend-library.scm (Module):
2730 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2731 "dDEVICEHEIGHTPOINTS".
2733 2006-07-04 Graham Percival <gpermus@gmail.com>
2735 * Documentation/user/ various: general improvements to
2736 "working with lilypond files" section.
2738 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2740 * lily/sequential-iterator.cc: Change the default get_music_list
2741 to read elements-callback music property
2743 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2744 processing of multimeasure rests. Softcoded
2745 sequential-music-iterator.
2747 * lily/sequential-music-iterator.cc: Removed.
2749 2006-06-28 Graham Percival <gpermus@gmail.com>
2751 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2753 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2755 * lily/parser.yy: Wrap non-post-events in EventChords before
2756 assigning them to identifiers.
2758 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2760 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2761 gives correct vertical placement of \bar ":" in all staff
2762 sizes. Thanks Martial!
2764 2006-06-26 Graham Percival <gpermus@gmail.com>
2766 * Documentation/user/invoking.itely : minor update from mailist.
2768 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2770 * lily/ various: Introduce stream events of types Prepare,
2771 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2772 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2774 * lily/global-context*.cc: Time is now -inf before iteration
2777 * lily/include/context.hh: Removed unique_, init_
2779 * Documentation/topdocs/NEWS: Make the feathered beam example
2780 avoid triggering a bug.
2782 2006-06-24 Graham Percival <gpermus@gmail.com>
2784 * Documentation/user/ various: small additions from mailist.
2786 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2788 * ly/performer-init.ly: Add some missing links in the context
2789 hierarchy for MIDI output. There are probably some more missing!
2791 2006-06-21 Graham Percival <gpermus@gmail.com>
2793 * Documentation/user/ various: minor spelling fixes;
2794 thanks Dave Luttinen!
2796 * Documentation/user/ various: small clarifications;
2797 thanks Anthony Youngman!
2799 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2801 * po/fr.po: add \n appropriately.
2803 * lily/lexer.ll: remove ? from version-seen?
2805 2006-06-19 John Mandereau <john.mandereau@free.fr>
2807 * po/fr.po; update translation, by Jean-Charles Malahieude and
2810 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2812 * THANKS: add Markus Schneider.
2814 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2815 Staff_symbol_engraver
2817 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2818 replace staff_engraver
2820 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2823 * lily/staff-collecting-engraver.cc
2824 (acknowledge_end_staff_symbol): new function
2826 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2828 * lily/staff-collecting-engraver.cc
2829 (acknowledge_end_staff_symbol): new function.
2831 * lily/main.cc: switch on relocation by default.
2833 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2835 * lily/spacing-spanner.cc (musical_column_spacing): set
2836 compound_fixed_note_space to 0.0. Document why.
2838 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2839 range of inverse_hooke_
2840 (Simple_spacer): init completely.
2842 (get_line_configuration): don't use cols.resize(); it introduces
2845 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2847 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2849 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2850 try. Divide by beatlength.
2852 * input/regression/beaming-ternary-metrum.ly: update doc.
2853 add beatLength hack.
2855 * scm/music-functions.scm (make-time-signature-set): add
2856 standard-beat-grouping.
2858 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2860 * input/regression/tie-whole.ly: new file.
2862 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2863 cross center of note head in case of invisible stem.
2865 2006-06-16 Graham Percival <gpermus@gmail.com>
2867 * Documentation/user/ various: small fixes from mailist.
2869 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2871 * lily/breathing-sign.cc (offset_callback): idem.
2873 * lily/align-interface.cc (align_to_fixed_distance): remove
2876 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2879 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2881 * VERSION (PACKAGE_NAME): release 2.9.9
2883 * ly/lilypond-book-preamble.ly: add \version
2885 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2887 * scripts/lilypond-book.py (PREAMBLE_LY): include
2888 lilypond-book-preamble.ly
2890 * lily/stem.cc (get_beaming): return max of 0 and
2891 scm_ilength. Fixes slurring from/to beams.
2893 * ly/lilypond-book-preamble.ly: new file.
2895 * lily/slur.cc: add inspect-index feature.
2897 2006-06-13 Graham Percival <gpermus@gmail.com>
2899 * Documentation/user/tutorial.itely: trivial fix.
2901 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2903 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2904 all non-event music in the parser via MAKE_SYNTAX.
2906 * lily/parser-scheme.cc: Add ly:parser-error function
2908 * scm/paper.scm: fix typo
2910 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2914 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2917 * buildscripts/output-distance.py (test_compare_signatures):
2919 (read_signature_file): use new signature format.
2921 * scm/stencil.scm (write-system-signature): simpler signature
2924 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2927 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2928 stem_end_position, but estimate instead.
2930 * lily/tuplet-bracket.cc (calc_positions): look at
2931 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2932 brackets narrower than beams.
2934 * lily/lexer.ll: set version-seen? even if version is
2937 * lily/rest.cc (y_offset_callback): bugfix: decide position
2938 override based on scm_is_number(). Fixes \rest on center staff
2941 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2942 patterns for 16th triplets.
2944 2006-06-10 Graham Percival <gpermus@gmail.com>
2946 * Documentation/user/ page.itely, global.itely: editing
2949 * Documentation/user/ various: findex -> funindex.
2951 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2953 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2954 insert extra tuplet events.
2956 2006-06-10 Graham Percival <gpermus@gmail.com>
2958 * Documentation/user/programming-interfaces.itely: add
2961 * python/convertrules.py: add annotatefoo -> annotate-foo
2964 * Documentation/user/global.itely: start editing.
2966 * Documentation/user/page.itely: major editing, new spacing
2969 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2971 * scm/define-markup-commands.scm (wordwrap-markups): use
2972 output-def 'line-width if undefined.
2974 * HACKING: trim outdated info.
2976 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2978 * scm/define-grobs.scm (all-grob-descriptions): Add
2979 line-spanner-interface to all grobs that already have
2980 text-spanner-interface or dynamic-text-spanner-interface
2982 * scm/page.scm: Rename annotate{headers,systems,page}->
2985 * input/regression/page-spacing.ly,
2986 input/regression/page-layout-manual-position.ly: idem
2988 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2990 * lily/line-spanner.cc: cleanup property list.
2992 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2993 generator expressions (2.3 compat).
2995 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2997 * lily/vertical-align-engraver.cc: Make sure that the
2998 align{Above,Below}Context properties are included in the automatic
3001 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3003 * scm/paper-system.scm (paper-system-annotate): also annotate the
3004 estimated pure-Y-extent
3006 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3008 * lily/system.cc (break_into_pieces): set the estimated height
3009 of each child system
3011 * lily/stem.cc (pure_height): new pure-Y-extent callback
3013 * lily/staff-symbol-referencer.cc (callback): don't destroy
3014 the staff-position property
3016 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3017 consider_suicide into two functions
3019 * lily/constrained-breaking.cc (resize): use the new pure
3020 callbacks to estimate the height of a system
3022 * lily/axis-group-interface.cc (pure_group_height): new
3023 side-effect-free VerticalAxisGroup height-callback
3025 * lily/align-interface.cc (get_extents_aligned_translates):
3026 split align_elements_to_extents into two functions
3027 (get_pure_child_y_translation): new function
3029 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3031 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3033 * lily/paper-score.cc: cache break_indices and columns
3035 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3037 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3039 * lily/font-config.cc (init_fontconfig): do the init if
3040 cache_file, but don't look at cache_file.
3042 * input/regression/quote-tie.ly: new file.
3044 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3045 to Head_event_tuple, so we deal gracefully with ties on
3048 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3051 2006-06-08 Graham Percival <gpermus@gmail.com>
3053 * input/test/ smart-transpose.ly, reverse-music.ly:
3054 \applyMusic to music functions update, thanks Michael!
3056 2006-06-07 Graham Percival <gpermus@gmail.com>
3058 * input/test/ add-staccato.ly, add-text-script.ly,
3059 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3060 music functions update, thanks to Michael Meixner.
3062 * Documentation/user/music-glossary.tely: small fix
3065 * Documentation/user/ various: minor additions from mailist.
3067 * Documentation/user/lilypond.tely, basic-notation.itely:
3068 small test of @funindex. (works here)
3070 * input/test/font-table.ly: reduce size to partially
3071 de-ugly version in manual.
3073 * Documentation/user/page.itely: new file (split former
3074 "global issues" into "page settings" and "non-musical
3077 * Documentation/user/ various: fix @ref{}s to match
3078 new chapter names (above).
3080 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3082 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3084 2006-06-06 Graham Percival <gpermus@gmail.com>
3086 * Documentation/user/advanced-notation.itely: add example
3087 for segno/coda on barline.
3089 * tex/texinfo.tex: merge from upstream.
3091 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3093 * scripts/lilypond-book.py (process_snippets): Argument fix.
3096 * buildscripts/builder.py:
3099 * Documentation/user/SConscript: More SCons fixes.
3101 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3103 * lily/font-config.cc (init_fontconfig): Only initialize if
3104 global cache_file is found.
3106 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3108 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3111 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3113 * VERSION (PACKAGE_NAME): release 2.9.8
3115 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3116 function. Delay ledger modifying ledgered grobs to
3117 stop_translation_timestep(), to ensure that we're ledgering
3118 according to the new spanner.
3119 (acknowledge_staff_symbol): don't check for non-NULL
3120 staff_sym->get_bound()
3122 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3125 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3128 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3129 directly from srcdir/stepmake/aclocal.m4
3131 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3134 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3136 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3138 * lily/simple-spacer.cc (get_line_configuration): add
3139 keep-inside-line rods
3140 (struct Column_desc): add constructor
3141 (struct Rod_desc): add constructor
3142 (get_line_forces): check for forced page breaks here too
3144 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3145 support/elements cycles between InstrumentNames and AxisGroups
3147 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3149 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3151 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3152 make-txt-files target.
3154 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3155 make-txt-files target.
3157 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3159 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3162 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3164 * Documentation/user/instrument-notation.itely,
3165 input/regression/breathing-sign-ancient.ly,
3166 input/test/divisiones.ly: Removed redundant property settings for
3169 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3170 fix lyrics alignment problems. They are implemented now as scheme
3171 functions that add the appropriate unicode char to the first lyric
3172 event rather than adding a separate lyric event. Minor edit of
3175 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3177 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3178 pollute src dir with built .txt files, but install directly from
3179 Documentation/topdocs/out/
3181 * buildscripts/output-distance.py
3182 (ComparisonData.create_html_result_page): put version/directories
3185 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3188 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3189 Patch by Karl Hammar
3191 * buildscripts/readlink.py: add file.
3192 Patch by Karl Hammar
3194 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3196 * lily/tuplet-number.cc (print): prevent stencil from being
3199 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3201 * scm/stencil.scm (write-system-signature): explicitly
3202 -well, superfluously- close output port.
3204 * buildscripts/output-distance.py (main): oops. Add extra argument.
3206 2006-06-05 Graham Percival <gpermus@gmail.com>
3208 * Documentation/user/music-glossary.tely: clarified example
3209 from Francisco Vila, thanks!
3211 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3213 * input/regression/spacing-section.ly: new file.
3215 * lily/input.cc (programming_error): new function.
3217 * lily/spacing-engraver.cc (try_music): new function. Accept
3218 spacing-section-event
3220 * lily/spacing-spanner.cc (set_springs): take slices of all
3221 columns for spacing.
3223 * lily/include/paper-column.hh (class Paper_column): add
3224 Paper_column::compare.
3226 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3228 * scm/define-music-types.scm (music-descriptions): add
3231 * lily/music-iterator.cc (report_event): use programming_error for
3232 sending non-event error.
3234 * lily/input.cc (programming_error): new function
3236 * buildscripts/output-distance.py (main): use compare-XXX for
3238 (main): --threshold option, default at 0.30
3240 * output-distance.py (main): add --threshold option.
3242 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3244 * scm/paper-system.scm (paper-system-annotate): fix problem when
3245 annotating an empty system
3247 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3249 * GNUmakefile.in: reinstate old web tar/copying.
3251 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3253 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3254 nothing changes. (Erik S)
3256 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3259 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3261 * scm/define-markup-commands.scm (whiteout): do not force
3262 foreground color of argument markup to black.
3264 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3265 the left of the arrow, instead of below the arrow name, so that,
3266 when two little arrows are vertically stacked, their dimensions
3267 and name should not overlap. Add a color key parameter.
3269 * scm/paper-system.scm (paper-system-annotate): Annotate
3270 next-space+next-padding instead of next-space. Annotate space
3271 between next-padding and next-space+padding, respectively, and
3272 following system extent and refpoint-Y-extent. Use colors.
3274 * scm/page.scm (annotate-page): translate annotations slightly to
3277 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3279 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3280 fix for x-staff slurs. Thanks Joe!
3282 * buildscripts/output-distance.py
3283 (SystemLink.output_expression_change_count): keep track of changed
3284 details, and dump in details html page.
3286 * input/regression/figured-bass-staff.ly: add note about setting
3287 properties in Staff context.
3289 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3290 add slurs and ties to support too.
3292 * buildscripts/output-distance.py (main): set dest_dir
3293 argument. Add --max-count option.
3295 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3297 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3298 shortcuts for special unicode chars that are useful in chant
3299 notation. Revised exisiting and added new comments.
3301 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3303 * make/mutopia-rules.make: remove duplicate recipe.
3305 2006-06-02 Werner Lemberg <wl@gnu.org>
3307 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3308 Add support for U+0132 (IJ) and U+0133 (ij).
3310 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3312 * buildscripts/output-distance.py (FileLink): new class. collect
3313 info systems from one .ly file.
3314 (FileLink.link_files_for_html): further tweaks.
3316 2006-06-02 Graham Percival <gpermus@gmail.com>
3318 * tex/texinfo.tex: partial fix for @funindex.
3320 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3323 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3325 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3327 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3328 @example too. Backportme.
3330 2006-06-02 Graham Percival <gpermus@gmail.com>
3332 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3333 from Werner Lemberg.
3335 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3337 * Documentation/user/music-glossary.tely: additional spanish
3338 updates and a lyrics fix in an example.
3340 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3342 * scm/define-grob-properties.scm: Previous patch contained
3343 spurious line from another patch not yet committed. Fixed.
3345 * scm/define-grob-properties.scm: Add missing doc strings for
3348 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3350 * buildscripts/output-distance.py
3351 (ComparisonData.write_text_result_page): separate the scores, sort
3354 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3357 * buildscripts/output-distance.py (me_path): use argv[0] for
3359 (ComparisonData.img_cell): use colored borders.
3361 * scm/stencil.scm (write-system-signature): escape newlines too.
3362 (write-system-signature): use (1,-1) interval for empty interval
3364 2006-01-01 Graham Percival <gpermus@gmail.com>
3366 * Documentation/user/music-glossary.tely: Spanish updates
3367 from Francisco Vila.
3369 * Documentation/user/lilypond-book.itely: addition from
3372 * Documentation/user/ various: edits, small additions
3375 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3377 * GNUmakefile.in (tree-lib-prefix-current):
3378 (tree-share-prefix-current): Use version number in tree, add
3381 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3383 * GNUmakefile.in: write VERSION, again.
3385 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3386 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3388 * stepmake/aclocal.m4: robuster version detection.
3390 * buildscripts/output-distance.py
3391 (ComparisonData.create_html_result_page): copy only if file
3392 exists, fixup src paths.
3394 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3396 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3398 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3399 Another datarootdir reto.
3401 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3402 available. This should be moved to postinstall-lilypond-doc.
3404 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3406 * GNUmakefile.in: simplify local-WWW-post.
3407 remove -type l from find.
3409 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3410 fixes. Don't follow symlinks.
3411 (ComparisonData.create_html_result_page): remove previous results.
3412 insert ../python in path.
3414 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3416 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3418 * config.make.in (datadir): Add datarootdir to silence autoconf.
3420 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3422 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3424 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3426 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3427 slash beams too wide.
3429 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3431 * VERSION: release 2.9.7
3433 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3435 * lily/relocate.cc (read_relocation_dir): Do not blindly
3438 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3440 * lily/parser.yy: replace THIS by PARSER
3442 * Documentation/index.html.in: add link to test-results.html page.
3444 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3446 * scm/translation-functions.scm (format-bass-figure): translate
3447 digits over 10 to the left
3449 * scm/define-markup-commands.scm (translate-scaled): new markup.
3451 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3454 * ly/engraver-init.ly: add Figured_bass_engraver
3456 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3458 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3460 * lily/score-engraver.cc (announce_grob): only note START announces.
3462 * lily/include/engraver-group.hh (Translator_group):
3463 acknowledge_hash_table_ is now drul.
3465 * lily/engraver.cc (announce_end_grob): new method.
3467 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3469 * lily/translator-dispatch-list.cc (create): take start_end argument.
3471 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3472 acknowledge_static_array_ to drul
3474 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3476 * scm/define-grob-interfaces.scm
3477 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3479 * scm/define-grobs.scm (all-grob-descriptions): add
3480 BassFigureAlignmentPositioning
3482 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3483 number stays up to date. Backportme.
3485 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3487 * Documentation/user/basic-notation.itely (Bar lines): Document
3490 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3492 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3494 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3495 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3498 * Resurrect `scons lily' build.
3500 * SConstruct (symlink_tree): Bugfix: link
3501 music-drawing-routines.ps to file iso directory.
3503 * lily/SConscript: Remove kpath-guile from LIBS.
3505 * SConstruct (libdir_package_version): Typo.
3506 (configure): Comment-out fontforge for lack of fontforge.pc .
3507 Also add libdir* to environment.
3509 2006-05-30 Graham Percival <gpermus@gmail.com>
3511 * Documentation/user/ various: minor additions from mailist and
3514 2006-05-30 Paco <fravd@ya.com>
3516 * Documentation/user/music-glossary.tely: numerous corrections and
3517 some new translations.
3519 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3523 * buildscripts/output-distance.py
3524 (ComparisonData.create_html_result_page): new routine: summarise
3525 results in HTML page with images.
3526 (ComparisonData.create_text_result_page): create summary text files too.
3528 * GNUmakefile.in (web-ext): package .signature files too. They
3531 * scm/stencil.scm (write-system-signature): typo.
3533 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3535 * scm/stencil.scm (write-system-signature): better escaping.
3536 only write signature for music systems, not for markup systems.
3538 * scm/framework-ps.scm (output-framework): dump-signatures support
3541 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3543 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3544 for -dno-point-and-click
3546 * lily/grob.cc (get_print_stencil): don't read
3547 point_and_click_global to determine whether to set grob-cause.
3549 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3551 * buildscripts/output-distance.py (main): new function.
3552 (ComparisonData): new class.
3554 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3555 careful with generating new LedgerLineSpanners.
3557 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3559 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3560 context. This fixes double ledger lines in output.
3562 * lily/system.cc (get_paper_system): remove 3 layer limit.
3564 * buildscripts/output-distance.py (SystemLink.distance): new
3565 file. Compare signatures.
3567 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3569 * lily/grob-array.cc (remove_duplicates): rename from
3570 uniq(). Sort before calling uniq() so it actually works.
3572 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3574 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3575 \version from lilypond file snippet.
3576 (Lilypond_file_snippet.ly): oops. typo.
3577 (find_toplevel_snippets): urgh. again.
3579 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3580 prevent duplicated broken items in output.
3582 * scm/framework-eps.scm (output-classic-framework): only dump if
3583 dump-signatures is set.
3585 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3587 * scm/stencil.scm (write-system-signature): new routine: write
3588 python parseable signature of a separate paper system.
3591 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3593 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3597 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3599 * translator-group.cc: send music events to engravers in
3600 non-bottom contexts.
3602 * tuplet-engraver.cc: process tuplet brackets in correct order.
3604 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3606 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3607 arg 2 might point us to a new binary (patch by Karl Hammar)
3609 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3611 * VERSION (PACKAGE_NAME): release 2.9.6
3613 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3615 * Documentation/user/*.itely: 2nd
3616 attempt: replace funindex -> findex globally.
3618 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3620 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3621 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3623 * scm/define-music-display-methods.scm: display methods for
3624 breaks. Fix \applyOutput.
3626 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3628 * Documentation/user/macros.itexi: comment out funindex expansion.
3630 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3633 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3634 Karl Hammar. Backportme.
3636 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3638 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3640 * Documentation/user/programming-interface.itely (Running a
3641 function on all layout objects): idem.
3643 * Documentation/user/introduction.itely (Automated engraving):
3644 update \applyOutput syntax
3646 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3647 remove debugging hook.
3649 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3652 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3654 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3655 TEXI2DVI_FLAGS to texi2dvi invocation.
3657 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3659 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3660 works. More work is done by iterator now, and engraver has been
3661 very much simplified.
3663 * lily/translator-group.cc: try_music is now invoked through a
3666 * lily/*-iterator.cc: Massive cleanups. Junked
3667 try_music_in_children globally. Renamed try_music to report_event,
3668 and made that method descend to a bottom context automatically.
3670 * lily/event-iterator.cc: New file.
3672 * lily/output-property-iterator.cc,
3673 lily/old-lyric-combine-music-iterator.cc: Removed.
3675 * python/convert-rules.py: Modified the syntax for \applyOutput.
3677 2006-05-23 Graham Percival <gpermus@gmail.com>
3679 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3682 * Documentation/user/ various: stuff that might have helped
3683 to fix the pdf creation, plus some minor doc additions.
3685 * Documentation/user/changing-defaults.itely: remove @b from
3686 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3688 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3690 * lily/beaming-pattern.cc (beamify): deal with negative start
3691 moments for beaming patterns.
3693 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3695 * lily/beaming-info.cc (beamify): new function: read beatLength
3696 and beatGrouping from context.
3698 * input/regression/beam-beat-grouping.ly (Module): new file.
3700 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3702 * lily/beam.cc (get_beam_segments): generate events for
3703 max_connect_ case too.
3704 (get_beam_segments): read Stem::max-beam-connect.
3706 * input/regression/beam-single-stem.ly: new file.
3708 * lily/stem.cc (set_beaming): use #f as signaling value for
3711 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3713 * lily/beam.cc (set_beaming): read clip-edges property.
3714 (calc_direction): don't suicide for single stem.
3716 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3717 argument, remove 1<<15 hack. Remove clip_edges()
3719 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3721 2006-05-21 Graham Percival <gpermus@gmail.com>
3723 * Documentation/user/basic-notation.itely: reorg.
3725 * Documentation/user/ various: minor fixes.
3727 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3729 * lily/stencil-expression.cc (register_stencil_head): opps, append
3730 to cdr of static SCM object.
3732 2006-05-19 Graham Percival <gpermus@gmail.com>
3734 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3735 update framework for command index. DOC WRITERS: use @funindex
3736 instead of @cindex @code{}.
3738 * Documentation/user/ various: replace @cindex @code{} => @funindex
3740 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3742 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3743 case positions is set manually.
3745 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3747 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3750 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3752 * Documentation/user/changing-defaults.itely (Contexts explained):
3753 use absolute dimension for @image.
3755 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3756 out image for illustration too.
3757 ($(outdir)/%.png): add more png <-> eps rules.
3759 2006-05-17 Graham Percival <gpermus@gmail.com>
3761 * Documentation/user/ various: remove trailing whitespace, cosmetic
3762 change to reduce changes produced by diff.
3764 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3766 * lily/main.cc (do_chroot_jail): correctness tweak.
3768 * python/lilylib.py (system): import subprocess in system () only.
3770 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3772 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3773 variable. Backportme.
3775 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3777 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3779 2006-05-17 Werner Lemberg <wl@gnu.org>
3781 * lily/lexer.ll (init_signature_has_table): Add
3782 `scm-scm-music-music'.
3784 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3785 (Generic_prefix_music_scm): Add rule for it.
3787 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3788 `quoted-transposition' property.
3790 * ly/music-functions-init.ly (transposedCueDuring): New function.
3792 * scm/define-music-properties.scm (all-music-properties): Updated.
3794 * Documenation/topdocs/NEWS.itely: Document it.
3796 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3798 * python/lilylib.py (system): move import subprocess to system()
3801 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3803 * VERSION (PATCH_LEVEL): release 2.9.5
3805 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3808 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3810 2006-05-16 Graham Percival <gpermus@gmail.com>
3812 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3814 * Documentation/user/ various: minor fixes.
3816 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3818 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3820 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3822 * Documentation/user/advanced-notation.itely (Instrument names):
3823 Modified obsolete instruction on how to move instrument names away
3824 from the staves. Hmm, at second thought the bug probably has been
3825 solved, so the full bug description should probably be removed.
3827 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3829 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3830 currentCommandColumn.
3832 * lily/hairpin.cc (print): also add padding for non-neighbor
3835 * scm/define-context-properties.scm
3836 (all-user-translation-properties): add hairpinToBarline
3838 * input/regression/hairpin-to-barline.ly: new file.
3840 * lily/context.cc (internal_send_stream_event): thinko fix.
3842 * lily/tie.cc (set_default_control_points): robustness fix.
3844 * python/musicxml.py (Part.interpret): don't complain about
3845 incomplete measures.
3847 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3848 new music if last_event_chord() returned None.
3850 * python/musicxml.py (Part.interpret): skip back over chord notes.
3852 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3854 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3855 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3856 lily/slash-repeat-engraver.cc,
3857 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3858 iterator sends PercentEvents
3860 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3861 rework tuplets: send start/stop events to engraver
3863 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3864 dispatchers event-source and events-below to Context
3866 2006-05-15 Graham Percival <gpermus@gmail.com>
3868 * Documentation/user/README.txt: update info for doc writers.
3870 * Documentation/user/programming-interface.itely: integrate
3871 Nicolas' fixes for chapter rewrite.
3873 * Documentation/user/ various: minor fixes.
3875 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3877 * lily/clef-engraver.cc: cleanup.
3879 * Documentation/user/GNUmakefile: dist context-example.eps too.
3881 * lily/key-engraver.cc (create_key): use
3882 explicitKeySignatureVisibility for cancellation too.
3884 * lily/font-config.cc (init_fontconfig): don't close file if
3887 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3889 * Documentation/topdocs/NEWS.tely: niente and rotation news
3891 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3893 * lily/include/stencil.hh
3894 * lily/stencil.cc (rotate): new function. Makes it possible
3895 to rotate a stencil around a given offset.
3897 * lily/grob.cc (get_print_stencil): add rotation support
3899 * lily/stencil-interpret.cc (interpret_stencil_expression):
3900 add rotation support
3902 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3904 * scm/define-grob-properties.scm: add 'rotation property
3906 * scm/define-markup-commands.scm: add rotate markup command
3908 * scm/output-ps.scm: add rotation support in PostScript backend
3910 * scm/output-svg.scm: add rotation support in SVG backend
3912 2006-05-13 Graham Percival <gpermus@gmail.com>
3914 * Documentation/user/music-glossary.itely: French correction.
3916 * Documentation/user/programming-interface.itely: major
3917 new docs, some reorg, some info from Nicolas.
3919 * Documentation/user/ various: small fixes.
3921 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3923 * Documentation/user/programming-interface.itely (Markup
3924 programmer interface): Remove duplicate text.
3926 2006-05-12 Graham Percival <gpermus@gmail.com>
3928 * Documentation/user/context-example.eps: new file.
3930 * Documentation/user/changing-defaults.itely: set up file to
3933 * Documentation/user/programming-interface.itely: changes
3936 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3938 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3940 2006-05-11 Graham Percival <gpermus@gmail.com>
3942 * Documentation/user/programming-interface.itely: first round of
3943 editing and merging emails from Nicolas.
3945 * Documentation/user/scheme-tutorial: minor edit.
3947 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3949 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3951 (Xml_node.message): use it.
3953 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3954 oops. Add duration argument.
3956 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3958 * lily/paper-column-engraver.cc (make_columns):
3959 * scm/define-grobs.scm: Revert my previous change and set the default
3960 in define-grobs.scm instead.
3962 2006-05-09 Graham Percival <gpermus@gmail.com>
3964 * Documentation/user/changing-defaults.itely: general editing,
3965 info about \set and \override.
3967 * Documentation/user/tweaking.itely, advanced-notation.itely:
3968 fixes from Dave Luttinen, thanks!
3970 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3972 * lily/paper-column-engraver.cc (make_columns): By default, a column
3973 needs to be breakable.
3975 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3977 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3979 (musicxml_time_to_lily): idem
3980 (musicxml_key_to_lily): idem
3981 (instrument_drumtype_dict): dict for supported drumtypes.
3982 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3983 moments and pending mm rests
3984 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3985 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3986 (musicxml_voice_to_lily_voice): add mode change.
3987 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3988 speed and less memory usage (factor 5 to 10).
3989 (convert): write -defs.ly and driver file separately so people
3990 can script their own part extraction.
3992 * python/musicxml.py (minidom_demarshal_node): new function:
3993 separate minidom handling.
3994 (lxml_demarshal_node): new function: support lxml.etree too.
3995 (Xml_node.message): new function: verbose error message, with XML
3996 path to offending node.
3997 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3998 (Part_list.generate_id_instrument_dict): new method: collect
3999 instrument names, to be able to set drum_type.
4000 (Part.interpret): handle underfull measures
4001 (Part.interpret): assign instrument names.
4003 * python/musicexp.py (Output_printer.close): new method
4004 (MusicWrapper.print_ly): new class: support other modes,
4006 (BarCheck.print_ly): new class. Support bar checks, with comments
4007 and fancy barchecks.
4008 (NoteEvent.__init__): also set drum_type for drum notes.
4009 (MultiMeasureRest.lisp_expression): dump mm rests.
4011 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4012 line-break-permission if forbidBreak is not set.
4014 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4016 * scm/define-context-properties.scm:
4017 * scm/define-grob-properties.scm:
4018 * scm/define-grobs.scm:
4019 * scm/define-music-display-methods.scm:
4020 * scm/define-music-properties.scm:
4021 * scm/define-music-types.scm:
4022 * scm/music-functions.scm:
4023 * ly/declarations-init.ly:
4024 * lily/include/constrained-breaking.hh:
4026 * lily/spaceable-grob.cc:
4027 * lily/simple-spacer.cc:
4028 * lily/paper-score.cc:
4029 * lily/paper-column.cc:
4030 * lily/paper-column-engraver.cc:
4032 * lily/gourlay-breaking.cc:
4033 * lily/constrained-breaking.cc:
4034 * python/convertrules.py:
4035 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4036 "page-break-penalty" and "line-break-permission".
4037 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4038 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4040 * lily/bar-engraver.cc:
4041 * lily/beam-engraver.cc:
4042 * lily/forbid-break-engraver.cc:
4043 * lily/ligature-engraver.cc:
4044 * lily/paper-column-engraver.cc:
4045 * lily/percent-repeat-engraver.cc:
4046 * lily/score-engraver.cc:
4047 * lily/score-engraver.hh:
4048 * lily/paper-column-engraver.hh:
4049 Inter-engraver communication regarding line breaks is done through context
4050 properties (Score.forbidBreak) instead of function calls.
4052 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4054 * VERSION (PACKAGE_NAME): release 2.9.4
4056 2006-05-08 Graham Percival <gpermus@gmail.com>
4058 * Documentation/user/working.itely: proofreading from Dave
4061 * Doucmentation/user/README.txt: updated with manual style info.
4063 * Documentation/user/ various: trim linewidth to 78 chars.
4065 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4067 * scm/define-grob-properties.scm (all-internal-grob-properties):
4068 remove chord-tremolo property.
4070 * lily/beam.cc (get_beam_segments): don't use stem position as
4071 base for broken ends.
4073 2006-05-06 Graham Percival <gpermus@gmail.com>
4075 * Documentation/user/putting.itely: proofreading from Dave
4078 * Documentation/user/ various: more reorg and clarifications.
4080 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4082 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4084 * ly/music-functions-init.ly: new function featherDurations
4086 * lily/beam.cc: read grow-direction for feathered beaming.
4088 * Documentation/topdocs/NEWS.tely (Top): typo.
4090 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4092 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4095 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4096 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4097 used by music streams.
4099 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4100 lily/stream-event.cc, lily/stream-event-scheme.cc,
4101 lily/listener.cc, lily/scheme-listener.cc,
4102 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4103 lily/include/stream-event.hh, lily/include/listener.hh,
4104 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4105 Created data structures for music streams.
4107 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4109 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4110 construction of a beam.
4113 * flower/include/std-vector.hh (default_compare): use only one comparison.
4115 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4116 (note-by-number): further attachment fixes.
4118 * scm/lily-library.scm (ordered-cons): new function.
4119 (interval-index): new function
4121 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4123 * lily/note-head.cc (get_stem_attachment): new function.
4125 * scm/define-markup-commands.scm (note-by-number): read 'style
4128 * input/regression/markup-note.ly: show note-head style option.
4130 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4133 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4135 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4137 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4139 * lily/include/constrained-breaking.hh: GCC 4 fix.
4141 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4143 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4144 Replace it with functions get_line_forces and get_line_configuration.
4145 (class Simple_spacer): Make data private.
4146 Rewrite compression algorithm to be faster and simpler.
4148 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4149 * lily/gourlay-breaking.cc (solve):
4150 * lily/constrained_breaking.cc (space_line):
4151 Change it to the new simple-spacer code.
4153 * lily/paper-score.cc (get_paper_systems):
4156 Delay breaking the systems until they are requested.
4157 (find_break_indices):
4158 Use vsize for indices.
4160 Move the "Calculating line breaks" message here.
4162 * lily/system.cc (pre_processing):
4163 Move the "Calculating line breaks" message away from here.
4164 (break_into_pieces):
4165 Allow multiple calls to this function in sequence (with touching-but-
4166 not-overlapping breakpoints).
4168 * lily/constrained-breaking.cc:
4169 Replace most of the get_XXXX functions with get_line_details.
4170 Only calculate the force for each line. Calculate configurations only
4171 for the lines we will actually use.
4172 Replace cols_ with lines_.
4174 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4176 * mf/GNUmakefile (depth): remove FC_FIND.
4178 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4180 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4182 * scm/framework-ps.scm (write-preamble): new function.
4183 (write-preamble): load mac fonts via fondu, even if gs-font-load
4186 2006-05-03 Werner Lemberg <wl@gnu.org>
4188 * mf/GNUmakefile (FC_FIND): Fix typo.
4190 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4192 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4194 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4196 * stepmake/aclocal.m4: run python-config for crosscompiling
4199 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4200 -f png for HTML, TEXINFO formats.
4202 * input/tutorial/lbook-html-test.html: new file.
4204 * lily/include/tie-formatting-problem.hh (class
4205 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4206 [column, direction]. This fixes laissez vibrer ties.
4208 * flower/include/tuple.hh (struct Tuple2): new file.
4210 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4211 $(FCMATCH), only if $(NCSB_DIR) not set.
4213 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4215 * config.make.in (DOCUMENTATION): set FCMATCH.
4217 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4219 2006-05-03 Graham Percival <gpermus@gmail.com>
4221 * Documentation/user/ various: final round of reorg.
4223 * Documentation/user/instrument-notation.itely: some more
4224 fixes from Eduardo, thanks!
4226 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4228 * VERSION (PACKAGE_NAME): release 2.9.3
4230 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4232 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4234 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4236 * scm/define-grob-properties.scm (all-user-grob-properties):
4237 Correct typo, thanks to Eduardo.
4239 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4241 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4243 * buildscripts/lilypond-words.py (F): indent fix.
4245 * input/regression/tie-arpeggio-collision.ly: new file.
4247 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4248 function: store outlines per column rank.
4250 * lily/include/tie-configuration.hh (class Tie_configuration): add
4251 column_ranks_ to specification and configuration, to distinguish
4252 between ties for different heads in arpegiated chords.
4254 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4256 * *.py: more 4 space indents.
4258 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4260 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4262 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4264 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4266 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4268 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4270 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4272 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4274 * python/convertrules.py (conv): indent 4 for python files.
4276 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4278 * Documentation/user/changing-defaults.itely (Creating contexts):
4279 Clarify \new semantics.
4281 2006-04-28 Graham Percival <gpermus@gmail.com>
4283 * Documentation/user/ various: major new sections in the
4284 Learning manual, slight reorg elsewhere.
4286 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4288 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4290 * scm/framework-ps.scm (output-framework): remove PageMedia
4292 2006-04-27 Graham Percival <gpermus@gmail.com>
4294 * Documentation/user/ tweaks.itely, working.itely: new
4295 files, being more advanced "learning manual" chapters.
4297 * Documentation/user/ tutorial, putting, lilypond: reorg.
4299 2006-04-26 Graham Percival <gpermus@gmail.com>
4301 * input/regression/lyric-combine-polyphonic.ly: fixed test
4302 (no more "can't find context `one'" error).
4304 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4306 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4308 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4310 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4312 * lily/relocate.cc (read_relocation_dir): new function.
4314 2006-04-26 Graham Percival <gpermus@gmail.com>
4316 * Documentation/user/instrument-notation.itely: a few more fixes
4317 from Eduardo, thanks!
4319 * Documentation/user/README.txt: new file; contains info on
4320 style that used to be in lilypond.tely.
4322 * Documentation/user/ various: first round of doc reorg.
4324 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4325 graphic; this probably causes problems on some pdf
4326 viewers, notably Adobe Acrobat.
4328 2006-04-24 Graham Percival <gpermus@gmail.com>
4330 * Documentation/user/instrument-notation.itely: many alterations
4331 to Vocal music, from Eduardo Viera.
4333 2006-04-23 Graham Percival <gpermus@gmail.com>
4335 * Documentation/user/instrument-notation.itely: fix \new
4336 instead of \context problem.
4338 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4340 * lily/relocate.cc (expand_environment_variables): new function.
4342 (read_relocation_file): id.
4344 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4346 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4348 * ly/engraver-init.ly: remove old comments from TabVoice
4350 2006-04-20 Graham Percival <gpermus@gmail.com>
4352 * Documentation/user/instrument-notation.itely: added Erlend's
4353 latest doc patch, thanks!
4355 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4357 * lily/include/slur.hh:
4359 * lily/phrasing-slur-engraver.cc:
4360 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4361 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4362 Slur_engraver:: and putting it in
4363 Slur::auxiliary_acknowledge_extra_object ().
4365 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4367 * lily/note-collision.cc: fix a comment
4369 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4371 * stepmake/bin/add-html-footer.py: fix footer position in
4372 generated html files: before </body> and </html> tags.
4374 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4376 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4377 Earlier successive `make' commands finally compiled ok.
4379 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4381 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4383 * lily/include/stem-tremolo.hh:
4384 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4388 * lily/include/lookup.hh: add rotated_box ()
4390 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4392 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4393 been generated. Fixes "can't get `--help'" bug after make clean.
4395 * THANKS: alphabetize contributors.
4397 2006-04-17 Graham Percival <gpermus@gmail.com>
4399 * Documentation/user/instrument-notation.itely: added Erlend's
4400 tabs and banjo doc patch. Thanks!
4402 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4404 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4406 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4408 * scm/output-lib.scm: add some more predefined string tunings.
4410 * Documentation/user/instrument-notation.itely: and doc them.
4412 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4414 * ly/engraver.ly: Remove obsolete comments.
4416 * ly/gregorian-init.ly: Define default layout block.
4418 * input/puer-fragment.ly: Updated and extended.
4420 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4422 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4423 pdf conversion behaviour.
4425 * flower/file-name.cc (dir_name)
4426 (get_working_directory): Move from relocate.cc.
4428 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4430 * lily/relocate.cc: Encapsulate sys/stat.h in
4433 2006-04-14 Graham Percival <gpermus@gmail.com>
4435 * Documentation/user/ various: small updates from Cameron
4436 and Juergen, thanks!
4438 * Documentation/user/ various: small updates of my own.
4440 * THANKS: 2.7 -> 2.8.
4442 2006-04-11 Graham Percival <gpermus@gmail.com>
4444 * scm/define-context-properties.scm: typo.
4446 * Documentation/user/ : many more small updates.
4448 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4450 * scm/define-music-types.scm: disposed "docme".
4452 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4454 * lily/hairpin.cc: make niente circles a bit smaller.
4456 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4458 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4459 get-pfa and get-*-fonts targets.
4461 2006-04-10 Graham Percival <gpermus@gmail.com>
4463 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4464 music-glossary, programming-interface: more minor fixes
4467 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4469 * scm/define-context-properties.scm: another old \property update.
4470 This time tested for compiling!
4472 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4474 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4476 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4478 * scm/define-context-properties.scm (all-user-translation-properties):
4479 * Documentation/user/global.itely (Page formatting): Compile fix.
4481 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4483 * Documentation/user/advanced-notation.itely (Polymetric
4484 notation): Update the example to use the "+" symbol and add link
4485 to input/test/compound-time.ly.
4487 2006-04-08 Graham Percival <gpermus@gmail.com>
4489 * scm/define-grob-properties.scm: clarify docs for #'direction.
4491 * scm/define-context-properties.scm: update old \property override.
4493 * Documentation/user/ advanced-notation, global, lilypond-book:
4494 more minor doc updates.
4496 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4498 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4500 * scm/backend-library.scm (search-gs): oops.
4502 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4504 * scripts/lilypond-book.py (output): use base, not filename for href.
4506 * scm/backend-library.scm: only look for gs.
4508 * scripts/lilypond-book.py (output): fix printfilename.
4510 * lily/parser.yy (music_function_musicless_prefix): fold together
4511 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4513 * lily/slur.cc (print): only set font-size if not set yet.
4515 * lily/slur-configuration.cc (add_score): improved layout of debug
4518 2006-04-05 David Feuer <David.Feuer@gmail.com>
4520 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4521 (draw_circle): Hopefully fixed regression.
4522 Improved documentation for several procedures.
4524 2006-03-04 Werner Lemberg <wl@gnu.org>
4526 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4528 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4530 * scripts/musicxml2ly.py (bindir): add dynamic
4533 2006-04-04 Graham Percival <gpermus@gmail.com>
4535 * Documentation/user/ basic-notation, advanced-notation, putting,
4536 instrument-notation, invoking, lilypond, THANKS: another ream of small
4537 fixes from the Doc Helpers.
4539 2006-04-03 David Feuer <David.Feuer@gmail.com>
4541 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4543 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4545 * Cleaned up interfaces between PostScript and Scheme, and moved
4546 computations from PostScript to Scheme:
4548 * music-drawing-routines.ps
4549 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4550 with stroke_and_fill throughout.
4551 (euclidean_length, print_letter, draw_box): Deleted unused
4552 procedures. If someone needs draw_box, implement it using
4553 draw_round_box; don't duplicate code.
4554 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4555 Refactored/cleaned up interfaces.
4558 * output-ps.scm: reordered arguments to PostScript functions to
4559 match new interfaces
4560 (glyph-string): Rewrote glyph-string.
4561 (grob-cause): Replaced string-append with format.
4562 (repeat-slash): Rewrote to do computation here.
4563 (round-filled-box): Rewrote to do computation here.
4565 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4567 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4569 * stepmake/stepmake/toplevel- targets.make: print help info about
4572 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4574 * input/regression/hairpin-circled.ly: new file
4576 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4578 * lily/hairpin.cc (print): add support for circled tip
4580 * scm/define-grob-properties.scm: add circled-tip parameter
4582 * scm/define-grobs.scm: init circled-tip to false
4584 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4586 * scm/music-functions.scm (quote-substitute): set
4589 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4591 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4594 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4596 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4598 2006-03-31 David Feuer <david.feuer@gmail.com>
4600 * scm/framework-ps.scm:
4602 * scm/output-ps.scm: glyph-string now produces smaller, more
4603 readable, and probably faster PostScript. Several findfont
4604 scalefont setfont instances changed to selectfont
4605 Hacked-up string-appends changed to formats.
4607 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4609 2006-03-30 Graham Percival <gpermus@gmail.com>
4611 * scm/lily-library.scm: make "no version" warning message more polite.
4613 * lily/music.cc: add double quotes to failed octave check.
4615 * Documentation/user/ advanced-notation, changing-defaults,
4616 instrument-notation, invoking, music-glossary: whole bunch of minor
4619 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4621 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4622 $(buildscriptdir) iso. depth.
4624 * VERSION (PACKAGE_NAME): release 2.9.1
4626 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4628 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4630 * VERSION (PATCH_LEVEL): bump version number.
4632 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4635 * lily/pango-font.cc (pango_item_string_stencil): use
4638 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4639 $(outdir)/emmentaler-%.svg): remove canary.
4641 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4642 glyphnames if we have a ttf font.
4644 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4646 * Documentation/user/advanced-notation.itely (Font selection):
4647 Corrected reference to the font-family-override.ly example.
4649 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4651 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4652 stem-tremolo object in the stem (or else the stem might not be
4655 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4657 * lily/ttf.cc (print_trailer): only print existing glyphs.
4659 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4661 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4662 position the tremolo based on the position of the notehead.
4664 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4665 notes and update the texidoc line with the new positioning rules.
4667 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4669 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4671 * scripts/lilypond-book.py (Module): set default for linewidth if
4674 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4676 * VERSION (PACKAGE_NAME): release 2.9.0.
4678 * input/regression/stem-tremolo-position.ly: new file.
4680 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4682 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4684 * lily/stem-tremolo.cc (print): position
4685 the tremolo depending only on the end of the stem
4686 and not on the notehead
4687 (raw_stencil): center, on the middle staff line, the
4688 flag that is closest to the end of the stem (previously
4690 (calc_width): add this callback to shorten a tremolo when
4691 it is beamed or it is stemup with a flag
4692 (style): add this callback to make a tremolo rectangular when
4693 it is beamed or it is stemup with a flag
4694 (rotated_box): this is like Lookup::beam but makes a rotated
4695 rectangle instead of a parallelogram
4697 * lily/stem.cc (calc_stem_info): make sure the stem
4698 is long enough to fit the tremolo
4699 (calc-length): reduce the length of tremolo stems since the
4700 tremolo code is now capable of better positioning
4702 * scm/define-grobs.scm: make calc_width the default beam-width
4703 callback for stem-tremolo and add the style callback
4705 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4707 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4710 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4712 * lily/ttf.cc (make_index_to_charcode_map): restore old
4715 2006-03-28 Werner Lemberg <wl@gnu.org>
4717 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4719 2006-03-28 Graham Percival <gpermus@gmail.com>
4721 * THANKS: update for 2.9, add section for Documentation helpers.
4723 * Documentation/topdocs/NEWS.tely: compile fix.
4725 * Documentation/user/ basic-notation, global, advanced-notation,
4726 examples.itely: minor fixes from mailist.
4728 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4730 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4733 * lily/ttf.cc (print_trailer): use it.
4735 * lily/pango-font.cc (get_unicode_name): new function.
4737 * lily/ttf.cc (make_index_to_charcode_map): move function from
4739 (print_trailer): substitute uniXXXX name if applicable.
4741 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4742 (pango_item_string_stencil): use it to generate uniXXXX names.
4744 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4745 note heads, for uniform widths in shape note output.
4746 (overdone_heads): hmm. remove them again.
4748 * scripts/lilypond-book.py (output): add links to filenames.
4750 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4752 * lily/note-collision.cc (get_clash_groups): only consider when
4753 Note_column::dir <> CENTER.
4755 * scripts/lilypond-book.py (get_option_parser): init output_name
4758 2006-03-24 Graham Percival <gpermus@gmail.com>
4760 * Documentation/topdocs/NEWS.tely: add @end itemize
4762 * Documentation/user/ global, advanced-notation: minor
4765 2006-03-23 Graham Percival <gpermus@gmail.com>
4767 * Documentation/user/ lilypond.tely, music-glossary,
4768 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4770 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4772 * mf/GNUmakefile: don't install .enc files.
4774 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4776 * VERSION (PATCH_LEVEL): bump to 2.9.0
4778 2006-03-22 Graham Percival <gpermus@gmail.com>
4780 * Documentation/user/advanced-notation.itely: minor fixes
4783 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4785 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4787 * branch lilypond_2_8
4789 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4791 * scripts/lilypond-book.py (samefile): new function, for windoze
4794 2006-03-21 Graham Percival <gpermus@gmail.com>
4796 * ly/engraver-init.ly: add info about StaffGroup.
4798 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4800 * input/regression/stem-direction-context.ly: idem.
4802 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4806 * input/regression/page-layout-twopass.ly: comment out \markup so
4809 * lily/instrument-name-engraver.cc (finalize): add to instrument
4810 name global System. This also fixes chopped instrument names, but
4811 doesn't crash when there are slurs/beams.
4813 * lily/slur-configuration.cc (add_score): disallow negative slur
4816 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4818 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4820 * lily/instrument-name-engraver.cc (process_music): kludge: add
4821 InstrumentName spanner to axis group of left bound. Fixes chopped
4822 off instrument names in EPS images.
4824 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4826 * scripts/abc2ly.py (option_parser): update to 2.7.40
4828 2006-03-20 Graham Percival <gpermus@gmail.com>
4830 * THANKS: move small doc contributors to SUGGESTIONS.
4832 * Documentation/user/ basic-notation, advanced-notation,
4833 global: small changes from mailist.
4835 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4837 * Documentation/user/advanced-notation.itely (Text marks): update
4838 for new rehearsalMarkAlignSymbol convention.
4840 * VERSION (PATCH_LEVEL): bump version.
4842 * input/test/instrument-name-align.ly: new file.
4844 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4846 * input/test/instrument-name-align.ly: new file. Document how to
4847 align instrument names.
4849 * lily/mark-engraver.cc: remove properties.
4851 * scm/define-context-properties.scm
4852 (all-user-translation-properties): remove align symbol properties
4853 for barnumber/reh. mark.
4855 * lily/break-align-interface.cc (self_align_callback): new
4856 interface, new function. Look at complete alignment. This handles
4857 tunable break alignments in case break-align-symbols are missing.
4859 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4861 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4863 * python/convertrules.py (conv): mark/bar number alignment rule.
4865 * lily/break-align-interface.cc (calc_positioning_done): also
4866 store offset from last visible break-alignment to its
4867 neighbor. This makes alignment on non-visible objects more reliable.
4869 * po/lilypond.pot (Module): ran po-replace.
4871 * input/regression/tie-single-manual.ly (Module): new file.
4873 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4874 look at has_manual_position_.
4875 (from_ties): set has_manual_position_ if tie has staff-position set.
4877 * lily/tuplet-bracket.cc (calc_positions): idem.
4879 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4882 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4884 * scm/define-markup-commands.scm (smallCaps): new markup command
4885 for turning a text to small caps using smaller font size and upper
4888 2006-03-17 Graham Percival <gpermus@gmail.com>
4890 * Documentation/user/ examples, instrument-notation,
4891 advnaced-notation: minor fixes from mailist.
4893 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4895 * Documentation/user/tutorial.itely (First steps): change example
4898 2006-03-17 Graham Percival <gpermus@gmail.com>
4900 * Documentation/user/ examples, advanced: minor changes from mailist.
4902 * THANKS: add Geoff Horton, for documentation stuff.
4904 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4906 * python/lilylib.py (system): revert have_select kludge.
4908 * Documentation/user/tutorial.itely (Commenting input files):
4909 update version numbers in doc.
4911 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4912 bound-padding to multi-measure-interface
4914 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4916 * input/test/engraver-example.ily: update version number.
4918 * VERSION (PACKAGE_NAME): release 2.7.39
4920 * lily/note-spacing.cc (get_spacing): heighten threshold where
4921 accidentals/arpeggios influence previous spacing fully.
4923 * lily/rest.cc (y_offset_callback): only use direction if
4924 staff-position wasn't set before.
4926 * lily/bar-number-engraver.cc: add support for
4927 barNumberAlignSymbol.
4928 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4930 * lily/pointer-group-interface.cc (set_ordered): new function.
4931 (add_unordered_grob): new function.
4933 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4934 to ordered, unless the opposite has been proved. This fixes
4935 random reordering of large object groups across linebreaks,
4938 * lily/main.cc (do_chroot_jail): printf format fix.
4940 * lily/tie-formatting-problem.cc (generate_configuration):
4941 multiply y-shift for dot with direction.
4943 * scm/define-markup-commands.scm (note-by-number): put (magstep
4944 size) in y-attach too.
4946 * Documentation/topdocs/NEWS.tely (Top): show override.
4948 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4949 direction for stems.
4951 2006-03-15 Graham Percival <gpermus@gmail.com>
4953 * Documentation/user/ changing-defaults, global: minor
4956 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4958 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4960 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4961 breakable items after uniformly stretched notes.
4963 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4964 outline with outer edge of note heads. This prevents infinity
4965 problems with tied whole notes.
4967 * scripts/lilypond-book.py (do_file): use os.popen
4969 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4971 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4973 * Documentation/user/invoking.itely: Add ragged-right to bug report
4976 2006-03-14 Graham Percival <gpermus@gmail.com>
4978 * Documentation/user/global.itely: small fix from mailist.
4980 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4982 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4983 file descriptor returned by tempfile.mkstemp() when writing
4984 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4987 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4989 * po/fi.po: newline bugfix.
4991 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4993 * scm/paper.scm (paper-alist): Rounding fixes.
4995 2006-03-13 Graham Percival <gpermus@gmail.com>
4997 * Documentation/user/ changing-defaults, instrument-notation,
4998 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5000 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5004 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5006 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5009 * python/lilylib.py (print_environment): move ps_page_count to
5012 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5014 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5016 * scm/framework-ps.scm (embed-document): new function. Use to
5019 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5021 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5023 * Documentation/user/instrument-notation.itely (Setting simple
5024 songs): Added \book{...} around the full example, so the separate
5025 markups are included in the printed example.
5027 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5029 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5032 * python/lilylib.py (system): rewrite system() using
5033 subprocess. Remove >& redirection trickery.
5035 2006-03-11 Graham Percival <gpermus@gmail.com>
5037 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5038 notation-appendices.itely: minor fixes from mailist.
5040 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5042 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5043 unsplit man also needs images.
5045 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5047 * VERSION (PACKAGE_NAME): 2.7.38 released.
5049 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5051 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5054 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5056 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5057 respects the Score.skipTypesetting property.
5059 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5061 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5062 Prolog. No %%EOF after CFF file.
5064 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5066 * lily/constrained-breaking.cc (get_max_systems): used to return a
5068 (combine_demerits): use pointers to reduce copying data
5069 (calc_subproblem): idem
5070 (get_page_penalty): add page turn penalties
5072 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5074 * Documentation/user/invoking.itely (Invoking lilypond): better
5075 explanation of -e usage.
5077 * lily/main.cc (main_with_guile): don't append to
5078 init_scheme_code_string
5080 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5082 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5084 * scripts/convert-ly.py (do_options): don't print help for
5087 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5088 @code and @example. Update from texinfo.tex from CVS.
5090 2006-03-08 Graham Percival <gpermus@gmail.com>
5092 * Documentation/user/scheme-tutorial.itely: clarifies distances
5093 measured in staff-spaces.
5095 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5097 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5098 consider[k] is true.
5100 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5102 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5103 consider columns that have originals. Unifies spacing for mm
5104 rests around line breaks.
5106 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5107 (set_text_rods): idem.
5108 (calculate_spacing_rods): new function: share code between
5109 set_text_rods and set_spacing_rods.
5110 (set_text_rods): take extents of bounds into account.
5112 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5114 * Documentation/user/basic-notation.itely (Writing music in
5115 parallel): don't use relative.
5117 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5119 * ly/music-functions-init.ly (Module): add shiftDurations
5121 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5123 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5125 * ly/engraver-init.ly: init vocalName to nil.
5127 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5129 * scm/music-functions.scm (music->make-music): bugfix,
5130 KeyChangeEvents are now handled correctly.
5132 * scripts/lilypond-book.py: Add --debug option.
5134 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5136 * python/lilylib.py: add tempfile.
5138 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5140 * VERSION (PACKAGE_NAME): release 2.7.37
5142 * python/lilylib.py (ps_page_count): remove make_ps_images().
5143 (ps_page_count): remove mkdir_p
5144 (system): remove cleanup_temp.
5145 (exit): remove lilypond_version_(check)
5146 (error_log): remove pseudo_filter_p
5151 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5154 * lily/accidental-engraver.cc (make_standard_accidental): only add
5155 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5157 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5158 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5159 Make incompatibilities.
5161 * scm/output-ps.scm (grob-cause): replace backslashes by /
5162 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5164 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5166 * cygwin/GNUmakefile: Install fixes.
5168 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5170 * lily/note-head.cc (head::get_balltype): Compile fix.
5172 * flower/file-name.cc (dos_to_posix): Flower string fix.
5174 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5176 * python/lilylib.py: pychecker cleanups.
5178 * scripts/lilypond-book.py
5179 (Lilypond_snippet.output_print_filename): pychecker cleanups
5181 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5183 * python/lilylib.py (underscore): remove identify() , warranty()
5185 * ps/music-drawing-routines.ps: change Border routine for GSView
5188 * lily/stem.cc (height): use quantize-positions. This triggers
5189 set_stem_lengths, so scripts on beamed stems are handled correctly.
5191 * lily/side-position-interface.cc (aligned_side): check if edges
5192 of script are inside staff. Fixes accent of edge of the staff.
5194 * input/regression/staccato-pos.ly: more examples.
5196 * stepmake/aclocal.m4 (depth): fix bashism.
5198 * lily/lyric-combine-music-iterator.cc: move from
5199 new-lyric-combine-iterator.cc
5200 (process): add pending_grace_lyric_ member to delay lyrics on
5203 * lily/system-start-text.cc (print): suicide if we don't have any
5204 elements. Fixes hara kiri'd instrument names.
5206 * scripts/mup2ly.py (Module): remove.
5208 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5210 * Documentation/user/global.itely (A single music expression):
5211 close @lilypond properly
5213 * lily/volta-bracket.cc (modify_edge_height): change from
5214 after_line_breaking_callback. Suicide last bracket if appropriate.
5216 * python/lilylib.py: strip getopt support
5218 * scripts/etf2ly.py (do_options): use optparse
5220 * scripts/midi2ly.py: optparse, strip lilylib copy.
5222 * scripts/abc2ly.py (voices): use optparse.
5224 * stepmake/stepmake/generic-vars.make: new function absdir.
5226 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5228 * scripts/lilypond-book.py (find_file): use global_options for
5231 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5234 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5236 * python/lilylib.py (get_global_option): ughness for extracting
5237 global options from lilylib.
5238 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5240 * scripts/lilypond-book.py (get_option_parser): use optparse for
5241 option handling. Put options in global_options variable.
5243 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5245 * Documentation/index.html.in: clarify.
5247 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5249 * scm/layout-page-layout.scm (write-page-breaks): add a
5250 music-system-heights property to the page layout output.
5252 * scm/page.scm (make-page-stencil): take footer into account when
5253 computing the 'space-left page property
5254 (annotate-space-left): take footer into account when annonating
5257 2006-02-28 Graham Percival <gpermus@gmail.com>
5259 * Documentation/user/ advanced-notation, global: more (final)
5260 docs for music expressions, removed special fermatas.
5262 2006-02-27 Graham Percival <gpermus@gmail.com>
5264 * Documentation/user/ basic-notation, global: minor changes
5267 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5269 * scm/framework-ps.scm:
5270 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5271 layer for inf? and nan? from framework-ps to lily-library.
5273 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5275 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5276 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5278 * buildscripts/substitute-encoding.py (Module): remove file.
5280 * mf/GNUmakefile: more PFA strippage.
5282 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5284 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5287 * scm/framework-ps.scm: remove font name munging.
5289 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5291 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5293 * scm/markup.scm (define-markup-command): change
5294 def-markup-command to define-markup-command
5296 * scm/music-functions.scm (define-music-function): change
5297 def-music-function to define-music-function.
5299 * python/convertrules.py (conv): rules for def-music-function
5300 and def-markup-commands
5302 * Documentation/user/programming-interface.itely,
5303 input/no-notation/display-lily-tests.ly,
5304 input/regression/lily-in-scheme.ly,
5305 input/regression/markup-user.ly,
5306 input/regression/music-function.ly, input/regression/tie-chord.ly,
5307 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5308 ly/gregorian-init.ly: use new macro names (define-music-function,
5309 define-markup-command).
5311 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5313 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5314 (output): add comments to lp-book latex output.
5316 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5319 2006-02-23 Graham Percival <gpermus@gmail.com>
5321 * Documentation/user/ tutorial, global: minor changes.
5323 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5325 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5326 blocks (for make 3.80)
5328 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5329 \notemode so that user should not have to explicitely type it.
5331 * scm/define-music-display-methods.scm: various
5332 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5335 * input/no-notation/display-lily-tests.ly: new tests for
5336 \applyOutput and \applyContext
5338 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5340 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5341 changed it slightly so that the number of systems returned by
5342 solve () will be the same as the last value passed to resize
5343 (). I've also added more documentation, removed casts, fixed style
5344 problems and put in some recovery if constraints aren't satisfied."
5346 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5348 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5349 for emacs < 22 compatibility.
5350 (count-rexp): Use it.
5351 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5352 substring juggling (Milan Zamazal).
5354 2006-02-23 Graham Percival <gpermus@gmail.com>
5356 * Documentation/user/ basic-notation, advanced-notation,
5357 global.itely, invoking.itely, tutorial,itely:
5358 minor fixes from mailist.
5360 * scm/define-markup-commands.scm: improve docs of \filled-box.
5362 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5364 * Documentation/index.html.in: changes concern the previous release.
5366 * input/regression/+.ly: cultivate typographical terminology.
5368 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5370 * scm/define-grob-interfaces.scm (parentheses-interface): add
5371 padding to parentheses-interface.
5373 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5374 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5376 * VERSION (PATCH_LEVEL): release 2.7.36
5378 * lily/slur.cc: add avoid-slur (ugh.)
5380 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5381 intersection gets smaller. This fixes slurs over extreme points.
5383 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5384 stems with neutral-direction set.
5386 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5388 * lily/open-type-font.cc (load_table): format error.
5390 * lily/change-iterator.cc (process): format fix.
5392 * flower/include/international.hh (_f): idem.
5394 * flower/include/std-string.hh: add format printf attribute.
5396 * scm/define-grobs.scm (all-grob-descriptions): height of all
5397 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5399 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5402 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5404 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5406 * input/regression/: upgraded syntax for some files.
5408 * THANKS: Add bughunters.
5410 2006-02-22 Graham Percival <gpermus@gmail.com>
5412 * Documentation/user/ invoking.itely, advanced-notation.itely,
5413 global.itely: long-awaited "let's make chapter 10 not suck"
5414 update. Rearrange chapter 10; now called "global issues",
5415 addresses file structure, etc. Some info from other files
5416 moved into global.itely.
5418 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5420 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5421 catch trill-span-event notes.
5423 * Documentation/user/examples.itely (Ancient notation templates): typo.
5426 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5428 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5430 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5432 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5434 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5435 froum Laissez_vibrer_engraver.
5437 * ly/declarations-init.ly (repeatTie): add \repeatTie
5439 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5441 * scm/define-grob-properties.scm (all-user-grob-properties): add
5442 head-direction property.
5444 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5445 from_lv_ties. Take head direction argument.
5447 * lily/semi-tie-column.cc: rename from
5448 laissez-vibrer-tie-column.cc. Rename class too.
5450 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5453 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5455 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5457 (find_breaks): idem.
5459 2006-02-21 Graham Percival <gpermus@gmail.com>
5461 * Documentation/user/advanced-notation.itely: fixed make-moment]
5464 * Documentation/user/basic-notation.itely: more clarification to
5467 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5469 * lily/include/constrained-breaking.hh (class
5470 Constrained_breaking): new file.
5472 * lily/constrained-breaking.cc (resize): new file.
5474 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5476 * Documentation/user/advanced-notation.itely (Clusters): insert
5479 * lily/tie-column.cc (calc_positioning_done): support for
5482 * lily/tie-formatting-problem.cc
5483 (generate_extremal_tie_variations): factor out.
5484 (score_ties_configuration): annotate all tie
5485 (print_ties_configuration): new routine.
5486 (generate_configuration): nudge extremal ties outside of the head
5488 (score_ties_configuration): oops. convert to staff-space before
5489 determining position symmetry.
5491 2006-02-20 Graham Percival <gpermus@gmail.com>
5493 * Documentation/user/*-notation.itely: misc minor editing,
5494 shifting doc sections around.
5496 * Documentation/user/*-notation-itely, global.itely,
5497 changing-defaults.itely: added new stuff from NEWS.
5499 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5503 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5505 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5506 lilypond --verbose for lp-book.
5508 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5509 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5511 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5512 $(buildscript-dir) iso. absolute depth.
5514 * buildscripts/genicon.py (dir): thinko.
5516 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5518 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5520 * scm/output-lib.scm: swap darkcyan/darkyellow
5522 * THANKS: Add bughunters.
5524 2006-02-19 Graham Percival <gpermus@gmail.com>
5526 * Documentation/user/programming-interfaces.itely: fixed example.
5528 * Documentation/user/instrument-notation.itely: fix @{ @}.
5530 * scm/script.scm: add avoid-slur for \open.
5532 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5534 * lily/tie-formatting-problem.cc (score_configuration): use
5535 sliding score for min-length.
5537 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5538 spaghetti for icons.
5540 * buildscripts/genicon.py (program_name): new file.
5542 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5544 (generate_configuration): for small ties, also look for collisions
5545 at Y + DIR*h + DELTA_Y.
5546 (get_variations): consider variation for dot positions too.
5548 * lily/side-position-interface.cc (aligned_side): take abs for
5549 quantized rounded position. Fixes tenuto below staff.
5551 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5552 markers when necessary.
5554 * lily/program-option.cc (internal_set_option): add
5555 strict_infinity_checking option.
5557 * scm/output-lib.scm (cyan): swap yellow and cyan.
5559 2006-02-19 Graham Percival <gpermus@gmail.com>
5561 * darwin.patch: trivial linenumber update.
5563 * Documentation/user/ {various}: `\context foo = named' changed
5564 to `\new foo = "name"' in docs.
5566 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5568 * scm/stencil.scm (annotate-y-interval): use it.
5570 * scm/lily-library.scm (interval-sane?): new function.
5572 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5575 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5578 * flower/include/std-vector.hh (iterof): add iterof macro.
5580 * lily/enclosing-bracket.cc (width): new function.
5582 * lily/align-interface.cc (align_elements_to_extents): reinstate
5585 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5587 * Documentation/index.html.in: fix spelling: thankyous.
5589 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5591 * lily/lyric-hyphen.cc: typo.
5593 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5595 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5596 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5599 * VERSION: release 2.7.35
5601 * lily/beam.cc (get_default_dir): oops. Take abs () for
5603 (get_default_dir): use extreme position criterion only in absence
5604 of forced stem directions.
5606 * VERSION (PATCH_LEVEL): bump VERSION.
5608 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5609 dependencies. Necessary for -jX builds.
5611 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5613 * lily/relocate.cc (setup_paths): Yet another const fix.
5615 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5617 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5619 * lily/relocate.cc (setup_paths): oops.
5621 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5623 * Documentation/index.html.in: order links: html before PDF.
5625 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5627 * lily/tie-column-format.cc (Module): remove.
5629 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5631 * lily/text-spanner.cc (print): idem.
5633 * lily/dynamic-text-spanner.cc (print): only print line if longer
5636 * lily/auto-change-iterator.cc (change_to): formatting.
5638 * lily/beam.cc (get_default_dir): take extreme note head as input
5641 * lily/tie.cc (get_default_dir): only look directions for visible
5644 * lily/side-position-interface.cc (aligned_side): oops. Don't
5645 mutiply with direction. This fixes quantized (staccato, tenuto)
5646 scripts below notes.
5648 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5649 direction. Fixes c-lyrics-center-align.ly
5651 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5653 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5656 * lily/std-string.cc:
5657 * lily/include/std-vector.hh (split_string): Move and rename from
5658 lily/include/misc.hh, lily/misc.cc. Update callers.
5660 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5662 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5664 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5666 * flower/test-file.cc: New file.
5668 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5671 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5673 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5675 * flower/include/file-storage.hh: remove file.
5677 * lily/include/midi-item.hh (class Midi_track): idem.
5679 * lily/include/source.hh (class Sources): idem.
5681 * lily/include/performance.hh (class Performance): use vector
5684 * flower/include/cons.hh (class Cons): remove file.
5686 * flower/include/flower-proto.hh: remove template cruft.
5688 * lily/include/font-metric.hh: use size_t not vsize for indices.
5690 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5693 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5695 * lily/include/paper-book.hh (class Paper_book):
5696 make get_system_specs() public.
5698 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5699 the force=10000 case if we don't have a current-best.
5701 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5704 * flower/include/flower-proto.hh: remove outdated templates.
5706 * scm/page.scm: use annotate-spacing
5708 2006-02-15 Graham Percival <gpermus@gmail.com>
5710 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5712 * THANKS: moved Erlend Aasland to contributors.
5714 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5716 * config.hh.in: remove HAVE_PANGO_16
5718 * lily/tuplet-bracket.cc (calc_positions): multiply with
5719 staff-space for beam case. This fixes tuplets+beams on scaled
5722 * config.hh.in: remove all Kpathsea related defines.
5724 * lily/dot-column.cc (side_position): reach stem via dots->
5725 head->stem. Inspect all stems for dot collisions.
5727 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5730 * lily/bar-number-engraver.cc (process_music): document function
5733 * lily/score.cc (default_rendering): add pscore, not systems
5736 * lily/paper-book.cc (get_system_specs): separate generation of
5739 * flower/include/std-vector.hh: don't include config.hh
5741 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5743 * flower/include/std-vector.hh: Better wrapper compatibility with
5746 * flower/include/flower-proto.hh: Remove cheap forward declaration
5749 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5751 2006-02-14 Graham Percival <gpermus@gmail.com>
5753 * Documentation/user/invoking.itely: add warning about command line.
5755 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5757 * lily/include/lily-proto.hh: add Prob, rm Page.
5759 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5761 * VERSION: release 2.7.34
5763 * lily/relocate.cc (framework_relocation): show canary if
5764 GHOSTSCRIPT_VERSION undefined.
5766 * GNUmakefile.in: remove $(VERSION) symlink.
5768 * lily/relocate.cc (setup_paths): add +
5770 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5772 * Documentation/index.html.in: specify sizes for all big HTML pages.
5774 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5776 * config.hh.in: remove @FRAMEWORKDIR@
5778 * lily/system-start-text.cc (get_stencil): new file: separate out
5779 system-start-delimiter text support.
5781 * input/**ly: replace \context with \new where appropriate.
5785 * lily/slur-scoring.cc (get_base_attachments): use
5786 robust_relative_extent. This fixes problems with empty paper-columns.
5788 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5790 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5792 * scm/define-music-properties.scm (all-music-properties):
5793 create-new property.
5795 * lily/context-specced-music-iterator.cc (construct_children):
5796 inspect 'create-new property iso. magical $uniqueContextId context
5799 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5801 * lily/context-key-manager.cc (Module): new file. Encapsulate
5802 object key generation.
5804 * lily/include/context-key-manager.hh (Module): new file.
5806 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5808 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5811 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5813 (reloc_b): excise --enable-framework-dir
5815 * lily/relocate.cc (framework_relocation): use getenv
5816 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5818 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5820 * flower/include/std-string.hh:
5821 * flower/include/std-vector.hh: Finish std:: conversion; move
5822 flower extensions from std:: namespace. Update users.
5824 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5825 their expansion to vector<*>. Update users.
5827 2006-02-10 Graham Percival <gpermus@gmail.com>
5829 * Documentation/user/invoking.itely: add example to File structure.
5831 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5832 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5834 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5836 * ly/paper-defaults.ly: typo.
5838 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5839 set_parent() for parentheses. This will make it show up in bbox
5842 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5843 ly:grob-common* functions.
5845 * lily/grob-scheme.cc (LY_DEFINE):
5846 ly:grob-common-refpoint-of-array: new function
5847 ly:grob-common-refpoint: new function
5848 ly:grob-relative-coordinate: new function
5850 * lily/instrument-name-engraver.cc (process_music): use
5851 Text_interface::is_markup(). This fixes \markup on instrument names.
5853 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5856 * lily/slur.cc (print): idem.
5858 * lily/tie.cc: add line-thickness for ties.
5860 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5862 * scm/output-svg.scm: Document diversion from GNU coding standards
5863 as a workaround for a bug in Microsoft Internet Explorer.
5865 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5867 * lily/instrument-name-engraver.cc (process_music): use
5868 is_markup() iso. is_string()
5870 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5872 * lily/percent-repeat-engraver.cc (process_music): only look at
5873 main_part_ for % repeats.
5875 * lily/stem-tremolo.cc (get_beam_translation): new function.
5876 (calc_slope): new function.
5877 (height): don't use real slope.
5879 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5881 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5882 new connect-to-neighbor, control-points and staff-padding
5883 properties to make ligature brackets showing up again.
5885 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5887 * VERSION: release 2.7.33
5889 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5892 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5893 remove applyOutput example.
5894 (Objects connected to the input): document \tweak, \parenthesize
5896 * lily/relocate.cc (prefix_relocation): allow "current"
5897 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5898 changing VERSION in a lily tree less painful.
5900 * input/regression/parenthesize.ly: new file.
5902 * scm/output-lib.scm (parenthesize-element): new function.
5904 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5906 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5908 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5909 cause: accidentals are caused by note heads, not note events.
5911 2006-02-08 Graham Percival <gpermus@gmail.com>
5913 * darwin.patch: small patch from Erlend, thanks!
5915 * Documentation/user/basic-notation.itely: add stem-neutral example.
5917 * Documentation/user/putting.itely: clarifications.
5919 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5921 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5922 note, add more guidelines to what should go into NEWS.
5924 * input/sakura-sakura.ly: document how to override font.
5926 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5928 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5930 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5932 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5934 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5935 convertrules. Add explicit grouping, needed for python2.2.
5937 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5939 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5941 2006-02-07 Graham Percival <gpermus@gmail.com>
5943 * Documentation/user/global.itely: fix line-width in (text) docs.
5945 * Documentation/user/lilypond-book.itely: same.
5947 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5949 * VERSION (PACKAGE_NAME): release 2.7.32
5951 * Documentation/topdocs/NEWS.tely (Top): document new variable
5954 * flower/include/array.icc (Message): remove file.
5956 * flower/include/std-vector.hh: make sure vsize and VPOS are
5957 defined for binary_search_bounds().
5959 * flower/std-string.cc (std): add to_string(long unsigned).
5961 * configure.in (gui_b): excise std_string option.
5962 (gui_b): excise std_vector option.
5964 * flower/string.cc (Module): excise flower array & string
5966 * flower/include/std-string.hh: excise flower string.
5968 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5970 * python/convertrules.py (lilypond_version_re_str): require
5971 only numbers and dots in \version string.
5973 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5975 * lily/system-start-delimiter.cc (print): allow style = text too.
5977 * lily/system-start-delimiter-engraver.cc
5978 (acknowledge_system_start_text): new function, also add add to
5979 support of system-start-text (instrument names). This fixes
5980 instrument names on piano staves.
5982 * lily/instrument-name-engraver.cc: rewrite. Use
5983 system-start-delimiter approach. This save memory and cpu.
5985 * scm/define-grobs.scm (all-grob-descriptions): remove
5986 instrument-name from break-alignment.
5988 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5990 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5992 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5995 * configure.in (std_vector): On by default.
5997 * lily/include/font-metric.hh:
5998 * lily/include/tfm-reader.hh:
5999 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6002 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6004 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6006 * VERSION (PACKAGE_NAME): 2.7.31
6008 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6009 EPS edge at 0, but take minimum with left-overshoot. This fixes
6010 cut off system start delims.
6012 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6013 hack: add to axis group if not added yet. This fixes hara kiri'd
6016 * lily/hara-kiri-group-spanner.cc
6017 (force_hara_kiri_in_y_parent_callback): fix signatures.
6019 * lily/hairpin.cc (print): check next hairpin to see whether or
6020 not to be continuing.
6022 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6024 * Remove trailing whitespace from makefiles.
6026 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6029 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6031 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6033 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6035 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6037 * configure.in: Use it.
6039 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6041 * scm/music-functions.scm (pitch-of-note): new function.
6043 * ly/music-functions-init.ly: add \octave and \addquote
6045 * lily/parser.yy (music_function_chord_body): softcode \octave.
6046 (lilypond_header): softcode \addquote
6048 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6050 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6051 array.hh, parray.hh at all. Getting ready to flip the
6054 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6056 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6059 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6061 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6063 * flower/include/array.hh: typo.
6065 2006-02-02 Graham Percival <gpermus@gmail.com>
6067 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6069 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6071 * flower/include/pqueue.hh: Derive from std::vector.
6073 * flower/include/parray.hh: Conform to std::vector interface.
6076 2006-02-02 Graham Percival <gpermus@gmail.com>
6078 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6080 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6082 * flower/file-path.cc (is_file): remove if 0 section.
6084 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6085 selecting afii61352.
6087 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6089 * flower/include/std-vector.hh (boundary): Oops, reverse.
6091 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6092 remove superfluous `d'.
6094 * flower/include/std-vector.hh (boundary, top): Detach from class.
6095 Remove empty vector shell.
6097 * flower/include/array.hh (reverse, swap): Detach from class.
6100 * flower/include/std-vector.hh
6101 * flower/include/array.hh (concat): Globally change to insert ().
6103 * flower/include/std-vector.hh
6104 * flower/include/parray.hh
6105 * flower/include/array.hh (elem, elem_ref): Globally replace by
6108 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6110 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6112 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6113 anticipate on identifier substitutions.
6115 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6117 * flower/include/std-vector.hh (insert): Remove, replace by
6118 std::vector interface. Update callers.
6120 * flower/include/array.icc (insert): Change signature to
6121 match std::vector interface.
6123 * flower/include/array.icc (vector_sort): Bugfix.
6125 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6127 * lily/parser.yy (output_def_head_with_mode_switch): new
6128 production. Result: dashes and underscores may be used in the
6131 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6133 * python/convertrules.py (conv): oops. One slash too much.
6135 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6137 * flower/include/std-vector.hh (sort): Remove, replace by
6138 ::vector_sort. Update callers.
6140 * flower/include/std-vector.hh (slice): Remove. Update callers.
6143 * flower/test-std.cc (vector_sort): New test.
6145 2006-02-01 Graham Percival <gpermus@gmail.com>
6147 * Documentation/user/putting.itely: fixes from Erik.
6149 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6151 * flower/test-std.cc: Add simple unit test for vector migration.
6153 * stepmake/stepmake/test*: Unit test support.
6155 * flower/include/std-vector.hh (del): Remove. Use erase (),
6158 * flower/include/array.hh (begin, end): Add.
6161 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6163 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6164 std::string not String.
6166 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6169 * lily/prob.cc (Prob): copy type_ too.
6171 * lily/lily-guile.cc (mangle_cxx_identifier): new
6172 function. Class_bla::foo_bar_[px] ->
6173 ly:class-bla::foo-bar[?!]. Changes throughout
6175 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6177 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6179 * lily/beam.cc (calc_direction): take dir from visible stem in
6182 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6184 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6185 Fix -1, >=0 boundary checks for unsigned vsize.
6187 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6188 loop for unsigned vsize.
6190 * configure.in (--enable-std-vector): New option.
6191 (--enable-std-string): On by default.
6193 * flower/include/std-vector.hh: New file. Enable switch to
6194 std::vector, update client code.
6196 2006-01-30 Graham Percival <gpermus@gmail.com>
6198 * scm/document-translation.scm: clarify "this context is also
6199 known as". Thanks, Werner!
6201 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6203 * Documentation/user/invoking.itely: small fix from Don.
6205 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6207 * scm/lily.scm (define-scheme-options): rename option
6208 preview-include-book-title to book-title-preview
6209 (define-scheme-options): move force-eps-font-include (from paper
6210 block) to eps-font-include -d option.
6212 * VERSION (PATCH_LEVEL): release 2.7.30
6214 * input/bach-schenker.ly (staffPiano): new file.
6216 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6218 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6221 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6223 * ps/lilyponddefs.ps: remove start-system, stop-system,
6224 start-page fluff. This saves putting { } code on the stack, fixing
6225 stack overflows when including EPS files.
6227 2006-01-29 Graham Percival <gpermus@gmail.com>
6229 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6231 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6233 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6235 2006-01-28 Graham Percival <gpermus@gmail.com>
6237 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6239 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6241 * input/mutopia/claop.py: Update.
6243 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6245 * input/regression/completion-heads.ly (texidoc): fix.
6247 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6249 * lily/tie-formatting-problem.cc
6250 (set_ties_config_standard_directions): use abs iso fabs for ints.
6252 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6254 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6255 little less than noteheight, to prevent overlaps in chords.
6257 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6258 head, and fudge stem-attachment.
6260 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6262 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6264 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6266 * lily/main.cc (main): Debugging aid: catch exceptions.
6268 * flower/std-string.cc (to_string): Robustification. Fixes midi
6269 output with std::string.
6271 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6273 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6275 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6277 * Fix -DSTRING_UTILS_INLINED.
6279 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6281 * VERSION (PATCH_LEVEL): release 2.7.29
6283 * lily/relocate.cc (setup_paths): mingw uses std string too.
6285 * lily/*.cc: various fixes for substr(ARG).
6287 * lily/sustain-pedal.cc (print):
6289 * flower/file-name.cc (slashify): use std strings.
6291 * flower/string-convert.cc: remove publib.h
6293 * scm/define-markup-commands.scm (verbatim-file): new markup
6294 command \verbatim-file
6296 * Documentation/topdocs/NEWS.tely: fixup URLs
6298 * input/regression/alignment-vertical-manual-setting.ly (Module):
6301 * lily/align-interface.cc (align_elements_to_extents): overwrite
6302 translations with numbers in alignment-offsets from left bound
6304 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6305 (page-translate-systems): new function: take into account Y-offset.
6307 * Documentation/topdocs/NEWS.tely (Top): document new features.
6309 * input/regression/page-layout-manual-position.ly (Module): new
6312 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6314 * flower/file-path.cc (path::parse_path): Oops.
6316 * Finish std::string interface. For now, use std:: marker
6317 throughout for easy s/r.
6319 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6321 * Documentation/user/putting.itely (Score is a single musical
6323 (Score is a single musical expression): more typos.
6325 * scm/page.scm (annotate-space-left): thinko.
6326 (annotate-page): more thinkos.
6328 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6330 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6331 for different \score blocks separately.
6332 (post-process-pages): put write-page-layout into paper block.
6334 * lily/output-def.cc (get_parser): new file.
6336 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6339 * lily/include/output-def.hh (class Output_def): add parser_ member.
6341 * input/regression/page-layout-twopass.ly (Module): new file.
6343 * scm/lily.scm: remove cpp hack.
6345 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6347 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6349 * GNUmakefile.in (c-clean): New target.
6351 * flower/include/std-string.hh: String/std::string compatibility:
6352 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6355 * flower/rational.cc:
6356 * flower/include/rational.hh:
6359 * flower/include/offset.hh:
6361 * flower/interval.cc:
6362 * flower/include/interval.hh:
6364 * flower/string-convert.cc:
6365 * flower/include/string-convert.hh: Use std::string [interface].
6368 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6370 * Documentation/index.html.in: clean up.
6372 2006-01-25 Graham Percival <gpermus@gmail.com>
6374 * Documentation/user/putting.itely: another new untested doc section.
6376 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6378 * scm/layout-page-layout.scm (write-page-breaks): write
6379 \spacingTweaks #ALIST. Handle grace timing.
6381 * scm/: more imports.
6383 * scm/page.scm (make-page): add footer/header.
6384 (annotate-space-left): revise: only take page argument.
6385 (layout->page-init): new function.
6387 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6388 version of the system/spacing/linebreak hack writing to the output
6390 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6393 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6396 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6398 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6400 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6402 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6403 handling to page.scm
6405 * lily/prob-scheme.cc (LY_DEFINE): new file.
6406 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6408 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6411 * lily/music.cc (derived_mark): derive Music from Prob.
6413 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6415 * lily/prob.cc (Module): Implement Prob (Property Object), object
6416 with shared and r/w property alists.
6418 * lily/include/prob.hh (Module): new file. Declare Prob.
6420 * flower/string.cc: remove is_empty().
6422 * flower/include/string.hh (class String): remove String:: qualifier.
6424 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6425 substitute appropriate functions.
6427 * flower/include/string.hh (class String): remove to_str0 and
6428 is_empty(). S&R everywhere.
6430 2006-01-23 Graham Percival <gpermus@gmail.com>
6432 * Documentation/user/basic-notation.itely: add hairpin
6433 after-linebreak tweak to commonprop.
6435 * Documentation/user/putting.itely: added two new sections.
6437 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6439 * flower/international.cc:
6440 * flower/include/international.hh:
6442 * flower/getopt-long.cc:
6443 * flower/include/getopt-long.hh: Use std::string [interface].
6446 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6448 * stepmake/stepmake/executable-rules.make: Add dependency on
6451 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6453 * flower/file-path.cc:
6454 * flower/include/file-path.hh: Use std::string [interface].
6457 * flower/direction.cc:
6458 * flower/axis.cc: Unused. Remove.
6460 * configure.in (--enable-std-string): New option.
6462 * flower/std-string.cc:
6463 * flower/include/std-string.hh: New file.
6465 * flower/file-name.cc[STD_STRING]:
6466 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6468 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6470 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6472 * scm/define-markup-commands.scm (with-dimensions):
6473 with-dimensions markup command.
6475 * input/test/font-table.ly: use it.
6477 * lily/open-type-font.cc (glyph_list): new function.
6479 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6481 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6483 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6485 * ly/music-functions-init.ly (parallelMusic): new music function
6486 for parallel music entry.
6488 * scm/define-music-properties.scm (all-music-properties): new
6489 'void music property
6491 * scm/music-functions.scm (ly:music-message): make public, to be
6492 used in music function definitions
6494 * scm/lily-library.scm (collect-music-for-book): discard music
6495 when the 'void property is set.
6497 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6499 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6501 * mf/GNUmakefile: idem.
6503 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6505 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6507 * Documentation/user/notation-appendices.itely (The Feta font):
6510 * input/test/font-table.ly: new file. Generate font table within lily.
6512 * Documentation/user/notation-appendices.itely (The Feta font):
6513 use new font-table.ly file.
6515 * stepmake/stepmake/install-out-targets.make
6516 (local-install-outfiles): only create directory if
6517 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6519 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6521 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6523 * VERSION (PACKAGE_NAME): release 2.7.28
6525 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6526 the right font from a Mac dfont.
6527 (write-preamble): don't forget directory, only look at files.
6529 This fixes problems with TTF files in dfonts that don't match
6530 their PostScript names.
6532 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6533 PS name from TTF font.
6535 * input/regression/tie-manual.ly: document new feature.
6537 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6539 * VERSION (MY_PATCH_LEVEL): bump to .28
6541 * Documentation/user/basic-notation.itely (Ties): add tie examples
6544 * lily/tie-formatting-problem.cc (score_ties_configuration):
6545 symmetry penalties for outer ties.
6547 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6549 * lily/tie-formatting-problem.cc (generate_configuration)
6550 (set_manual_tie_configuration): skip non-pair manual
6551 tie-configuration, so you can set individual ties as
6553 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6555 * input/regression/tie-chord.ly: use generateTiePattern to
6558 * lily/tie-formatting-problem.cc (peak_around): new function.
6559 (score_configuration): use sliding criterion for staff line collisions.
6560 (score_configuration): idem for dot collisions.
6561 (generate_configuration): use separate stem_gap for gap to stem.
6563 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6564 separate penalty factors for x and y distance.
6565 (struct Tie_details): separate penalties for tip and center line collisions.
6567 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6569 * lily/tie-formatting-problem.cc (generate_configuration): make
6570 large ties avoid stafflines in the horizontal section.
6571 (score_configuration): use softcoded penalties
6572 (score_aptitude): idem.
6574 * lily/tie-helper.cc (from_grob): softcode tie details
6576 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6578 * lily/staff-symbol-referencer.cc (on_line): rename from
6581 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6583 * ly/music-functions-init.ly: remove duplicate tag.
6585 * lily/include/*.hh: GCC 4.1 fixes.
6587 006-01-16 Erlend Aasland <erlenda@gmail.com>
6589 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6591 * scm/define-music-types.scm: fix bug in desc. string
6592 for OverrideProperty
6594 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6596 * scripts/lilypond-book.py: bugfix
6598 * scm/define-music-types.scm: fix typos.
6600 2006-01-14 Graham Percival <gpermus@gmail.com>
6602 * Documentation/user/ basic-notation.itely, global.itely,
6603 advanced-notation.itely, instrument-notation.itely: small
6604 additions (bugs and commonly tweaked properties).
6606 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6608 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6609 detection of mingw build.
6610 (MINGW_BUILD): opps.
6612 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6614 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6617 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6619 * scm/music-functions.scm (skip->rest): add skip->rest
6621 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6623 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6626 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6627 config dirs. Aids debugging.
6628 (display_config): also display config files.
6630 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6632 * VERSION: release 2.7.27
6634 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6635 for determining bar size.
6637 * lily/staff-symbol.cc (print): place lines at distance line-positions
6639 * scm/define-grob-properties.scm (all-user-grob-properties): add
6642 * lily/staff-symbol.cc (height): new function.
6644 * input/regression/staff-line-positions.ly: new file.
6646 2006-01-06 Graham Percival <gpermus@gmail.com>
6648 * input/test/add-staccato.ly: remove reference to old file.
6650 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6652 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6653 lilypond binary too.
6655 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6657 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6659 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6661 * scripts/midi2ly.py: Bugfix: Declare datadir.
6663 * make/ly-rules.make:
6664 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6665 that seems to be gone). Fixes make web.
6667 * The grand 2005-2006 replace.
6669 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6671 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6673 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6674 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6675 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6676 like -dgs-font-load.
6678 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6679 remove absolute path to lilypond binary.
6681 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6683 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6685 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6687 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6689 * mf/GNUmakefile: remove broken dvips map symlink.
6691 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6694 * configure.in: Cosmetic fixes.
6696 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6698 * Documentation/user/music-glossary.tely (Pitch names): Added
6699 Spanish pitch names and durations, thanks to Ernesto Gancedo
6701 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6703 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6704 init. Fixes verbose printing of .scm files.
6706 * stepmake/aclocal.m4: add spaces before - options.
6708 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6710 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6711 of path search in local block variable.
6713 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6715 * configure.in (NCSB_DIR): --enable-ncsb-dir
6716 (LINK_GXX_STATICALLY): denko.
6718 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6720 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6721 use locate to find c059033l.pfb.
6723 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6725 * lily/tie-formatting-problem.cc
6726 (problem::generate_base_chord_configuration): Use my_round (was
6729 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6730 do not invoke mbrtowc.
6732 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6734 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6736 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6738 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6740 * Documentation/user/invoking.itely (svg): revise.
6742 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6744 * lily/lexer.ll: use sourcefilename iso. renameinput.
6746 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6748 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6749 <PostScriptName>.ttf instead of c059XXXttf.
6751 * lily/program-option.cc (LY_DEFINE): special support for
6752 --verbose, so it works before option init too.
6754 * mf/GNUmakefile (local-install): oops.
6756 * lily/lyric-hyphen.cc (print): oops.
6758 * buildscripts/pfx2ttf.fontforge: new file.
6760 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6761 ($(outdir)/%.ttf): new rule.
6763 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6766 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6769 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6771 * VERSION: release 2.7.26
6773 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6775 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6777 * lily/font-config.cc (init_fontconfig): verbosity.
6779 * THANKS: add Muziekacademie Lede.
6781 * scripts/musicxml2ly.py (print_voice_definitions): new function
6782 (print_score_setup): new function
6783 (convert): read part definition to output staves properly.
6785 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6788 * python/musicexp.py (Output_printer.__init__): use _ in data
6790 (Output_printer.unformatted_output): new function: no formatting,
6792 (Duration.get_length): remove isinstance() checks for
6793 Output_printer everywhere.
6795 * input/regression/lyrics-bar.ly (texidoc): add
6796 Separating_line_group_engraver.
6798 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6800 * lily/relocate.cc (framework_relocation): New function,
6801 factored from set_relocation ().
6802 (prefix_relocation): Rename from set_relocation ().
6803 (setup_paths): Use it.
6805 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6807 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6808 numbers. Patch by Erlend Aasland.
6810 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6812 * lily/font-config.cc (init_fontconfig): print warning if cache
6813 file is not existant.
6815 * lily/main.cc: don't use #ifdef but #if
6817 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6819 * lily/grob-property.cc (internal_set_property): don't abort on
6820 calculation-in-progress.
6822 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6824 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6825 connect-to-neighbor property not connect-to-other
6827 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6828 (LY_DEFINE): oops. don't forget protection.
6830 * flower/parse-afm.cc (Module): strip AFM handling completely.
6832 * lily/stencil-expression.cc: idem.
6834 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6836 * lily/function-documentation.cc (ly_add_function_documentation):
6837 use static member iso. Protected_scm
6839 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6841 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6843 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6845 * lily/relocate.cc (set_env_dir): New function.
6846 (set_relocation): Use it to fix setting PANGO_PREFIX.
6848 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6850 * input/regression/stem-direction-context.ly: remove rest.
6852 * lily/melody-engraver.cc (process_music): restart for bar lines.
6853 (acknowledge_slur): restart for slurs.
6855 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6857 * Documentation/user/invoking.itely: describe how to view SVG
6858 output using Inkscape which replace embedded fonts with OTF fonts.
6860 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6862 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6864 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6866 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6869 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6871 * VERSION (PACKAGE_NAME): release 2.7.25
6873 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6875 * input/regression/stem-direction-context.ly: new file.
6877 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6879 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6882 * ly/engraver-init.ly: add Melody_engraver
6884 * lily/beam.cc (calc_direction): use default-direction
6885 iso. get_default_direction()
6887 * scm/define-grob-properties.scm (all-user-grob-properties): add
6888 default-direction property.
6890 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6892 * lily/stem.cc (calc_default_direction): remove
6893 Stem::get_default_direction, use default-direction with callback
6896 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6898 * lily/melody-engraver.cc: new file. Acknowledge stems for
6899 interpolated stem directions.
6901 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6903 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6905 * lily/slur-configuration.cc (fit_factor): more robust check for
6906 point in curve X-extent.
6908 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6909 (outside_slur_callback): check for 'outside avoidance.
6911 * lily/slur-configuration.cc (score_extra_encompass): don't use
6912 bound->column() == avoid->column() for checking extents, as this
6913 doesn't work for accidentals.
6915 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6916 DynamicText hardcoding.
6918 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6919 crash if bound stem is NULL
6921 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6924 2005-12-22 Graham Percival <gpermus@gmail.com>
6926 * scm/define-markup-commands.scm: typo. @code{\raise}
6929 * darwin.patch: now used again, includes a
6930 required patch from fink.
6932 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6934 * po/TODO: mention gtranslator along with kbabel.
6935 * po/fi.po: update translations.
6937 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6939 * lily/relocate.cc (setup_paths): Bugfix.
6941 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6943 * lily/slur-configuration.cc (score_extra_encompass): don't use
6944 "avoid" choice for avoid-slur.
6946 * stepmake/bin/install.py (dest): don't create existing dir.
6948 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6950 * stepmake/bin/install.py: Remove file before copying.
6953 * stepmake/aclocal.m4: Do not substitute INSTALL.
6955 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6957 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6958 depend on link-tree.
6960 * lily/relocate.cc (setup_paths): only check path for non-absolute
6961 dir without directory part.
6963 * flower/file-name.cc (is_absolute): new method.
6964 (is_absolute): check root_ too.
6966 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6968 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6969 relocation code. Oops, don't comment out too much.
6971 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6974 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6977 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6979 * .cvsignore: Add install-sh.
6981 * autogen.sh (srcdir): Typo.
6983 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6985 * autogen.sh (srcdir): urg. Touch install-sh.
6987 * stepmake/bin/install-sh (Module): remove.
6989 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6991 * lily/include/relocate.hh: new file.
6993 * lily/relocate.cc: new file. Contain relocation logic.
6995 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6996 (main): read LILYPOND_VERBOSE as the first thing.
6998 * stepmake/aclocal.m4: remove INSTALL variable.
7000 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7001 separate target for making font symlinks.
7002 (documentation-dir): use $(if $(findstring )) for switching off
7005 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7006 something if DOCUMENTATION is no.
7008 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7010 * VERSION: release 2.7.24
7012 * lily/script-column-engraver.cc (stop_translation_timestep):
7013 delay adding to script-column.
7015 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7017 * python/convertrules.py (conv): rule for number-visibility
7019 * lily/slur-configuration.cc (score_extra_encompass): different
7020 distance measure for avoid and inside avoidance.
7021 (score_extra_encompass): use 1/(distance+eps) as penalty.
7023 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7024 encompass objects for generating slur curves.
7026 * lily/slur.cc: use details iso. slur-details property.
7028 * input/regression/slur-tuplet.ly: new file.
7030 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7032 * flower/include/offset.hh (class Offset): new operator /=
7034 * lily/tuplet-number.cc (print): new file, new interface.
7036 * scm/define-grob-properties.scm (all-user-grob-properties):
7037 remove number-visibility property.
7039 * lily/tuplet-bracket.cc (calc_control_points): new function
7040 (calc_connect_to_neighbors): new function.
7041 (print): remove text handling for tuplet numberdef.
7043 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7046 * lily/lily-guile.cc (robust_scm2booldrul): new function
7048 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7050 * lily/tuplet-bracket.cc (calc_position_and_height): use
7051 staff-padding to control whether tuplet brackets are over staves.
7053 * lily/grob.cc (suicide): clear dim_caches_.
7055 * lily/dimension-cache.cc (clear): new function.
7057 * lily/grob.cc (extent): swap order of min-extent and extent
7058 calculations. This fixes hara kiri staves.
7060 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7062 * lily/main.cc: Nitpick: relocation is not based on path, but on
7063 directory (location).
7065 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7067 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7069 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7071 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7073 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7075 * stepmake/stepmake/generic-vars.make (Module): idem.
7077 * stepmake/stepmake/executable-targets.make (default): use it.
7079 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7081 * make/GNUmakefile: don't install make rules.
7083 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7085 (prepend_env_path): more verbosity.
7087 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7089 * GNUmakefile.in: add dir argument for find command.
7091 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7092 fixes weird line numbers for point & click.
7094 * lily/source-file.cc (get_counts): init line/column/char counts.
7096 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7098 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7100 2005-12-16 Graham Percival <gpermus@gmail.com>
7102 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7103 minor fixes from Fredric. Thanks!
7105 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7107 * ly/music-functions-init.ly: add \bar and \clef music function
7109 * lily/lily-lexer.cc: idem.
7111 * lily/parser.yy (FIXME): remove BAR and CLEF.
7113 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7115 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7117 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7118 function arguments too
7120 * lily/main.cc (set_relocation): new function.
7122 * scripts/musicxml2ly.py (convert): add \version
7124 * lily/tie.cc: remove get_default_attachments()
7126 * VERSION (PACKAGE_NAME): release 2.7.23
7128 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7129 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7131 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7133 * lily/tie-formatting-problem.cc (score_ties): new function
7134 (get_variations): new function. Try flipping dirs for collisions.
7135 (generate_optimal_chord_configuration): new function. 1-opt search
7136 for better configuration.
7138 * lily/tie-configuration.cc: new file.
7140 * lily/tie.cc: junk Tie::get_configuration()
7142 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7143 (score_ties_configuration): new function.
7144 (generate_ties_configuration): new function.
7145 (generate_base_chord_configuration): new function.
7146 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7147 (set_manual_tie_configuration): Move body from tie-column-format.cc
7149 * input/regression/tie-dot.ly: new file.
7151 * lily/tie-formatting-problem.cc (score_configuration): score
7154 * lily/tie-helper.cc (get_transformed_bezier): new function
7156 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7158 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7159 -undefined suppress iso. -framework Python
7161 * scm/define-grobs.scm (all-grob-descriptions): set
7162 springs-and-rods (thanks Joe Neeman!)
7164 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7166 * input/no-notation/display-lily-tests.ly (test):
7167 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7168 changed from \tag #'(a b) to \tag #'a \tag #'b
7170 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7172 * Documentation/topdocs/NEWS.tely: strip out-www.
7174 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7176 * config.make.in (AR): add AR and RANLIB
7178 * flower/libc-extension.cc: include cassert
7180 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7183 2005-12-11 Graham Percival <gpermus@gmail.com>
7185 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7187 * stepmake/stepmake/python-modules-vars.make: define
7188 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7190 * THANKS: added Johannes Schindelin.
7192 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7194 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7196 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7197 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7199 * lily/parser.yy: reorganize file layout.
7201 * ly/music-functions-init.ly: add tweak music function.
7203 * lily/grob-info.cc (ultimate_music_cause): new function:
7204 recursively lookup causes.
7206 * lily/parser.yy (chord_body_element): allow music functions for
7207 post-events, allow music functions for chord elements.
7209 * lily/font-config-scheme.cc (display_fontset): add cast.
7211 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7212 #'(a b) -> \tag #'a \tag #'b rule.
7214 * python/musicexp.py (Output_printer.dump_version): new function
7216 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7218 * lily/parser.yy (FIXME): remove \tag
7219 (FIXME): remove tag_music() function.
7221 * lily/lily-lexer.cc: remove \tag
7223 * ly/music-functions-init.ly: define music-function "tag"
7225 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7227 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7229 * VERSION (PATCH_LEVEL): release 2.7.22
7231 * input/regression/lyric-hyphen-retain.ly: renew.
7233 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7236 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7237 iso. minimum-length property for rods.
7239 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7240 LyricSpace item to keep lyrics spaced apart.
7242 * ly/engraver-init.ly: remove Separating_line_group_engraver
7244 * Documentation/user/music-glossary.tely: do setfilename before
7247 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7249 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7250 See xref documentation, for example.
7252 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7254 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7255 pending_skip iso. ly_voice[-1]
7256 (main): add if __main__ for debugging.
7258 * python/musicxml.py (Accidental.__init__): new class.
7260 * scripts/musicxml2ly.py (progress): new function
7261 (musicxml_key_to_lily): don't barf on modeless keys.
7262 (create_skip_music): new function.
7263 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7264 (musicxml_note_to_lily_main_event): new function.
7266 * python/musicexp.py (Music.__init__): add comment field.
7267 (NestedMusic.append): new routine.
7268 (SequentialMusic.print_ly): print comment.
7269 (ArpeggioEvent.ly_expression): new class
7270 (BeamEvent.ly_expression): new class
7271 (NoteEvent.__init__): support for cautionary/forced accs.
7273 * lily/lookup.cc (slur): normal order for array loop.
7275 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7278 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7281 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7283 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7285 * scripts/lilypond-book.py: Introduce option
7286 --preserve-line-breaks, for usage with srcltx
7288 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7290 * scm/output-lib.scm (print-circled-text-callback): draw circle
7291 around text using make-circle-markup.
7293 * Documentation/user/*: strip out-www from file names.
7295 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7297 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7298 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7300 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7302 * Documentation/user/GNUmakefile: idem.
7304 * Documentation/user/macros.itexi: strip out-www
7306 * python/rational.py: python 2.3 compat.
7308 * VERSION (PATCH_LEVEL): release 2.7.21
7310 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7311 option formatting, lilypond style.
7313 * python/musicexp.py: grab from Ikebana: a library for composing
7314 ly music expressions.
7315 (Output_printer): class for advanced .ly printing.
7318 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7319 convert to pythonesque structure.
7321 * python/rational.py: PD rational number class.
7323 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7325 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7327 * lily/part-combine-iterator.cc: Minor bugfix
7329 * THANKS: Update bughunters
7331 2005-12-02 Werner Lemberg <wl@gnu.org>
7333 * mf/README: Document process for proper mf2pt1 conversion.
7335 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7338 * mf/feta-harmonica.mf: Removed. Unused.
7340 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7342 * scripts/lilypond-book.py (do_file): fix thinkos.
7344 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7346 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7347 ($(outdir)/parser.cc):
7348 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7350 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7352 * ly/titling-init.ly (tagline): it should be a space between
7353 "Music engraving by LilyPond" and the version number.
7355 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7357 * VERSION (PACKAGE_NAME): release 2.7.20
7359 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7361 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7363 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7365 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7367 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7369 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7371 * kpath-guile/: remove directory
7373 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7374 file. Encapsulate kpathsea using commandline tools.
7376 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7379 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7381 * Documentation/user/advanced-notation.itely (Setting automatic
7382 beam behavior): Correct a few typos. Thanks to David Bobroff.
7384 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7385 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7387 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7389 * scripts/*.py: gmane address for bugs.
7391 2005-11-28 Pal Benko <benkop@freestart.hu>
7393 * make/ly-rules.make: add -f switch to mv
7395 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7397 * lily/bar-line.cc: interpret it
7399 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7401 * configure.in (--disable-documentation): New switch.
7403 * GNUmakefile.in: Use it.
7405 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7407 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7409 * scripts/lilypond-book.py (do_file): search chunks for
7412 * GNUmakefile.in: add copy step in between so we can lose the
7413 out-www directories.
7415 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7417 * lily/pango-font.cc (pango_item_string_stencil): put
7418 geometry.width into glyph-string too.
7420 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7422 * scm/define-music-display-methods.scm (RevertProperty):
7423 (OverrideProperty): Use grob-property-path property, a list of
7424 symbols, instead of grob-property, which used to be a single
7426 (BassFigureEvent): a figure can be a plain number, not necessarily a
7429 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7431 * VERSION: release 2.7.19
7433 * lily/figured-bass-engraver.cc (process_music): check
7434 figuredBassCenterContinuations first.
7436 * scm/translation-functions.scm (format-bass-figure): make double
7439 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7442 * lily/system-start-delimiter-engraver.cc: move from
7443 Nested_system_start_delimiter_engraver, rename
7444 Nested_system_start_delimiter_engraver ->
7445 System_start_delimiter_engraver.
7447 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7448 bracket type from hierarchy.
7450 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7452 * lily/rest.cc (y_offset_callback): read staff-position.
7454 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7455 mark after-line-breaking-callback as internal.
7457 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7459 2005-11-25 Werner Lemberg <wl@gnu.org>
7461 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7463 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7465 * stepmake/bin/add-html-footer.py (do_file): add google
7467 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7468 staff if first_start_ is true.
7470 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7472 * scripts/midi2ly.py (split_track): add __repr__ members.
7473 (track_first_item): only return Item if not None. This fixes a
7474 problem when dumping a track that starts with an empty channel.
7476 * python/midi.c: doc module.
7478 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7480 * Documentation/user/global.itely (Creating MIDI files): Fix
7481 compilation problem.
7483 2005-11-22 Graham Percival <gpermus@gmail.com>
7485 * Documentation/user/basic-notation.itely: clarify dynamic
7488 * Documentation/user/advanced-notation.itely: add unicode
7489 escape control example, whatever that is. :)
7491 * Documentation/user/global.itely: added "removing dynamics
7494 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7496 * VERSION (PATCH_LEVEL): release 2.7.18
7498 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7499 System_start_delimiter_engraver by
7500 Nested_system_start_delimiter_engraver.
7502 * lily/nested-system-start-delimiter-engraver.cc (struct
7503 Bracket_nesting_node): new class.
7504 (struct Bracket_nesting_group): new class
7505 (struct Bracket_nesting_staff): new class.
7506 (process_music): create hierarchy of grobs. This allows separate
7507 tuning of different SSDs.
7509 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7510 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7512 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7514 * lily/side-position-interface.cc (aligned_side): multiply
7517 * lily/script-engraver.cc (make_script_from_event): allow setting
7520 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7522 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7524 * scm/define-grobs.scm (all-grob-descriptions): new grob
7525 NestedSystemStartDelimiter.
7527 * input/regression/system-start-heavy-bar.ly: new file.
7529 * lily/nested-system-start-delimiter-engraver.cc: new file.
7531 * lily/nested-system-start-delimiter.cc: new file.
7533 * input/regression/system-start-nesting.ly: new file.
7535 * scm/define-grobs.scm (all-grob-descriptions): use X side
7536 positioning for positioning braces for nested contexts.
7538 * lily/system-start-delimiter.cc (print): don't divide extent by
7540 (print): use style iso. glyph.
7541 (staff_bracket): translate glyph inside routine already.
7543 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7545 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7548 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7550 * scm/define-context-properties.scm
7551 (all-user-translation-properties): rename figuredBassFormatter
7552 from newFiguredBassFormatter.
7554 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7556 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7558 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7560 * lily/beam.cc (calc_beaming): new function.
7561 (calc_shorten): new function.
7563 * THANKS: add Edward Neeman.
7565 * input/regression/accidental-clef-change.ly: new file.
7567 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7569 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7571 * lily/clef-engraver.cc (inspect_clef_properties): reset
7572 localKeySignature for clef changes.
7574 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7576 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7577 add dummy definition that works in Linux and add information in
7578 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7580 * Documentation/user/changing-defaults.itely (Modifying context
7581 plug-ins): Add index for \with.
7583 * Documentation/user/music-glossary.tely (dal segno): Updated
7584 example to version >=2.6.
7586 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7588 * Documentation/user/instrument-notation.itely (Printing chord
7589 names): Reorder \chordmode and \repeat in one example.
7591 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7593 * VERSION: release 2.7.17
7595 * Documentation/topdocs/NEWS.tely (Top): add note about
7598 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7599 new function. Search region of 3 positions for best tie.
7600 (score_configuration): new function.
7601 (score_aptitude): new function.
7602 (generate_configuration): new function.
7603 (get_configuration): new function.
7604 (Tie_formatting_problem): new function
7606 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7608 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7610 * THANKS: add Eduardo Vieira & Ralph Little
7612 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7615 * lily/include/tie-formatting-problem.hh (class
7616 Tie_formatting_problem): add Tie_details to
7617 Tie_formatting_problem. Update calling conventions.
7619 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7622 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7624 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7626 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7627 scm/define-context-properties.scm: Maintenance bugfix: make
7628 ligature brackets work again by removing obsolete ligature
7629 primitive callback push/pop.
7631 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7632 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7635 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7637 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7638 used and do not call it a path.
7639 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7641 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7643 * lily/include/tie-formatting-problem.hh (class
7644 Tie_formatting_problem): new file.
7646 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7648 * Documentation/misc/ChangeLog-2.3: new file.
7650 * lily/audio-staff.cc (output): degarianize.
7652 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7654 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7655 Unset PYTHONOPTIMIZE. Fixes install if set.
7657 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7659 * python/convertrules.py (conv): add warning about drums.
7661 * make/stepmake.make: include toplevel-version.make after config.make.
7663 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7664 also allow python2.4
7666 * config.make.in (configure-srcdir): remove GXX GCC vars.
7668 * stepmake/aclocal.m4: don't do non-srcdir build with
7669 symlinks. Use inclusion, so the src directory name can be changed.
7671 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7673 * make/mutopia-vars.make:
7674 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7677 2005-11-13 Werner Lemberg <wl@gnu.org>
7679 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7680 but the affected path. This ensures that the (overlapping) outlines
7681 have the same direction, which is a necessary prerequisite for
7682 FontForge's algorithm to remove overlaps.
7685 * mf/feta-haak.mf: Formatting.
7686 (draw_bracket): Slightly modify outline to avoid an unnecessary
7688 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7689 them from the affected paths.
7691 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7693 * mf/README: remove xpm / accordion notes.
7695 * lily/tie-column-format.cc (set_chord_outline): add dots into
7696 skyline extents. This fixes tie formatting if the left head has dots.
7698 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7699 space inside the staff.
7700 (get_configuration): shift another position if necessary in case
7703 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7705 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7706 buildscript-dir iso. $(depth)/buildscripts.
7708 * tex/GNUmakefile (local-uninstall): remove
7709 music-drawing-routines.ps juggling.
7711 * stepmake/stepmake/install-targets.make (local-install-files):
7712 prepend src-dir to install targets.
7714 * lily/system-start-delimiter-engraver.cc
7715 (acknowledge_system_start_delimiter): use
7716 add_offset_callback(). This fixes translation of nested
7719 * lily/grob-closure.cc (add_offset_callback): only encaps in
7720 simple_closure if it's a procedure.
7722 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7725 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7726 remove-empty where pertinent.
7728 2005-11-12 Graham Percival <gpermus@gmail.com>
7730 * Documentation/user/instrument-notation.itely: added
7731 Cameron Horsburgh's multiple stanzas docs. Thanks!
7733 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7736 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7737 make picture in builddir, not srcdir.
7739 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7741 * VERSION: release 2.7.16
7743 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7746 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7748 * Documentation/user/examples.itely (Piano templates): Minor
7749 modification to the Piano centered lyrics example.
7751 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7753 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7756 * Documentation/user/point-and-click.itely: simplify p&c
7757 instruction: don't configure firefox. Put lilypond-invoke-editor
7758 in front of the browser.
7760 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7761 (run-browser): new function.
7763 * lily/parser.yy (Lily_lexer): recognize Book
7765 * lily/book.cc (clone): new function
7767 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7769 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7771 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7772 Maintenance bugfix: reduce number of font related warnings by
7773 updating naming conventions for glyph-name.
7775 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7777 * scm/define-grobs.scm (all-grob-descriptions): add
7778 rhythmic-grob-interface to TabNoteHead.
7780 * scm/layout-beam.scm (check-quant-callbacks): remove
7783 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7785 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7786 alignment of centered divisiones.
7788 * scm/scripts.scm (articulations): Maintenance bugfix:
7789 follow-into-staff -> quantize-position.
7791 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7792 plica head in porrectus deminutus.
7794 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7796 * make/lilypond.fedora.spec.in (Group): add %clean section.
7798 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7799 less then 1/5th of total length.
7800 (print): use gap too. Fixes tupletUp-single-bracket.ly
7802 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7803 events into EventChord. This fixes textspanners on mm rests. Fixes
7806 * lily/side-position-interface.cc (get_axis): read side-axis
7807 (set_axis): set side-axis.
7809 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7810 properties everywhere.
7812 * lily/spacing-spanner.cc (breakable_column_spacing): add
7813 average-spacing-wishes. Take maximum if not set.
7814 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7816 * scm/define-grobs.scm (all-grob-descriptions): add
7817 average-spacing-wishes.
7819 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7820 offset callbacks. This fixes alignment for Fingering objects.
7822 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7823 space for key - timesig combination.
7825 * input/regression/script-stem-tremolo.ly (Module): new file.
7827 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7830 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7831 Fixes: c-tremolo-script.ly.
7833 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7835 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7837 * scm/define-grobs.scm (all-grob-descriptions): remove
7838 self-X-offset. Fixes alignment of octavate-8.
7840 * scripts/lilypond-book.py (datadir): look in
7841 LILYPONDPREFIX/share/lilypond/current/
7843 * GNUmakefile.in: symlink current to <VERSION>.
7845 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7847 * lily/main.cc: eps listed as a backend.
7849 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7851 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7853 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7855 * lily/include/score.hh (class Score): remove texts_ member.
7857 * lily/beam.cc (set_stem_lengths): force direction callback.
7858 (print): read quantized-positions, so we can force
7859 Beam::set_stem_lengths to occur.
7860 (rest_collision_callback): use common X parent.
7862 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7864 * flower/file-path.cc (find): Bugfix: Return name of file found.
7866 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7867 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7868 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7870 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7872 * flower/offset.cc: idem.
7874 * mf/*.mf: update email address.
7876 * lily/font-config-scheme.cc: new file.
7878 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7880 * lily/*: cs.uu.nl -> xs4all.nl
7882 * VERSION (PATCH_LEVEL): release 2.7.15
7884 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7887 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7889 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7891 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7893 * lily/staff-performer.cc (process_music): add audio
7894 elements. This makes MIDI instrument changes work once again.
7896 * lily/main.cc (LY_DEFINE): add gmane address.
7898 * lily/beam.cc: remove calc_positions()
7900 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7901 original_ in private scope.
7902 (class Grob): drop pscore_ pointer, change to output_def pointer.
7903 (class Grob): cleanup class definition.
7905 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7907 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7909 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7910 absolute. Better diagnostics.
7912 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7913 This makes lilypond run from the build directory using argv0
7914 relocation (without any --prefix or LILYPONDPREFIX setting).
7916 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7918 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7920 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7921 with simple-closure.
7923 * lily/self-aligment-interface.cc (set_align_self): new function
7924 (set_center_parent): new function.
7926 * lily/side-position-interface.cc (set_axis): new function.
7928 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7931 * scm/define-grob-properties.scm (all-user-grob-properties):
7932 remove [XY]-offset-callbacks add [YX]-offset
7934 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7936 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7937 entry for time signatures after breathing signs. Bug report by
7940 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7942 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7943 not absolute, make it absolute using PATH.
7945 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7947 * python/midi.c (initmidi): Fix type for mingw.
7949 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7951 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7953 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7956 * stepmake/aclocal.m4: Support python cross compiling.
7958 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7961 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7963 * scm/output-lib.scm (chain-grob-member-functions): replace
7966 * lily/chained-callback.cc (Module): remove file.
7968 * lily/rest-collision.cc (force_shift_callback_rest): change to
7971 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7973 * lily/grob.cc (y_parent_positioning): remove axis argument from
7974 parent_positioning callbacks.
7975 (Grob): junk init code
7976 (get_offset): use generic property callbacks for
7977 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7978 (axis_parent_positioning): new function
7979 (axis_offset_symbol): new function
7980 (chain_offset_callback): new function
7981 (add_offset_callback): new function
7983 * lily/beam.cc (rest_collision_callback): change signature; this
7984 is now a chained callback.
7986 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7987 callback administration.
7989 * lily/simple-closure.cc: new file. Smob type that allows "grob
7992 (ly:make-simple-closure FUNC A B)
7994 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7997 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8000 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8002 * lily/rest.cc (polyphonic_offset_callback): remove.
8004 * lily/script-engraver.cc (try_music): remove bool* argument.
8006 * scm/script.scm (default-script-alist): set quantize-position
8009 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8011 * lily/side-position-interface.cc (aligned_side): move staff
8012 position quantization from
8013 Side_position_interface::quantised_position().
8014 (quantised_position): remove
8016 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8018 * input/regression/beam-quant-standard.ly: reindent, set
8019 debug-beam-quanting to #t.
8021 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8022 10000 if this is a "hard" concave beam.
8024 * lily/beam.cc (calc_least_squares_positions): change from
8025 calc_least_squares_dy
8026 (set_stem_lengths): this is now a chained callback.
8028 * lily/context-property.cc (execute_general_pushpop_property):
8029 bugfix override with procedure should have effect.
8031 * scm/define-grob-properties.scm (all-internal-grob-properties):
8032 remove position-callbacks.
8034 * scm/define-grobs.scm (all-grob-descriptions): use
8035 ly:make-callback-chain for positions property.
8037 * scm/layout-beam.scm (check-quant-callbacks): return list of
8040 * scm/lily.scm (type-p-name-alist): add callback-chain
8042 * lily/lily-guile.cc (type_check_assignment): type check failure
8043 is warning not message.
8045 * lily/grob-property.cc (try_callback): walk callback chain if
8048 * lily/chained-callback.cc: new file. new smob type.
8050 * lily/lily-guile.cc (procedure_arity): new function.
8052 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8054 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8056 2005-10-25 John Mandereau <john.mandereau@free.fr>
8058 * Documentation/user/instrument-notation.itely (Figured bass):
8059 describe new features
8061 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8063 * lily/beam.cc (calc_least_squares_dy): use property callback.
8065 * lily/beam-concave.cc (calc_concaveness): use property callback.
8067 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8069 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8073 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8075 * scm/layout-page-layout.scm (page-headfoot): annotate
8078 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8080 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8081 doesn't take y-space.
8083 * scm/paper.scm (paper-alist): fix A7 dimensions.
8085 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8087 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8088 src-wildcard, remove $(wildcard).
8090 * po/GNUmakefile (PO_FILES):
8091 * ps/GNUmakefile (PS_FILES):
8092 * tex/GNUmakefile (TEX_FILES):
8093 * cygwin/GNUmakefile (POSTINSTALLS):
8094 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8095 some wildcard calls.
8097 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8099 * THANKS: add Thomas Bushnell.
8101 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8103 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8104 (lilypond-main): Redirect to gui-main if 'gui is set.
8106 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8107 for alternative installations kludging s/share/lib/g
8110 * SConstruct (libdir_package_version): Define.
8112 * python/SConscript:
8113 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8116 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8118 * lily/main.cc: clarify --safe.
8120 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8122 * VERSION: release 2.7.14
8124 * Documentation/user/*.itely: remove minimumVerticalExtent.
8126 * scm/define-grobs.scm (all-grob-descriptions): remove
8127 RemoveEmptyVerticalGroup
8129 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8131 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8134 * python/convertrules.py (conv): add rules.
8136 * lily/grob.cc: remove is_empty()
8138 * lily/grob-property.cc: remove add_to_list_property().
8140 * scripts/convert-ly.py (datadir): add prefix switching hack to
8143 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8144 space-function tweak.
8146 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8148 * scm/define-grob-properties.scm (all-user-grob-properties):
8149 remove callback property.
8151 * lily/include/grob.hh (class Grob): remove property_callbacks_
8152 member. Properties of procedure type are assumed to be callbacks.
8154 * lily/ligature-engraver.cc (override_stencil_callback):
8155 rewrite. Use noteHeadLigaturePrimitive as source.
8157 * scm/define-grob-properties.scm (all-internal-grob-properties):
8158 remove ligature-primitive-callback
8160 * lily/include/dimension-cache.hh (class Dimension_cache): make
8161 class, with Grob as friend.
8163 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8164 has_extent_callback()
8166 * scm/translation-functions.scm (format-new-bass-figure): read
8167 figuredBassPlusDirection
8169 * scm/define-context-properties.scm
8170 (all-user-translation-properties): add figuredBassPlusDirection.
8172 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8174 * lily/align-interface.cc (set_ordered): new function.
8176 * lily/grob.cc (flush_extent_cache): rewrite.
8178 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8179 Interval pointer directly.
8181 * lily/main.cc (setup_paths): insert extra / .
8182 (setup_paths): junk cff entry.
8184 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8187 * lily/axis-group-engraver.cc (finalize): remove
8188 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8190 * lily/grob.cc (Grob): don't set extent from ctor.
8191 (extent): use property callbacks.
8193 * lily/axis-group-interface.cc: remove set_axes() function.
8195 * lily/grob-property.cc (del_property): new function.
8197 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8199 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8201 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8203 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8205 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8207 * mf/SConscript: Updates.
8209 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8211 * stepmake/stepmake/*:
8215 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8216 from any directory in build-dir. Cleanups.
8218 * make/srcdir.make.in: Remove.
8220 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8222 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8225 * lily/SConscript: Remove ttftools.
8227 * SConstruct: Resurrect.
8229 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8231 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8234 * lily/paper-book.cc (add_score_title): put Paper_score title into
8237 * scm/translation-functions.scm (format-new-bass-figure): also
8238 allow plus in combination with _
8240 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8242 * VERSION: 2.7.13 released.
8244 * lily/note-collision.cc (check_meshing_chords): don't wipe
8245 stencil, merely set transparent.
8247 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8248 (Top): document #'callbacks.
8249 (Top): document nested \override.
8251 * input/regression/figured-bass.ly: update for slash and pluses.
8253 * input/regression/figured-bass-continuation-forbid.ly (Module):
8256 * scm/translation-functions.scm (format-new-bass-figure): use
8257 slashed-digit if diminished is set.
8258 (format-new-bass-figure): add + if 'augmented is set.
8260 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8262 * input/test/piano-staff-distance.ly: remove file.
8264 * Documentation/user/advanced-notation.itely (Formatting cue
8265 notes): use length-fraction for making stems/beams smaller.
8267 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8270 * lily/new-figured-bass-engraver.cc: new property
8271 centerFiguredBassContinuations
8273 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8276 * lily/context-property.cc (execute_general_pushpop_property):
8279 * input/regression/override-nest.ly: new file.
8281 * python/convertrules.py (FatalConversionError.subber): conversion
8282 rule for #'callbacks
8284 * input/regression/override-nest.ly: new function.
8286 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8289 * lily/context-property.cc (lookup_nested_property): new function.
8290 (evict_from_alist): new function.
8291 (general_pushpop_property): new function.
8292 (execute_general_pushpop_property): rewrite. Support nested
8295 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8297 * lily/beam.cc: use length-fraction too.
8299 * scm/define-grob-properties.scm (all-user-grob-properties):
8300 remove property flag-width-function
8301 (all-user-grob-properties): remove space-function.
8303 * scm/layout-beam.scm: remove flag-width-function.
8305 * lily/beam.cc: remove flag-width-function
8307 * scm/layout-beam.scm: remove beam dir functions.
8309 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8311 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8312 for easier grace tweaks.
8314 * lily/beam.cc: remove dir-function.
8316 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8318 * lily/grob.cc: remove spacing-procedure.
8320 * lily/note-head.cc (calc_stem_attachment): new function.
8321 (internal_print): use callback to get glyph-name.
8323 * lily/grob-property.cc (get_interfaces): new function.
8325 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8327 * lily/stem.cc (calc_stem_end_position): new function.
8328 (calc_length): new function.
8329 document details for stem.
8330 remove Stem::get_direction()
8332 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8334 * lily/grob-property.cc (set_callback): new function.
8336 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8338 * lily/item-scheme.cc: new file.
8340 * lily/bar-line.cc (before_line_breaking): remove function.
8341 remove bar-size-procedure, break-glyph-function
8343 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8345 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8347 * lily/system-start-delimiter.cc (print): suicide from
8348 here. Remove after_line_breaking_callback.
8350 * lily/script-interface.cc (calc_direction): use callback for direction.
8352 * lily/side-position-interface.cc (aligned_side): don't use
8353 Side_position_interface::get_direction directly. Use callback.
8355 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8357 (get_print_stencil): rename from get_stencil: create stencil with
8358 transparency, color and cause.
8360 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8362 * python/convertrules.py (conv): insert temporary warning rule.
8364 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8366 * lily/grob-property.cc (try_callback): remove marker if applicable.
8368 * lily/grob.cc: elucidate doc about after/before-line-breaking
8370 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8372 * lily/stem.cc (height): idem.
8374 * lily/stem-tremolo.cc: idem.
8376 * lily/slur.cc (height): don't use get_uncached_stencil()
8378 * lily/rest.cc (y_offset_callback): use offset callback
8379 iso. after-line-breaking callback.
8381 * lily/grob.cc: change after/before-line-breaking-callback to
8382 after/before-line-breaking dummy properties.
8384 * lily/include/grob.hh: remove Grob_status.
8386 * scm/define-context-properties.scm
8387 (all-user-translation-properties): remove verticalAlignmentChildCallback
8389 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8390 (calc_direction): use callback
8391 (calc_positions): use callback.
8393 * lily/tie.cc (calc_direction): use callback. Only call parent
8394 positioning for more than one tie.
8396 * lily/tie-column.cc (calc_positioning_done): use callback
8398 * lily/slur-scoring.cc (calc_control_points): use callback
8400 * lily/slur.cc (calc_direction): use callback.
8402 * lily/note-collision.cc (force_shift_callback): remove.
8404 * lily/dot-column.cc (force_shift_callback): remove. Use
8405 other_axis_parent_positioning.
8407 * lily/grob.cc (other_axis_parent_positioning): new function.
8408 (same_axis_parent_positioning): new function
8410 * lily/align-interface.cc (alignment_callback): remove function.
8412 * lily/note-collision.cc (calc_positioning_done): use callback.
8414 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8415 (calc_direction): idem.
8416 remove print function.
8418 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8420 * lily/dot-column.cc (calc_positioning_done): use callback.
8422 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8424 * lily/beam.cc (calc_direction): use pseudo-property for beam
8426 (calc_positions): use callback
8428 * lily/align-interface.cc (calc_positioning_done): use
8429 callback. Fold fixed distance and normal alignment in one function.
8431 * lily/stem.cc (calc_stem_end_position): use callback.
8432 (calc_positioning_done): idem.
8433 (calc_direction): idem.
8434 (calc_stem_end_position): idem
8435 (calc_stem_info): idem.
8437 * lily/grob-property.cc (get_property_data): new function:
8438 (try_callback): new function.
8440 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8443 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8445 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8447 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8451 * lily/include/*.hh (Module): compile fixes.
8453 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8455 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8456 as an argument for char-syntax: use (char-syntax (or nil 0))
8457 instead of (char-syntax nil), thanks to Milan Zamazal.
8459 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8461 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8464 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8467 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8469 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8470 add class_name() method.
8472 * lily/music-scheme.cc: remove ly:music-name.
8474 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8476 * cygwin/postinstall-lilypond.sh: Remove cruft.
8478 * cygwin/postremove-lilypond.sh: Remove.
8480 * cygwin/GNUmakefile (default): Remove postremove rules.
8482 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8484 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8487 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8490 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8491 consider break index for broken spanner.
8493 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8494 characters from string before splitting.
8496 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8498 * scm/framework-ps.scm (output-preview-framework): use
8499 is-book-title to determine whether to chop off the booktitle.
8501 * lily/paper-book.cc (systems): init from book-title-properties
8502 (add_score_title): init score-title-properties.
8504 * ly/paper-defaults.ly: add {score,book}-title-properties.
8506 * scm/document-backend.scm (lookup-interface): error message if
8507 using unknown interface.
8509 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8512 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8514 (make_bracket): new function.
8516 * scm/lily.scm (define-scheme-options): add paper-size option.
8518 * ly/declarations-init.ly (laissezVibrer): get paper size from
8521 * scm/translation-functions.scm: use \fontsize for changing the
8524 * scm/define-grobs.scm (all-grob-descriptions): set
8525 between-length-limit to 1.0
8527 * lily/tie-helper.cc: add between_length_limit_ detail property.
8529 * mf/feta-bolletjes.mf: typos.
8531 * lily/note-head.cc (internal_print): don't shadow idx
8532 parameter. This fixes wrong attachment for do shape heads.
8534 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8536 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8538 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8540 * scm/layout-slur.scm: rename from slur.scm
8542 * scm/layout-page-layout.scm: rename from page-layout.scm
8544 * scm/layout-beam.scm: rename from beam.scm
8546 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8547 bass-figure-interface
8549 * lily/new-figured-bass-engraver.cc (process_music): add
8550 implicitBassFigures property.
8552 * scm/define-markup-commands.scm (pad-x): new markup.
8554 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8555 minimumVerticalExtent on FiguredBass context.
8557 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8558 case the continuation crosses a line break.
8560 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8562 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8563 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8564 absolute file name bug.
8566 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8568 * VERSION (PACKAGE_NAME): release 2.7.12
8570 * input/regression/figured-bass-continuation-center.ly: new file.
8572 * input/regression/beam-outside-beamlets.ly: new file.
8574 * lily/beam.cc (set_beaming): don't clip edges.
8575 (connect_beams): don't clip edges.
8577 * lily/beaming-info.cc (clip_edges): new function.
8579 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8581 * Documentation/user/instrument-notation.itely (Figured bass):
8582 demonstrate extenders, update seealso links.
8584 * scm/titling.scm (marked-up-headfoot): change tagline
8585 handling. tagline = ##f will blank the tagline as well.
8587 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8589 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8591 * lily/new-figured-bass-engraver.cc (struct
8592 New_figured_bass_engraver): add new_music_found_ member.
8594 * lily/lilypond-version.cc (Lilypond_version): deal with
8595 incorrectly formatted version strings.
8597 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8598 New_figured_bass_engraver by default.
8600 * lily/ttf.cc (print_trailer): only define glyph names when
8601 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8603 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8605 * lily/horizontal-bracket.cc (make_bracket): new function.
8607 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8608 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8609 BassFigureLine, BassFigureAlignment
8611 * lily/new-figured-bass-engraver.cc (process_music): new file.
8613 * lily/figured-bass-continuation.cc: new file.
8615 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8618 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8620 * scripts/lilypond-book.py: Bug fix, put the quote around the
8621 actual score for LaTeX documents.
8623 * scm/define-grobs.scm (all-grob-descriptions): Change
8624 collapse-height of the SystemStartBracket grob to 5.0,
8625 so the bracket disappears for single stave score lines (similarly
8626 to SystemStartBraces).
8628 * Documentation/user/advanced-notation.itely (Polymetric
8629 notation): Clarify the use of compressMusic.
8631 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8632 that the grace spacer note in other staves need the same duration
8633 and document the stroke-style property.
8635 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8637 * Documentation/user/global.itely (Vertical spacing): document
8638 alignment-extra-space and fixed-alignment-extra-space.
8640 * Documentation/topdocs/NEWS.tely (Top): add entry.
8642 * input/regression/alignment-vertical-spacing.ly: new file.
8644 * python/convertrules.py (conv): add rule.
8646 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8648 * lily/align-interface.cc (stretch_after_break): new
8649 function. Read fixed-alignment-extra-space property.
8650 (align_elements_to_extents): read alignment-extra-space property.
8652 * lily/lily-guile.cc (robust_scm2dir): new function.
8654 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8655 (annotate-space-left): new function. Annotate space left on page.
8656 (annotate-y-interval): new function.
8657 (paper-system-annotate-last): new function. Annotate bottom-space.
8659 * mf/feta-beugel.mf (y):
8661 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8663 * VERSION (PACKAGE_NAME): release 2.7.11
8665 * scm/lily-library.scm (interval-translate): new function
8666 (interval-center): new function.
8668 * scm/page-layout.scm (paper-system-annotate): new function. Add
8669 arrows for dimensions.
8671 * scm/stencil.scm (dimension-arrows): new function.
8673 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8675 * input/regression/page-spacing.ly: add annotatespacing
8677 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8678 (LY_DEFINE): new function ly:paper-system-set-property!
8680 * Documentation/user/global.itely (Paper size): explain how to add
8683 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8684 correspond to GS's definition.
8686 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8688 (print): only connect to next bracket if the next one is alive.
8689 (print): set padding to 0.0 if the bound is a breakable
8690 column. This makes tupletFullLength brackets reach up to the staff
8691 line if it doesn't connect to the next line.
8693 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8695 * lily/bar-number-engraver.cc: correct docs.
8697 * scm/output-lib.scm (first-bar-number-invisible): rename from
8698 default-bar-number-visibility
8700 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8702 * scm/define-music-properties.scm (all-music-properties): remove
8705 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8707 * po/fi.po: refresh.
8709 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8711 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8713 (disappear): bugfix.
8715 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8717 * lily/include/paper-system.hh (class Paper_system): remove
8718 staff_extents_ member.
8720 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8722 * lily/include/paper-system.hh (class Paper_system): remove
8723 number_ variable. Remove is_title_. Remove break_before_penalty_
8725 * lily/paper-book.cc (systems): use 'number property iso. number_
8728 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8729 remove ly:paper-system-number.
8731 * scm/lily-library.scm (paper-system-title?): new function.
8733 * lily/book.cc (process): bugfix: flip ?: cases.
8735 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8738 * ly/music-functions-init.ly: add outputProperty music function.
8740 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8742 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8744 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8746 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8748 * lily/paper-system.cc (internal_get_property): new function.
8750 * Documentation/user/global.itely (Vertical spacing): refer to
8753 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8756 * input/regression/page-spacing.ly: new file.
8758 * input/regression/page-top-space.ly: new file.
8760 * lily/spacing-spanner.cc: cmath -> math.h
8762 * lily/paper-system.cc (read_left_bound): new function. Read
8763 line-break-system-details from left bound to determine extents.
8765 * Documentation/user/programming-interface.itely (Using LilyPond
8766 syntax inside Scheme): change applyxxx -> applyXxx.
8768 * ly/music-functions-init.ly: add outputProperty music function.
8770 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8772 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8774 * python/convertrules.py (conv): rule
8776 * ly/music-functions-init.ly: applyxxx -> applyXxx
8778 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8781 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8783 * flower/include/real.hh: include <math.h> iso. <cmath>
8785 * flower/include/offset.hh: include real.hh
8787 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8789 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8790 fix example, now that 'interfaces is no longer directly available.
8792 * lily/book.cc (process): don't crash if paper == NULL.
8796 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8798 * scm/define-music-types.scm (music-descriptions): set length and
8799 start-callback for QuoteMusic
8801 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8803 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8804 arguments. Fixes compilation error with gcc 3.3.
8806 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8808 * VERSION: release 2.7.10
8810 * stepmake/stepmake/python-module-rules.make
8811 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8813 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8816 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8818 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8819 -Werror. Otherwise GCC barfs over various optimizations.
8821 * scm/define-grob-properties.scm (all-internal-grob-properties):
8822 add note-head property
8824 * Documentation/user/instrument-notation.itely (Laissez vibrer
8827 * input/regression/laissez-vibrer-ties.ly: new file.
8829 * lily/laissez-vibrer-engraver.cc: new file.
8831 * lily/include/tie-column-format.hh: new file.
8833 * lily/tie-column-format.cc: new file.
8835 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8837 * lily/laissez-vibrer-tie.cc: new file.
8839 * lily/include/laissez-vibrer-tie.hh: new file.
8841 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8843 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8845 * scm/define-grobs.scm (all-grob-descriptions): add
8846 LaissezVibrerTie, LaissezVibrerTieColumn
8848 * lily/tie-column.cc (set_tie_config_directions): new function
8849 (final_shape_adjustment): new function.
8850 (shift_small_ties): new function.
8852 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8854 * lily/include/tie.hh (struct Tie_details): add x_gap_
8855 (struct Tie_configuration): add head_position_
8857 * lily/tie-column.cc (set_chord_outline): new function.
8859 * mf/cmr.enc.in: remove file.
8861 2005-09-11 Graham Percival <gpermus@gmail.com>
8863 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8865 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8867 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8868 reduce aliasing effects.
8870 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8873 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8875 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8877 * flower/include/real.hh: std::fabs too.
8879 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8881 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8883 * lily, flower: Include C++ iso C headers. Import namespace std
8886 * lily/side-position-interface.cc:
8888 * lily/note-head.cc:
8889 * lily/include/includable-lexer.hh:
8890 * flower/include/string-data.icc: Remove using std::*.
8892 * lily, flower: Include C++ iso C headers. Import namespace std
8895 * lily/side-position-interface.cc:
8897 * lily/note-head.cc:
8898 * lily/include/includable-lexer.hh:
8899 * flower/include/string-data.icc: Remove using std::*.
8901 * Documentation/user/instrument-notation.itely (Entering lyrics):
8902 Multiple latin-1->utf-8 conversion fix.
8904 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8906 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8908 * lily/tie.cc (get_configuration): also avoid dots for non-space
8911 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8913 * Documentation/user/instrument-notation.itely: Bugfix.
8915 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8917 * tex/GNUmakefile: don't install texinfo.tex
8919 * tex/ : cleanup: remove unused files.
8921 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8923 * flower/include/real.hh: using std::{isnan,isinf}
8925 * VERSION (PATCH_LEVEL): release 2.7.9
8927 2005-09-05 Graham Percival <gpermus@gmail.com>
8929 * Documentation/user/ instrument-notation.itely,
8930 advanced-notation.itely: minor tweaks.
8932 * input/test/script-chart.ly: add item padding.
8934 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8936 * flower/offset.cc: use math.h iso. <cmath>
8938 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8941 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8942 (widen-left-stencil-edges): new function. Fix alignment problems
8943 with LaTeX includegraphics.
8945 * lily/text-interface.cc (interpret_markup): use abort().
8947 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8949 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8951 * lily/tie.cc (get_configuration): update bezier shape as we
8953 (get_configuration): don't move large ties if we're outside of the
8956 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8958 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8960 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8962 * .cvsignore: Add auto-generated configure files and then some.
8964 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8966 * scm/define-grobs.scm (DynamicLineSpanner): Add
8967 X-extent-callback. Fixes hairpin-slur collision.
8969 2005-08-31 Graham Percival <gpermus@gmail.com>
8971 * Documentation/user/advanced-notation.itely,
8972 basic-notation.itely: minor changes.
8974 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8976 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8977 \linebreak between each .eps file if \betweenLilyPondSystem is
8980 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8981 music): Document the \linebreak
8983 * Documentation/user/lilypond-book.itely,
8984 input/tutorial/lbook-latex-test.tex,
8985 Documentation/user/examples.itely: Remove \usepackage{graphics}
8987 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8989 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8991 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8994 * scripts/lilypond-book.py (PREAMBLE_LY): define
8995 inside-lilypond-book
8996 (modify_preamble): new function. Insert \RequirePackage{graphics}
8997 when no {graphics found in preamble.
8999 2005-08030 Graham Percival <gpermus@gmail.com>
9001 * Documentation/user/basic-notation.itely, global.itely,
9002 tutorial.itely: misc small changes.
9004 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9006 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9009 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9011 * lily/tie-column.cc (new_directions): put Tie down on center
9014 * lily/script-interface.cc (before_line_breaking): use
9015 Grob::programming_error
9017 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9019 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9022 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9024 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9026 2005-08-29 Werner Lemberg <wl@gnu.org>
9028 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9029 the `*.scale.pfa' files to avoid warnings.
9031 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9033 * lily/tempo-performer.cc (process_music): idem.
9035 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9037 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9039 * Documentation/user/advanced-notation.itely (Text markup): not a
9042 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9044 * lily/staff-performer.cc (initialize): add tempo/name to
9047 2005-08-26 Graham Percival <gpermus@gmail.com>
9049 * Documentation/user/advanced.itely: add text-only example.
9051 * Documentation/user/invoking.itely: add index entries for
9054 * Documentation/user/ tutorial.itely, basic-notation.itely:
9055 small fixes suggested by Steve D. Thanks!
9057 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9059 * input/regression/markup-bidi-pango.ly: new file.
9061 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9062 standard. Remove #ifdef. Remove memleak.
9063 (text_stencil): use text_dir to decide how to composite items.
9064 (text_stencil): determine uniform text direction for the entire
9067 * scripts/lilypond-book.py (output_name): remove
9068 latex_filter_cmd. Non-portable to non-Unix systems.
9069 (get_latex_textwidth): use File.write and os.unlink() instead.
9071 * THANKS: add Vicente & Trevor.
9073 * lily/grob.cc (discretionary_processing): look up origin for
9074 programming_error too.
9076 * input/regression/tie-broken.ly: new file.
9078 * lily/tie-column.cc (set_chord_outlines): set outline for line
9081 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9083 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9084 unscaled transform, just translate stencils.
9086 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9089 * scm/define-markup-commands.scm (wordwrap-string): use
9091 (wordwrap-stencils): idem.
9094 (wordwrap-stencils): translate last line to right for
9095 text-direction = LEFT.
9097 * scm/define-grob-properties.scm (all-user-grob-properties): add
9100 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9102 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9103 when copying a Lily_parser object.
9105 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9107 * scm/define-markup-commands.scm (null): add null markup.
9109 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9111 * lily/item.cc: Add documentation of center-invisible
9113 2005-08-24 Graham Percival <gpermus@gmail.com>
9115 * Documentation/user/advanced-notation.itely: add info about
9118 * Documentation/user/programming-interface.itely: fix example
9119 involving raised text.
9121 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9123 * lily/beam.cc (print): fix X start/end points of isolated
9126 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9128 * lily/multi-measure-rest.cc (set_text_rods): new function.
9130 * lily/vertical-align-engraver.cc (process_music): call
9131 Align_interface::set_axis(). This forces #'elements to be ordered,
9132 preventing random vertical reordering of staves.
9134 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9135 add avoid-slur property.
9137 * Documentation/user/basic-notation.itely (Measure repeats): add
9138 countPercentRepeats example.
9140 * Documentation/user/advanced-notation.itely (Other text markup
9141 issues): remove remark about normal-font. We have \normal-text
9143 * input/regression/tie-chord.ly: add note about remaining bugs.
9145 * lily/tie.cc (print): try Tie_column::set_directions () if
9146 control-points not yet defined.
9148 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9150 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9151 extent. This fixes braces falling out of the EPS bbox.
9153 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9156 2005-08-23 Graham Percival <gpermus@gmail.com>
9158 * {various} : change #up->#UP and #down->#DOWN.
9160 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9162 * Documentation/user/advanced-notation.itely: clarify
9163 what objects handles text on a multimeasure rest.
9165 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9167 * VERSION (PATCH_LEVEL): release 2.7.7
9169 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9171 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9173 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9175 * input/regression/*.ly: formatting clean-up. Default layout
9176 before music expression.
9178 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9179 romanze28-2 example.
9181 * scm/ps-to-png.scm: remove dir-re function.
9182 (make-ps-images): generate page names, instead of globbing them.
9183 This brings down LilyPond memory usage for make web by a factor
9186 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9187 don't use glob. With 3000 files, globbing
9188 Documentation/user/out-www/ can take too much time.
9190 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9192 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9194 * input/regression/tie-manual.ly: new file
9196 * input/regression/tie-chord.ly: update.
9198 * flower/include/interval.hh (struct Interval_t):
9200 * lily/tie.cc (distance): new function
9201 (height): new function.
9202 (init): new function
9203 (Tie_details): new struct.
9205 * lily/skyline.cc (skyline_height): new function.
9207 * lily/tie-column.cc (set_chord_outlines): new function.
9208 (new_directions): read tie-configuration
9210 * lily/skyline.cc: fix ASCII art.
9212 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9214 * python/convertrules.py (string_or_scheme): Fix spelling error
9216 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9218 * lily/tie-column.cc (set_directions): set directions only once.
9219 (add_configuration): new function.
9221 * lily/tie.cc (set_control_points): new function
9223 * lily/tie-column.cc (new_directions): new function.
9225 * ly/music-functions-init.ly: set 'pitch property
9226 iso. trill-pitch. This makes \relative work with \pitchedTrill
9228 * lily/tie.cc (get_configuration): new function. Don't generate
9229 control points, rather, generate configuration.
9230 remove head-pair property.
9232 * lily/include/tie.hh (struct Tie_configuration): new struct.
9234 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9236 * Documentation/topdocs/NEWS.tely: clarify.
9238 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9240 * lily/tie.cc: remove minimum-length
9242 * scm/define-grob-properties.scm (all-user-grob-properties):
9243 remove staffline-clearance, y-offset
9245 * input/regression/tie-dots.ly (Module): remove.
9247 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9248 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9250 * input/regression/tie-single.ly: new file.
9252 2005-08-21 Graham Percival <gpermus@gmail.com>
9254 * ly/bagpipe.ly: fix compile problem.
9256 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9258 * lily/midi-item.cc (name): new method.
9260 * lily/staff-performer.cc (acknowledge_audio_element): use
9261 signature of baseclass.
9263 * lily/engraver-group.cc (do_announces): move recursion call out
9266 * lily/drum-note-performer.cc (class Drum_note_performer): use
9267 process_music everywhere.
9269 * ly/performer-init.ly: add default children everywhere.
9271 * lily/paper-book.cc (output): call paper-book-write-midis
9272 directly: always write MIDI, even if no \layout {} block.
9274 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9276 * VERSION (PACKAGE_NAME): release 2.7.6
9278 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9279 about not being able to handle repeat.
9281 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9283 * Documentation/user/examples.itely (Piano templates):
9284 * lily/include/performer-group.hh: Remove last traces of
9285 Performer_group_performer. Fixes make web.
9287 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9289 * Documentation/user/examples.itely (Piano templates): change
9290 Engraver_group_engraver -> Engraver_group
9292 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9293 scm_stand_in_procs is not weak_any.
9295 * lily/volta-bracket.cc (print): don't use strcmp().
9297 * lily/volta-engraver.cc (process_music): use
9298 Text_interface::is_markup() for setting the 'text property of the
9301 * input/mutopia/claop.py (accents): update syntax to 2.6
9303 * scm/define-context-properties.scm
9304 (all-user-translation-properties): add countPercentRepeats.
9306 * Documentation/user/basic-notation.itely (Measure repeats): add
9307 isolated percent example.
9309 2005-08-18 Graham Percival <gpermus@gmail.com>
9311 * input/ {various}: change direction #1, #-1 to
9312 #up/#down or \fooUp, \fooDown.
9314 * Documentation/user/music-glossary.tely: #-1 to #down.
9316 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9317 to #up, #-1 to #down.
9319 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9321 * lily/include/engraver-group.hh: rename.
9323 * lily/include/performer-group.hh: rename.
9325 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9327 * input/test/script-abbreviations.ly: Removed some old LaTeX
9330 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9332 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9333 Remove functions. Remove if 1: constructs, reindent.
9335 * scripts/convert-ly.py (add_version): Add functions from
9338 * scm/script.scm (default-script-alist):
9339 s/priority/script-priority. Fixes script stacking. Backportme.
9340 (Fermata): Very low priority.
9342 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9344 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9346 * input/regression/slur-script.ly: remove padding tweaks. Add
9349 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9350 time sigs and related stuff.
9352 * scm/define-grob-properties.scm (all-user-grob-properties): add