1 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
3 * scm/display-lily.scm: add a parser argument to display methods,
4 instead of using a *parser* special variable.
6 * scm/define-music-display-methods.scm: add a parser argument to
7 display methods. Update the methods for \melisma, \melismaEnd,
8 \breathe, \tempo, \partial.
10 * input/no-notation/display-lily-tests.ly: update the test
11 utilities according to the changes in display-lily.scm
13 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
15 * *: The Joy of Merging.
17 * buildscripts/git-update-changelog.py:
18 sort commits, and use .git-commits-done file.
22 dist emacs patches too.
24 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
29 * lily/context-def.cc:
30 * lily/include/parse-scm.hh:
31 * lily/include/smobs.hh:
34 * lily/program-option.cc:
36 implement and use ASSERT_LIVE_IS_ALLOWED()
38 * ly/music-functions-init.ly:
40 set-part-combine fix for autochange.
42 * lily/include/lily-lexer.hh:
43 * lily/include/lily-parser.hh:
45 * lily/lily-parser-scheme.cc:
46 * lily/lily-parser.cc:
47 clear lexer scopes after parsing file. Plugs pseudo memory leak
49 * ly/declarations-init.ly:
50 * ly/music-functions-init.ly:
51 * scm/part-combiner.scm:
52 Remove set-part-combine-listener. This plugs a memory leak.
58 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
63 * lily/part-combine-iterator.cc:
64 don't allocate part combine events statically. Plugs small leak.
66 * lily/lily-parser-scheme.cc:
67 plug memleak in case of failed files.
69 * lily/include/source.hh:
74 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
76 * lily/include/program-option.hh:
77 * lily/program-option.cc:
78 get_program_option() function
81 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
83 * lily/include/translator.hh:
84 * lily/include/translator.icc:
88 * lily/figured-bass-engraver.cc:
89 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
91 * stepmake/stepmake/compile-vars.make:
92 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
94 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
100 trim warning messages.
105 * input/regression/utf-8.ly:
106 document utf-8 meaning of phrases.
108 * scm/define-markup-commands.scm:
109 make \caps markup default to smallCaps
111 * lily/pango-font.cc:
113 use glyph indexing for glyph name .notdef
115 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
117 * input/regression/utf-8.ly: Fix doc to match order of language
120 2006-11-01 Joe Neeman <joeneeman@gmail.com>
122 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
123 page and line forces.
125 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
127 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
129 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
131 * Documentation/user/GNUmakefile:
132 don't use ImageMagick, use GS directly.
135 otf depends on otf-g?table. Fixes race condition in -j2 build.
136 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
142 remove .deb/.rpm downloading.
144 * buildscripts/git-update-changelog.py:
145 bugfixes for git-update-changelog.py
147 * Documentation/user/GNUmakefile:
150 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
152 * input/regression/tie-semi-single.ly:
153 use position/direction from single tie case too. This fixes
154 overrides and defaults for single laissez-vibrer and repeat ties.
156 * buildscripts/git-update-changelog.py:
157 only prepend header if one patch was successful.
159 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
161 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
162 stuff. Remove cygwin packaging stuff.
164 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
166 * python/convertrules.py (conv): Part 2 fixes vertical extent.
168 * input/test/vertical-extent.ly: Fix and elaborate on vertical
169 staff extent. (Thanks Mats)
171 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
173 * buildscripts/git-update-changelog.py (main): write .msg and cvs
176 * scm/define-grobs.scm:
177 separation-items have width
183 * Documentation/topdocs/NEWS.tely:
184 * lily/separating-group-spanner.cc:
185 * lily/slur-engraver.cc:
186 * lily/slur-scoring.cc:
187 * scm/define-grobs.scm:
188 * input/regression/slur-clef.ly:
189 add breakableSeparationItem to extra encompass for slurs. This
190 fixes slur/clef slur/key collisions etc. Should fix #49
192 * lily/include/slur-scoring.hh:
193 * lily/slur-scoring.cc:
194 Use X of separation item as slur start. Fixes #120
196 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
198 * buildscripts/git-update-changelog.py (changelog_body): don't
201 * lily/grob.cc: add avoid-slur
203 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
207 move server/emacsclient to elisp/
209 * buildscripts/git-update-changelog.py (Commit.note_del_file):
212 * elisp/server.el.patch:
215 * elisp/emacsclient.patch:
218 * buildscripts/git-update-changelog.py:
225 * buildscripts/git-update-changelog.py:
226 script to update ChangeLog with Git messages.
228 * lily/beam-engraver.cc:
229 * input/regression/rest-pitched-beam.ly:
230 don't set callback if staff-position set. Fixes #126.
232 * lily/bar-number-engraver.cc:
234 * lily/fingering-engraver.cc:
235 * lily/grob-property.cc:
237 * lily/include/grob.hh:
238 * lily/include/lily-guile-macros.hh:
239 * lily/mark-engraver.cc:
240 * lily/melody-engraver.cc:
241 * lily/script-column.cc:
242 * lily/tie-formatting-problem.cc:
244 internal_get_property_data() using ly_symbol2scm()
246 * stepmake/stepmake/generic-targets.make:
247 create .gitignore in outdir.
252 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
254 * input/test/vertical-extent.ly:
255 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
257 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
259 * stepmake/bin/add-html-footer.py (compose): remove setgcos
261 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
263 * GNUmakefile.in (install-help2man): install-help2man target.
265 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
267 * SConstruct (configure): Do not check for /bin/sh.
269 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
271 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
274 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
276 * input/regression/fret-boards.ly: new file.
278 * po/de.po: new po courtesy translation team.
280 * scripts/lilypond-book.py (get_option_parser): add newline to doc
283 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
285 * ly/gregorian-init.ly (neumeDemoLayout): update
286 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
288 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
289 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
291 2006-10-27 Erlend Aasland <erlenda@gmail.com>
293 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
294 Yet another build fix.
296 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
298 * SConstruct (lilypondprefix): use sorted() for list_sort()
301 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
303 * flower/SConscript: Unit test rules.
305 * flower/test-std.cc: Compile fix.
307 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
309 * python/midi.c (pymidi_parse_track): warning fixes.
311 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
312 include dot-column.hh
314 2006-10-26 Graham Percival <gpermus@gmail.com>
316 * Documentation/user/{basic-, global}: minor changes from mailist.
318 2006-10-26 Erlend Aasland <erlenda@gmail.com>
320 * scm/define-grobs.scm: trivial beautification
322 * lily/tie-performer.cc: no need to #include "pqueue.hh"
324 * lily/source-file.cc: put multibyte var inside #if clause
326 * scm/define-grob-interfaces.scm:
327 * scm/define-grob-properties.scm:
328 Build fix (string-fret-finger-combinations)
330 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
333 * Documentation/user/lilypond-book.itely: Build fix.
335 2006-10-26 Joe Neeman <joeneeman@gmail.com>
337 * lily/system.cc (get_paper_system):
338 * lily/paper-book.cc (systems):
339 move most of the backwards compatibility stuff into
342 * Documentation/topdocs/NEWS.tely: add 2 entries for the
345 * Documentation/user/page.itely: remove time-scaled-music
346 bug for the Page_turn_engraver
348 * lily/paper-book.cc (set_system_penalty): backwards
349 compatibility (breakbefore) for the old page breaker
351 2006-10-25 Graham Percival <gpermus@gmail.com>
353 * Diocumentation/user/instrument-notation.itely: added more
354 info about stanzas; thanks Geoff!
356 * Documentation/user/ {basic, advanced}: small fixes from
359 * THANKS: add some bug reporters.
361 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
363 * scm/define-context-properties.scm (all-user-translation-properties):
364 noteToFretFunction: Add.
366 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
367 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
369 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
371 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
374 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
375 Remove bashism in delete.
377 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
379 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
381 * scm/translation-functions.scm (determine-frets-mf): flatten let*
383 * scm/define-context-properties.scm
384 (all-user-translation-properties): add maximumFretStretch property.
386 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
388 * lily/source-file.cc (get_counts): use multibyte variable.
390 * scm/translation-functions.scm (determine-frets-mf): new
391 function: compute fret numbers.
393 * scm/output-lib.scm (string-frets->description) new function.
394 (fret-board::calc-stencil): new function
396 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
398 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
400 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
402 * lily/tab-note-heads-engraver.cc: cleanups.
404 * lily/fretboard-engraver.cc: new file
406 * ly/engraver-init.ly: add FretBoards context
408 2006-10-24 Joe Neeman <joeneeman@gmail.com>
410 * lily/grob.cc (pure_relative_y_coordinate)
411 (pure_height): use the new call_pure_function stuff
413 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
416 * lily/side-position-interface.cc (pure_y_aligned_side): add an
419 * lily/simple-closure.cc (ly_eval_simple_closure): make
420 simple-closure evaluatable from scheme
421 (evaluate_with_simple_closure): make simple-closures pure-
424 * lily/slur.cc (pure_outside_slur_callback): new function
426 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
427 fits in with previous changes that made the page forces much
430 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
431 and pure-Y-extent into this new function.
432 (pure-conversions-alist): add outside-slur-callback
434 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
436 * Documentation/user/advanced-notation.itely (Instrument names):
437 Remove obsolete bug workaround for instrument names on piano
440 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
442 * Documentation/user/lilypond-book.itely (Integrating DocBook and
443 music): patch by Bertalan Fodor for docbook.
445 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
446 of $(LILYPOND). Prevents lilypond run for .txt files.
448 * INSTALL.txt: gitness.
450 * .cvsignore: update to force gitness.
452 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
454 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
455 detect suicide in nested tuplets.
457 2006-10-23 Werner Lemberg <wl@gnu.org>
459 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
460 typo in argument to FT_Get_X11_Font_Format.
462 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
464 * stepmake/stepmake/po-vars.make: more gitness.
466 * flower/polynomial.cc (check_sol): no empty if bodies.
468 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
470 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
472 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
474 * Documentation/user/examples.itely (Transcription of mensural
475 music): Added more comments in .ly source. Suggest to remove
476 Forbid_line_break_engraver to allow line breaking at all bars.
478 * Documentation/user/instrument-notation.itely (Ancient
479 articulations): Updated @refbugs regarding episem.
481 * Documentation/user/instrument-notation.itely (Gregorian square
482 neumes ligatures): Added \augmentum dots. Updated @refbugs
483 regarding \augmentum.
485 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
487 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
490 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
493 * ly/gregorian-init.ly: Added \augmentum macro.
495 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
497 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
499 * lily/pango-font.cc (pango_item_string_stencil): use
500 FT_Get_X11_Font_Format()
502 2006-10-22 John Mandereau <john.mandereau@free.fr>
504 * po/fr.po: update translation.
506 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
508 * VERSION (PATCH_LEVEL): bump version
510 * input/regression/horizontal-bracket-break.ly: new file.
512 * scm/define-grobs.scm (all-grob-descriptions): calc
515 * lily/horizontal-bracket.cc (make_bracket): support
516 connect-to-neighbor. Fix #118
518 * VERSION: release 2.9.26-2
520 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
522 * VERSION (PACKAGE_NAME): release 2.9.26
524 * buildscripts/output-distance.py (test_basic_compare): add
526 (FileLink.multi_img_cell): new function, glob multi-page png
529 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
531 * po/lilypond.pot: update.
533 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
535 * Documentation/user/global.itely (File structure): remove
538 * lily/parser.yy (FIXME): remove ADDQUOTE
540 * Documentation/user/global.itely (Extracting fragments of
541 notation): new node, about clip systems.
543 * Documentation/user/lilypond-book.itely (Many quotes of a large
544 score): ref to clip systems.
546 * Documentation/user/instrument-notation.itely (Entering lyrics):
547 add note about lyric ties and required font.
549 * lily/open-type-font.cc (glyph_list): format errors.
551 * Documentation/user/programming-interface.itely (Scheme
552 procedures as properties): more doco on simple-closure and scheme
554 (Input variables and Scheme): use lilypond[verbatim], document
557 * Documentation/user/page.itely (Displaying spacing): use \book
558 explicitly, so arrows show .
559 (Line breaking): add note about Forbid_line_break_engraver
561 * Documentation/user/tweaks.itely (Common tweaks): also set length
562 to prevent tie squeezing.
563 (Default files): use @var{}
565 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
566 (Generating LilyPond files): add FOMUS.
568 2006-10-20 Joe Neeman <joeneeman@gmail.com>
570 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
571 Y-offset for TextScript and Script
573 * lily/text-engraver.cc (make_item):
574 * lily/script-engraver.cc (make_script_from_event):
575 remove call to Side_position_interface::set_axis since all scripts
576 now have this set by default
579 * lily/prob.cc: use variables
581 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
583 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
584 at typography, rather analyse stream event duration.
586 * Documentation/user/page.itely (Page formatting): set a6 paper
587 for system separator example.
589 * lily/arpeggio.cc (Module): idem.
591 * lily/accidental-placement.cc: add script-priority property.
593 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
595 * lily/ttf.cc (print_trailer): if all else fails: use
596 glyphIndexXXXX as glyph name. Fixes #117.
598 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
599 entry if cmap contains glyph.
600 (get_index_to_charcode_map): remove from Pango_font class, use
601 global filename -> font mapping.
602 (get_glyph_index_name): new function.
603 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
606 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
608 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
611 * scm/define-grob-properties.scm (all-user-grob-properties):
612 remove outdated doc. Fixes #116
614 * lily/completion-note-heads-engraver.cc (process_music): always
615 clone input events; otherwise we may overwrite input 'duration
616 property. Fixes #115.
618 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
621 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
624 * VERSION (PATCH_LEVEL): bump version.
626 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
628 * lily/engraver.cc (internal_make_grob): use variables.
630 * flower/string-convert.cc (dec2double): clean-up warnings.
632 * configure.in (CXXFLAGS): add -Werror.
634 * VERSION (PACKAGE_NAME): release 2.9.25
636 2006-10-18 Joe Neeman <joeneeman@gmail.com>
638 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
639 line even if we precede a forced break.
641 * lily/optimal-page-breaking.cc (try_page_spacing): square line
642 forces too. Make page-spacing weight default to 10 because the
643 changes to vertical springs decreased the page force/line force
644 proportions. Also, take the average of line force and page force
645 instead of just the sum.
647 * lily/constrained-breaking.cc (initialize): make the stiffness
648 of the vertical springs depend on the height of the system. This
649 prevents pages with only a few large systems from getting huge
652 * Documentation/user/page.itely (Page formatting): document the
653 change in default page-spacing-weight
655 * lily/include/constrained-breaking.hh: initialise bottom_padding_
657 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
659 * input/typography-demo.ly (melody): remove superfluous slur.
661 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
662 add piano-pedal-script-interface
664 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
666 * scripts/lilypond-book.py: DocBook support.
668 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
670 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
672 (stop_translation_timestep): set bound to currentMusicalColumn if
673 not set yet. Fixes #102
675 * lily/piano-pedal-bracket.cc: formatting.
677 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
679 * lily/piano-pedal-align-engraver.cc: new class
680 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
683 2006-10-18 Heikki Junes <hjunes@gmail.com>
685 * po/fi.po: Update Finnish translation (before the next release).
687 2006-10-17 Joe Neeman <joeneeman@gmail.com>
689 * lily/system.cc (get_paper_system): reinstate the backwards-
690 compatible page breaking for the old page breaker.
692 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
694 * lily/recording-group-engraver.cc: removed
696 * lily/context.cc, lily/translator-group.cc: Don't touch
697 Context::implementation_ if it's null
699 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
701 * scm/paper.scm: only use left-margin if defined.
703 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
705 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
707 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
708 strokeFingerOrientations
710 * lily/script-column.cc (row_before_line_breaking): also handle
711 accidentals and arpeggios in horizontal script stacking.
713 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
716 * input/regression/script-stack-horizontal.ly: trim.
718 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
720 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
723 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
724 'text if string argument.
726 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
728 * scm/define-context-properties.scm
729 (all-user-translation-properties): change to strokeFingerOrientations
731 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
733 * lily/parser.yy: remove debug output
735 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
737 * ly/paper-defaults.ly: set left/right margin.
739 * scm/paper.scm (set-paper-dimensions): use left-margin and
740 right-margin for computing linewidth.
742 * Documentation/topdocs/NEWS.tely (Top): idem.
744 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
747 * scm/define-markup-commands.scm (tied-lyric): increase negative
748 space: space syllables tighter.
750 * VERSION (PATCH_LEVEL): bump version.
752 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
755 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
757 * COPYING: further clarification
759 * VERSION: release 2.9.24
761 * input/regression/script-stack-horizontal.ly: add version.
763 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
765 * input/regression/lyric-tie.ly (texidoc): use different words.
767 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
769 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
771 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
772 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
774 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
776 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
778 * Doxyfile: remove file.
780 * scm/define-grob-interfaces.scm (string-finger-interface): add
781 string-finger-interface
783 * lily/general-scheme.cc (LY_DEFINE): move
784 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
786 * Documentation/topdocs/NEWS.tely (Top): add note for
787 string-finger feature.
789 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
792 * scm/output-lib.scm (string-finger::calc-text): read 'digit
795 * input/regression/script-stack-horizontal.ly: new file.
797 * ly/engraver-init.ly: add Script_row_engraver.
799 * lily/script-column.cc (order_grobs): refactor: separate axis
801 (row_before_line_breaking): new function.
803 * lily/script-row-engraver.cc (Script_row_engraver): new file.
805 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
807 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
809 * Documentation/user/instrument-notation.itely: Cleanup: Remove
810 annoying skip notes from mensural ligature example. Update
811 @refbugs for ligatures and mensural ligatures.
813 * lily/coherent-ligature-engraver.cc,
814 lily/include/coherent-ligature-engraver.hh,
815 lily/mensural-ligature-engraver.cc,
816 lily/vaticana-ligature-engraver.cc: Revise code for item
817 reparentizing. There should now be less programming_error
820 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
822 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
823 Maintenance bugfix: Don't create empty Stencil (), but empty box
824 instead. This fix should eliminate some programming_error
827 * ly/engraver-init.ly (MensuralStaff): Set default accidental
830 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
831 \layout block _before_ score.
833 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
835 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
837 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
839 2006-10-13 Erlend Aasland <erlenda@gmail.com>
841 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
843 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
845 * VERSION (PATCH_LEVEL): bump version.
847 * COPYING: clarify exception note.
849 * lily/main.cc: remove remark about "COPYING".
851 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
852 system-count starts at 0 for each clip-region. Change name to
853 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
854 layout block, per score.
856 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
858 * lily/input-smob.cc: add equal_p for Input
860 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
863 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
865 * lily/prob.cc: Add equal_p predicate for Prob
867 * lily/translator.cc: small cleanup
869 * scm/document-music.cc: use data from translator listener
870 registration to generate documentation for event classes
872 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
874 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
876 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
878 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
880 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
882 * Documentation/topdocs/INSTALL.texi: Thinko.
884 * .cvsignore: Update.
886 * lexer-gcc-3.1.sh: Remove.
888 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
889 Update anonymous cvs access. Remove comment about gcc 3.0.4.
891 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
893 * VERSION: release 2.9.23
895 * lily/paper-column-engraver.cc (stop_translation_timestep): also
898 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
900 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
902 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
904 * input/regression/clip-systems.ly (Notes): new file.
906 * scm/lily.scm (define-scheme-options): add clip-systems option.
908 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
910 (dump-stencil-as-EPS): move bbox calculation from previous
912 (output-framework): use -dclip-systems
914 * scm/lily-library.scm (filtered-map): new function
916 * scm/framework-ps.scm (clip-system-EPS): new function.
917 (clip-system-EPSes): new function.
919 * lily/paper-column.cc: add rhythmic-location to interface
921 * scm/define-grob-properties.scm (all-user-grob-properties): add
922 rhythmic-location property.
924 * scm/clip-region.scm: new file: rhythmic-location data type and
925 system-clipped-x-extent function.
927 * ly/init.ly: use (scm clip-region)
929 * lily/paper-column-engraver.cc (stop_translation_timestep): set
930 rhythmic-location for paper column grobs.
932 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
934 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
936 * ly/engraver-init.ly: Remove obsolete comment on
939 * Documentation/user/instrument-notation.itely: Tune Ancient
940 Articulations figure, such that the episem actually shows.
942 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
943 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
945 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
948 2006-10-12 Graham Percival <gpermus@gmail.com>
950 * Documentation/user/ {some}: minor edits that were lost somehow.
952 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
954 * VERSION (PACKAGE_NAME): bump version.
956 * input/regression/lyric-tie.ly (texidoc): new file.
958 * Documentation/topdocs/NEWS.tely (Top): add new feature.
960 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
962 * scm/define-markup-commands.scm (tied-lyric): new function: split
963 string along ~ and reattach with U+203F (tie character) and
966 * scm/output-lib.scm (lyric-text::calc-text): new function.
968 * lily/lyric-engraver.cc (process_music): don't set 'text.
970 * scm/output-lib.scm (string-finger::calc-text): new function
971 (lyric-text::print): new function.
973 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
974 generic for fingering & string number. Use for string-finger.
976 * scm/define-music-types.scm (music-descriptions): add
979 * lily/fingering-engraver.cc (listen_string_finger): new function
981 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
983 * scm/define-context-properties.scm
984 (all-user-translation-properties): add stringFingerOrientations
986 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
988 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
989 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
991 * lily/dots.cc: Added style property for dots.
993 * mf/parmesan-heads.mf: Fix typo in comment.
995 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
996 adding longa head to feta font and removing obsolete default
999 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1001 * scm/output-lib.scm (fingering::calc-text): use origin
1002 event-property, not music-property.
1004 * lily/lilypond.rc.in: spell my name correctly.
1006 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1008 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1009 already have a non-empty extent. Fixes estimation for Hara-kiri
1012 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1014 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1017 * lily/ligature-engraver.cc: Remove unused #include.
1019 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1020 Bugfix: remove method check_for_prefix_loss(Item *) from global
1021 namespace to avoid namespace pollution.
1023 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1025 * VERSION: release 2.9.22
1027 * ly/generate-documentation.ly: update option name.
1029 * lily/dynamic-text-spanner.cc (print): revert fix.
1031 * scm/define-grob-interfaces.scm
1032 (trill-pitch-accidental-interface):
1033 add trill-pitch-accidental-interface
1035 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1036 dereference if it's really a duration.
1038 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1039 useBassFigureExtenders is not set.
1040 (listen_bass_figure): record as new event if
1041 useBassFigureExtenders not set. Fixes #103.
1043 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1044 instead: move circle. Fixes #107.
1046 * scm/define-grobs.scm (all-grob-descriptions): set
1047 allow-loose-spacing for PaperColumn and
1048 NonMusicalPaperColumn. Kludge for #110.
1050 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1052 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1053 allow-loose-spacing property.
1055 * scm/define-markup-commands.scm (postscript): gsave & grestore
1056 around embedded PS. Do setlinewidth too. Fixes #109.
1058 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1060 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1061 code. This patch fixes ligature brackets that were not at all
1064 2006-10-08 Graham Percival <gpermus@gmail.com>
1066 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1068 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1070 * scm/define-context-properties.scm: clarified docs (bug 91).
1072 * Documentation/user/basic-notation.itely: document volta brackets
1073 not aligning (bug 63).
1075 * Documentation/user/ global.itely invoking.itely: ignore or
1076 add warnings about texstr.
1078 2006-10-08 John Mandereau <john.mandereau@free.fr>
1080 * po/fr.po: update translation.
1082 * po/: update msgids.
1084 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1086 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1088 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1090 * Documentation/user/page.itely (Two-pass vertical spacing): add
1091 documentation for two-pass spacing technique.
1093 2006-10-06 Graham Percival <gpermus@gmail.com>
1095 * Documentation/user/convert-ly.txt: new file; new
1096 storage place for this file (moved from bugs/ CVS).
1098 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1100 * lily/note-head.cc: Fixed programming_error message.
1102 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1104 * scm/define-grobs.scm (pure-conversion): move pure-callback
1107 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1108 marcato, stopped, thumb.
1110 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1112 * lily/completion-note-heads-engraver.cc (process_music): don't
1113 skimp on memory usage.
1115 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1118 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1119 parenthesis item. This fixes premature Y-extent triggering. Fixes
1122 * VERSION (PATCH_LEVEL): bump version.
1124 2006-10-04 Graham Percival <gpermus@gmail.com>
1126 * Documentation/user/advanced-notation.itely: added
1127 info about instrument names for piano or other contexts,
1130 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1132 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1133 solfa_base_notewidth as unit for non-DO-notes too.
1135 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1137 * VERSION: release 2.9.21
1139 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1142 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1144 * python/lilylib.py (progress): Minor fix.
1146 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1148 * lily/note-name-engraver.cc: doc engraver.
1150 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1152 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1154 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1157 * lily/stem-engraver.cc (make_stem): don't set duration-log
1159 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1160 write snippet-names binary.
1162 * python/lilylib.py (system): use os.system for mingw32
1164 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1167 * scm/backend-library.scm: update email address.
1169 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1172 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1175 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1176 handle dot creation separately.
1178 * lily/tab-note-heads-engraver.cc (process_music): idem.
1180 * lily/drum-note-engraver.cc (process_music): idem.
1182 * lily/note-heads-engraver.cc (process_music): idem.
1184 * lily/rest-engraver.cc: don't set duration-log.
1186 * scm/output-lib.scm (string-number::calc-text): new function.
1187 (note-head::calc-duration-log): new function.
1189 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1191 * scm/output-lib.scm (fingering::calc-text): new function.
1193 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1195 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1196 and include-eps-font -> include-eps-fonts
1198 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1200 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1202 * lily/timing-translator.cc: list properties.
1203 (start_translation_timestep): update internalBarNumber too.
1205 * scm/define-context-properties.scm
1206 (all-user-translation-properties): add internalBarNumber.
1208 * input/regression/spacing-no-note.ly: new file.
1210 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1212 * lily/book.cc: #include cleanup.
1214 * lily/include/lily-guile-macros.hh: add assert to
1215 scm_or_str2symbol(SCM).
1217 * VERSION (PATCH_LEVEL): bump version.
1219 * lily/spacing-spanner.cc (musical_column_spacing): handle
1220 musical->nonmusical spacing case, where there is no spacing
1221 wish. Fixes issue #61.
1223 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1224 (pango_item_string_stencil): use logical rect horizontally (to
1225 preserve spaces), ink_rect vertically (for time signatures).
1227 * lily/font-metric.cc (word_stencil): new interface function
1229 * input/regression/utf-8-mixed-text.ly: new file.
1231 * lily/percent-repeat-engraver.cc (listen_percent): remove
1234 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1235 non-dynamic scripts. Fixes #30.
1237 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1239 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1241 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1242 SCM_UNDEFINED for non-existent data.
1244 * lily/side-position-interface.cc (general_side_position): allow
1245 optional current_offset argument for chaining, so combinations of side-position
1246 and outside slur callback don't add up. Fixes issue #92.
1248 * lily/pango-font.cc (pango_item_string_stencil): use
1249 logical_rect. This prevents spaces after words from disappearing,
1252 * VERSION: release 2.9.20
1254 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1256 * scm/define-grob-properties.scm (all-user-grob-properties):
1257 mention stencil as user settable.
1259 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1261 * Documentation/user/page.itely (Page formatting):
1262 document auto-first-page-number
1264 * lily/page-breaking.cc (find_chunks_and_breaks):
1265 * lily/paper-score.cc (calc_breaking): Follow changes to the
1266 Constrained_breaking interface
1268 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1269 here backwards, as an optimisation
1270 (initialize): new function; move most of the code in resize () here
1271 (combine_demerits): cache ragged_right_
1272 (Constrained_breaking): constructor now takes the Paper_score
1274 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1276 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1277 avoid parser lookahead for 0-ary functions.
1279 * lily/translator.cc: Extract event classes from
1280 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1282 2006-10-02 Heikki Junes <hjunes@gmail.com>
1284 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1287 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1289 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1290 function. Call the page breaking function selected in the
1291 `page-breaking' \paper variable, then the post processing function
1292 chosen using the `page-post-process' \paper variable.
1293 (line-height): new function. Return the height of a system.
1294 (line-minimum-position-on-page): new function. Return the position
1295 of a system on page (using the previous line position), only
1296 considering between system padding.
1297 (stretchable-line?): new function. Says whether a line can be
1298 stretched (ie. is not a title nor a single staff system).
1299 (page-maximum-space-left): new function. Computes space left on a
1300 page, when all systems are separated by their padding.
1302 * lily/page-breaking.cc (breaking::make_pages): Move page post
1303 processing function call to page breaking wrapper (common to all
1306 * lily/paper-book.cc (book::pages): call the page breaking
1307 wrapper, instead of the page breaker directly
1309 * ly/paper-defaults.ly: Add \paper variables for page breaking
1310 wrapper and page post processing function. Make
1311 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1312 `system-maximum-stretch-procedure' variable for holding a function
1313 computing the maximum stretch a system allows.
1315 * scm/layout-page-dump.scm (write-page-breaks): computes the
1316 stretch to apply to systems on a page to minimize left
1317 space. Dump this stretch length.
1319 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1320 the system-stretch property of the tweak data to stretch the
1322 (includePageLayoutFile): Void function which includes the
1323 generated page-layout file if it exists and if the page layout
1324 dumping is not asked.
1325 (scoreTweak): if the score tweak named by the argument exists,
1328 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1330 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1331 handle correctly the case where there are multiple \noPageBreaks
1334 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1336 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1338 * abc2ly.py fix so that entering " -- " will translate to a -- in
1339 the lilypond instead of a " - - "
1341 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1343 * lily/align-interface.cc: fix typo
1345 * lily/dynamic-text-spanner.cc (print): Add a special case for
1346 trill spanner right sides.
1348 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1350 * lily/align-interface.cc (get_extents_aligned_translates): add
1351 support for padding variable.
1353 * lily/break-align-interface.cc (self_align_callback): oops: use
1354 loop variable in guard.
1356 * input/regression/repeat-percent-grace.ly: new file.
1358 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1359 remember first currentCommandColumn of a grace run. Fixes issue 70.
1361 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1362 move class definition to CC file.
1364 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1366 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1367 measure-long repeats.
1369 * flower/include/international.hh: include stdarg.h
1371 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1373 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1374 put_systems_on_pages to return an empty result, we need to assign
1375 demerits properly in that case.
1376 (put_systems_on_pages): Make the number of pages depend on the
1377 evenness of page_number. Add auto-first-page-number.
1378 (calc_subproblem): ensure that the page-number is even for the
1379 left-hand page. Warn if the first page-turn doesn't fit onto the
1380 first (right-hand) page.
1382 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1383 (min_page_count): make this publicly accessible
1384 (min_page_count): fix a bug when there are forced page breaks that
1385 was introduced when I made this loop run backwards
1386 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1387 replace space_systems_on_min_pages with these two. The logic in
1388 space_systems_on_min_pages was getting too convoluted and is better
1389 contained in page-turn-page-breaking.
1391 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1393 (breakable_column): typo
1395 * lily/source-file.cc (get_line): fix off-by-one error
1396 and clean up some of the logic
1398 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1400 * lily/page-breaking.cc (make_pages): honour the first-page-number
1403 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1405 * VERSION (PACKAGE_NAME): bump version.
1407 2006-09-26 Pal Benko <benko.pal@gmail.com>
1409 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1410 (the latter is the same as petrucci-f which is kept for compatibility)
1412 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1414 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1416 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1418 * lily/global-context.cc (run_iterator_on_me): break out of loop
1419 if moment doesn't increase.
1421 * scm/define-grob-properties.scm (all-user-grob-properties): add
1424 * lily/accidental.cc (after_line_breaking): read forced property.
1426 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1429 * input/regression/accidental-forced-tie.ly: new file.
1431 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1433 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1435 * lily/figured-bass-engraver.cc: only listen to rest events if
1436 ignoreFiguredBassRest is not set.
1438 * scm/define-context-properties.scm
1439 (all-user-translation-properties): add ignoreFiguredBassRest property
1441 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1443 * lily/paper-book.cc (get_system_specs):
1444 (set_system_penalty): fix breakbefore.
1445 We used to set a penalty on the system after the break, now we
1446 set a permission on the system before the break
1448 * lily/grob-property.cc: add scm debugging hooks into
1449 property modification
1451 * lily/context-property.cc:
1453 rename make_foo_from_properties to internal_make_foo and
1454 move it from context-property.cc to a member function of
1457 * lily/include/lily-guile-macros.hh:
1458 overload ly_symbol2scm macro so that there is no more need
1461 * lily/volta-repeat-iterator.cc:
1462 * lily/tweak-engraver.cc:
1463 * lily/tuplet-bracket.cc:
1464 * lily/span-bar-engraver.cc:
1465 * lily/script-engraver.cc:
1466 * lily/prob-scheme.cc:
1467 * lily/pointer-group-interface.cc:
1469 * lily/grob-scheme.cc:
1470 * lily/grob-property.cc:
1472 * lily/context-property.cc:
1473 * lily/break-substitution.cc:
1474 * lily/break-align-engraver.cc:
1475 * lily/axis-group-interface.cc:
1476 * lily/align-interface.cc:
1477 remove calls to internal_FOO
1479 * lily/system-start-delimiter-engraver.cc:
1480 * lily/parenthesis-engraver.cc:
1481 * lily/accidental-engraver.cc:
1482 remove calls to make_foo_from_properties
1484 2006-09-23 Graham Percival <gpermus@gmail.com>
1486 * Documentation/user/programming-iterfaces.itely: fix
1487 def-music-function -> define-music... leftover.
1489 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1491 * lily/page-spacing.cc (min_page_count): by running the loop
1492 backwards, we can calculate ragged_last properly.
1494 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1496 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1497 printfirst-page-number -> print-first-page-number
1499 * python/convertrules.py: corresponding rule.
1501 * Documentation/user/page.itely (Page formatting): Document the
1502 default values of all page layout parameters.
1504 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1506 * lily/lexer.ll: remove limitation on music function arity. New
1507 mode extratoken, which inserts extra EXPECT_* tokens after
1508 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1510 * lily/parser.yy: Change grammar for music function accordingly.
1512 * lily/include/lily-parser.hh: New method get_state, new member
1513 hidden_state. Works around a problem when parser fetches
1514 MUSIC_FUNCTION token but not the following EXPECT_* token.
1516 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1519 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1520 references to Music; use ASSIGN_EVENT_ONCE everywhere
1522 * lily/grob-info.cc: junk *music_cause
1524 * lily/music.cc: copy eventified articulations to stream event
1526 * lily/part-combine-iterator.cc: Cleanup using enums
1528 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1531 * lily/include/engraver.hh: Junk music.hh include
1533 * lily/stream-event.cc: Changed constructors
1535 2006-09-21 Graham Percival <gpermus@gmail.com>
1537 * Documentation/user/tweaks.itely (Fitting music onto fewer
1538 pages): change settings to avoid warning messages.
1540 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1542 * Documentation/user/tweaks.itely (Fitting music onto fewer
1543 pages): Add between-system-space setting.
1545 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1547 * lily/accidental-placement.cc (calc_positioning_done): don't
1548 trigger Y-extent calculation too early. Use pure_height instead.
1550 * lily/scale.cc (LY_DEFINE): new file.
1552 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1554 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1555 that happen at the start of a score: having a zero-length
1556 chunk was messing up min_system_count calculations.
1558 * lily/source-file.cc (get_line): lower_bound, not
1559 binary_search. Fixes problem where point-and-click would
1560 always point to the first line.
1562 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1564 * lily/accidental-placement.cc (calc_positioning_done): also put
1565 stems into accidental support.
1567 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1570 * scm/script.scm (default-script-alist): avoid-slur and
1571 slur-padding for portato script.
1573 * lily/stem-tremolo.cc (translated_stencil): new function.
1574 (height): use new function. Fixes tremolos on whole notes.
1576 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1579 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1581 * scripts/abc2ly.py (try_parse_comment): idem.
1583 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1584 bar_string iso. string.find()
1588 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1591 2006-09-18 Graham Percival <gpermus@gmail.com>
1593 * Documentation/user/basic-notation.itely: add bug
1594 warning about ties and octavation/clef.
1596 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1598 * VERSION (PACKAGE_NAME): release 2.9.18
1600 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1602 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1603 figure out midi file names right here.
1605 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1607 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1609 * scm/backend-library.scm: option naming: gs-font-load*s*
1611 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1614 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1616 * scm/define-music-types.scm (music-descriptions): remove
1617 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1618 Music::to_event doesn't complain.
1620 * lily/accidental-placement.cc (ape_compare):
1621 * lily/semi-tie.cc (compare):
1622 * lily/note-column.cc (shift_compare): replace by XXX_less
1624 * lily/tie-formatting-problem.cc (set_chord_outline):
1625 * lily/tie-column.cc (calc_positioning_done):
1626 * lily/system.cc (post_processing)
1628 * lily/stem.cc (note_head_positions)
1629 (calc_positioning_done):
1630 * lily/spanner.cc (do_break_processing)
1631 (find_broken_piece):
1632 * lily/span-bar.cc (print):
1633 * lily/semi-tie-column.cc (calc_positioning_done):
1634 * lily/rest-collision.cc (calc_positioning_done):
1635 * lily/program-option.cc (get_help_string):
1636 * lily/note-collision.cc (get_clash_groups):
1637 * lily/new-fingering-engraver.cc (position_scripts):
1638 * lily/keyword.cc (Keyword_table):
1639 * lily/hara-kiri-group-spanner.cc (request_suicide):
1640 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1641 * lily/accidental-placement.cc (calc_positioning_done):
1643 * lily/beam.cc (get_beam_segments):
1644 * lily/grob-array.cc (remove_duplicates):
1647 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1648 ragged-last-bottom = ##f (test the new page breaker)
1650 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1652 * scm/define-context-properties.scm
1653 (all-internal-translation-properties): remove properties that
1654 were used to communicate page-turn stuff to the paper-column
1657 * lily/lily-guile.cc (robust_scm2string): new function
1659 * lily/paper-column-engraver.cc: Clean up page turn stuff
1661 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1662 instead of cluttering up paper-column-engraver.cc
1664 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1666 * scm/layout-page-dump.scm (scm): export utility function names,
1667 to allow user writing cutsom dumping functions.
1669 * scm/layout-page-layout.scm: export utility function names to
1670 enable custom page breaking function writing. Tabify.
1671 (line-next-space): use ?-suffix only for predicates
1672 (page-maximum-space-to-fill): new function. Return the space
1673 between first and bottom system of a page, to give to
1675 (space-systems): use a space-to-fill argument (for instance as
1676 computed by page-maximum-space-to-fill) instead of computing
1677 internaly this space with the page height. That way, the caller
1678 can adjust the space to use.
1679 (make-page-from-systems, walk-paths): compute space to fill before
1680 calling space-systems.
1682 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1684 * scm/script.scm (default-script-alist): set paddings for every
1685 type here, increase for portato mark.
1687 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1690 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1692 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1693 use spanner::set-spacing-rods
1695 * lily/note-column.cc: reformat.
1697 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1698 step positioning for note/rest combinations.
1700 * input/regression/rest-note-collision.ly: new file.
1702 * scm/define-grobs.scm (all-grob-descriptions): add
1705 * flower/include/std-vector.hh: switch off again.
1707 * VERSION (PATCH_LEVEL): bump to 2.9.18
1709 * flower/include/std-string.hh: idem.
1711 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1713 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1715 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1718 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1720 * Documentation/user/page.itely: update page breaking documentation
1722 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1724 * lily/note-collision.cc (calc_positioning_done): only access
1725 first head if available.
1727 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1729 * scm/framework-ps.scm (output-preview-framework): use new name.
1731 * lily/program-option.cc (internal_set_option): use new names.
1733 * Documentation/user/SConscript (lilypond_book_flags): update -d
1736 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1737 output into other programs): new variable names.
1739 * scm/lily.scm (define-scheme-options): uniformize var names.
1741 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1742 tuplets_ is non-empty before popping.
1744 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1746 * lily/spanner.cc (find_broken_piece):
1747 * lily/spacing-spanner.cc (get_columns):
1748 * lily/source-file.cc (get_line):
1749 * lily/simple-spacer.cc (get_column_description):
1750 * lily/keyword.cc (lookup):
1751 use the new binary search.
1753 * flower/include/std-vector.hh: replace binary_search with
1754 a more STL-like version
1756 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1758 * lily/tie-performer.cc: remove unused last_event_ property.
1759 (class Tie_performer): add now_tied_heads_ property for
1760 partially-tied heads.
1761 (acknowledge_audio_element): when adding an Audio_note, put the
1762 note in now_tied_heads_ if the audio note is partially tied.
1763 (stop_translation_timestep): always include entries in
1764 now_tied_heads_ in heads_to_tie_.
1766 * lily/drum-note-performer.cc (process_music): look for tie-events
1767 in the articulations; pass to Audio_note constructor.
1769 * lily/note-performer.cc (process_music): look for tie-events in
1770 the articulations; pass to Audio_note constructor.
1772 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1775 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1776 include initializer in constructor.
1778 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1780 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1781 unless they are breakable. This fixes discrepancies between the forces
1782 calculated here and the forces calculated in get_line_configuration.
1784 * lily/grob.cc (pure_relative_y_coordinate): fix some
1785 mis-estimation that was happening with piano staves.
1787 * lily/constrained-breaking.cc (resize): don't choke if we get a
1788 measure that won't fit on a line.
1789 (combine_demerits): don't consider uniformity when ragged
1791 * lily/page-spacing.cc (solve): why the f* were there two of these?
1792 (calc_subproblem): properly handle the case where a system is taller
1795 * lily/system.cc (get_paper_system): ensure that all the permissions
1796 and penalties are passed to the paper systems.
1798 * lily/page-breaking.cc (create_system_list): support system-count.
1800 * scm/define-grobs.scm (pure-print-callbacks): add
1801 ly:script-interface::print
1803 * lily/page-spacing.cc (min_page_count): fix calculation of min
1804 pages if we are ragged and there are non-zero springs.
1806 * scm/layout-page-layout.scm: if the pure-height estimates are under
1807 the real height, allow space-systems to ignore padding if it is
1808 needed in order to fit the systems on one page
1810 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1812 (solve): fix performance problem. Make sure we always get at least
1815 * lily/page-breaking.cc (make_pages): include write-page-breaks
1818 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1820 * scm/define-grobs.scm: add the new slur-callback
1821 fix pure-relevant to not exclude grobs whose extent is already
1824 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1827 * lily/slur.cc (pure_height): new callback to estimate the height
1830 2006-09-02 Graham Percival <gpermus@gmail.com>
1832 * Documentation/user/invoking.itely: small update on
1833 MacOS X notes; thanks Trevor!
1835 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1837 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1839 * lily/lexer.ll: accept EOF in all states.
1841 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1843 * lily/source-file.cc (Source_file): always 0-terminate character
1844 array, to prevent Flex from barfing.
1846 * lily/global-context.cc (get_output): robustness: don't crash if
1847 no Score context found.
1849 * lily/include/book.hh (class Book): idem.
1851 * lily/include/context-def.hh (struct Context_def): idem.
1853 * lily/include/score.hh (class Score): don't derive from Input.
1855 * lily/book.cc (Book): add a copy ctor.
1857 * buildscripts/output-distance.py (FileLink.calc_distance): count
1858 orphans in distance too.
1860 * python/midi.c (midi_parse_track): robustness: don't read past
1863 * ly/performer-init.ly: add Control_track_performer, move
1864 Tempo_performer and Time_signature_performer to Score.
1866 * lily/score-performer.cc (acknowledge_audio_elements): override
1867 from base class: add to audio-columns
1869 * lily/control-track-performer.cc (add_text): new file: generate
1872 * lily/performance.cc: move output_header_track to
1873 Control_track_performer ()
1875 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1877 * lily/include/midi-item.hh (class Midi_channel_item): insert
1878 class into hierarchy, for items that can have a channel setting. Dehungarify.
1880 * lily/include/performer.hh (class Performer): remove
1881 play_element(); move functionality into announce/acknowledge.
1883 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1885 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1886 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1888 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1890 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1893 * lily/all-font-metrics.cc: remove TFM support.
1895 * lily/include/tfm.hh: remove TFM support, TFM reader.
1897 * lily/include/binary-source-file.hh: remove Binary_source_file.
1899 2006-08-27 Graham Percival <gpermus@gmail.com>
1901 * Documentation/topdocs/NEWS.itely: add @c marker for
1902 stuff I've processed.
1904 * Documentation/user/ various: info from NEWS.
1906 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1908 * lily/paper-column-engraver.cc (finalize): Oops, this change
1909 should have gone in on 2006-08-23
1911 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1913 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1914 quotes to quote arguments. Fixes Windows problem.
1916 * python/lilylib.py (progress): idem
1918 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1920 * scripts/musicxml2ly.py: fix for importing
1921 minor key signatures from MusicXML. (Phillip Kirlin)
1923 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1925 * python/musicxml.py:
1926 (Attributes.get_key_signature): now correctly retrieves mode from
1929 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1931 * lily/parser.yy (output_def_body): take ownership of identifier
1934 * Documentation/user/advanced-notation.itely (Metronome marks):
1935 update use of \tempo in \midi.
1937 * VERSION: release 2.9.16
1939 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1941 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1944 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1946 * input/regression/tie-chord-partial.ly: clarify example.
1948 * scm/define-music-properties.scm (all-music-properties): remove
1951 * ly/music-functions-init.ly: remove \untied.
1953 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1954 stream events and music events.
1955 (stop_translation_timestep): search acknowledged heads for
1958 * input/regression/tie-chord-partial.ly: new file.
1960 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1961 for \char markup command.
1963 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1965 * scm/define-music-types.scm (music-descriptions): consistency:
1966 Use solo-{one,two}-event iso. solo-[12]-event.
1968 * lily/part-combine-engraver.cc (process_music):
1969 Use solo-{one,two}-event iso. solo-[12]-event.
1971 * ly/declarations-init.ly (partCombineListener): add Timing as
1974 * flower/std-string.cc (string_copy): use copy ()
1976 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1978 2006-08-24 Graham Percival <gpermus@gmail.com>
1980 * Documentation/user/changing-defaults.itely, global.itely,
1981 lilypond-book.itely, page.itely: minor changes from mailist.
1983 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1985 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1988 * scm/define-context-properties.scm
1989 (translator-property-description): robustness: detect type errors
1990 in property definitions.
1992 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1993 after getting it from SCM.
1995 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1998 * lily/include/performer.hh (class Performer): strip get_tempo()
2001 * lily/midi-def.cc: strip file.
2003 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2005 * lily/include/context-def.hh (struct Context_def): use
2006 VIRTUAL_COPY_CONSTRUCTOR().
2008 * lily/source-file.cc: smobification.
2010 * lily/include/source-file.hh (class Source_file): smobify
2011 Source_file. Trim redundant members.
2013 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2014 clones after creation. This plugs a huge memory leak.
2016 * python/convertrules.py (FatalConversionError.sub_tempo):
2017 complete rule for \midi{ \tempo }
2019 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2021 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2023 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2025 * input/regression/optimal-page-breaking-hstretch.ly: test for
2026 ragged-last-bottom also
2028 * lily/paper-column-engraver.cc (finalize): make the end of a score
2029 breakable by default. This is to balance out a change in behaviour
2030 of the page-turn-breaker which no longer makes the end of a score
2033 * lily/paper-book.cc (pages): set the systems_ once the pages are
2036 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2037 Page_breaking interface.
2039 * lily/page-breaking.cc (class Page_breaking): make the interface
2040 more consistent and provide abstractions for dealing with
2043 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2044 algorithm. Use the new interface to Page_breaking.
2046 * lily/page-spacing.cc: better support for ragged-bottom and
2049 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2051 * python/convertrules.py (conv): warning on \tempo{}
2053 * ly/performer-init.ly: set tempoWholesPerMinute.
2055 * ly/midi-init.ly: remove \midi
2057 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2060 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2061 tempoUnitDuration for determining what to print.
2063 * lily/lyric-extender.cc: typo.
2065 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2067 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2070 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2072 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2073 eps-pad-boxes is set.
2075 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2077 * THANKS: update sponsors.
2079 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2081 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2083 * input/regression/tie-chord-untied.ly: new file.
2085 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2087 * scm/define-music-properties.scm (all-music-properties): add
2090 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2092 (headertext_nopics): sanitize no-examples text.
2094 * scm/page.scm (make-page-stencil): don't rely on extents of
2095 page-stencil. This fixes spurious space around .EPS files produced
2096 with the EPS backend.
2098 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2100 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2102 * lily/hara-kiri-engraver.cc (process_music): remember
2103 keepAliveInterfaces after processing \set
2105 * lily/lyric-extender.cc (print): support left/right-padding for
2108 * scm/documentation-generate.scm (string-append): revert lilypond/
2111 2006-08-20 Graham Percival <gpermus@gmail.com>
2113 * Documentation/user/lilypond.tely: clarification to
2114 license presentation (not to actual license).
2116 * Documentation/user/basic-notation.itely,
2117 instrument-notation.itely: minor changes.
2119 * input/ {regression, test}/+.ly: clarification to
2120 text (you can click on examples). Thanks, Mats!
2122 * input/manual/bar-lines.ly: adds ||: repeats.
2124 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2126 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2128 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2130 * Documentation/user/lilypond.tely: strip lilypond/ from info
2131 links, rename to category LilyPond
2133 * lily/pango-font.cc (description_string): new function.
2135 * VERSION: release 2.9.15
2137 * lily/spacing-engraver.cc (stop_translation_timestep): use
2138 Dscho's fix for spacing spanner.
2140 * scm/define-music-types.scm (music-descriptions): use
2141 apply-output-event for ApplyOutputEvent
2143 * lily/output-property-engraver.cc (listen_apply_output): rename
2144 from listen_layout_instruction.
2146 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2149 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2151 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2152 commandline args with contains, split by \n.
2154 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2155 write snippet-names file, call with -dread-file-list. Fixes
2156 command limitations on 64-bit systems.
2158 * input/regression/stencil-color-rotation.ly: new file.
2160 * lily/include/translator.hh (struct Acknowledge_information):
2161 revert: don't use Protected_scm in global objects, as GUILE can't
2162 handle gc_unprotect from automated destructors on MacOS X.
2164 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2165 color, not the original stencil. Fixes combinations of
2166 color/transparency/rotation.
2168 * scripts/lilypond-book.py (main): add --formats=eps for
2171 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2172 crash if spacing_ is nonexistent.
2174 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2176 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2177 \catcode`\@=12 in the LaTeX output.
2179 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2181 * scm/define-music-types.scm (music-descriptions):
2182 use sustain-event iso. sustain-pedal-event.
2184 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2186 * scripts/convert-ly.py: honour the -n command-line switch
2188 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2190 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2191 break specification.
2193 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2195 * Documentation/user: convert-ly the user manual
2197 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2199 * stepmake/aclocal.m4: version check patch (thanks MWD)
2201 * ly/music-functions-init.ly: robustness. Don't crash if
2202 currentBarNumber is not a number.
2204 * VERSION (PATCH_LEVEL): bump.
2206 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2208 * stepmake/aclocal.m4: better version check; handle fooX.Y
2211 * ly/performer-init.ly: instrument name fixup.
2213 * input/manual/chord-names-jazz.ly (banterProperties):
2214 instrumentName update
2216 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2218 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2220 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2221 function. Use hash tables to check membership.
2223 * lily/general-scheme.cc (LY_DEFINE): new function.
2225 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2227 * lily/include/translator.hh (struct Acknowledge_information): add
2230 * ly/music-functions-init.ly: change name to BreathingEvent
2232 * input/regression/*.ly: apply it.
2234 * python/convertrules.py (conv): better instrumentName conversion
2237 * scm/define-music-types.scm (music-descriptions): add
2238 line-break-event to LineBreakEvent music
2240 * lily/music.cc (to_event): don't crash if music type not set.
2242 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2245 * lily/spacing-engraver.cc (stop_translation_timestep): set
2246 spacing for proportional notation too.
2248 * scm/translation-functions.scm (format-bass-figure): inspect
2251 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2253 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2255 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2257 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2259 * scm/layout-page-layout.scm (make-page-from-systems): new function
2260 (optimal-page-breaks): use the new page-breaking calling convention
2262 * scm/define-context-properties.scm (all-user-translation-properties):
2265 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2266 revokePageTurns functionality. If there is a special barline within
2267 the breakable region, break there instead of at the end of the region.
2269 * lily/paper-book.cc (pages): use the new page-breaking calling
2272 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2274 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2276 * scripts/lilypond-book.py: insert \sourcefileline command in
2277 output, so lilypond error messages refer to the spot in the
2278 original .lytex / .itely sourcefile.
2280 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2282 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2283 space to next column for distance to fixed col.
2285 * VERSION (PACKAGE_NAME): release 2.9.14
2287 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2290 * lily/accidental-engraver.cc (process_acknowledged): don't create
2291 accidental for trill span event. This fixes spurious accidentals
2294 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2296 * scm/define-grob-properties.scm (all-user-grob-properties):
2297 Clarify documentation of side-axis and direction. Thanks to Paul
2298 for the inspiration.
2300 * lily/bar-line.cc: Add documentation for "||:" also in the
2301 interface documentation.
2303 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2305 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2307 * lily/paper-column.cc (set_system): new function.
2309 * lily/spacing-engraver.cc (stop_translation_timestep): store
2310 SpacingSpanner refs in Paper_column.
2312 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2313 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2315 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2317 * lily/beam-engraver.cc (listen_beam): add method for
2318 Grace_beam_engraver too.
2320 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2322 * python/convertrules.py: Fix indentation bug that broke
2323 conversion of files older than 1.3.117.
2324 Fix escape error in the description for 2.9.6.
2326 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2328 * lily/*-engraver.cc: convert all try_music functions to listen_*
2331 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2332 enums to represent pedal types, and calculate more data statically.
2334 * scm/part-combiner.scm (recording-group-emulate): create a
2335 softcoded substitute for recording-group-engraver.cc.
2337 * lily/music.cc: make a common transpose function for events and
2340 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2341 ManualMelismaEvent, and obsoletes Melisma_translator.
2343 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2345 * input/test/instrument-name-align.ly: update version.
2347 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2349 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2350 Doc the --pdf flag to lilypond-book.
2352 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2354 * Documentation/topdocs/NEWS.tely (Top): add description.
2356 * input/regression/tuplet-full-length-note.ly: add file.
2358 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2359 always store axis group.
2361 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2363 * input/regression/instrument-switch.ly: new file.
2365 * lily/instrument-switch-engraver.cc (process_music): new file.
2367 * ly/engraver-init.ly: add Instrument_switch_engraver
2369 * ly/music-functions-init.ly: \instrumentSwitch
2371 * scm/define-context-properties.scm
2372 (all-user-translation-properties): add instrumentCueName
2374 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2376 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2378 * ly/music-functions-init.ly: music function \transposition.
2380 * lily/parser.yy (command_element): softcode \transposition.
2382 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2383 (process_music): oops.
2385 * lily/instrument-name-engraver.cc (start_spanner): new
2386 function. Create spanner when property changes.
2387 (stop_spanner): new function.
2389 * python/convertrules.py (conv): add rule.
2391 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2392 shortInstrumentName iso. instr.
2394 * scm/output-ps.scm (dashed-line): add phase argument to
2397 * lily/bar-line.cc (dashed_bar_line): new function.
2398 (compound_barline): support \bar "dashed".
2400 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2401 --output=DIR to DIR/BASE if it is a dir.
2403 * flower/file-name.cc (file_part): new function
2404 (dir_part): new function
2406 * lily/lily-parser-scheme.cc (LY_DEFINE):
2408 * DEDICATION: update
2410 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2412 * lily/instrument-name-engraver.cc: formatting.
2414 * python/convertrules.py (conv): bugfix for \epsfile.
2416 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2420 * lily/gourlay-breaking.cc: Oops, these should have been included
2423 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2425 * scripts/*.py (program_name): cleanup relocation snippets.
2427 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2429 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2431 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2432 page-breakable by default
2434 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2435 correctly calculated for a single-system page
2437 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2438 bigger than the second number
2440 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2441 acknowledge that we aren't satisfying constraints)
2443 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2446 * lily/grob.cc (pure_height): add minimum-Y-extent
2448 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2451 * lily/constrained-breaking.cc: convert code to use new Matrix class
2452 (get_best_solution): new function
2454 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2455 is a page with no systems
2457 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2459 * VERSION (PACKAGE_NAME): release 2.9.13
2461 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2464 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2466 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2468 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2471 * scm/define-grob-properties.scm (all-user-grob-properties):
2472 remove grace-space-factor.
2474 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2475 grace-spacing-interface
2476 (spacing-options-interface): add.
2478 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2480 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2482 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2483 GraceSpacing object.
2485 * lily/note-spacing.cc: fix prop list formatting
2487 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2488 beaming for grace notes too.
2490 * input/regression/spacing-grace.ly: update.
2492 * lily/grace-spacing-engraver.cc: new file.
2494 * lily/spacing-spanner.cc: add strict-grace-spacing.
2496 2006-07-20 Graham Percival <gpermus@gmail.com>
2498 * lily/parser.yy: compile fix.
2500 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2502 * scm/define-grobs.scm (all-grob-descriptions): typo.
2504 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2505 .eps extension from includegraphics.
2507 * scripts/lilypond-book.py (main): add support for --pdf.
2509 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2510 callback to compute common shortest duration.
2511 (set_springs): typo.
2513 * scm/define-grob-properties.scm (all-user-grob-properties): add
2514 strict-grace-spacing.
2516 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2517 support float_grace_columns_.
2519 * lily/spacing-options.cc (init_from_grob): new file.
2521 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2523 * input/regression/spacing-loose-grace.ly: new file.
2525 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2527 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2528 tupletFullLengthNote too. Choose right bound depending on value.
2530 * input/regression/tuplet-full-length-note.ly: new file.
2532 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2534 * lily/*-performer.cc: Converted try_music to listen_*
2536 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2537 as a stream-event internally. Introduce event_cause (), deprecate
2540 * scm/define-music-types.scm: Removed BusyPlayingEvent
2542 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2544 * Documentation/user/advanced-notation.itely (Font selection):
2545 Document how to get a list of available fonts using 'lilypond
2546 -dshow-available-fonts blabla'.
2548 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2550 * GNUmakefile.in: filter lily-XXX.pdf files.
2552 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2554 * scm/define-grob-properties.scm (all-internal-grob-properties):
2555 remove delta-pitch. Use delta-position everywhere.
2557 * scm/output-lib.scm (fall::print): use new order.
2559 * scm/output-ps.scm (path): reorder arguments.
2561 * scm/output-svg.scm (path): support for path primitive.
2563 * input/regression/bend-after.ly: new file.
2565 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2566 recipe for eps -> pdf conversion.
2568 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2570 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2573 2006-07-19 Graham Percival <gpermus@gmail.com>
2575 * input/manual/screech-boink.ly: moved to here.
2577 * input/screech-boink.ly: deleted.
2579 * scm/define-grob-properties.scm: clarify doc string.
2581 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2583 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2585 * scm/output-ps.scm (path): define path.
2587 * scm/define-stencil-commands.scm
2588 (ly:register-stencil-expression): add path.
2590 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2592 * ly/engraver-init.ly: add Fall_engraver
2594 * lily/parser.yy (music_function_event): allow musicfunction
2595 without music arg as music_function_event.
2597 * lily/grob-scheme.cc (LY_DEFINE):
2598 ly:grob-robust-relative-extent. New function.
2600 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2602 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2604 * scm/output-lib.scm (fall::print): new function
2606 * lily/fall-engraver.cc (stop_fall): new file.
2608 * ly/music-functions-init.ly: alphabetise.
2610 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2613 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2615 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2617 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2620 * lily/translator-group.cc (connect_to_context): non const error message.
2622 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2624 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2627 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2629 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2631 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2634 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2636 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2638 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2640 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2642 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2644 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2646 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2648 * scm/layout-page-layout.scm: Define module, tidy code, use more
2649 functions iso. a single big one.
2651 * scm/layout-page-dump.scm: move page dump functions used in two
2652 pass spacing to this file. Define module.
2654 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2657 * ly/paper-defaults.ly: use module layout-page-layout.
2659 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2661 * lily/music.cc: Revised MusicEvent event class. It now contains
2662 event data directly instead of encapsulating it in music. The
2663 previously used class is renamed to OldMusicEvent.
2665 * lily/stream-event.cc: Stream events are now probs.
2667 * lily/translator-group.cc, lily/translator.cc: Translators can
2668 now listen directly to stream events, by using macros
2669 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2671 * lily/arpeggio-engraver.cc: Converted to use new event system
2673 * THANKS: Corrected spelling mistake.
2675 2006-07-12 Graham Percival <gpermus@gmail.com>
2677 * Documentation/user/SConscript, make/lilypond-vars.make,
2678 input/GNUmakefile: doc build looks in input/manual instead
2681 * input/manual/ GNUmakefile, SConscript: build files for
2684 * input/test/ various: some files moved to input/manual/
2686 * Documentation/user/basic-notation.itely: small updates;
2687 thanks Kieren and Charles!
2689 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2691 * VERSION (PACKAGE_NAME): release 2.9.11
2693 * Documentation/topdocs/NEWS.tely (Top): update prop value
2695 * Documentation/user/basic-notation.itely (Tuplets): new property
2698 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2700 * python/convertrules.py (conv): tweaks.
2702 * VERSION (PATCH_LEVEL): bump version.
2704 * python/convertrules.py (conv): add rule for
2705 tupletNumberFormatFunction.
2707 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2708 tupletNumberFormatFunction.
2710 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2711 text through 'text callback.
2713 * lily/time-scaled-music-iterator.cc (construct_children): copy
2714 tweaks generated events.
2716 * scm/define-context-properties.scm
2717 (all-user-translation-properties): remove tupletNumberFormatFunction
2719 * lily/tuplet-engraver.cc (process_music): don't read
2720 tupletNumberFormatFunction
2722 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2725 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2727 * lily/global-context-scheme.cc: Separated ly:run-translator into
2730 * lily/score-engraver.cc, lily/score-performer.cc,
2731 scm/define-context-properties.scm: Make paper/midi output
2732 accessable as a context property.
2734 * lily/score-translator.cc, lily/score-context.cc: Removed.
2736 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2738 * scm/ps-to-png.scm (Module):
2739 * scm/framework-tex.scm (Module):
2740 * scm/framework-ps.scm (Module):
2741 * scm/backend-library.scm (Module):
2742 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2743 "dDEVICEHEIGHTPOINTS".
2745 2006-07-04 Graham Percival <gpermus@gmail.com>
2747 * Documentation/user/ various: general improvements to
2748 "working with lilypond files" section.
2750 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2752 * lily/sequential-iterator.cc: Change the default get_music_list
2753 to read elements-callback music property
2755 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2756 processing of multimeasure rests. Softcoded
2757 sequential-music-iterator.
2759 * lily/sequential-music-iterator.cc: Removed.
2761 2006-06-28 Graham Percival <gpermus@gmail.com>
2763 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2765 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2767 * lily/parser.yy: Wrap non-post-events in EventChords before
2768 assigning them to identifiers.
2770 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2772 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2773 gives correct vertical placement of \bar ":" in all staff
2774 sizes. Thanks Martial!
2776 2006-06-26 Graham Percival <gpermus@gmail.com>
2778 * Documentation/user/invoking.itely : minor update from mailist.
2780 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2782 * lily/ various: Introduce stream events of types Prepare,
2783 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2784 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2786 * lily/global-context*.cc: Time is now -inf before iteration
2789 * lily/include/context.hh: Removed unique_, init_
2791 * Documentation/topdocs/NEWS: Make the feathered beam example
2792 avoid triggering a bug.
2794 2006-06-24 Graham Percival <gpermus@gmail.com>
2796 * Documentation/user/ various: small additions from mailist.
2798 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2800 * ly/performer-init.ly: Add some missing links in the context
2801 hierarchy for MIDI output. There are probably some more missing!
2803 2006-06-21 Graham Percival <gpermus@gmail.com>
2805 * Documentation/user/ various: minor spelling fixes;
2806 thanks Dave Luttinen!
2808 * Documentation/user/ various: small clarifications;
2809 thanks Anthony Youngman!
2811 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2813 * po/fr.po: add \n appropriately.
2815 * lily/lexer.ll: remove ? from version-seen?
2817 2006-06-19 John Mandereau <john.mandereau@free.fr>
2819 * po/fr.po; update translation, by Jean-Charles Malahieude and
2822 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2824 * THANKS: add Markus Schneider.
2826 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2827 Staff_symbol_engraver
2829 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2830 replace staff_engraver
2832 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2835 * lily/staff-collecting-engraver.cc
2836 (acknowledge_end_staff_symbol): new function
2838 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2840 * lily/staff-collecting-engraver.cc
2841 (acknowledge_end_staff_symbol): new function.
2843 * lily/main.cc: switch on relocation by default.
2845 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2847 * lily/spacing-spanner.cc (musical_column_spacing): set
2848 compound_fixed_note_space to 0.0. Document why.
2850 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2851 range of inverse_hooke_
2852 (Simple_spacer): init completely.
2854 (get_line_configuration): don't use cols.resize(); it introduces
2857 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2859 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2861 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2862 try. Divide by beatlength.
2864 * input/regression/beaming-ternary-metrum.ly: update doc.
2865 add beatLength hack.
2867 * scm/music-functions.scm (make-time-signature-set): add
2868 standard-beat-grouping.
2870 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2872 * input/regression/tie-whole.ly: new file.
2874 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2875 cross center of note head in case of invisible stem.
2877 2006-06-16 Graham Percival <gpermus@gmail.com>
2879 * Documentation/user/ various: small fixes from mailist.
2881 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2883 * lily/breathing-sign.cc (offset_callback): idem.
2885 * lily/align-interface.cc (align_to_fixed_distance): remove
2888 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2891 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2893 * VERSION (PACKAGE_NAME): release 2.9.9
2895 * ly/lilypond-book-preamble.ly: add \version
2897 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2899 * scripts/lilypond-book.py (PREAMBLE_LY): include
2900 lilypond-book-preamble.ly
2902 * lily/stem.cc (get_beaming): return max of 0 and
2903 scm_ilength. Fixes slurring from/to beams.
2905 * ly/lilypond-book-preamble.ly: new file.
2907 * lily/slur.cc: add inspect-index feature.
2909 2006-06-13 Graham Percival <gpermus@gmail.com>
2911 * Documentation/user/tutorial.itely: trivial fix.
2913 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2915 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2916 all non-event music in the parser via MAKE_SYNTAX.
2918 * lily/parser-scheme.cc: Add ly:parser-error function
2920 * scm/paper.scm: fix typo
2922 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2926 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2929 * buildscripts/output-distance.py (test_compare_signatures):
2931 (read_signature_file): use new signature format.
2933 * scm/stencil.scm (write-system-signature): simpler signature
2936 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2939 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2940 stem_end_position, but estimate instead.
2942 * lily/tuplet-bracket.cc (calc_positions): look at
2943 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2944 brackets narrower than beams.
2946 * lily/lexer.ll: set version-seen? even if version is
2949 * lily/rest.cc (y_offset_callback): bugfix: decide position
2950 override based on scm_is_number(). Fixes \rest on center staff
2953 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2954 patterns for 16th triplets.
2956 2006-06-10 Graham Percival <gpermus@gmail.com>
2958 * Documentation/user/ page.itely, global.itely: editing
2961 * Documentation/user/ various: findex -> funindex.
2963 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2965 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2966 insert extra tuplet events.
2968 2006-06-10 Graham Percival <gpermus@gmail.com>
2970 * Documentation/user/programming-interfaces.itely: add
2973 * python/convertrules.py: add annotatefoo -> annotate-foo
2976 * Documentation/user/global.itely: start editing.
2978 * Documentation/user/page.itely: major editing, new spacing
2981 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2983 * scm/define-markup-commands.scm (wordwrap-markups): use
2984 output-def 'line-width if undefined.
2986 * HACKING: trim outdated info.
2988 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2990 * scm/define-grobs.scm (all-grob-descriptions): Add
2991 line-spanner-interface to all grobs that already have
2992 text-spanner-interface or dynamic-text-spanner-interface
2994 * scm/page.scm: Rename annotate{headers,systems,page}->
2997 * input/regression/page-spacing.ly,
2998 input/regression/page-layout-manual-position.ly: idem
3000 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3002 * lily/line-spanner.cc: cleanup property list.
3004 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3005 generator expressions (2.3 compat).
3007 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3009 * lily/vertical-align-engraver.cc: Make sure that the
3010 align{Above,Below}Context properties are included in the automatic
3013 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3015 * scm/paper-system.scm (paper-system-annotate): also annotate the
3016 estimated pure-Y-extent
3018 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3020 * lily/system.cc (break_into_pieces): set the estimated height
3021 of each child system
3023 * lily/stem.cc (pure_height): new pure-Y-extent callback
3025 * lily/staff-symbol-referencer.cc (callback): don't destroy
3026 the staff-position property
3028 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3029 consider_suicide into two functions
3031 * lily/constrained-breaking.cc (resize): use the new pure
3032 callbacks to estimate the height of a system
3034 * lily/axis-group-interface.cc (pure_group_height): new
3035 side-effect-free VerticalAxisGroup height-callback
3037 * lily/align-interface.cc (get_extents_aligned_translates):
3038 split align_elements_to_extents into two functions
3039 (get_pure_child_y_translation): new function
3041 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3043 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3045 * lily/paper-score.cc: cache break_indices and columns
3047 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3049 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3051 * lily/font-config.cc (init_fontconfig): do the init if
3052 cache_file, but don't look at cache_file.
3054 * input/regression/quote-tie.ly: new file.
3056 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3057 to Head_event_tuple, so we deal gracefully with ties on
3060 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3063 2006-06-08 Graham Percival <gpermus@gmail.com>
3065 * input/test/ smart-transpose.ly, reverse-music.ly:
3066 \applyMusic to music functions update, thanks Michael!
3068 2006-06-07 Graham Percival <gpermus@gmail.com>
3070 * input/test/ add-staccato.ly, add-text-script.ly,
3071 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3072 music functions update, thanks to Michael Meixner.
3074 * Documentation/user/music-glossary.tely: small fix
3077 * Documentation/user/ various: minor additions from mailist.
3079 * Documentation/user/lilypond.tely, basic-notation.itely:
3080 small test of @funindex. (works here)
3082 * input/test/font-table.ly: reduce size to partially
3083 de-ugly version in manual.
3085 * Documentation/user/page.itely: new file (split former
3086 "global issues" into "page settings" and "non-musical
3089 * Documentation/user/ various: fix @ref{}s to match
3090 new chapter names (above).
3092 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3094 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3096 2006-06-06 Graham Percival <gpermus@gmail.com>
3098 * Documentation/user/advanced-notation.itely: add example
3099 for segno/coda on barline.
3101 * tex/texinfo.tex: merge from upstream.
3103 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3105 * scripts/lilypond-book.py (process_snippets): Argument fix.
3108 * buildscripts/builder.py:
3111 * Documentation/user/SConscript: More SCons fixes.
3113 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3115 * lily/font-config.cc (init_fontconfig): Only initialize if
3116 global cache_file is found.
3118 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3120 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3123 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3125 * VERSION (PACKAGE_NAME): release 2.9.8
3127 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3128 function. Delay ledger modifying ledgered grobs to
3129 stop_translation_timestep(), to ensure that we're ledgering
3130 according to the new spanner.
3131 (acknowledge_staff_symbol): don't check for non-NULL
3132 staff_sym->get_bound()
3134 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3137 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3140 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3141 directly from srcdir/stepmake/aclocal.m4
3143 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3146 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3148 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3150 * lily/simple-spacer.cc (get_line_configuration): add
3151 keep-inside-line rods
3152 (struct Column_desc): add constructor
3153 (struct Rod_desc): add constructor
3154 (get_line_forces): check for forced page breaks here too
3156 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3157 support/elements cycles between InstrumentNames and AxisGroups
3159 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3161 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3163 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3164 make-txt-files target.
3166 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3167 make-txt-files target.
3169 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3171 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3174 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3176 * Documentation/user/instrument-notation.itely,
3177 input/regression/breathing-sign-ancient.ly,
3178 input/test/divisiones.ly: Removed redundant property settings for
3181 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3182 fix lyrics alignment problems. They are implemented now as scheme
3183 functions that add the appropriate unicode char to the first lyric
3184 event rather than adding a separate lyric event. Minor edit of
3187 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3189 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3190 pollute src dir with built .txt files, but install directly from
3191 Documentation/topdocs/out/
3193 * buildscripts/output-distance.py
3194 (ComparisonData.create_html_result_page): put version/directories
3197 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3200 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3201 Patch by Karl Hammar
3203 * buildscripts/readlink.py: add file.
3204 Patch by Karl Hammar
3206 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3208 * lily/tuplet-number.cc (print): prevent stencil from being
3211 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3213 * scm/stencil.scm (write-system-signature): explicitly
3214 -well, superfluously- close output port.
3216 * buildscripts/output-distance.py (main): oops. Add extra argument.
3218 2006-06-05 Graham Percival <gpermus@gmail.com>
3220 * Documentation/user/music-glossary.tely: clarified example
3221 from Francisco Vila, thanks!
3223 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3225 * input/regression/spacing-section.ly: new file.
3227 * lily/input.cc (programming_error): new function.
3229 * lily/spacing-engraver.cc (try_music): new function. Accept
3230 spacing-section-event
3232 * lily/spacing-spanner.cc (set_springs): take slices of all
3233 columns for spacing.
3235 * lily/include/paper-column.hh (class Paper_column): add
3236 Paper_column::compare.
3238 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3240 * scm/define-music-types.scm (music-descriptions): add
3243 * lily/music-iterator.cc (report_event): use programming_error for
3244 sending non-event error.
3246 * lily/input.cc (programming_error): new function
3248 * buildscripts/output-distance.py (main): use compare-XXX for
3250 (main): --threshold option, default at 0.30
3252 * output-distance.py (main): add --threshold option.
3254 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3256 * scm/paper-system.scm (paper-system-annotate): fix problem when
3257 annotating an empty system
3259 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3261 * GNUmakefile.in: reinstate old web tar/copying.
3263 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3265 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3266 nothing changes. (Erik S)
3268 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3271 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3273 * scm/define-markup-commands.scm (whiteout): do not force
3274 foreground color of argument markup to black.
3276 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3277 the left of the arrow, instead of below the arrow name, so that,
3278 when two little arrows are vertically stacked, their dimensions
3279 and name should not overlap. Add a color key parameter.
3281 * scm/paper-system.scm (paper-system-annotate): Annotate
3282 next-space+next-padding instead of next-space. Annotate space
3283 between next-padding and next-space+padding, respectively, and
3284 following system extent and refpoint-Y-extent. Use colors.
3286 * scm/page.scm (annotate-page): translate annotations slightly to
3289 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3291 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3292 fix for x-staff slurs. Thanks Joe!
3294 * buildscripts/output-distance.py
3295 (SystemLink.output_expression_change_count): keep track of changed
3296 details, and dump in details html page.
3298 * input/regression/figured-bass-staff.ly: add note about setting
3299 properties in Staff context.
3301 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3302 add slurs and ties to support too.
3304 * buildscripts/output-distance.py (main): set dest_dir
3305 argument. Add --max-count option.
3307 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3309 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3310 shortcuts for special unicode chars that are useful in chant
3311 notation. Revised exisiting and added new comments.
3313 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3315 * make/mutopia-rules.make: remove duplicate recipe.
3317 2006-06-02 Werner Lemberg <wl@gnu.org>
3319 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3320 Add support for U+0132 (IJ) and U+0133 (ij).
3322 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3324 * buildscripts/output-distance.py (FileLink): new class. collect
3325 info systems from one .ly file.
3326 (FileLink.link_files_for_html): further tweaks.
3328 2006-06-02 Graham Percival <gpermus@gmail.com>
3330 * tex/texinfo.tex: partial fix for @funindex.
3332 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3335 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3337 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3339 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3340 @example too. Backportme.
3342 2006-06-02 Graham Percival <gpermus@gmail.com>
3344 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3345 from Werner Lemberg.
3347 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3349 * Documentation/user/music-glossary.tely: additional spanish
3350 updates and a lyrics fix in an example.
3352 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3354 * scm/define-grob-properties.scm: Previous patch contained
3355 spurious line from another patch not yet committed. Fixed.
3357 * scm/define-grob-properties.scm: Add missing doc strings for
3360 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3362 * buildscripts/output-distance.py
3363 (ComparisonData.write_text_result_page): separate the scores, sort
3366 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3369 * buildscripts/output-distance.py (me_path): use argv[0] for
3371 (ComparisonData.img_cell): use colored borders.
3373 * scm/stencil.scm (write-system-signature): escape newlines too.
3374 (write-system-signature): use (1,-1) interval for empty interval
3376 2006-01-01 Graham Percival <gpermus@gmail.com>
3378 * Documentation/user/music-glossary.tely: Spanish updates
3379 from Francisco Vila.
3381 * Documentation/user/lilypond-book.itely: addition from
3384 * Documentation/user/ various: edits, small additions
3387 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3389 * GNUmakefile.in (tree-lib-prefix-current):
3390 (tree-share-prefix-current): Use version number in tree, add
3393 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3395 * GNUmakefile.in: write VERSION, again.
3397 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3398 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3400 * stepmake/aclocal.m4: robuster version detection.
3402 * buildscripts/output-distance.py
3403 (ComparisonData.create_html_result_page): copy only if file
3404 exists, fixup src paths.
3406 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3408 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3410 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3411 Another datarootdir reto.
3413 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3414 available. This should be moved to postinstall-lilypond-doc.
3416 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3418 * GNUmakefile.in: simplify local-WWW-post.
3419 remove -type l from find.
3421 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3422 fixes. Don't follow symlinks.
3423 (ComparisonData.create_html_result_page): remove previous results.
3424 insert ../python in path.
3426 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3428 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3430 * config.make.in (datadir): Add datarootdir to silence autoconf.
3432 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3434 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3436 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3438 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3439 slash beams too wide.
3441 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3443 * VERSION: release 2.9.7
3445 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3447 * lily/relocate.cc (read_relocation_dir): Do not blindly
3450 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3452 * lily/parser.yy: replace THIS by PARSER
3454 * Documentation/index.html.in: add link to test-results.html page.
3456 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3458 * scm/translation-functions.scm (format-bass-figure): translate
3459 digits over 10 to the left
3461 * scm/define-markup-commands.scm (translate-scaled): new markup.
3463 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3466 * ly/engraver-init.ly: add Figured_bass_engraver
3468 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3470 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3472 * lily/score-engraver.cc (announce_grob): only note START announces.
3474 * lily/include/engraver-group.hh (Translator_group):
3475 acknowledge_hash_table_ is now drul.
3477 * lily/engraver.cc (announce_end_grob): new method.
3479 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3481 * lily/translator-dispatch-list.cc (create): take start_end argument.
3483 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3484 acknowledge_static_array_ to drul
3486 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3488 * scm/define-grob-interfaces.scm
3489 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3491 * scm/define-grobs.scm (all-grob-descriptions): add
3492 BassFigureAlignmentPositioning
3494 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3495 number stays up to date. Backportme.
3497 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3499 * Documentation/user/basic-notation.itely (Bar lines): Document
3502 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3504 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3506 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3507 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3510 * Resurrect `scons lily' build.
3512 * SConstruct (symlink_tree): Bugfix: link
3513 music-drawing-routines.ps to file iso directory.
3515 * lily/SConscript: Remove kpath-guile from LIBS.
3517 * SConstruct (libdir_package_version): Typo.
3518 (configure): Comment-out fontforge for lack of fontforge.pc .
3519 Also add libdir* to environment.
3521 2006-05-30 Graham Percival <gpermus@gmail.com>
3523 * Documentation/user/ various: minor additions from mailist and
3526 2006-05-30 Paco <fravd@ya.com>
3528 * Documentation/user/music-glossary.tely: numerous corrections and
3529 some new translations.
3531 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3535 * buildscripts/output-distance.py
3536 (ComparisonData.create_html_result_page): new routine: summarise
3537 results in HTML page with images.
3538 (ComparisonData.create_text_result_page): create summary text files too.
3540 * GNUmakefile.in (web-ext): package .signature files too. They
3543 * scm/stencil.scm (write-system-signature): typo.
3545 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3547 * scm/stencil.scm (write-system-signature): better escaping.
3548 only write signature for music systems, not for markup systems.
3550 * scm/framework-ps.scm (output-framework): dump-signatures support
3553 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3555 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3556 for -dno-point-and-click
3558 * lily/grob.cc (get_print_stencil): don't read
3559 point_and_click_global to determine whether to set grob-cause.
3561 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3563 * buildscripts/output-distance.py (main): new function.
3564 (ComparisonData): new class.
3566 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3567 careful with generating new LedgerLineSpanners.
3569 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3571 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3572 context. This fixes double ledger lines in output.
3574 * lily/system.cc (get_paper_system): remove 3 layer limit.
3576 * buildscripts/output-distance.py (SystemLink.distance): new
3577 file. Compare signatures.
3579 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3581 * lily/grob-array.cc (remove_duplicates): rename from
3582 uniq(). Sort before calling uniq() so it actually works.
3584 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3586 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3587 \version from lilypond file snippet.
3588 (Lilypond_file_snippet.ly): oops. typo.
3589 (find_toplevel_snippets): urgh. again.
3591 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3592 prevent duplicated broken items in output.
3594 * scm/framework-eps.scm (output-classic-framework): only dump if
3595 dump-signatures is set.
3597 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3599 * scm/stencil.scm (write-system-signature): new routine: write
3600 python parseable signature of a separate paper system.
3603 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3605 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3609 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3611 * translator-group.cc: send music events to engravers in
3612 non-bottom contexts.
3614 * tuplet-engraver.cc: process tuplet brackets in correct order.
3616 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3618 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3619 arg 2 might point us to a new binary (patch by Karl Hammar)
3621 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3623 * VERSION (PACKAGE_NAME): release 2.9.6
3625 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3627 * Documentation/user/*.itely: 2nd
3628 attempt: replace funindex -> findex globally.
3630 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3632 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3633 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3635 * scm/define-music-display-methods.scm: display methods for
3636 breaks. Fix \applyOutput.
3638 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3640 * Documentation/user/macros.itexi: comment out funindex expansion.
3642 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3645 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3646 Karl Hammar. Backportme.
3648 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3650 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3652 * Documentation/user/programming-interface.itely (Running a
3653 function on all layout objects): idem.
3655 * Documentation/user/introduction.itely (Automated engraving):
3656 update \applyOutput syntax
3658 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3659 remove debugging hook.
3661 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3664 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3666 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3667 TEXI2DVI_FLAGS to texi2dvi invocation.
3669 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3671 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3672 works. More work is done by iterator now, and engraver has been
3673 very much simplified.
3675 * lily/translator-group.cc: try_music is now invoked through a
3678 * lily/*-iterator.cc: Massive cleanups. Junked
3679 try_music_in_children globally. Renamed try_music to report_event,
3680 and made that method descend to a bottom context automatically.
3682 * lily/event-iterator.cc: New file.
3684 * lily/output-property-iterator.cc,
3685 lily/old-lyric-combine-music-iterator.cc: Removed.
3687 * python/convert-rules.py: Modified the syntax for \applyOutput.
3689 2006-05-23 Graham Percival <gpermus@gmail.com>
3691 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3694 * Documentation/user/ various: stuff that might have helped
3695 to fix the pdf creation, plus some minor doc additions.
3697 * Documentation/user/changing-defaults.itely: remove @b from
3698 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3700 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3702 * lily/beaming-pattern.cc (beamify): deal with negative start
3703 moments for beaming patterns.
3705 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3707 * lily/beaming-info.cc (beamify): new function: read beatLength
3708 and beatGrouping from context.
3710 * input/regression/beam-beat-grouping.ly (Module): new file.
3712 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3714 * lily/beam.cc (get_beam_segments): generate events for
3715 max_connect_ case too.
3716 (get_beam_segments): read Stem::max-beam-connect.
3718 * input/regression/beam-single-stem.ly: new file.
3720 * lily/stem.cc (set_beaming): use #f as signaling value for
3723 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3725 * lily/beam.cc (set_beaming): read clip-edges property.
3726 (calc_direction): don't suicide for single stem.
3728 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3729 argument, remove 1<<15 hack. Remove clip_edges()
3731 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3733 2006-05-21 Graham Percival <gpermus@gmail.com>
3735 * Documentation/user/basic-notation.itely: reorg.
3737 * Documentation/user/ various: minor fixes.
3739 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3741 * lily/stencil-expression.cc (register_stencil_head): opps, append
3742 to cdr of static SCM object.
3744 2006-05-19 Graham Percival <gpermus@gmail.com>
3746 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3747 update framework for command index. DOC WRITERS: use @funindex
3748 instead of @cindex @code{}.
3750 * Documentation/user/ various: replace @cindex @code{} => @funindex
3752 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3754 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3755 case positions is set manually.
3757 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3759 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3762 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3764 * Documentation/user/changing-defaults.itely (Contexts explained):
3765 use absolute dimension for @image.
3767 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3768 out image for illustration too.
3769 ($(outdir)/%.png): add more png <-> eps rules.
3771 2006-05-17 Graham Percival <gpermus@gmail.com>
3773 * Documentation/user/ various: remove trailing whitespace, cosmetic
3774 change to reduce changes produced by diff.
3776 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3778 * lily/main.cc (do_chroot_jail): correctness tweak.
3780 * python/lilylib.py (system): import subprocess in system () only.
3782 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3784 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3785 variable. Backportme.
3787 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3789 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3791 2006-05-17 Werner Lemberg <wl@gnu.org>
3793 * lily/lexer.ll (init_signature_has_table): Add
3794 `scm-scm-music-music'.
3796 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3797 (Generic_prefix_music_scm): Add rule for it.
3799 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3800 `quoted-transposition' property.
3802 * ly/music-functions-init.ly (transposedCueDuring): New function.
3804 * scm/define-music-properties.scm (all-music-properties): Updated.
3806 * Documenation/topdocs/NEWS.itely: Document it.
3808 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3810 * python/lilylib.py (system): move import subprocess to system()
3813 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3815 * VERSION (PATCH_LEVEL): release 2.9.5
3817 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3820 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3822 2006-05-16 Graham Percival <gpermus@gmail.com>
3824 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3826 * Documentation/user/ various: minor fixes.
3828 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3830 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3832 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3834 * Documentation/user/advanced-notation.itely (Instrument names):
3835 Modified obsolete instruction on how to move instrument names away
3836 from the staves. Hmm, at second thought the bug probably has been
3837 solved, so the full bug description should probably be removed.
3839 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3841 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3842 currentCommandColumn.
3844 * lily/hairpin.cc (print): also add padding for non-neighbor
3847 * scm/define-context-properties.scm
3848 (all-user-translation-properties): add hairpinToBarline
3850 * input/regression/hairpin-to-barline.ly: new file.
3852 * lily/context.cc (internal_send_stream_event): thinko fix.
3854 * lily/tie.cc (set_default_control_points): robustness fix.
3856 * python/musicxml.py (Part.interpret): don't complain about
3857 incomplete measures.
3859 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3860 new music if last_event_chord() returned None.
3862 * python/musicxml.py (Part.interpret): skip back over chord notes.
3864 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3866 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3867 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3868 lily/slash-repeat-engraver.cc,
3869 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3870 iterator sends PercentEvents
3872 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3873 rework tuplets: send start/stop events to engraver
3875 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3876 dispatchers event-source and events-below to Context
3878 2006-05-15 Graham Percival <gpermus@gmail.com>
3880 * Documentation/user/README.txt: update info for doc writers.
3882 * Documentation/user/programming-interface.itely: integrate
3883 Nicolas' fixes for chapter rewrite.
3885 * Documentation/user/ various: minor fixes.
3887 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3889 * lily/clef-engraver.cc: cleanup.
3891 * Documentation/user/GNUmakefile: dist context-example.eps too.
3893 * lily/key-engraver.cc (create_key): use
3894 explicitKeySignatureVisibility for cancellation too.
3896 * lily/font-config.cc (init_fontconfig): don't close file if
3899 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3901 * Documentation/topdocs/NEWS.tely: niente and rotation news
3903 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3905 * lily/include/stencil.hh
3906 * lily/stencil.cc (rotate): new function. Makes it possible
3907 to rotate a stencil around a given offset.
3909 * lily/grob.cc (get_print_stencil): add rotation support
3911 * lily/stencil-interpret.cc (interpret_stencil_expression):
3912 add rotation support
3914 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3916 * scm/define-grob-properties.scm: add 'rotation property
3918 * scm/define-markup-commands.scm: add rotate markup command
3920 * scm/output-ps.scm: add rotation support in PostScript backend
3922 * scm/output-svg.scm: add rotation support in SVG backend
3924 2006-05-13 Graham Percival <gpermus@gmail.com>
3926 * Documentation/user/music-glossary.itely: French correction.
3928 * Documentation/user/programming-interface.itely: major
3929 new docs, some reorg, some info from Nicolas.
3931 * Documentation/user/ various: small fixes.
3933 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3935 * Documentation/user/programming-interface.itely (Markup
3936 programmer interface): Remove duplicate text.
3938 2006-05-12 Graham Percival <gpermus@gmail.com>
3940 * Documentation/user/context-example.eps: new file.
3942 * Documentation/user/changing-defaults.itely: set up file to
3945 * Documentation/user/programming-interface.itely: changes
3948 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3950 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3952 2006-05-11 Graham Percival <gpermus@gmail.com>
3954 * Documentation/user/programming-interface.itely: first round of
3955 editing and merging emails from Nicolas.
3957 * Documentation/user/scheme-tutorial: minor edit.
3959 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3961 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3963 (Xml_node.message): use it.
3965 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3966 oops. Add duration argument.
3968 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3970 * lily/paper-column-engraver.cc (make_columns):
3971 * scm/define-grobs.scm: Revert my previous change and set the default
3972 in define-grobs.scm instead.
3974 2006-05-09 Graham Percival <gpermus@gmail.com>
3976 * Documentation/user/changing-defaults.itely: general editing,
3977 info about \set and \override.
3979 * Documentation/user/tweaking.itely, advanced-notation.itely:
3980 fixes from Dave Luttinen, thanks!
3982 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3984 * lily/paper-column-engraver.cc (make_columns): By default, a column
3985 needs to be breakable.
3987 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3989 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3991 (musicxml_time_to_lily): idem
3992 (musicxml_key_to_lily): idem
3993 (instrument_drumtype_dict): dict for supported drumtypes.
3994 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3995 moments and pending mm rests
3996 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3997 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3998 (musicxml_voice_to_lily_voice): add mode change.
3999 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4000 speed and less memory usage (factor 5 to 10).
4001 (convert): write -defs.ly and driver file separately so people
4002 can script their own part extraction.
4004 * python/musicxml.py (minidom_demarshal_node): new function:
4005 separate minidom handling.
4006 (lxml_demarshal_node): new function: support lxml.etree too.
4007 (Xml_node.message): new function: verbose error message, with XML
4008 path to offending node.
4009 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4010 (Part_list.generate_id_instrument_dict): new method: collect
4011 instrument names, to be able to set drum_type.
4012 (Part.interpret): handle underfull measures
4013 (Part.interpret): assign instrument names.
4015 * python/musicexp.py (Output_printer.close): new method
4016 (MusicWrapper.print_ly): new class: support other modes,
4018 (BarCheck.print_ly): new class. Support bar checks, with comments
4019 and fancy barchecks.
4020 (NoteEvent.__init__): also set drum_type for drum notes.
4021 (MultiMeasureRest.lisp_expression): dump mm rests.
4023 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4024 line-break-permission if forbidBreak is not set.
4026 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4028 * scm/define-context-properties.scm:
4029 * scm/define-grob-properties.scm:
4030 * scm/define-grobs.scm:
4031 * scm/define-music-display-methods.scm:
4032 * scm/define-music-properties.scm:
4033 * scm/define-music-types.scm:
4034 * scm/music-functions.scm:
4035 * ly/declarations-init.ly:
4036 * lily/include/constrained-breaking.hh:
4038 * lily/spaceable-grob.cc:
4039 * lily/simple-spacer.cc:
4040 * lily/paper-score.cc:
4041 * lily/paper-column.cc:
4042 * lily/paper-column-engraver.cc:
4044 * lily/gourlay-breaking.cc:
4045 * lily/constrained-breaking.cc:
4046 * python/convertrules.py:
4047 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4048 "page-break-penalty" and "line-break-permission".
4049 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4050 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4052 * lily/bar-engraver.cc:
4053 * lily/beam-engraver.cc:
4054 * lily/forbid-break-engraver.cc:
4055 * lily/ligature-engraver.cc:
4056 * lily/paper-column-engraver.cc:
4057 * lily/percent-repeat-engraver.cc:
4058 * lily/score-engraver.cc:
4059 * lily/score-engraver.hh:
4060 * lily/paper-column-engraver.hh:
4061 Inter-engraver communication regarding line breaks is done through context
4062 properties (Score.forbidBreak) instead of function calls.
4064 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4066 * VERSION (PACKAGE_NAME): release 2.9.4
4068 2006-05-08 Graham Percival <gpermus@gmail.com>
4070 * Documentation/user/working.itely: proofreading from Dave
4073 * Doucmentation/user/README.txt: updated with manual style info.
4075 * Documentation/user/ various: trim linewidth to 78 chars.
4077 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4079 * scm/define-grob-properties.scm (all-internal-grob-properties):
4080 remove chord-tremolo property.
4082 * lily/beam.cc (get_beam_segments): don't use stem position as
4083 base for broken ends.
4085 2006-05-06 Graham Percival <gpermus@gmail.com>
4087 * Documentation/user/putting.itely: proofreading from Dave
4090 * Documentation/user/ various: more reorg and clarifications.
4092 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4094 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4096 * ly/music-functions-init.ly: new function featherDurations
4098 * lily/beam.cc: read grow-direction for feathered beaming.
4100 * Documentation/topdocs/NEWS.tely (Top): typo.
4102 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4104 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4107 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4108 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4109 used by music streams.
4111 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4112 lily/stream-event.cc, lily/stream-event-scheme.cc,
4113 lily/listener.cc, lily/scheme-listener.cc,
4114 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4115 lily/include/stream-event.hh, lily/include/listener.hh,
4116 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4117 Created data structures for music streams.
4119 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4121 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4122 construction of a beam.
4125 * flower/include/std-vector.hh (default_compare): use only one comparison.
4127 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4128 (note-by-number): further attachment fixes.
4130 * scm/lily-library.scm (ordered-cons): new function.
4131 (interval-index): new function
4133 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4135 * lily/note-head.cc (get_stem_attachment): new function.
4137 * scm/define-markup-commands.scm (note-by-number): read 'style
4140 * input/regression/markup-note.ly: show note-head style option.
4142 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4145 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4147 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4149 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4151 * lily/include/constrained-breaking.hh: GCC 4 fix.
4153 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4155 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4156 Replace it with functions get_line_forces and get_line_configuration.
4157 (class Simple_spacer): Make data private.
4158 Rewrite compression algorithm to be faster and simpler.
4160 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4161 * lily/gourlay-breaking.cc (solve):
4162 * lily/constrained_breaking.cc (space_line):
4163 Change it to the new simple-spacer code.
4165 * lily/paper-score.cc (get_paper_systems):
4168 Delay breaking the systems until they are requested.
4169 (find_break_indices):
4170 Use vsize for indices.
4172 Move the "Calculating line breaks" message here.
4174 * lily/system.cc (pre_processing):
4175 Move the "Calculating line breaks" message away from here.
4176 (break_into_pieces):
4177 Allow multiple calls to this function in sequence (with touching-but-
4178 not-overlapping breakpoints).
4180 * lily/constrained-breaking.cc:
4181 Replace most of the get_XXXX functions with get_line_details.
4182 Only calculate the force for each line. Calculate configurations only
4183 for the lines we will actually use.
4184 Replace cols_ with lines_.
4186 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4188 * mf/GNUmakefile (depth): remove FC_FIND.
4190 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4192 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4194 * scm/framework-ps.scm (write-preamble): new function.
4195 (write-preamble): load mac fonts via fondu, even if gs-font-load
4198 2006-05-03 Werner Lemberg <wl@gnu.org>
4200 * mf/GNUmakefile (FC_FIND): Fix typo.
4202 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4204 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4206 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4208 * stepmake/aclocal.m4: run python-config for crosscompiling
4211 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4212 -f png for HTML, TEXINFO formats.
4214 * input/tutorial/lbook-html-test.html: new file.
4216 * lily/include/tie-formatting-problem.hh (class
4217 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4218 [column, direction]. This fixes laissez vibrer ties.
4220 * flower/include/tuple.hh (struct Tuple2): new file.
4222 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4223 $(FCMATCH), only if $(NCSB_DIR) not set.
4225 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4227 * config.make.in (DOCUMENTATION): set FCMATCH.
4229 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4231 2006-05-03 Graham Percival <gpermus@gmail.com>
4233 * Documentation/user/ various: final round of reorg.
4235 * Documentation/user/instrument-notation.itely: some more
4236 fixes from Eduardo, thanks!
4238 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4240 * VERSION (PACKAGE_NAME): release 2.9.3
4242 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4244 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4246 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4248 * scm/define-grob-properties.scm (all-user-grob-properties):
4249 Correct typo, thanks to Eduardo.
4251 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4253 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4255 * buildscripts/lilypond-words.py (F): indent fix.
4257 * input/regression/tie-arpeggio-collision.ly: new file.
4259 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4260 function: store outlines per column rank.
4262 * lily/include/tie-configuration.hh (class Tie_configuration): add
4263 column_ranks_ to specification and configuration, to distinguish
4264 between ties for different heads in arpegiated chords.
4266 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4268 * *.py: more 4 space indents.
4270 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4272 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4274 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4276 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4278 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4280 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4282 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4284 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4286 * python/convertrules.py (conv): indent 4 for python files.
4288 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4290 * Documentation/user/changing-defaults.itely (Creating contexts):
4291 Clarify \new semantics.
4293 2006-04-28 Graham Percival <gpermus@gmail.com>
4295 * Documentation/user/ various: major new sections in the
4296 Learning manual, slight reorg elsewhere.
4298 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4300 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4302 * scm/framework-ps.scm (output-framework): remove PageMedia
4304 2006-04-27 Graham Percival <gpermus@gmail.com>
4306 * Documentation/user/ tweaks.itely, working.itely: new
4307 files, being more advanced "learning manual" chapters.
4309 * Documentation/user/ tutorial, putting, lilypond: reorg.
4311 2006-04-26 Graham Percival <gpermus@gmail.com>
4313 * input/regression/lyric-combine-polyphonic.ly: fixed test
4314 (no more "can't find context `one'" error).
4316 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4318 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4320 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4322 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4324 * lily/relocate.cc (read_relocation_dir): new function.
4326 2006-04-26 Graham Percival <gpermus@gmail.com>
4328 * Documentation/user/instrument-notation.itely: a few more fixes
4329 from Eduardo, thanks!
4331 * Documentation/user/README.txt: new file; contains info on
4332 style that used to be in lilypond.tely.
4334 * Documentation/user/ various: first round of doc reorg.
4336 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4337 graphic; this probably causes problems on some pdf
4338 viewers, notably Adobe Acrobat.
4340 2006-04-24 Graham Percival <gpermus@gmail.com>
4342 * Documentation/user/instrument-notation.itely: many alterations
4343 to Vocal music, from Eduardo Viera.
4345 2006-04-23 Graham Percival <gpermus@gmail.com>
4347 * Documentation/user/instrument-notation.itely: fix \new
4348 instead of \context problem.
4350 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4352 * lily/relocate.cc (expand_environment_variables): new function.
4354 (read_relocation_file): id.
4356 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4358 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4360 * ly/engraver-init.ly: remove old comments from TabVoice
4362 2006-04-20 Graham Percival <gpermus@gmail.com>
4364 * Documentation/user/instrument-notation.itely: added Erlend's
4365 latest doc patch, thanks!
4367 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4369 * lily/include/slur.hh:
4371 * lily/phrasing-slur-engraver.cc:
4372 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4373 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4374 Slur_engraver:: and putting it in
4375 Slur::auxiliary_acknowledge_extra_object ().
4377 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4379 * lily/note-collision.cc: fix a comment
4381 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4383 * stepmake/bin/add-html-footer.py: fix footer position in
4384 generated html files: before </body> and </html> tags.
4386 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4388 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4389 Earlier successive `make' commands finally compiled ok.
4391 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4393 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4395 * lily/include/stem-tremolo.hh:
4396 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4400 * lily/include/lookup.hh: add rotated_box ()
4402 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4404 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4405 been generated. Fixes "can't get `--help'" bug after make clean.
4407 * THANKS: alphabetize contributors.
4409 2006-04-17 Graham Percival <gpermus@gmail.com>
4411 * Documentation/user/instrument-notation.itely: added Erlend's
4412 tabs and banjo doc patch. Thanks!
4414 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4416 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4418 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4420 * scm/output-lib.scm: add some more predefined string tunings.
4422 * Documentation/user/instrument-notation.itely: and doc them.
4424 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4426 * ly/engraver.ly: Remove obsolete comments.
4428 * ly/gregorian-init.ly: Define default layout block.
4430 * input/puer-fragment.ly: Updated and extended.
4432 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4434 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4435 pdf conversion behaviour.
4437 * flower/file-name.cc (dir_name)
4438 (get_working_directory): Move from relocate.cc.
4440 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4442 * lily/relocate.cc: Encapsulate sys/stat.h in
4445 2006-04-14 Graham Percival <gpermus@gmail.com>
4447 * Documentation/user/ various: small updates from Cameron
4448 and Juergen, thanks!
4450 * Documentation/user/ various: small updates of my own.
4452 * THANKS: 2.7 -> 2.8.
4454 2006-04-11 Graham Percival <gpermus@gmail.com>
4456 * scm/define-context-properties.scm: typo.
4458 * Documentation/user/ : many more small updates.
4460 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4462 * scm/define-music-types.scm: disposed "docme".
4464 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4466 * lily/hairpin.cc: make niente circles a bit smaller.
4468 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4470 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4471 get-pfa and get-*-fonts targets.
4473 2006-04-10 Graham Percival <gpermus@gmail.com>
4475 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4476 music-glossary, programming-interface: more minor fixes
4479 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4481 * scm/define-context-properties.scm: another old \property update.
4482 This time tested for compiling!
4484 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4486 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4488 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4490 * scm/define-context-properties.scm (all-user-translation-properties):
4491 * Documentation/user/global.itely (Page formatting): Compile fix.
4493 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4495 * Documentation/user/advanced-notation.itely (Polymetric
4496 notation): Update the example to use the "+" symbol and add link
4497 to input/test/compound-time.ly.
4499 2006-04-08 Graham Percival <gpermus@gmail.com>
4501 * scm/define-grob-properties.scm: clarify docs for #'direction.
4503 * scm/define-context-properties.scm: update old \property override.
4505 * Documentation/user/ advanced-notation, global, lilypond-book:
4506 more minor doc updates.
4508 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4510 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4512 * scm/backend-library.scm (search-gs): oops.
4514 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4516 * scripts/lilypond-book.py (output): use base, not filename for href.
4518 * scm/backend-library.scm: only look for gs.
4520 * scripts/lilypond-book.py (output): fix printfilename.
4522 * lily/parser.yy (music_function_musicless_prefix): fold together
4523 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4525 * lily/slur.cc (print): only set font-size if not set yet.
4527 * lily/slur-configuration.cc (add_score): improved layout of debug
4530 2006-04-05 David Feuer <David.Feuer@gmail.com>
4532 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4533 (draw_circle): Hopefully fixed regression.
4534 Improved documentation for several procedures.
4536 2006-03-04 Werner Lemberg <wl@gnu.org>
4538 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4540 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4542 * scripts/musicxml2ly.py (bindir): add dynamic
4545 2006-04-04 Graham Percival <gpermus@gmail.com>
4547 * Documentation/user/ basic-notation, advanced-notation, putting,
4548 instrument-notation, invoking, lilypond, THANKS: another ream of small
4549 fixes from the Doc Helpers.
4551 2006-04-03 David Feuer <David.Feuer@gmail.com>
4553 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4555 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4557 * Cleaned up interfaces between PostScript and Scheme, and moved
4558 computations from PostScript to Scheme:
4560 * music-drawing-routines.ps
4561 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4562 with stroke_and_fill throughout.
4563 (euclidean_length, print_letter, draw_box): Deleted unused
4564 procedures. If someone needs draw_box, implement it using
4565 draw_round_box; don't duplicate code.
4566 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4567 Refactored/cleaned up interfaces.
4570 * output-ps.scm: reordered arguments to PostScript functions to
4571 match new interfaces
4572 (glyph-string): Rewrote glyph-string.
4573 (grob-cause): Replaced string-append with format.
4574 (repeat-slash): Rewrote to do computation here.
4575 (round-filled-box): Rewrote to do computation here.
4577 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4579 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4581 * stepmake/stepmake/toplevel- targets.make: print help info about
4584 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4586 * input/regression/hairpin-circled.ly: new file
4588 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4590 * lily/hairpin.cc (print): add support for circled tip
4592 * scm/define-grob-properties.scm: add circled-tip parameter
4594 * scm/define-grobs.scm: init circled-tip to false
4596 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4598 * scm/music-functions.scm (quote-substitute): set
4601 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4603 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4606 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4608 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4610 2006-03-31 David Feuer <david.feuer@gmail.com>
4612 * scm/framework-ps.scm:
4614 * scm/output-ps.scm: glyph-string now produces smaller, more
4615 readable, and probably faster PostScript. Several findfont
4616 scalefont setfont instances changed to selectfont
4617 Hacked-up string-appends changed to formats.
4619 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4621 2006-03-30 Graham Percival <gpermus@gmail.com>
4623 * scm/lily-library.scm: make "no version" warning message more polite.
4625 * lily/music.cc: add double quotes to failed octave check.
4627 * Documentation/user/ advanced-notation, changing-defaults,
4628 instrument-notation, invoking, music-glossary: whole bunch of minor
4631 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4633 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4634 $(buildscriptdir) iso. depth.
4636 * VERSION (PACKAGE_NAME): release 2.9.1
4638 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4640 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4642 * VERSION (PATCH_LEVEL): bump version number.
4644 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4647 * lily/pango-font.cc (pango_item_string_stencil): use
4650 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4651 $(outdir)/emmentaler-%.svg): remove canary.
4653 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4654 glyphnames if we have a ttf font.
4656 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4658 * Documentation/user/advanced-notation.itely (Font selection):
4659 Corrected reference to the font-family-override.ly example.
4661 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4663 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4664 stem-tremolo object in the stem (or else the stem might not be
4667 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4669 * lily/ttf.cc (print_trailer): only print existing glyphs.
4671 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4673 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4674 position the tremolo based on the position of the notehead.
4676 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4677 notes and update the texidoc line with the new positioning rules.
4679 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4681 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4683 * scripts/lilypond-book.py (Module): set default for linewidth if
4686 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4688 * VERSION (PACKAGE_NAME): release 2.9.0.
4690 * input/regression/stem-tremolo-position.ly: new file.
4692 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4694 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4696 * lily/stem-tremolo.cc (print): position
4697 the tremolo depending only on the end of the stem
4698 and not on the notehead
4699 (raw_stencil): center, on the middle staff line, the
4700 flag that is closest to the end of the stem (previously
4702 (calc_width): add this callback to shorten a tremolo when
4703 it is beamed or it is stemup with a flag
4704 (style): add this callback to make a tremolo rectangular when
4705 it is beamed or it is stemup with a flag
4706 (rotated_box): this is like Lookup::beam but makes a rotated
4707 rectangle instead of a parallelogram
4709 * lily/stem.cc (calc_stem_info): make sure the stem
4710 is long enough to fit the tremolo
4711 (calc-length): reduce the length of tremolo stems since the
4712 tremolo code is now capable of better positioning
4714 * scm/define-grobs.scm: make calc_width the default beam-width
4715 callback for stem-tremolo and add the style callback
4717 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4719 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4722 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4724 * lily/ttf.cc (make_index_to_charcode_map): restore old
4727 2006-03-28 Werner Lemberg <wl@gnu.org>
4729 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4731 2006-03-28 Graham Percival <gpermus@gmail.com>
4733 * THANKS: update for 2.9, add section for Documentation helpers.
4735 * Documentation/topdocs/NEWS.tely: compile fix.
4737 * Documentation/user/ basic-notation, global, advanced-notation,
4738 examples.itely: minor fixes from mailist.
4740 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4742 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4745 * lily/ttf.cc (print_trailer): use it.
4747 * lily/pango-font.cc (get_unicode_name): new function.
4749 * lily/ttf.cc (make_index_to_charcode_map): move function from
4751 (print_trailer): substitute uniXXXX name if applicable.
4753 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4754 (pango_item_string_stencil): use it to generate uniXXXX names.
4756 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4757 note heads, for uniform widths in shape note output.
4758 (overdone_heads): hmm. remove them again.
4760 * scripts/lilypond-book.py (output): add links to filenames.
4762 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4764 * lily/note-collision.cc (get_clash_groups): only consider when
4765 Note_column::dir <> CENTER.
4767 * scripts/lilypond-book.py (get_option_parser): init output_name
4770 2006-03-24 Graham Percival <gpermus@gmail.com>
4772 * Documentation/topdocs/NEWS.tely: add @end itemize
4774 * Documentation/user/ global, advanced-notation: minor
4777 2006-03-23 Graham Percival <gpermus@gmail.com>
4779 * Documentation/user/ lilypond.tely, music-glossary,
4780 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4782 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4784 * mf/GNUmakefile: don't install .enc files.
4786 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4788 * VERSION (PATCH_LEVEL): bump to 2.9.0
4790 2006-03-22 Graham Percival <gpermus@gmail.com>
4792 * Documentation/user/advanced-notation.itely: minor fixes
4795 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4797 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4799 * branch lilypond_2_8
4801 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4803 * scripts/lilypond-book.py (samefile): new function, for windoze
4806 2006-03-21 Graham Percival <gpermus@gmail.com>
4808 * ly/engraver-init.ly: add info about StaffGroup.
4810 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4812 * input/regression/stem-direction-context.ly: idem.
4814 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4818 * input/regression/page-layout-twopass.ly: comment out \markup so
4821 * lily/instrument-name-engraver.cc (finalize): add to instrument
4822 name global System. This also fixes chopped instrument names, but
4823 doesn't crash when there are slurs/beams.
4825 * lily/slur-configuration.cc (add_score): disallow negative slur
4828 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4830 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4832 * lily/instrument-name-engraver.cc (process_music): kludge: add
4833 InstrumentName spanner to axis group of left bound. Fixes chopped
4834 off instrument names in EPS images.
4836 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4838 * scripts/abc2ly.py (option_parser): update to 2.7.40
4840 2006-03-20 Graham Percival <gpermus@gmail.com>
4842 * THANKS: move small doc contributors to SUGGESTIONS.
4844 * Documentation/user/ basic-notation, advanced-notation,
4845 global: small changes from mailist.
4847 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4849 * Documentation/user/advanced-notation.itely (Text marks): update
4850 for new rehearsalMarkAlignSymbol convention.
4852 * VERSION (PATCH_LEVEL): bump version.
4854 * input/test/instrument-name-align.ly: new file.
4856 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4858 * input/test/instrument-name-align.ly: new file. Document how to
4859 align instrument names.
4861 * lily/mark-engraver.cc: remove properties.
4863 * scm/define-context-properties.scm
4864 (all-user-translation-properties): remove align symbol properties
4865 for barnumber/reh. mark.
4867 * lily/break-align-interface.cc (self_align_callback): new
4868 interface, new function. Look at complete alignment. This handles
4869 tunable break alignments in case break-align-symbols are missing.
4871 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4873 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4875 * python/convertrules.py (conv): mark/bar number alignment rule.
4877 * lily/break-align-interface.cc (calc_positioning_done): also
4878 store offset from last visible break-alignment to its
4879 neighbor. This makes alignment on non-visible objects more reliable.
4881 * po/lilypond.pot (Module): ran po-replace.
4883 * input/regression/tie-single-manual.ly (Module): new file.
4885 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4886 look at has_manual_position_.
4887 (from_ties): set has_manual_position_ if tie has staff-position set.
4889 * lily/tuplet-bracket.cc (calc_positions): idem.
4891 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4894 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4896 * scm/define-markup-commands.scm (smallCaps): new markup command
4897 for turning a text to small caps using smaller font size and upper
4900 2006-03-17 Graham Percival <gpermus@gmail.com>
4902 * Documentation/user/ examples, instrument-notation,
4903 advnaced-notation: minor fixes from mailist.
4905 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4907 * Documentation/user/tutorial.itely (First steps): change example
4910 2006-03-17 Graham Percival <gpermus@gmail.com>
4912 * Documentation/user/ examples, advanced: minor changes from mailist.
4914 * THANKS: add Geoff Horton, for documentation stuff.
4916 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4918 * python/lilylib.py (system): revert have_select kludge.
4920 * Documentation/user/tutorial.itely (Commenting input files):
4921 update version numbers in doc.
4923 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4924 bound-padding to multi-measure-interface
4926 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4928 * input/test/engraver-example.ily: update version number.
4930 * VERSION (PACKAGE_NAME): release 2.7.39
4932 * lily/note-spacing.cc (get_spacing): heighten threshold where
4933 accidentals/arpeggios influence previous spacing fully.
4935 * lily/rest.cc (y_offset_callback): only use direction if
4936 staff-position wasn't set before.
4938 * lily/bar-number-engraver.cc: add support for
4939 barNumberAlignSymbol.
4940 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4942 * lily/pointer-group-interface.cc (set_ordered): new function.
4943 (add_unordered_grob): new function.
4945 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4946 to ordered, unless the opposite has been proved. This fixes
4947 random reordering of large object groups across linebreaks,
4950 * lily/main.cc (do_chroot_jail): printf format fix.
4952 * lily/tie-formatting-problem.cc (generate_configuration):
4953 multiply y-shift for dot with direction.
4955 * scm/define-markup-commands.scm (note-by-number): put (magstep
4956 size) in y-attach too.
4958 * Documentation/topdocs/NEWS.tely (Top): show override.
4960 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4961 direction for stems.
4963 2006-03-15 Graham Percival <gpermus@gmail.com>
4965 * Documentation/user/ changing-defaults, global: minor
4968 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4970 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4972 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4973 breakable items after uniformly stretched notes.
4975 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4976 outline with outer edge of note heads. This prevents infinity
4977 problems with tied whole notes.
4979 * scripts/lilypond-book.py (do_file): use os.popen
4981 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4983 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4985 * Documentation/user/invoking.itely: Add ragged-right to bug report
4988 2006-03-14 Graham Percival <gpermus@gmail.com>
4990 * Documentation/user/global.itely: small fix from mailist.
4992 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4994 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4995 file descriptor returned by tempfile.mkstemp() when writing
4996 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4999 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5001 * po/fi.po: newline bugfix.
5003 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5005 * scm/paper.scm (paper-alist): Rounding fixes.
5007 2006-03-13 Graham Percival <gpermus@gmail.com>
5009 * Documentation/user/ changing-defaults, instrument-notation,
5010 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5012 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5016 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5018 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5021 * python/lilylib.py (print_environment): move ps_page_count to
5024 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5026 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5028 * scm/framework-ps.scm (embed-document): new function. Use to
5031 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5033 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5035 * Documentation/user/instrument-notation.itely (Setting simple
5036 songs): Added \book{...} around the full example, so the separate
5037 markups are included in the printed example.
5039 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5041 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5044 * python/lilylib.py (system): rewrite system() using
5045 subprocess. Remove >& redirection trickery.
5047 2006-03-11 Graham Percival <gpermus@gmail.com>
5049 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5050 notation-appendices.itely: minor fixes from mailist.
5052 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5054 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5055 unsplit man also needs images.
5057 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5059 * VERSION (PACKAGE_NAME): 2.7.38 released.
5061 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5063 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5066 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5068 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5069 respects the Score.skipTypesetting property.
5071 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5073 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5074 Prolog. No %%EOF after CFF file.
5076 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5078 * lily/constrained-breaking.cc (get_max_systems): used to return a
5080 (combine_demerits): use pointers to reduce copying data
5081 (calc_subproblem): idem
5082 (get_page_penalty): add page turn penalties
5084 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5086 * Documentation/user/invoking.itely (Invoking lilypond): better
5087 explanation of -e usage.
5089 * lily/main.cc (main_with_guile): don't append to
5090 init_scheme_code_string
5092 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5094 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5096 * scripts/convert-ly.py (do_options): don't print help for
5099 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5100 @code and @example. Update from texinfo.tex from CVS.
5102 2006-03-08 Graham Percival <gpermus@gmail.com>
5104 * Documentation/user/scheme-tutorial.itely: clarifies distances
5105 measured in staff-spaces.
5107 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5109 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5110 consider[k] is true.
5112 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5114 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5115 consider columns that have originals. Unifies spacing for mm
5116 rests around line breaks.
5118 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5119 (set_text_rods): idem.
5120 (calculate_spacing_rods): new function: share code between
5121 set_text_rods and set_spacing_rods.
5122 (set_text_rods): take extents of bounds into account.
5124 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5126 * Documentation/user/basic-notation.itely (Writing music in
5127 parallel): don't use relative.
5129 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5131 * ly/music-functions-init.ly (Module): add shiftDurations
5133 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5135 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5137 * ly/engraver-init.ly: init vocalName to nil.
5139 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5141 * scm/music-functions.scm (music->make-music): bugfix,
5142 KeyChangeEvents are now handled correctly.
5144 * scripts/lilypond-book.py: Add --debug option.
5146 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5148 * python/lilylib.py: add tempfile.
5150 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5152 * VERSION (PACKAGE_NAME): release 2.7.37
5154 * python/lilylib.py (ps_page_count): remove make_ps_images().
5155 (ps_page_count): remove mkdir_p
5156 (system): remove cleanup_temp.
5157 (exit): remove lilypond_version_(check)
5158 (error_log): remove pseudo_filter_p
5163 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5166 * lily/accidental-engraver.cc (make_standard_accidental): only add
5167 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5169 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5170 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5171 Make incompatibilities.
5173 * scm/output-ps.scm (grob-cause): replace backslashes by /
5174 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5176 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5178 * cygwin/GNUmakefile: Install fixes.
5180 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5182 * lily/note-head.cc (head::get_balltype): Compile fix.
5184 * flower/file-name.cc (dos_to_posix): Flower string fix.
5186 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5188 * python/lilylib.py: pychecker cleanups.
5190 * scripts/lilypond-book.py
5191 (Lilypond_snippet.output_print_filename): pychecker cleanups
5193 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5195 * python/lilylib.py (underscore): remove identify() , warranty()
5197 * ps/music-drawing-routines.ps: change Border routine for GSView
5200 * lily/stem.cc (height): use quantize-positions. This triggers
5201 set_stem_lengths, so scripts on beamed stems are handled correctly.
5203 * lily/side-position-interface.cc (aligned_side): check if edges
5204 of script are inside staff. Fixes accent of edge of the staff.
5206 * input/regression/staccato-pos.ly: more examples.
5208 * stepmake/aclocal.m4 (depth): fix bashism.
5210 * lily/lyric-combine-music-iterator.cc: move from
5211 new-lyric-combine-iterator.cc
5212 (process): add pending_grace_lyric_ member to delay lyrics on
5215 * lily/system-start-text.cc (print): suicide if we don't have any
5216 elements. Fixes hara kiri'd instrument names.
5218 * scripts/mup2ly.py (Module): remove.
5220 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5222 * Documentation/user/global.itely (A single music expression):
5223 close @lilypond properly
5225 * lily/volta-bracket.cc (modify_edge_height): change from
5226 after_line_breaking_callback. Suicide last bracket if appropriate.
5228 * python/lilylib.py: strip getopt support
5230 * scripts/etf2ly.py (do_options): use optparse
5232 * scripts/midi2ly.py: optparse, strip lilylib copy.
5234 * scripts/abc2ly.py (voices): use optparse.
5236 * stepmake/stepmake/generic-vars.make: new function absdir.
5238 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5240 * scripts/lilypond-book.py (find_file): use global_options for
5243 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5246 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5248 * python/lilylib.py (get_global_option): ughness for extracting
5249 global options from lilylib.
5250 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5252 * scripts/lilypond-book.py (get_option_parser): use optparse for
5253 option handling. Put options in global_options variable.
5255 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5257 * Documentation/index.html.in: clarify.
5259 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5261 * scm/layout-page-layout.scm (write-page-breaks): add a
5262 music-system-heights property to the page layout output.
5264 * scm/page.scm (make-page-stencil): take footer into account when
5265 computing the 'space-left page property
5266 (annotate-space-left): take footer into account when annonating
5269 2006-02-28 Graham Percival <gpermus@gmail.com>
5271 * Documentation/user/ advanced-notation, global: more (final)
5272 docs for music expressions, removed special fermatas.
5274 2006-02-27 Graham Percival <gpermus@gmail.com>
5276 * Documentation/user/ basic-notation, global: minor changes
5279 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5281 * scm/framework-ps.scm:
5282 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5283 layer for inf? and nan? from framework-ps to lily-library.
5285 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5287 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5288 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5290 * buildscripts/substitute-encoding.py (Module): remove file.
5292 * mf/GNUmakefile: more PFA strippage.
5294 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5296 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5299 * scm/framework-ps.scm: remove font name munging.
5301 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5303 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5305 * scm/markup.scm (define-markup-command): change
5306 def-markup-command to define-markup-command
5308 * scm/music-functions.scm (define-music-function): change
5309 def-music-function to define-music-function.
5311 * python/convertrules.py (conv): rules for def-music-function
5312 and def-markup-commands
5314 * Documentation/user/programming-interface.itely,
5315 input/no-notation/display-lily-tests.ly,
5316 input/regression/lily-in-scheme.ly,
5317 input/regression/markup-user.ly,
5318 input/regression/music-function.ly, input/regression/tie-chord.ly,
5319 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5320 ly/gregorian-init.ly: use new macro names (define-music-function,
5321 define-markup-command).
5323 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5325 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5326 (output): add comments to lp-book latex output.
5328 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5331 2006-02-23 Graham Percival <gpermus@gmail.com>
5333 * Documentation/user/ tutorial, global: minor changes.
5335 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5337 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5338 blocks (for make 3.80)
5340 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5341 \notemode so that user should not have to explicitely type it.
5343 * scm/define-music-display-methods.scm: various
5344 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5347 * input/no-notation/display-lily-tests.ly: new tests for
5348 \applyOutput and \applyContext
5350 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5352 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5353 changed it slightly so that the number of systems returned by
5354 solve () will be the same as the last value passed to resize
5355 (). I've also added more documentation, removed casts, fixed style
5356 problems and put in some recovery if constraints aren't satisfied."
5358 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5360 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5361 for emacs < 22 compatibility.
5362 (count-rexp): Use it.
5363 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5364 substring juggling (Milan Zamazal).
5366 2006-02-23 Graham Percival <gpermus@gmail.com>
5368 * Documentation/user/ basic-notation, advanced-notation,
5369 global.itely, invoking.itely, tutorial,itely:
5370 minor fixes from mailist.
5372 * scm/define-markup-commands.scm: improve docs of \filled-box.
5374 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5376 * Documentation/index.html.in: changes concern the previous release.
5378 * input/regression/+.ly: cultivate typographical terminology.
5380 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5382 * scm/define-grob-interfaces.scm (parentheses-interface): add
5383 padding to parentheses-interface.
5385 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5386 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5388 * VERSION (PATCH_LEVEL): release 2.7.36
5390 * lily/slur.cc: add avoid-slur (ugh.)
5392 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5393 intersection gets smaller. This fixes slurs over extreme points.
5395 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5396 stems with neutral-direction set.
5398 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5400 * lily/open-type-font.cc (load_table): format error.
5402 * lily/change-iterator.cc (process): format fix.
5404 * flower/include/international.hh (_f): idem.
5406 * flower/include/std-string.hh: add format printf attribute.
5408 * scm/define-grobs.scm (all-grob-descriptions): height of all
5409 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5411 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5414 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5416 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5418 * input/regression/: upgraded syntax for some files.
5420 * THANKS: Add bughunters.
5422 2006-02-22 Graham Percival <gpermus@gmail.com>
5424 * Documentation/user/ invoking.itely, advanced-notation.itely,
5425 global.itely: long-awaited "let's make chapter 10 not suck"
5426 update. Rearrange chapter 10; now called "global issues",
5427 addresses file structure, etc. Some info from other files
5428 moved into global.itely.
5430 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5432 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5433 catch trill-span-event notes.
5435 * Documentation/user/examples.itely (Ancient notation templates): typo.
5438 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5440 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5442 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5444 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5446 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5447 froum Laissez_vibrer_engraver.
5449 * ly/declarations-init.ly (repeatTie): add \repeatTie
5451 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5453 * scm/define-grob-properties.scm (all-user-grob-properties): add
5454 head-direction property.
5456 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5457 from_lv_ties. Take head direction argument.
5459 * lily/semi-tie-column.cc: rename from
5460 laissez-vibrer-tie-column.cc. Rename class too.
5462 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5465 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5467 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5469 (find_breaks): idem.
5471 2006-02-21 Graham Percival <gpermus@gmail.com>
5473 * Documentation/user/advanced-notation.itely: fixed make-moment]
5476 * Documentation/user/basic-notation.itely: more clarification to
5479 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5481 * lily/include/constrained-breaking.hh (class
5482 Constrained_breaking): new file.
5484 * lily/constrained-breaking.cc (resize): new file.
5486 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5488 * Documentation/user/advanced-notation.itely (Clusters): insert
5491 * lily/tie-column.cc (calc_positioning_done): support for
5494 * lily/tie-formatting-problem.cc
5495 (generate_extremal_tie_variations): factor out.
5496 (score_ties_configuration): annotate all tie
5497 (print_ties_configuration): new routine.
5498 (generate_configuration): nudge extremal ties outside of the head
5500 (score_ties_configuration): oops. convert to staff-space before
5501 determining position symmetry.
5503 2006-02-20 Graham Percival <gpermus@gmail.com>
5505 * Documentation/user/*-notation.itely: misc minor editing,
5506 shifting doc sections around.
5508 * Documentation/user/*-notation-itely, global.itely,
5509 changing-defaults.itely: added new stuff from NEWS.
5511 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5515 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5517 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5518 lilypond --verbose for lp-book.
5520 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5521 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5523 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5524 $(buildscript-dir) iso. absolute depth.
5526 * buildscripts/genicon.py (dir): thinko.
5528 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5530 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5532 * scm/output-lib.scm: swap darkcyan/darkyellow
5534 * THANKS: Add bughunters.
5536 2006-02-19 Graham Percival <gpermus@gmail.com>
5538 * Documentation/user/programming-interfaces.itely: fixed example.
5540 * Documentation/user/instrument-notation.itely: fix @{ @}.
5542 * scm/script.scm: add avoid-slur for \open.
5544 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5546 * lily/tie-formatting-problem.cc (score_configuration): use
5547 sliding score for min-length.
5549 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5550 spaghetti for icons.
5552 * buildscripts/genicon.py (program_name): new file.
5554 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5556 (generate_configuration): for small ties, also look for collisions
5557 at Y + DIR*h + DELTA_Y.
5558 (get_variations): consider variation for dot positions too.
5560 * lily/side-position-interface.cc (aligned_side): take abs for
5561 quantized rounded position. Fixes tenuto below staff.
5563 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5564 markers when necessary.
5566 * lily/program-option.cc (internal_set_option): add
5567 strict_infinity_checking option.
5569 * scm/output-lib.scm (cyan): swap yellow and cyan.
5571 2006-02-19 Graham Percival <gpermus@gmail.com>
5573 * darwin.patch: trivial linenumber update.
5575 * Documentation/user/ {various}: `\context foo = named' changed
5576 to `\new foo = "name"' in docs.
5578 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5580 * scm/stencil.scm (annotate-y-interval): use it.
5582 * scm/lily-library.scm (interval-sane?): new function.
5584 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5587 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5590 * flower/include/std-vector.hh (iterof): add iterof macro.
5592 * lily/enclosing-bracket.cc (width): new function.
5594 * lily/align-interface.cc (align_elements_to_extents): reinstate
5597 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5599 * Documentation/index.html.in: fix spelling: thankyous.
5601 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5603 * lily/lyric-hyphen.cc: typo.
5605 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5607 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5608 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5611 * VERSION: release 2.7.35
5613 * lily/beam.cc (get_default_dir): oops. Take abs () for
5615 (get_default_dir): use extreme position criterion only in absence
5616 of forced stem directions.
5618 * VERSION (PATCH_LEVEL): bump VERSION.
5620 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5621 dependencies. Necessary for -jX builds.
5623 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5625 * lily/relocate.cc (setup_paths): Yet another const fix.
5627 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5629 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5631 * lily/relocate.cc (setup_paths): oops.
5633 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5635 * Documentation/index.html.in: order links: html before PDF.
5637 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5639 * lily/tie-column-format.cc (Module): remove.
5641 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5643 * lily/text-spanner.cc (print): idem.
5645 * lily/dynamic-text-spanner.cc (print): only print line if longer
5648 * lily/auto-change-iterator.cc (change_to): formatting.
5650 * lily/beam.cc (get_default_dir): take extreme note head as input
5653 * lily/tie.cc (get_default_dir): only look directions for visible
5656 * lily/side-position-interface.cc (aligned_side): oops. Don't
5657 mutiply with direction. This fixes quantized (staccato, tenuto)
5658 scripts below notes.
5660 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5661 direction. Fixes c-lyrics-center-align.ly
5663 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5665 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5668 * lily/std-string.cc:
5669 * lily/include/std-vector.hh (split_string): Move and rename from
5670 lily/include/misc.hh, lily/misc.cc. Update callers.
5672 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5674 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5676 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5678 * flower/test-file.cc: New file.
5680 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5683 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5685 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5687 * flower/include/file-storage.hh: remove file.
5689 * lily/include/midi-item.hh (class Midi_track): idem.
5691 * lily/include/source.hh (class Sources): idem.
5693 * lily/include/performance.hh (class Performance): use vector
5696 * flower/include/cons.hh (class Cons): remove file.
5698 * flower/include/flower-proto.hh: remove template cruft.
5700 * lily/include/font-metric.hh: use size_t not vsize for indices.
5702 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5705 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5707 * lily/include/paper-book.hh (class Paper_book):
5708 make get_system_specs() public.
5710 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5711 the force=10000 case if we don't have a current-best.
5713 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5716 * flower/include/flower-proto.hh: remove outdated templates.
5718 * scm/page.scm: use annotate-spacing
5720 2006-02-15 Graham Percival <gpermus@gmail.com>
5722 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5724 * THANKS: moved Erlend Aasland to contributors.
5726 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5728 * config.hh.in: remove HAVE_PANGO_16
5730 * lily/tuplet-bracket.cc (calc_positions): multiply with
5731 staff-space for beam case. This fixes tuplets+beams on scaled
5734 * config.hh.in: remove all Kpathsea related defines.
5736 * lily/dot-column.cc (side_position): reach stem via dots->
5737 head->stem. Inspect all stems for dot collisions.
5739 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5742 * lily/bar-number-engraver.cc (process_music): document function
5745 * lily/score.cc (default_rendering): add pscore, not systems
5748 * lily/paper-book.cc (get_system_specs): separate generation of
5751 * flower/include/std-vector.hh: don't include config.hh
5753 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5755 * flower/include/std-vector.hh: Better wrapper compatibility with
5758 * flower/include/flower-proto.hh: Remove cheap forward declaration
5761 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5763 2006-02-14 Graham Percival <gpermus@gmail.com>
5765 * Documentation/user/invoking.itely: add warning about command line.
5767 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5769 * lily/include/lily-proto.hh: add Prob, rm Page.
5771 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5773 * VERSION: release 2.7.34
5775 * lily/relocate.cc (framework_relocation): show canary if
5776 GHOSTSCRIPT_VERSION undefined.
5778 * GNUmakefile.in: remove $(VERSION) symlink.
5780 * lily/relocate.cc (setup_paths): add +
5782 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5784 * Documentation/index.html.in: specify sizes for all big HTML pages.
5786 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5788 * config.hh.in: remove @FRAMEWORKDIR@
5790 * lily/system-start-text.cc (get_stencil): new file: separate out
5791 system-start-delimiter text support.
5793 * input/**ly: replace \context with \new where appropriate.
5797 * lily/slur-scoring.cc (get_base_attachments): use
5798 robust_relative_extent. This fixes problems with empty paper-columns.
5800 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5802 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5804 * scm/define-music-properties.scm (all-music-properties):
5805 create-new property.
5807 * lily/context-specced-music-iterator.cc (construct_children):
5808 inspect 'create-new property iso. magical $uniqueContextId context
5811 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5813 * lily/context-key-manager.cc (Module): new file. Encapsulate
5814 object key generation.
5816 * lily/include/context-key-manager.hh (Module): new file.
5818 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5820 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5823 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5825 (reloc_b): excise --enable-framework-dir
5827 * lily/relocate.cc (framework_relocation): use getenv
5828 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5830 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5832 * flower/include/std-string.hh:
5833 * flower/include/std-vector.hh: Finish std:: conversion; move
5834 flower extensions from std:: namespace. Update users.
5836 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5837 their expansion to vector<*>. Update users.
5839 2006-02-10 Graham Percival <gpermus@gmail.com>
5841 * Documentation/user/invoking.itely: add example to File structure.
5843 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5844 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5846 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5848 * ly/paper-defaults.ly: typo.
5850 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5851 set_parent() for parentheses. This will make it show up in bbox
5854 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5855 ly:grob-common* functions.
5857 * lily/grob-scheme.cc (LY_DEFINE):
5858 ly:grob-common-refpoint-of-array: new function
5859 ly:grob-common-refpoint: new function
5860 ly:grob-relative-coordinate: new function
5862 * lily/instrument-name-engraver.cc (process_music): use
5863 Text_interface::is_markup(). This fixes \markup on instrument names.
5865 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5868 * lily/slur.cc (print): idem.
5870 * lily/tie.cc: add line-thickness for ties.
5872 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5874 * scm/output-svg.scm: Document diversion from GNU coding standards
5875 as a workaround for a bug in Microsoft Internet Explorer.
5877 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5879 * lily/instrument-name-engraver.cc (process_music): use
5880 is_markup() iso. is_string()
5882 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5884 * lily/percent-repeat-engraver.cc (process_music): only look at
5885 main_part_ for % repeats.
5887 * lily/stem-tremolo.cc (get_beam_translation): new function.
5888 (calc_slope): new function.
5889 (height): don't use real slope.
5891 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5893 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5894 new connect-to-neighbor, control-points and staff-padding
5895 properties to make ligature brackets showing up again.
5897 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5899 * VERSION: release 2.7.33
5901 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5904 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5905 remove applyOutput example.
5906 (Objects connected to the input): document \tweak, \parenthesize
5908 * lily/relocate.cc (prefix_relocation): allow "current"
5909 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5910 changing VERSION in a lily tree less painful.
5912 * input/regression/parenthesize.ly: new file.
5914 * scm/output-lib.scm (parenthesize-element): new function.
5916 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5918 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5920 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5921 cause: accidentals are caused by note heads, not note events.
5923 2006-02-08 Graham Percival <gpermus@gmail.com>
5925 * darwin.patch: small patch from Erlend, thanks!
5927 * Documentation/user/basic-notation.itely: add stem-neutral example.
5929 * Documentation/user/putting.itely: clarifications.
5931 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5933 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5934 note, add more guidelines to what should go into NEWS.
5936 * input/sakura-sakura.ly: document how to override font.
5938 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5940 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5942 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5944 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5946 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5947 convertrules. Add explicit grouping, needed for python2.2.
5949 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5951 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5953 2006-02-07 Graham Percival <gpermus@gmail.com>
5955 * Documentation/user/global.itely: fix line-width in (text) docs.
5957 * Documentation/user/lilypond-book.itely: same.
5959 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5961 * VERSION (PACKAGE_NAME): release 2.7.32
5963 * Documentation/topdocs/NEWS.tely (Top): document new variable
5966 * flower/include/array.icc (Message): remove file.
5968 * flower/include/std-vector.hh: make sure vsize and VPOS are
5969 defined for binary_search_bounds().
5971 * flower/std-string.cc (std): add to_string(long unsigned).
5973 * configure.in (gui_b): excise std_string option.
5974 (gui_b): excise std_vector option.
5976 * flower/string.cc (Module): excise flower array & string
5978 * flower/include/std-string.hh: excise flower string.
5980 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5982 * python/convertrules.py (lilypond_version_re_str): require
5983 only numbers and dots in \version string.
5985 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5987 * lily/system-start-delimiter.cc (print): allow style = text too.
5989 * lily/system-start-delimiter-engraver.cc
5990 (acknowledge_system_start_text): new function, also add add to
5991 support of system-start-text (instrument names). This fixes
5992 instrument names on piano staves.
5994 * lily/instrument-name-engraver.cc: rewrite. Use
5995 system-start-delimiter approach. This save memory and cpu.
5997 * scm/define-grobs.scm (all-grob-descriptions): remove
5998 instrument-name from break-alignment.
6000 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6002 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6004 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6007 * configure.in (std_vector): On by default.
6009 * lily/include/font-metric.hh:
6010 * lily/include/tfm-reader.hh:
6011 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6014 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6016 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6018 * VERSION (PACKAGE_NAME): 2.7.31
6020 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6021 EPS edge at 0, but take minimum with left-overshoot. This fixes
6022 cut off system start delims.
6024 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6025 hack: add to axis group if not added yet. This fixes hara kiri'd
6028 * lily/hara-kiri-group-spanner.cc
6029 (force_hara_kiri_in_y_parent_callback): fix signatures.
6031 * lily/hairpin.cc (print): check next hairpin to see whether or
6032 not to be continuing.
6034 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6036 * Remove trailing whitespace from makefiles.
6038 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6041 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6043 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6045 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6047 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6049 * configure.in: Use it.
6051 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6053 * scm/music-functions.scm (pitch-of-note): new function.
6055 * ly/music-functions-init.ly: add \octave and \addquote
6057 * lily/parser.yy (music_function_chord_body): softcode \octave.
6058 (lilypond_header): softcode \addquote
6060 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6062 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6063 array.hh, parray.hh at all. Getting ready to flip the
6066 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6068 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6071 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6073 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6075 * flower/include/array.hh: typo.
6077 2006-02-02 Graham Percival <gpermus@gmail.com>
6079 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6081 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6083 * flower/include/pqueue.hh: Derive from std::vector.
6085 * flower/include/parray.hh: Conform to std::vector interface.
6088 2006-02-02 Graham Percival <gpermus@gmail.com>
6090 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6092 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6094 * flower/file-path.cc (is_file): remove if 0 section.
6096 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6097 selecting afii61352.
6099 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6101 * flower/include/std-vector.hh (boundary): Oops, reverse.
6103 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6104 remove superfluous `d'.
6106 * flower/include/std-vector.hh (boundary, top): Detach from class.
6107 Remove empty vector shell.
6109 * flower/include/array.hh (reverse, swap): Detach from class.
6112 * flower/include/std-vector.hh
6113 * flower/include/array.hh (concat): Globally change to insert ().
6115 * flower/include/std-vector.hh
6116 * flower/include/parray.hh
6117 * flower/include/array.hh (elem, elem_ref): Globally replace by
6120 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6122 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6124 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6125 anticipate on identifier substitutions.
6127 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6129 * flower/include/std-vector.hh (insert): Remove, replace by
6130 std::vector interface. Update callers.
6132 * flower/include/array.icc (insert): Change signature to
6133 match std::vector interface.
6135 * flower/include/array.icc (vector_sort): Bugfix.
6137 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6139 * lily/parser.yy (output_def_head_with_mode_switch): new
6140 production. Result: dashes and underscores may be used in the
6143 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6145 * python/convertrules.py (conv): oops. One slash too much.
6147 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6149 * flower/include/std-vector.hh (sort): Remove, replace by
6150 ::vector_sort. Update callers.
6152 * flower/include/std-vector.hh (slice): Remove. Update callers.
6155 * flower/test-std.cc (vector_sort): New test.
6157 2006-02-01 Graham Percival <gpermus@gmail.com>
6159 * Documentation/user/putting.itely: fixes from Erik.
6161 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6163 * flower/test-std.cc: Add simple unit test for vector migration.
6165 * stepmake/stepmake/test*: Unit test support.
6167 * flower/include/std-vector.hh (del): Remove. Use erase (),
6170 * flower/include/array.hh (begin, end): Add.
6173 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6175 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6176 std::string not String.
6178 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6181 * lily/prob.cc (Prob): copy type_ too.
6183 * lily/lily-guile.cc (mangle_cxx_identifier): new
6184 function. Class_bla::foo_bar_[px] ->
6185 ly:class-bla::foo-bar[?!]. Changes throughout
6187 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6189 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6191 * lily/beam.cc (calc_direction): take dir from visible stem in
6194 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6196 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6197 Fix -1, >=0 boundary checks for unsigned vsize.
6199 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6200 loop for unsigned vsize.
6202 * configure.in (--enable-std-vector): New option.
6203 (--enable-std-string): On by default.
6205 * flower/include/std-vector.hh: New file. Enable switch to
6206 std::vector, update client code.
6208 2006-01-30 Graham Percival <gpermus@gmail.com>
6210 * scm/document-translation.scm: clarify "this context is also
6211 known as". Thanks, Werner!
6213 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6215 * Documentation/user/invoking.itely: small fix from Don.
6217 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6219 * scm/lily.scm (define-scheme-options): rename option
6220 preview-include-book-title to book-title-preview
6221 (define-scheme-options): move force-eps-font-include (from paper
6222 block) to eps-font-include -d option.
6224 * VERSION (PATCH_LEVEL): release 2.7.30
6226 * input/bach-schenker.ly (staffPiano): new file.
6228 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6230 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6233 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6235 * ps/lilyponddefs.ps: remove start-system, stop-system,
6236 start-page fluff. This saves putting { } code on the stack, fixing
6237 stack overflows when including EPS files.
6239 2006-01-29 Graham Percival <gpermus@gmail.com>
6241 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6243 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6245 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6247 2006-01-28 Graham Percival <gpermus@gmail.com>
6249 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6251 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6253 * input/mutopia/claop.py: Update.
6255 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6257 * input/regression/completion-heads.ly (texidoc): fix.
6259 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6261 * lily/tie-formatting-problem.cc
6262 (set_ties_config_standard_directions): use abs iso fabs for ints.
6264 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6266 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6267 little less than noteheight, to prevent overlaps in chords.
6269 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6270 head, and fudge stem-attachment.
6272 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6274 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6276 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6278 * lily/main.cc (main): Debugging aid: catch exceptions.
6280 * flower/std-string.cc (to_string): Robustification. Fixes midi
6281 output with std::string.
6283 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6285 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6287 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6289 * Fix -DSTRING_UTILS_INLINED.
6291 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6293 * VERSION (PATCH_LEVEL): release 2.7.29
6295 * lily/relocate.cc (setup_paths): mingw uses std string too.
6297 * lily/*.cc: various fixes for substr(ARG).
6299 * lily/sustain-pedal.cc (print):
6301 * flower/file-name.cc (slashify): use std strings.
6303 * flower/string-convert.cc: remove publib.h
6305 * scm/define-markup-commands.scm (verbatim-file): new markup
6306 command \verbatim-file
6308 * Documentation/topdocs/NEWS.tely: fixup URLs
6310 * input/regression/alignment-vertical-manual-setting.ly (Module):
6313 * lily/align-interface.cc (align_elements_to_extents): overwrite
6314 translations with numbers in alignment-offsets from left bound
6316 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6317 (page-translate-systems): new function: take into account Y-offset.
6319 * Documentation/topdocs/NEWS.tely (Top): document new features.
6321 * input/regression/page-layout-manual-position.ly (Module): new
6324 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6326 * flower/file-path.cc (path::parse_path): Oops.
6328 * Finish std::string interface. For now, use std:: marker
6329 throughout for easy s/r.
6331 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6333 * Documentation/user/putting.itely (Score is a single musical
6335 (Score is a single musical expression): more typos.
6337 * scm/page.scm (annotate-space-left): thinko.
6338 (annotate-page): more thinkos.
6340 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6342 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6343 for different \score blocks separately.
6344 (post-process-pages): put write-page-layout into paper block.
6346 * lily/output-def.cc (get_parser): new file.
6348 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6351 * lily/include/output-def.hh (class Output_def): add parser_ member.
6353 * input/regression/page-layout-twopass.ly (Module): new file.
6355 * scm/lily.scm: remove cpp hack.
6357 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6359 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6361 * GNUmakefile.in (c-clean): New target.
6363 * flower/include/std-string.hh: String/std::string compatibility:
6364 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6367 * flower/rational.cc:
6368 * flower/include/rational.hh:
6371 * flower/include/offset.hh:
6373 * flower/interval.cc:
6374 * flower/include/interval.hh:
6376 * flower/string-convert.cc:
6377 * flower/include/string-convert.hh: Use std::string [interface].
6380 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6382 * Documentation/index.html.in: clean up.
6384 2006-01-25 Graham Percival <gpermus@gmail.com>
6386 * Documentation/user/putting.itely: another new untested doc section.
6388 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6390 * scm/layout-page-layout.scm (write-page-breaks): write
6391 \spacingTweaks #ALIST. Handle grace timing.
6393 * scm/: more imports.
6395 * scm/page.scm (make-page): add footer/header.
6396 (annotate-space-left): revise: only take page argument.
6397 (layout->page-init): new function.
6399 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6400 version of the system/spacing/linebreak hack writing to the output
6402 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6405 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6408 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6410 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6412 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6414 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6415 handling to page.scm
6417 * lily/prob-scheme.cc (LY_DEFINE): new file.
6418 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6420 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6423 * lily/music.cc (derived_mark): derive Music from Prob.
6425 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6427 * lily/prob.cc (Module): Implement Prob (Property Object), object
6428 with shared and r/w property alists.
6430 * lily/include/prob.hh (Module): new file. Declare Prob.
6432 * flower/string.cc: remove is_empty().
6434 * flower/include/string.hh (class String): remove String:: qualifier.
6436 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6437 substitute appropriate functions.
6439 * flower/include/string.hh (class String): remove to_str0 and
6440 is_empty(). S&R everywhere.
6442 2006-01-23 Graham Percival <gpermus@gmail.com>
6444 * Documentation/user/basic-notation.itely: add hairpin
6445 after-linebreak tweak to commonprop.
6447 * Documentation/user/putting.itely: added two new sections.
6449 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6451 * flower/international.cc:
6452 * flower/include/international.hh:
6454 * flower/getopt-long.cc:
6455 * flower/include/getopt-long.hh: Use std::string [interface].
6458 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6460 * stepmake/stepmake/executable-rules.make: Add dependency on
6463 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6465 * flower/file-path.cc:
6466 * flower/include/file-path.hh: Use std::string [interface].
6469 * flower/direction.cc:
6470 * flower/axis.cc: Unused. Remove.
6472 * configure.in (--enable-std-string): New option.
6474 * flower/std-string.cc:
6475 * flower/include/std-string.hh: New file.
6477 * flower/file-name.cc[STD_STRING]:
6478 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6480 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6482 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6484 * scm/define-markup-commands.scm (with-dimensions):
6485 with-dimensions markup command.
6487 * input/test/font-table.ly: use it.
6489 * lily/open-type-font.cc (glyph_list): new function.
6491 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6493 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6495 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6497 * ly/music-functions-init.ly (parallelMusic): new music function
6498 for parallel music entry.
6500 * scm/define-music-properties.scm (all-music-properties): new
6501 'void music property
6503 * scm/music-functions.scm (ly:music-message): make public, to be
6504 used in music function definitions
6506 * scm/lily-library.scm (collect-music-for-book): discard music
6507 when the 'void property is set.
6509 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6511 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6513 * mf/GNUmakefile: idem.
6515 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6517 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6519 * Documentation/user/notation-appendices.itely (The Feta font):
6522 * input/test/font-table.ly: new file. Generate font table within lily.
6524 * Documentation/user/notation-appendices.itely (The Feta font):
6525 use new font-table.ly file.
6527 * stepmake/stepmake/install-out-targets.make
6528 (local-install-outfiles): only create directory if
6529 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6531 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6533 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6535 * VERSION (PACKAGE_NAME): release 2.7.28
6537 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6538 the right font from a Mac dfont.
6539 (write-preamble): don't forget directory, only look at files.
6541 This fixes problems with TTF files in dfonts that don't match
6542 their PostScript names.
6544 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6545 PS name from TTF font.
6547 * input/regression/tie-manual.ly: document new feature.
6549 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6551 * VERSION (MY_PATCH_LEVEL): bump to .28
6553 * Documentation/user/basic-notation.itely (Ties): add tie examples
6556 * lily/tie-formatting-problem.cc (score_ties_configuration):
6557 symmetry penalties for outer ties.
6559 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6561 * lily/tie-formatting-problem.cc (generate_configuration)
6562 (set_manual_tie_configuration): skip non-pair manual
6563 tie-configuration, so you can set individual ties as
6565 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6567 * input/regression/tie-chord.ly: use generateTiePattern to
6570 * lily/tie-formatting-problem.cc (peak_around): new function.
6571 (score_configuration): use sliding criterion for staff line collisions.
6572 (score_configuration): idem for dot collisions.
6573 (generate_configuration): use separate stem_gap for gap to stem.
6575 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6576 separate penalty factors for x and y distance.
6577 (struct Tie_details): separate penalties for tip and center line collisions.
6579 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6581 * lily/tie-formatting-problem.cc (generate_configuration): make
6582 large ties avoid stafflines in the horizontal section.
6583 (score_configuration): use softcoded penalties
6584 (score_aptitude): idem.
6586 * lily/tie-helper.cc (from_grob): softcode tie details
6588 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6590 * lily/staff-symbol-referencer.cc (on_line): rename from
6593 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6595 * ly/music-functions-init.ly: remove duplicate tag.
6597 * lily/include/*.hh: GCC 4.1 fixes.
6599 006-01-16 Erlend Aasland <erlenda@gmail.com>
6601 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6603 * scm/define-music-types.scm: fix bug in desc. string
6604 for OverrideProperty
6606 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6608 * scripts/lilypond-book.py: bugfix
6610 * scm/define-music-types.scm: fix typos.
6612 2006-01-14 Graham Percival <gpermus@gmail.com>
6614 * Documentation/user/ basic-notation.itely, global.itely,
6615 advanced-notation.itely, instrument-notation.itely: small
6616 additions (bugs and commonly tweaked properties).
6618 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6620 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6621 detection of mingw build.
6622 (MINGW_BUILD): opps.
6624 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6626 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6629 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6631 * scm/music-functions.scm (skip->rest): add skip->rest
6633 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6635 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6638 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6639 config dirs. Aids debugging.
6640 (display_config): also display config files.
6642 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6644 * VERSION: release 2.7.27
6646 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6647 for determining bar size.
6649 * lily/staff-symbol.cc (print): place lines at distance line-positions
6651 * scm/define-grob-properties.scm (all-user-grob-properties): add
6654 * lily/staff-symbol.cc (height): new function.
6656 * input/regression/staff-line-positions.ly: new file.
6658 2006-01-06 Graham Percival <gpermus@gmail.com>
6660 * input/test/add-staccato.ly: remove reference to old file.
6662 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6664 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6665 lilypond binary too.
6667 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6669 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6671 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6673 * scripts/midi2ly.py: Bugfix: Declare datadir.
6675 * make/ly-rules.make:
6676 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6677 that seems to be gone). Fixes make web.
6679 * The grand 2005-2006 replace.
6681 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6683 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6685 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6686 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6687 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6688 like -dgs-font-load.
6690 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6691 remove absolute path to lilypond binary.
6693 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6695 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6697 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6699 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6701 * mf/GNUmakefile: remove broken dvips map symlink.
6703 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6706 * configure.in: Cosmetic fixes.
6708 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6710 * Documentation/user/music-glossary.tely (Pitch names): Added
6711 Spanish pitch names and durations, thanks to Ernesto Gancedo
6713 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6715 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6716 init. Fixes verbose printing of .scm files.
6718 * stepmake/aclocal.m4: add spaces before - options.
6720 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6722 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6723 of path search in local block variable.
6725 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6727 * configure.in (NCSB_DIR): --enable-ncsb-dir
6728 (LINK_GXX_STATICALLY): denko.
6730 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6732 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6733 use locate to find c059033l.pfb.
6735 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6737 * lily/tie-formatting-problem.cc
6738 (problem::generate_base_chord_configuration): Use my_round (was
6741 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6742 do not invoke mbrtowc.
6744 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6746 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6748 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6750 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6752 * Documentation/user/invoking.itely (svg): revise.
6754 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6756 * lily/lexer.ll: use sourcefilename iso. renameinput.
6758 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6760 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6761 <PostScriptName>.ttf instead of c059XXXttf.
6763 * lily/program-option.cc (LY_DEFINE): special support for
6764 --verbose, so it works before option init too.
6766 * mf/GNUmakefile (local-install): oops.
6768 * lily/lyric-hyphen.cc (print): oops.
6770 * buildscripts/pfx2ttf.fontforge: new file.
6772 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6773 ($(outdir)/%.ttf): new rule.
6775 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6778 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6781 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6783 * VERSION: release 2.7.26
6785 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6787 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6789 * lily/font-config.cc (init_fontconfig): verbosity.
6791 * THANKS: add Muziekacademie Lede.
6793 * scripts/musicxml2ly.py (print_voice_definitions): new function
6794 (print_score_setup): new function
6795 (convert): read part definition to output staves properly.
6797 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6800 * python/musicexp.py (Output_printer.__init__): use _ in data
6802 (Output_printer.unformatted_output): new function: no formatting,
6804 (Duration.get_length): remove isinstance() checks for
6805 Output_printer everywhere.
6807 * input/regression/lyrics-bar.ly (texidoc): add
6808 Separating_line_group_engraver.
6810 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6812 * lily/relocate.cc (framework_relocation): New function,
6813 factored from set_relocation ().
6814 (prefix_relocation): Rename from set_relocation ().
6815 (setup_paths): Use it.
6817 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6819 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6820 numbers. Patch by Erlend Aasland.
6822 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6824 * lily/font-config.cc (init_fontconfig): print warning if cache
6825 file is not existant.
6827 * lily/main.cc: don't use #ifdef but #if
6829 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6831 * lily/grob-property.cc (internal_set_property): don't abort on
6832 calculation-in-progress.
6834 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6836 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6837 connect-to-neighbor property not connect-to-other
6839 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6840 (LY_DEFINE): oops. don't forget protection.
6842 * flower/parse-afm.cc (Module): strip AFM handling completely.
6844 * lily/stencil-expression.cc: idem.
6846 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6848 * lily/function-documentation.cc (ly_add_function_documentation):
6849 use static member iso. Protected_scm
6851 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6853 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6855 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6857 * lily/relocate.cc (set_env_dir): New function.
6858 (set_relocation): Use it to fix setting PANGO_PREFIX.
6860 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6862 * input/regression/stem-direction-context.ly: remove rest.
6864 * lily/melody-engraver.cc (process_music): restart for bar lines.
6865 (acknowledge_slur): restart for slurs.
6867 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6869 * Documentation/user/invoking.itely: describe how to view SVG
6870 output using Inkscape which replace embedded fonts with OTF fonts.
6872 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6874 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6876 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6878 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6881 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6883 * VERSION (PACKAGE_NAME): release 2.7.25
6885 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6887 * input/regression/stem-direction-context.ly: new file.
6889 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6891 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6894 * ly/engraver-init.ly: add Melody_engraver
6896 * lily/beam.cc (calc_direction): use default-direction
6897 iso. get_default_direction()
6899 * scm/define-grob-properties.scm (all-user-grob-properties): add
6900 default-direction property.
6902 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6904 * lily/stem.cc (calc_default_direction): remove
6905 Stem::get_default_direction, use default-direction with callback
6908 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6910 * lily/melody-engraver.cc: new file. Acknowledge stems for
6911 interpolated stem directions.
6913 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6915 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6917 * lily/slur-configuration.cc (fit_factor): more robust check for
6918 point in curve X-extent.
6920 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6921 (outside_slur_callback): check for 'outside avoidance.
6923 * lily/slur-configuration.cc (score_extra_encompass): don't use
6924 bound->column() == avoid->column() for checking extents, as this
6925 doesn't work for accidentals.
6927 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6928 DynamicText hardcoding.
6930 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6931 crash if bound stem is NULL
6933 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6936 2005-12-22 Graham Percival <gpermus@gmail.com>
6938 * scm/define-markup-commands.scm: typo. @code{\raise}
6941 * darwin.patch: now used again, includes a
6942 required patch from fink.
6944 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6946 * po/TODO: mention gtranslator along with kbabel.
6947 * po/fi.po: update translations.
6949 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6951 * lily/relocate.cc (setup_paths): Bugfix.
6953 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6955 * lily/slur-configuration.cc (score_extra_encompass): don't use
6956 "avoid" choice for avoid-slur.
6958 * stepmake/bin/install.py (dest): don't create existing dir.
6960 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6962 * stepmake/bin/install.py: Remove file before copying.
6965 * stepmake/aclocal.m4: Do not substitute INSTALL.
6967 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6969 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6970 depend on link-tree.
6972 * lily/relocate.cc (setup_paths): only check path for non-absolute
6973 dir without directory part.
6975 * flower/file-name.cc (is_absolute): new method.
6976 (is_absolute): check root_ too.
6978 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6980 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6981 relocation code. Oops, don't comment out too much.
6983 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6986 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6989 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6991 * .cvsignore: Add install-sh.
6993 * autogen.sh (srcdir): Typo.
6995 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6997 * autogen.sh (srcdir): urg. Touch install-sh.
6999 * stepmake/bin/install-sh (Module): remove.
7001 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7003 * lily/include/relocate.hh: new file.
7005 * lily/relocate.cc: new file. Contain relocation logic.
7007 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7008 (main): read LILYPOND_VERBOSE as the first thing.
7010 * stepmake/aclocal.m4: remove INSTALL variable.
7012 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7013 separate target for making font symlinks.
7014 (documentation-dir): use $(if $(findstring )) for switching off
7017 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7018 something if DOCUMENTATION is no.
7020 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7022 * VERSION: release 2.7.24
7024 * lily/script-column-engraver.cc (stop_translation_timestep):
7025 delay adding to script-column.
7027 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7029 * python/convertrules.py (conv): rule for number-visibility
7031 * lily/slur-configuration.cc (score_extra_encompass): different
7032 distance measure for avoid and inside avoidance.
7033 (score_extra_encompass): use 1/(distance+eps) as penalty.
7035 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7036 encompass objects for generating slur curves.
7038 * lily/slur.cc: use details iso. slur-details property.
7040 * input/regression/slur-tuplet.ly: new file.
7042 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7044 * flower/include/offset.hh (class Offset): new operator /=
7046 * lily/tuplet-number.cc (print): new file, new interface.
7048 * scm/define-grob-properties.scm (all-user-grob-properties):
7049 remove number-visibility property.
7051 * lily/tuplet-bracket.cc (calc_control_points): new function
7052 (calc_connect_to_neighbors): new function.
7053 (print): remove text handling for tuplet numberdef.
7055 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7058 * lily/lily-guile.cc (robust_scm2booldrul): new function
7060 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7062 * lily/tuplet-bracket.cc (calc_position_and_height): use
7063 staff-padding to control whether tuplet brackets are over staves.
7065 * lily/grob.cc (suicide): clear dim_caches_.
7067 * lily/dimension-cache.cc (clear): new function.
7069 * lily/grob.cc (extent): swap order of min-extent and extent
7070 calculations. This fixes hara kiri staves.
7072 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7074 * lily/main.cc: Nitpick: relocation is not based on path, but on
7075 directory (location).
7077 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7079 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7081 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7083 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7085 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7087 * stepmake/stepmake/generic-vars.make (Module): idem.
7089 * stepmake/stepmake/executable-targets.make (default): use it.
7091 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7093 * make/GNUmakefile: don't install make rules.
7095 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7097 (prepend_env_path): more verbosity.
7099 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7101 * GNUmakefile.in: add dir argument for find command.
7103 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7104 fixes weird line numbers for point & click.
7106 * lily/source-file.cc (get_counts): init line/column/char counts.
7108 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7110 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7112 2005-12-16 Graham Percival <gpermus@gmail.com>
7114 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7115 minor fixes from Fredric. Thanks!
7117 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7119 * ly/music-functions-init.ly: add \bar and \clef music function
7121 * lily/lily-lexer.cc: idem.
7123 * lily/parser.yy (FIXME): remove BAR and CLEF.
7125 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7127 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7129 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7130 function arguments too
7132 * lily/main.cc (set_relocation): new function.
7134 * scripts/musicxml2ly.py (convert): add \version
7136 * lily/tie.cc: remove get_default_attachments()
7138 * VERSION (PACKAGE_NAME): release 2.7.23
7140 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7141 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7143 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7145 * lily/tie-formatting-problem.cc (score_ties): new function
7146 (get_variations): new function. Try flipping dirs for collisions.
7147 (generate_optimal_chord_configuration): new function. 1-opt search
7148 for better configuration.
7150 * lily/tie-configuration.cc: new file.
7152 * lily/tie.cc: junk Tie::get_configuration()
7154 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7155 (score_ties_configuration): new function.
7156 (generate_ties_configuration): new function.
7157 (generate_base_chord_configuration): new function.
7158 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7159 (set_manual_tie_configuration): Move body from tie-column-format.cc
7161 * input/regression/tie-dot.ly: new file.
7163 * lily/tie-formatting-problem.cc (score_configuration): score
7166 * lily/tie-helper.cc (get_transformed_bezier): new function
7168 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7170 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7171 -undefined suppress iso. -framework Python
7173 * scm/define-grobs.scm (all-grob-descriptions): set
7174 springs-and-rods (thanks Joe Neeman!)
7176 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7178 * input/no-notation/display-lily-tests.ly (test):
7179 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7180 changed from \tag #'(a b) to \tag #'a \tag #'b
7182 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7184 * Documentation/topdocs/NEWS.tely: strip out-www.
7186 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7188 * config.make.in (AR): add AR and RANLIB
7190 * flower/libc-extension.cc: include cassert
7192 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7195 2005-12-11 Graham Percival <gpermus@gmail.com>
7197 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7199 * stepmake/stepmake/python-modules-vars.make: define
7200 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7202 * THANKS: added Johannes Schindelin.
7204 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7206 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7208 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7209 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7211 * lily/parser.yy: reorganize file layout.
7213 * ly/music-functions-init.ly: add tweak music function.
7215 * lily/grob-info.cc (ultimate_music_cause): new function:
7216 recursively lookup causes.
7218 * lily/parser.yy (chord_body_element): allow music functions for
7219 post-events, allow music functions for chord elements.
7221 * lily/font-config-scheme.cc (display_fontset): add cast.
7223 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7224 #'(a b) -> \tag #'a \tag #'b rule.
7226 * python/musicexp.py (Output_printer.dump_version): new function
7228 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7230 * lily/parser.yy (FIXME): remove \tag
7231 (FIXME): remove tag_music() function.
7233 * lily/lily-lexer.cc: remove \tag
7235 * ly/music-functions-init.ly: define music-function "tag"
7237 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7239 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7241 * VERSION (PATCH_LEVEL): release 2.7.22
7243 * input/regression/lyric-hyphen-retain.ly: renew.
7245 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7248 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7249 iso. minimum-length property for rods.
7251 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7252 LyricSpace item to keep lyrics spaced apart.
7254 * ly/engraver-init.ly: remove Separating_line_group_engraver
7256 * Documentation/user/music-glossary.tely: do setfilename before
7259 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7261 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7262 See xref documentation, for example.
7264 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7266 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7267 pending_skip iso. ly_voice[-1]
7268 (main): add if __main__ for debugging.
7270 * python/musicxml.py (Accidental.__init__): new class.
7272 * scripts/musicxml2ly.py (progress): new function
7273 (musicxml_key_to_lily): don't barf on modeless keys.
7274 (create_skip_music): new function.
7275 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7276 (musicxml_note_to_lily_main_event): new function.
7278 * python/musicexp.py (Music.__init__): add comment field.
7279 (NestedMusic.append): new routine.
7280 (SequentialMusic.print_ly): print comment.
7281 (ArpeggioEvent.ly_expression): new class
7282 (BeamEvent.ly_expression): new class
7283 (NoteEvent.__init__): support for cautionary/forced accs.
7285 * lily/lookup.cc (slur): normal order for array loop.
7287 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7290 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7293 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7295 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7297 * scripts/lilypond-book.py: Introduce option
7298 --preserve-line-breaks, for usage with srcltx
7300 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7302 * scm/output-lib.scm (print-circled-text-callback): draw circle
7303 around text using make-circle-markup.
7305 * Documentation/user/*: strip out-www from file names.
7307 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7309 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7310 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7312 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7314 * Documentation/user/GNUmakefile: idem.
7316 * Documentation/user/macros.itexi: strip out-www
7318 * python/rational.py: python 2.3 compat.
7320 * VERSION (PATCH_LEVEL): release 2.7.21
7322 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7323 option formatting, lilypond style.
7325 * python/musicexp.py: grab from Ikebana: a library for composing
7326 ly music expressions.
7327 (Output_printer): class for advanced .ly printing.
7330 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7331 convert to pythonesque structure.
7333 * python/rational.py: PD rational number class.
7335 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7337 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7339 * lily/part-combine-iterator.cc: Minor bugfix
7341 * THANKS: Update bughunters
7343 2005-12-02 Werner Lemberg <wl@gnu.org>
7345 * mf/README: Document process for proper mf2pt1 conversion.
7347 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7350 * mf/feta-harmonica.mf: Removed. Unused.
7352 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7354 * scripts/lilypond-book.py (do_file): fix thinkos.
7356 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7358 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7359 ($(outdir)/parser.cc):
7360 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7362 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7364 * ly/titling-init.ly (tagline): it should be a space between
7365 "Music engraving by LilyPond" and the version number.
7367 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7369 * VERSION (PACKAGE_NAME): release 2.7.20
7371 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7373 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7375 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7377 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7379 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7381 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7383 * kpath-guile/: remove directory
7385 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7386 file. Encapsulate kpathsea using commandline tools.
7388 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7391 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7393 * Documentation/user/advanced-notation.itely (Setting automatic
7394 beam behavior): Correct a few typos. Thanks to David Bobroff.
7396 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7397 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7399 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7401 * scripts/*.py: gmane address for bugs.
7403 2005-11-28 Pal Benko <benkop@freestart.hu>
7405 * make/ly-rules.make: add -f switch to mv
7407 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7409 * lily/bar-line.cc: interpret it
7411 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7413 * configure.in (--disable-documentation): New switch.
7415 * GNUmakefile.in: Use it.
7417 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7419 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7421 * scripts/lilypond-book.py (do_file): search chunks for
7424 * GNUmakefile.in: add copy step in between so we can lose the
7425 out-www directories.
7427 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7429 * lily/pango-font.cc (pango_item_string_stencil): put
7430 geometry.width into glyph-string too.
7432 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7434 * scm/define-music-display-methods.scm (RevertProperty):
7435 (OverrideProperty): Use grob-property-path property, a list of
7436 symbols, instead of grob-property, which used to be a single
7438 (BassFigureEvent): a figure can be a plain number, not necessarily a
7441 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7443 * VERSION: release 2.7.19
7445 * lily/figured-bass-engraver.cc (process_music): check
7446 figuredBassCenterContinuations first.
7448 * scm/translation-functions.scm (format-bass-figure): make double
7451 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7454 * lily/system-start-delimiter-engraver.cc: move from
7455 Nested_system_start_delimiter_engraver, rename
7456 Nested_system_start_delimiter_engraver ->
7457 System_start_delimiter_engraver.
7459 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7460 bracket type from hierarchy.
7462 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7464 * lily/rest.cc (y_offset_callback): read staff-position.
7466 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7467 mark after-line-breaking-callback as internal.
7469 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7471 2005-11-25 Werner Lemberg <wl@gnu.org>
7473 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7475 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7477 * stepmake/bin/add-html-footer.py (do_file): add google
7479 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7480 staff if first_start_ is true.
7482 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7484 * scripts/midi2ly.py (split_track): add __repr__ members.
7485 (track_first_item): only return Item if not None. This fixes a
7486 problem when dumping a track that starts with an empty channel.
7488 * python/midi.c: doc module.
7490 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7492 * Documentation/user/global.itely (Creating MIDI files): Fix
7493 compilation problem.
7495 2005-11-22 Graham Percival <gpermus@gmail.com>
7497 * Documentation/user/basic-notation.itely: clarify dynamic
7500 * Documentation/user/advanced-notation.itely: add unicode
7501 escape control example, whatever that is. :)
7503 * Documentation/user/global.itely: added "removing dynamics
7506 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7508 * VERSION (PATCH_LEVEL): release 2.7.18
7510 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7511 System_start_delimiter_engraver by
7512 Nested_system_start_delimiter_engraver.
7514 * lily/nested-system-start-delimiter-engraver.cc (struct
7515 Bracket_nesting_node): new class.
7516 (struct Bracket_nesting_group): new class
7517 (struct Bracket_nesting_staff): new class.
7518 (process_music): create hierarchy of grobs. This allows separate
7519 tuning of different SSDs.
7521 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7522 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7524 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7526 * lily/side-position-interface.cc (aligned_side): multiply
7529 * lily/script-engraver.cc (make_script_from_event): allow setting
7532 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7534 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7536 * scm/define-grobs.scm (all-grob-descriptions): new grob
7537 NestedSystemStartDelimiter.
7539 * input/regression/system-start-heavy-bar.ly: new file.
7541 * lily/nested-system-start-delimiter-engraver.cc: new file.
7543 * lily/nested-system-start-delimiter.cc: new file.
7545 * input/regression/system-start-nesting.ly: new file.
7547 * scm/define-grobs.scm (all-grob-descriptions): use X side
7548 positioning for positioning braces for nested contexts.
7550 * lily/system-start-delimiter.cc (print): don't divide extent by
7552 (print): use style iso. glyph.
7553 (staff_bracket): translate glyph inside routine already.
7555 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7557 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7560 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7562 * scm/define-context-properties.scm
7563 (all-user-translation-properties): rename figuredBassFormatter
7564 from newFiguredBassFormatter.
7566 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7568 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7570 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7572 * lily/beam.cc (calc_beaming): new function.
7573 (calc_shorten): new function.
7575 * THANKS: add Edward Neeman.
7577 * input/regression/accidental-clef-change.ly: new file.
7579 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7581 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7583 * lily/clef-engraver.cc (inspect_clef_properties): reset
7584 localKeySignature for clef changes.
7586 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7588 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7589 add dummy definition that works in Linux and add information in
7590 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7592 * Documentation/user/changing-defaults.itely (Modifying context
7593 plug-ins): Add index for \with.
7595 * Documentation/user/music-glossary.tely (dal segno): Updated
7596 example to version >=2.6.
7598 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7600 * Documentation/user/instrument-notation.itely (Printing chord
7601 names): Reorder \chordmode and \repeat in one example.
7603 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7605 * VERSION: release 2.7.17
7607 * Documentation/topdocs/NEWS.tely (Top): add note about
7610 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7611 new function. Search region of 3 positions for best tie.
7612 (score_configuration): new function.
7613 (score_aptitude): new function.
7614 (generate_configuration): new function.
7615 (get_configuration): new function.
7616 (Tie_formatting_problem): new function
7618 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7620 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7622 * THANKS: add Eduardo Vieira & Ralph Little
7624 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7627 * lily/include/tie-formatting-problem.hh (class
7628 Tie_formatting_problem): add Tie_details to
7629 Tie_formatting_problem. Update calling conventions.
7631 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7634 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7636 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7638 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7639 scm/define-context-properties.scm: Maintenance bugfix: make
7640 ligature brackets work again by removing obsolete ligature
7641 primitive callback push/pop.
7643 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7644 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7647 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7649 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7650 used and do not call it a path.
7651 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7653 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7655 * lily/include/tie-formatting-problem.hh (class
7656 Tie_formatting_problem): new file.
7658 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7660 * Documentation/misc/ChangeLog-2.3: new file.
7662 * lily/audio-staff.cc (output): degarianize.
7664 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7666 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7667 Unset PYTHONOPTIMIZE. Fixes install if set.
7669 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7671 * python/convertrules.py (conv): add warning about drums.
7673 * make/stepmake.make: include toplevel-version.make after config.make.
7675 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7676 also allow python2.4
7678 * config.make.in (configure-srcdir): remove GXX GCC vars.
7680 * stepmake/aclocal.m4: don't do non-srcdir build with
7681 symlinks. Use inclusion, so the src directory name can be changed.
7683 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7685 * make/mutopia-vars.make:
7686 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7689 2005-11-13 Werner Lemberg <wl@gnu.org>
7691 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7692 but the affected path. This ensures that the (overlapping) outlines
7693 have the same direction, which is a necessary prerequisite for
7694 FontForge's algorithm to remove overlaps.
7697 * mf/feta-haak.mf: Formatting.
7698 (draw_bracket): Slightly modify outline to avoid an unnecessary
7700 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7701 them from the affected paths.
7703 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7705 * mf/README: remove xpm / accordion notes.
7707 * lily/tie-column-format.cc (set_chord_outline): add dots into
7708 skyline extents. This fixes tie formatting if the left head has dots.
7710 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7711 space inside the staff.
7712 (get_configuration): shift another position if necessary in case
7715 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7717 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7718 buildscript-dir iso. $(depth)/buildscripts.
7720 * tex/GNUmakefile (local-uninstall): remove
7721 music-drawing-routines.ps juggling.
7723 * stepmake/stepmake/install-targets.make (local-install-files):
7724 prepend src-dir to install targets.
7726 * lily/system-start-delimiter-engraver.cc
7727 (acknowledge_system_start_delimiter): use
7728 add_offset_callback(). This fixes translation of nested
7731 * lily/grob-closure.cc (add_offset_callback): only encaps in
7732 simple_closure if it's a procedure.
7734 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7737 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7738 remove-empty where pertinent.
7740 2005-11-12 Graham Percival <gpermus@gmail.com>
7742 * Documentation/user/instrument-notation.itely: added
7743 Cameron Horsburgh's multiple stanzas docs. Thanks!
7745 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7748 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7749 make picture in builddir, not srcdir.
7751 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7753 * VERSION: release 2.7.16
7755 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7758 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7760 * Documentation/user/examples.itely (Piano templates): Minor
7761 modification to the Piano centered lyrics example.
7763 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7765 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7768 * Documentation/user/point-and-click.itely: simplify p&c
7769 instruction: don't configure firefox. Put lilypond-invoke-editor
7770 in front of the browser.
7772 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7773 (run-browser): new function.
7775 * lily/parser.yy (Lily_lexer): recognize Book
7777 * lily/book.cc (clone): new function
7779 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7781 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7783 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7784 Maintenance bugfix: reduce number of font related warnings by
7785 updating naming conventions for glyph-name.
7787 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7789 * scm/define-grobs.scm (all-grob-descriptions): add
7790 rhythmic-grob-interface to TabNoteHead.
7792 * scm/layout-beam.scm (check-quant-callbacks): remove
7795 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7797 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7798 alignment of centered divisiones.
7800 * scm/scripts.scm (articulations): Maintenance bugfix:
7801 follow-into-staff -> quantize-position.
7803 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7804 plica head in porrectus deminutus.
7806 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7808 * make/lilypond.fedora.spec.in (Group): add %clean section.
7810 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7811 less then 1/5th of total length.
7812 (print): use gap too. Fixes tupletUp-single-bracket.ly
7814 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7815 events into EventChord. This fixes textspanners on mm rests. Fixes
7818 * lily/side-position-interface.cc (get_axis): read side-axis
7819 (set_axis): set side-axis.
7821 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7822 properties everywhere.
7824 * lily/spacing-spanner.cc (breakable_column_spacing): add
7825 average-spacing-wishes. Take maximum if not set.
7826 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7828 * scm/define-grobs.scm (all-grob-descriptions): add
7829 average-spacing-wishes.
7831 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7832 offset callbacks. This fixes alignment for Fingering objects.
7834 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7835 space for key - timesig combination.
7837 * input/regression/script-stem-tremolo.ly (Module): new file.
7839 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7842 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7843 Fixes: c-tremolo-script.ly.
7845 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7847 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7849 * scm/define-grobs.scm (all-grob-descriptions): remove
7850 self-X-offset. Fixes alignment of octavate-8.
7852 * scripts/lilypond-book.py (datadir): look in
7853 LILYPONDPREFIX/share/lilypond/current/
7855 * GNUmakefile.in: symlink current to <VERSION>.
7857 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7859 * lily/main.cc: eps listed as a backend.
7861 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7863 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7865 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7867 * lily/include/score.hh (class Score): remove texts_ member.
7869 * lily/beam.cc (set_stem_lengths): force direction callback.
7870 (print): read quantized-positions, so we can force
7871 Beam::set_stem_lengths to occur.
7872 (rest_collision_callback): use common X parent.
7874 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7876 * flower/file-path.cc (find): Bugfix: Return name of file found.
7878 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7879 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7880 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7882 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7884 * flower/offset.cc: idem.
7886 * mf/*.mf: update email address.
7888 * lily/font-config-scheme.cc: new file.
7890 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7892 * lily/*: cs.uu.nl -> xs4all.nl
7894 * VERSION (PATCH_LEVEL): release 2.7.15
7896 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7899 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7901 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7903 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7905 * lily/staff-performer.cc (process_music): add audio
7906 elements. This makes MIDI instrument changes work once again.
7908 * lily/main.cc (LY_DEFINE): add gmane address.
7910 * lily/beam.cc: remove calc_positions()
7912 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7913 original_ in private scope.
7914 (class Grob): drop pscore_ pointer, change to output_def pointer.
7915 (class Grob): cleanup class definition.
7917 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7919 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7921 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7922 absolute. Better diagnostics.
7924 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7925 This makes lilypond run from the build directory using argv0
7926 relocation (without any --prefix or LILYPONDPREFIX setting).
7928 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7930 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7932 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7933 with simple-closure.
7935 * lily/self-aligment-interface.cc (set_align_self): new function
7936 (set_center_parent): new function.
7938 * lily/side-position-interface.cc (set_axis): new function.
7940 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7943 * scm/define-grob-properties.scm (all-user-grob-properties):
7944 remove [XY]-offset-callbacks add [YX]-offset
7946 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7948 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7949 entry for time signatures after breathing signs. Bug report by
7952 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7954 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7955 not absolute, make it absolute using PATH.
7957 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7959 * python/midi.c (initmidi): Fix type for mingw.
7961 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7963 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7965 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7968 * stepmake/aclocal.m4: Support python cross compiling.
7970 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7973 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7975 * scm/output-lib.scm (chain-grob-member-functions): replace
7978 * lily/chained-callback.cc (Module): remove file.
7980 * lily/rest-collision.cc (force_shift_callback_rest): change to
7983 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7985 * lily/grob.cc (y_parent_positioning): remove axis argument from
7986 parent_positioning callbacks.
7987 (Grob): junk init code
7988 (get_offset): use generic property callbacks for
7989 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7990 (axis_parent_positioning): new function
7991 (axis_offset_symbol): new function
7992 (chain_offset_callback): new function
7993 (add_offset_callback): new function
7995 * lily/beam.cc (rest_collision_callback): change signature; this
7996 is now a chained callback.
7998 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7999 callback administration.
8001 * lily/simple-closure.cc: new file. Smob type that allows "grob
8004 (ly:make-simple-closure FUNC A B)
8006 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8009 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8012 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8014 * lily/rest.cc (polyphonic_offset_callback): remove.
8016 * lily/script-engraver.cc (try_music): remove bool* argument.
8018 * scm/script.scm (default-script-alist): set quantize-position
8021 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8023 * lily/side-position-interface.cc (aligned_side): move staff
8024 position quantization from
8025 Side_position_interface::quantised_position().
8026 (quantised_position): remove
8028 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8030 * input/regression/beam-quant-standard.ly: reindent, set
8031 debug-beam-quanting to #t.
8033 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8034 10000 if this is a "hard" concave beam.
8036 * lily/beam.cc (calc_least_squares_positions): change from
8037 calc_least_squares_dy
8038 (set_stem_lengths): this is now a chained callback.
8040 * lily/context-property.cc (execute_general_pushpop_property):
8041 bugfix override with procedure should have effect.
8043 * scm/define-grob-properties.scm (all-internal-grob-properties):
8044 remove position-callbacks.
8046 * scm/define-grobs.scm (all-grob-descriptions): use
8047 ly:make-callback-chain for positions property.
8049 * scm/layout-beam.scm (check-quant-callbacks): return list of
8052 * scm/lily.scm (type-p-name-alist): add callback-chain
8054 * lily/lily-guile.cc (type_check_assignment): type check failure
8055 is warning not message.
8057 * lily/grob-property.cc (try_callback): walk callback chain if
8060 * lily/chained-callback.cc: new file. new smob type.
8062 * lily/lily-guile.cc (procedure_arity): new function.
8064 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8066 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8068 2005-10-25 John Mandereau <john.mandereau@free.fr>
8070 * Documentation/user/instrument-notation.itely (Figured bass):
8071 describe new features
8073 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8075 * lily/beam.cc (calc_least_squares_dy): use property callback.
8077 * lily/beam-concave.cc (calc_concaveness): use property callback.
8079 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8081 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8085 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8087 * scm/layout-page-layout.scm (page-headfoot): annotate
8090 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8092 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8093 doesn't take y-space.
8095 * scm/paper.scm (paper-alist): fix A7 dimensions.
8097 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8099 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8100 src-wildcard, remove $(wildcard).
8102 * po/GNUmakefile (PO_FILES):
8103 * ps/GNUmakefile (PS_FILES):
8104 * tex/GNUmakefile (TEX_FILES):
8105 * cygwin/GNUmakefile (POSTINSTALLS):
8106 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8107 some wildcard calls.
8109 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8111 * THANKS: add Thomas Bushnell.
8113 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8115 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8116 (lilypond-main): Redirect to gui-main if 'gui is set.
8118 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8119 for alternative installations kludging s/share/lib/g
8122 * SConstruct (libdir_package_version): Define.
8124 * python/SConscript:
8125 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8128 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8130 * lily/main.cc: clarify --safe.
8132 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8134 * VERSION: release 2.7.14
8136 * Documentation/user/*.itely: remove minimumVerticalExtent.
8138 * scm/define-grobs.scm (all-grob-descriptions): remove
8139 RemoveEmptyVerticalGroup
8141 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8143 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8146 * python/convertrules.py (conv): add rules.
8148 * lily/grob.cc: remove is_empty()
8150 * lily/grob-property.cc: remove add_to_list_property().
8152 * scripts/convert-ly.py (datadir): add prefix switching hack to
8155 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8156 space-function tweak.
8158 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8160 * scm/define-grob-properties.scm (all-user-grob-properties):
8161 remove callback property.
8163 * lily/include/grob.hh (class Grob): remove property_callbacks_
8164 member. Properties of procedure type are assumed to be callbacks.
8166 * lily/ligature-engraver.cc (override_stencil_callback):
8167 rewrite. Use noteHeadLigaturePrimitive as source.
8169 * scm/define-grob-properties.scm (all-internal-grob-properties):
8170 remove ligature-primitive-callback
8172 * lily/include/dimension-cache.hh (class Dimension_cache): make
8173 class, with Grob as friend.
8175 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8176 has_extent_callback()
8178 * scm/translation-functions.scm (format-new-bass-figure): read
8179 figuredBassPlusDirection
8181 * scm/define-context-properties.scm
8182 (all-user-translation-properties): add figuredBassPlusDirection.
8184 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8186 * lily/align-interface.cc (set_ordered): new function.
8188 * lily/grob.cc (flush_extent_cache): rewrite.
8190 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8191 Interval pointer directly.
8193 * lily/main.cc (setup_paths): insert extra / .
8194 (setup_paths): junk cff entry.
8196 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8199 * lily/axis-group-engraver.cc (finalize): remove
8200 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8202 * lily/grob.cc (Grob): don't set extent from ctor.
8203 (extent): use property callbacks.
8205 * lily/axis-group-interface.cc: remove set_axes() function.
8207 * lily/grob-property.cc (del_property): new function.
8209 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8211 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8213 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8215 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8217 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8219 * mf/SConscript: Updates.
8221 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8223 * stepmake/stepmake/*:
8227 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8228 from any directory in build-dir. Cleanups.
8230 * make/srcdir.make.in: Remove.
8232 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8234 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8237 * lily/SConscript: Remove ttftools.
8239 * SConstruct: Resurrect.
8241 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8243 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8246 * lily/paper-book.cc (add_score_title): put Paper_score title into
8249 * scm/translation-functions.scm (format-new-bass-figure): also
8250 allow plus in combination with _
8252 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8254 * VERSION: 2.7.13 released.
8256 * lily/note-collision.cc (check_meshing_chords): don't wipe
8257 stencil, merely set transparent.
8259 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8260 (Top): document #'callbacks.
8261 (Top): document nested \override.
8263 * input/regression/figured-bass.ly: update for slash and pluses.
8265 * input/regression/figured-bass-continuation-forbid.ly (Module):
8268 * scm/translation-functions.scm (format-new-bass-figure): use
8269 slashed-digit if diminished is set.
8270 (format-new-bass-figure): add + if 'augmented is set.
8272 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8274 * input/test/piano-staff-distance.ly: remove file.
8276 * Documentation/user/advanced-notation.itely (Formatting cue
8277 notes): use length-fraction for making stems/beams smaller.
8279 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8282 * lily/new-figured-bass-engraver.cc: new property
8283 centerFiguredBassContinuations
8285 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8288 * lily/context-property.cc (execute_general_pushpop_property):
8291 * input/regression/override-nest.ly: new file.
8293 * python/convertrules.py (FatalConversionError.subber): conversion
8294 rule for #'callbacks
8296 * input/regression/override-nest.ly: new function.
8298 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8301 * lily/context-property.cc (lookup_nested_property): new function.
8302 (evict_from_alist): new function.
8303 (general_pushpop_property): new function.
8304 (execute_general_pushpop_property): rewrite. Support nested
8307 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8309 * lily/beam.cc: use length-fraction too.
8311 * scm/define-grob-properties.scm (all-user-grob-properties):
8312 remove property flag-width-function
8313 (all-user-grob-properties): remove space-function.
8315 * scm/layout-beam.scm: remove flag-width-function.
8317 * lily/beam.cc: remove flag-width-function
8319 * scm/layout-beam.scm: remove beam dir functions.
8321 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8323 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8324 for easier grace tweaks.
8326 * lily/beam.cc: remove dir-function.
8328 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8330 * lily/grob.cc: remove spacing-procedure.
8332 * lily/note-head.cc (calc_stem_attachment): new function.
8333 (internal_print): use callback to get glyph-name.
8335 * lily/grob-property.cc (get_interfaces): new function.
8337 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8339 * lily/stem.cc (calc_stem_end_position): new function.
8340 (calc_length): new function.
8341 document details for stem.
8342 remove Stem::get_direction()
8344 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8346 * lily/grob-property.cc (set_callback): new function.
8348 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8350 * lily/item-scheme.cc: new file.
8352 * lily/bar-line.cc (before_line_breaking): remove function.
8353 remove bar-size-procedure, break-glyph-function
8355 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8357 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8359 * lily/system-start-delimiter.cc (print): suicide from
8360 here. Remove after_line_breaking_callback.
8362 * lily/script-interface.cc (calc_direction): use callback for direction.
8364 * lily/side-position-interface.cc (aligned_side): don't use
8365 Side_position_interface::get_direction directly. Use callback.
8367 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8369 (get_print_stencil): rename from get_stencil: create stencil with
8370 transparency, color and cause.
8372 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8374 * python/convertrules.py (conv): insert temporary warning rule.
8376 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8378 * lily/grob-property.cc (try_callback): remove marker if applicable.
8380 * lily/grob.cc: elucidate doc about after/before-line-breaking
8382 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8384 * lily/stem.cc (height): idem.
8386 * lily/stem-tremolo.cc: idem.
8388 * lily/slur.cc (height): don't use get_uncached_stencil()
8390 * lily/rest.cc (y_offset_callback): use offset callback
8391 iso. after-line-breaking callback.
8393 * lily/grob.cc: change after/before-line-breaking-callback to
8394 after/before-line-breaking dummy properties.
8396 * lily/include/grob.hh: remove Grob_status.
8398 * scm/define-context-properties.scm
8399 (all-user-translation-properties): remove verticalAlignmentChildCallback
8401 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8402 (calc_direction): use callback
8403 (calc_positions): use callback.
8405 * lily/tie.cc (calc_direction): use callback. Only call parent
8406 positioning for more than one tie.
8408 * lily/tie-column.cc (calc_positioning_done): use callback
8410 * lily/slur-scoring.cc (calc_control_points): use callback
8412 * lily/slur.cc (calc_direction): use callback.
8414 * lily/note-collision.cc (force_shift_callback): remove.
8416 * lily/dot-column.cc (force_shift_callback): remove. Use
8417 other_axis_parent_positioning.
8419 * lily/grob.cc (other_axis_parent_positioning): new function.
8420 (same_axis_parent_positioning): new function
8422 * lily/align-interface.cc (alignment_callback): remove function.
8424 * lily/note-collision.cc (calc_positioning_done): use callback.
8426 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8427 (calc_direction): idem.
8428 remove print function.
8430 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8432 * lily/dot-column.cc (calc_positioning_done): use callback.
8434 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8436 * lily/beam.cc (calc_direction): use pseudo-property for beam
8438 (calc_positions): use callback
8440 * lily/align-interface.cc (calc_positioning_done): use
8441 callback. Fold fixed distance and normal alignment in one function.
8443 * lily/stem.cc (calc_stem_end_position): use callback.
8444 (calc_positioning_done): idem.
8445 (calc_direction): idem.
8446 (calc_stem_end_position): idem
8447 (calc_stem_info): idem.
8449 * lily/grob-property.cc (get_property_data): new function:
8450 (try_callback): new function.
8452 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8455 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8457 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8459 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8463 * lily/include/*.hh (Module): compile fixes.
8465 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8467 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8468 as an argument for char-syntax: use (char-syntax (or nil 0))
8469 instead of (char-syntax nil), thanks to Milan Zamazal.
8471 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8473 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8476 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8479 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8481 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8482 add class_name() method.
8484 * lily/music-scheme.cc: remove ly:music-name.
8486 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8488 * cygwin/postinstall-lilypond.sh: Remove cruft.
8490 * cygwin/postremove-lilypond.sh: Remove.
8492 * cygwin/GNUmakefile (default): Remove postremove rules.
8494 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8496 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8499 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8502 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8503 consider break index for broken spanner.
8505 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8506 characters from string before splitting.
8508 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8510 * scm/framework-ps.scm (output-preview-framework): use
8511 is-book-title to determine whether to chop off the booktitle.
8513 * lily/paper-book.cc (systems): init from book-title-properties
8514 (add_score_title): init score-title-properties.
8516 * ly/paper-defaults.ly: add {score,book}-title-properties.
8518 * scm/document-backend.scm (lookup-interface): error message if
8519 using unknown interface.
8521 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8524 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8526 (make_bracket): new function.
8528 * scm/lily.scm (define-scheme-options): add paper-size option.
8530 * ly/declarations-init.ly (laissezVibrer): get paper size from
8533 * scm/translation-functions.scm: use \fontsize for changing the
8536 * scm/define-grobs.scm (all-grob-descriptions): set
8537 between-length-limit to 1.0
8539 * lily/tie-helper.cc: add between_length_limit_ detail property.
8541 * mf/feta-bolletjes.mf: typos.
8543 * lily/note-head.cc (internal_print): don't shadow idx
8544 parameter. This fixes wrong attachment for do shape heads.
8546 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8548 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8550 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8552 * scm/layout-slur.scm: rename from slur.scm
8554 * scm/layout-page-layout.scm: rename from page-layout.scm
8556 * scm/layout-beam.scm: rename from beam.scm
8558 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8559 bass-figure-interface
8561 * lily/new-figured-bass-engraver.cc (process_music): add
8562 implicitBassFigures property.
8564 * scm/define-markup-commands.scm (pad-x): new markup.
8566 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8567 minimumVerticalExtent on FiguredBass context.
8569 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8570 case the continuation crosses a line break.
8572 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8574 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8575 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8576 absolute file name bug.
8578 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8580 * VERSION (PACKAGE_NAME): release 2.7.12
8582 * input/regression/figured-bass-continuation-center.ly: new file.
8584 * input/regression/beam-outside-beamlets.ly: new file.
8586 * lily/beam.cc (set_beaming): don't clip edges.
8587 (connect_beams): don't clip edges.
8589 * lily/beaming-info.cc (clip_edges): new function.
8591 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8593 * Documentation/user/instrument-notation.itely (Figured bass):
8594 demonstrate extenders, update seealso links.
8596 * scm/titling.scm (marked-up-headfoot): change tagline
8597 handling. tagline = ##f will blank the tagline as well.
8599 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8601 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8603 * lily/new-figured-bass-engraver.cc (struct
8604 New_figured_bass_engraver): add new_music_found_ member.
8606 * lily/lilypond-version.cc (Lilypond_version): deal with
8607 incorrectly formatted version strings.
8609 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8610 New_figured_bass_engraver by default.
8612 * lily/ttf.cc (print_trailer): only define glyph names when
8613 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8615 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8617 * lily/horizontal-bracket.cc (make_bracket): new function.
8619 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8620 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8621 BassFigureLine, BassFigureAlignment
8623 * lily/new-figured-bass-engraver.cc (process_music): new file.
8625 * lily/figured-bass-continuation.cc: new file.
8627 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8630 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8632 * scripts/lilypond-book.py: Bug fix, put the quote around the
8633 actual score for LaTeX documents.
8635 * scm/define-grobs.scm (all-grob-descriptions): Change
8636 collapse-height of the SystemStartBracket grob to 5.0,
8637 so the bracket disappears for single stave score lines (similarly
8638 to SystemStartBraces).
8640 * Documentation/user/advanced-notation.itely (Polymetric
8641 notation): Clarify the use of compressMusic.
8643 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8644 that the grace spacer note in other staves need the same duration
8645 and document the stroke-style property.
8647 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8649 * Documentation/user/global.itely (Vertical spacing): document
8650 alignment-extra-space and fixed-alignment-extra-space.
8652 * Documentation/topdocs/NEWS.tely (Top): add entry.
8654 * input/regression/alignment-vertical-spacing.ly: new file.
8656 * python/convertrules.py (conv): add rule.
8658 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8660 * lily/align-interface.cc (stretch_after_break): new
8661 function. Read fixed-alignment-extra-space property.
8662 (align_elements_to_extents): read alignment-extra-space property.
8664 * lily/lily-guile.cc (robust_scm2dir): new function.
8666 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8667 (annotate-space-left): new function. Annotate space left on page.
8668 (annotate-y-interval): new function.
8669 (paper-system-annotate-last): new function. Annotate bottom-space.
8671 * mf/feta-beugel.mf (y):
8673 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8675 * VERSION (PACKAGE_NAME): release 2.7.11
8677 * scm/lily-library.scm (interval-translate): new function
8678 (interval-center): new function.
8680 * scm/page-layout.scm (paper-system-annotate): new function. Add
8681 arrows for dimensions.
8683 * scm/stencil.scm (dimension-arrows): new function.
8685 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8687 * input/regression/page-spacing.ly: add annotatespacing
8689 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8690 (LY_DEFINE): new function ly:paper-system-set-property!
8692 * Documentation/user/global.itely (Paper size): explain how to add
8695 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8696 correspond to GS's definition.
8698 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8700 (print): only connect to next bracket if the next one is alive.
8701 (print): set padding to 0.0 if the bound is a breakable
8702 column. This makes tupletFullLength brackets reach up to the staff
8703 line if it doesn't connect to the next line.
8705 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8707 * lily/bar-number-engraver.cc: correct docs.
8709 * scm/output-lib.scm (first-bar-number-invisible): rename from
8710 default-bar-number-visibility
8712 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8714 * scm/define-music-properties.scm (all-music-properties): remove
8717 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8719 * po/fi.po: refresh.
8721 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8723 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8725 (disappear): bugfix.
8727 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8729 * lily/include/paper-system.hh (class Paper_system): remove
8730 staff_extents_ member.
8732 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8734 * lily/include/paper-system.hh (class Paper_system): remove
8735 number_ variable. Remove is_title_. Remove break_before_penalty_
8737 * lily/paper-book.cc (systems): use 'number property iso. number_
8740 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8741 remove ly:paper-system-number.
8743 * scm/lily-library.scm (paper-system-title?): new function.
8745 * lily/book.cc (process): bugfix: flip ?: cases.
8747 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8750 * ly/music-functions-init.ly: add outputProperty music function.
8752 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8754 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8756 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8758 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8760 * lily/paper-system.cc (internal_get_property): new function.
8762 * Documentation/user/global.itely (Vertical spacing): refer to
8765 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8768 * input/regression/page-spacing.ly: new file.
8770 * input/regression/page-top-space.ly: new file.
8772 * lily/spacing-spanner.cc: cmath -> math.h
8774 * lily/paper-system.cc (read_left_bound): new function. Read
8775 line-break-system-details from left bound to determine extents.
8777 * Documentation/user/programming-interface.itely (Using LilyPond
8778 syntax inside Scheme): change applyxxx -> applyXxx.
8780 * ly/music-functions-init.ly: add outputProperty music function.
8782 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8784 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8786 * python/convertrules.py (conv): rule
8788 * ly/music-functions-init.ly: applyxxx -> applyXxx
8790 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8793 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8795 * flower/include/real.hh: include <math.h> iso. <cmath>
8797 * flower/include/offset.hh: include real.hh
8799 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8801 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8802 fix example, now that 'interfaces is no longer directly available.
8804 * lily/book.cc (process): don't crash if paper == NULL.
8808 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8810 * scm/define-music-types.scm (music-descriptions): set length and
8811 start-callback for QuoteMusic
8813 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8815 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8816 arguments. Fixes compilation error with gcc 3.3.
8818 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8820 * VERSION: release 2.7.10
8822 * stepmake/stepmake/python-module-rules.make
8823 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8825 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8828 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8830 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8831 -Werror. Otherwise GCC barfs over various optimizations.
8833 * scm/define-grob-properties.scm (all-internal-grob-properties):
8834 add note-head property
8836 * Documentation/user/instrument-notation.itely (Laissez vibrer
8839 * input/regression/laissez-vibrer-ties.ly: new file.
8841 * lily/laissez-vibrer-engraver.cc: new file.
8843 * lily/include/tie-column-format.hh: new file.
8845 * lily/tie-column-format.cc: new file.
8847 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8849 * lily/laissez-vibrer-tie.cc: new file.
8851 * lily/include/laissez-vibrer-tie.hh: new file.
8853 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8855 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8857 * scm/define-grobs.scm (all-grob-descriptions): add
8858 LaissezVibrerTie, LaissezVibrerTieColumn
8860 * lily/tie-column.cc (set_tie_config_directions): new function
8861 (final_shape_adjustment): new function.
8862 (shift_small_ties): new function.
8864 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8866 * lily/include/tie.hh (struct Tie_details): add x_gap_
8867 (struct Tie_configuration): add head_position_
8869 * lily/tie-column.cc (set_chord_outline): new function.
8871 * mf/cmr.enc.in: remove file.
8873 2005-09-11 Graham Percival <gpermus@gmail.com>
8875 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8877 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8879 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8880 reduce aliasing effects.
8882 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8885 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8887 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8889 * flower/include/real.hh: std::fabs too.
8891 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8893 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8895 * lily, flower: Include C++ iso C headers. Import namespace std
8898 * lily/side-position-interface.cc:
8900 * lily/note-head.cc:
8901 * lily/include/includable-lexer.hh:
8902 * flower/include/string-data.icc: Remove using std::*.
8904 * lily, flower: Include C++ iso C headers. Import namespace std
8907 * lily/side-position-interface.cc:
8909 * lily/note-head.cc:
8910 * lily/include/includable-lexer.hh:
8911 * flower/include/string-data.icc: Remove using std::*.
8913 * Documentation/user/instrument-notation.itely (Entering lyrics):
8914 Multiple latin-1->utf-8 conversion fix.
8916 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8918 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8920 * lily/tie.cc (get_configuration): also avoid dots for non-space
8923 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8925 * Documentation/user/instrument-notation.itely: Bugfix.
8927 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8929 * tex/GNUmakefile: don't install texinfo.tex
8931 * tex/ : cleanup: remove unused files.
8933 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8935 * flower/include/real.hh: using std::{isnan,isinf}
8937 * VERSION (PATCH_LEVEL): release 2.7.9
8939 2005-09-05 Graham Percival <gpermus@gmail.com>
8941 * Documentation/user/ instrument-notation.itely,
8942 advanced-notation.itely: minor tweaks.
8944 * input/test/script-chart.ly: add item padding.
8946 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8948 * flower/offset.cc: use math.h iso. <cmath>
8950 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8953 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8954 (widen-left-stencil-edges): new function. Fix alignment problems
8955 with LaTeX includegraphics.
8957 * lily/text-interface.cc (interpret_markup): use abort().
8959 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8961 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8963 * lily/tie.cc (get_configuration): update bezier shape as we
8965 (get_configuration): don't move large ties if we're outside of the
8968 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8970 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8972 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8974 * .cvsignore: Add auto-generated configure files and then some.
8976 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8978 * scm/define-grobs.scm (DynamicLineSpanner): Add
8979 X-extent-callback. Fixes hairpin-slur collision.
8981 2005-08-31 Graham Percival <gpermus@gmail.com>
8983 * Documentation/user/advanced-notation.itely,
8984 basic-notation.itely: minor changes.
8986 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8988 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8989 \linebreak between each .eps file if \betweenLilyPondSystem is
8992 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8993 music): Document the \linebreak
8995 * Documentation/user/lilypond-book.itely,
8996 input/tutorial/lbook-latex-test.tex,
8997 Documentation/user/examples.itely: Remove \usepackage{graphics}
8999 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9001 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9003 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9006 * scripts/lilypond-book.py (PREAMBLE_LY): define
9007 inside-lilypond-book
9008 (modify_preamble): new function. Insert \RequirePackage{graphics}
9009 when no {graphics found in preamble.
9011 2005-08030 Graham Percival <gpermus@gmail.com>
9013 * Documentation/user/basic-notation.itely, global.itely,
9014 tutorial.itely: misc small changes.
9016 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9018 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9021 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9023 * lily/tie-column.cc (new_directions): put Tie down on center
9026 * lily/script-interface.cc (before_line_breaking): use
9027 Grob::programming_error
9029 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9031 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9034 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9036 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9038 2005-08-29 Werner Lemberg <wl@gnu.org>
9040 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9041 the `*.scale.pfa' files to avoid warnings.
9043 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9045 * lily/tempo-performer.cc (process_music): idem.
9047 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9049 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9051 * Documentation/user/advanced-notation.itely (Text markup): not a
9054 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9056 * lily/staff-performer.cc (initialize): add tempo/name to
9059 2005-08-26 Graham Percival <gpermus@gmail.com>
9061 * Documentation/user/advanced.itely: add text-only example.
9063 * Documentation/user/invoking.itely: add index entries for
9066 * Documentation/user/ tutorial.itely, basic-notation.itely:
9067 small fixes suggested by Steve D. Thanks!
9069 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9071 * input/regression/markup-bidi-pango.ly: new file.
9073 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9074 standard. Remove #ifdef. Remove memleak.
9075 (text_stencil): use text_dir to decide how to composite items.
9076 (text_stencil): determine uniform text direction for the entire
9079 * scripts/lilypond-book.py (output_name): remove
9080 latex_filter_cmd. Non-portable to non-Unix systems.
9081 (get_latex_textwidth): use File.write and os.unlink() instead.
9083 * THANKS: add Vicente & Trevor.
9085 * lily/grob.cc (discretionary_processing): look up origin for
9086 programming_error too.
9088 * input/regression/tie-broken.ly: new file.
9090 * lily/tie-column.cc (set_chord_outlines): set outline for line
9093 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9095 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9096 unscaled transform, just translate stencils.
9098 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9101 * scm/define-markup-commands.scm (wordwrap-string): use
9103 (wordwrap-stencils): idem.
9106 (wordwrap-stencils): translate last line to right for
9107 text-direction = LEFT.
9109 * scm/define-grob-properties.scm (all-user-grob-properties): add
9112 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9114 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9115 when copying a Lily_parser object.
9117 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9119 * scm/define-markup-commands.scm (null): add null markup.
9121 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9123 * lily/item.cc: Add documentation of center-invisible
9125 2005-08-24 Graham Percival <gpermus@gmail.com>
9127 * Documentation/user/advanced-notation.itely: add info about
9130 * Documentation/user/programming-interface.itely: fix example
9131 involving raised text.
9133 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9135 * lily/beam.cc (print): fix X start/end points of isolated
9138 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9140 * lily/multi-measure-rest.cc (set_text_rods): new function.
9142 * lily/vertical-align-engraver.cc (process_music): call
9143 Align_interface::set_axis(). This forces #'elements to be ordered,
9144 preventing random vertical reordering of staves.
9146 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9147 add avoid-slur property.
9149 * Documentation/user/basic-notation.itely (Measure repeats): add
9150 countPercentRepeats example.
9152 * Documentation/user/advanced-notation.itely (Other text markup
9153 issues): remove remark about normal-font. We have \normal-text
9155 * input/regression/tie-chord.ly: add note about remaining bugs.
9157 * lily/tie.cc (print): try Tie_column::set_directions () if
9158 control-points not yet defined.
9160 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9162 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9163 extent. This fixes braces falling out of the EPS bbox.
9165 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9168 2005-08-23 Graham Percival <gpermus@gmail.com>
9170 * {various} : change #up->#UP and #down->#DOWN.
9172 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9174 * Documentation/user/advanced-notation.itely: clarify
9175 what objects handles text on a multimeasure rest.
9177 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9179 * VERSION (PATCH_LEVEL): release 2.7.7
9181 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9183 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9185 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9187 * input/regression/*.ly: formatting clean-up. Default layout
9188 before music expression.
9190 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9191 romanze28-2 example.
9193 * scm/ps-to-png.scm: remove dir-re function.
9194 (make-ps-images): generate page names, instead of globbing them.
9195 This brings down LilyPond memory usage for make web by a factor
9198 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9199 don't use glob. With 3000 files, globbing
9200 Documentation/user/out-www/ can take too much time.
9202 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9204 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9206 * input/regression/tie-manual.ly: new file
9208 * input/regression/tie-chord.ly: update.
9210 * flower/include/interval.hh (struct Interval_t):
9212 * lily/tie.cc (distance): new function
9213 (height): new function.
9214 (init): new function
9215 (Tie_details): new struct.
9217 * lily/skyline.cc (skyline_height): new function.
9219 * lily/tie-column.cc (set_chord_outlines): new function.
9220 (new_directions): read tie-configuration
9222 * lily/skyline.cc: fix ASCII art.
9224 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9226 * python/convertrules.py (string_or_scheme): Fix spelling error
9228 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9230 * lily/tie-column.cc (set_directions): set directions only once.
9231 (add_configuration): new function.
9233 * lily/tie.cc (set_control_points): new function
9235 * lily/tie-column.cc (new_directions): new function.
9237 * ly/music-functions-init.ly: set 'pitch property
9238 iso. trill-pitch. This makes \relative work with \pitchedTrill
9240 * lily/tie.cc (get_configuration): new function. Don't generate
9241 control points, rather, generate configuration.
9242 remove head-pair property.
9244 * lily/include/tie.hh (struct Tie_configuration): new struct.
9246 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9248 * Documentation/topdocs/NEWS.tely: clarify.
9250 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9252 * lily/tie.cc: remove minimum-length
9254 * scm/define-grob-properties.scm (all-user-grob-properties):
9255 remove staffline-clearance, y-offset
9257 * input/regression/tie-dots.ly (Module): remove.
9259 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9260 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9262 * input/regression/tie-single.ly: new file.
9264 2005-08-21 Graham Percival <gpermus@gmail.com>
9266 * ly/bagpipe.ly: fix compile problem.
9268 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9270 * lily/midi-item.cc (name): new method.
9272 * lily/staff-performer.cc (acknowledge_audio_element): use
9273 signature of baseclass.
9275 * lily/engraver-group.cc (do_announces): move recursion call out
9278 * lily/drum-note-performer.cc (class Drum_note_performer): use
9279 process_music everywhere.
9281 * ly/performer-init.ly: add default children everywhere.
9283 * lily/paper-book.cc (output): call paper-book-write-midis
9284 directly: always write MIDI, even if no \layout {} block.
9286 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9288 * VERSION (PACKAGE_NAME): release 2.7.6
9290 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9291 about not being able to handle repeat.
9293 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9295 * Documentation/user/examples.itely (Piano templates):
9296 * lily/include/performer-group.hh: Remove last traces of
9297 Performer_group_performer. Fixes make web.
9299 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9301 * Documentation/user/examples.itely (Piano templates): change
9302 Engraver_group_engraver -> Engraver_group
9304 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9305 scm_stand_in_procs is not weak_any.
9307 * lily/volta-bracket.cc (print): don't use strcmp().
9309 * lily/volta-engraver.cc (process_music): use
9310 Text_interface::is_markup() for setting the 'text property of the
9313 * input/mutopia/claop.py (accents): update syntax to 2.6
9315 * scm/define-context-properties.scm
9316 (all-user-translation-properties): add countPercentRepeats.
9318 * Documentation/user/basic-notation.itely (Measure repeats): add
9319 isolated percent example.
9321 2005-08-18 Graham Percival <gpermus@gmail.com>
9323 * input/ {various}: change direction #1, #-1 to
9324 #up/#down or \fooUp, \fooDown.
9326 * Documentation/user/music-glossary.tely: #-1 to #down.
9328 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9329 to #up, #-1 to #down.
9331 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9333 * lily/include/engraver-group.hh: rename.
9335 * lily/include/performer-group.hh: rename.
9337 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9339 * input/test/script-abbreviations.ly: Removed some old LaTeX
9342 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9344 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9345 Remove functions. Remove if 1: constructs, reindent.
9347 * scripts/convert-ly.py (add_version): Add functions from
9350 * scm/script.scm (default-script-alist):
9351 s/priority/script-priority. Fixes script stacking. Backportme.
9352 (Fermata): Very low priority.
9354 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9356 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9358 * input/regression/slur-script.ly: remove padding tweaks. Add
9361 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9362 time sigs and related stuff.
9364 * scm/define-grob-properties.scm (all-user-grob-properties): add