1 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
7 * lily/include/parse-scm.hh:
8 * lily/include/smobs.hh:
11 * lily/program-option.cc:
13 implement and use ASSERT_LIVE_IS_ALLOWED()
15 * ly/music-functions-init.ly:
17 set-part-combine fix for autochange.
19 * lily/include/lily-lexer.hh:
20 * lily/include/lily-parser.hh:
22 * lily/lily-parser-scheme.cc:
23 * lily/lily-parser.cc:
24 clear lexer scopes after parsing file. Plugs pseudo memory leak
26 * ly/declarations-init.ly:
27 * ly/music-functions-init.ly:
28 * scm/part-combiner.scm:
29 Remove set-part-combine-listener. This plugs a memory leak.
35 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
40 * lily/part-combine-iterator.cc:
41 don't allocate part combine events statically. Plugs small leak.
43 * lily/lily-parser-scheme.cc:
44 plug memleak in case of failed files.
46 * lily/include/source.hh:
51 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
53 * lily/include/program-option.hh:
54 * lily/program-option.cc:
55 get_program_option() function
58 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
60 * lily/include/translator.hh:
61 * lily/include/translator.icc:
65 * lily/figured-bass-engraver.cc:
66 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
68 * stepmake/stepmake/compile-vars.make:
69 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
71 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
77 trim warning messages.
82 * input/regression/utf-8.ly:
83 document utf-8 meaning of phrases.
85 * scm/define-markup-commands.scm:
86 make \caps markup default to smallCaps
90 use glyph indexing for glyph name .notdef
92 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
94 * input/regression/utf-8.ly: Fix doc to match order of language
97 2006-11-01 Joe Neeman <joeneeman@gmail.com>
99 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
100 page and line forces.
102 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
104 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
106 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
108 * Documentation/user/GNUmakefile:
109 don't use ImageMagick, use GS directly.
112 otf depends on otf-g?table. Fixes race condition in -j2 build.
113 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
119 remove .deb/.rpm downloading.
121 * buildscripts/git-update-changelog.py:
122 bugfixes for git-update-changelog.py
124 * Documentation/user/GNUmakefile:
127 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
129 * input/regression/tie-semi-single.ly:
130 use position/direction from single tie case too. This fixes
131 overrides and defaults for single laissez-vibrer and repeat ties.
133 * buildscripts/git-update-changelog.py:
134 only prepend header if one patch was successful.
136 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
138 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
139 stuff. Remove cygwin packaging stuff.
141 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
143 * python/convertrules.py (conv): Part 2 fixes vertical extent.
145 * input/test/vertical-extent.ly: Fix and elaborate on vertical
146 staff extent. (Thanks Mats)
148 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
150 * buildscripts/git-update-changelog.py (main): write .msg and cvs
153 * scm/define-grobs.scm:
154 separation-items have width
160 * Documentation/topdocs/NEWS.tely:
161 * lily/separating-group-spanner.cc:
162 * lily/slur-engraver.cc:
163 * lily/slur-scoring.cc:
164 * scm/define-grobs.scm:
165 * input/regression/slur-clef.ly:
166 add breakableSeparationItem to extra encompass for slurs. This
167 fixes slur/clef slur/key collisions etc. Should fix #49
169 * lily/include/slur-scoring.hh:
170 * lily/slur-scoring.cc:
171 Use X of separation item as slur start. Fixes #120
173 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
175 * buildscripts/git-update-changelog.py (changelog_body): don't
178 * lily/grob.cc: add avoid-slur
180 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
184 move server/emacsclient to elisp/
186 * buildscripts/git-update-changelog.py (Commit.note_del_file):
189 * elisp/server.el.patch:
192 * elisp/emacsclient.patch:
195 * buildscripts/git-update-changelog.py:
202 * buildscripts/git-update-changelog.py:
203 script to update ChangeLog with Git messages.
205 * lily/beam-engraver.cc:
206 * input/regression/rest-pitched-beam.ly:
207 don't set callback if staff-position set. Fixes #126.
209 * lily/bar-number-engraver.cc:
211 * lily/fingering-engraver.cc:
212 * lily/grob-property.cc:
214 * lily/include/grob.hh:
215 * lily/include/lily-guile-macros.hh:
216 * lily/mark-engraver.cc:
217 * lily/melody-engraver.cc:
218 * lily/script-column.cc:
219 * lily/tie-formatting-problem.cc:
221 internal_get_property_data() using ly_symbol2scm()
223 * stepmake/stepmake/generic-targets.make:
224 create .gitignore in outdir.
229 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
231 * input/test/vertical-extent.ly:
232 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
234 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
236 * stepmake/bin/add-html-footer.py (compose): remove setgcos
238 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
240 * GNUmakefile.in (install-help2man): install-help2man target.
242 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
244 * SConstruct (configure): Do not check for /bin/sh.
246 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
248 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
251 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
253 * input/regression/fret-boards.ly: new file.
255 * po/de.po: new po courtesy translation team.
257 * scripts/lilypond-book.py (get_option_parser): add newline to doc
260 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
262 * ly/gregorian-init.ly (neumeDemoLayout): update
263 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
265 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
266 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
268 2006-10-27 Erlend Aasland <erlenda@gmail.com>
270 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
271 Yet another build fix.
273 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
275 * SConstruct (lilypondprefix): use sorted() for list_sort()
278 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
280 * flower/SConscript: Unit test rules.
282 * flower/test-std.cc: Compile fix.
284 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
286 * python/midi.c (pymidi_parse_track): warning fixes.
288 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
289 include dot-column.hh
291 2006-10-26 Graham Percival <gpermus@gmail.com>
293 * Documentation/user/{basic-, global}: minor changes from mailist.
295 2006-10-26 Erlend Aasland <erlenda@gmail.com>
297 * scm/define-grobs.scm: trivial beautification
299 * lily/tie-performer.cc: no need to #include "pqueue.hh"
301 * lily/source-file.cc: put multibyte var inside #if clause
303 * scm/define-grob-interfaces.scm:
304 * scm/define-grob-properties.scm:
305 Build fix (string-fret-finger-combinations)
307 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
310 * Documentation/user/lilypond-book.itely: Build fix.
312 2006-10-26 Joe Neeman <joeneeman@gmail.com>
314 * lily/system.cc (get_paper_system):
315 * lily/paper-book.cc (systems):
316 move most of the backwards compatibility stuff into
319 * Documentation/topdocs/NEWS.tely: add 2 entries for the
322 * Documentation/user/page.itely: remove time-scaled-music
323 bug for the Page_turn_engraver
325 * lily/paper-book.cc (set_system_penalty): backwards
326 compatibility (breakbefore) for the old page breaker
328 2006-10-25 Graham Percival <gpermus@gmail.com>
330 * Diocumentation/user/instrument-notation.itely: added more
331 info about stanzas; thanks Geoff!
333 * Documentation/user/ {basic, advanced}: small fixes from
336 * THANKS: add some bug reporters.
338 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
340 * scm/define-context-properties.scm (all-user-translation-properties):
341 noteToFretFunction: Add.
343 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
344 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
346 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
348 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
351 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
352 Remove bashism in delete.
354 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
356 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
358 * scm/translation-functions.scm (determine-frets-mf): flatten let*
360 * scm/define-context-properties.scm
361 (all-user-translation-properties): add maximumFretStretch property.
363 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
365 * lily/source-file.cc (get_counts): use multibyte variable.
367 * scm/translation-functions.scm (determine-frets-mf): new
368 function: compute fret numbers.
370 * scm/output-lib.scm (string-frets->description) new function.
371 (fret-board::calc-stencil): new function
373 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
375 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
377 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
379 * lily/tab-note-heads-engraver.cc: cleanups.
381 * lily/fretboard-engraver.cc: new file
383 * ly/engraver-init.ly: add FretBoards context
385 2006-10-24 Joe Neeman <joeneeman@gmail.com>
387 * lily/grob.cc (pure_relative_y_coordinate)
388 (pure_height): use the new call_pure_function stuff
390 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
393 * lily/side-position-interface.cc (pure_y_aligned_side): add an
396 * lily/simple-closure.cc (ly_eval_simple_closure): make
397 simple-closure evaluatable from scheme
398 (evaluate_with_simple_closure): make simple-closures pure-
401 * lily/slur.cc (pure_outside_slur_callback): new function
403 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
404 fits in with previous changes that made the page forces much
407 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
408 and pure-Y-extent into this new function.
409 (pure-conversions-alist): add outside-slur-callback
411 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
413 * Documentation/user/advanced-notation.itely (Instrument names):
414 Remove obsolete bug workaround for instrument names on piano
417 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
419 * Documentation/user/lilypond-book.itely (Integrating DocBook and
420 music): patch by Bertalan Fodor for docbook.
422 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
423 of $(LILYPOND). Prevents lilypond run for .txt files.
425 * INSTALL.txt: gitness.
427 * .cvsignore: update to force gitness.
429 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
431 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
432 detect suicide in nested tuplets.
434 2006-10-23 Werner Lemberg <wl@gnu.org>
436 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
437 typo in argument to FT_Get_X11_Font_Format.
439 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
441 * stepmake/stepmake/po-vars.make: more gitness.
443 * flower/polynomial.cc (check_sol): no empty if bodies.
445 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
447 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
449 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
451 * Documentation/user/examples.itely (Transcription of mensural
452 music): Added more comments in .ly source. Suggest to remove
453 Forbid_line_break_engraver to allow line breaking at all bars.
455 * Documentation/user/instrument-notation.itely (Ancient
456 articulations): Updated @refbugs regarding episem.
458 * Documentation/user/instrument-notation.itely (Gregorian square
459 neumes ligatures): Added \augmentum dots. Updated @refbugs
460 regarding \augmentum.
462 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
464 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
467 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
470 * ly/gregorian-init.ly: Added \augmentum macro.
472 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
474 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
476 * lily/pango-font.cc (pango_item_string_stencil): use
477 FT_Get_X11_Font_Format()
479 2006-10-22 John Mandereau <john.mandereau@free.fr>
481 * po/fr.po: update translation.
483 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
485 * VERSION (PATCH_LEVEL): bump version
487 * input/regression/horizontal-bracket-break.ly: new file.
489 * scm/define-grobs.scm (all-grob-descriptions): calc
492 * lily/horizontal-bracket.cc (make_bracket): support
493 connect-to-neighbor. Fix #118
495 * VERSION: release 2.9.26-2
497 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
499 * VERSION (PACKAGE_NAME): release 2.9.26
501 * buildscripts/output-distance.py (test_basic_compare): add
503 (FileLink.multi_img_cell): new function, glob multi-page png
506 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
508 * po/lilypond.pot: update.
510 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
512 * Documentation/user/global.itely (File structure): remove
515 * lily/parser.yy (FIXME): remove ADDQUOTE
517 * Documentation/user/global.itely (Extracting fragments of
518 notation): new node, about clip systems.
520 * Documentation/user/lilypond-book.itely (Many quotes of a large
521 score): ref to clip systems.
523 * Documentation/user/instrument-notation.itely (Entering lyrics):
524 add note about lyric ties and required font.
526 * lily/open-type-font.cc (glyph_list): format errors.
528 * Documentation/user/programming-interface.itely (Scheme
529 procedures as properties): more doco on simple-closure and scheme
531 (Input variables and Scheme): use lilypond[verbatim], document
534 * Documentation/user/page.itely (Displaying spacing): use \book
535 explicitly, so arrows show .
536 (Line breaking): add note about Forbid_line_break_engraver
538 * Documentation/user/tweaks.itely (Common tweaks): also set length
539 to prevent tie squeezing.
540 (Default files): use @var{}
542 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
543 (Generating LilyPond files): add FOMUS.
545 2006-10-20 Joe Neeman <joeneeman@gmail.com>
547 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
548 Y-offset for TextScript and Script
550 * lily/text-engraver.cc (make_item):
551 * lily/script-engraver.cc (make_script_from_event):
552 remove call to Side_position_interface::set_axis since all scripts
553 now have this set by default
556 * lily/prob.cc: use variables
558 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
560 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
561 at typography, rather analyse stream event duration.
563 * Documentation/user/page.itely (Page formatting): set a6 paper
564 for system separator example.
566 * lily/arpeggio.cc (Module): idem.
568 * lily/accidental-placement.cc: add script-priority property.
570 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
572 * lily/ttf.cc (print_trailer): if all else fails: use
573 glyphIndexXXXX as glyph name. Fixes #117.
575 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
576 entry if cmap contains glyph.
577 (get_index_to_charcode_map): remove from Pango_font class, use
578 global filename -> font mapping.
579 (get_glyph_index_name): new function.
580 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
583 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
585 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
588 * scm/define-grob-properties.scm (all-user-grob-properties):
589 remove outdated doc. Fixes #116
591 * lily/completion-note-heads-engraver.cc (process_music): always
592 clone input events; otherwise we may overwrite input 'duration
593 property. Fixes #115.
595 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
598 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
601 * VERSION (PATCH_LEVEL): bump version.
603 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
605 * lily/engraver.cc (internal_make_grob): use variables.
607 * flower/string-convert.cc (dec2double): clean-up warnings.
609 * configure.in (CXXFLAGS): add -Werror.
611 * VERSION (PACKAGE_NAME): release 2.9.25
613 2006-10-18 Joe Neeman <joeneeman@gmail.com>
615 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
616 line even if we precede a forced break.
618 * lily/optimal-page-breaking.cc (try_page_spacing): square line
619 forces too. Make page-spacing weight default to 10 because the
620 changes to vertical springs decreased the page force/line force
621 proportions. Also, take the average of line force and page force
622 instead of just the sum.
624 * lily/constrained-breaking.cc (initialize): make the stiffness
625 of the vertical springs depend on the height of the system. This
626 prevents pages with only a few large systems from getting huge
629 * Documentation/user/page.itely (Page formatting): document the
630 change in default page-spacing-weight
632 * lily/include/constrained-breaking.hh: initialise bottom_padding_
634 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
636 * input/typography-demo.ly (melody): remove superfluous slur.
638 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
639 add piano-pedal-script-interface
641 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
643 * scripts/lilypond-book.py: DocBook support.
645 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
647 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
649 (stop_translation_timestep): set bound to currentMusicalColumn if
650 not set yet. Fixes #102
652 * lily/piano-pedal-bracket.cc: formatting.
654 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
656 * lily/piano-pedal-align-engraver.cc: new class
657 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
660 2006-10-18 Heikki Junes <hjunes@gmail.com>
662 * po/fi.po: Update Finnish translation (before the next release).
664 2006-10-17 Joe Neeman <joeneeman@gmail.com>
666 * lily/system.cc (get_paper_system): reinstate the backwards-
667 compatible page breaking for the old page breaker.
669 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
671 * lily/recording-group-engraver.cc: removed
673 * lily/context.cc, lily/translator-group.cc: Don't touch
674 Context::implementation_ if it's null
676 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
678 * scm/paper.scm: only use left-margin if defined.
680 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
682 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
684 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
685 strokeFingerOrientations
687 * lily/script-column.cc (row_before_line_breaking): also handle
688 accidentals and arpeggios in horizontal script stacking.
690 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
693 * input/regression/script-stack-horizontal.ly: trim.
695 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
697 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
700 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
701 'text if string argument.
703 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
705 * scm/define-context-properties.scm
706 (all-user-translation-properties): change to strokeFingerOrientations
708 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
710 * lily/parser.yy: remove debug output
712 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
714 * ly/paper-defaults.ly: set left/right margin.
716 * scm/paper.scm (set-paper-dimensions): use left-margin and
717 right-margin for computing linewidth.
719 * Documentation/topdocs/NEWS.tely (Top): idem.
721 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
724 * scm/define-markup-commands.scm (tied-lyric): increase negative
725 space: space syllables tighter.
727 * VERSION (PATCH_LEVEL): bump version.
729 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
732 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
734 * COPYING: further clarification
736 * VERSION: release 2.9.24
738 * input/regression/script-stack-horizontal.ly: add version.
740 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
742 * input/regression/lyric-tie.ly (texidoc): use different words.
744 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
746 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
748 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
749 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
751 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
753 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
755 * Doxyfile: remove file.
757 * scm/define-grob-interfaces.scm (string-finger-interface): add
758 string-finger-interface
760 * lily/general-scheme.cc (LY_DEFINE): move
761 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
763 * Documentation/topdocs/NEWS.tely (Top): add note for
764 string-finger feature.
766 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
769 * scm/output-lib.scm (string-finger::calc-text): read 'digit
772 * input/regression/script-stack-horizontal.ly: new file.
774 * ly/engraver-init.ly: add Script_row_engraver.
776 * lily/script-column.cc (order_grobs): refactor: separate axis
778 (row_before_line_breaking): new function.
780 * lily/script-row-engraver.cc (Script_row_engraver): new file.
782 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
784 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
786 * Documentation/user/instrument-notation.itely: Cleanup: Remove
787 annoying skip notes from mensural ligature example. Update
788 @refbugs for ligatures and mensural ligatures.
790 * lily/coherent-ligature-engraver.cc,
791 lily/include/coherent-ligature-engraver.hh,
792 lily/mensural-ligature-engraver.cc,
793 lily/vaticana-ligature-engraver.cc: Revise code for item
794 reparentizing. There should now be less programming_error
797 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
799 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
800 Maintenance bugfix: Don't create empty Stencil (), but empty box
801 instead. This fix should eliminate some programming_error
804 * ly/engraver-init.ly (MensuralStaff): Set default accidental
807 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
808 \layout block _before_ score.
810 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
812 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
814 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
816 2006-10-13 Erlend Aasland <erlenda@gmail.com>
818 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
820 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
822 * VERSION (PATCH_LEVEL): bump version.
824 * COPYING: clarify exception note.
826 * lily/main.cc: remove remark about "COPYING".
828 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
829 system-count starts at 0 for each clip-region. Change name to
830 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
831 layout block, per score.
833 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
835 * lily/input-smob.cc: add equal_p for Input
837 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
840 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
842 * lily/prob.cc: Add equal_p predicate for Prob
844 * lily/translator.cc: small cleanup
846 * scm/document-music.cc: use data from translator listener
847 registration to generate documentation for event classes
849 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
851 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
853 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
855 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
857 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
859 * Documentation/topdocs/INSTALL.texi: Thinko.
861 * .cvsignore: Update.
863 * lexer-gcc-3.1.sh: Remove.
865 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
866 Update anonymous cvs access. Remove comment about gcc 3.0.4.
868 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
870 * VERSION: release 2.9.23
872 * lily/paper-column-engraver.cc (stop_translation_timestep): also
875 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
877 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
879 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
881 * input/regression/clip-systems.ly (Notes): new file.
883 * scm/lily.scm (define-scheme-options): add clip-systems option.
885 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
887 (dump-stencil-as-EPS): move bbox calculation from previous
889 (output-framework): use -dclip-systems
891 * scm/lily-library.scm (filtered-map): new function
893 * scm/framework-ps.scm (clip-system-EPS): new function.
894 (clip-system-EPSes): new function.
896 * lily/paper-column.cc: add rhythmic-location to interface
898 * scm/define-grob-properties.scm (all-user-grob-properties): add
899 rhythmic-location property.
901 * scm/clip-region.scm: new file: rhythmic-location data type and
902 system-clipped-x-extent function.
904 * ly/init.ly: use (scm clip-region)
906 * lily/paper-column-engraver.cc (stop_translation_timestep): set
907 rhythmic-location for paper column grobs.
909 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
911 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
913 * ly/engraver-init.ly: Remove obsolete comment on
916 * Documentation/user/instrument-notation.itely: Tune Ancient
917 Articulations figure, such that the episem actually shows.
919 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
920 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
922 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
925 2006-10-12 Graham Percival <gpermus@gmail.com>
927 * Documentation/user/ {some}: minor edits that were lost somehow.
929 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
931 * VERSION (PACKAGE_NAME): bump version.
933 * input/regression/lyric-tie.ly (texidoc): new file.
935 * Documentation/topdocs/NEWS.tely (Top): add new feature.
937 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
939 * scm/define-markup-commands.scm (tied-lyric): new function: split
940 string along ~ and reattach with U+203F (tie character) and
943 * scm/output-lib.scm (lyric-text::calc-text): new function.
945 * lily/lyric-engraver.cc (process_music): don't set 'text.
947 * scm/output-lib.scm (string-finger::calc-text): new function
948 (lyric-text::print): new function.
950 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
951 generic for fingering & string number. Use for string-finger.
953 * scm/define-music-types.scm (music-descriptions): add
956 * lily/fingering-engraver.cc (listen_string_finger): new function
958 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
960 * scm/define-context-properties.scm
961 (all-user-translation-properties): add stringFingerOrientations
963 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
965 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
966 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
968 * lily/dots.cc: Added style property for dots.
970 * mf/parmesan-heads.mf: Fix typo in comment.
972 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
973 adding longa head to feta font and removing obsolete default
976 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
978 * scm/output-lib.scm (fingering::calc-text): use origin
979 event-property, not music-property.
981 * lily/lilypond.rc.in: spell my name correctly.
983 2006-10-10 Joe Neeman <joeneeman@gmail.com>
985 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
986 already have a non-empty extent. Fixes estimation for Hara-kiri
989 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
991 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
994 * lily/ligature-engraver.cc: Remove unused #include.
996 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
997 Bugfix: remove method check_for_prefix_loss(Item *) from global
998 namespace to avoid namespace pollution.
1000 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1002 * VERSION: release 2.9.22
1004 * ly/generate-documentation.ly: update option name.
1006 * lily/dynamic-text-spanner.cc (print): revert fix.
1008 * scm/define-grob-interfaces.scm
1009 (trill-pitch-accidental-interface):
1010 add trill-pitch-accidental-interface
1012 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1013 dereference if it's really a duration.
1015 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1016 useBassFigureExtenders is not set.
1017 (listen_bass_figure): record as new event if
1018 useBassFigureExtenders not set. Fixes #103.
1020 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1021 instead: move circle. Fixes #107.
1023 * scm/define-grobs.scm (all-grob-descriptions): set
1024 allow-loose-spacing for PaperColumn and
1025 NonMusicalPaperColumn. Kludge for #110.
1027 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1029 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1030 allow-loose-spacing property.
1032 * scm/define-markup-commands.scm (postscript): gsave & grestore
1033 around embedded PS. Do setlinewidth too. Fixes #109.
1035 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1037 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1038 code. This patch fixes ligature brackets that were not at all
1041 2006-10-08 Graham Percival <gpermus@gmail.com>
1043 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1045 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1047 * scm/define-context-properties.scm: clarified docs (bug 91).
1049 * Documentation/user/basic-notation.itely: document volta brackets
1050 not aligning (bug 63).
1052 * Documentation/user/ global.itely invoking.itely: ignore or
1053 add warnings about texstr.
1055 2006-10-08 John Mandereau <john.mandereau@free.fr>
1057 * po/fr.po: update translation.
1059 * po/: update msgids.
1061 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1063 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1065 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1067 * Documentation/user/page.itely (Two-pass vertical spacing): add
1068 documentation for two-pass spacing technique.
1070 2006-10-06 Graham Percival <gpermus@gmail.com>
1072 * Documentation/user/convert-ly.txt: new file; new
1073 storage place for this file (moved from bugs/ CVS).
1075 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1077 * lily/note-head.cc: Fixed programming_error message.
1079 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1081 * scm/define-grobs.scm (pure-conversion): move pure-callback
1084 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1085 marcato, stopped, thumb.
1087 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1089 * lily/completion-note-heads-engraver.cc (process_music): don't
1090 skimp on memory usage.
1092 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1095 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1096 parenthesis item. This fixes premature Y-extent triggering. Fixes
1099 * VERSION (PATCH_LEVEL): bump version.
1101 2006-10-04 Graham Percival <gpermus@gmail.com>
1103 * Documentation/user/advanced-notation.itely: added
1104 info about instrument names for piano or other contexts,
1107 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1109 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1110 solfa_base_notewidth as unit for non-DO-notes too.
1112 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1114 * VERSION: release 2.9.21
1116 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1119 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1121 * python/lilylib.py (progress): Minor fix.
1123 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1125 * lily/note-name-engraver.cc: doc engraver.
1127 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1129 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1131 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1134 * lily/stem-engraver.cc (make_stem): don't set duration-log
1136 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1137 write snippet-names binary.
1139 * python/lilylib.py (system): use os.system for mingw32
1141 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1144 * scm/backend-library.scm: update email address.
1146 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1149 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1152 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1153 handle dot creation separately.
1155 * lily/tab-note-heads-engraver.cc (process_music): idem.
1157 * lily/drum-note-engraver.cc (process_music): idem.
1159 * lily/note-heads-engraver.cc (process_music): idem.
1161 * lily/rest-engraver.cc: don't set duration-log.
1163 * scm/output-lib.scm (string-number::calc-text): new function.
1164 (note-head::calc-duration-log): new function.
1166 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1168 * scm/output-lib.scm (fingering::calc-text): new function.
1170 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1172 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1173 and include-eps-font -> include-eps-fonts
1175 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1177 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1179 * lily/timing-translator.cc: list properties.
1180 (start_translation_timestep): update internalBarNumber too.
1182 * scm/define-context-properties.scm
1183 (all-user-translation-properties): add internalBarNumber.
1185 * input/regression/spacing-no-note.ly: new file.
1187 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1189 * lily/book.cc: #include cleanup.
1191 * lily/include/lily-guile-macros.hh: add assert to
1192 scm_or_str2symbol(SCM).
1194 * VERSION (PATCH_LEVEL): bump version.
1196 * lily/spacing-spanner.cc (musical_column_spacing): handle
1197 musical->nonmusical spacing case, where there is no spacing
1198 wish. Fixes issue #61.
1200 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1201 (pango_item_string_stencil): use logical rect horizontally (to
1202 preserve spaces), ink_rect vertically (for time signatures).
1204 * lily/font-metric.cc (word_stencil): new interface function
1206 * input/regression/utf-8-mixed-text.ly: new file.
1208 * lily/percent-repeat-engraver.cc (listen_percent): remove
1211 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1212 non-dynamic scripts. Fixes #30.
1214 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1216 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1218 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1219 SCM_UNDEFINED for non-existent data.
1221 * lily/side-position-interface.cc (general_side_position): allow
1222 optional current_offset argument for chaining, so combinations of side-position
1223 and outside slur callback don't add up. Fixes issue #92.
1225 * lily/pango-font.cc (pango_item_string_stencil): use
1226 logical_rect. This prevents spaces after words from disappearing,
1229 * VERSION: release 2.9.20
1231 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1233 * scm/define-grob-properties.scm (all-user-grob-properties):
1234 mention stencil as user settable.
1236 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1238 * Documentation/user/page.itely (Page formatting):
1239 document auto-first-page-number
1241 * lily/page-breaking.cc (find_chunks_and_breaks):
1242 * lily/paper-score.cc (calc_breaking): Follow changes to the
1243 Constrained_breaking interface
1245 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1246 here backwards, as an optimisation
1247 (initialize): new function; move most of the code in resize () here
1248 (combine_demerits): cache ragged_right_
1249 (Constrained_breaking): constructor now takes the Paper_score
1251 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1253 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1254 avoid parser lookahead for 0-ary functions.
1256 * lily/translator.cc: Extract event classes from
1257 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1259 2006-10-02 Heikki Junes <hjunes@gmail.com>
1261 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1264 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1266 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1267 function. Call the page breaking function selected in the
1268 `page-breaking' \paper variable, then the post processing function
1269 chosen using the `page-post-process' \paper variable.
1270 (line-height): new function. Return the height of a system.
1271 (line-minimum-position-on-page): new function. Return the position
1272 of a system on page (using the previous line position), only
1273 considering between system padding.
1274 (stretchable-line?): new function. Says whether a line can be
1275 stretched (ie. is not a title nor a single staff system).
1276 (page-maximum-space-left): new function. Computes space left on a
1277 page, when all systems are separated by their padding.
1279 * lily/page-breaking.cc (breaking::make_pages): Move page post
1280 processing function call to page breaking wrapper (common to all
1283 * lily/paper-book.cc (book::pages): call the page breaking
1284 wrapper, instead of the page breaker directly
1286 * ly/paper-defaults.ly: Add \paper variables for page breaking
1287 wrapper and page post processing function. Make
1288 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1289 `system-maximum-stretch-procedure' variable for holding a function
1290 computing the maximum stretch a system allows.
1292 * scm/layout-page-dump.scm (write-page-breaks): computes the
1293 stretch to apply to systems on a page to minimize left
1294 space. Dump this stretch length.
1296 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1297 the system-stretch property of the tweak data to stretch the
1299 (includePageLayoutFile): Void function which includes the
1300 generated page-layout file if it exists and if the page layout
1301 dumping is not asked.
1302 (scoreTweak): if the score tweak named by the argument exists,
1305 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1307 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1308 handle correctly the case where there are multiple \noPageBreaks
1311 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1313 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1315 * abc2ly.py fix so that entering " -- " will translate to a -- in
1316 the lilypond instead of a " - - "
1318 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1320 * lily/align-interface.cc: fix typo
1322 * lily/dynamic-text-spanner.cc (print): Add a special case for
1323 trill spanner right sides.
1325 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1327 * lily/align-interface.cc (get_extents_aligned_translates): add
1328 support for padding variable.
1330 * lily/break-align-interface.cc (self_align_callback): oops: use
1331 loop variable in guard.
1333 * input/regression/repeat-percent-grace.ly: new file.
1335 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1336 remember first currentCommandColumn of a grace run. Fixes issue 70.
1338 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1339 move class definition to CC file.
1341 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1343 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1344 measure-long repeats.
1346 * flower/include/international.hh: include stdarg.h
1348 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1350 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1351 put_systems_on_pages to return an empty result, we need to assign
1352 demerits properly in that case.
1353 (put_systems_on_pages): Make the number of pages depend on the
1354 evenness of page_number. Add auto-first-page-number.
1355 (calc_subproblem): ensure that the page-number is even for the
1356 left-hand page. Warn if the first page-turn doesn't fit onto the
1357 first (right-hand) page.
1359 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1360 (min_page_count): make this publicly accessible
1361 (min_page_count): fix a bug when there are forced page breaks that
1362 was introduced when I made this loop run backwards
1363 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1364 replace space_systems_on_min_pages with these two. The logic in
1365 space_systems_on_min_pages was getting too convoluted and is better
1366 contained in page-turn-page-breaking.
1368 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1370 (breakable_column): typo
1372 * lily/source-file.cc (get_line): fix off-by-one error
1373 and clean up some of the logic
1375 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1377 * lily/page-breaking.cc (make_pages): honour the first-page-number
1380 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1382 * VERSION (PACKAGE_NAME): bump version.
1384 2006-09-26 Pal Benko <benko.pal@gmail.com>
1386 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1387 (the latter is the same as petrucci-f which is kept for compatibility)
1389 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1391 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1393 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1395 * lily/global-context.cc (run_iterator_on_me): break out of loop
1396 if moment doesn't increase.
1398 * scm/define-grob-properties.scm (all-user-grob-properties): add
1401 * lily/accidental.cc (after_line_breaking): read forced property.
1403 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1406 * input/regression/accidental-forced-tie.ly: new file.
1408 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1410 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1412 * lily/figured-bass-engraver.cc: only listen to rest events if
1413 ignoreFiguredBassRest is not set.
1415 * scm/define-context-properties.scm
1416 (all-user-translation-properties): add ignoreFiguredBassRest property
1418 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1420 * lily/paper-book.cc (get_system_specs):
1421 (set_system_penalty): fix breakbefore.
1422 We used to set a penalty on the system after the break, now we
1423 set a permission on the system before the break
1425 * lily/grob-property.cc: add scm debugging hooks into
1426 property modification
1428 * lily/context-property.cc:
1430 rename make_foo_from_properties to internal_make_foo and
1431 move it from context-property.cc to a member function of
1434 * lily/include/lily-guile-macros.hh:
1435 overload ly_symbol2scm macro so that there is no more need
1438 * lily/volta-repeat-iterator.cc:
1439 * lily/tweak-engraver.cc:
1440 * lily/tuplet-bracket.cc:
1441 * lily/span-bar-engraver.cc:
1442 * lily/script-engraver.cc:
1443 * lily/prob-scheme.cc:
1444 * lily/pointer-group-interface.cc:
1446 * lily/grob-scheme.cc:
1447 * lily/grob-property.cc:
1449 * lily/context-property.cc:
1450 * lily/break-substitution.cc:
1451 * lily/break-align-engraver.cc:
1452 * lily/axis-group-interface.cc:
1453 * lily/align-interface.cc:
1454 remove calls to internal_FOO
1456 * lily/system-start-delimiter-engraver.cc:
1457 * lily/parenthesis-engraver.cc:
1458 * lily/accidental-engraver.cc:
1459 remove calls to make_foo_from_properties
1461 2006-09-23 Graham Percival <gpermus@gmail.com>
1463 * Documentation/user/programming-iterfaces.itely: fix
1464 def-music-function -> define-music... leftover.
1466 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1468 * lily/page-spacing.cc (min_page_count): by running the loop
1469 backwards, we can calculate ragged_last properly.
1471 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1473 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1474 printfirst-page-number -> print-first-page-number
1476 * python/convertrules.py: corresponding rule.
1478 * Documentation/user/page.itely (Page formatting): Document the
1479 default values of all page layout parameters.
1481 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1483 * lily/lexer.ll: remove limitation on music function arity. New
1484 mode extratoken, which inserts extra EXPECT_* tokens after
1485 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1487 * lily/parser.yy: Change grammar for music function accordingly.
1489 * lily/include/lily-parser.hh: New method get_state, new member
1490 hidden_state. Works around a problem when parser fetches
1491 MUSIC_FUNCTION token but not the following EXPECT_* token.
1493 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1496 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1497 references to Music; use ASSIGN_EVENT_ONCE everywhere
1499 * lily/grob-info.cc: junk *music_cause
1501 * lily/music.cc: copy eventified articulations to stream event
1503 * lily/part-combine-iterator.cc: Cleanup using enums
1505 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1508 * lily/include/engraver.hh: Junk music.hh include
1510 * lily/stream-event.cc: Changed constructors
1512 2006-09-21 Graham Percival <gpermus@gmail.com>
1514 * Documentation/user/tweaks.itely (Fitting music onto fewer
1515 pages): change settings to avoid warning messages.
1517 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1519 * Documentation/user/tweaks.itely (Fitting music onto fewer
1520 pages): Add between-system-space setting.
1522 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1524 * lily/accidental-placement.cc (calc_positioning_done): don't
1525 trigger Y-extent calculation too early. Use pure_height instead.
1527 * lily/scale.cc (LY_DEFINE): new file.
1529 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1531 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1532 that happen at the start of a score: having a zero-length
1533 chunk was messing up min_system_count calculations.
1535 * lily/source-file.cc (get_line): lower_bound, not
1536 binary_search. Fixes problem where point-and-click would
1537 always point to the first line.
1539 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1541 * lily/accidental-placement.cc (calc_positioning_done): also put
1542 stems into accidental support.
1544 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1547 * scm/script.scm (default-script-alist): avoid-slur and
1548 slur-padding for portato script.
1550 * lily/stem-tremolo.cc (translated_stencil): new function.
1551 (height): use new function. Fixes tremolos on whole notes.
1553 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1556 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1558 * scripts/abc2ly.py (try_parse_comment): idem.
1560 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1561 bar_string iso. string.find()
1565 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1568 2006-09-18 Graham Percival <gpermus@gmail.com>
1570 * Documentation/user/basic-notation.itely: add bug
1571 warning about ties and octavation/clef.
1573 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1575 * VERSION (PACKAGE_NAME): release 2.9.18
1577 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1579 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1580 figure out midi file names right here.
1582 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1584 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1586 * scm/backend-library.scm: option naming: gs-font-load*s*
1588 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1591 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1593 * scm/define-music-types.scm (music-descriptions): remove
1594 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1595 Music::to_event doesn't complain.
1597 * lily/accidental-placement.cc (ape_compare):
1598 * lily/semi-tie.cc (compare):
1599 * lily/note-column.cc (shift_compare): replace by XXX_less
1601 * lily/tie-formatting-problem.cc (set_chord_outline):
1602 * lily/tie-column.cc (calc_positioning_done):
1603 * lily/system.cc (post_processing)
1605 * lily/stem.cc (note_head_positions)
1606 (calc_positioning_done):
1607 * lily/spanner.cc (do_break_processing)
1608 (find_broken_piece):
1609 * lily/span-bar.cc (print):
1610 * lily/semi-tie-column.cc (calc_positioning_done):
1611 * lily/rest-collision.cc (calc_positioning_done):
1612 * lily/program-option.cc (get_help_string):
1613 * lily/note-collision.cc (get_clash_groups):
1614 * lily/new-fingering-engraver.cc (position_scripts):
1615 * lily/keyword.cc (Keyword_table):
1616 * lily/hara-kiri-group-spanner.cc (request_suicide):
1617 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1618 * lily/accidental-placement.cc (calc_positioning_done):
1620 * lily/beam.cc (get_beam_segments):
1621 * lily/grob-array.cc (remove_duplicates):
1624 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1625 ragged-last-bottom = ##f (test the new page breaker)
1627 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1629 * scm/define-context-properties.scm
1630 (all-internal-translation-properties): remove properties that
1631 were used to communicate page-turn stuff to the paper-column
1634 * lily/lily-guile.cc (robust_scm2string): new function
1636 * lily/paper-column-engraver.cc: Clean up page turn stuff
1638 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1639 instead of cluttering up paper-column-engraver.cc
1641 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1643 * scm/layout-page-dump.scm (scm): export utility function names,
1644 to allow user writing cutsom dumping functions.
1646 * scm/layout-page-layout.scm: export utility function names to
1647 enable custom page breaking function writing. Tabify.
1648 (line-next-space): use ?-suffix only for predicates
1649 (page-maximum-space-to-fill): new function. Return the space
1650 between first and bottom system of a page, to give to
1652 (space-systems): use a space-to-fill argument (for instance as
1653 computed by page-maximum-space-to-fill) instead of computing
1654 internaly this space with the page height. That way, the caller
1655 can adjust the space to use.
1656 (make-page-from-systems, walk-paths): compute space to fill before
1657 calling space-systems.
1659 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1661 * scm/script.scm (default-script-alist): set paddings for every
1662 type here, increase for portato mark.
1664 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1667 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1669 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1670 use spanner::set-spacing-rods
1672 * lily/note-column.cc: reformat.
1674 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1675 step positioning for note/rest combinations.
1677 * input/regression/rest-note-collision.ly: new file.
1679 * scm/define-grobs.scm (all-grob-descriptions): add
1682 * flower/include/std-vector.hh: switch off again.
1684 * VERSION (PATCH_LEVEL): bump to 2.9.18
1686 * flower/include/std-string.hh: idem.
1688 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1690 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1692 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1695 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1697 * Documentation/user/page.itely: update page breaking documentation
1699 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1701 * lily/note-collision.cc (calc_positioning_done): only access
1702 first head if available.
1704 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1706 * scm/framework-ps.scm (output-preview-framework): use new name.
1708 * lily/program-option.cc (internal_set_option): use new names.
1710 * Documentation/user/SConscript (lilypond_book_flags): update -d
1713 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1714 output into other programs): new variable names.
1716 * scm/lily.scm (define-scheme-options): uniformize var names.
1718 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1719 tuplets_ is non-empty before popping.
1721 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1723 * lily/spanner.cc (find_broken_piece):
1724 * lily/spacing-spanner.cc (get_columns):
1725 * lily/source-file.cc (get_line):
1726 * lily/simple-spacer.cc (get_column_description):
1727 * lily/keyword.cc (lookup):
1728 use the new binary search.
1730 * flower/include/std-vector.hh: replace binary_search with
1731 a more STL-like version
1733 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1735 * lily/tie-performer.cc: remove unused last_event_ property.
1736 (class Tie_performer): add now_tied_heads_ property for
1737 partially-tied heads.
1738 (acknowledge_audio_element): when adding an Audio_note, put the
1739 note in now_tied_heads_ if the audio note is partially tied.
1740 (stop_translation_timestep): always include entries in
1741 now_tied_heads_ in heads_to_tie_.
1743 * lily/drum-note-performer.cc (process_music): look for tie-events
1744 in the articulations; pass to Audio_note constructor.
1746 * lily/note-performer.cc (process_music): look for tie-events in
1747 the articulations; pass to Audio_note constructor.
1749 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1752 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1753 include initializer in constructor.
1755 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1757 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1758 unless they are breakable. This fixes discrepancies between the forces
1759 calculated here and the forces calculated in get_line_configuration.
1761 * lily/grob.cc (pure_relative_y_coordinate): fix some
1762 mis-estimation that was happening with piano staves.
1764 * lily/constrained-breaking.cc (resize): don't choke if we get a
1765 measure that won't fit on a line.
1766 (combine_demerits): don't consider uniformity when ragged
1768 * lily/page-spacing.cc (solve): why the f* were there two of these?
1769 (calc_subproblem): properly handle the case where a system is taller
1772 * lily/system.cc (get_paper_system): ensure that all the permissions
1773 and penalties are passed to the paper systems.
1775 * lily/page-breaking.cc (create_system_list): support system-count.
1777 * scm/define-grobs.scm (pure-print-callbacks): add
1778 ly:script-interface::print
1780 * lily/page-spacing.cc (min_page_count): fix calculation of min
1781 pages if we are ragged and there are non-zero springs.
1783 * scm/layout-page-layout.scm: if the pure-height estimates are under
1784 the real height, allow space-systems to ignore padding if it is
1785 needed in order to fit the systems on one page
1787 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1789 (solve): fix performance problem. Make sure we always get at least
1792 * lily/page-breaking.cc (make_pages): include write-page-breaks
1795 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1797 * scm/define-grobs.scm: add the new slur-callback
1798 fix pure-relevant to not exclude grobs whose extent is already
1801 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1804 * lily/slur.cc (pure_height): new callback to estimate the height
1807 2006-09-02 Graham Percival <gpermus@gmail.com>
1809 * Documentation/user/invoking.itely: small update on
1810 MacOS X notes; thanks Trevor!
1812 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1814 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1816 * lily/lexer.ll: accept EOF in all states.
1818 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1820 * lily/source-file.cc (Source_file): always 0-terminate character
1821 array, to prevent Flex from barfing.
1823 * lily/global-context.cc (get_output): robustness: don't crash if
1824 no Score context found.
1826 * lily/include/book.hh (class Book): idem.
1828 * lily/include/context-def.hh (struct Context_def): idem.
1830 * lily/include/score.hh (class Score): don't derive from Input.
1832 * lily/book.cc (Book): add a copy ctor.
1834 * buildscripts/output-distance.py (FileLink.calc_distance): count
1835 orphans in distance too.
1837 * python/midi.c (midi_parse_track): robustness: don't read past
1840 * ly/performer-init.ly: add Control_track_performer, move
1841 Tempo_performer and Time_signature_performer to Score.
1843 * lily/score-performer.cc (acknowledge_audio_elements): override
1844 from base class: add to audio-columns
1846 * lily/control-track-performer.cc (add_text): new file: generate
1849 * lily/performance.cc: move output_header_track to
1850 Control_track_performer ()
1852 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1854 * lily/include/midi-item.hh (class Midi_channel_item): insert
1855 class into hierarchy, for items that can have a channel setting. Dehungarify.
1857 * lily/include/performer.hh (class Performer): remove
1858 play_element(); move functionality into announce/acknowledge.
1860 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1862 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1863 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1865 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1867 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1870 * lily/all-font-metrics.cc: remove TFM support.
1872 * lily/include/tfm.hh: remove TFM support, TFM reader.
1874 * lily/include/binary-source-file.hh: remove Binary_source_file.
1876 2006-08-27 Graham Percival <gpermus@gmail.com>
1878 * Documentation/topdocs/NEWS.itely: add @c marker for
1879 stuff I've processed.
1881 * Documentation/user/ various: info from NEWS.
1883 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1885 * lily/paper-column-engraver.cc (finalize): Oops, this change
1886 should have gone in on 2006-08-23
1888 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1890 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1891 quotes to quote arguments. Fixes Windows problem.
1893 * python/lilylib.py (progress): idem
1895 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1897 * scripts/musicxml2ly.py: fix for importing
1898 minor key signatures from MusicXML. (Phillip Kirlin)
1900 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1902 * python/musicxml.py:
1903 (Attributes.get_key_signature): now correctly retrieves mode from
1906 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1908 * lily/parser.yy (output_def_body): take ownership of identifier
1911 * Documentation/user/advanced-notation.itely (Metronome marks):
1912 update use of \tempo in \midi.
1914 * VERSION: release 2.9.16
1916 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1918 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1921 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1923 * input/regression/tie-chord-partial.ly: clarify example.
1925 * scm/define-music-properties.scm (all-music-properties): remove
1928 * ly/music-functions-init.ly: remove \untied.
1930 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1931 stream events and music events.
1932 (stop_translation_timestep): search acknowledged heads for
1935 * input/regression/tie-chord-partial.ly: new file.
1937 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1938 for \char markup command.
1940 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1942 * scm/define-music-types.scm (music-descriptions): consistency:
1943 Use solo-{one,two}-event iso. solo-[12]-event.
1945 * lily/part-combine-engraver.cc (process_music):
1946 Use solo-{one,two}-event iso. solo-[12]-event.
1948 * ly/declarations-init.ly (partCombineListener): add Timing as
1951 * flower/std-string.cc (string_copy): use copy ()
1953 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1955 2006-08-24 Graham Percival <gpermus@gmail.com>
1957 * Documentation/user/changing-defaults.itely, global.itely,
1958 lilypond-book.itely, page.itely: minor changes from mailist.
1960 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1962 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1965 * scm/define-context-properties.scm
1966 (translator-property-description): robustness: detect type errors
1967 in property definitions.
1969 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1970 after getting it from SCM.
1972 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1975 * lily/include/performer.hh (class Performer): strip get_tempo()
1978 * lily/midi-def.cc: strip file.
1980 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1982 * lily/include/context-def.hh (struct Context_def): use
1983 VIRTUAL_COPY_CONSTRUCTOR().
1985 * lily/source-file.cc: smobification.
1987 * lily/include/source-file.hh (class Source_file): smobify
1988 Source_file. Trim redundant members.
1990 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1991 clones after creation. This plugs a huge memory leak.
1993 * python/convertrules.py (FatalConversionError.sub_tempo):
1994 complete rule for \midi{ \tempo }
1996 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1998 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2000 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2002 * input/regression/optimal-page-breaking-hstretch.ly: test for
2003 ragged-last-bottom also
2005 * lily/paper-column-engraver.cc (finalize): make the end of a score
2006 breakable by default. This is to balance out a change in behaviour
2007 of the page-turn-breaker which no longer makes the end of a score
2010 * lily/paper-book.cc (pages): set the systems_ once the pages are
2013 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2014 Page_breaking interface.
2016 * lily/page-breaking.cc (class Page_breaking): make the interface
2017 more consistent and provide abstractions for dealing with
2020 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2021 algorithm. Use the new interface to Page_breaking.
2023 * lily/page-spacing.cc: better support for ragged-bottom and
2026 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2028 * python/convertrules.py (conv): warning on \tempo{}
2030 * ly/performer-init.ly: set tempoWholesPerMinute.
2032 * ly/midi-init.ly: remove \midi
2034 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2037 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2038 tempoUnitDuration for determining what to print.
2040 * lily/lyric-extender.cc: typo.
2042 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2044 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2047 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2049 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2050 eps-pad-boxes is set.
2052 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2054 * THANKS: update sponsors.
2056 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2058 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2060 * input/regression/tie-chord-untied.ly: new file.
2062 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2064 * scm/define-music-properties.scm (all-music-properties): add
2067 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2069 (headertext_nopics): sanitize no-examples text.
2071 * scm/page.scm (make-page-stencil): don't rely on extents of
2072 page-stencil. This fixes spurious space around .EPS files produced
2073 with the EPS backend.
2075 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2077 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2079 * lily/hara-kiri-engraver.cc (process_music): remember
2080 keepAliveInterfaces after processing \set
2082 * lily/lyric-extender.cc (print): support left/right-padding for
2085 * scm/documentation-generate.scm (string-append): revert lilypond/
2088 2006-08-20 Graham Percival <gpermus@gmail.com>
2090 * Documentation/user/lilypond.tely: clarification to
2091 license presentation (not to actual license).
2093 * Documentation/user/basic-notation.itely,
2094 instrument-notation.itely: minor changes.
2096 * input/ {regression, test}/+.ly: clarification to
2097 text (you can click on examples). Thanks, Mats!
2099 * input/manual/bar-lines.ly: adds ||: repeats.
2101 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2103 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2105 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2107 * Documentation/user/lilypond.tely: strip lilypond/ from info
2108 links, rename to category LilyPond
2110 * lily/pango-font.cc (description_string): new function.
2112 * VERSION: release 2.9.15
2114 * lily/spacing-engraver.cc (stop_translation_timestep): use
2115 Dscho's fix for spacing spanner.
2117 * scm/define-music-types.scm (music-descriptions): use
2118 apply-output-event for ApplyOutputEvent
2120 * lily/output-property-engraver.cc (listen_apply_output): rename
2121 from listen_layout_instruction.
2123 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2126 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2128 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2129 commandline args with contains, split by \n.
2131 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2132 write snippet-names file, call with -dread-file-list. Fixes
2133 command limitations on 64-bit systems.
2135 * input/regression/stencil-color-rotation.ly: new file.
2137 * lily/include/translator.hh (struct Acknowledge_information):
2138 revert: don't use Protected_scm in global objects, as GUILE can't
2139 handle gc_unprotect from automated destructors on MacOS X.
2141 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2142 color, not the original stencil. Fixes combinations of
2143 color/transparency/rotation.
2145 * scripts/lilypond-book.py (main): add --formats=eps for
2148 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2149 crash if spacing_ is nonexistent.
2151 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2153 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2154 \catcode`\@=12 in the LaTeX output.
2156 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2158 * scm/define-music-types.scm (music-descriptions):
2159 use sustain-event iso. sustain-pedal-event.
2161 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2163 * scripts/convert-ly.py: honour the -n command-line switch
2165 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2167 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2168 break specification.
2170 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2172 * Documentation/user: convert-ly the user manual
2174 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2176 * stepmake/aclocal.m4: version check patch (thanks MWD)
2178 * ly/music-functions-init.ly: robustness. Don't crash if
2179 currentBarNumber is not a number.
2181 * VERSION (PATCH_LEVEL): bump.
2183 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2185 * stepmake/aclocal.m4: better version check; handle fooX.Y
2188 * ly/performer-init.ly: instrument name fixup.
2190 * input/manual/chord-names-jazz.ly (banterProperties):
2191 instrumentName update
2193 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2195 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2197 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2198 function. Use hash tables to check membership.
2200 * lily/general-scheme.cc (LY_DEFINE): new function.
2202 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2204 * lily/include/translator.hh (struct Acknowledge_information): add
2207 * ly/music-functions-init.ly: change name to BreathingEvent
2209 * input/regression/*.ly: apply it.
2211 * python/convertrules.py (conv): better instrumentName conversion
2214 * scm/define-music-types.scm (music-descriptions): add
2215 line-break-event to LineBreakEvent music
2217 * lily/music.cc (to_event): don't crash if music type not set.
2219 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2222 * lily/spacing-engraver.cc (stop_translation_timestep): set
2223 spacing for proportional notation too.
2225 * scm/translation-functions.scm (format-bass-figure): inspect
2228 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2230 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2232 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2234 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2236 * scm/layout-page-layout.scm (make-page-from-systems): new function
2237 (optimal-page-breaks): use the new page-breaking calling convention
2239 * scm/define-context-properties.scm (all-user-translation-properties):
2242 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2243 revokePageTurns functionality. If there is a special barline within
2244 the breakable region, break there instead of at the end of the region.
2246 * lily/paper-book.cc (pages): use the new page-breaking calling
2249 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2251 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2253 * scripts/lilypond-book.py: insert \sourcefileline command in
2254 output, so lilypond error messages refer to the spot in the
2255 original .lytex / .itely sourcefile.
2257 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2259 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2260 space to next column for distance to fixed col.
2262 * VERSION (PACKAGE_NAME): release 2.9.14
2264 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2267 * lily/accidental-engraver.cc (process_acknowledged): don't create
2268 accidental for trill span event. This fixes spurious accidentals
2271 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2273 * scm/define-grob-properties.scm (all-user-grob-properties):
2274 Clarify documentation of side-axis and direction. Thanks to Paul
2275 for the inspiration.
2277 * lily/bar-line.cc: Add documentation for "||:" also in the
2278 interface documentation.
2280 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2282 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2284 * lily/paper-column.cc (set_system): new function.
2286 * lily/spacing-engraver.cc (stop_translation_timestep): store
2287 SpacingSpanner refs in Paper_column.
2289 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2290 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2292 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2294 * lily/beam-engraver.cc (listen_beam): add method for
2295 Grace_beam_engraver too.
2297 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2299 * python/convertrules.py: Fix indentation bug that broke
2300 conversion of files older than 1.3.117.
2301 Fix escape error in the description for 2.9.6.
2303 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2305 * lily/*-engraver.cc: convert all try_music functions to listen_*
2308 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2309 enums to represent pedal types, and calculate more data statically.
2311 * scm/part-combiner.scm (recording-group-emulate): create a
2312 softcoded substitute for recording-group-engraver.cc.
2314 * lily/music.cc: make a common transpose function for events and
2317 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2318 ManualMelismaEvent, and obsoletes Melisma_translator.
2320 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2322 * input/test/instrument-name-align.ly: update version.
2324 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2326 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2327 Doc the --pdf flag to lilypond-book.
2329 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2331 * Documentation/topdocs/NEWS.tely (Top): add description.
2333 * input/regression/tuplet-full-length-note.ly: add file.
2335 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2336 always store axis group.
2338 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2340 * input/regression/instrument-switch.ly: new file.
2342 * lily/instrument-switch-engraver.cc (process_music): new file.
2344 * ly/engraver-init.ly: add Instrument_switch_engraver
2346 * ly/music-functions-init.ly: \instrumentSwitch
2348 * scm/define-context-properties.scm
2349 (all-user-translation-properties): add instrumentCueName
2351 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2353 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2355 * ly/music-functions-init.ly: music function \transposition.
2357 * lily/parser.yy (command_element): softcode \transposition.
2359 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2360 (process_music): oops.
2362 * lily/instrument-name-engraver.cc (start_spanner): new
2363 function. Create spanner when property changes.
2364 (stop_spanner): new function.
2366 * python/convertrules.py (conv): add rule.
2368 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2369 shortInstrumentName iso. instr.
2371 * scm/output-ps.scm (dashed-line): add phase argument to
2374 * lily/bar-line.cc (dashed_bar_line): new function.
2375 (compound_barline): support \bar "dashed".
2377 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2378 --output=DIR to DIR/BASE if it is a dir.
2380 * flower/file-name.cc (file_part): new function
2381 (dir_part): new function
2383 * lily/lily-parser-scheme.cc (LY_DEFINE):
2385 * DEDICATION: update
2387 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2389 * lily/instrument-name-engraver.cc: formatting.
2391 * python/convertrules.py (conv): bugfix for \epsfile.
2393 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2397 * lily/gourlay-breaking.cc: Oops, these should have been included
2400 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2402 * scripts/*.py (program_name): cleanup relocation snippets.
2404 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2406 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2408 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2409 page-breakable by default
2411 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2412 correctly calculated for a single-system page
2414 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2415 bigger than the second number
2417 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2418 acknowledge that we aren't satisfying constraints)
2420 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2423 * lily/grob.cc (pure_height): add minimum-Y-extent
2425 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2428 * lily/constrained-breaking.cc: convert code to use new Matrix class
2429 (get_best_solution): new function
2431 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2432 is a page with no systems
2434 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2436 * VERSION (PACKAGE_NAME): release 2.9.13
2438 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2441 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2443 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2445 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2448 * scm/define-grob-properties.scm (all-user-grob-properties):
2449 remove grace-space-factor.
2451 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2452 grace-spacing-interface
2453 (spacing-options-interface): add.
2455 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2457 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2459 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2460 GraceSpacing object.
2462 * lily/note-spacing.cc: fix prop list formatting
2464 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2465 beaming for grace notes too.
2467 * input/regression/spacing-grace.ly: update.
2469 * lily/grace-spacing-engraver.cc: new file.
2471 * lily/spacing-spanner.cc: add strict-grace-spacing.
2473 2006-07-20 Graham Percival <gpermus@gmail.com>
2475 * lily/parser.yy: compile fix.
2477 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2479 * scm/define-grobs.scm (all-grob-descriptions): typo.
2481 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2482 .eps extension from includegraphics.
2484 * scripts/lilypond-book.py (main): add support for --pdf.
2486 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2487 callback to compute common shortest duration.
2488 (set_springs): typo.
2490 * scm/define-grob-properties.scm (all-user-grob-properties): add
2491 strict-grace-spacing.
2493 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2494 support float_grace_columns_.
2496 * lily/spacing-options.cc (init_from_grob): new file.
2498 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2500 * input/regression/spacing-loose-grace.ly: new file.
2502 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2504 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2505 tupletFullLengthNote too. Choose right bound depending on value.
2507 * input/regression/tuplet-full-length-note.ly: new file.
2509 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2511 * lily/*-performer.cc: Converted try_music to listen_*
2513 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2514 as a stream-event internally. Introduce event_cause (), deprecate
2517 * scm/define-music-types.scm: Removed BusyPlayingEvent
2519 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2521 * Documentation/user/advanced-notation.itely (Font selection):
2522 Document how to get a list of available fonts using 'lilypond
2523 -dshow-available-fonts blabla'.
2525 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2527 * GNUmakefile.in: filter lily-XXX.pdf files.
2529 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2531 * scm/define-grob-properties.scm (all-internal-grob-properties):
2532 remove delta-pitch. Use delta-position everywhere.
2534 * scm/output-lib.scm (fall::print): use new order.
2536 * scm/output-ps.scm (path): reorder arguments.
2538 * scm/output-svg.scm (path): support for path primitive.
2540 * input/regression/bend-after.ly: new file.
2542 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2543 recipe for eps -> pdf conversion.
2545 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2547 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2550 2006-07-19 Graham Percival <gpermus@gmail.com>
2552 * input/manual/screech-boink.ly: moved to here.
2554 * input/screech-boink.ly: deleted.
2556 * scm/define-grob-properties.scm: clarify doc string.
2558 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2560 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2562 * scm/output-ps.scm (path): define path.
2564 * scm/define-stencil-commands.scm
2565 (ly:register-stencil-expression): add path.
2567 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2569 * ly/engraver-init.ly: add Fall_engraver
2571 * lily/parser.yy (music_function_event): allow musicfunction
2572 without music arg as music_function_event.
2574 * lily/grob-scheme.cc (LY_DEFINE):
2575 ly:grob-robust-relative-extent. New function.
2577 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2579 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2581 * scm/output-lib.scm (fall::print): new function
2583 * lily/fall-engraver.cc (stop_fall): new file.
2585 * ly/music-functions-init.ly: alphabetise.
2587 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2590 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2592 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2594 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2597 * lily/translator-group.cc (connect_to_context): non const error message.
2599 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2601 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2604 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2606 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2608 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2611 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2613 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2615 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2617 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2619 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2621 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2623 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2625 * scm/layout-page-layout.scm: Define module, tidy code, use more
2626 functions iso. a single big one.
2628 * scm/layout-page-dump.scm: move page dump functions used in two
2629 pass spacing to this file. Define module.
2631 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2634 * ly/paper-defaults.ly: use module layout-page-layout.
2636 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2638 * lily/music.cc: Revised MusicEvent event class. It now contains
2639 event data directly instead of encapsulating it in music. The
2640 previously used class is renamed to OldMusicEvent.
2642 * lily/stream-event.cc: Stream events are now probs.
2644 * lily/translator-group.cc, lily/translator.cc: Translators can
2645 now listen directly to stream events, by using macros
2646 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2648 * lily/arpeggio-engraver.cc: Converted to use new event system
2650 * THANKS: Corrected spelling mistake.
2652 2006-07-12 Graham Percival <gpermus@gmail.com>
2654 * Documentation/user/SConscript, make/lilypond-vars.make,
2655 input/GNUmakefile: doc build looks in input/manual instead
2658 * input/manual/ GNUmakefile, SConscript: build files for
2661 * input/test/ various: some files moved to input/manual/
2663 * Documentation/user/basic-notation.itely: small updates;
2664 thanks Kieren and Charles!
2666 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2668 * VERSION (PACKAGE_NAME): release 2.9.11
2670 * Documentation/topdocs/NEWS.tely (Top): update prop value
2672 * Documentation/user/basic-notation.itely (Tuplets): new property
2675 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2677 * python/convertrules.py (conv): tweaks.
2679 * VERSION (PATCH_LEVEL): bump version.
2681 * python/convertrules.py (conv): add rule for
2682 tupletNumberFormatFunction.
2684 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2685 tupletNumberFormatFunction.
2687 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2688 text through 'text callback.
2690 * lily/time-scaled-music-iterator.cc (construct_children): copy
2691 tweaks generated events.
2693 * scm/define-context-properties.scm
2694 (all-user-translation-properties): remove tupletNumberFormatFunction
2696 * lily/tuplet-engraver.cc (process_music): don't read
2697 tupletNumberFormatFunction
2699 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2702 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2704 * lily/global-context-scheme.cc: Separated ly:run-translator into
2707 * lily/score-engraver.cc, lily/score-performer.cc,
2708 scm/define-context-properties.scm: Make paper/midi output
2709 accessable as a context property.
2711 * lily/score-translator.cc, lily/score-context.cc: Removed.
2713 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2715 * scm/ps-to-png.scm (Module):
2716 * scm/framework-tex.scm (Module):
2717 * scm/framework-ps.scm (Module):
2718 * scm/backend-library.scm (Module):
2719 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2720 "dDEVICEHEIGHTPOINTS".
2722 2006-07-04 Graham Percival <gpermus@gmail.com>
2724 * Documentation/user/ various: general improvements to
2725 "working with lilypond files" section.
2727 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2729 * lily/sequential-iterator.cc: Change the default get_music_list
2730 to read elements-callback music property
2732 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2733 processing of multimeasure rests. Softcoded
2734 sequential-music-iterator.
2736 * lily/sequential-music-iterator.cc: Removed.
2738 2006-06-28 Graham Percival <gpermus@gmail.com>
2740 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2742 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2744 * lily/parser.yy: Wrap non-post-events in EventChords before
2745 assigning them to identifiers.
2747 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2749 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2750 gives correct vertical placement of \bar ":" in all staff
2751 sizes. Thanks Martial!
2753 2006-06-26 Graham Percival <gpermus@gmail.com>
2755 * Documentation/user/invoking.itely : minor update from mailist.
2757 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2759 * lily/ various: Introduce stream events of types Prepare,
2760 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2761 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2763 * lily/global-context*.cc: Time is now -inf before iteration
2766 * lily/include/context.hh: Removed unique_, init_
2768 * Documentation/topdocs/NEWS: Make the feathered beam example
2769 avoid triggering a bug.
2771 2006-06-24 Graham Percival <gpermus@gmail.com>
2773 * Documentation/user/ various: small additions from mailist.
2775 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2777 * ly/performer-init.ly: Add some missing links in the context
2778 hierarchy for MIDI output. There are probably some more missing!
2780 2006-06-21 Graham Percival <gpermus@gmail.com>
2782 * Documentation/user/ various: minor spelling fixes;
2783 thanks Dave Luttinen!
2785 * Documentation/user/ various: small clarifications;
2786 thanks Anthony Youngman!
2788 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2790 * po/fr.po: add \n appropriately.
2792 * lily/lexer.ll: remove ? from version-seen?
2794 2006-06-19 John Mandereau <john.mandereau@free.fr>
2796 * po/fr.po; update translation, by Jean-Charles Malahieude and
2799 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2801 * THANKS: add Markus Schneider.
2803 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2804 Staff_symbol_engraver
2806 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2807 replace staff_engraver
2809 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2812 * lily/staff-collecting-engraver.cc
2813 (acknowledge_end_staff_symbol): new function
2815 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2817 * lily/staff-collecting-engraver.cc
2818 (acknowledge_end_staff_symbol): new function.
2820 * lily/main.cc: switch on relocation by default.
2822 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2824 * lily/spacing-spanner.cc (musical_column_spacing): set
2825 compound_fixed_note_space to 0.0. Document why.
2827 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2828 range of inverse_hooke_
2829 (Simple_spacer): init completely.
2831 (get_line_configuration): don't use cols.resize(); it introduces
2834 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2836 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2838 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2839 try. Divide by beatlength.
2841 * input/regression/beaming-ternary-metrum.ly: update doc.
2842 add beatLength hack.
2844 * scm/music-functions.scm (make-time-signature-set): add
2845 standard-beat-grouping.
2847 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2849 * input/regression/tie-whole.ly: new file.
2851 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2852 cross center of note head in case of invisible stem.
2854 2006-06-16 Graham Percival <gpermus@gmail.com>
2856 * Documentation/user/ various: small fixes from mailist.
2858 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2860 * lily/breathing-sign.cc (offset_callback): idem.
2862 * lily/align-interface.cc (align_to_fixed_distance): remove
2865 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2868 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2870 * VERSION (PACKAGE_NAME): release 2.9.9
2872 * ly/lilypond-book-preamble.ly: add \version
2874 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2876 * scripts/lilypond-book.py (PREAMBLE_LY): include
2877 lilypond-book-preamble.ly
2879 * lily/stem.cc (get_beaming): return max of 0 and
2880 scm_ilength. Fixes slurring from/to beams.
2882 * ly/lilypond-book-preamble.ly: new file.
2884 * lily/slur.cc: add inspect-index feature.
2886 2006-06-13 Graham Percival <gpermus@gmail.com>
2888 * Documentation/user/tutorial.itely: trivial fix.
2890 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2892 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2893 all non-event music in the parser via MAKE_SYNTAX.
2895 * lily/parser-scheme.cc: Add ly:parser-error function
2897 * scm/paper.scm: fix typo
2899 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2903 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2906 * buildscripts/output-distance.py (test_compare_signatures):
2908 (read_signature_file): use new signature format.
2910 * scm/stencil.scm (write-system-signature): simpler signature
2913 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2916 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2917 stem_end_position, but estimate instead.
2919 * lily/tuplet-bracket.cc (calc_positions): look at
2920 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2921 brackets narrower than beams.
2923 * lily/lexer.ll: set version-seen? even if version is
2926 * lily/rest.cc (y_offset_callback): bugfix: decide position
2927 override based on scm_is_number(). Fixes \rest on center staff
2930 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2931 patterns for 16th triplets.
2933 2006-06-10 Graham Percival <gpermus@gmail.com>
2935 * Documentation/user/ page.itely, global.itely: editing
2938 * Documentation/user/ various: findex -> funindex.
2940 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2942 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2943 insert extra tuplet events.
2945 2006-06-10 Graham Percival <gpermus@gmail.com>
2947 * Documentation/user/programming-interfaces.itely: add
2950 * python/convertrules.py: add annotatefoo -> annotate-foo
2953 * Documentation/user/global.itely: start editing.
2955 * Documentation/user/page.itely: major editing, new spacing
2958 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2960 * scm/define-markup-commands.scm (wordwrap-markups): use
2961 output-def 'line-width if undefined.
2963 * HACKING: trim outdated info.
2965 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2967 * scm/define-grobs.scm (all-grob-descriptions): Add
2968 line-spanner-interface to all grobs that already have
2969 text-spanner-interface or dynamic-text-spanner-interface
2971 * scm/page.scm: Rename annotate{headers,systems,page}->
2974 * input/regression/page-spacing.ly,
2975 input/regression/page-layout-manual-position.ly: idem
2977 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2979 * lily/line-spanner.cc: cleanup property list.
2981 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2982 generator expressions (2.3 compat).
2984 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2986 * lily/vertical-align-engraver.cc: Make sure that the
2987 align{Above,Below}Context properties are included in the automatic
2990 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2992 * scm/paper-system.scm (paper-system-annotate): also annotate the
2993 estimated pure-Y-extent
2995 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2997 * lily/system.cc (break_into_pieces): set the estimated height
2998 of each child system
3000 * lily/stem.cc (pure_height): new pure-Y-extent callback
3002 * lily/staff-symbol-referencer.cc (callback): don't destroy
3003 the staff-position property
3005 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3006 consider_suicide into two functions
3008 * lily/constrained-breaking.cc (resize): use the new pure
3009 callbacks to estimate the height of a system
3011 * lily/axis-group-interface.cc (pure_group_height): new
3012 side-effect-free VerticalAxisGroup height-callback
3014 * lily/align-interface.cc (get_extents_aligned_translates):
3015 split align_elements_to_extents into two functions
3016 (get_pure_child_y_translation): new function
3018 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3020 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3022 * lily/paper-score.cc: cache break_indices and columns
3024 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3026 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3028 * lily/font-config.cc (init_fontconfig): do the init if
3029 cache_file, but don't look at cache_file.
3031 * input/regression/quote-tie.ly: new file.
3033 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3034 to Head_event_tuple, so we deal gracefully with ties on
3037 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3040 2006-06-08 Graham Percival <gpermus@gmail.com>
3042 * input/test/ smart-transpose.ly, reverse-music.ly:
3043 \applyMusic to music functions update, thanks Michael!
3045 2006-06-07 Graham Percival <gpermus@gmail.com>
3047 * input/test/ add-staccato.ly, add-text-script.ly,
3048 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3049 music functions update, thanks to Michael Meixner.
3051 * Documentation/user/music-glossary.tely: small fix
3054 * Documentation/user/ various: minor additions from mailist.
3056 * Documentation/user/lilypond.tely, basic-notation.itely:
3057 small test of @funindex. (works here)
3059 * input/test/font-table.ly: reduce size to partially
3060 de-ugly version in manual.
3062 * Documentation/user/page.itely: new file (split former
3063 "global issues" into "page settings" and "non-musical
3066 * Documentation/user/ various: fix @ref{}s to match
3067 new chapter names (above).
3069 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3071 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3073 2006-06-06 Graham Percival <gpermus@gmail.com>
3075 * Documentation/user/advanced-notation.itely: add example
3076 for segno/coda on barline.
3078 * tex/texinfo.tex: merge from upstream.
3080 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3082 * scripts/lilypond-book.py (process_snippets): Argument fix.
3085 * buildscripts/builder.py:
3088 * Documentation/user/SConscript: More SCons fixes.
3090 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3092 * lily/font-config.cc (init_fontconfig): Only initialize if
3093 global cache_file is found.
3095 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3097 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3100 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3102 * VERSION (PACKAGE_NAME): release 2.9.8
3104 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3105 function. Delay ledger modifying ledgered grobs to
3106 stop_translation_timestep(), to ensure that we're ledgering
3107 according to the new spanner.
3108 (acknowledge_staff_symbol): don't check for non-NULL
3109 staff_sym->get_bound()
3111 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3114 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3117 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3118 directly from srcdir/stepmake/aclocal.m4
3120 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3123 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3125 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3127 * lily/simple-spacer.cc (get_line_configuration): add
3128 keep-inside-line rods
3129 (struct Column_desc): add constructor
3130 (struct Rod_desc): add constructor
3131 (get_line_forces): check for forced page breaks here too
3133 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3134 support/elements cycles between InstrumentNames and AxisGroups
3136 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3138 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3140 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3141 make-txt-files target.
3143 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3144 make-txt-files target.
3146 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3148 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3151 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3153 * Documentation/user/instrument-notation.itely,
3154 input/regression/breathing-sign-ancient.ly,
3155 input/test/divisiones.ly: Removed redundant property settings for
3158 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3159 fix lyrics alignment problems. They are implemented now as scheme
3160 functions that add the appropriate unicode char to the first lyric
3161 event rather than adding a separate lyric event. Minor edit of
3164 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3166 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3167 pollute src dir with built .txt files, but install directly from
3168 Documentation/topdocs/out/
3170 * buildscripts/output-distance.py
3171 (ComparisonData.create_html_result_page): put version/directories
3174 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3177 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3178 Patch by Karl Hammar
3180 * buildscripts/readlink.py: add file.
3181 Patch by Karl Hammar
3183 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3185 * lily/tuplet-number.cc (print): prevent stencil from being
3188 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3190 * scm/stencil.scm (write-system-signature): explicitly
3191 -well, superfluously- close output port.
3193 * buildscripts/output-distance.py (main): oops. Add extra argument.
3195 2006-06-05 Graham Percival <gpermus@gmail.com>
3197 * Documentation/user/music-glossary.tely: clarified example
3198 from Francisco Vila, thanks!
3200 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3202 * input/regression/spacing-section.ly: new file.
3204 * lily/input.cc (programming_error): new function.
3206 * lily/spacing-engraver.cc (try_music): new function. Accept
3207 spacing-section-event
3209 * lily/spacing-spanner.cc (set_springs): take slices of all
3210 columns for spacing.
3212 * lily/include/paper-column.hh (class Paper_column): add
3213 Paper_column::compare.
3215 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3217 * scm/define-music-types.scm (music-descriptions): add
3220 * lily/music-iterator.cc (report_event): use programming_error for
3221 sending non-event error.
3223 * lily/input.cc (programming_error): new function
3225 * buildscripts/output-distance.py (main): use compare-XXX for
3227 (main): --threshold option, default at 0.30
3229 * output-distance.py (main): add --threshold option.
3231 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3233 * scm/paper-system.scm (paper-system-annotate): fix problem when
3234 annotating an empty system
3236 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3238 * GNUmakefile.in: reinstate old web tar/copying.
3240 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3242 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3243 nothing changes. (Erik S)
3245 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3248 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3250 * scm/define-markup-commands.scm (whiteout): do not force
3251 foreground color of argument markup to black.
3253 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3254 the left of the arrow, instead of below the arrow name, so that,
3255 when two little arrows are vertically stacked, their dimensions
3256 and name should not overlap. Add a color key parameter.
3258 * scm/paper-system.scm (paper-system-annotate): Annotate
3259 next-space+next-padding instead of next-space. Annotate space
3260 between next-padding and next-space+padding, respectively, and
3261 following system extent and refpoint-Y-extent. Use colors.
3263 * scm/page.scm (annotate-page): translate annotations slightly to
3266 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3268 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3269 fix for x-staff slurs. Thanks Joe!
3271 * buildscripts/output-distance.py
3272 (SystemLink.output_expression_change_count): keep track of changed
3273 details, and dump in details html page.
3275 * input/regression/figured-bass-staff.ly: add note about setting
3276 properties in Staff context.
3278 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3279 add slurs and ties to support too.
3281 * buildscripts/output-distance.py (main): set dest_dir
3282 argument. Add --max-count option.
3284 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3286 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3287 shortcuts for special unicode chars that are useful in chant
3288 notation. Revised exisiting and added new comments.
3290 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3292 * make/mutopia-rules.make: remove duplicate recipe.
3294 2006-06-02 Werner Lemberg <wl@gnu.org>
3296 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3297 Add support for U+0132 (IJ) and U+0133 (ij).
3299 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3301 * buildscripts/output-distance.py (FileLink): new class. collect
3302 info systems from one .ly file.
3303 (FileLink.link_files_for_html): further tweaks.
3305 2006-06-02 Graham Percival <gpermus@gmail.com>
3307 * tex/texinfo.tex: partial fix for @funindex.
3309 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3312 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3314 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3316 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3317 @example too. Backportme.
3319 2006-06-02 Graham Percival <gpermus@gmail.com>
3321 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3322 from Werner Lemberg.
3324 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3326 * Documentation/user/music-glossary.tely: additional spanish
3327 updates and a lyrics fix in an example.
3329 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3331 * scm/define-grob-properties.scm: Previous patch contained
3332 spurious line from another patch not yet committed. Fixed.
3334 * scm/define-grob-properties.scm: Add missing doc strings for
3337 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3339 * buildscripts/output-distance.py
3340 (ComparisonData.write_text_result_page): separate the scores, sort
3343 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3346 * buildscripts/output-distance.py (me_path): use argv[0] for
3348 (ComparisonData.img_cell): use colored borders.
3350 * scm/stencil.scm (write-system-signature): escape newlines too.
3351 (write-system-signature): use (1,-1) interval for empty interval
3353 2006-01-01 Graham Percival <gpermus@gmail.com>
3355 * Documentation/user/music-glossary.tely: Spanish updates
3356 from Francisco Vila.
3358 * Documentation/user/lilypond-book.itely: addition from
3361 * Documentation/user/ various: edits, small additions
3364 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3366 * GNUmakefile.in (tree-lib-prefix-current):
3367 (tree-share-prefix-current): Use version number in tree, add
3370 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3372 * GNUmakefile.in: write VERSION, again.
3374 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3375 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3377 * stepmake/aclocal.m4: robuster version detection.
3379 * buildscripts/output-distance.py
3380 (ComparisonData.create_html_result_page): copy only if file
3381 exists, fixup src paths.
3383 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3385 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3387 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3388 Another datarootdir reto.
3390 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3391 available. This should be moved to postinstall-lilypond-doc.
3393 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3395 * GNUmakefile.in: simplify local-WWW-post.
3396 remove -type l from find.
3398 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3399 fixes. Don't follow symlinks.
3400 (ComparisonData.create_html_result_page): remove previous results.
3401 insert ../python in path.
3403 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3405 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3407 * config.make.in (datadir): Add datarootdir to silence autoconf.
3409 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3411 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3413 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3415 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3416 slash beams too wide.
3418 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3420 * VERSION: release 2.9.7
3422 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3424 * lily/relocate.cc (read_relocation_dir): Do not blindly
3427 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3429 * lily/parser.yy: replace THIS by PARSER
3431 * Documentation/index.html.in: add link to test-results.html page.
3433 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3435 * scm/translation-functions.scm (format-bass-figure): translate
3436 digits over 10 to the left
3438 * scm/define-markup-commands.scm (translate-scaled): new markup.
3440 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3443 * ly/engraver-init.ly: add Figured_bass_engraver
3445 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3447 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3449 * lily/score-engraver.cc (announce_grob): only note START announces.
3451 * lily/include/engraver-group.hh (Translator_group):
3452 acknowledge_hash_table_ is now drul.
3454 * lily/engraver.cc (announce_end_grob): new method.
3456 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3458 * lily/translator-dispatch-list.cc (create): take start_end argument.
3460 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3461 acknowledge_static_array_ to drul
3463 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3465 * scm/define-grob-interfaces.scm
3466 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3468 * scm/define-grobs.scm (all-grob-descriptions): add
3469 BassFigureAlignmentPositioning
3471 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3472 number stays up to date. Backportme.
3474 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3476 * Documentation/user/basic-notation.itely (Bar lines): Document
3479 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3481 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3483 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3484 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3487 * Resurrect `scons lily' build.
3489 * SConstruct (symlink_tree): Bugfix: link
3490 music-drawing-routines.ps to file iso directory.
3492 * lily/SConscript: Remove kpath-guile from LIBS.
3494 * SConstruct (libdir_package_version): Typo.
3495 (configure): Comment-out fontforge for lack of fontforge.pc .
3496 Also add libdir* to environment.
3498 2006-05-30 Graham Percival <gpermus@gmail.com>
3500 * Documentation/user/ various: minor additions from mailist and
3503 2006-05-30 Paco <fravd@ya.com>
3505 * Documentation/user/music-glossary.tely: numerous corrections and
3506 some new translations.
3508 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3512 * buildscripts/output-distance.py
3513 (ComparisonData.create_html_result_page): new routine: summarise
3514 results in HTML page with images.
3515 (ComparisonData.create_text_result_page): create summary text files too.
3517 * GNUmakefile.in (web-ext): package .signature files too. They
3520 * scm/stencil.scm (write-system-signature): typo.
3522 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3524 * scm/stencil.scm (write-system-signature): better escaping.
3525 only write signature for music systems, not for markup systems.
3527 * scm/framework-ps.scm (output-framework): dump-signatures support
3530 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3532 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3533 for -dno-point-and-click
3535 * lily/grob.cc (get_print_stencil): don't read
3536 point_and_click_global to determine whether to set grob-cause.
3538 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3540 * buildscripts/output-distance.py (main): new function.
3541 (ComparisonData): new class.
3543 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3544 careful with generating new LedgerLineSpanners.
3546 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3548 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3549 context. This fixes double ledger lines in output.
3551 * lily/system.cc (get_paper_system): remove 3 layer limit.
3553 * buildscripts/output-distance.py (SystemLink.distance): new
3554 file. Compare signatures.
3556 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3558 * lily/grob-array.cc (remove_duplicates): rename from
3559 uniq(). Sort before calling uniq() so it actually works.
3561 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3563 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3564 \version from lilypond file snippet.
3565 (Lilypond_file_snippet.ly): oops. typo.
3566 (find_toplevel_snippets): urgh. again.
3568 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3569 prevent duplicated broken items in output.
3571 * scm/framework-eps.scm (output-classic-framework): only dump if
3572 dump-signatures is set.
3574 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3576 * scm/stencil.scm (write-system-signature): new routine: write
3577 python parseable signature of a separate paper system.
3580 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3582 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3586 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3588 * translator-group.cc: send music events to engravers in
3589 non-bottom contexts.
3591 * tuplet-engraver.cc: process tuplet brackets in correct order.
3593 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3595 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3596 arg 2 might point us to a new binary (patch by Karl Hammar)
3598 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3600 * VERSION (PACKAGE_NAME): release 2.9.6
3602 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3604 * Documentation/user/*.itely: 2nd
3605 attempt: replace funindex -> findex globally.
3607 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3609 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3610 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3612 * scm/define-music-display-methods.scm: display methods for
3613 breaks. Fix \applyOutput.
3615 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3617 * Documentation/user/macros.itexi: comment out funindex expansion.
3619 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3622 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3623 Karl Hammar. Backportme.
3625 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3627 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3629 * Documentation/user/programming-interface.itely (Running a
3630 function on all layout objects): idem.
3632 * Documentation/user/introduction.itely (Automated engraving):
3633 update \applyOutput syntax
3635 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3636 remove debugging hook.
3638 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3641 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3643 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3644 TEXI2DVI_FLAGS to texi2dvi invocation.
3646 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3648 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3649 works. More work is done by iterator now, and engraver has been
3650 very much simplified.
3652 * lily/translator-group.cc: try_music is now invoked through a
3655 * lily/*-iterator.cc: Massive cleanups. Junked
3656 try_music_in_children globally. Renamed try_music to report_event,
3657 and made that method descend to a bottom context automatically.
3659 * lily/event-iterator.cc: New file.
3661 * lily/output-property-iterator.cc,
3662 lily/old-lyric-combine-music-iterator.cc: Removed.
3664 * python/convert-rules.py: Modified the syntax for \applyOutput.
3666 2006-05-23 Graham Percival <gpermus@gmail.com>
3668 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3671 * Documentation/user/ various: stuff that might have helped
3672 to fix the pdf creation, plus some minor doc additions.
3674 * Documentation/user/changing-defaults.itely: remove @b from
3675 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3677 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3679 * lily/beaming-pattern.cc (beamify): deal with negative start
3680 moments for beaming patterns.
3682 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3684 * lily/beaming-info.cc (beamify): new function: read beatLength
3685 and beatGrouping from context.
3687 * input/regression/beam-beat-grouping.ly (Module): new file.
3689 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3691 * lily/beam.cc (get_beam_segments): generate events for
3692 max_connect_ case too.
3693 (get_beam_segments): read Stem::max-beam-connect.
3695 * input/regression/beam-single-stem.ly: new file.
3697 * lily/stem.cc (set_beaming): use #f as signaling value for
3700 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3702 * lily/beam.cc (set_beaming): read clip-edges property.
3703 (calc_direction): don't suicide for single stem.
3705 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3706 argument, remove 1<<15 hack. Remove clip_edges()
3708 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3710 2006-05-21 Graham Percival <gpermus@gmail.com>
3712 * Documentation/user/basic-notation.itely: reorg.
3714 * Documentation/user/ various: minor fixes.
3716 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3718 * lily/stencil-expression.cc (register_stencil_head): opps, append
3719 to cdr of static SCM object.
3721 2006-05-19 Graham Percival <gpermus@gmail.com>
3723 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3724 update framework for command index. DOC WRITERS: use @funindex
3725 instead of @cindex @code{}.
3727 * Documentation/user/ various: replace @cindex @code{} => @funindex
3729 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3731 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3732 case positions is set manually.
3734 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3736 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3739 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3741 * Documentation/user/changing-defaults.itely (Contexts explained):
3742 use absolute dimension for @image.
3744 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3745 out image for illustration too.
3746 ($(outdir)/%.png): add more png <-> eps rules.
3748 2006-05-17 Graham Percival <gpermus@gmail.com>
3750 * Documentation/user/ various: remove trailing whitespace, cosmetic
3751 change to reduce changes produced by diff.
3753 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3755 * lily/main.cc (do_chroot_jail): correctness tweak.
3757 * python/lilylib.py (system): import subprocess in system () only.
3759 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3761 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3762 variable. Backportme.
3764 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3766 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3768 2006-05-17 Werner Lemberg <wl@gnu.org>
3770 * lily/lexer.ll (init_signature_has_table): Add
3771 `scm-scm-music-music'.
3773 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3774 (Generic_prefix_music_scm): Add rule for it.
3776 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3777 `quoted-transposition' property.
3779 * ly/music-functions-init.ly (transposedCueDuring): New function.
3781 * scm/define-music-properties.scm (all-music-properties): Updated.
3783 * Documenation/topdocs/NEWS.itely: Document it.
3785 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3787 * python/lilylib.py (system): move import subprocess to system()
3790 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3792 * VERSION (PATCH_LEVEL): release 2.9.5
3794 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3797 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3799 2006-05-16 Graham Percival <gpermus@gmail.com>
3801 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3803 * Documentation/user/ various: minor fixes.
3805 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3807 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3809 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3811 * Documentation/user/advanced-notation.itely (Instrument names):
3812 Modified obsolete instruction on how to move instrument names away
3813 from the staves. Hmm, at second thought the bug probably has been
3814 solved, so the full bug description should probably be removed.
3816 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3818 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3819 currentCommandColumn.
3821 * lily/hairpin.cc (print): also add padding for non-neighbor
3824 * scm/define-context-properties.scm
3825 (all-user-translation-properties): add hairpinToBarline
3827 * input/regression/hairpin-to-barline.ly: new file.
3829 * lily/context.cc (internal_send_stream_event): thinko fix.
3831 * lily/tie.cc (set_default_control_points): robustness fix.
3833 * python/musicxml.py (Part.interpret): don't complain about
3834 incomplete measures.
3836 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3837 new music if last_event_chord() returned None.
3839 * python/musicxml.py (Part.interpret): skip back over chord notes.
3841 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3843 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3844 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3845 lily/slash-repeat-engraver.cc,
3846 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3847 iterator sends PercentEvents
3849 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3850 rework tuplets: send start/stop events to engraver
3852 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3853 dispatchers event-source and events-below to Context
3855 2006-05-15 Graham Percival <gpermus@gmail.com>
3857 * Documentation/user/README.txt: update info for doc writers.
3859 * Documentation/user/programming-interface.itely: integrate
3860 Nicolas' fixes for chapter rewrite.
3862 * Documentation/user/ various: minor fixes.
3864 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3866 * lily/clef-engraver.cc: cleanup.
3868 * Documentation/user/GNUmakefile: dist context-example.eps too.
3870 * lily/key-engraver.cc (create_key): use
3871 explicitKeySignatureVisibility for cancellation too.
3873 * lily/font-config.cc (init_fontconfig): don't close file if
3876 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3878 * Documentation/topdocs/NEWS.tely: niente and rotation news
3880 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3882 * lily/include/stencil.hh
3883 * lily/stencil.cc (rotate): new function. Makes it possible
3884 to rotate a stencil around a given offset.
3886 * lily/grob.cc (get_print_stencil): add rotation support
3888 * lily/stencil-interpret.cc (interpret_stencil_expression):
3889 add rotation support
3891 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3893 * scm/define-grob-properties.scm: add 'rotation property
3895 * scm/define-markup-commands.scm: add rotate markup command
3897 * scm/output-ps.scm: add rotation support in PostScript backend
3899 * scm/output-svg.scm: add rotation support in SVG backend
3901 2006-05-13 Graham Percival <gpermus@gmail.com>
3903 * Documentation/user/music-glossary.itely: French correction.
3905 * Documentation/user/programming-interface.itely: major
3906 new docs, some reorg, some info from Nicolas.
3908 * Documentation/user/ various: small fixes.
3910 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3912 * Documentation/user/programming-interface.itely (Markup
3913 programmer interface): Remove duplicate text.
3915 2006-05-12 Graham Percival <gpermus@gmail.com>
3917 * Documentation/user/context-example.eps: new file.
3919 * Documentation/user/changing-defaults.itely: set up file to
3922 * Documentation/user/programming-interface.itely: changes
3925 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3927 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3929 2006-05-11 Graham Percival <gpermus@gmail.com>
3931 * Documentation/user/programming-interface.itely: first round of
3932 editing and merging emails from Nicolas.
3934 * Documentation/user/scheme-tutorial: minor edit.
3936 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3938 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3940 (Xml_node.message): use it.
3942 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3943 oops. Add duration argument.
3945 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3947 * lily/paper-column-engraver.cc (make_columns):
3948 * scm/define-grobs.scm: Revert my previous change and set the default
3949 in define-grobs.scm instead.
3951 2006-05-09 Graham Percival <gpermus@gmail.com>
3953 * Documentation/user/changing-defaults.itely: general editing,
3954 info about \set and \override.
3956 * Documentation/user/tweaking.itely, advanced-notation.itely:
3957 fixes from Dave Luttinen, thanks!
3959 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3961 * lily/paper-column-engraver.cc (make_columns): By default, a column
3962 needs to be breakable.
3964 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3966 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3968 (musicxml_time_to_lily): idem
3969 (musicxml_key_to_lily): idem
3970 (instrument_drumtype_dict): dict for supported drumtypes.
3971 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3972 moments and pending mm rests
3973 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3974 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3975 (musicxml_voice_to_lily_voice): add mode change.
3976 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3977 speed and less memory usage (factor 5 to 10).
3978 (convert): write -defs.ly and driver file separately so people
3979 can script their own part extraction.
3981 * python/musicxml.py (minidom_demarshal_node): new function:
3982 separate minidom handling.
3983 (lxml_demarshal_node): new function: support lxml.etree too.
3984 (Xml_node.message): new function: verbose error message, with XML
3985 path to offending node.
3986 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3987 (Part_list.generate_id_instrument_dict): new method: collect
3988 instrument names, to be able to set drum_type.
3989 (Part.interpret): handle underfull measures
3990 (Part.interpret): assign instrument names.
3992 * python/musicexp.py (Output_printer.close): new method
3993 (MusicWrapper.print_ly): new class: support other modes,
3995 (BarCheck.print_ly): new class. Support bar checks, with comments
3996 and fancy barchecks.
3997 (NoteEvent.__init__): also set drum_type for drum notes.
3998 (MultiMeasureRest.lisp_expression): dump mm rests.
4000 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4001 line-break-permission if forbidBreak is not set.
4003 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4005 * scm/define-context-properties.scm:
4006 * scm/define-grob-properties.scm:
4007 * scm/define-grobs.scm:
4008 * scm/define-music-display-methods.scm:
4009 * scm/define-music-properties.scm:
4010 * scm/define-music-types.scm:
4011 * scm/music-functions.scm:
4012 * ly/declarations-init.ly:
4013 * lily/include/constrained-breaking.hh:
4015 * lily/spaceable-grob.cc:
4016 * lily/simple-spacer.cc:
4017 * lily/paper-score.cc:
4018 * lily/paper-column.cc:
4019 * lily/paper-column-engraver.cc:
4021 * lily/gourlay-breaking.cc:
4022 * lily/constrained-breaking.cc:
4023 * python/convertrules.py:
4024 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4025 "page-break-penalty" and "line-break-permission".
4026 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4027 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4029 * lily/bar-engraver.cc:
4030 * lily/beam-engraver.cc:
4031 * lily/forbid-break-engraver.cc:
4032 * lily/ligature-engraver.cc:
4033 * lily/paper-column-engraver.cc:
4034 * lily/percent-repeat-engraver.cc:
4035 * lily/score-engraver.cc:
4036 * lily/score-engraver.hh:
4037 * lily/paper-column-engraver.hh:
4038 Inter-engraver communication regarding line breaks is done through context
4039 properties (Score.forbidBreak) instead of function calls.
4041 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4043 * VERSION (PACKAGE_NAME): release 2.9.4
4045 2006-05-08 Graham Percival <gpermus@gmail.com>
4047 * Documentation/user/working.itely: proofreading from Dave
4050 * Doucmentation/user/README.txt: updated with manual style info.
4052 * Documentation/user/ various: trim linewidth to 78 chars.
4054 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4056 * scm/define-grob-properties.scm (all-internal-grob-properties):
4057 remove chord-tremolo property.
4059 * lily/beam.cc (get_beam_segments): don't use stem position as
4060 base for broken ends.
4062 2006-05-06 Graham Percival <gpermus@gmail.com>
4064 * Documentation/user/putting.itely: proofreading from Dave
4067 * Documentation/user/ various: more reorg and clarifications.
4069 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4071 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4073 * ly/music-functions-init.ly: new function featherDurations
4075 * lily/beam.cc: read grow-direction for feathered beaming.
4077 * Documentation/topdocs/NEWS.tely (Top): typo.
4079 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4081 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4084 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4085 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4086 used by music streams.
4088 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4089 lily/stream-event.cc, lily/stream-event-scheme.cc,
4090 lily/listener.cc, lily/scheme-listener.cc,
4091 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4092 lily/include/stream-event.hh, lily/include/listener.hh,
4093 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4094 Created data structures for music streams.
4096 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4098 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4099 construction of a beam.
4102 * flower/include/std-vector.hh (default_compare): use only one comparison.
4104 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4105 (note-by-number): further attachment fixes.
4107 * scm/lily-library.scm (ordered-cons): new function.
4108 (interval-index): new function
4110 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4112 * lily/note-head.cc (get_stem_attachment): new function.
4114 * scm/define-markup-commands.scm (note-by-number): read 'style
4117 * input/regression/markup-note.ly: show note-head style option.
4119 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4122 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4124 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4126 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4128 * lily/include/constrained-breaking.hh: GCC 4 fix.
4130 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4132 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4133 Replace it with functions get_line_forces and get_line_configuration.
4134 (class Simple_spacer): Make data private.
4135 Rewrite compression algorithm to be faster and simpler.
4137 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4138 * lily/gourlay-breaking.cc (solve):
4139 * lily/constrained_breaking.cc (space_line):
4140 Change it to the new simple-spacer code.
4142 * lily/paper-score.cc (get_paper_systems):
4145 Delay breaking the systems until they are requested.
4146 (find_break_indices):
4147 Use vsize for indices.
4149 Move the "Calculating line breaks" message here.
4151 * lily/system.cc (pre_processing):
4152 Move the "Calculating line breaks" message away from here.
4153 (break_into_pieces):
4154 Allow multiple calls to this function in sequence (with touching-but-
4155 not-overlapping breakpoints).
4157 * lily/constrained-breaking.cc:
4158 Replace most of the get_XXXX functions with get_line_details.
4159 Only calculate the force for each line. Calculate configurations only
4160 for the lines we will actually use.
4161 Replace cols_ with lines_.
4163 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4165 * mf/GNUmakefile (depth): remove FC_FIND.
4167 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4169 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4171 * scm/framework-ps.scm (write-preamble): new function.
4172 (write-preamble): load mac fonts via fondu, even if gs-font-load
4175 2006-05-03 Werner Lemberg <wl@gnu.org>
4177 * mf/GNUmakefile (FC_FIND): Fix typo.
4179 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4181 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4183 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4185 * stepmake/aclocal.m4: run python-config for crosscompiling
4188 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4189 -f png for HTML, TEXINFO formats.
4191 * input/tutorial/lbook-html-test.html: new file.
4193 * lily/include/tie-formatting-problem.hh (class
4194 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4195 [column, direction]. This fixes laissez vibrer ties.
4197 * flower/include/tuple.hh (struct Tuple2): new file.
4199 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4200 $(FCMATCH), only if $(NCSB_DIR) not set.
4202 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4204 * config.make.in (DOCUMENTATION): set FCMATCH.
4206 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4208 2006-05-03 Graham Percival <gpermus@gmail.com>
4210 * Documentation/user/ various: final round of reorg.
4212 * Documentation/user/instrument-notation.itely: some more
4213 fixes from Eduardo, thanks!
4215 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4217 * VERSION (PACKAGE_NAME): release 2.9.3
4219 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4221 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4223 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4225 * scm/define-grob-properties.scm (all-user-grob-properties):
4226 Correct typo, thanks to Eduardo.
4228 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4230 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4232 * buildscripts/lilypond-words.py (F): indent fix.
4234 * input/regression/tie-arpeggio-collision.ly: new file.
4236 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4237 function: store outlines per column rank.
4239 * lily/include/tie-configuration.hh (class Tie_configuration): add
4240 column_ranks_ to specification and configuration, to distinguish
4241 between ties for different heads in arpegiated chords.
4243 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4245 * *.py: more 4 space indents.
4247 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4249 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4251 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4253 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4255 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4257 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4259 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4261 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4263 * python/convertrules.py (conv): indent 4 for python files.
4265 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4267 * Documentation/user/changing-defaults.itely (Creating contexts):
4268 Clarify \new semantics.
4270 2006-04-28 Graham Percival <gpermus@gmail.com>
4272 * Documentation/user/ various: major new sections in the
4273 Learning manual, slight reorg elsewhere.
4275 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4277 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4279 * scm/framework-ps.scm (output-framework): remove PageMedia
4281 2006-04-27 Graham Percival <gpermus@gmail.com>
4283 * Documentation/user/ tweaks.itely, working.itely: new
4284 files, being more advanced "learning manual" chapters.
4286 * Documentation/user/ tutorial, putting, lilypond: reorg.
4288 2006-04-26 Graham Percival <gpermus@gmail.com>
4290 * input/regression/lyric-combine-polyphonic.ly: fixed test
4291 (no more "can't find context `one'" error).
4293 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4295 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4297 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4299 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4301 * lily/relocate.cc (read_relocation_dir): new function.
4303 2006-04-26 Graham Percival <gpermus@gmail.com>
4305 * Documentation/user/instrument-notation.itely: a few more fixes
4306 from Eduardo, thanks!
4308 * Documentation/user/README.txt: new file; contains info on
4309 style that used to be in lilypond.tely.
4311 * Documentation/user/ various: first round of doc reorg.
4313 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4314 graphic; this probably causes problems on some pdf
4315 viewers, notably Adobe Acrobat.
4317 2006-04-24 Graham Percival <gpermus@gmail.com>
4319 * Documentation/user/instrument-notation.itely: many alterations
4320 to Vocal music, from Eduardo Viera.
4322 2006-04-23 Graham Percival <gpermus@gmail.com>
4324 * Documentation/user/instrument-notation.itely: fix \new
4325 instead of \context problem.
4327 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4329 * lily/relocate.cc (expand_environment_variables): new function.
4331 (read_relocation_file): id.
4333 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4335 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4337 * ly/engraver-init.ly: remove old comments from TabVoice
4339 2006-04-20 Graham Percival <gpermus@gmail.com>
4341 * Documentation/user/instrument-notation.itely: added Erlend's
4342 latest doc patch, thanks!
4344 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4346 * lily/include/slur.hh:
4348 * lily/phrasing-slur-engraver.cc:
4349 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4350 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4351 Slur_engraver:: and putting it in
4352 Slur::auxiliary_acknowledge_extra_object ().
4354 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4356 * lily/note-collision.cc: fix a comment
4358 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4360 * stepmake/bin/add-html-footer.py: fix footer position in
4361 generated html files: before </body> and </html> tags.
4363 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4365 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4366 Earlier successive `make' commands finally compiled ok.
4368 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4370 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4372 * lily/include/stem-tremolo.hh:
4373 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4377 * lily/include/lookup.hh: add rotated_box ()
4379 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4381 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4382 been generated. Fixes "can't get `--help'" bug after make clean.
4384 * THANKS: alphabetize contributors.
4386 2006-04-17 Graham Percival <gpermus@gmail.com>
4388 * Documentation/user/instrument-notation.itely: added Erlend's
4389 tabs and banjo doc patch. Thanks!
4391 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4393 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4395 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4397 * scm/output-lib.scm: add some more predefined string tunings.
4399 * Documentation/user/instrument-notation.itely: and doc them.
4401 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4403 * ly/engraver.ly: Remove obsolete comments.
4405 * ly/gregorian-init.ly: Define default layout block.
4407 * input/puer-fragment.ly: Updated and extended.
4409 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4411 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4412 pdf conversion behaviour.
4414 * flower/file-name.cc (dir_name)
4415 (get_working_directory): Move from relocate.cc.
4417 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4419 * lily/relocate.cc: Encapsulate sys/stat.h in
4422 2006-04-14 Graham Percival <gpermus@gmail.com>
4424 * Documentation/user/ various: small updates from Cameron
4425 and Juergen, thanks!
4427 * Documentation/user/ various: small updates of my own.
4429 * THANKS: 2.7 -> 2.8.
4431 2006-04-11 Graham Percival <gpermus@gmail.com>
4433 * scm/define-context-properties.scm: typo.
4435 * Documentation/user/ : many more small updates.
4437 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4439 * scm/define-music-types.scm: disposed "docme".
4441 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4443 * lily/hairpin.cc: make niente circles a bit smaller.
4445 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4447 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4448 get-pfa and get-*-fonts targets.
4450 2006-04-10 Graham Percival <gpermus@gmail.com>
4452 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4453 music-glossary, programming-interface: more minor fixes
4456 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4458 * scm/define-context-properties.scm: another old \property update.
4459 This time tested for compiling!
4461 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4463 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4465 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4467 * scm/define-context-properties.scm (all-user-translation-properties):
4468 * Documentation/user/global.itely (Page formatting): Compile fix.
4470 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4472 * Documentation/user/advanced-notation.itely (Polymetric
4473 notation): Update the example to use the "+" symbol and add link
4474 to input/test/compound-time.ly.
4476 2006-04-08 Graham Percival <gpermus@gmail.com>
4478 * scm/define-grob-properties.scm: clarify docs for #'direction.
4480 * scm/define-context-properties.scm: update old \property override.
4482 * Documentation/user/ advanced-notation, global, lilypond-book:
4483 more minor doc updates.
4485 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4487 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4489 * scm/backend-library.scm (search-gs): oops.
4491 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4493 * scripts/lilypond-book.py (output): use base, not filename for href.
4495 * scm/backend-library.scm: only look for gs.
4497 * scripts/lilypond-book.py (output): fix printfilename.
4499 * lily/parser.yy (music_function_musicless_prefix): fold together
4500 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4502 * lily/slur.cc (print): only set font-size if not set yet.
4504 * lily/slur-configuration.cc (add_score): improved layout of debug
4507 2006-04-05 David Feuer <David.Feuer@gmail.com>
4509 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4510 (draw_circle): Hopefully fixed regression.
4511 Improved documentation for several procedures.
4513 2006-03-04 Werner Lemberg <wl@gnu.org>
4515 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4517 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4519 * scripts/musicxml2ly.py (bindir): add dynamic
4522 2006-04-04 Graham Percival <gpermus@gmail.com>
4524 * Documentation/user/ basic-notation, advanced-notation, putting,
4525 instrument-notation, invoking, lilypond, THANKS: another ream of small
4526 fixes from the Doc Helpers.
4528 2006-04-03 David Feuer <David.Feuer@gmail.com>
4530 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4532 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4534 * Cleaned up interfaces between PostScript and Scheme, and moved
4535 computations from PostScript to Scheme:
4537 * music-drawing-routines.ps
4538 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4539 with stroke_and_fill throughout.
4540 (euclidean_length, print_letter, draw_box): Deleted unused
4541 procedures. If someone needs draw_box, implement it using
4542 draw_round_box; don't duplicate code.
4543 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4544 Refactored/cleaned up interfaces.
4547 * output-ps.scm: reordered arguments to PostScript functions to
4548 match new interfaces
4549 (glyph-string): Rewrote glyph-string.
4550 (grob-cause): Replaced string-append with format.
4551 (repeat-slash): Rewrote to do computation here.
4552 (round-filled-box): Rewrote to do computation here.
4554 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4556 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4558 * stepmake/stepmake/toplevel- targets.make: print help info about
4561 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4563 * input/regression/hairpin-circled.ly: new file
4565 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4567 * lily/hairpin.cc (print): add support for circled tip
4569 * scm/define-grob-properties.scm: add circled-tip parameter
4571 * scm/define-grobs.scm: init circled-tip to false
4573 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4575 * scm/music-functions.scm (quote-substitute): set
4578 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4580 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4583 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4585 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4587 2006-03-31 David Feuer <david.feuer@gmail.com>
4589 * scm/framework-ps.scm:
4591 * scm/output-ps.scm: glyph-string now produces smaller, more
4592 readable, and probably faster PostScript. Several findfont
4593 scalefont setfont instances changed to selectfont
4594 Hacked-up string-appends changed to formats.
4596 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4598 2006-03-30 Graham Percival <gpermus@gmail.com>
4600 * scm/lily-library.scm: make "no version" warning message more polite.
4602 * lily/music.cc: add double quotes to failed octave check.
4604 * Documentation/user/ advanced-notation, changing-defaults,
4605 instrument-notation, invoking, music-glossary: whole bunch of minor
4608 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4610 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4611 $(buildscriptdir) iso. depth.
4613 * VERSION (PACKAGE_NAME): release 2.9.1
4615 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4617 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4619 * VERSION (PATCH_LEVEL): bump version number.
4621 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4624 * lily/pango-font.cc (pango_item_string_stencil): use
4627 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4628 $(outdir)/emmentaler-%.svg): remove canary.
4630 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4631 glyphnames if we have a ttf font.
4633 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4635 * Documentation/user/advanced-notation.itely (Font selection):
4636 Corrected reference to the font-family-override.ly example.
4638 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4640 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4641 stem-tremolo object in the stem (or else the stem might not be
4644 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4646 * lily/ttf.cc (print_trailer): only print existing glyphs.
4648 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4650 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4651 position the tremolo based on the position of the notehead.
4653 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4654 notes and update the texidoc line with the new positioning rules.
4656 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4658 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4660 * scripts/lilypond-book.py (Module): set default for linewidth if
4663 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4665 * VERSION (PACKAGE_NAME): release 2.9.0.
4667 * input/regression/stem-tremolo-position.ly: new file.
4669 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4671 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4673 * lily/stem-tremolo.cc (print): position
4674 the tremolo depending only on the end of the stem
4675 and not on the notehead
4676 (raw_stencil): center, on the middle staff line, the
4677 flag that is closest to the end of the stem (previously
4679 (calc_width): add this callback to shorten a tremolo when
4680 it is beamed or it is stemup with a flag
4681 (style): add this callback to make a tremolo rectangular when
4682 it is beamed or it is stemup with a flag
4683 (rotated_box): this is like Lookup::beam but makes a rotated
4684 rectangle instead of a parallelogram
4686 * lily/stem.cc (calc_stem_info): make sure the stem
4687 is long enough to fit the tremolo
4688 (calc-length): reduce the length of tremolo stems since the
4689 tremolo code is now capable of better positioning
4691 * scm/define-grobs.scm: make calc_width the default beam-width
4692 callback for stem-tremolo and add the style callback
4694 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4696 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4699 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4701 * lily/ttf.cc (make_index_to_charcode_map): restore old
4704 2006-03-28 Werner Lemberg <wl@gnu.org>
4706 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4708 2006-03-28 Graham Percival <gpermus@gmail.com>
4710 * THANKS: update for 2.9, add section for Documentation helpers.
4712 * Documentation/topdocs/NEWS.tely: compile fix.
4714 * Documentation/user/ basic-notation, global, advanced-notation,
4715 examples.itely: minor fixes from mailist.
4717 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4719 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4722 * lily/ttf.cc (print_trailer): use it.
4724 * lily/pango-font.cc (get_unicode_name): new function.
4726 * lily/ttf.cc (make_index_to_charcode_map): move function from
4728 (print_trailer): substitute uniXXXX name if applicable.
4730 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4731 (pango_item_string_stencil): use it to generate uniXXXX names.
4733 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4734 note heads, for uniform widths in shape note output.
4735 (overdone_heads): hmm. remove them again.
4737 * scripts/lilypond-book.py (output): add links to filenames.
4739 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4741 * lily/note-collision.cc (get_clash_groups): only consider when
4742 Note_column::dir <> CENTER.
4744 * scripts/lilypond-book.py (get_option_parser): init output_name
4747 2006-03-24 Graham Percival <gpermus@gmail.com>
4749 * Documentation/topdocs/NEWS.tely: add @end itemize
4751 * Documentation/user/ global, advanced-notation: minor
4754 2006-03-23 Graham Percival <gpermus@gmail.com>
4756 * Documentation/user/ lilypond.tely, music-glossary,
4757 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4759 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4761 * mf/GNUmakefile: don't install .enc files.
4763 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4765 * VERSION (PATCH_LEVEL): bump to 2.9.0
4767 2006-03-22 Graham Percival <gpermus@gmail.com>
4769 * Documentation/user/advanced-notation.itely: minor fixes
4772 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4774 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4776 * branch lilypond_2_8
4778 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4780 * scripts/lilypond-book.py (samefile): new function, for windoze
4783 2006-03-21 Graham Percival <gpermus@gmail.com>
4785 * ly/engraver-init.ly: add info about StaffGroup.
4787 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4789 * input/regression/stem-direction-context.ly: idem.
4791 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4795 * input/regression/page-layout-twopass.ly: comment out \markup so
4798 * lily/instrument-name-engraver.cc (finalize): add to instrument
4799 name global System. This also fixes chopped instrument names, but
4800 doesn't crash when there are slurs/beams.
4802 * lily/slur-configuration.cc (add_score): disallow negative slur
4805 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4807 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4809 * lily/instrument-name-engraver.cc (process_music): kludge: add
4810 InstrumentName spanner to axis group of left bound. Fixes chopped
4811 off instrument names in EPS images.
4813 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4815 * scripts/abc2ly.py (option_parser): update to 2.7.40
4817 2006-03-20 Graham Percival <gpermus@gmail.com>
4819 * THANKS: move small doc contributors to SUGGESTIONS.
4821 * Documentation/user/ basic-notation, advanced-notation,
4822 global: small changes from mailist.
4824 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4826 * Documentation/user/advanced-notation.itely (Text marks): update
4827 for new rehearsalMarkAlignSymbol convention.
4829 * VERSION (PATCH_LEVEL): bump version.
4831 * input/test/instrument-name-align.ly: new file.
4833 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4835 * input/test/instrument-name-align.ly: new file. Document how to
4836 align instrument names.
4838 * lily/mark-engraver.cc: remove properties.
4840 * scm/define-context-properties.scm
4841 (all-user-translation-properties): remove align symbol properties
4842 for barnumber/reh. mark.
4844 * lily/break-align-interface.cc (self_align_callback): new
4845 interface, new function. Look at complete alignment. This handles
4846 tunable break alignments in case break-align-symbols are missing.
4848 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4850 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4852 * python/convertrules.py (conv): mark/bar number alignment rule.
4854 * lily/break-align-interface.cc (calc_positioning_done): also
4855 store offset from last visible break-alignment to its
4856 neighbor. This makes alignment on non-visible objects more reliable.
4858 * po/lilypond.pot (Module): ran po-replace.
4860 * input/regression/tie-single-manual.ly (Module): new file.
4862 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4863 look at has_manual_position_.
4864 (from_ties): set has_manual_position_ if tie has staff-position set.
4866 * lily/tuplet-bracket.cc (calc_positions): idem.
4868 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4871 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4873 * scm/define-markup-commands.scm (smallCaps): new markup command
4874 for turning a text to small caps using smaller font size and upper
4877 2006-03-17 Graham Percival <gpermus@gmail.com>
4879 * Documentation/user/ examples, instrument-notation,
4880 advnaced-notation: minor fixes from mailist.
4882 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4884 * Documentation/user/tutorial.itely (First steps): change example
4887 2006-03-17 Graham Percival <gpermus@gmail.com>
4889 * Documentation/user/ examples, advanced: minor changes from mailist.
4891 * THANKS: add Geoff Horton, for documentation stuff.
4893 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4895 * python/lilylib.py (system): revert have_select kludge.
4897 * Documentation/user/tutorial.itely (Commenting input files):
4898 update version numbers in doc.
4900 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4901 bound-padding to multi-measure-interface
4903 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4905 * input/test/engraver-example.ily: update version number.
4907 * VERSION (PACKAGE_NAME): release 2.7.39
4909 * lily/note-spacing.cc (get_spacing): heighten threshold where
4910 accidentals/arpeggios influence previous spacing fully.
4912 * lily/rest.cc (y_offset_callback): only use direction if
4913 staff-position wasn't set before.
4915 * lily/bar-number-engraver.cc: add support for
4916 barNumberAlignSymbol.
4917 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4919 * lily/pointer-group-interface.cc (set_ordered): new function.
4920 (add_unordered_grob): new function.
4922 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4923 to ordered, unless the opposite has been proved. This fixes
4924 random reordering of large object groups across linebreaks,
4927 * lily/main.cc (do_chroot_jail): printf format fix.
4929 * lily/tie-formatting-problem.cc (generate_configuration):
4930 multiply y-shift for dot with direction.
4932 * scm/define-markup-commands.scm (note-by-number): put (magstep
4933 size) in y-attach too.
4935 * Documentation/topdocs/NEWS.tely (Top): show override.
4937 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4938 direction for stems.
4940 2006-03-15 Graham Percival <gpermus@gmail.com>
4942 * Documentation/user/ changing-defaults, global: minor
4945 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4947 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4949 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4950 breakable items after uniformly stretched notes.
4952 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4953 outline with outer edge of note heads. This prevents infinity
4954 problems with tied whole notes.
4956 * scripts/lilypond-book.py (do_file): use os.popen
4958 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4960 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4962 * Documentation/user/invoking.itely: Add ragged-right to bug report
4965 2006-03-14 Graham Percival <gpermus@gmail.com>
4967 * Documentation/user/global.itely: small fix from mailist.
4969 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4971 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4972 file descriptor returned by tempfile.mkstemp() when writing
4973 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4976 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4978 * po/fi.po: newline bugfix.
4980 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4982 * scm/paper.scm (paper-alist): Rounding fixes.
4984 2006-03-13 Graham Percival <gpermus@gmail.com>
4986 * Documentation/user/ changing-defaults, instrument-notation,
4987 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4989 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4993 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4995 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4998 * python/lilylib.py (print_environment): move ps_page_count to
5001 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5003 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5005 * scm/framework-ps.scm (embed-document): new function. Use to
5008 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5010 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5012 * Documentation/user/instrument-notation.itely (Setting simple
5013 songs): Added \book{...} around the full example, so the separate
5014 markups are included in the printed example.
5016 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5018 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5021 * python/lilylib.py (system): rewrite system() using
5022 subprocess. Remove >& redirection trickery.
5024 2006-03-11 Graham Percival <gpermus@gmail.com>
5026 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5027 notation-appendices.itely: minor fixes from mailist.
5029 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5031 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5032 unsplit man also needs images.
5034 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5036 * VERSION (PACKAGE_NAME): 2.7.38 released.
5038 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5040 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5043 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5045 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5046 respects the Score.skipTypesetting property.
5048 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5050 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5051 Prolog. No %%EOF after CFF file.
5053 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5055 * lily/constrained-breaking.cc (get_max_systems): used to return a
5057 (combine_demerits): use pointers to reduce copying data
5058 (calc_subproblem): idem
5059 (get_page_penalty): add page turn penalties
5061 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5063 * Documentation/user/invoking.itely (Invoking lilypond): better
5064 explanation of -e usage.
5066 * lily/main.cc (main_with_guile): don't append to
5067 init_scheme_code_string
5069 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5071 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5073 * scripts/convert-ly.py (do_options): don't print help for
5076 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5077 @code and @example. Update from texinfo.tex from CVS.
5079 2006-03-08 Graham Percival <gpermus@gmail.com>
5081 * Documentation/user/scheme-tutorial.itely: clarifies distances
5082 measured in staff-spaces.
5084 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5086 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5087 consider[k] is true.
5089 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5091 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5092 consider columns that have originals. Unifies spacing for mm
5093 rests around line breaks.
5095 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5096 (set_text_rods): idem.
5097 (calculate_spacing_rods): new function: share code between
5098 set_text_rods and set_spacing_rods.
5099 (set_text_rods): take extents of bounds into account.
5101 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5103 * Documentation/user/basic-notation.itely (Writing music in
5104 parallel): don't use relative.
5106 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5108 * ly/music-functions-init.ly (Module): add shiftDurations
5110 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5112 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5114 * ly/engraver-init.ly: init vocalName to nil.
5116 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5118 * scm/music-functions.scm (music->make-music): bugfix,
5119 KeyChangeEvents are now handled correctly.
5121 * scripts/lilypond-book.py: Add --debug option.
5123 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5125 * python/lilylib.py: add tempfile.
5127 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5129 * VERSION (PACKAGE_NAME): release 2.7.37
5131 * python/lilylib.py (ps_page_count): remove make_ps_images().
5132 (ps_page_count): remove mkdir_p
5133 (system): remove cleanup_temp.
5134 (exit): remove lilypond_version_(check)
5135 (error_log): remove pseudo_filter_p
5140 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5143 * lily/accidental-engraver.cc (make_standard_accidental): only add
5144 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5146 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5147 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5148 Make incompatibilities.
5150 * scm/output-ps.scm (grob-cause): replace backslashes by /
5151 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5153 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5155 * cygwin/GNUmakefile: Install fixes.
5157 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5159 * lily/note-head.cc (head::get_balltype): Compile fix.
5161 * flower/file-name.cc (dos_to_posix): Flower string fix.
5163 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5165 * python/lilylib.py: pychecker cleanups.
5167 * scripts/lilypond-book.py
5168 (Lilypond_snippet.output_print_filename): pychecker cleanups
5170 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5172 * python/lilylib.py (underscore): remove identify() , warranty()
5174 * ps/music-drawing-routines.ps: change Border routine for GSView
5177 * lily/stem.cc (height): use quantize-positions. This triggers
5178 set_stem_lengths, so scripts on beamed stems are handled correctly.
5180 * lily/side-position-interface.cc (aligned_side): check if edges
5181 of script are inside staff. Fixes accent of edge of the staff.
5183 * input/regression/staccato-pos.ly: more examples.
5185 * stepmake/aclocal.m4 (depth): fix bashism.
5187 * lily/lyric-combine-music-iterator.cc: move from
5188 new-lyric-combine-iterator.cc
5189 (process): add pending_grace_lyric_ member to delay lyrics on
5192 * lily/system-start-text.cc (print): suicide if we don't have any
5193 elements. Fixes hara kiri'd instrument names.
5195 * scripts/mup2ly.py (Module): remove.
5197 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5199 * Documentation/user/global.itely (A single music expression):
5200 close @lilypond properly
5202 * lily/volta-bracket.cc (modify_edge_height): change from
5203 after_line_breaking_callback. Suicide last bracket if appropriate.
5205 * python/lilylib.py: strip getopt support
5207 * scripts/etf2ly.py (do_options): use optparse
5209 * scripts/midi2ly.py: optparse, strip lilylib copy.
5211 * scripts/abc2ly.py (voices): use optparse.
5213 * stepmake/stepmake/generic-vars.make: new function absdir.
5215 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5217 * scripts/lilypond-book.py (find_file): use global_options for
5220 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5223 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5225 * python/lilylib.py (get_global_option): ughness for extracting
5226 global options from lilylib.
5227 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5229 * scripts/lilypond-book.py (get_option_parser): use optparse for
5230 option handling. Put options in global_options variable.
5232 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5234 * Documentation/index.html.in: clarify.
5236 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5238 * scm/layout-page-layout.scm (write-page-breaks): add a
5239 music-system-heights property to the page layout output.
5241 * scm/page.scm (make-page-stencil): take footer into account when
5242 computing the 'space-left page property
5243 (annotate-space-left): take footer into account when annonating
5246 2006-02-28 Graham Percival <gpermus@gmail.com>
5248 * Documentation/user/ advanced-notation, global: more (final)
5249 docs for music expressions, removed special fermatas.
5251 2006-02-27 Graham Percival <gpermus@gmail.com>
5253 * Documentation/user/ basic-notation, global: minor changes
5256 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5258 * scm/framework-ps.scm:
5259 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5260 layer for inf? and nan? from framework-ps to lily-library.
5262 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5264 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5265 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5267 * buildscripts/substitute-encoding.py (Module): remove file.
5269 * mf/GNUmakefile: more PFA strippage.
5271 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5273 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5276 * scm/framework-ps.scm: remove font name munging.
5278 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5280 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5282 * scm/markup.scm (define-markup-command): change
5283 def-markup-command to define-markup-command
5285 * scm/music-functions.scm (define-music-function): change
5286 def-music-function to define-music-function.
5288 * python/convertrules.py (conv): rules for def-music-function
5289 and def-markup-commands
5291 * Documentation/user/programming-interface.itely,
5292 input/no-notation/display-lily-tests.ly,
5293 input/regression/lily-in-scheme.ly,
5294 input/regression/markup-user.ly,
5295 input/regression/music-function.ly, input/regression/tie-chord.ly,
5296 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5297 ly/gregorian-init.ly: use new macro names (define-music-function,
5298 define-markup-command).
5300 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5302 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5303 (output): add comments to lp-book latex output.
5305 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5308 2006-02-23 Graham Percival <gpermus@gmail.com>
5310 * Documentation/user/ tutorial, global: minor changes.
5312 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5314 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5315 blocks (for make 3.80)
5317 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5318 \notemode so that user should not have to explicitely type it.
5320 * scm/define-music-display-methods.scm: various
5321 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5324 * input/no-notation/display-lily-tests.ly: new tests for
5325 \applyOutput and \applyContext
5327 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5329 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5330 changed it slightly so that the number of systems returned by
5331 solve () will be the same as the last value passed to resize
5332 (). I've also added more documentation, removed casts, fixed style
5333 problems and put in some recovery if constraints aren't satisfied."
5335 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5337 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5338 for emacs < 22 compatibility.
5339 (count-rexp): Use it.
5340 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5341 substring juggling (Milan Zamazal).
5343 2006-02-23 Graham Percival <gpermus@gmail.com>
5345 * Documentation/user/ basic-notation, advanced-notation,
5346 global.itely, invoking.itely, tutorial,itely:
5347 minor fixes from mailist.
5349 * scm/define-markup-commands.scm: improve docs of \filled-box.
5351 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5353 * Documentation/index.html.in: changes concern the previous release.
5355 * input/regression/+.ly: cultivate typographical terminology.
5357 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5359 * scm/define-grob-interfaces.scm (parentheses-interface): add
5360 padding to parentheses-interface.
5362 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5363 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5365 * VERSION (PATCH_LEVEL): release 2.7.36
5367 * lily/slur.cc: add avoid-slur (ugh.)
5369 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5370 intersection gets smaller. This fixes slurs over extreme points.
5372 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5373 stems with neutral-direction set.
5375 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5377 * lily/open-type-font.cc (load_table): format error.
5379 * lily/change-iterator.cc (process): format fix.
5381 * flower/include/international.hh (_f): idem.
5383 * flower/include/std-string.hh: add format printf attribute.
5385 * scm/define-grobs.scm (all-grob-descriptions): height of all
5386 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5388 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5391 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5393 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5395 * input/regression/: upgraded syntax for some files.
5397 * THANKS: Add bughunters.
5399 2006-02-22 Graham Percival <gpermus@gmail.com>
5401 * Documentation/user/ invoking.itely, advanced-notation.itely,
5402 global.itely: long-awaited "let's make chapter 10 not suck"
5403 update. Rearrange chapter 10; now called "global issues",
5404 addresses file structure, etc. Some info from other files
5405 moved into global.itely.
5407 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5409 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5410 catch trill-span-event notes.
5412 * Documentation/user/examples.itely (Ancient notation templates): typo.
5415 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5417 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5419 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5421 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5423 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5424 froum Laissez_vibrer_engraver.
5426 * ly/declarations-init.ly (repeatTie): add \repeatTie
5428 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5430 * scm/define-grob-properties.scm (all-user-grob-properties): add
5431 head-direction property.
5433 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5434 from_lv_ties. Take head direction argument.
5436 * lily/semi-tie-column.cc: rename from
5437 laissez-vibrer-tie-column.cc. Rename class too.
5439 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5442 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5444 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5446 (find_breaks): idem.
5448 2006-02-21 Graham Percival <gpermus@gmail.com>
5450 * Documentation/user/advanced-notation.itely: fixed make-moment]
5453 * Documentation/user/basic-notation.itely: more clarification to
5456 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5458 * lily/include/constrained-breaking.hh (class
5459 Constrained_breaking): new file.
5461 * lily/constrained-breaking.cc (resize): new file.
5463 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5465 * Documentation/user/advanced-notation.itely (Clusters): insert
5468 * lily/tie-column.cc (calc_positioning_done): support for
5471 * lily/tie-formatting-problem.cc
5472 (generate_extremal_tie_variations): factor out.
5473 (score_ties_configuration): annotate all tie
5474 (print_ties_configuration): new routine.
5475 (generate_configuration): nudge extremal ties outside of the head
5477 (score_ties_configuration): oops. convert to staff-space before
5478 determining position symmetry.
5480 2006-02-20 Graham Percival <gpermus@gmail.com>
5482 * Documentation/user/*-notation.itely: misc minor editing,
5483 shifting doc sections around.
5485 * Documentation/user/*-notation-itely, global.itely,
5486 changing-defaults.itely: added new stuff from NEWS.
5488 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5492 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5494 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5495 lilypond --verbose for lp-book.
5497 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5498 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5500 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5501 $(buildscript-dir) iso. absolute depth.
5503 * buildscripts/genicon.py (dir): thinko.
5505 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5507 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5509 * scm/output-lib.scm: swap darkcyan/darkyellow
5511 * THANKS: Add bughunters.
5513 2006-02-19 Graham Percival <gpermus@gmail.com>
5515 * Documentation/user/programming-interfaces.itely: fixed example.
5517 * Documentation/user/instrument-notation.itely: fix @{ @}.
5519 * scm/script.scm: add avoid-slur for \open.
5521 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5523 * lily/tie-formatting-problem.cc (score_configuration): use
5524 sliding score for min-length.
5526 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5527 spaghetti for icons.
5529 * buildscripts/genicon.py (program_name): new file.
5531 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5533 (generate_configuration): for small ties, also look for collisions
5534 at Y + DIR*h + DELTA_Y.
5535 (get_variations): consider variation for dot positions too.
5537 * lily/side-position-interface.cc (aligned_side): take abs for
5538 quantized rounded position. Fixes tenuto below staff.
5540 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5541 markers when necessary.
5543 * lily/program-option.cc (internal_set_option): add
5544 strict_infinity_checking option.
5546 * scm/output-lib.scm (cyan): swap yellow and cyan.
5548 2006-02-19 Graham Percival <gpermus@gmail.com>
5550 * darwin.patch: trivial linenumber update.
5552 * Documentation/user/ {various}: `\context foo = named' changed
5553 to `\new foo = "name"' in docs.
5555 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5557 * scm/stencil.scm (annotate-y-interval): use it.
5559 * scm/lily-library.scm (interval-sane?): new function.
5561 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5564 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5567 * flower/include/std-vector.hh (iterof): add iterof macro.
5569 * lily/enclosing-bracket.cc (width): new function.
5571 * lily/align-interface.cc (align_elements_to_extents): reinstate
5574 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5576 * Documentation/index.html.in: fix spelling: thankyous.
5578 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5580 * lily/lyric-hyphen.cc: typo.
5582 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5584 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5585 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5588 * VERSION: release 2.7.35
5590 * lily/beam.cc (get_default_dir): oops. Take abs () for
5592 (get_default_dir): use extreme position criterion only in absence
5593 of forced stem directions.
5595 * VERSION (PATCH_LEVEL): bump VERSION.
5597 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5598 dependencies. Necessary for -jX builds.
5600 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5602 * lily/relocate.cc (setup_paths): Yet another const fix.
5604 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5606 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5608 * lily/relocate.cc (setup_paths): oops.
5610 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5612 * Documentation/index.html.in: order links: html before PDF.
5614 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5616 * lily/tie-column-format.cc (Module): remove.
5618 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5620 * lily/text-spanner.cc (print): idem.
5622 * lily/dynamic-text-spanner.cc (print): only print line if longer
5625 * lily/auto-change-iterator.cc (change_to): formatting.
5627 * lily/beam.cc (get_default_dir): take extreme note head as input
5630 * lily/tie.cc (get_default_dir): only look directions for visible
5633 * lily/side-position-interface.cc (aligned_side): oops. Don't
5634 mutiply with direction. This fixes quantized (staccato, tenuto)
5635 scripts below notes.
5637 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5638 direction. Fixes c-lyrics-center-align.ly
5640 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5642 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5645 * lily/std-string.cc:
5646 * lily/include/std-vector.hh (split_string): Move and rename from
5647 lily/include/misc.hh, lily/misc.cc. Update callers.
5649 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5651 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5653 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5655 * flower/test-file.cc: New file.
5657 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5660 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5662 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5664 * flower/include/file-storage.hh: remove file.
5666 * lily/include/midi-item.hh (class Midi_track): idem.
5668 * lily/include/source.hh (class Sources): idem.
5670 * lily/include/performance.hh (class Performance): use vector
5673 * flower/include/cons.hh (class Cons): remove file.
5675 * flower/include/flower-proto.hh: remove template cruft.
5677 * lily/include/font-metric.hh: use size_t not vsize for indices.
5679 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5682 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5684 * lily/include/paper-book.hh (class Paper_book):
5685 make get_system_specs() public.
5687 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5688 the force=10000 case if we don't have a current-best.
5690 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5693 * flower/include/flower-proto.hh: remove outdated templates.
5695 * scm/page.scm: use annotate-spacing
5697 2006-02-15 Graham Percival <gpermus@gmail.com>
5699 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5701 * THANKS: moved Erlend Aasland to contributors.
5703 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5705 * config.hh.in: remove HAVE_PANGO_16
5707 * lily/tuplet-bracket.cc (calc_positions): multiply with
5708 staff-space for beam case. This fixes tuplets+beams on scaled
5711 * config.hh.in: remove all Kpathsea related defines.
5713 * lily/dot-column.cc (side_position): reach stem via dots->
5714 head->stem. Inspect all stems for dot collisions.
5716 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5719 * lily/bar-number-engraver.cc (process_music): document function
5722 * lily/score.cc (default_rendering): add pscore, not systems
5725 * lily/paper-book.cc (get_system_specs): separate generation of
5728 * flower/include/std-vector.hh: don't include config.hh
5730 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5732 * flower/include/std-vector.hh: Better wrapper compatibility with
5735 * flower/include/flower-proto.hh: Remove cheap forward declaration
5738 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5740 2006-02-14 Graham Percival <gpermus@gmail.com>
5742 * Documentation/user/invoking.itely: add warning about command line.
5744 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5746 * lily/include/lily-proto.hh: add Prob, rm Page.
5748 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5750 * VERSION: release 2.7.34
5752 * lily/relocate.cc (framework_relocation): show canary if
5753 GHOSTSCRIPT_VERSION undefined.
5755 * GNUmakefile.in: remove $(VERSION) symlink.
5757 * lily/relocate.cc (setup_paths): add +
5759 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5761 * Documentation/index.html.in: specify sizes for all big HTML pages.
5763 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5765 * config.hh.in: remove @FRAMEWORKDIR@
5767 * lily/system-start-text.cc (get_stencil): new file: separate out
5768 system-start-delimiter text support.
5770 * input/**ly: replace \context with \new where appropriate.
5774 * lily/slur-scoring.cc (get_base_attachments): use
5775 robust_relative_extent. This fixes problems with empty paper-columns.
5777 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5779 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5781 * scm/define-music-properties.scm (all-music-properties):
5782 create-new property.
5784 * lily/context-specced-music-iterator.cc (construct_children):
5785 inspect 'create-new property iso. magical $uniqueContextId context
5788 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5790 * lily/context-key-manager.cc (Module): new file. Encapsulate
5791 object key generation.
5793 * lily/include/context-key-manager.hh (Module): new file.
5795 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5797 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5800 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5802 (reloc_b): excise --enable-framework-dir
5804 * lily/relocate.cc (framework_relocation): use getenv
5805 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5807 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5809 * flower/include/std-string.hh:
5810 * flower/include/std-vector.hh: Finish std:: conversion; move
5811 flower extensions from std:: namespace. Update users.
5813 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5814 their expansion to vector<*>. Update users.
5816 2006-02-10 Graham Percival <gpermus@gmail.com>
5818 * Documentation/user/invoking.itely: add example to File structure.
5820 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5821 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5823 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5825 * ly/paper-defaults.ly: typo.
5827 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5828 set_parent() for parentheses. This will make it show up in bbox
5831 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5832 ly:grob-common* functions.
5834 * lily/grob-scheme.cc (LY_DEFINE):
5835 ly:grob-common-refpoint-of-array: new function
5836 ly:grob-common-refpoint: new function
5837 ly:grob-relative-coordinate: new function
5839 * lily/instrument-name-engraver.cc (process_music): use
5840 Text_interface::is_markup(). This fixes \markup on instrument names.
5842 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5845 * lily/slur.cc (print): idem.
5847 * lily/tie.cc: add line-thickness for ties.
5849 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5851 * scm/output-svg.scm: Document diversion from GNU coding standards
5852 as a workaround for a bug in Microsoft Internet Explorer.
5854 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5856 * lily/instrument-name-engraver.cc (process_music): use
5857 is_markup() iso. is_string()
5859 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5861 * lily/percent-repeat-engraver.cc (process_music): only look at
5862 main_part_ for % repeats.
5864 * lily/stem-tremolo.cc (get_beam_translation): new function.
5865 (calc_slope): new function.
5866 (height): don't use real slope.
5868 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5870 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5871 new connect-to-neighbor, control-points and staff-padding
5872 properties to make ligature brackets showing up again.
5874 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5876 * VERSION: release 2.7.33
5878 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5881 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5882 remove applyOutput example.
5883 (Objects connected to the input): document \tweak, \parenthesize
5885 * lily/relocate.cc (prefix_relocation): allow "current"
5886 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5887 changing VERSION in a lily tree less painful.
5889 * input/regression/parenthesize.ly: new file.
5891 * scm/output-lib.scm (parenthesize-element): new function.
5893 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5895 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5897 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5898 cause: accidentals are caused by note heads, not note events.
5900 2006-02-08 Graham Percival <gpermus@gmail.com>
5902 * darwin.patch: small patch from Erlend, thanks!
5904 * Documentation/user/basic-notation.itely: add stem-neutral example.
5906 * Documentation/user/putting.itely: clarifications.
5908 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5910 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5911 note, add more guidelines to what should go into NEWS.
5913 * input/sakura-sakura.ly: document how to override font.
5915 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5917 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5919 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5921 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5923 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5924 convertrules. Add explicit grouping, needed for python2.2.
5926 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5928 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5930 2006-02-07 Graham Percival <gpermus@gmail.com>
5932 * Documentation/user/global.itely: fix line-width in (text) docs.
5934 * Documentation/user/lilypond-book.itely: same.
5936 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5938 * VERSION (PACKAGE_NAME): release 2.7.32
5940 * Documentation/topdocs/NEWS.tely (Top): document new variable
5943 * flower/include/array.icc (Message): remove file.
5945 * flower/include/std-vector.hh: make sure vsize and VPOS are
5946 defined for binary_search_bounds().
5948 * flower/std-string.cc (std): add to_string(long unsigned).
5950 * configure.in (gui_b): excise std_string option.
5951 (gui_b): excise std_vector option.
5953 * flower/string.cc (Module): excise flower array & string
5955 * flower/include/std-string.hh: excise flower string.
5957 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5959 * python/convertrules.py (lilypond_version_re_str): require
5960 only numbers and dots in \version string.
5962 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5964 * lily/system-start-delimiter.cc (print): allow style = text too.
5966 * lily/system-start-delimiter-engraver.cc
5967 (acknowledge_system_start_text): new function, also add add to
5968 support of system-start-text (instrument names). This fixes
5969 instrument names on piano staves.
5971 * lily/instrument-name-engraver.cc: rewrite. Use
5972 system-start-delimiter approach. This save memory and cpu.
5974 * scm/define-grobs.scm (all-grob-descriptions): remove
5975 instrument-name from break-alignment.
5977 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5979 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5981 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5984 * configure.in (std_vector): On by default.
5986 * lily/include/font-metric.hh:
5987 * lily/include/tfm-reader.hh:
5988 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5991 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5993 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5995 * VERSION (PACKAGE_NAME): 2.7.31
5997 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5998 EPS edge at 0, but take minimum with left-overshoot. This fixes
5999 cut off system start delims.
6001 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6002 hack: add to axis group if not added yet. This fixes hara kiri'd
6005 * lily/hara-kiri-group-spanner.cc
6006 (force_hara_kiri_in_y_parent_callback): fix signatures.
6008 * lily/hairpin.cc (print): check next hairpin to see whether or
6009 not to be continuing.
6011 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6013 * Remove trailing whitespace from makefiles.
6015 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6018 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6020 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6022 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6024 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6026 * configure.in: Use it.
6028 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6030 * scm/music-functions.scm (pitch-of-note): new function.
6032 * ly/music-functions-init.ly: add \octave and \addquote
6034 * lily/parser.yy (music_function_chord_body): softcode \octave.
6035 (lilypond_header): softcode \addquote
6037 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6039 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6040 array.hh, parray.hh at all. Getting ready to flip the
6043 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6045 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6048 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6050 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6052 * flower/include/array.hh: typo.
6054 2006-02-02 Graham Percival <gpermus@gmail.com>
6056 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6058 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6060 * flower/include/pqueue.hh: Derive from std::vector.
6062 * flower/include/parray.hh: Conform to std::vector interface.
6065 2006-02-02 Graham Percival <gpermus@gmail.com>
6067 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6069 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6071 * flower/file-path.cc (is_file): remove if 0 section.
6073 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6074 selecting afii61352.
6076 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6078 * flower/include/std-vector.hh (boundary): Oops, reverse.
6080 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6081 remove superfluous `d'.
6083 * flower/include/std-vector.hh (boundary, top): Detach from class.
6084 Remove empty vector shell.
6086 * flower/include/array.hh (reverse, swap): Detach from class.
6089 * flower/include/std-vector.hh
6090 * flower/include/array.hh (concat): Globally change to insert ().
6092 * flower/include/std-vector.hh
6093 * flower/include/parray.hh
6094 * flower/include/array.hh (elem, elem_ref): Globally replace by
6097 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6099 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6101 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6102 anticipate on identifier substitutions.
6104 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6106 * flower/include/std-vector.hh (insert): Remove, replace by
6107 std::vector interface. Update callers.
6109 * flower/include/array.icc (insert): Change signature to
6110 match std::vector interface.
6112 * flower/include/array.icc (vector_sort): Bugfix.
6114 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6116 * lily/parser.yy (output_def_head_with_mode_switch): new
6117 production. Result: dashes and underscores may be used in the
6120 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6122 * python/convertrules.py (conv): oops. One slash too much.
6124 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6126 * flower/include/std-vector.hh (sort): Remove, replace by
6127 ::vector_sort. Update callers.
6129 * flower/include/std-vector.hh (slice): Remove. Update callers.
6132 * flower/test-std.cc (vector_sort): New test.
6134 2006-02-01 Graham Percival <gpermus@gmail.com>
6136 * Documentation/user/putting.itely: fixes from Erik.
6138 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6140 * flower/test-std.cc: Add simple unit test for vector migration.
6142 * stepmake/stepmake/test*: Unit test support.
6144 * flower/include/std-vector.hh (del): Remove. Use erase (),
6147 * flower/include/array.hh (begin, end): Add.
6150 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6152 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6153 std::string not String.
6155 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6158 * lily/prob.cc (Prob): copy type_ too.
6160 * lily/lily-guile.cc (mangle_cxx_identifier): new
6161 function. Class_bla::foo_bar_[px] ->
6162 ly:class-bla::foo-bar[?!]. Changes throughout
6164 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6166 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6168 * lily/beam.cc (calc_direction): take dir from visible stem in
6171 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6173 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6174 Fix -1, >=0 boundary checks for unsigned vsize.
6176 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6177 loop for unsigned vsize.
6179 * configure.in (--enable-std-vector): New option.
6180 (--enable-std-string): On by default.
6182 * flower/include/std-vector.hh: New file. Enable switch to
6183 std::vector, update client code.
6185 2006-01-30 Graham Percival <gpermus@gmail.com>
6187 * scm/document-translation.scm: clarify "this context is also
6188 known as". Thanks, Werner!
6190 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6192 * Documentation/user/invoking.itely: small fix from Don.
6194 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6196 * scm/lily.scm (define-scheme-options): rename option
6197 preview-include-book-title to book-title-preview
6198 (define-scheme-options): move force-eps-font-include (from paper
6199 block) to eps-font-include -d option.
6201 * VERSION (PATCH_LEVEL): release 2.7.30
6203 * input/bach-schenker.ly (staffPiano): new file.
6205 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6207 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6210 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6212 * ps/lilyponddefs.ps: remove start-system, stop-system,
6213 start-page fluff. This saves putting { } code on the stack, fixing
6214 stack overflows when including EPS files.
6216 2006-01-29 Graham Percival <gpermus@gmail.com>
6218 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6220 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6222 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6224 2006-01-28 Graham Percival <gpermus@gmail.com>
6226 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6228 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6230 * input/mutopia/claop.py: Update.
6232 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6234 * input/regression/completion-heads.ly (texidoc): fix.
6236 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6238 * lily/tie-formatting-problem.cc
6239 (set_ties_config_standard_directions): use abs iso fabs for ints.
6241 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6243 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6244 little less than noteheight, to prevent overlaps in chords.
6246 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6247 head, and fudge stem-attachment.
6249 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6251 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6253 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6255 * lily/main.cc (main): Debugging aid: catch exceptions.
6257 * flower/std-string.cc (to_string): Robustification. Fixes midi
6258 output with std::string.
6260 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6262 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6264 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6266 * Fix -DSTRING_UTILS_INLINED.
6268 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6270 * VERSION (PATCH_LEVEL): release 2.7.29
6272 * lily/relocate.cc (setup_paths): mingw uses std string too.
6274 * lily/*.cc: various fixes for substr(ARG).
6276 * lily/sustain-pedal.cc (print):
6278 * flower/file-name.cc (slashify): use std strings.
6280 * flower/string-convert.cc: remove publib.h
6282 * scm/define-markup-commands.scm (verbatim-file): new markup
6283 command \verbatim-file
6285 * Documentation/topdocs/NEWS.tely: fixup URLs
6287 * input/regression/alignment-vertical-manual-setting.ly (Module):
6290 * lily/align-interface.cc (align_elements_to_extents): overwrite
6291 translations with numbers in alignment-offsets from left bound
6293 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6294 (page-translate-systems): new function: take into account Y-offset.
6296 * Documentation/topdocs/NEWS.tely (Top): document new features.
6298 * input/regression/page-layout-manual-position.ly (Module): new
6301 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6303 * flower/file-path.cc (path::parse_path): Oops.
6305 * Finish std::string interface. For now, use std:: marker
6306 throughout for easy s/r.
6308 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6310 * Documentation/user/putting.itely (Score is a single musical
6312 (Score is a single musical expression): more typos.
6314 * scm/page.scm (annotate-space-left): thinko.
6315 (annotate-page): more thinkos.
6317 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6319 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6320 for different \score blocks separately.
6321 (post-process-pages): put write-page-layout into paper block.
6323 * lily/output-def.cc (get_parser): new file.
6325 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6328 * lily/include/output-def.hh (class Output_def): add parser_ member.
6330 * input/regression/page-layout-twopass.ly (Module): new file.
6332 * scm/lily.scm: remove cpp hack.
6334 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6336 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6338 * GNUmakefile.in (c-clean): New target.
6340 * flower/include/std-string.hh: String/std::string compatibility:
6341 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6344 * flower/rational.cc:
6345 * flower/include/rational.hh:
6348 * flower/include/offset.hh:
6350 * flower/interval.cc:
6351 * flower/include/interval.hh:
6353 * flower/string-convert.cc:
6354 * flower/include/string-convert.hh: Use std::string [interface].
6357 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6359 * Documentation/index.html.in: clean up.
6361 2006-01-25 Graham Percival <gpermus@gmail.com>
6363 * Documentation/user/putting.itely: another new untested doc section.
6365 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6367 * scm/layout-page-layout.scm (write-page-breaks): write
6368 \spacingTweaks #ALIST. Handle grace timing.
6370 * scm/: more imports.
6372 * scm/page.scm (make-page): add footer/header.
6373 (annotate-space-left): revise: only take page argument.
6374 (layout->page-init): new function.
6376 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6377 version of the system/spacing/linebreak hack writing to the output
6379 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6382 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6385 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6387 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6389 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6391 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6392 handling to page.scm
6394 * lily/prob-scheme.cc (LY_DEFINE): new file.
6395 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6397 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6400 * lily/music.cc (derived_mark): derive Music from Prob.
6402 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6404 * lily/prob.cc (Module): Implement Prob (Property Object), object
6405 with shared and r/w property alists.
6407 * lily/include/prob.hh (Module): new file. Declare Prob.
6409 * flower/string.cc: remove is_empty().
6411 * flower/include/string.hh (class String): remove String:: qualifier.
6413 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6414 substitute appropriate functions.
6416 * flower/include/string.hh (class String): remove to_str0 and
6417 is_empty(). S&R everywhere.
6419 2006-01-23 Graham Percival <gpermus@gmail.com>
6421 * Documentation/user/basic-notation.itely: add hairpin
6422 after-linebreak tweak to commonprop.
6424 * Documentation/user/putting.itely: added two new sections.
6426 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6428 * flower/international.cc:
6429 * flower/include/international.hh:
6431 * flower/getopt-long.cc:
6432 * flower/include/getopt-long.hh: Use std::string [interface].
6435 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6437 * stepmake/stepmake/executable-rules.make: Add dependency on
6440 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6442 * flower/file-path.cc:
6443 * flower/include/file-path.hh: Use std::string [interface].
6446 * flower/direction.cc:
6447 * flower/axis.cc: Unused. Remove.
6449 * configure.in (--enable-std-string): New option.
6451 * flower/std-string.cc:
6452 * flower/include/std-string.hh: New file.
6454 * flower/file-name.cc[STD_STRING]:
6455 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6457 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6459 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6461 * scm/define-markup-commands.scm (with-dimensions):
6462 with-dimensions markup command.
6464 * input/test/font-table.ly: use it.
6466 * lily/open-type-font.cc (glyph_list): new function.
6468 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6470 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6472 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6474 * ly/music-functions-init.ly (parallelMusic): new music function
6475 for parallel music entry.
6477 * scm/define-music-properties.scm (all-music-properties): new
6478 'void music property
6480 * scm/music-functions.scm (ly:music-message): make public, to be
6481 used in music function definitions
6483 * scm/lily-library.scm (collect-music-for-book): discard music
6484 when the 'void property is set.
6486 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6488 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6490 * mf/GNUmakefile: idem.
6492 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6494 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6496 * Documentation/user/notation-appendices.itely (The Feta font):
6499 * input/test/font-table.ly: new file. Generate font table within lily.
6501 * Documentation/user/notation-appendices.itely (The Feta font):
6502 use new font-table.ly file.
6504 * stepmake/stepmake/install-out-targets.make
6505 (local-install-outfiles): only create directory if
6506 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6508 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6510 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6512 * VERSION (PACKAGE_NAME): release 2.7.28
6514 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6515 the right font from a Mac dfont.
6516 (write-preamble): don't forget directory, only look at files.
6518 This fixes problems with TTF files in dfonts that don't match
6519 their PostScript names.
6521 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6522 PS name from TTF font.
6524 * input/regression/tie-manual.ly: document new feature.
6526 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6528 * VERSION (MY_PATCH_LEVEL): bump to .28
6530 * Documentation/user/basic-notation.itely (Ties): add tie examples
6533 * lily/tie-formatting-problem.cc (score_ties_configuration):
6534 symmetry penalties for outer ties.
6536 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6538 * lily/tie-formatting-problem.cc (generate_configuration)
6539 (set_manual_tie_configuration): skip non-pair manual
6540 tie-configuration, so you can set individual ties as
6542 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6544 * input/regression/tie-chord.ly: use generateTiePattern to
6547 * lily/tie-formatting-problem.cc (peak_around): new function.
6548 (score_configuration): use sliding criterion for staff line collisions.
6549 (score_configuration): idem for dot collisions.
6550 (generate_configuration): use separate stem_gap for gap to stem.
6552 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6553 separate penalty factors for x and y distance.
6554 (struct Tie_details): separate penalties for tip and center line collisions.
6556 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6558 * lily/tie-formatting-problem.cc (generate_configuration): make
6559 large ties avoid stafflines in the horizontal section.
6560 (score_configuration): use softcoded penalties
6561 (score_aptitude): idem.
6563 * lily/tie-helper.cc (from_grob): softcode tie details
6565 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6567 * lily/staff-symbol-referencer.cc (on_line): rename from
6570 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6572 * ly/music-functions-init.ly: remove duplicate tag.
6574 * lily/include/*.hh: GCC 4.1 fixes.
6576 006-01-16 Erlend Aasland <erlenda@gmail.com>
6578 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6580 * scm/define-music-types.scm: fix bug in desc. string
6581 for OverrideProperty
6583 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6585 * scripts/lilypond-book.py: bugfix
6587 * scm/define-music-types.scm: fix typos.
6589 2006-01-14 Graham Percival <gpermus@gmail.com>
6591 * Documentation/user/ basic-notation.itely, global.itely,
6592 advanced-notation.itely, instrument-notation.itely: small
6593 additions (bugs and commonly tweaked properties).
6595 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6597 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6598 detection of mingw build.
6599 (MINGW_BUILD): opps.
6601 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6603 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6606 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6608 * scm/music-functions.scm (skip->rest): add skip->rest
6610 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6612 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6615 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6616 config dirs. Aids debugging.
6617 (display_config): also display config files.
6619 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6621 * VERSION: release 2.7.27
6623 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6624 for determining bar size.
6626 * lily/staff-symbol.cc (print): place lines at distance line-positions
6628 * scm/define-grob-properties.scm (all-user-grob-properties): add
6631 * lily/staff-symbol.cc (height): new function.
6633 * input/regression/staff-line-positions.ly: new file.
6635 2006-01-06 Graham Percival <gpermus@gmail.com>
6637 * input/test/add-staccato.ly: remove reference to old file.
6639 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6641 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6642 lilypond binary too.
6644 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6646 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6648 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6650 * scripts/midi2ly.py: Bugfix: Declare datadir.
6652 * make/ly-rules.make:
6653 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6654 that seems to be gone). Fixes make web.
6656 * The grand 2005-2006 replace.
6658 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6660 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6662 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6663 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6664 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6665 like -dgs-font-load.
6667 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6668 remove absolute path to lilypond binary.
6670 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6672 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6674 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6676 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6678 * mf/GNUmakefile: remove broken dvips map symlink.
6680 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6683 * configure.in: Cosmetic fixes.
6685 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6687 * Documentation/user/music-glossary.tely (Pitch names): Added
6688 Spanish pitch names and durations, thanks to Ernesto Gancedo
6690 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6692 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6693 init. Fixes verbose printing of .scm files.
6695 * stepmake/aclocal.m4: add spaces before - options.
6697 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6699 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6700 of path search in local block variable.
6702 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6704 * configure.in (NCSB_DIR): --enable-ncsb-dir
6705 (LINK_GXX_STATICALLY): denko.
6707 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6709 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6710 use locate to find c059033l.pfb.
6712 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6714 * lily/tie-formatting-problem.cc
6715 (problem::generate_base_chord_configuration): Use my_round (was
6718 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6719 do not invoke mbrtowc.
6721 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6723 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6725 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6727 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6729 * Documentation/user/invoking.itely (svg): revise.
6731 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6733 * lily/lexer.ll: use sourcefilename iso. renameinput.
6735 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6737 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6738 <PostScriptName>.ttf instead of c059XXXttf.
6740 * lily/program-option.cc (LY_DEFINE): special support for
6741 --verbose, so it works before option init too.
6743 * mf/GNUmakefile (local-install): oops.
6745 * lily/lyric-hyphen.cc (print): oops.
6747 * buildscripts/pfx2ttf.fontforge: new file.
6749 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6750 ($(outdir)/%.ttf): new rule.
6752 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6755 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6758 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6760 * VERSION: release 2.7.26
6762 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6764 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6766 * lily/font-config.cc (init_fontconfig): verbosity.
6768 * THANKS: add Muziekacademie Lede.
6770 * scripts/musicxml2ly.py (print_voice_definitions): new function
6771 (print_score_setup): new function
6772 (convert): read part definition to output staves properly.
6774 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6777 * python/musicexp.py (Output_printer.__init__): use _ in data
6779 (Output_printer.unformatted_output): new function: no formatting,
6781 (Duration.get_length): remove isinstance() checks for
6782 Output_printer everywhere.
6784 * input/regression/lyrics-bar.ly (texidoc): add
6785 Separating_line_group_engraver.
6787 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6789 * lily/relocate.cc (framework_relocation): New function,
6790 factored from set_relocation ().
6791 (prefix_relocation): Rename from set_relocation ().
6792 (setup_paths): Use it.
6794 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6796 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6797 numbers. Patch by Erlend Aasland.
6799 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6801 * lily/font-config.cc (init_fontconfig): print warning if cache
6802 file is not existant.
6804 * lily/main.cc: don't use #ifdef but #if
6806 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6808 * lily/grob-property.cc (internal_set_property): don't abort on
6809 calculation-in-progress.
6811 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6813 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6814 connect-to-neighbor property not connect-to-other
6816 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6817 (LY_DEFINE): oops. don't forget protection.
6819 * flower/parse-afm.cc (Module): strip AFM handling completely.
6821 * lily/stencil-expression.cc: idem.
6823 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6825 * lily/function-documentation.cc (ly_add_function_documentation):
6826 use static member iso. Protected_scm
6828 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6830 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6832 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6834 * lily/relocate.cc (set_env_dir): New function.
6835 (set_relocation): Use it to fix setting PANGO_PREFIX.
6837 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6839 * input/regression/stem-direction-context.ly: remove rest.
6841 * lily/melody-engraver.cc (process_music): restart for bar lines.
6842 (acknowledge_slur): restart for slurs.
6844 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6846 * Documentation/user/invoking.itely: describe how to view SVG
6847 output using Inkscape which replace embedded fonts with OTF fonts.
6849 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6851 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6853 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6855 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6858 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6860 * VERSION (PACKAGE_NAME): release 2.7.25
6862 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6864 * input/regression/stem-direction-context.ly: new file.
6866 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6868 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6871 * ly/engraver-init.ly: add Melody_engraver
6873 * lily/beam.cc (calc_direction): use default-direction
6874 iso. get_default_direction()
6876 * scm/define-grob-properties.scm (all-user-grob-properties): add
6877 default-direction property.
6879 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6881 * lily/stem.cc (calc_default_direction): remove
6882 Stem::get_default_direction, use default-direction with callback
6885 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6887 * lily/melody-engraver.cc: new file. Acknowledge stems for
6888 interpolated stem directions.
6890 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6892 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6894 * lily/slur-configuration.cc (fit_factor): more robust check for
6895 point in curve X-extent.
6897 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6898 (outside_slur_callback): check for 'outside avoidance.
6900 * lily/slur-configuration.cc (score_extra_encompass): don't use
6901 bound->column() == avoid->column() for checking extents, as this
6902 doesn't work for accidentals.
6904 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6905 DynamicText hardcoding.
6907 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6908 crash if bound stem is NULL
6910 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6913 2005-12-22 Graham Percival <gpermus@gmail.com>
6915 * scm/define-markup-commands.scm: typo. @code{\raise}
6918 * darwin.patch: now used again, includes a
6919 required patch from fink.
6921 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6923 * po/TODO: mention gtranslator along with kbabel.
6924 * po/fi.po: update translations.
6926 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6928 * lily/relocate.cc (setup_paths): Bugfix.
6930 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6932 * lily/slur-configuration.cc (score_extra_encompass): don't use
6933 "avoid" choice for avoid-slur.
6935 * stepmake/bin/install.py (dest): don't create existing dir.
6937 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6939 * stepmake/bin/install.py: Remove file before copying.
6942 * stepmake/aclocal.m4: Do not substitute INSTALL.
6944 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6946 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6947 depend on link-tree.
6949 * lily/relocate.cc (setup_paths): only check path for non-absolute
6950 dir without directory part.
6952 * flower/file-name.cc (is_absolute): new method.
6953 (is_absolute): check root_ too.
6955 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6957 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6958 relocation code. Oops, don't comment out too much.
6960 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6963 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6966 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6968 * .cvsignore: Add install-sh.
6970 * autogen.sh (srcdir): Typo.
6972 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6974 * autogen.sh (srcdir): urg. Touch install-sh.
6976 * stepmake/bin/install-sh (Module): remove.
6978 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6980 * lily/include/relocate.hh: new file.
6982 * lily/relocate.cc: new file. Contain relocation logic.
6984 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6985 (main): read LILYPOND_VERBOSE as the first thing.
6987 * stepmake/aclocal.m4: remove INSTALL variable.
6989 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6990 separate target for making font symlinks.
6991 (documentation-dir): use $(if $(findstring )) for switching off
6994 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6995 something if DOCUMENTATION is no.
6997 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6999 * VERSION: release 2.7.24
7001 * lily/script-column-engraver.cc (stop_translation_timestep):
7002 delay adding to script-column.
7004 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7006 * python/convertrules.py (conv): rule for number-visibility
7008 * lily/slur-configuration.cc (score_extra_encompass): different
7009 distance measure for avoid and inside avoidance.
7010 (score_extra_encompass): use 1/(distance+eps) as penalty.
7012 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7013 encompass objects for generating slur curves.
7015 * lily/slur.cc: use details iso. slur-details property.
7017 * input/regression/slur-tuplet.ly: new file.
7019 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7021 * flower/include/offset.hh (class Offset): new operator /=
7023 * lily/tuplet-number.cc (print): new file, new interface.
7025 * scm/define-grob-properties.scm (all-user-grob-properties):
7026 remove number-visibility property.
7028 * lily/tuplet-bracket.cc (calc_control_points): new function
7029 (calc_connect_to_neighbors): new function.
7030 (print): remove text handling for tuplet numberdef.
7032 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7035 * lily/lily-guile.cc (robust_scm2booldrul): new function
7037 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7039 * lily/tuplet-bracket.cc (calc_position_and_height): use
7040 staff-padding to control whether tuplet brackets are over staves.
7042 * lily/grob.cc (suicide): clear dim_caches_.
7044 * lily/dimension-cache.cc (clear): new function.
7046 * lily/grob.cc (extent): swap order of min-extent and extent
7047 calculations. This fixes hara kiri staves.
7049 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7051 * lily/main.cc: Nitpick: relocation is not based on path, but on
7052 directory (location).
7054 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7056 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7058 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7060 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7062 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7064 * stepmake/stepmake/generic-vars.make (Module): idem.
7066 * stepmake/stepmake/executable-targets.make (default): use it.
7068 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7070 * make/GNUmakefile: don't install make rules.
7072 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7074 (prepend_env_path): more verbosity.
7076 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7078 * GNUmakefile.in: add dir argument for find command.
7080 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7081 fixes weird line numbers for point & click.
7083 * lily/source-file.cc (get_counts): init line/column/char counts.
7085 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7087 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7089 2005-12-16 Graham Percival <gpermus@gmail.com>
7091 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7092 minor fixes from Fredric. Thanks!
7094 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7096 * ly/music-functions-init.ly: add \bar and \clef music function
7098 * lily/lily-lexer.cc: idem.
7100 * lily/parser.yy (FIXME): remove BAR and CLEF.
7102 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7104 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7106 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7107 function arguments too
7109 * lily/main.cc (set_relocation): new function.
7111 * scripts/musicxml2ly.py (convert): add \version
7113 * lily/tie.cc: remove get_default_attachments()
7115 * VERSION (PACKAGE_NAME): release 2.7.23
7117 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7118 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7120 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7122 * lily/tie-formatting-problem.cc (score_ties): new function
7123 (get_variations): new function. Try flipping dirs for collisions.
7124 (generate_optimal_chord_configuration): new function. 1-opt search
7125 for better configuration.
7127 * lily/tie-configuration.cc: new file.
7129 * lily/tie.cc: junk Tie::get_configuration()
7131 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7132 (score_ties_configuration): new function.
7133 (generate_ties_configuration): new function.
7134 (generate_base_chord_configuration): new function.
7135 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7136 (set_manual_tie_configuration): Move body from tie-column-format.cc
7138 * input/regression/tie-dot.ly: new file.
7140 * lily/tie-formatting-problem.cc (score_configuration): score
7143 * lily/tie-helper.cc (get_transformed_bezier): new function
7145 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7147 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7148 -undefined suppress iso. -framework Python
7150 * scm/define-grobs.scm (all-grob-descriptions): set
7151 springs-and-rods (thanks Joe Neeman!)
7153 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7155 * input/no-notation/display-lily-tests.ly (test):
7156 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7157 changed from \tag #'(a b) to \tag #'a \tag #'b
7159 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7161 * Documentation/topdocs/NEWS.tely: strip out-www.
7163 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7165 * config.make.in (AR): add AR and RANLIB
7167 * flower/libc-extension.cc: include cassert
7169 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7172 2005-12-11 Graham Percival <gpermus@gmail.com>
7174 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7176 * stepmake/stepmake/python-modules-vars.make: define
7177 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7179 * THANKS: added Johannes Schindelin.
7181 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7183 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7185 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7186 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7188 * lily/parser.yy: reorganize file layout.
7190 * ly/music-functions-init.ly: add tweak music function.
7192 * lily/grob-info.cc (ultimate_music_cause): new function:
7193 recursively lookup causes.
7195 * lily/parser.yy (chord_body_element): allow music functions for
7196 post-events, allow music functions for chord elements.
7198 * lily/font-config-scheme.cc (display_fontset): add cast.
7200 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7201 #'(a b) -> \tag #'a \tag #'b rule.
7203 * python/musicexp.py (Output_printer.dump_version): new function
7205 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7207 * lily/parser.yy (FIXME): remove \tag
7208 (FIXME): remove tag_music() function.
7210 * lily/lily-lexer.cc: remove \tag
7212 * ly/music-functions-init.ly: define music-function "tag"
7214 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7216 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7218 * VERSION (PATCH_LEVEL): release 2.7.22
7220 * input/regression/lyric-hyphen-retain.ly: renew.
7222 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7225 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7226 iso. minimum-length property for rods.
7228 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7229 LyricSpace item to keep lyrics spaced apart.
7231 * ly/engraver-init.ly: remove Separating_line_group_engraver
7233 * Documentation/user/music-glossary.tely: do setfilename before
7236 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7238 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7239 See xref documentation, for example.
7241 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7243 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7244 pending_skip iso. ly_voice[-1]
7245 (main): add if __main__ for debugging.
7247 * python/musicxml.py (Accidental.__init__): new class.
7249 * scripts/musicxml2ly.py (progress): new function
7250 (musicxml_key_to_lily): don't barf on modeless keys.
7251 (create_skip_music): new function.
7252 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7253 (musicxml_note_to_lily_main_event): new function.
7255 * python/musicexp.py (Music.__init__): add comment field.
7256 (NestedMusic.append): new routine.
7257 (SequentialMusic.print_ly): print comment.
7258 (ArpeggioEvent.ly_expression): new class
7259 (BeamEvent.ly_expression): new class
7260 (NoteEvent.__init__): support for cautionary/forced accs.
7262 * lily/lookup.cc (slur): normal order for array loop.
7264 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7267 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7270 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7272 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7274 * scripts/lilypond-book.py: Introduce option
7275 --preserve-line-breaks, for usage with srcltx
7277 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7279 * scm/output-lib.scm (print-circled-text-callback): draw circle
7280 around text using make-circle-markup.
7282 * Documentation/user/*: strip out-www from file names.
7284 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7286 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7287 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7289 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7291 * Documentation/user/GNUmakefile: idem.
7293 * Documentation/user/macros.itexi: strip out-www
7295 * python/rational.py: python 2.3 compat.
7297 * VERSION (PATCH_LEVEL): release 2.7.21
7299 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7300 option formatting, lilypond style.
7302 * python/musicexp.py: grab from Ikebana: a library for composing
7303 ly music expressions.
7304 (Output_printer): class for advanced .ly printing.
7307 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7308 convert to pythonesque structure.
7310 * python/rational.py: PD rational number class.
7312 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7314 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7316 * lily/part-combine-iterator.cc: Minor bugfix
7318 * THANKS: Update bughunters
7320 2005-12-02 Werner Lemberg <wl@gnu.org>
7322 * mf/README: Document process for proper mf2pt1 conversion.
7324 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7327 * mf/feta-harmonica.mf: Removed. Unused.
7329 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7331 * scripts/lilypond-book.py (do_file): fix thinkos.
7333 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7335 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7336 ($(outdir)/parser.cc):
7337 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7339 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7341 * ly/titling-init.ly (tagline): it should be a space between
7342 "Music engraving by LilyPond" and the version number.
7344 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7346 * VERSION (PACKAGE_NAME): release 2.7.20
7348 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7350 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7352 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7354 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7356 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7358 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7360 * kpath-guile/: remove directory
7362 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7363 file. Encapsulate kpathsea using commandline tools.
7365 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7368 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7370 * Documentation/user/advanced-notation.itely (Setting automatic
7371 beam behavior): Correct a few typos. Thanks to David Bobroff.
7373 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7374 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7376 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7378 * scripts/*.py: gmane address for bugs.
7380 2005-11-28 Pal Benko <benkop@freestart.hu>
7382 * make/ly-rules.make: add -f switch to mv
7384 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7386 * lily/bar-line.cc: interpret it
7388 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7390 * configure.in (--disable-documentation): New switch.
7392 * GNUmakefile.in: Use it.
7394 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7396 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7398 * scripts/lilypond-book.py (do_file): search chunks for
7401 * GNUmakefile.in: add copy step in between so we can lose the
7402 out-www directories.
7404 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7406 * lily/pango-font.cc (pango_item_string_stencil): put
7407 geometry.width into glyph-string too.
7409 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7411 * scm/define-music-display-methods.scm (RevertProperty):
7412 (OverrideProperty): Use grob-property-path property, a list of
7413 symbols, instead of grob-property, which used to be a single
7415 (BassFigureEvent): a figure can be a plain number, not necessarily a
7418 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7420 * VERSION: release 2.7.19
7422 * lily/figured-bass-engraver.cc (process_music): check
7423 figuredBassCenterContinuations first.
7425 * scm/translation-functions.scm (format-bass-figure): make double
7428 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7431 * lily/system-start-delimiter-engraver.cc: move from
7432 Nested_system_start_delimiter_engraver, rename
7433 Nested_system_start_delimiter_engraver ->
7434 System_start_delimiter_engraver.
7436 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7437 bracket type from hierarchy.
7439 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7441 * lily/rest.cc (y_offset_callback): read staff-position.
7443 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7444 mark after-line-breaking-callback as internal.
7446 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7448 2005-11-25 Werner Lemberg <wl@gnu.org>
7450 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7452 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7454 * stepmake/bin/add-html-footer.py (do_file): add google
7456 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7457 staff if first_start_ is true.
7459 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7461 * scripts/midi2ly.py (split_track): add __repr__ members.
7462 (track_first_item): only return Item if not None. This fixes a
7463 problem when dumping a track that starts with an empty channel.
7465 * python/midi.c: doc module.
7467 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7469 * Documentation/user/global.itely (Creating MIDI files): Fix
7470 compilation problem.
7472 2005-11-22 Graham Percival <gpermus@gmail.com>
7474 * Documentation/user/basic-notation.itely: clarify dynamic
7477 * Documentation/user/advanced-notation.itely: add unicode
7478 escape control example, whatever that is. :)
7480 * Documentation/user/global.itely: added "removing dynamics
7483 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7485 * VERSION (PATCH_LEVEL): release 2.7.18
7487 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7488 System_start_delimiter_engraver by
7489 Nested_system_start_delimiter_engraver.
7491 * lily/nested-system-start-delimiter-engraver.cc (struct
7492 Bracket_nesting_node): new class.
7493 (struct Bracket_nesting_group): new class
7494 (struct Bracket_nesting_staff): new class.
7495 (process_music): create hierarchy of grobs. This allows separate
7496 tuning of different SSDs.
7498 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7499 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7501 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7503 * lily/side-position-interface.cc (aligned_side): multiply
7506 * lily/script-engraver.cc (make_script_from_event): allow setting
7509 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7511 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7513 * scm/define-grobs.scm (all-grob-descriptions): new grob
7514 NestedSystemStartDelimiter.
7516 * input/regression/system-start-heavy-bar.ly: new file.
7518 * lily/nested-system-start-delimiter-engraver.cc: new file.
7520 * lily/nested-system-start-delimiter.cc: new file.
7522 * input/regression/system-start-nesting.ly: new file.
7524 * scm/define-grobs.scm (all-grob-descriptions): use X side
7525 positioning for positioning braces for nested contexts.
7527 * lily/system-start-delimiter.cc (print): don't divide extent by
7529 (print): use style iso. glyph.
7530 (staff_bracket): translate glyph inside routine already.
7532 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7534 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7537 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7539 * scm/define-context-properties.scm
7540 (all-user-translation-properties): rename figuredBassFormatter
7541 from newFiguredBassFormatter.
7543 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7545 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7547 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7549 * lily/beam.cc (calc_beaming): new function.
7550 (calc_shorten): new function.
7552 * THANKS: add Edward Neeman.
7554 * input/regression/accidental-clef-change.ly: new file.
7556 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7558 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7560 * lily/clef-engraver.cc (inspect_clef_properties): reset
7561 localKeySignature for clef changes.
7563 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7565 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7566 add dummy definition that works in Linux and add information in
7567 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7569 * Documentation/user/changing-defaults.itely (Modifying context
7570 plug-ins): Add index for \with.
7572 * Documentation/user/music-glossary.tely (dal segno): Updated
7573 example to version >=2.6.
7575 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7577 * Documentation/user/instrument-notation.itely (Printing chord
7578 names): Reorder \chordmode and \repeat in one example.
7580 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * VERSION: release 2.7.17
7584 * Documentation/topdocs/NEWS.tely (Top): add note about
7587 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7588 new function. Search region of 3 positions for best tie.
7589 (score_configuration): new function.
7590 (score_aptitude): new function.
7591 (generate_configuration): new function.
7592 (get_configuration): new function.
7593 (Tie_formatting_problem): new function
7595 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7597 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7599 * THANKS: add Eduardo Vieira & Ralph Little
7601 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7604 * lily/include/tie-formatting-problem.hh (class
7605 Tie_formatting_problem): add Tie_details to
7606 Tie_formatting_problem. Update calling conventions.
7608 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7611 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7613 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7615 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7616 scm/define-context-properties.scm: Maintenance bugfix: make
7617 ligature brackets work again by removing obsolete ligature
7618 primitive callback push/pop.
7620 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7621 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7624 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7626 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7627 used and do not call it a path.
7628 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7630 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7632 * lily/include/tie-formatting-problem.hh (class
7633 Tie_formatting_problem): new file.
7635 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7637 * Documentation/misc/ChangeLog-2.3: new file.
7639 * lily/audio-staff.cc (output): degarianize.
7641 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7643 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7644 Unset PYTHONOPTIMIZE. Fixes install if set.
7646 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7648 * python/convertrules.py (conv): add warning about drums.
7650 * make/stepmake.make: include toplevel-version.make after config.make.
7652 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7653 also allow python2.4
7655 * config.make.in (configure-srcdir): remove GXX GCC vars.
7657 * stepmake/aclocal.m4: don't do non-srcdir build with
7658 symlinks. Use inclusion, so the src directory name can be changed.
7660 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7662 * make/mutopia-vars.make:
7663 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7666 2005-11-13 Werner Lemberg <wl@gnu.org>
7668 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7669 but the affected path. This ensures that the (overlapping) outlines
7670 have the same direction, which is a necessary prerequisite for
7671 FontForge's algorithm to remove overlaps.
7674 * mf/feta-haak.mf: Formatting.
7675 (draw_bracket): Slightly modify outline to avoid an unnecessary
7677 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7678 them from the affected paths.
7680 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7682 * mf/README: remove xpm / accordion notes.
7684 * lily/tie-column-format.cc (set_chord_outline): add dots into
7685 skyline extents. This fixes tie formatting if the left head has dots.
7687 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7688 space inside the staff.
7689 (get_configuration): shift another position if necessary in case
7692 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7694 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7695 buildscript-dir iso. $(depth)/buildscripts.
7697 * tex/GNUmakefile (local-uninstall): remove
7698 music-drawing-routines.ps juggling.
7700 * stepmake/stepmake/install-targets.make (local-install-files):
7701 prepend src-dir to install targets.
7703 * lily/system-start-delimiter-engraver.cc
7704 (acknowledge_system_start_delimiter): use
7705 add_offset_callback(). This fixes translation of nested
7708 * lily/grob-closure.cc (add_offset_callback): only encaps in
7709 simple_closure if it's a procedure.
7711 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7714 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7715 remove-empty where pertinent.
7717 2005-11-12 Graham Percival <gpermus@gmail.com>
7719 * Documentation/user/instrument-notation.itely: added
7720 Cameron Horsburgh's multiple stanzas docs. Thanks!
7722 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7725 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7726 make picture in builddir, not srcdir.
7728 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7730 * VERSION: release 2.7.16
7732 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7735 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7737 * Documentation/user/examples.itely (Piano templates): Minor
7738 modification to the Piano centered lyrics example.
7740 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7742 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7745 * Documentation/user/point-and-click.itely: simplify p&c
7746 instruction: don't configure firefox. Put lilypond-invoke-editor
7747 in front of the browser.
7749 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7750 (run-browser): new function.
7752 * lily/parser.yy (Lily_lexer): recognize Book
7754 * lily/book.cc (clone): new function
7756 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7758 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7760 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7761 Maintenance bugfix: reduce number of font related warnings by
7762 updating naming conventions for glyph-name.
7764 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7766 * scm/define-grobs.scm (all-grob-descriptions): add
7767 rhythmic-grob-interface to TabNoteHead.
7769 * scm/layout-beam.scm (check-quant-callbacks): remove
7772 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7774 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7775 alignment of centered divisiones.
7777 * scm/scripts.scm (articulations): Maintenance bugfix:
7778 follow-into-staff -> quantize-position.
7780 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7781 plica head in porrectus deminutus.
7783 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7785 * make/lilypond.fedora.spec.in (Group): add %clean section.
7787 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7788 less then 1/5th of total length.
7789 (print): use gap too. Fixes tupletUp-single-bracket.ly
7791 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7792 events into EventChord. This fixes textspanners on mm rests. Fixes
7795 * lily/side-position-interface.cc (get_axis): read side-axis
7796 (set_axis): set side-axis.
7798 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7799 properties everywhere.
7801 * lily/spacing-spanner.cc (breakable_column_spacing): add
7802 average-spacing-wishes. Take maximum if not set.
7803 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7805 * scm/define-grobs.scm (all-grob-descriptions): add
7806 average-spacing-wishes.
7808 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7809 offset callbacks. This fixes alignment for Fingering objects.
7811 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7812 space for key - timesig combination.
7814 * input/regression/script-stem-tremolo.ly (Module): new file.
7816 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7819 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7820 Fixes: c-tremolo-script.ly.
7822 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7824 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7826 * scm/define-grobs.scm (all-grob-descriptions): remove
7827 self-X-offset. Fixes alignment of octavate-8.
7829 * scripts/lilypond-book.py (datadir): look in
7830 LILYPONDPREFIX/share/lilypond/current/
7832 * GNUmakefile.in: symlink current to <VERSION>.
7834 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7836 * lily/main.cc: eps listed as a backend.
7838 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7840 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7842 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7844 * lily/include/score.hh (class Score): remove texts_ member.
7846 * lily/beam.cc (set_stem_lengths): force direction callback.
7847 (print): read quantized-positions, so we can force
7848 Beam::set_stem_lengths to occur.
7849 (rest_collision_callback): use common X parent.
7851 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7853 * flower/file-path.cc (find): Bugfix: Return name of file found.
7855 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7856 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7857 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7859 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7861 * flower/offset.cc: idem.
7863 * mf/*.mf: update email address.
7865 * lily/font-config-scheme.cc: new file.
7867 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7869 * lily/*: cs.uu.nl -> xs4all.nl
7871 * VERSION (PATCH_LEVEL): release 2.7.15
7873 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7876 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7878 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7880 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7882 * lily/staff-performer.cc (process_music): add audio
7883 elements. This makes MIDI instrument changes work once again.
7885 * lily/main.cc (LY_DEFINE): add gmane address.
7887 * lily/beam.cc: remove calc_positions()
7889 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7890 original_ in private scope.
7891 (class Grob): drop pscore_ pointer, change to output_def pointer.
7892 (class Grob): cleanup class definition.
7894 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7896 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7898 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7899 absolute. Better diagnostics.
7901 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7902 This makes lilypond run from the build directory using argv0
7903 relocation (without any --prefix or LILYPONDPREFIX setting).
7905 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7907 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7909 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7910 with simple-closure.
7912 * lily/self-aligment-interface.cc (set_align_self): new function
7913 (set_center_parent): new function.
7915 * lily/side-position-interface.cc (set_axis): new function.
7917 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7920 * scm/define-grob-properties.scm (all-user-grob-properties):
7921 remove [XY]-offset-callbacks add [YX]-offset
7923 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7925 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7926 entry for time signatures after breathing signs. Bug report by
7929 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7931 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7932 not absolute, make it absolute using PATH.
7934 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7936 * python/midi.c (initmidi): Fix type for mingw.
7938 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7940 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7942 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7945 * stepmake/aclocal.m4: Support python cross compiling.
7947 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7950 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7952 * scm/output-lib.scm (chain-grob-member-functions): replace
7955 * lily/chained-callback.cc (Module): remove file.
7957 * lily/rest-collision.cc (force_shift_callback_rest): change to
7960 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7962 * lily/grob.cc (y_parent_positioning): remove axis argument from
7963 parent_positioning callbacks.
7964 (Grob): junk init code
7965 (get_offset): use generic property callbacks for
7966 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7967 (axis_parent_positioning): new function
7968 (axis_offset_symbol): new function
7969 (chain_offset_callback): new function
7970 (add_offset_callback): new function
7972 * lily/beam.cc (rest_collision_callback): change signature; this
7973 is now a chained callback.
7975 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7976 callback administration.
7978 * lily/simple-closure.cc: new file. Smob type that allows "grob
7981 (ly:make-simple-closure FUNC A B)
7983 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7986 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7989 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7991 * lily/rest.cc (polyphonic_offset_callback): remove.
7993 * lily/script-engraver.cc (try_music): remove bool* argument.
7995 * scm/script.scm (default-script-alist): set quantize-position
7998 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8000 * lily/side-position-interface.cc (aligned_side): move staff
8001 position quantization from
8002 Side_position_interface::quantised_position().
8003 (quantised_position): remove
8005 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8007 * input/regression/beam-quant-standard.ly: reindent, set
8008 debug-beam-quanting to #t.
8010 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8011 10000 if this is a "hard" concave beam.
8013 * lily/beam.cc (calc_least_squares_positions): change from
8014 calc_least_squares_dy
8015 (set_stem_lengths): this is now a chained callback.
8017 * lily/context-property.cc (execute_general_pushpop_property):
8018 bugfix override with procedure should have effect.
8020 * scm/define-grob-properties.scm (all-internal-grob-properties):
8021 remove position-callbacks.
8023 * scm/define-grobs.scm (all-grob-descriptions): use
8024 ly:make-callback-chain for positions property.
8026 * scm/layout-beam.scm (check-quant-callbacks): return list of
8029 * scm/lily.scm (type-p-name-alist): add callback-chain
8031 * lily/lily-guile.cc (type_check_assignment): type check failure
8032 is warning not message.
8034 * lily/grob-property.cc (try_callback): walk callback chain if
8037 * lily/chained-callback.cc: new file. new smob type.
8039 * lily/lily-guile.cc (procedure_arity): new function.
8041 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8043 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8045 2005-10-25 John Mandereau <john.mandereau@free.fr>
8047 * Documentation/user/instrument-notation.itely (Figured bass):
8048 describe new features
8050 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8052 * lily/beam.cc (calc_least_squares_dy): use property callback.
8054 * lily/beam-concave.cc (calc_concaveness): use property callback.
8056 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8058 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8062 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8064 * scm/layout-page-layout.scm (page-headfoot): annotate
8067 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8069 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8070 doesn't take y-space.
8072 * scm/paper.scm (paper-alist): fix A7 dimensions.
8074 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8076 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8077 src-wildcard, remove $(wildcard).
8079 * po/GNUmakefile (PO_FILES):
8080 * ps/GNUmakefile (PS_FILES):
8081 * tex/GNUmakefile (TEX_FILES):
8082 * cygwin/GNUmakefile (POSTINSTALLS):
8083 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8084 some wildcard calls.
8086 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8088 * THANKS: add Thomas Bushnell.
8090 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8092 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8093 (lilypond-main): Redirect to gui-main if 'gui is set.
8095 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8096 for alternative installations kludging s/share/lib/g
8099 * SConstruct (libdir_package_version): Define.
8101 * python/SConscript:
8102 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8105 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8107 * lily/main.cc: clarify --safe.
8109 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8111 * VERSION: release 2.7.14
8113 * Documentation/user/*.itely: remove minimumVerticalExtent.
8115 * scm/define-grobs.scm (all-grob-descriptions): remove
8116 RemoveEmptyVerticalGroup
8118 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8120 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8123 * python/convertrules.py (conv): add rules.
8125 * lily/grob.cc: remove is_empty()
8127 * lily/grob-property.cc: remove add_to_list_property().
8129 * scripts/convert-ly.py (datadir): add prefix switching hack to
8132 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8133 space-function tweak.
8135 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8137 * scm/define-grob-properties.scm (all-user-grob-properties):
8138 remove callback property.
8140 * lily/include/grob.hh (class Grob): remove property_callbacks_
8141 member. Properties of procedure type are assumed to be callbacks.
8143 * lily/ligature-engraver.cc (override_stencil_callback):
8144 rewrite. Use noteHeadLigaturePrimitive as source.
8146 * scm/define-grob-properties.scm (all-internal-grob-properties):
8147 remove ligature-primitive-callback
8149 * lily/include/dimension-cache.hh (class Dimension_cache): make
8150 class, with Grob as friend.
8152 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8153 has_extent_callback()
8155 * scm/translation-functions.scm (format-new-bass-figure): read
8156 figuredBassPlusDirection
8158 * scm/define-context-properties.scm
8159 (all-user-translation-properties): add figuredBassPlusDirection.
8161 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8163 * lily/align-interface.cc (set_ordered): new function.
8165 * lily/grob.cc (flush_extent_cache): rewrite.
8167 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8168 Interval pointer directly.
8170 * lily/main.cc (setup_paths): insert extra / .
8171 (setup_paths): junk cff entry.
8173 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8176 * lily/axis-group-engraver.cc (finalize): remove
8177 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8179 * lily/grob.cc (Grob): don't set extent from ctor.
8180 (extent): use property callbacks.
8182 * lily/axis-group-interface.cc: remove set_axes() function.
8184 * lily/grob-property.cc (del_property): new function.
8186 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8188 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8190 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8192 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8194 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8196 * mf/SConscript: Updates.
8198 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8200 * stepmake/stepmake/*:
8204 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8205 from any directory in build-dir. Cleanups.
8207 * make/srcdir.make.in: Remove.
8209 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8211 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8214 * lily/SConscript: Remove ttftools.
8216 * SConstruct: Resurrect.
8218 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8220 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8223 * lily/paper-book.cc (add_score_title): put Paper_score title into
8226 * scm/translation-functions.scm (format-new-bass-figure): also
8227 allow plus in combination with _
8229 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8231 * VERSION: 2.7.13 released.
8233 * lily/note-collision.cc (check_meshing_chords): don't wipe
8234 stencil, merely set transparent.
8236 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8237 (Top): document #'callbacks.
8238 (Top): document nested \override.
8240 * input/regression/figured-bass.ly: update for slash and pluses.
8242 * input/regression/figured-bass-continuation-forbid.ly (Module):
8245 * scm/translation-functions.scm (format-new-bass-figure): use
8246 slashed-digit if diminished is set.
8247 (format-new-bass-figure): add + if 'augmented is set.
8249 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8251 * input/test/piano-staff-distance.ly: remove file.
8253 * Documentation/user/advanced-notation.itely (Formatting cue
8254 notes): use length-fraction for making stems/beams smaller.
8256 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8259 * lily/new-figured-bass-engraver.cc: new property
8260 centerFiguredBassContinuations
8262 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8265 * lily/context-property.cc (execute_general_pushpop_property):
8268 * input/regression/override-nest.ly: new file.
8270 * python/convertrules.py (FatalConversionError.subber): conversion
8271 rule for #'callbacks
8273 * input/regression/override-nest.ly: new function.
8275 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8278 * lily/context-property.cc (lookup_nested_property): new function.
8279 (evict_from_alist): new function.
8280 (general_pushpop_property): new function.
8281 (execute_general_pushpop_property): rewrite. Support nested
8284 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8286 * lily/beam.cc: use length-fraction too.
8288 * scm/define-grob-properties.scm (all-user-grob-properties):
8289 remove property flag-width-function
8290 (all-user-grob-properties): remove space-function.
8292 * scm/layout-beam.scm: remove flag-width-function.
8294 * lily/beam.cc: remove flag-width-function
8296 * scm/layout-beam.scm: remove beam dir functions.
8298 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8300 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8301 for easier grace tweaks.
8303 * lily/beam.cc: remove dir-function.
8305 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8307 * lily/grob.cc: remove spacing-procedure.
8309 * lily/note-head.cc (calc_stem_attachment): new function.
8310 (internal_print): use callback to get glyph-name.
8312 * lily/grob-property.cc (get_interfaces): new function.
8314 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8316 * lily/stem.cc (calc_stem_end_position): new function.
8317 (calc_length): new function.
8318 document details for stem.
8319 remove Stem::get_direction()
8321 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8323 * lily/grob-property.cc (set_callback): new function.
8325 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8327 * lily/item-scheme.cc: new file.
8329 * lily/bar-line.cc (before_line_breaking): remove function.
8330 remove bar-size-procedure, break-glyph-function
8332 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8334 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8336 * lily/system-start-delimiter.cc (print): suicide from
8337 here. Remove after_line_breaking_callback.
8339 * lily/script-interface.cc (calc_direction): use callback for direction.
8341 * lily/side-position-interface.cc (aligned_side): don't use
8342 Side_position_interface::get_direction directly. Use callback.
8344 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8346 (get_print_stencil): rename from get_stencil: create stencil with
8347 transparency, color and cause.
8349 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8351 * python/convertrules.py (conv): insert temporary warning rule.
8353 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8355 * lily/grob-property.cc (try_callback): remove marker if applicable.
8357 * lily/grob.cc: elucidate doc about after/before-line-breaking
8359 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8361 * lily/stem.cc (height): idem.
8363 * lily/stem-tremolo.cc: idem.
8365 * lily/slur.cc (height): don't use get_uncached_stencil()
8367 * lily/rest.cc (y_offset_callback): use offset callback
8368 iso. after-line-breaking callback.
8370 * lily/grob.cc: change after/before-line-breaking-callback to
8371 after/before-line-breaking dummy properties.
8373 * lily/include/grob.hh: remove Grob_status.
8375 * scm/define-context-properties.scm
8376 (all-user-translation-properties): remove verticalAlignmentChildCallback
8378 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8379 (calc_direction): use callback
8380 (calc_positions): use callback.
8382 * lily/tie.cc (calc_direction): use callback. Only call parent
8383 positioning for more than one tie.
8385 * lily/tie-column.cc (calc_positioning_done): use callback
8387 * lily/slur-scoring.cc (calc_control_points): use callback
8389 * lily/slur.cc (calc_direction): use callback.
8391 * lily/note-collision.cc (force_shift_callback): remove.
8393 * lily/dot-column.cc (force_shift_callback): remove. Use
8394 other_axis_parent_positioning.
8396 * lily/grob.cc (other_axis_parent_positioning): new function.
8397 (same_axis_parent_positioning): new function
8399 * lily/align-interface.cc (alignment_callback): remove function.
8401 * lily/note-collision.cc (calc_positioning_done): use callback.
8403 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8404 (calc_direction): idem.
8405 remove print function.
8407 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8409 * lily/dot-column.cc (calc_positioning_done): use callback.
8411 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8413 * lily/beam.cc (calc_direction): use pseudo-property for beam
8415 (calc_positions): use callback
8417 * lily/align-interface.cc (calc_positioning_done): use
8418 callback. Fold fixed distance and normal alignment in one function.
8420 * lily/stem.cc (calc_stem_end_position): use callback.
8421 (calc_positioning_done): idem.
8422 (calc_direction): idem.
8423 (calc_stem_end_position): idem
8424 (calc_stem_info): idem.
8426 * lily/grob-property.cc (get_property_data): new function:
8427 (try_callback): new function.
8429 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8432 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8434 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8436 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8440 * lily/include/*.hh (Module): compile fixes.
8442 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8444 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8445 as an argument for char-syntax: use (char-syntax (or nil 0))
8446 instead of (char-syntax nil), thanks to Milan Zamazal.
8448 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8450 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8453 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8456 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8458 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8459 add class_name() method.
8461 * lily/music-scheme.cc: remove ly:music-name.
8463 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8465 * cygwin/postinstall-lilypond.sh: Remove cruft.
8467 * cygwin/postremove-lilypond.sh: Remove.
8469 * cygwin/GNUmakefile (default): Remove postremove rules.
8471 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8473 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8476 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8479 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8480 consider break index for broken spanner.
8482 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8483 characters from string before splitting.
8485 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8487 * scm/framework-ps.scm (output-preview-framework): use
8488 is-book-title to determine whether to chop off the booktitle.
8490 * lily/paper-book.cc (systems): init from book-title-properties
8491 (add_score_title): init score-title-properties.
8493 * ly/paper-defaults.ly: add {score,book}-title-properties.
8495 * scm/document-backend.scm (lookup-interface): error message if
8496 using unknown interface.
8498 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8501 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8503 (make_bracket): new function.
8505 * scm/lily.scm (define-scheme-options): add paper-size option.
8507 * ly/declarations-init.ly (laissezVibrer): get paper size from
8510 * scm/translation-functions.scm: use \fontsize for changing the
8513 * scm/define-grobs.scm (all-grob-descriptions): set
8514 between-length-limit to 1.0
8516 * lily/tie-helper.cc: add between_length_limit_ detail property.
8518 * mf/feta-bolletjes.mf: typos.
8520 * lily/note-head.cc (internal_print): don't shadow idx
8521 parameter. This fixes wrong attachment for do shape heads.
8523 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8525 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8527 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8529 * scm/layout-slur.scm: rename from slur.scm
8531 * scm/layout-page-layout.scm: rename from page-layout.scm
8533 * scm/layout-beam.scm: rename from beam.scm
8535 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8536 bass-figure-interface
8538 * lily/new-figured-bass-engraver.cc (process_music): add
8539 implicitBassFigures property.
8541 * scm/define-markup-commands.scm (pad-x): new markup.
8543 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8544 minimumVerticalExtent on FiguredBass context.
8546 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8547 case the continuation crosses a line break.
8549 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8551 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8552 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8553 absolute file name bug.
8555 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8557 * VERSION (PACKAGE_NAME): release 2.7.12
8559 * input/regression/figured-bass-continuation-center.ly: new file.
8561 * input/regression/beam-outside-beamlets.ly: new file.
8563 * lily/beam.cc (set_beaming): don't clip edges.
8564 (connect_beams): don't clip edges.
8566 * lily/beaming-info.cc (clip_edges): new function.
8568 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8570 * Documentation/user/instrument-notation.itely (Figured bass):
8571 demonstrate extenders, update seealso links.
8573 * scm/titling.scm (marked-up-headfoot): change tagline
8574 handling. tagline = ##f will blank the tagline as well.
8576 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8578 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8580 * lily/new-figured-bass-engraver.cc (struct
8581 New_figured_bass_engraver): add new_music_found_ member.
8583 * lily/lilypond-version.cc (Lilypond_version): deal with
8584 incorrectly formatted version strings.
8586 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8587 New_figured_bass_engraver by default.
8589 * lily/ttf.cc (print_trailer): only define glyph names when
8590 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8592 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8594 * lily/horizontal-bracket.cc (make_bracket): new function.
8596 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8597 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8598 BassFigureLine, BassFigureAlignment
8600 * lily/new-figured-bass-engraver.cc (process_music): new file.
8602 * lily/figured-bass-continuation.cc: new file.
8604 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8607 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8609 * scripts/lilypond-book.py: Bug fix, put the quote around the
8610 actual score for LaTeX documents.
8612 * scm/define-grobs.scm (all-grob-descriptions): Change
8613 collapse-height of the SystemStartBracket grob to 5.0,
8614 so the bracket disappears for single stave score lines (similarly
8615 to SystemStartBraces).
8617 * Documentation/user/advanced-notation.itely (Polymetric
8618 notation): Clarify the use of compressMusic.
8620 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8621 that the grace spacer note in other staves need the same duration
8622 and document the stroke-style property.
8624 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8626 * Documentation/user/global.itely (Vertical spacing): document
8627 alignment-extra-space and fixed-alignment-extra-space.
8629 * Documentation/topdocs/NEWS.tely (Top): add entry.
8631 * input/regression/alignment-vertical-spacing.ly: new file.
8633 * python/convertrules.py (conv): add rule.
8635 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8637 * lily/align-interface.cc (stretch_after_break): new
8638 function. Read fixed-alignment-extra-space property.
8639 (align_elements_to_extents): read alignment-extra-space property.
8641 * lily/lily-guile.cc (robust_scm2dir): new function.
8643 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8644 (annotate-space-left): new function. Annotate space left on page.
8645 (annotate-y-interval): new function.
8646 (paper-system-annotate-last): new function. Annotate bottom-space.
8648 * mf/feta-beugel.mf (y):
8650 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8652 * VERSION (PACKAGE_NAME): release 2.7.11
8654 * scm/lily-library.scm (interval-translate): new function
8655 (interval-center): new function.
8657 * scm/page-layout.scm (paper-system-annotate): new function. Add
8658 arrows for dimensions.
8660 * scm/stencil.scm (dimension-arrows): new function.
8662 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8664 * input/regression/page-spacing.ly: add annotatespacing
8666 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8667 (LY_DEFINE): new function ly:paper-system-set-property!
8669 * Documentation/user/global.itely (Paper size): explain how to add
8672 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8673 correspond to GS's definition.
8675 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8677 (print): only connect to next bracket if the next one is alive.
8678 (print): set padding to 0.0 if the bound is a breakable
8679 column. This makes tupletFullLength brackets reach up to the staff
8680 line if it doesn't connect to the next line.
8682 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8684 * lily/bar-number-engraver.cc: correct docs.
8686 * scm/output-lib.scm (first-bar-number-invisible): rename from
8687 default-bar-number-visibility
8689 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8691 * scm/define-music-properties.scm (all-music-properties): remove
8694 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8696 * po/fi.po: refresh.
8698 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8700 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8702 (disappear): bugfix.
8704 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8706 * lily/include/paper-system.hh (class Paper_system): remove
8707 staff_extents_ member.
8709 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8711 * lily/include/paper-system.hh (class Paper_system): remove
8712 number_ variable. Remove is_title_. Remove break_before_penalty_
8714 * lily/paper-book.cc (systems): use 'number property iso. number_
8717 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8718 remove ly:paper-system-number.
8720 * scm/lily-library.scm (paper-system-title?): new function.
8722 * lily/book.cc (process): bugfix: flip ?: cases.
8724 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8727 * ly/music-functions-init.ly: add outputProperty music function.
8729 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8731 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8733 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8735 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8737 * lily/paper-system.cc (internal_get_property): new function.
8739 * Documentation/user/global.itely (Vertical spacing): refer to
8742 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8745 * input/regression/page-spacing.ly: new file.
8747 * input/regression/page-top-space.ly: new file.
8749 * lily/spacing-spanner.cc: cmath -> math.h
8751 * lily/paper-system.cc (read_left_bound): new function. Read
8752 line-break-system-details from left bound to determine extents.
8754 * Documentation/user/programming-interface.itely (Using LilyPond
8755 syntax inside Scheme): change applyxxx -> applyXxx.
8757 * ly/music-functions-init.ly: add outputProperty music function.
8759 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8761 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8763 * python/convertrules.py (conv): rule
8765 * ly/music-functions-init.ly: applyxxx -> applyXxx
8767 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8770 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8772 * flower/include/real.hh: include <math.h> iso. <cmath>
8774 * flower/include/offset.hh: include real.hh
8776 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8778 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8779 fix example, now that 'interfaces is no longer directly available.
8781 * lily/book.cc (process): don't crash if paper == NULL.
8785 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8787 * scm/define-music-types.scm (music-descriptions): set length and
8788 start-callback for QuoteMusic
8790 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8792 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8793 arguments. Fixes compilation error with gcc 3.3.
8795 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8797 * VERSION: release 2.7.10
8799 * stepmake/stepmake/python-module-rules.make
8800 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8802 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8805 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8807 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8808 -Werror. Otherwise GCC barfs over various optimizations.
8810 * scm/define-grob-properties.scm (all-internal-grob-properties):
8811 add note-head property
8813 * Documentation/user/instrument-notation.itely (Laissez vibrer
8816 * input/regression/laissez-vibrer-ties.ly: new file.
8818 * lily/laissez-vibrer-engraver.cc: new file.
8820 * lily/include/tie-column-format.hh: new file.
8822 * lily/tie-column-format.cc: new file.
8824 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8826 * lily/laissez-vibrer-tie.cc: new file.
8828 * lily/include/laissez-vibrer-tie.hh: new file.
8830 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8832 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8834 * scm/define-grobs.scm (all-grob-descriptions): add
8835 LaissezVibrerTie, LaissezVibrerTieColumn
8837 * lily/tie-column.cc (set_tie_config_directions): new function
8838 (final_shape_adjustment): new function.
8839 (shift_small_ties): new function.
8841 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8843 * lily/include/tie.hh (struct Tie_details): add x_gap_
8844 (struct Tie_configuration): add head_position_
8846 * lily/tie-column.cc (set_chord_outline): new function.
8848 * mf/cmr.enc.in: remove file.
8850 2005-09-11 Graham Percival <gpermus@gmail.com>
8852 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8854 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8856 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8857 reduce aliasing effects.
8859 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8862 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8864 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8866 * flower/include/real.hh: std::fabs too.
8868 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8870 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8872 * lily, flower: Include C++ iso C headers. Import namespace std
8875 * lily/side-position-interface.cc:
8877 * lily/note-head.cc:
8878 * lily/include/includable-lexer.hh:
8879 * flower/include/string-data.icc: Remove using std::*.
8881 * lily, flower: Include C++ iso C headers. Import namespace std
8884 * lily/side-position-interface.cc:
8886 * lily/note-head.cc:
8887 * lily/include/includable-lexer.hh:
8888 * flower/include/string-data.icc: Remove using std::*.
8890 * Documentation/user/instrument-notation.itely (Entering lyrics):
8891 Multiple latin-1->utf-8 conversion fix.
8893 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8895 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8897 * lily/tie.cc (get_configuration): also avoid dots for non-space
8900 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8902 * Documentation/user/instrument-notation.itely: Bugfix.
8904 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8906 * tex/GNUmakefile: don't install texinfo.tex
8908 * tex/ : cleanup: remove unused files.
8910 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8912 * flower/include/real.hh: using std::{isnan,isinf}
8914 * VERSION (PATCH_LEVEL): release 2.7.9
8916 2005-09-05 Graham Percival <gpermus@gmail.com>
8918 * Documentation/user/ instrument-notation.itely,
8919 advanced-notation.itely: minor tweaks.
8921 * input/test/script-chart.ly: add item padding.
8923 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8925 * flower/offset.cc: use math.h iso. <cmath>
8927 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8930 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8931 (widen-left-stencil-edges): new function. Fix alignment problems
8932 with LaTeX includegraphics.
8934 * lily/text-interface.cc (interpret_markup): use abort().
8936 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8938 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8940 * lily/tie.cc (get_configuration): update bezier shape as we
8942 (get_configuration): don't move large ties if we're outside of the
8945 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8947 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8949 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8951 * .cvsignore: Add auto-generated configure files and then some.
8953 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8955 * scm/define-grobs.scm (DynamicLineSpanner): Add
8956 X-extent-callback. Fixes hairpin-slur collision.
8958 2005-08-31 Graham Percival <gpermus@gmail.com>
8960 * Documentation/user/advanced-notation.itely,
8961 basic-notation.itely: minor changes.
8963 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8965 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8966 \linebreak between each .eps file if \betweenLilyPondSystem is
8969 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8970 music): Document the \linebreak
8972 * Documentation/user/lilypond-book.itely,
8973 input/tutorial/lbook-latex-test.tex,
8974 Documentation/user/examples.itely: Remove \usepackage{graphics}
8976 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8978 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8980 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8983 * scripts/lilypond-book.py (PREAMBLE_LY): define
8984 inside-lilypond-book
8985 (modify_preamble): new function. Insert \RequirePackage{graphics}
8986 when no {graphics found in preamble.
8988 2005-08030 Graham Percival <gpermus@gmail.com>
8990 * Documentation/user/basic-notation.itely, global.itely,
8991 tutorial.itely: misc small changes.
8993 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8995 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8998 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9000 * lily/tie-column.cc (new_directions): put Tie down on center
9003 * lily/script-interface.cc (before_line_breaking): use
9004 Grob::programming_error
9006 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9008 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9011 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9013 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9015 2005-08-29 Werner Lemberg <wl@gnu.org>
9017 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9018 the `*.scale.pfa' files to avoid warnings.
9020 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9022 * lily/tempo-performer.cc (process_music): idem.
9024 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9026 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9028 * Documentation/user/advanced-notation.itely (Text markup): not a
9031 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9033 * lily/staff-performer.cc (initialize): add tempo/name to
9036 2005-08-26 Graham Percival <gpermus@gmail.com>
9038 * Documentation/user/advanced.itely: add text-only example.
9040 * Documentation/user/invoking.itely: add index entries for
9043 * Documentation/user/ tutorial.itely, basic-notation.itely:
9044 small fixes suggested by Steve D. Thanks!
9046 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9048 * input/regression/markup-bidi-pango.ly: new file.
9050 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9051 standard. Remove #ifdef. Remove memleak.
9052 (text_stencil): use text_dir to decide how to composite items.
9053 (text_stencil): determine uniform text direction for the entire
9056 * scripts/lilypond-book.py (output_name): remove
9057 latex_filter_cmd. Non-portable to non-Unix systems.
9058 (get_latex_textwidth): use File.write and os.unlink() instead.
9060 * THANKS: add Vicente & Trevor.
9062 * lily/grob.cc (discretionary_processing): look up origin for
9063 programming_error too.
9065 * input/regression/tie-broken.ly: new file.
9067 * lily/tie-column.cc (set_chord_outlines): set outline for line
9070 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9072 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9073 unscaled transform, just translate stencils.
9075 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9078 * scm/define-markup-commands.scm (wordwrap-string): use
9080 (wordwrap-stencils): idem.
9083 (wordwrap-stencils): translate last line to right for
9084 text-direction = LEFT.
9086 * scm/define-grob-properties.scm (all-user-grob-properties): add
9089 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9091 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9092 when copying a Lily_parser object.
9094 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9096 * scm/define-markup-commands.scm (null): add null markup.
9098 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9100 * lily/item.cc: Add documentation of center-invisible
9102 2005-08-24 Graham Percival <gpermus@gmail.com>
9104 * Documentation/user/advanced-notation.itely: add info about
9107 * Documentation/user/programming-interface.itely: fix example
9108 involving raised text.
9110 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9112 * lily/beam.cc (print): fix X start/end points of isolated
9115 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9117 * lily/multi-measure-rest.cc (set_text_rods): new function.
9119 * lily/vertical-align-engraver.cc (process_music): call
9120 Align_interface::set_axis(). This forces #'elements to be ordered,
9121 preventing random vertical reordering of staves.
9123 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9124 add avoid-slur property.
9126 * Documentation/user/basic-notation.itely (Measure repeats): add
9127 countPercentRepeats example.
9129 * Documentation/user/advanced-notation.itely (Other text markup
9130 issues): remove remark about normal-font. We have \normal-text
9132 * input/regression/tie-chord.ly: add note about remaining bugs.
9134 * lily/tie.cc (print): try Tie_column::set_directions () if
9135 control-points not yet defined.
9137 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9139 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9140 extent. This fixes braces falling out of the EPS bbox.
9142 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9145 2005-08-23 Graham Percival <gpermus@gmail.com>
9147 * {various} : change #up->#UP and #down->#DOWN.
9149 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9151 * Documentation/user/advanced-notation.itely: clarify
9152 what objects handles text on a multimeasure rest.
9154 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9156 * VERSION (PATCH_LEVEL): release 2.7.7
9158 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9160 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9162 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9164 * input/regression/*.ly: formatting clean-up. Default layout
9165 before music expression.
9167 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9168 romanze28-2 example.
9170 * scm/ps-to-png.scm: remove dir-re function.
9171 (make-ps-images): generate page names, instead of globbing them.
9172 This brings down LilyPond memory usage for make web by a factor
9175 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9176 don't use glob. With 3000 files, globbing
9177 Documentation/user/out-www/ can take too much time.
9179 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9181 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9183 * input/regression/tie-manual.ly: new file
9185 * input/regression/tie-chord.ly: update.
9187 * flower/include/interval.hh (struct Interval_t):
9189 * lily/tie.cc (distance): new function
9190 (height): new function.
9191 (init): new function
9192 (Tie_details): new struct.
9194 * lily/skyline.cc (skyline_height): new function.
9196 * lily/tie-column.cc (set_chord_outlines): new function.
9197 (new_directions): read tie-configuration
9199 * lily/skyline.cc: fix ASCII art.
9201 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9203 * python/convertrules.py (string_or_scheme): Fix spelling error
9205 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9207 * lily/tie-column.cc (set_directions): set directions only once.
9208 (add_configuration): new function.
9210 * lily/tie.cc (set_control_points): new function
9212 * lily/tie-column.cc (new_directions): new function.
9214 * ly/music-functions-init.ly: set 'pitch property
9215 iso. trill-pitch. This makes \relative work with \pitchedTrill
9217 * lily/tie.cc (get_configuration): new function. Don't generate
9218 control points, rather, generate configuration.
9219 remove head-pair property.
9221 * lily/include/tie.hh (struct Tie_configuration): new struct.
9223 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9225 * Documentation/topdocs/NEWS.tely: clarify.
9227 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9229 * lily/tie.cc: remove minimum-length
9231 * scm/define-grob-properties.scm (all-user-grob-properties):
9232 remove staffline-clearance, y-offset
9234 * input/regression/tie-dots.ly (Module): remove.
9236 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9237 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9239 * input/regression/tie-single.ly: new file.
9241 2005-08-21 Graham Percival <gpermus@gmail.com>
9243 * ly/bagpipe.ly: fix compile problem.
9245 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9247 * lily/midi-item.cc (name): new method.
9249 * lily/staff-performer.cc (acknowledge_audio_element): use
9250 signature of baseclass.
9252 * lily/engraver-group.cc (do_announces): move recursion call out
9255 * lily/drum-note-performer.cc (class Drum_note_performer): use
9256 process_music everywhere.
9258 * ly/performer-init.ly: add default children everywhere.
9260 * lily/paper-book.cc (output): call paper-book-write-midis
9261 directly: always write MIDI, even if no \layout {} block.
9263 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9265 * VERSION (PACKAGE_NAME): release 2.7.6
9267 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9268 about not being able to handle repeat.
9270 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9272 * Documentation/user/examples.itely (Piano templates):
9273 * lily/include/performer-group.hh: Remove last traces of
9274 Performer_group_performer. Fixes make web.
9276 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9278 * Documentation/user/examples.itely (Piano templates): change
9279 Engraver_group_engraver -> Engraver_group
9281 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9282 scm_stand_in_procs is not weak_any.
9284 * lily/volta-bracket.cc (print): don't use strcmp().
9286 * lily/volta-engraver.cc (process_music): use
9287 Text_interface::is_markup() for setting the 'text property of the
9290 * input/mutopia/claop.py (accents): update syntax to 2.6
9292 * scm/define-context-properties.scm
9293 (all-user-translation-properties): add countPercentRepeats.
9295 * Documentation/user/basic-notation.itely (Measure repeats): add
9296 isolated percent example.
9298 2005-08-18 Graham Percival <gpermus@gmail.com>
9300 * input/ {various}: change direction #1, #-1 to
9301 #up/#down or \fooUp, \fooDown.
9303 * Documentation/user/music-glossary.tely: #-1 to #down.
9305 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9306 to #up, #-1 to #down.
9308 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9310 * lily/include/engraver-group.hh: rename.
9312 * lily/include/performer-group.hh: rename.
9314 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9316 * input/test/script-abbreviations.ly: Removed some old LaTeX
9319 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9321 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9322 Remove functions. Remove if 1: constructs, reindent.
9324 * scripts/convert-ly.py (add_version): Add functions from
9327 * scm/script.scm (default-script-alist):
9328 s/priority/script-priority. Fixes script stacking. Backportme.
9329 (Fermata): Very low priority.
9331 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9333 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9335 * input/regression/slur-script.ly: remove padding tweaks. Add
9338 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9339 time sigs and related stuff.
9341 * scm/define-grob-properties.scm (all-user-grob-properties): add