1 2006-11-05 Joe Neeman <joeneeman@gmail.com>
3 * lily/include/page-turn-page-breaking.hh: remove unused
6 * lily/page-turn-page-breaking.cc (calc_demerits):
7 * lily/optimal-page-breaking.cc (try_page_spacing): remove
10 2006-11-05 Werner Lemberg <wl@gnu.org>
12 * Documentation/user/changing-defaults.itely,
13 Documentation/user/preface.itely: Use `--', not `---'.
16 * Documentation/user/introduction.itely: Minor improvements.
17 (Automated engraving): Make example using \applyOutput work
20 * input/regression/apply-output.ly: Improve.
22 2006-11-05 Han-Wen Nienhuys <hanwen@lilypond.org>
24 * lily/dynamic-engraver.cc:
27 * input/regression/note-head-harmonic.ly:
29 * input/regression/note-head-harmonic-whole.ly:
30 Center harmonic heads if stem is invisible. Fixes #140
33 end context snippet with '\n'
36 catch all GUILE exceptions
41 * lily/include/lily-lexer.hh:
43 * lily/lily-parser.cc:
44 Lily_parser* arg for copy ctor too.
47 abc2ly new tempo syntax
49 2006-11-04 Heikki Junes <hjunes@gmail.com>
51 * po/fi.po: update Finnish translation.
53 2006-11-03 Graham Percival <gpermus@gmail.com>
55 * Documentation/user/ {various}: rename page->spacing,
56 global->non-music, invoking->running, example->templates.
58 2006-11-03 Nicolas Sceaux <nicolas.sceaux@free.fr>
60 * scm/display-lily.scm: add a parser argument to display methods,
61 instead of using a *parser* special variable.
63 * scm/define-music-display-methods.scm: add a parser argument to
64 display methods. Update the methods for \melisma, \melismaEnd,
65 \breathe, \tempo, \partial.
67 * input/no-notation/display-lily-tests.ly: update the test
68 utilities according to the changes in display-lily.scm
70 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
72 * *: The Joy of Merging.
74 * buildscripts/git-update-changelog.py:
75 sort commits, and use .git-commits-done file.
79 dist emacs patches too.
81 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
86 * lily/context-def.cc:
87 * lily/include/parse-scm.hh:
88 * lily/include/smobs.hh:
91 * lily/program-option.cc:
93 implement and use ASSERT_LIVE_IS_ALLOWED()
95 * ly/music-functions-init.ly:
97 set-part-combine fix for autochange.
99 * lily/include/lily-lexer.hh:
100 * lily/include/lily-parser.hh:
101 * lily/lily-lexer.cc:
102 * lily/lily-parser-scheme.cc:
103 * lily/lily-parser.cc:
104 clear lexer scopes after parsing file. Plugs pseudo memory leak
106 * ly/declarations-init.ly:
107 * ly/music-functions-init.ly:
108 * scm/part-combiner.scm:
109 Remove set-part-combine-listener. This plugs a memory leak.
115 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
120 * lily/part-combine-iterator.cc:
121 don't allocate part combine events statically. Plugs small leak.
123 * lily/lily-parser-scheme.cc:
124 plug memleak in case of failed files.
126 * lily/include/source.hh:
131 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
133 * lily/include/program-option.hh:
134 * lily/program-option.cc:
135 get_program_option() function
137 * ly/titling-init.ly:
138 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
140 * lily/include/translator.hh:
141 * lily/include/translator.icc:
142 * lily/translator.cc:
145 * lily/figured-bass-engraver.cc:
146 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
148 * stepmake/stepmake/compile-vars.make:
149 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
151 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
157 trim warning messages.
162 * input/regression/utf-8.ly:
163 document utf-8 meaning of phrases.
165 * scm/define-markup-commands.scm:
166 make \caps markup default to smallCaps
168 * lily/pango-font.cc:
170 use glyph indexing for glyph name .notdef
172 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
174 * input/regression/utf-8.ly: Fix doc to match order of language
177 2006-11-01 Joe Neeman <joeneeman@gmail.com>
179 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
180 page and line forces.
182 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
184 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
186 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
188 * Documentation/user/GNUmakefile:
189 don't use ImageMagick, use GS directly.
192 otf depends on otf-g?table. Fixes race condition in -j2 build.
193 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
199 remove .deb/.rpm downloading.
201 * buildscripts/git-update-changelog.py:
202 bugfixes for git-update-changelog.py
204 * Documentation/user/GNUmakefile:
207 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
209 * input/regression/tie-semi-single.ly:
210 use position/direction from single tie case too. This fixes
211 overrides and defaults for single laissez-vibrer and repeat ties.
213 * buildscripts/git-update-changelog.py:
214 only prepend header if one patch was successful.
216 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
218 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
219 stuff. Remove cygwin packaging stuff.
221 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
223 * python/convertrules.py (conv): Part 2 fixes vertical extent.
225 * input/test/vertical-extent.ly: Fix and elaborate on vertical
226 staff extent. (Thanks Mats)
228 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
230 * buildscripts/git-update-changelog.py (main): write .msg and cvs
233 * scm/define-grobs.scm:
234 separation-items have width
240 * Documentation/topdocs/NEWS.tely:
241 * lily/separating-group-spanner.cc:
242 * lily/slur-engraver.cc:
243 * lily/slur-scoring.cc:
244 * scm/define-grobs.scm:
245 * input/regression/slur-clef.ly:
246 add breakableSeparationItem to extra encompass for slurs. This
247 fixes slur/clef slur/key collisions etc. Should fix #49
249 * lily/include/slur-scoring.hh:
250 * lily/slur-scoring.cc:
251 Use X of separation item as slur start. Fixes #120
253 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
255 * buildscripts/git-update-changelog.py (changelog_body): don't
258 * lily/grob.cc: add avoid-slur
260 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
264 move server/emacsclient to elisp/
266 * buildscripts/git-update-changelog.py (Commit.note_del_file):
269 * elisp/server.el.patch:
272 * elisp/emacsclient.patch:
275 * buildscripts/git-update-changelog.py:
282 * buildscripts/git-update-changelog.py:
283 script to update ChangeLog with Git messages.
285 * lily/beam-engraver.cc:
286 * input/regression/rest-pitched-beam.ly:
287 don't set callback if staff-position set. Fixes #126.
289 * lily/bar-number-engraver.cc:
291 * lily/fingering-engraver.cc:
292 * lily/grob-property.cc:
294 * lily/include/grob.hh:
295 * lily/include/lily-guile-macros.hh:
296 * lily/mark-engraver.cc:
297 * lily/melody-engraver.cc:
298 * lily/script-column.cc:
299 * lily/tie-formatting-problem.cc:
301 internal_get_property_data() using ly_symbol2scm()
303 * stepmake/stepmake/generic-targets.make:
304 create .gitignore in outdir.
309 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
311 * input/test/vertical-extent.ly:
312 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
314 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
316 * stepmake/bin/add-html-footer.py (compose): remove setgcos
318 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
320 * GNUmakefile.in (install-help2man): install-help2man target.
322 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
324 * SConstruct (configure): Do not check for /bin/sh.
326 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
328 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
331 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
333 * input/regression/fret-boards.ly: new file.
335 * po/de.po: new po courtesy translation team.
337 * scripts/lilypond-book.py (get_option_parser): add newline to doc
340 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
342 * ly/gregorian-init.ly (neumeDemoLayout): update
343 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
345 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
346 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
348 2006-10-27 Erlend Aasland <erlenda@gmail.com>
350 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
351 Yet another build fix.
353 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
355 * SConstruct (lilypondprefix): use sorted() for list_sort()
358 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
360 * flower/SConscript: Unit test rules.
362 * flower/test-std.cc: Compile fix.
364 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
366 * python/midi.c (pymidi_parse_track): warning fixes.
368 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
369 include dot-column.hh
371 2006-10-26 Graham Percival <gpermus@gmail.com>
373 * Documentation/user/{basic-, global}: minor changes from mailist.
375 2006-10-26 Erlend Aasland <erlenda@gmail.com>
377 * scm/define-grobs.scm: trivial beautification
379 * lily/tie-performer.cc: no need to #include "pqueue.hh"
381 * lily/source-file.cc: put multibyte var inside #if clause
383 * scm/define-grob-interfaces.scm:
384 * scm/define-grob-properties.scm:
385 Build fix (string-fret-finger-combinations)
387 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
390 * Documentation/user/lilypond-book.itely: Build fix.
392 2006-10-26 Joe Neeman <joeneeman@gmail.com>
394 * lily/system.cc (get_paper_system):
395 * lily/paper-book.cc (systems):
396 move most of the backwards compatibility stuff into
399 * Documentation/topdocs/NEWS.tely: add 2 entries for the
402 * Documentation/user/page.itely: remove time-scaled-music
403 bug for the Page_turn_engraver
405 * lily/paper-book.cc (set_system_penalty): backwards
406 compatibility (breakbefore) for the old page breaker
408 2006-10-25 Graham Percival <gpermus@gmail.com>
410 * Diocumentation/user/instrument-notation.itely: added more
411 info about stanzas; thanks Geoff!
413 * Documentation/user/ {basic, advanced}: small fixes from
416 * THANKS: add some bug reporters.
418 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
420 * scm/define-context-properties.scm (all-user-translation-properties):
421 noteToFretFunction: Add.
423 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
424 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
426 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
428 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
431 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
432 Remove bashism in delete.
434 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
436 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
438 * scm/translation-functions.scm (determine-frets-mf): flatten let*
440 * scm/define-context-properties.scm
441 (all-user-translation-properties): add maximumFretStretch property.
443 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
445 * lily/source-file.cc (get_counts): use multibyte variable.
447 * scm/translation-functions.scm (determine-frets-mf): new
448 function: compute fret numbers.
450 * scm/output-lib.scm (string-frets->description) new function.
451 (fret-board::calc-stencil): new function
453 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
455 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
457 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
459 * lily/tab-note-heads-engraver.cc: cleanups.
461 * lily/fretboard-engraver.cc: new file
463 * ly/engraver-init.ly: add FretBoards context
465 2006-10-24 Joe Neeman <joeneeman@gmail.com>
467 * lily/grob.cc (pure_relative_y_coordinate)
468 (pure_height): use the new call_pure_function stuff
470 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
473 * lily/side-position-interface.cc (pure_y_aligned_side): add an
476 * lily/simple-closure.cc (ly_eval_simple_closure): make
477 simple-closure evaluatable from scheme
478 (evaluate_with_simple_closure): make simple-closures pure-
481 * lily/slur.cc (pure_outside_slur_callback): new function
483 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
484 fits in with previous changes that made the page forces much
487 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
488 and pure-Y-extent into this new function.
489 (pure-conversions-alist): add outside-slur-callback
491 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
493 * Documentation/user/advanced-notation.itely (Instrument names):
494 Remove obsolete bug workaround for instrument names on piano
497 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
499 * Documentation/user/lilypond-book.itely (Integrating DocBook and
500 music): patch by Bertalan Fodor for docbook.
502 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
503 of $(LILYPOND). Prevents lilypond run for .txt files.
505 * INSTALL.txt: gitness.
507 * .cvsignore: update to force gitness.
509 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
511 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
512 detect suicide in nested tuplets.
514 2006-10-23 Werner Lemberg <wl@gnu.org>
516 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
517 typo in argument to FT_Get_X11_Font_Format.
519 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
521 * stepmake/stepmake/po-vars.make: more gitness.
523 * flower/polynomial.cc (check_sol): no empty if bodies.
525 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
527 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
529 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
531 * Documentation/user/examples.itely (Transcription of mensural
532 music): Added more comments in .ly source. Suggest to remove
533 Forbid_line_break_engraver to allow line breaking at all bars.
535 * Documentation/user/instrument-notation.itely (Ancient
536 articulations): Updated @refbugs regarding episem.
538 * Documentation/user/instrument-notation.itely (Gregorian square
539 neumes ligatures): Added \augmentum dots. Updated @refbugs
540 regarding \augmentum.
542 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
544 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
547 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
550 * ly/gregorian-init.ly: Added \augmentum macro.
552 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
554 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
556 * lily/pango-font.cc (pango_item_string_stencil): use
557 FT_Get_X11_Font_Format()
559 2006-10-22 John Mandereau <john.mandereau@free.fr>
561 * po/fr.po: update translation.
563 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
565 * VERSION (PATCH_LEVEL): bump version
567 * input/regression/horizontal-bracket-break.ly: new file.
569 * scm/define-grobs.scm (all-grob-descriptions): calc
572 * lily/horizontal-bracket.cc (make_bracket): support
573 connect-to-neighbor. Fix #118
575 * VERSION: release 2.9.26-2
577 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
579 * VERSION (PACKAGE_NAME): release 2.9.26
581 * buildscripts/output-distance.py (test_basic_compare): add
583 (FileLink.multi_img_cell): new function, glob multi-page png
586 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
588 * po/lilypond.pot: update.
590 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
592 * Documentation/user/global.itely (File structure): remove
595 * lily/parser.yy (FIXME): remove ADDQUOTE
597 * Documentation/user/global.itely (Extracting fragments of
598 notation): new node, about clip systems.
600 * Documentation/user/lilypond-book.itely (Many quotes of a large
601 score): ref to clip systems.
603 * Documentation/user/instrument-notation.itely (Entering lyrics):
604 add note about lyric ties and required font.
606 * lily/open-type-font.cc (glyph_list): format errors.
608 * Documentation/user/programming-interface.itely (Scheme
609 procedures as properties): more doco on simple-closure and scheme
611 (Input variables and Scheme): use lilypond[verbatim], document
614 * Documentation/user/page.itely (Displaying spacing): use \book
615 explicitly, so arrows show .
616 (Line breaking): add note about Forbid_line_break_engraver
618 * Documentation/user/tweaks.itely (Common tweaks): also set length
619 to prevent tie squeezing.
620 (Default files): use @var{}
622 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
623 (Generating LilyPond files): add FOMUS.
625 2006-10-20 Joe Neeman <joeneeman@gmail.com>
627 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
628 Y-offset for TextScript and Script
630 * lily/text-engraver.cc (make_item):
631 * lily/script-engraver.cc (make_script_from_event):
632 remove call to Side_position_interface::set_axis since all scripts
633 now have this set by default
636 * lily/prob.cc: use variables
638 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
640 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
641 at typography, rather analyse stream event duration.
643 * Documentation/user/page.itely (Page formatting): set a6 paper
644 for system separator example.
646 * lily/arpeggio.cc (Module): idem.
648 * lily/accidental-placement.cc: add script-priority property.
650 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
652 * lily/ttf.cc (print_trailer): if all else fails: use
653 glyphIndexXXXX as glyph name. Fixes #117.
655 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
656 entry if cmap contains glyph.
657 (get_index_to_charcode_map): remove from Pango_font class, use
658 global filename -> font mapping.
659 (get_glyph_index_name): new function.
660 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
663 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
665 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
668 * scm/define-grob-properties.scm (all-user-grob-properties):
669 remove outdated doc. Fixes #116
671 * lily/completion-note-heads-engraver.cc (process_music): always
672 clone input events; otherwise we may overwrite input 'duration
673 property. Fixes #115.
675 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
678 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
681 * VERSION (PATCH_LEVEL): bump version.
683 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
685 * lily/engraver.cc (internal_make_grob): use variables.
687 * flower/string-convert.cc (dec2double): clean-up warnings.
689 * configure.in (CXXFLAGS): add -Werror.
691 * VERSION (PACKAGE_NAME): release 2.9.25
693 2006-10-18 Joe Neeman <joeneeman@gmail.com>
695 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
696 line even if we precede a forced break.
698 * lily/optimal-page-breaking.cc (try_page_spacing): square line
699 forces too. Make page-spacing weight default to 10 because the
700 changes to vertical springs decreased the page force/line force
701 proportions. Also, take the average of line force and page force
702 instead of just the sum.
704 * lily/constrained-breaking.cc (initialize): make the stiffness
705 of the vertical springs depend on the height of the system. This
706 prevents pages with only a few large systems from getting huge
709 * Documentation/user/page.itely (Page formatting): document the
710 change in default page-spacing-weight
712 * lily/include/constrained-breaking.hh: initialise bottom_padding_
714 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
716 * input/typography-demo.ly (melody): remove superfluous slur.
718 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
719 add piano-pedal-script-interface
721 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
723 * scripts/lilypond-book.py: DocBook support.
725 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
727 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
729 (stop_translation_timestep): set bound to currentMusicalColumn if
730 not set yet. Fixes #102
732 * lily/piano-pedal-bracket.cc: formatting.
734 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
736 * lily/piano-pedal-align-engraver.cc: new class
737 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
740 2006-10-18 Heikki Junes <hjunes@gmail.com>
742 * po/fi.po: Update Finnish translation (before the next release).
744 2006-10-17 Joe Neeman <joeneeman@gmail.com>
746 * lily/system.cc (get_paper_system): reinstate the backwards-
747 compatible page breaking for the old page breaker.
749 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
751 * lily/recording-group-engraver.cc: removed
753 * lily/context.cc, lily/translator-group.cc: Don't touch
754 Context::implementation_ if it's null
756 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
758 * scm/paper.scm: only use left-margin if defined.
760 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
762 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
764 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
765 strokeFingerOrientations
767 * lily/script-column.cc (row_before_line_breaking): also handle
768 accidentals and arpeggios in horizontal script stacking.
770 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
773 * input/regression/script-stack-horizontal.ly: trim.
775 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
777 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
780 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
781 'text if string argument.
783 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
785 * scm/define-context-properties.scm
786 (all-user-translation-properties): change to strokeFingerOrientations
788 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
790 * lily/parser.yy: remove debug output
792 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
794 * ly/paper-defaults.ly: set left/right margin.
796 * scm/paper.scm (set-paper-dimensions): use left-margin and
797 right-margin for computing linewidth.
799 * Documentation/topdocs/NEWS.tely (Top): idem.
801 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
804 * scm/define-markup-commands.scm (tied-lyric): increase negative
805 space: space syllables tighter.
807 * VERSION (PATCH_LEVEL): bump version.
809 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
812 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
814 * COPYING: further clarification
816 * VERSION: release 2.9.24
818 * input/regression/script-stack-horizontal.ly: add version.
820 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
822 * input/regression/lyric-tie.ly (texidoc): use different words.
824 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
826 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
828 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
829 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
831 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
833 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
835 * Doxyfile: remove file.
837 * scm/define-grob-interfaces.scm (string-finger-interface): add
838 string-finger-interface
840 * lily/general-scheme.cc (LY_DEFINE): move
841 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
843 * Documentation/topdocs/NEWS.tely (Top): add note for
844 string-finger feature.
846 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
849 * scm/output-lib.scm (string-finger::calc-text): read 'digit
852 * input/regression/script-stack-horizontal.ly: new file.
854 * ly/engraver-init.ly: add Script_row_engraver.
856 * lily/script-column.cc (order_grobs): refactor: separate axis
858 (row_before_line_breaking): new function.
860 * lily/script-row-engraver.cc (Script_row_engraver): new file.
862 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
864 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
866 * Documentation/user/instrument-notation.itely: Cleanup: Remove
867 annoying skip notes from mensural ligature example. Update
868 @refbugs for ligatures and mensural ligatures.
870 * lily/coherent-ligature-engraver.cc,
871 lily/include/coherent-ligature-engraver.hh,
872 lily/mensural-ligature-engraver.cc,
873 lily/vaticana-ligature-engraver.cc: Revise code for item
874 reparentizing. There should now be less programming_error
877 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
879 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
880 Maintenance bugfix: Don't create empty Stencil (), but empty box
881 instead. This fix should eliminate some programming_error
884 * ly/engraver-init.ly (MensuralStaff): Set default accidental
887 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
888 \layout block _before_ score.
890 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
892 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
894 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
896 2006-10-13 Erlend Aasland <erlenda@gmail.com>
898 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
900 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
902 * VERSION (PATCH_LEVEL): bump version.
904 * COPYING: clarify exception note.
906 * lily/main.cc: remove remark about "COPYING".
908 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
909 system-count starts at 0 for each clip-region. Change name to
910 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
911 layout block, per score.
913 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
915 * lily/input-smob.cc: add equal_p for Input
917 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
920 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
922 * lily/prob.cc: Add equal_p predicate for Prob
924 * lily/translator.cc: small cleanup
926 * scm/document-music.cc: use data from translator listener
927 registration to generate documentation for event classes
929 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
931 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
933 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
935 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
937 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
939 * Documentation/topdocs/INSTALL.texi: Thinko.
941 * .cvsignore: Update.
943 * lexer-gcc-3.1.sh: Remove.
945 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
946 Update anonymous cvs access. Remove comment about gcc 3.0.4.
948 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
950 * VERSION: release 2.9.23
952 * lily/paper-column-engraver.cc (stop_translation_timestep): also
955 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
957 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
959 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
961 * input/regression/clip-systems.ly (Notes): new file.
963 * scm/lily.scm (define-scheme-options): add clip-systems option.
965 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
967 (dump-stencil-as-EPS): move bbox calculation from previous
969 (output-framework): use -dclip-systems
971 * scm/lily-library.scm (filtered-map): new function
973 * scm/framework-ps.scm (clip-system-EPS): new function.
974 (clip-system-EPSes): new function.
976 * lily/paper-column.cc: add rhythmic-location to interface
978 * scm/define-grob-properties.scm (all-user-grob-properties): add
979 rhythmic-location property.
981 * scm/clip-region.scm: new file: rhythmic-location data type and
982 system-clipped-x-extent function.
984 * ly/init.ly: use (scm clip-region)
986 * lily/paper-column-engraver.cc (stop_translation_timestep): set
987 rhythmic-location for paper column grobs.
989 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
991 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
993 * ly/engraver-init.ly: Remove obsolete comment on
996 * Documentation/user/instrument-notation.itely: Tune Ancient
997 Articulations figure, such that the episem actually shows.
999 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1000 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1002 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1005 2006-10-12 Graham Percival <gpermus@gmail.com>
1007 * Documentation/user/ {some}: minor edits that were lost somehow.
1009 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
1011 * VERSION (PACKAGE_NAME): bump version.
1013 * input/regression/lyric-tie.ly (texidoc): new file.
1015 * Documentation/topdocs/NEWS.tely (Top): add new feature.
1017 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1019 * scm/define-markup-commands.scm (tied-lyric): new function: split
1020 string along ~ and reattach with U+203F (tie character) and
1023 * scm/output-lib.scm (lyric-text::calc-text): new function.
1025 * lily/lyric-engraver.cc (process_music): don't set 'text.
1027 * scm/output-lib.scm (string-finger::calc-text): new function
1028 (lyric-text::print): new function.
1030 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1031 generic for fingering & string number. Use for string-finger.
1033 * scm/define-music-types.scm (music-descriptions): add
1036 * lily/fingering-engraver.cc (listen_string_finger): new function
1038 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1040 * scm/define-context-properties.scm
1041 (all-user-translation-properties): add stringFingerOrientations
1043 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
1045 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1046 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1048 * lily/dots.cc: Added style property for dots.
1050 * mf/parmesan-heads.mf: Fix typo in comment.
1052 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1053 adding longa head to feta font and removing obsolete default
1054 mapping scheme code.
1056 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1058 * scm/output-lib.scm (fingering::calc-text): use origin
1059 event-property, not music-property.
1061 * lily/lilypond.rc.in: spell my name correctly.
1063 2006-10-10 Joe Neeman <joeneeman@gmail.com>
1065 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1066 already have a non-empty extent. Fixes estimation for Hara-kiri
1069 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1071 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1074 * lily/ligature-engraver.cc: Remove unused #include.
1076 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1077 Bugfix: remove method check_for_prefix_loss(Item *) from global
1078 namespace to avoid namespace pollution.
1080 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1082 * VERSION: release 2.9.22
1084 * ly/generate-documentation.ly: update option name.
1086 * lily/dynamic-text-spanner.cc (print): revert fix.
1088 * scm/define-grob-interfaces.scm
1089 (trill-pitch-accidental-interface):
1090 add trill-pitch-accidental-interface
1092 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1093 dereference if it's really a duration.
1095 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1096 useBassFigureExtenders is not set.
1097 (listen_bass_figure): record as new event if
1098 useBassFigureExtenders not set. Fixes #103.
1100 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1101 instead: move circle. Fixes #107.
1103 * scm/define-grobs.scm (all-grob-descriptions): set
1104 allow-loose-spacing for PaperColumn and
1105 NonMusicalPaperColumn. Kludge for #110.
1107 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1109 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1110 allow-loose-spacing property.
1112 * scm/define-markup-commands.scm (postscript): gsave & grestore
1113 around embedded PS. Do setlinewidth too. Fixes #109.
1115 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1117 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1118 code. This patch fixes ligature brackets that were not at all
1121 2006-10-08 Graham Percival <gpermus@gmail.com>
1123 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1125 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1127 * scm/define-context-properties.scm: clarified docs (bug 91).
1129 * Documentation/user/basic-notation.itely: document volta brackets
1130 not aligning (bug 63).
1132 * Documentation/user/ global.itely invoking.itely: ignore or
1133 add warnings about texstr.
1135 2006-10-08 John Mandereau <john.mandereau@free.fr>
1137 * po/fr.po: update translation.
1139 * po/: update msgids.
1141 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1143 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1145 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1147 * Documentation/user/page.itely (Two-pass vertical spacing): add
1148 documentation for two-pass spacing technique.
1150 2006-10-06 Graham Percival <gpermus@gmail.com>
1152 * Documentation/user/convert-ly.txt: new file; new
1153 storage place for this file (moved from bugs/ CVS).
1155 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1157 * lily/note-head.cc: Fixed programming_error message.
1159 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1161 * scm/define-grobs.scm (pure-conversion): move pure-callback
1164 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1165 marcato, stopped, thumb.
1167 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1169 * lily/completion-note-heads-engraver.cc (process_music): don't
1170 skimp on memory usage.
1172 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1175 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1176 parenthesis item. This fixes premature Y-extent triggering. Fixes
1179 * VERSION (PATCH_LEVEL): bump version.
1181 2006-10-04 Graham Percival <gpermus@gmail.com>
1183 * Documentation/user/advanced-notation.itely: added
1184 info about instrument names for piano or other contexts,
1187 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1189 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1190 solfa_base_notewidth as unit for non-DO-notes too.
1192 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1194 * VERSION: release 2.9.21
1196 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1199 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1201 * python/lilylib.py (progress): Minor fix.
1203 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1205 * lily/note-name-engraver.cc: doc engraver.
1207 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1209 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1211 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1214 * lily/stem-engraver.cc (make_stem): don't set duration-log
1216 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1217 write snippet-names binary.
1219 * python/lilylib.py (system): use os.system for mingw32
1221 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1224 * scm/backend-library.scm: update email address.
1226 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1229 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1232 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1233 handle dot creation separately.
1235 * lily/tab-note-heads-engraver.cc (process_music): idem.
1237 * lily/drum-note-engraver.cc (process_music): idem.
1239 * lily/note-heads-engraver.cc (process_music): idem.
1241 * lily/rest-engraver.cc: don't set duration-log.
1243 * scm/output-lib.scm (string-number::calc-text): new function.
1244 (note-head::calc-duration-log): new function.
1246 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1248 * scm/output-lib.scm (fingering::calc-text): new function.
1250 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1252 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1253 and include-eps-font -> include-eps-fonts
1255 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1257 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1259 * lily/timing-translator.cc: list properties.
1260 (start_translation_timestep): update internalBarNumber too.
1262 * scm/define-context-properties.scm
1263 (all-user-translation-properties): add internalBarNumber.
1265 * input/regression/spacing-no-note.ly: new file.
1267 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1269 * lily/book.cc: #include cleanup.
1271 * lily/include/lily-guile-macros.hh: add assert to
1272 scm_or_str2symbol(SCM).
1274 * VERSION (PATCH_LEVEL): bump version.
1276 * lily/spacing-spanner.cc (musical_column_spacing): handle
1277 musical->nonmusical spacing case, where there is no spacing
1278 wish. Fixes issue #61.
1280 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1281 (pango_item_string_stencil): use logical rect horizontally (to
1282 preserve spaces), ink_rect vertically (for time signatures).
1284 * lily/font-metric.cc (word_stencil): new interface function
1286 * input/regression/utf-8-mixed-text.ly: new file.
1288 * lily/percent-repeat-engraver.cc (listen_percent): remove
1291 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1292 non-dynamic scripts. Fixes #30.
1294 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1296 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1298 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1299 SCM_UNDEFINED for non-existent data.
1301 * lily/side-position-interface.cc (general_side_position): allow
1302 optional current_offset argument for chaining, so combinations of side-position
1303 and outside slur callback don't add up. Fixes issue #92.
1305 * lily/pango-font.cc (pango_item_string_stencil): use
1306 logical_rect. This prevents spaces after words from disappearing,
1309 * VERSION: release 2.9.20
1311 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1313 * scm/define-grob-properties.scm (all-user-grob-properties):
1314 mention stencil as user settable.
1316 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1318 * Documentation/user/page.itely (Page formatting):
1319 document auto-first-page-number
1321 * lily/page-breaking.cc (find_chunks_and_breaks):
1322 * lily/paper-score.cc (calc_breaking): Follow changes to the
1323 Constrained_breaking interface
1325 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1326 here backwards, as an optimisation
1327 (initialize): new function; move most of the code in resize () here
1328 (combine_demerits): cache ragged_right_
1329 (Constrained_breaking): constructor now takes the Paper_score
1331 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1333 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1334 avoid parser lookahead for 0-ary functions.
1336 * lily/translator.cc: Extract event classes from
1337 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1339 2006-10-02 Heikki Junes <hjunes@gmail.com>
1341 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1344 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1346 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1347 function. Call the page breaking function selected in the
1348 `page-breaking' \paper variable, then the post processing function
1349 chosen using the `page-post-process' \paper variable.
1350 (line-height): new function. Return the height of a system.
1351 (line-minimum-position-on-page): new function. Return the position
1352 of a system on page (using the previous line position), only
1353 considering between system padding.
1354 (stretchable-line?): new function. Says whether a line can be
1355 stretched (ie. is not a title nor a single staff system).
1356 (page-maximum-space-left): new function. Computes space left on a
1357 page, when all systems are separated by their padding.
1359 * lily/page-breaking.cc (breaking::make_pages): Move page post
1360 processing function call to page breaking wrapper (common to all
1363 * lily/paper-book.cc (book::pages): call the page breaking
1364 wrapper, instead of the page breaker directly
1366 * ly/paper-defaults.ly: Add \paper variables for page breaking
1367 wrapper and page post processing function. Make
1368 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1369 `system-maximum-stretch-procedure' variable for holding a function
1370 computing the maximum stretch a system allows.
1372 * scm/layout-page-dump.scm (write-page-breaks): computes the
1373 stretch to apply to systems on a page to minimize left
1374 space. Dump this stretch length.
1376 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1377 the system-stretch property of the tweak data to stretch the
1379 (includePageLayoutFile): Void function which includes the
1380 generated page-layout file if it exists and if the page layout
1381 dumping is not asked.
1382 (scoreTweak): if the score tweak named by the argument exists,
1385 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1387 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1388 handle correctly the case where there are multiple \noPageBreaks
1391 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1393 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1395 * abc2ly.py fix so that entering " -- " will translate to a -- in
1396 the lilypond instead of a " - - "
1398 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1400 * lily/align-interface.cc: fix typo
1402 * lily/dynamic-text-spanner.cc (print): Add a special case for
1403 trill spanner right sides.
1405 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1407 * lily/align-interface.cc (get_extents_aligned_translates): add
1408 support for padding variable.
1410 * lily/break-align-interface.cc (self_align_callback): oops: use
1411 loop variable in guard.
1413 * input/regression/repeat-percent-grace.ly: new file.
1415 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1416 remember first currentCommandColumn of a grace run. Fixes issue 70.
1418 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1419 move class definition to CC file.
1421 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1423 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1424 measure-long repeats.
1426 * flower/include/international.hh: include stdarg.h
1428 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1430 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1431 put_systems_on_pages to return an empty result, we need to assign
1432 demerits properly in that case.
1433 (put_systems_on_pages): Make the number of pages depend on the
1434 evenness of page_number. Add auto-first-page-number.
1435 (calc_subproblem): ensure that the page-number is even for the
1436 left-hand page. Warn if the first page-turn doesn't fit onto the
1437 first (right-hand) page.
1439 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1440 (min_page_count): make this publicly accessible
1441 (min_page_count): fix a bug when there are forced page breaks that
1442 was introduced when I made this loop run backwards
1443 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1444 replace space_systems_on_min_pages with these two. The logic in
1445 space_systems_on_min_pages was getting too convoluted and is better
1446 contained in page-turn-page-breaking.
1448 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1450 (breakable_column): typo
1452 * lily/source-file.cc (get_line): fix off-by-one error
1453 and clean up some of the logic
1455 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1457 * lily/page-breaking.cc (make_pages): honour the first-page-number
1460 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1462 * VERSION (PACKAGE_NAME): bump version.
1464 2006-09-26 Pal Benko <benko.pal@gmail.com>
1466 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1467 (the latter is the same as petrucci-f which is kept for compatibility)
1469 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1471 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1473 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1475 * lily/global-context.cc (run_iterator_on_me): break out of loop
1476 if moment doesn't increase.
1478 * scm/define-grob-properties.scm (all-user-grob-properties): add
1481 * lily/accidental.cc (after_line_breaking): read forced property.
1483 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1486 * input/regression/accidental-forced-tie.ly: new file.
1488 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1490 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1492 * lily/figured-bass-engraver.cc: only listen to rest events if
1493 ignoreFiguredBassRest is not set.
1495 * scm/define-context-properties.scm
1496 (all-user-translation-properties): add ignoreFiguredBassRest property
1498 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1500 * lily/paper-book.cc (get_system_specs):
1501 (set_system_penalty): fix breakbefore.
1502 We used to set a penalty on the system after the break, now we
1503 set a permission on the system before the break
1505 * lily/grob-property.cc: add scm debugging hooks into
1506 property modification
1508 * lily/context-property.cc:
1510 rename make_foo_from_properties to internal_make_foo and
1511 move it from context-property.cc to a member function of
1514 * lily/include/lily-guile-macros.hh:
1515 overload ly_symbol2scm macro so that there is no more need
1518 * lily/volta-repeat-iterator.cc:
1519 * lily/tweak-engraver.cc:
1520 * lily/tuplet-bracket.cc:
1521 * lily/span-bar-engraver.cc:
1522 * lily/script-engraver.cc:
1523 * lily/prob-scheme.cc:
1524 * lily/pointer-group-interface.cc:
1526 * lily/grob-scheme.cc:
1527 * lily/grob-property.cc:
1529 * lily/context-property.cc:
1530 * lily/break-substitution.cc:
1531 * lily/break-align-engraver.cc:
1532 * lily/axis-group-interface.cc:
1533 * lily/align-interface.cc:
1534 remove calls to internal_FOO
1536 * lily/system-start-delimiter-engraver.cc:
1537 * lily/parenthesis-engraver.cc:
1538 * lily/accidental-engraver.cc:
1539 remove calls to make_foo_from_properties
1541 2006-09-23 Graham Percival <gpermus@gmail.com>
1543 * Documentation/user/programming-iterfaces.itely: fix
1544 def-music-function -> define-music... leftover.
1546 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1548 * lily/page-spacing.cc (min_page_count): by running the loop
1549 backwards, we can calculate ragged_last properly.
1551 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1553 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1554 printfirst-page-number -> print-first-page-number
1556 * python/convertrules.py: corresponding rule.
1558 * Documentation/user/page.itely (Page formatting): Document the
1559 default values of all page layout parameters.
1561 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1563 * lily/lexer.ll: remove limitation on music function arity. New
1564 mode extratoken, which inserts extra EXPECT_* tokens after
1565 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1567 * lily/parser.yy: Change grammar for music function accordingly.
1569 * lily/include/lily-parser.hh: New method get_state, new member
1570 hidden_state. Works around a problem when parser fetches
1571 MUSIC_FUNCTION token but not the following EXPECT_* token.
1573 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1576 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1577 references to Music; use ASSIGN_EVENT_ONCE everywhere
1579 * lily/grob-info.cc: junk *music_cause
1581 * lily/music.cc: copy eventified articulations to stream event
1583 * lily/part-combine-iterator.cc: Cleanup using enums
1585 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1588 * lily/include/engraver.hh: Junk music.hh include
1590 * lily/stream-event.cc: Changed constructors
1592 2006-09-21 Graham Percival <gpermus@gmail.com>
1594 * Documentation/user/tweaks.itely (Fitting music onto fewer
1595 pages): change settings to avoid warning messages.
1597 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1599 * Documentation/user/tweaks.itely (Fitting music onto fewer
1600 pages): Add between-system-space setting.
1602 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1604 * lily/accidental-placement.cc (calc_positioning_done): don't
1605 trigger Y-extent calculation too early. Use pure_height instead.
1607 * lily/scale.cc (LY_DEFINE): new file.
1609 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1611 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1612 that happen at the start of a score: having a zero-length
1613 chunk was messing up min_system_count calculations.
1615 * lily/source-file.cc (get_line): lower_bound, not
1616 binary_search. Fixes problem where point-and-click would
1617 always point to the first line.
1619 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1621 * lily/accidental-placement.cc (calc_positioning_done): also put
1622 stems into accidental support.
1624 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1627 * scm/script.scm (default-script-alist): avoid-slur and
1628 slur-padding for portato script.
1630 * lily/stem-tremolo.cc (translated_stencil): new function.
1631 (height): use new function. Fixes tremolos on whole notes.
1633 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1636 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1638 * scripts/abc2ly.py (try_parse_comment): idem.
1640 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1641 bar_string iso. string.find()
1645 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1648 2006-09-18 Graham Percival <gpermus@gmail.com>
1650 * Documentation/user/basic-notation.itely: add bug
1651 warning about ties and octavation/clef.
1653 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1655 * VERSION (PACKAGE_NAME): release 2.9.18
1657 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1659 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1660 figure out midi file names right here.
1662 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1664 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1666 * scm/backend-library.scm: option naming: gs-font-load*s*
1668 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1671 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1673 * scm/define-music-types.scm (music-descriptions): remove
1674 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1675 Music::to_event doesn't complain.
1677 * lily/accidental-placement.cc (ape_compare):
1678 * lily/semi-tie.cc (compare):
1679 * lily/note-column.cc (shift_compare): replace by XXX_less
1681 * lily/tie-formatting-problem.cc (set_chord_outline):
1682 * lily/tie-column.cc (calc_positioning_done):
1683 * lily/system.cc (post_processing)
1685 * lily/stem.cc (note_head_positions)
1686 (calc_positioning_done):
1687 * lily/spanner.cc (do_break_processing)
1688 (find_broken_piece):
1689 * lily/span-bar.cc (print):
1690 * lily/semi-tie-column.cc (calc_positioning_done):
1691 * lily/rest-collision.cc (calc_positioning_done):
1692 * lily/program-option.cc (get_help_string):
1693 * lily/note-collision.cc (get_clash_groups):
1694 * lily/new-fingering-engraver.cc (position_scripts):
1695 * lily/keyword.cc (Keyword_table):
1696 * lily/hara-kiri-group-spanner.cc (request_suicide):
1697 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1698 * lily/accidental-placement.cc (calc_positioning_done):
1700 * lily/beam.cc (get_beam_segments):
1701 * lily/grob-array.cc (remove_duplicates):
1704 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1705 ragged-last-bottom = ##f (test the new page breaker)
1707 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1709 * scm/define-context-properties.scm
1710 (all-internal-translation-properties): remove properties that
1711 were used to communicate page-turn stuff to the paper-column
1714 * lily/lily-guile.cc (robust_scm2string): new function
1716 * lily/paper-column-engraver.cc: Clean up page turn stuff
1718 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1719 instead of cluttering up paper-column-engraver.cc
1721 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1723 * scm/layout-page-dump.scm (scm): export utility function names,
1724 to allow user writing cutsom dumping functions.
1726 * scm/layout-page-layout.scm: export utility function names to
1727 enable custom page breaking function writing. Tabify.
1728 (line-next-space): use ?-suffix only for predicates
1729 (page-maximum-space-to-fill): new function. Return the space
1730 between first and bottom system of a page, to give to
1732 (space-systems): use a space-to-fill argument (for instance as
1733 computed by page-maximum-space-to-fill) instead of computing
1734 internaly this space with the page height. That way, the caller
1735 can adjust the space to use.
1736 (make-page-from-systems, walk-paths): compute space to fill before
1737 calling space-systems.
1739 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1741 * scm/script.scm (default-script-alist): set paddings for every
1742 type here, increase for portato mark.
1744 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1747 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1749 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1750 use spanner::set-spacing-rods
1752 * lily/note-column.cc: reformat.
1754 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1755 step positioning for note/rest combinations.
1757 * input/regression/rest-note-collision.ly: new file.
1759 * scm/define-grobs.scm (all-grob-descriptions): add
1762 * flower/include/std-vector.hh: switch off again.
1764 * VERSION (PATCH_LEVEL): bump to 2.9.18
1766 * flower/include/std-string.hh: idem.
1768 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1770 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1772 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1775 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1777 * Documentation/user/page.itely: update page breaking documentation
1779 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1781 * lily/note-collision.cc (calc_positioning_done): only access
1782 first head if available.
1784 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1786 * scm/framework-ps.scm (output-preview-framework): use new name.
1788 * lily/program-option.cc (internal_set_option): use new names.
1790 * Documentation/user/SConscript (lilypond_book_flags): update -d
1793 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1794 output into other programs): new variable names.
1796 * scm/lily.scm (define-scheme-options): uniformize var names.
1798 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1799 tuplets_ is non-empty before popping.
1801 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1803 * lily/spanner.cc (find_broken_piece):
1804 * lily/spacing-spanner.cc (get_columns):
1805 * lily/source-file.cc (get_line):
1806 * lily/simple-spacer.cc (get_column_description):
1807 * lily/keyword.cc (lookup):
1808 use the new binary search.
1810 * flower/include/std-vector.hh: replace binary_search with
1811 a more STL-like version
1813 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1815 * lily/tie-performer.cc: remove unused last_event_ property.
1816 (class Tie_performer): add now_tied_heads_ property for
1817 partially-tied heads.
1818 (acknowledge_audio_element): when adding an Audio_note, put the
1819 note in now_tied_heads_ if the audio note is partially tied.
1820 (stop_translation_timestep): always include entries in
1821 now_tied_heads_ in heads_to_tie_.
1823 * lily/drum-note-performer.cc (process_music): look for tie-events
1824 in the articulations; pass to Audio_note constructor.
1826 * lily/note-performer.cc (process_music): look for tie-events in
1827 the articulations; pass to Audio_note constructor.
1829 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1832 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1833 include initializer in constructor.
1835 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1837 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1838 unless they are breakable. This fixes discrepancies between the forces
1839 calculated here and the forces calculated in get_line_configuration.
1841 * lily/grob.cc (pure_relative_y_coordinate): fix some
1842 mis-estimation that was happening with piano staves.
1844 * lily/constrained-breaking.cc (resize): don't choke if we get a
1845 measure that won't fit on a line.
1846 (combine_demerits): don't consider uniformity when ragged
1848 * lily/page-spacing.cc (solve): why the f* were there two of these?
1849 (calc_subproblem): properly handle the case where a system is taller
1852 * lily/system.cc (get_paper_system): ensure that all the permissions
1853 and penalties are passed to the paper systems.
1855 * lily/page-breaking.cc (create_system_list): support system-count.
1857 * scm/define-grobs.scm (pure-print-callbacks): add
1858 ly:script-interface::print
1860 * lily/page-spacing.cc (min_page_count): fix calculation of min
1861 pages if we are ragged and there are non-zero springs.
1863 * scm/layout-page-layout.scm: if the pure-height estimates are under
1864 the real height, allow space-systems to ignore padding if it is
1865 needed in order to fit the systems on one page
1867 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1869 (solve): fix performance problem. Make sure we always get at least
1872 * lily/page-breaking.cc (make_pages): include write-page-breaks
1875 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1877 * scm/define-grobs.scm: add the new slur-callback
1878 fix pure-relevant to not exclude grobs whose extent is already
1881 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1884 * lily/slur.cc (pure_height): new callback to estimate the height
1887 2006-09-02 Graham Percival <gpermus@gmail.com>
1889 * Documentation/user/invoking.itely: small update on
1890 MacOS X notes; thanks Trevor!
1892 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1894 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1896 * lily/lexer.ll: accept EOF in all states.
1898 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1900 * lily/source-file.cc (Source_file): always 0-terminate character
1901 array, to prevent Flex from barfing.
1903 * lily/global-context.cc (get_output): robustness: don't crash if
1904 no Score context found.
1906 * lily/include/book.hh (class Book): idem.
1908 * lily/include/context-def.hh (struct Context_def): idem.
1910 * lily/include/score.hh (class Score): don't derive from Input.
1912 * lily/book.cc (Book): add a copy ctor.
1914 * buildscripts/output-distance.py (FileLink.calc_distance): count
1915 orphans in distance too.
1917 * python/midi.c (midi_parse_track): robustness: don't read past
1920 * ly/performer-init.ly: add Control_track_performer, move
1921 Tempo_performer and Time_signature_performer to Score.
1923 * lily/score-performer.cc (acknowledge_audio_elements): override
1924 from base class: add to audio-columns
1926 * lily/control-track-performer.cc (add_text): new file: generate
1929 * lily/performance.cc: move output_header_track to
1930 Control_track_performer ()
1932 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1934 * lily/include/midi-item.hh (class Midi_channel_item): insert
1935 class into hierarchy, for items that can have a channel setting. Dehungarify.
1937 * lily/include/performer.hh (class Performer): remove
1938 play_element(); move functionality into announce/acknowledge.
1940 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1942 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1943 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1945 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1947 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1950 * lily/all-font-metrics.cc: remove TFM support.
1952 * lily/include/tfm.hh: remove TFM support, TFM reader.
1954 * lily/include/binary-source-file.hh: remove Binary_source_file.
1956 2006-08-27 Graham Percival <gpermus@gmail.com>
1958 * Documentation/topdocs/NEWS.itely: add @c marker for
1959 stuff I've processed.
1961 * Documentation/user/ various: info from NEWS.
1963 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1965 * lily/paper-column-engraver.cc (finalize): Oops, this change
1966 should have gone in on 2006-08-23
1968 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1970 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1971 quotes to quote arguments. Fixes Windows problem.
1973 * python/lilylib.py (progress): idem
1975 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1977 * scripts/musicxml2ly.py: fix for importing
1978 minor key signatures from MusicXML. (Phillip Kirlin)
1980 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1982 * python/musicxml.py:
1983 (Attributes.get_key_signature): now correctly retrieves mode from
1986 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1988 * lily/parser.yy (output_def_body): take ownership of identifier
1991 * Documentation/user/advanced-notation.itely (Metronome marks):
1992 update use of \tempo in \midi.
1994 * VERSION: release 2.9.16
1996 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1998 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2001 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2003 * input/regression/tie-chord-partial.ly: clarify example.
2005 * scm/define-music-properties.scm (all-music-properties): remove
2008 * ly/music-functions-init.ly: remove \untied.
2010 * lily/tie-engraver.cc (struct Head_event_tuple): store both
2011 stream events and music events.
2012 (stop_translation_timestep): search acknowledged heads for
2015 * input/regression/tie-chord-partial.ly: new file.
2017 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2018 for \char markup command.
2020 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2022 * scm/define-music-types.scm (music-descriptions): consistency:
2023 Use solo-{one,two}-event iso. solo-[12]-event.
2025 * lily/part-combine-engraver.cc (process_music):
2026 Use solo-{one,two}-event iso. solo-[12]-event.
2028 * ly/declarations-init.ly (partCombineListener): add Timing as
2031 * flower/std-string.cc (string_copy): use copy ()
2033 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2035 2006-08-24 Graham Percival <gpermus@gmail.com>
2037 * Documentation/user/changing-defaults.itely, global.itely,
2038 lilypond-book.itely, page.itely: minor changes from mailist.
2040 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2042 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2045 * scm/define-context-properties.scm
2046 (translator-property-description): robustness: detect type errors
2047 in property definitions.
2049 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2050 after getting it from SCM.
2052 * lily/smobs.cc (protect_smob): switch off fancy smob protection
2055 * lily/include/performer.hh (class Performer): strip get_tempo()
2058 * lily/midi-def.cc: strip file.
2060 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2062 * lily/include/context-def.hh (struct Context_def): use
2063 VIRTUAL_COPY_CONSTRUCTOR().
2065 * lily/source-file.cc: smobification.
2067 * lily/include/source-file.hh (class Source_file): smobify
2068 Source_file. Trim redundant members.
2070 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2071 clones after creation. This plugs a huge memory leak.
2073 * python/convertrules.py (FatalConversionError.sub_tempo):
2074 complete rule for \midi{ \tempo }
2076 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2078 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2080 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2082 * input/regression/optimal-page-breaking-hstretch.ly: test for
2083 ragged-last-bottom also
2085 * lily/paper-column-engraver.cc (finalize): make the end of a score
2086 breakable by default. This is to balance out a change in behaviour
2087 of the page-turn-breaker which no longer makes the end of a score
2090 * lily/paper-book.cc (pages): set the systems_ once the pages are
2093 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2094 Page_breaking interface.
2096 * lily/page-breaking.cc (class Page_breaking): make the interface
2097 more consistent and provide abstractions for dealing with
2100 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2101 algorithm. Use the new interface to Page_breaking.
2103 * lily/page-spacing.cc: better support for ragged-bottom and
2106 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2108 * python/convertrules.py (conv): warning on \tempo{}
2110 * ly/performer-init.ly: set tempoWholesPerMinute.
2112 * ly/midi-init.ly: remove \midi
2114 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2117 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2118 tempoUnitDuration for determining what to print.
2120 * lily/lyric-extender.cc: typo.
2122 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2124 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2127 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2129 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2130 eps-pad-boxes is set.
2132 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2134 * THANKS: update sponsors.
2136 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2138 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2140 * input/regression/tie-chord-untied.ly: new file.
2142 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2144 * scm/define-music-properties.scm (all-music-properties): add
2147 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2149 (headertext_nopics): sanitize no-examples text.
2151 * scm/page.scm (make-page-stencil): don't rely on extents of
2152 page-stencil. This fixes spurious space around .EPS files produced
2153 with the EPS backend.
2155 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2157 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2159 * lily/hara-kiri-engraver.cc (process_music): remember
2160 keepAliveInterfaces after processing \set
2162 * lily/lyric-extender.cc (print): support left/right-padding for
2165 * scm/documentation-generate.scm (string-append): revert lilypond/
2168 2006-08-20 Graham Percival <gpermus@gmail.com>
2170 * Documentation/user/lilypond.tely: clarification to
2171 license presentation (not to actual license).
2173 * Documentation/user/basic-notation.itely,
2174 instrument-notation.itely: minor changes.
2176 * input/ {regression, test}/+.ly: clarification to
2177 text (you can click on examples). Thanks, Mats!
2179 * input/manual/bar-lines.ly: adds ||: repeats.
2181 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2183 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2185 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2187 * Documentation/user/lilypond.tely: strip lilypond/ from info
2188 links, rename to category LilyPond
2190 * lily/pango-font.cc (description_string): new function.
2192 * VERSION: release 2.9.15
2194 * lily/spacing-engraver.cc (stop_translation_timestep): use
2195 Dscho's fix for spacing spanner.
2197 * scm/define-music-types.scm (music-descriptions): use
2198 apply-output-event for ApplyOutputEvent
2200 * lily/output-property-engraver.cc (listen_apply_output): rename
2201 from listen_layout_instruction.
2203 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2206 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2208 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2209 commandline args with contains, split by \n.
2211 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2212 write snippet-names file, call with -dread-file-list. Fixes
2213 command limitations on 64-bit systems.
2215 * input/regression/stencil-color-rotation.ly: new file.
2217 * lily/include/translator.hh (struct Acknowledge_information):
2218 revert: don't use Protected_scm in global objects, as GUILE can't
2219 handle gc_unprotect from automated destructors on MacOS X.
2221 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2222 color, not the original stencil. Fixes combinations of
2223 color/transparency/rotation.
2225 * scripts/lilypond-book.py (main): add --formats=eps for
2228 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2229 crash if spacing_ is nonexistent.
2231 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2233 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2234 \catcode`\@=12 in the LaTeX output.
2236 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2238 * scm/define-music-types.scm (music-descriptions):
2239 use sustain-event iso. sustain-pedal-event.
2241 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2243 * scripts/convert-ly.py: honour the -n command-line switch
2245 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2247 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2248 break specification.
2250 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2252 * Documentation/user: convert-ly the user manual
2254 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2256 * stepmake/aclocal.m4: version check patch (thanks MWD)
2258 * ly/music-functions-init.ly: robustness. Don't crash if
2259 currentBarNumber is not a number.
2261 * VERSION (PATCH_LEVEL): bump.
2263 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2265 * stepmake/aclocal.m4: better version check; handle fooX.Y
2268 * ly/performer-init.ly: instrument name fixup.
2270 * input/manual/chord-names-jazz.ly (banterProperties):
2271 instrumentName update
2273 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2275 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2277 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2278 function. Use hash tables to check membership.
2280 * lily/general-scheme.cc (LY_DEFINE): new function.
2282 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2284 * lily/include/translator.hh (struct Acknowledge_information): add
2287 * ly/music-functions-init.ly: change name to BreathingEvent
2289 * input/regression/*.ly: apply it.
2291 * python/convertrules.py (conv): better instrumentName conversion
2294 * scm/define-music-types.scm (music-descriptions): add
2295 line-break-event to LineBreakEvent music
2297 * lily/music.cc (to_event): don't crash if music type not set.
2299 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2302 * lily/spacing-engraver.cc (stop_translation_timestep): set
2303 spacing for proportional notation too.
2305 * scm/translation-functions.scm (format-bass-figure): inspect
2308 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2310 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2312 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2314 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2316 * scm/layout-page-layout.scm (make-page-from-systems): new function
2317 (optimal-page-breaks): use the new page-breaking calling convention
2319 * scm/define-context-properties.scm (all-user-translation-properties):
2322 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2323 revokePageTurns functionality. If there is a special barline within
2324 the breakable region, break there instead of at the end of the region.
2326 * lily/paper-book.cc (pages): use the new page-breaking calling
2329 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2331 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2333 * scripts/lilypond-book.py: insert \sourcefileline command in
2334 output, so lilypond error messages refer to the spot in the
2335 original .lytex / .itely sourcefile.
2337 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2339 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2340 space to next column for distance to fixed col.
2342 * VERSION (PACKAGE_NAME): release 2.9.14
2344 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2347 * lily/accidental-engraver.cc (process_acknowledged): don't create
2348 accidental for trill span event. This fixes spurious accidentals
2351 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2353 * scm/define-grob-properties.scm (all-user-grob-properties):
2354 Clarify documentation of side-axis and direction. Thanks to Paul
2355 for the inspiration.
2357 * lily/bar-line.cc: Add documentation for "||:" also in the
2358 interface documentation.
2360 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2362 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2364 * lily/paper-column.cc (set_system): new function.
2366 * lily/spacing-engraver.cc (stop_translation_timestep): store
2367 SpacingSpanner refs in Paper_column.
2369 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2370 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2372 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2374 * lily/beam-engraver.cc (listen_beam): add method for
2375 Grace_beam_engraver too.
2377 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2379 * python/convertrules.py: Fix indentation bug that broke
2380 conversion of files older than 1.3.117.
2381 Fix escape error in the description for 2.9.6.
2383 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2385 * lily/*-engraver.cc: convert all try_music functions to listen_*
2388 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2389 enums to represent pedal types, and calculate more data statically.
2391 * scm/part-combiner.scm (recording-group-emulate): create a
2392 softcoded substitute for recording-group-engraver.cc.
2394 * lily/music.cc: make a common transpose function for events and
2397 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2398 ManualMelismaEvent, and obsoletes Melisma_translator.
2400 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2402 * input/test/instrument-name-align.ly: update version.
2404 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2406 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2407 Doc the --pdf flag to lilypond-book.
2409 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2411 * Documentation/topdocs/NEWS.tely (Top): add description.
2413 * input/regression/tuplet-full-length-note.ly: add file.
2415 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2416 always store axis group.
2418 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2420 * input/regression/instrument-switch.ly: new file.
2422 * lily/instrument-switch-engraver.cc (process_music): new file.
2424 * ly/engraver-init.ly: add Instrument_switch_engraver
2426 * ly/music-functions-init.ly: \instrumentSwitch
2428 * scm/define-context-properties.scm
2429 (all-user-translation-properties): add instrumentCueName
2431 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2433 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2435 * ly/music-functions-init.ly: music function \transposition.
2437 * lily/parser.yy (command_element): softcode \transposition.
2439 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2440 (process_music): oops.
2442 * lily/instrument-name-engraver.cc (start_spanner): new
2443 function. Create spanner when property changes.
2444 (stop_spanner): new function.
2446 * python/convertrules.py (conv): add rule.
2448 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2449 shortInstrumentName iso. instr.
2451 * scm/output-ps.scm (dashed-line): add phase argument to
2454 * lily/bar-line.cc (dashed_bar_line): new function.
2455 (compound_barline): support \bar "dashed".
2457 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2458 --output=DIR to DIR/BASE if it is a dir.
2460 * flower/file-name.cc (file_part): new function
2461 (dir_part): new function
2463 * lily/lily-parser-scheme.cc (LY_DEFINE):
2465 * DEDICATION: update
2467 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2469 * lily/instrument-name-engraver.cc: formatting.
2471 * python/convertrules.py (conv): bugfix for \epsfile.
2473 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2477 * lily/gourlay-breaking.cc: Oops, these should have been included
2480 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2482 * scripts/*.py (program_name): cleanup relocation snippets.
2484 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2486 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2488 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2489 page-breakable by default
2491 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2492 correctly calculated for a single-system page
2494 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2495 bigger than the second number
2497 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2498 acknowledge that we aren't satisfying constraints)
2500 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2503 * lily/grob.cc (pure_height): add minimum-Y-extent
2505 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2508 * lily/constrained-breaking.cc: convert code to use new Matrix class
2509 (get_best_solution): new function
2511 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2512 is a page with no systems
2514 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2516 * VERSION (PACKAGE_NAME): release 2.9.13
2518 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2521 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2523 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2525 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2528 * scm/define-grob-properties.scm (all-user-grob-properties):
2529 remove grace-space-factor.
2531 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2532 grace-spacing-interface
2533 (spacing-options-interface): add.
2535 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2537 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2539 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2540 GraceSpacing object.
2542 * lily/note-spacing.cc: fix prop list formatting
2544 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2545 beaming for grace notes too.
2547 * input/regression/spacing-grace.ly: update.
2549 * lily/grace-spacing-engraver.cc: new file.
2551 * lily/spacing-spanner.cc: add strict-grace-spacing.
2553 2006-07-20 Graham Percival <gpermus@gmail.com>
2555 * lily/parser.yy: compile fix.
2557 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2559 * scm/define-grobs.scm (all-grob-descriptions): typo.
2561 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2562 .eps extension from includegraphics.
2564 * scripts/lilypond-book.py (main): add support for --pdf.
2566 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2567 callback to compute common shortest duration.
2568 (set_springs): typo.
2570 * scm/define-grob-properties.scm (all-user-grob-properties): add
2571 strict-grace-spacing.
2573 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2574 support float_grace_columns_.
2576 * lily/spacing-options.cc (init_from_grob): new file.
2578 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2580 * input/regression/spacing-loose-grace.ly: new file.
2582 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2584 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2585 tupletFullLengthNote too. Choose right bound depending on value.
2587 * input/regression/tuplet-full-length-note.ly: new file.
2589 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2591 * lily/*-performer.cc: Converted try_music to listen_*
2593 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2594 as a stream-event internally. Introduce event_cause (), deprecate
2597 * scm/define-music-types.scm: Removed BusyPlayingEvent
2599 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2601 * Documentation/user/advanced-notation.itely (Font selection):
2602 Document how to get a list of available fonts using 'lilypond
2603 -dshow-available-fonts blabla'.
2605 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2607 * GNUmakefile.in: filter lily-XXX.pdf files.
2609 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2611 * scm/define-grob-properties.scm (all-internal-grob-properties):
2612 remove delta-pitch. Use delta-position everywhere.
2614 * scm/output-lib.scm (fall::print): use new order.
2616 * scm/output-ps.scm (path): reorder arguments.
2618 * scm/output-svg.scm (path): support for path primitive.
2620 * input/regression/bend-after.ly: new file.
2622 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2623 recipe for eps -> pdf conversion.
2625 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2627 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2630 2006-07-19 Graham Percival <gpermus@gmail.com>
2632 * input/manual/screech-boink.ly: moved to here.
2634 * input/screech-boink.ly: deleted.
2636 * scm/define-grob-properties.scm: clarify doc string.
2638 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2640 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2642 * scm/output-ps.scm (path): define path.
2644 * scm/define-stencil-commands.scm
2645 (ly:register-stencil-expression): add path.
2647 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2649 * ly/engraver-init.ly: add Fall_engraver
2651 * lily/parser.yy (music_function_event): allow musicfunction
2652 without music arg as music_function_event.
2654 * lily/grob-scheme.cc (LY_DEFINE):
2655 ly:grob-robust-relative-extent. New function.
2657 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2659 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2661 * scm/output-lib.scm (fall::print): new function
2663 * lily/fall-engraver.cc (stop_fall): new file.
2665 * ly/music-functions-init.ly: alphabetise.
2667 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2670 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2672 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2674 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2677 * lily/translator-group.cc (connect_to_context): non const error message.
2679 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2681 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2684 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2686 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2688 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2691 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2693 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2695 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2697 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2699 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2701 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2703 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2705 * scm/layout-page-layout.scm: Define module, tidy code, use more
2706 functions iso. a single big one.
2708 * scm/layout-page-dump.scm: move page dump functions used in two
2709 pass spacing to this file. Define module.
2711 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2714 * ly/paper-defaults.ly: use module layout-page-layout.
2716 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2718 * lily/music.cc: Revised MusicEvent event class. It now contains
2719 event data directly instead of encapsulating it in music. The
2720 previously used class is renamed to OldMusicEvent.
2722 * lily/stream-event.cc: Stream events are now probs.
2724 * lily/translator-group.cc, lily/translator.cc: Translators can
2725 now listen directly to stream events, by using macros
2726 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2728 * lily/arpeggio-engraver.cc: Converted to use new event system
2730 * THANKS: Corrected spelling mistake.
2732 2006-07-12 Graham Percival <gpermus@gmail.com>
2734 * Documentation/user/SConscript, make/lilypond-vars.make,
2735 input/GNUmakefile: doc build looks in input/manual instead
2738 * input/manual/ GNUmakefile, SConscript: build files for
2741 * input/test/ various: some files moved to input/manual/
2743 * Documentation/user/basic-notation.itely: small updates;
2744 thanks Kieren and Charles!
2746 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2748 * VERSION (PACKAGE_NAME): release 2.9.11
2750 * Documentation/topdocs/NEWS.tely (Top): update prop value
2752 * Documentation/user/basic-notation.itely (Tuplets): new property
2755 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2757 * python/convertrules.py (conv): tweaks.
2759 * VERSION (PATCH_LEVEL): bump version.
2761 * python/convertrules.py (conv): add rule for
2762 tupletNumberFormatFunction.
2764 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2765 tupletNumberFormatFunction.
2767 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2768 text through 'text callback.
2770 * lily/time-scaled-music-iterator.cc (construct_children): copy
2771 tweaks generated events.
2773 * scm/define-context-properties.scm
2774 (all-user-translation-properties): remove tupletNumberFormatFunction
2776 * lily/tuplet-engraver.cc (process_music): don't read
2777 tupletNumberFormatFunction
2779 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2782 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2784 * lily/global-context-scheme.cc: Separated ly:run-translator into
2787 * lily/score-engraver.cc, lily/score-performer.cc,
2788 scm/define-context-properties.scm: Make paper/midi output
2789 accessable as a context property.
2791 * lily/score-translator.cc, lily/score-context.cc: Removed.
2793 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2795 * scm/ps-to-png.scm (Module):
2796 * scm/framework-tex.scm (Module):
2797 * scm/framework-ps.scm (Module):
2798 * scm/backend-library.scm (Module):
2799 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2800 "dDEVICEHEIGHTPOINTS".
2802 2006-07-04 Graham Percival <gpermus@gmail.com>
2804 * Documentation/user/ various: general improvements to
2805 "working with lilypond files" section.
2807 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2809 * lily/sequential-iterator.cc: Change the default get_music_list
2810 to read elements-callback music property
2812 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2813 processing of multimeasure rests. Softcoded
2814 sequential-music-iterator.
2816 * lily/sequential-music-iterator.cc: Removed.
2818 2006-06-28 Graham Percival <gpermus@gmail.com>
2820 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2822 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2824 * lily/parser.yy: Wrap non-post-events in EventChords before
2825 assigning them to identifiers.
2827 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2829 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2830 gives correct vertical placement of \bar ":" in all staff
2831 sizes. Thanks Martial!
2833 2006-06-26 Graham Percival <gpermus@gmail.com>
2835 * Documentation/user/invoking.itely : minor update from mailist.
2837 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2839 * lily/ various: Introduce stream events of types Prepare,
2840 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2841 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2843 * lily/global-context*.cc: Time is now -inf before iteration
2846 * lily/include/context.hh: Removed unique_, init_
2848 * Documentation/topdocs/NEWS: Make the feathered beam example
2849 avoid triggering a bug.
2851 2006-06-24 Graham Percival <gpermus@gmail.com>
2853 * Documentation/user/ various: small additions from mailist.
2855 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2857 * ly/performer-init.ly: Add some missing links in the context
2858 hierarchy for MIDI output. There are probably some more missing!
2860 2006-06-21 Graham Percival <gpermus@gmail.com>
2862 * Documentation/user/ various: minor spelling fixes;
2863 thanks Dave Luttinen!
2865 * Documentation/user/ various: small clarifications;
2866 thanks Anthony Youngman!
2868 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2870 * po/fr.po: add \n appropriately.
2872 * lily/lexer.ll: remove ? from version-seen?
2874 2006-06-19 John Mandereau <john.mandereau@free.fr>
2876 * po/fr.po; update translation, by Jean-Charles Malahieude and
2879 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2881 * THANKS: add Markus Schneider.
2883 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2884 Staff_symbol_engraver
2886 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2887 replace staff_engraver
2889 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2892 * lily/staff-collecting-engraver.cc
2893 (acknowledge_end_staff_symbol): new function
2895 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2897 * lily/staff-collecting-engraver.cc
2898 (acknowledge_end_staff_symbol): new function.
2900 * lily/main.cc: switch on relocation by default.
2902 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2904 * lily/spacing-spanner.cc (musical_column_spacing): set
2905 compound_fixed_note_space to 0.0. Document why.
2907 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2908 range of inverse_hooke_
2909 (Simple_spacer): init completely.
2911 (get_line_configuration): don't use cols.resize(); it introduces
2914 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2916 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2918 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2919 try. Divide by beatlength.
2921 * input/regression/beaming-ternary-metrum.ly: update doc.
2922 add beatLength hack.
2924 * scm/music-functions.scm (make-time-signature-set): add
2925 standard-beat-grouping.
2927 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2929 * input/regression/tie-whole.ly: new file.
2931 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2932 cross center of note head in case of invisible stem.
2934 2006-06-16 Graham Percival <gpermus@gmail.com>
2936 * Documentation/user/ various: small fixes from mailist.
2938 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2940 * lily/breathing-sign.cc (offset_callback): idem.
2942 * lily/align-interface.cc (align_to_fixed_distance): remove
2945 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2948 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2950 * VERSION (PACKAGE_NAME): release 2.9.9
2952 * ly/lilypond-book-preamble.ly: add \version
2954 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2956 * scripts/lilypond-book.py (PREAMBLE_LY): include
2957 lilypond-book-preamble.ly
2959 * lily/stem.cc (get_beaming): return max of 0 and
2960 scm_ilength. Fixes slurring from/to beams.
2962 * ly/lilypond-book-preamble.ly: new file.
2964 * lily/slur.cc: add inspect-index feature.
2966 2006-06-13 Graham Percival <gpermus@gmail.com>
2968 * Documentation/user/tutorial.itely: trivial fix.
2970 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2972 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2973 all non-event music in the parser via MAKE_SYNTAX.
2975 * lily/parser-scheme.cc: Add ly:parser-error function
2977 * scm/paper.scm: fix typo
2979 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2983 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2986 * buildscripts/output-distance.py (test_compare_signatures):
2988 (read_signature_file): use new signature format.
2990 * scm/stencil.scm (write-system-signature): simpler signature
2993 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2996 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2997 stem_end_position, but estimate instead.
2999 * lily/tuplet-bracket.cc (calc_positions): look at
3000 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3001 brackets narrower than beams.
3003 * lily/lexer.ll: set version-seen? even if version is
3006 * lily/rest.cc (y_offset_callback): bugfix: decide position
3007 override based on scm_is_number(). Fixes \rest on center staff
3010 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3011 patterns for 16th triplets.
3013 2006-06-10 Graham Percival <gpermus@gmail.com>
3015 * Documentation/user/ page.itely, global.itely: editing
3018 * Documentation/user/ various: findex -> funindex.
3020 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
3022 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3023 insert extra tuplet events.
3025 2006-06-10 Graham Percival <gpermus@gmail.com>
3027 * Documentation/user/programming-interfaces.itely: add
3030 * python/convertrules.py: add annotatefoo -> annotate-foo
3033 * Documentation/user/global.itely: start editing.
3035 * Documentation/user/page.itely: major editing, new spacing
3038 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
3040 * scm/define-markup-commands.scm (wordwrap-markups): use
3041 output-def 'line-width if undefined.
3043 * HACKING: trim outdated info.
3045 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3047 * scm/define-grobs.scm (all-grob-descriptions): Add
3048 line-spanner-interface to all grobs that already have
3049 text-spanner-interface or dynamic-text-spanner-interface
3051 * scm/page.scm: Rename annotate{headers,systems,page}->
3054 * input/regression/page-spacing.ly,
3055 input/regression/page-layout-manual-position.ly: idem
3057 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3059 * lily/line-spanner.cc: cleanup property list.
3061 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3062 generator expressions (2.3 compat).
3064 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
3066 * lily/vertical-align-engraver.cc: Make sure that the
3067 align{Above,Below}Context properties are included in the automatic
3070 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3072 * scm/paper-system.scm (paper-system-annotate): also annotate the
3073 estimated pure-Y-extent
3075 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3077 * lily/system.cc (break_into_pieces): set the estimated height
3078 of each child system
3080 * lily/stem.cc (pure_height): new pure-Y-extent callback
3082 * lily/staff-symbol-referencer.cc (callback): don't destroy
3083 the staff-position property
3085 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3086 consider_suicide into two functions
3088 * lily/constrained-breaking.cc (resize): use the new pure
3089 callbacks to estimate the height of a system
3091 * lily/axis-group-interface.cc (pure_group_height): new
3092 side-effect-free VerticalAxisGroup height-callback
3094 * lily/align-interface.cc (get_extents_aligned_translates):
3095 split align_elements_to_extents into two functions
3096 (get_pure_child_y_translation): new function
3098 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3100 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3102 * lily/paper-score.cc: cache break_indices and columns
3104 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3106 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3108 * lily/font-config.cc (init_fontconfig): do the init if
3109 cache_file, but don't look at cache_file.
3111 * input/regression/quote-tie.ly: new file.
3113 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3114 to Head_event_tuple, so we deal gracefully with ties on
3117 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3120 2006-06-08 Graham Percival <gpermus@gmail.com>
3122 * input/test/ smart-transpose.ly, reverse-music.ly:
3123 \applyMusic to music functions update, thanks Michael!
3125 2006-06-07 Graham Percival <gpermus@gmail.com>
3127 * input/test/ add-staccato.ly, add-text-script.ly,
3128 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3129 music functions update, thanks to Michael Meixner.
3131 * Documentation/user/music-glossary.tely: small fix
3134 * Documentation/user/ various: minor additions from mailist.
3136 * Documentation/user/lilypond.tely, basic-notation.itely:
3137 small test of @funindex. (works here)
3139 * input/test/font-table.ly: reduce size to partially
3140 de-ugly version in manual.
3142 * Documentation/user/page.itely: new file (split former
3143 "global issues" into "page settings" and "non-musical
3146 * Documentation/user/ various: fix @ref{}s to match
3147 new chapter names (above).
3149 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3151 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3153 2006-06-06 Graham Percival <gpermus@gmail.com>
3155 * Documentation/user/advanced-notation.itely: add example
3156 for segno/coda on barline.
3158 * tex/texinfo.tex: merge from upstream.
3160 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3162 * scripts/lilypond-book.py (process_snippets): Argument fix.
3165 * buildscripts/builder.py:
3168 * Documentation/user/SConscript: More SCons fixes.
3170 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3172 * lily/font-config.cc (init_fontconfig): Only initialize if
3173 global cache_file is found.
3175 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3177 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3180 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3182 * VERSION (PACKAGE_NAME): release 2.9.8
3184 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3185 function. Delay ledger modifying ledgered grobs to
3186 stop_translation_timestep(), to ensure that we're ledgering
3187 according to the new spanner.
3188 (acknowledge_staff_symbol): don't check for non-NULL
3189 staff_sym->get_bound()
3191 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3194 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3197 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3198 directly from srcdir/stepmake/aclocal.m4
3200 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3203 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3205 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3207 * lily/simple-spacer.cc (get_line_configuration): add
3208 keep-inside-line rods
3209 (struct Column_desc): add constructor
3210 (struct Rod_desc): add constructor
3211 (get_line_forces): check for forced page breaks here too
3213 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3214 support/elements cycles between InstrumentNames and AxisGroups
3216 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3218 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3220 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3221 make-txt-files target.
3223 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3224 make-txt-files target.
3226 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3228 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3231 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3233 * Documentation/user/instrument-notation.itely,
3234 input/regression/breathing-sign-ancient.ly,
3235 input/test/divisiones.ly: Removed redundant property settings for
3238 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3239 fix lyrics alignment problems. They are implemented now as scheme
3240 functions that add the appropriate unicode char to the first lyric
3241 event rather than adding a separate lyric event. Minor edit of
3244 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3246 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3247 pollute src dir with built .txt files, but install directly from
3248 Documentation/topdocs/out/
3250 * buildscripts/output-distance.py
3251 (ComparisonData.create_html_result_page): put version/directories
3254 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3257 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3258 Patch by Karl Hammar
3260 * buildscripts/readlink.py: add file.
3261 Patch by Karl Hammar
3263 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3265 * lily/tuplet-number.cc (print): prevent stencil from being
3268 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3270 * scm/stencil.scm (write-system-signature): explicitly
3271 -well, superfluously- close output port.
3273 * buildscripts/output-distance.py (main): oops. Add extra argument.
3275 2006-06-05 Graham Percival <gpermus@gmail.com>
3277 * Documentation/user/music-glossary.tely: clarified example
3278 from Francisco Vila, thanks!
3280 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3282 * input/regression/spacing-section.ly: new file.
3284 * lily/input.cc (programming_error): new function.
3286 * lily/spacing-engraver.cc (try_music): new function. Accept
3287 spacing-section-event
3289 * lily/spacing-spanner.cc (set_springs): take slices of all
3290 columns for spacing.
3292 * lily/include/paper-column.hh (class Paper_column): add
3293 Paper_column::compare.
3295 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3297 * scm/define-music-types.scm (music-descriptions): add
3300 * lily/music-iterator.cc (report_event): use programming_error for
3301 sending non-event error.
3303 * lily/input.cc (programming_error): new function
3305 * buildscripts/output-distance.py (main): use compare-XXX for
3307 (main): --threshold option, default at 0.30
3309 * output-distance.py (main): add --threshold option.
3311 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3313 * scm/paper-system.scm (paper-system-annotate): fix problem when
3314 annotating an empty system
3316 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3318 * GNUmakefile.in: reinstate old web tar/copying.
3320 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3322 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3323 nothing changes. (Erik S)
3325 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3328 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3330 * scm/define-markup-commands.scm (whiteout): do not force
3331 foreground color of argument markup to black.
3333 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3334 the left of the arrow, instead of below the arrow name, so that,
3335 when two little arrows are vertically stacked, their dimensions
3336 and name should not overlap. Add a color key parameter.
3338 * scm/paper-system.scm (paper-system-annotate): Annotate
3339 next-space+next-padding instead of next-space. Annotate space
3340 between next-padding and next-space+padding, respectively, and
3341 following system extent and refpoint-Y-extent. Use colors.
3343 * scm/page.scm (annotate-page): translate annotations slightly to
3346 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3348 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3349 fix for x-staff slurs. Thanks Joe!
3351 * buildscripts/output-distance.py
3352 (SystemLink.output_expression_change_count): keep track of changed
3353 details, and dump in details html page.
3355 * input/regression/figured-bass-staff.ly: add note about setting
3356 properties in Staff context.
3358 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3359 add slurs and ties to support too.
3361 * buildscripts/output-distance.py (main): set dest_dir
3362 argument. Add --max-count option.
3364 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3366 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3367 shortcuts for special unicode chars that are useful in chant
3368 notation. Revised exisiting and added new comments.
3370 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3372 * make/mutopia-rules.make: remove duplicate recipe.
3374 2006-06-02 Werner Lemberg <wl@gnu.org>
3376 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3377 Add support for U+0132 (IJ) and U+0133 (ij).
3379 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3381 * buildscripts/output-distance.py (FileLink): new class. collect
3382 info systems from one .ly file.
3383 (FileLink.link_files_for_html): further tweaks.
3385 2006-06-02 Graham Percival <gpermus@gmail.com>
3387 * tex/texinfo.tex: partial fix for @funindex.
3389 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3392 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3394 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3396 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3397 @example too. Backportme.
3399 2006-06-02 Graham Percival <gpermus@gmail.com>
3401 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3402 from Werner Lemberg.
3404 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3406 * Documentation/user/music-glossary.tely: additional spanish
3407 updates and a lyrics fix in an example.
3409 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3411 * scm/define-grob-properties.scm: Previous patch contained
3412 spurious line from another patch not yet committed. Fixed.
3414 * scm/define-grob-properties.scm: Add missing doc strings for
3417 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3419 * buildscripts/output-distance.py
3420 (ComparisonData.write_text_result_page): separate the scores, sort
3423 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3426 * buildscripts/output-distance.py (me_path): use argv[0] for
3428 (ComparisonData.img_cell): use colored borders.
3430 * scm/stencil.scm (write-system-signature): escape newlines too.
3431 (write-system-signature): use (1,-1) interval for empty interval
3433 2006-01-01 Graham Percival <gpermus@gmail.com>
3435 * Documentation/user/music-glossary.tely: Spanish updates
3436 from Francisco Vila.
3438 * Documentation/user/lilypond-book.itely: addition from
3441 * Documentation/user/ various: edits, small additions
3444 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3446 * GNUmakefile.in (tree-lib-prefix-current):
3447 (tree-share-prefix-current): Use version number in tree, add
3450 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3452 * GNUmakefile.in: write VERSION, again.
3454 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3455 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3457 * stepmake/aclocal.m4: robuster version detection.
3459 * buildscripts/output-distance.py
3460 (ComparisonData.create_html_result_page): copy only if file
3461 exists, fixup src paths.
3463 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3465 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3467 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3468 Another datarootdir reto.
3470 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3471 available. This should be moved to postinstall-lilypond-doc.
3473 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3475 * GNUmakefile.in: simplify local-WWW-post.
3476 remove -type l from find.
3478 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3479 fixes. Don't follow symlinks.
3480 (ComparisonData.create_html_result_page): remove previous results.
3481 insert ../python in path.
3483 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3485 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3487 * config.make.in (datadir): Add datarootdir to silence autoconf.
3489 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3491 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3493 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3495 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3496 slash beams too wide.
3498 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3500 * VERSION: release 2.9.7
3502 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3504 * lily/relocate.cc (read_relocation_dir): Do not blindly
3507 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3509 * lily/parser.yy: replace THIS by PARSER
3511 * Documentation/index.html.in: add link to test-results.html page.
3513 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3515 * scm/translation-functions.scm (format-bass-figure): translate
3516 digits over 10 to the left
3518 * scm/define-markup-commands.scm (translate-scaled): new markup.
3520 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3523 * ly/engraver-init.ly: add Figured_bass_engraver
3525 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3527 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3529 * lily/score-engraver.cc (announce_grob): only note START announces.
3531 * lily/include/engraver-group.hh (Translator_group):
3532 acknowledge_hash_table_ is now drul.
3534 * lily/engraver.cc (announce_end_grob): new method.
3536 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3538 * lily/translator-dispatch-list.cc (create): take start_end argument.
3540 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3541 acknowledge_static_array_ to drul
3543 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3545 * scm/define-grob-interfaces.scm
3546 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3548 * scm/define-grobs.scm (all-grob-descriptions): add
3549 BassFigureAlignmentPositioning
3551 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3552 number stays up to date. Backportme.
3554 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3556 * Documentation/user/basic-notation.itely (Bar lines): Document
3559 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3561 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3563 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3564 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3567 * Resurrect `scons lily' build.
3569 * SConstruct (symlink_tree): Bugfix: link
3570 music-drawing-routines.ps to file iso directory.
3572 * lily/SConscript: Remove kpath-guile from LIBS.
3574 * SConstruct (libdir_package_version): Typo.
3575 (configure): Comment-out fontforge for lack of fontforge.pc .
3576 Also add libdir* to environment.
3578 2006-05-30 Graham Percival <gpermus@gmail.com>
3580 * Documentation/user/ various: minor additions from mailist and
3583 2006-05-30 Paco <fravd@ya.com>
3585 * Documentation/user/music-glossary.tely: numerous corrections and
3586 some new translations.
3588 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3592 * buildscripts/output-distance.py
3593 (ComparisonData.create_html_result_page): new routine: summarise
3594 results in HTML page with images.
3595 (ComparisonData.create_text_result_page): create summary text files too.
3597 * GNUmakefile.in (web-ext): package .signature files too. They
3600 * scm/stencil.scm (write-system-signature): typo.
3602 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3604 * scm/stencil.scm (write-system-signature): better escaping.
3605 only write signature for music systems, not for markup systems.
3607 * scm/framework-ps.scm (output-framework): dump-signatures support
3610 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3612 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3613 for -dno-point-and-click
3615 * lily/grob.cc (get_print_stencil): don't read
3616 point_and_click_global to determine whether to set grob-cause.
3618 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3620 * buildscripts/output-distance.py (main): new function.
3621 (ComparisonData): new class.
3623 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3624 careful with generating new LedgerLineSpanners.
3626 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3628 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3629 context. This fixes double ledger lines in output.
3631 * lily/system.cc (get_paper_system): remove 3 layer limit.
3633 * buildscripts/output-distance.py (SystemLink.distance): new
3634 file. Compare signatures.
3636 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3638 * lily/grob-array.cc (remove_duplicates): rename from
3639 uniq(). Sort before calling uniq() so it actually works.
3641 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3643 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3644 \version from lilypond file snippet.
3645 (Lilypond_file_snippet.ly): oops. typo.
3646 (find_toplevel_snippets): urgh. again.
3648 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3649 prevent duplicated broken items in output.
3651 * scm/framework-eps.scm (output-classic-framework): only dump if
3652 dump-signatures is set.
3654 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3656 * scm/stencil.scm (write-system-signature): new routine: write
3657 python parseable signature of a separate paper system.
3660 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3662 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3666 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3668 * translator-group.cc: send music events to engravers in
3669 non-bottom contexts.
3671 * tuplet-engraver.cc: process tuplet brackets in correct order.
3673 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3675 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3676 arg 2 might point us to a new binary (patch by Karl Hammar)
3678 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3680 * VERSION (PACKAGE_NAME): release 2.9.6
3682 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3684 * Documentation/user/*.itely: 2nd
3685 attempt: replace funindex -> findex globally.
3687 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3689 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3690 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3692 * scm/define-music-display-methods.scm: display methods for
3693 breaks. Fix \applyOutput.
3695 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3697 * Documentation/user/macros.itexi: comment out funindex expansion.
3699 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3702 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3703 Karl Hammar. Backportme.
3705 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3707 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3709 * Documentation/user/programming-interface.itely (Running a
3710 function on all layout objects): idem.
3712 * Documentation/user/introduction.itely (Automated engraving):
3713 update \applyOutput syntax
3715 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3716 remove debugging hook.
3718 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3721 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3723 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3724 TEXI2DVI_FLAGS to texi2dvi invocation.
3726 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3728 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3729 works. More work is done by iterator now, and engraver has been
3730 very much simplified.
3732 * lily/translator-group.cc: try_music is now invoked through a
3735 * lily/*-iterator.cc: Massive cleanups. Junked
3736 try_music_in_children globally. Renamed try_music to report_event,
3737 and made that method descend to a bottom context automatically.
3739 * lily/event-iterator.cc: New file.
3741 * lily/output-property-iterator.cc,
3742 lily/old-lyric-combine-music-iterator.cc: Removed.
3744 * python/convert-rules.py: Modified the syntax for \applyOutput.
3746 2006-05-23 Graham Percival <gpermus@gmail.com>
3748 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3751 * Documentation/user/ various: stuff that might have helped
3752 to fix the pdf creation, plus some minor doc additions.
3754 * Documentation/user/changing-defaults.itely: remove @b from
3755 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3757 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3759 * lily/beaming-pattern.cc (beamify): deal with negative start
3760 moments for beaming patterns.
3762 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3764 * lily/beaming-info.cc (beamify): new function: read beatLength
3765 and beatGrouping from context.
3767 * input/regression/beam-beat-grouping.ly (Module): new file.
3769 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3771 * lily/beam.cc (get_beam_segments): generate events for
3772 max_connect_ case too.
3773 (get_beam_segments): read Stem::max-beam-connect.
3775 * input/regression/beam-single-stem.ly: new file.
3777 * lily/stem.cc (set_beaming): use #f as signaling value for
3780 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3782 * lily/beam.cc (set_beaming): read clip-edges property.
3783 (calc_direction): don't suicide for single stem.
3785 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3786 argument, remove 1<<15 hack. Remove clip_edges()
3788 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3790 2006-05-21 Graham Percival <gpermus@gmail.com>
3792 * Documentation/user/basic-notation.itely: reorg.
3794 * Documentation/user/ various: minor fixes.
3796 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3798 * lily/stencil-expression.cc (register_stencil_head): opps, append
3799 to cdr of static SCM object.
3801 2006-05-19 Graham Percival <gpermus@gmail.com>
3803 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3804 update framework for command index. DOC WRITERS: use @funindex
3805 instead of @cindex @code{}.
3807 * Documentation/user/ various: replace @cindex @code{} => @funindex
3809 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3811 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3812 case positions is set manually.
3814 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3816 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3819 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3821 * Documentation/user/changing-defaults.itely (Contexts explained):
3822 use absolute dimension for @image.
3824 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3825 out image for illustration too.
3826 ($(outdir)/%.png): add more png <-> eps rules.
3828 2006-05-17 Graham Percival <gpermus@gmail.com>
3830 * Documentation/user/ various: remove trailing whitespace, cosmetic
3831 change to reduce changes produced by diff.
3833 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3835 * lily/main.cc (do_chroot_jail): correctness tweak.
3837 * python/lilylib.py (system): import subprocess in system () only.
3839 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3841 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3842 variable. Backportme.
3844 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3846 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3848 2006-05-17 Werner Lemberg <wl@gnu.org>
3850 * lily/lexer.ll (init_signature_has_table): Add
3851 `scm-scm-music-music'.
3853 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3854 (Generic_prefix_music_scm): Add rule for it.
3856 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3857 `quoted-transposition' property.
3859 * ly/music-functions-init.ly (transposedCueDuring): New function.
3861 * scm/define-music-properties.scm (all-music-properties): Updated.
3863 * Documenation/topdocs/NEWS.itely: Document it.
3865 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3867 * python/lilylib.py (system): move import subprocess to system()
3870 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3872 * VERSION (PATCH_LEVEL): release 2.9.5
3874 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3877 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3879 2006-05-16 Graham Percival <gpermus@gmail.com>
3881 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3883 * Documentation/user/ various: minor fixes.
3885 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3887 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3889 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3891 * Documentation/user/advanced-notation.itely (Instrument names):
3892 Modified obsolete instruction on how to move instrument names away
3893 from the staves. Hmm, at second thought the bug probably has been
3894 solved, so the full bug description should probably be removed.
3896 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3898 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3899 currentCommandColumn.
3901 * lily/hairpin.cc (print): also add padding for non-neighbor
3904 * scm/define-context-properties.scm
3905 (all-user-translation-properties): add hairpinToBarline
3907 * input/regression/hairpin-to-barline.ly: new file.
3909 * lily/context.cc (internal_send_stream_event): thinko fix.
3911 * lily/tie.cc (set_default_control_points): robustness fix.
3913 * python/musicxml.py (Part.interpret): don't complain about
3914 incomplete measures.
3916 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3917 new music if last_event_chord() returned None.
3919 * python/musicxml.py (Part.interpret): skip back over chord notes.
3921 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3923 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3924 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3925 lily/slash-repeat-engraver.cc,
3926 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3927 iterator sends PercentEvents
3929 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3930 rework tuplets: send start/stop events to engraver
3932 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3933 dispatchers event-source and events-below to Context
3935 2006-05-15 Graham Percival <gpermus@gmail.com>
3937 * Documentation/user/README.txt: update info for doc writers.
3939 * Documentation/user/programming-interface.itely: integrate
3940 Nicolas' fixes for chapter rewrite.
3942 * Documentation/user/ various: minor fixes.
3944 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3946 * lily/clef-engraver.cc: cleanup.
3948 * Documentation/user/GNUmakefile: dist context-example.eps too.
3950 * lily/key-engraver.cc (create_key): use
3951 explicitKeySignatureVisibility for cancellation too.
3953 * lily/font-config.cc (init_fontconfig): don't close file if
3956 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3958 * Documentation/topdocs/NEWS.tely: niente and rotation news
3960 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3962 * lily/include/stencil.hh
3963 * lily/stencil.cc (rotate): new function. Makes it possible
3964 to rotate a stencil around a given offset.
3966 * lily/grob.cc (get_print_stencil): add rotation support
3968 * lily/stencil-interpret.cc (interpret_stencil_expression):
3969 add rotation support
3971 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3973 * scm/define-grob-properties.scm: add 'rotation property
3975 * scm/define-markup-commands.scm: add rotate markup command
3977 * scm/output-ps.scm: add rotation support in PostScript backend
3979 * scm/output-svg.scm: add rotation support in SVG backend
3981 2006-05-13 Graham Percival <gpermus@gmail.com>
3983 * Documentation/user/music-glossary.itely: French correction.
3985 * Documentation/user/programming-interface.itely: major
3986 new docs, some reorg, some info from Nicolas.
3988 * Documentation/user/ various: small fixes.
3990 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3992 * Documentation/user/programming-interface.itely (Markup
3993 programmer interface): Remove duplicate text.
3995 2006-05-12 Graham Percival <gpermus@gmail.com>
3997 * Documentation/user/context-example.eps: new file.
3999 * Documentation/user/changing-defaults.itely: set up file to
4002 * Documentation/user/programming-interface.itely: changes
4005 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
4007 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4009 2006-05-11 Graham Percival <gpermus@gmail.com>
4011 * Documentation/user/programming-interface.itely: first round of
4012 editing and merging emails from Nicolas.
4014 * Documentation/user/scheme-tutorial: minor edit.
4016 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
4018 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4020 (Xml_node.message): use it.
4022 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
4023 oops. Add duration argument.
4025 2006-05-10 Joe Neeman <joeneeman@gmail.com>
4027 * lily/paper-column-engraver.cc (make_columns):
4028 * scm/define-grobs.scm: Revert my previous change and set the default
4029 in define-grobs.scm instead.
4031 2006-05-09 Graham Percival <gpermus@gmail.com>
4033 * Documentation/user/changing-defaults.itely: general editing,
4034 info about \set and \override.
4036 * Documentation/user/tweaking.itely, advanced-notation.itely:
4037 fixes from Dave Luttinen, thanks!
4039 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4041 * lily/paper-column-engraver.cc (make_columns): By default, a column
4042 needs to be breakable.
4044 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
4046 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4048 (musicxml_time_to_lily): idem
4049 (musicxml_key_to_lily): idem
4050 (instrument_drumtype_dict): dict for supported drumtypes.
4051 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4052 moments and pending mm rests
4053 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4054 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4055 (musicxml_voice_to_lily_voice): add mode change.
4056 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4057 speed and less memory usage (factor 5 to 10).
4058 (convert): write -defs.ly and driver file separately so people
4059 can script their own part extraction.
4061 * python/musicxml.py (minidom_demarshal_node): new function:
4062 separate minidom handling.
4063 (lxml_demarshal_node): new function: support lxml.etree too.
4064 (Xml_node.message): new function: verbose error message, with XML
4065 path to offending node.
4066 (Attributes.get_measure_length): sane interface to MusicXML attributes.
4067 (Part_list.generate_id_instrument_dict): new method: collect
4068 instrument names, to be able to set drum_type.
4069 (Part.interpret): handle underfull measures
4070 (Part.interpret): assign instrument names.
4072 * python/musicexp.py (Output_printer.close): new method
4073 (MusicWrapper.print_ly): new class: support other modes,
4075 (BarCheck.print_ly): new class. Support bar checks, with comments
4076 and fancy barchecks.
4077 (NoteEvent.__init__): also set drum_type for drum notes.
4078 (MultiMeasureRest.lisp_expression): dump mm rests.
4080 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4081 line-break-permission if forbidBreak is not set.
4083 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4085 * scm/define-context-properties.scm:
4086 * scm/define-grob-properties.scm:
4087 * scm/define-grobs.scm:
4088 * scm/define-music-display-methods.scm:
4089 * scm/define-music-properties.scm:
4090 * scm/define-music-types.scm:
4091 * scm/music-functions.scm:
4092 * ly/declarations-init.ly:
4093 * lily/include/constrained-breaking.hh:
4095 * lily/spaceable-grob.cc:
4096 * lily/simple-spacer.cc:
4097 * lily/paper-score.cc:
4098 * lily/paper-column.cc:
4099 * lily/paper-column-engraver.cc:
4101 * lily/gourlay-breaking.cc:
4102 * lily/constrained-breaking.cc:
4103 * python/convertrules.py:
4104 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4105 "page-break-penalty" and "line-break-permission".
4106 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4107 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4109 * lily/bar-engraver.cc:
4110 * lily/beam-engraver.cc:
4111 * lily/forbid-break-engraver.cc:
4112 * lily/ligature-engraver.cc:
4113 * lily/paper-column-engraver.cc:
4114 * lily/percent-repeat-engraver.cc:
4115 * lily/score-engraver.cc:
4116 * lily/score-engraver.hh:
4117 * lily/paper-column-engraver.hh:
4118 Inter-engraver communication regarding line breaks is done through context
4119 properties (Score.forbidBreak) instead of function calls.
4121 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4123 * VERSION (PACKAGE_NAME): release 2.9.4
4125 2006-05-08 Graham Percival <gpermus@gmail.com>
4127 * Documentation/user/working.itely: proofreading from Dave
4130 * Doucmentation/user/README.txt: updated with manual style info.
4132 * Documentation/user/ various: trim linewidth to 78 chars.
4134 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4136 * scm/define-grob-properties.scm (all-internal-grob-properties):
4137 remove chord-tremolo property.
4139 * lily/beam.cc (get_beam_segments): don't use stem position as
4140 base for broken ends.
4142 2006-05-06 Graham Percival <gpermus@gmail.com>
4144 * Documentation/user/putting.itely: proofreading from Dave
4147 * Documentation/user/ various: more reorg and clarifications.
4149 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4151 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4153 * ly/music-functions-init.ly: new function featherDurations
4155 * lily/beam.cc: read grow-direction for feathered beaming.
4157 * Documentation/topdocs/NEWS.tely (Top): typo.
4159 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4161 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4164 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4165 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4166 used by music streams.
4168 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4169 lily/stream-event.cc, lily/stream-event-scheme.cc,
4170 lily/listener.cc, lily/scheme-listener.cc,
4171 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4172 lily/include/stream-event.hh, lily/include/listener.hh,
4173 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4174 Created data structures for music streams.
4176 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4178 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4179 construction of a beam.
4182 * flower/include/std-vector.hh (default_compare): use only one comparison.
4184 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4185 (note-by-number): further attachment fixes.
4187 * scm/lily-library.scm (ordered-cons): new function.
4188 (interval-index): new function
4190 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4192 * lily/note-head.cc (get_stem_attachment): new function.
4194 * scm/define-markup-commands.scm (note-by-number): read 'style
4197 * input/regression/markup-note.ly: show note-head style option.
4199 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4202 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4204 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4206 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4208 * lily/include/constrained-breaking.hh: GCC 4 fix.
4210 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4212 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4213 Replace it with functions get_line_forces and get_line_configuration.
4214 (class Simple_spacer): Make data private.
4215 Rewrite compression algorithm to be faster and simpler.
4217 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4218 * lily/gourlay-breaking.cc (solve):
4219 * lily/constrained_breaking.cc (space_line):
4220 Change it to the new simple-spacer code.
4222 * lily/paper-score.cc (get_paper_systems):
4225 Delay breaking the systems until they are requested.
4226 (find_break_indices):
4227 Use vsize for indices.
4229 Move the "Calculating line breaks" message here.
4231 * lily/system.cc (pre_processing):
4232 Move the "Calculating line breaks" message away from here.
4233 (break_into_pieces):
4234 Allow multiple calls to this function in sequence (with touching-but-
4235 not-overlapping breakpoints).
4237 * lily/constrained-breaking.cc:
4238 Replace most of the get_XXXX functions with get_line_details.
4239 Only calculate the force for each line. Calculate configurations only
4240 for the lines we will actually use.
4241 Replace cols_ with lines_.
4243 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4245 * mf/GNUmakefile (depth): remove FC_FIND.
4247 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4249 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4251 * scm/framework-ps.scm (write-preamble): new function.
4252 (write-preamble): load mac fonts via fondu, even if gs-font-load
4255 2006-05-03 Werner Lemberg <wl@gnu.org>
4257 * mf/GNUmakefile (FC_FIND): Fix typo.
4259 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4261 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4263 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4265 * stepmake/aclocal.m4: run python-config for crosscompiling
4268 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4269 -f png for HTML, TEXINFO formats.
4271 * input/tutorial/lbook-html-test.html: new file.
4273 * lily/include/tie-formatting-problem.hh (class
4274 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4275 [column, direction]. This fixes laissez vibrer ties.
4277 * flower/include/tuple.hh (struct Tuple2): new file.
4279 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4280 $(FCMATCH), only if $(NCSB_DIR) not set.
4282 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4284 * config.make.in (DOCUMENTATION): set FCMATCH.
4286 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4288 2006-05-03 Graham Percival <gpermus@gmail.com>
4290 * Documentation/user/ various: final round of reorg.
4292 * Documentation/user/instrument-notation.itely: some more
4293 fixes from Eduardo, thanks!
4295 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4297 * VERSION (PACKAGE_NAME): release 2.9.3
4299 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4301 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4303 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4305 * scm/define-grob-properties.scm (all-user-grob-properties):
4306 Correct typo, thanks to Eduardo.
4308 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4310 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4312 * buildscripts/lilypond-words.py (F): indent fix.
4314 * input/regression/tie-arpeggio-collision.ly: new file.
4316 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4317 function: store outlines per column rank.
4319 * lily/include/tie-configuration.hh (class Tie_configuration): add
4320 column_ranks_ to specification and configuration, to distinguish
4321 between ties for different heads in arpegiated chords.
4323 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4325 * *.py: more 4 space indents.
4327 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4329 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4331 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4333 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4335 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4337 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4339 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4341 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4343 * python/convertrules.py (conv): indent 4 for python files.
4345 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4347 * Documentation/user/changing-defaults.itely (Creating contexts):
4348 Clarify \new semantics.
4350 2006-04-28 Graham Percival <gpermus@gmail.com>
4352 * Documentation/user/ various: major new sections in the
4353 Learning manual, slight reorg elsewhere.
4355 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4357 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4359 * scm/framework-ps.scm (output-framework): remove PageMedia
4361 2006-04-27 Graham Percival <gpermus@gmail.com>
4363 * Documentation/user/ tweaks.itely, working.itely: new
4364 files, being more advanced "learning manual" chapters.
4366 * Documentation/user/ tutorial, putting, lilypond: reorg.
4368 2006-04-26 Graham Percival <gpermus@gmail.com>
4370 * input/regression/lyric-combine-polyphonic.ly: fixed test
4371 (no more "can't find context `one'" error).
4373 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4375 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4377 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4379 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4381 * lily/relocate.cc (read_relocation_dir): new function.
4383 2006-04-26 Graham Percival <gpermus@gmail.com>
4385 * Documentation/user/instrument-notation.itely: a few more fixes
4386 from Eduardo, thanks!
4388 * Documentation/user/README.txt: new file; contains info on
4389 style that used to be in lilypond.tely.
4391 * Documentation/user/ various: first round of doc reorg.
4393 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4394 graphic; this probably causes problems on some pdf
4395 viewers, notably Adobe Acrobat.
4397 2006-04-24 Graham Percival <gpermus@gmail.com>
4399 * Documentation/user/instrument-notation.itely: many alterations
4400 to Vocal music, from Eduardo Viera.
4402 2006-04-23 Graham Percival <gpermus@gmail.com>
4404 * Documentation/user/instrument-notation.itely: fix \new
4405 instead of \context problem.
4407 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4409 * lily/relocate.cc (expand_environment_variables): new function.
4411 (read_relocation_file): id.
4413 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4415 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4417 * ly/engraver-init.ly: remove old comments from TabVoice
4419 2006-04-20 Graham Percival <gpermus@gmail.com>
4421 * Documentation/user/instrument-notation.itely: added Erlend's
4422 latest doc patch, thanks!
4424 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4426 * lily/include/slur.hh:
4428 * lily/phrasing-slur-engraver.cc:
4429 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4430 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4431 Slur_engraver:: and putting it in
4432 Slur::auxiliary_acknowledge_extra_object ().
4434 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4436 * lily/note-collision.cc: fix a comment
4438 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4440 * stepmake/bin/add-html-footer.py: fix footer position in
4441 generated html files: before </body> and </html> tags.
4443 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4445 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4446 Earlier successive `make' commands finally compiled ok.
4448 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4450 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4452 * lily/include/stem-tremolo.hh:
4453 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4457 * lily/include/lookup.hh: add rotated_box ()
4459 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4461 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4462 been generated. Fixes "can't get `--help'" bug after make clean.
4464 * THANKS: alphabetize contributors.
4466 2006-04-17 Graham Percival <gpermus@gmail.com>
4468 * Documentation/user/instrument-notation.itely: added Erlend's
4469 tabs and banjo doc patch. Thanks!
4471 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4473 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4475 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4477 * scm/output-lib.scm: add some more predefined string tunings.
4479 * Documentation/user/instrument-notation.itely: and doc them.
4481 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4483 * ly/engraver.ly: Remove obsolete comments.
4485 * ly/gregorian-init.ly: Define default layout block.
4487 * input/puer-fragment.ly: Updated and extended.
4489 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4491 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4492 pdf conversion behaviour.
4494 * flower/file-name.cc (dir_name)
4495 (get_working_directory): Move from relocate.cc.
4497 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4499 * lily/relocate.cc: Encapsulate sys/stat.h in
4502 2006-04-14 Graham Percival <gpermus@gmail.com>
4504 * Documentation/user/ various: small updates from Cameron
4505 and Juergen, thanks!
4507 * Documentation/user/ various: small updates of my own.
4509 * THANKS: 2.7 -> 2.8.
4511 2006-04-11 Graham Percival <gpermus@gmail.com>
4513 * scm/define-context-properties.scm: typo.
4515 * Documentation/user/ : many more small updates.
4517 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4519 * scm/define-music-types.scm: disposed "docme".
4521 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4523 * lily/hairpin.cc: make niente circles a bit smaller.
4525 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4527 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4528 get-pfa and get-*-fonts targets.
4530 2006-04-10 Graham Percival <gpermus@gmail.com>
4532 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4533 music-glossary, programming-interface: more minor fixes
4536 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4538 * scm/define-context-properties.scm: another old \property update.
4539 This time tested for compiling!
4541 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4543 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4545 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4547 * scm/define-context-properties.scm (all-user-translation-properties):
4548 * Documentation/user/global.itely (Page formatting): Compile fix.
4550 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4552 * Documentation/user/advanced-notation.itely (Polymetric
4553 notation): Update the example to use the "+" symbol and add link
4554 to input/test/compound-time.ly.
4556 2006-04-08 Graham Percival <gpermus@gmail.com>
4558 * scm/define-grob-properties.scm: clarify docs for #'direction.
4560 * scm/define-context-properties.scm: update old \property override.
4562 * Documentation/user/ advanced-notation, global, lilypond-book:
4563 more minor doc updates.
4565 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4567 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4569 * scm/backend-library.scm (search-gs): oops.
4571 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4573 * scripts/lilypond-book.py (output): use base, not filename for href.
4575 * scm/backend-library.scm: only look for gs.
4577 * scripts/lilypond-book.py (output): fix printfilename.
4579 * lily/parser.yy (music_function_musicless_prefix): fold together
4580 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4582 * lily/slur.cc (print): only set font-size if not set yet.
4584 * lily/slur-configuration.cc (add_score): improved layout of debug
4587 2006-04-05 David Feuer <David.Feuer@gmail.com>
4589 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4590 (draw_circle): Hopefully fixed regression.
4591 Improved documentation for several procedures.
4593 2006-03-04 Werner Lemberg <wl@gnu.org>
4595 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4597 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4599 * scripts/musicxml2ly.py (bindir): add dynamic
4602 2006-04-04 Graham Percival <gpermus@gmail.com>
4604 * Documentation/user/ basic-notation, advanced-notation, putting,
4605 instrument-notation, invoking, lilypond, THANKS: another ream of small
4606 fixes from the Doc Helpers.
4608 2006-04-03 David Feuer <David.Feuer@gmail.com>
4610 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4612 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4614 * Cleaned up interfaces between PostScript and Scheme, and moved
4615 computations from PostScript to Scheme:
4617 * music-drawing-routines.ps
4618 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4619 with stroke_and_fill throughout.
4620 (euclidean_length, print_letter, draw_box): Deleted unused
4621 procedures. If someone needs draw_box, implement it using
4622 draw_round_box; don't duplicate code.
4623 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4624 Refactored/cleaned up interfaces.
4627 * output-ps.scm: reordered arguments to PostScript functions to
4628 match new interfaces
4629 (glyph-string): Rewrote glyph-string.
4630 (grob-cause): Replaced string-append with format.
4631 (repeat-slash): Rewrote to do computation here.
4632 (round-filled-box): Rewrote to do computation here.
4634 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4636 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4638 * stepmake/stepmake/toplevel- targets.make: print help info about
4641 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4643 * input/regression/hairpin-circled.ly: new file
4645 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4647 * lily/hairpin.cc (print): add support for circled tip
4649 * scm/define-grob-properties.scm: add circled-tip parameter
4651 * scm/define-grobs.scm: init circled-tip to false
4653 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4655 * scm/music-functions.scm (quote-substitute): set
4658 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4660 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4663 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4665 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4667 2006-03-31 David Feuer <david.feuer@gmail.com>
4669 * scm/framework-ps.scm:
4671 * scm/output-ps.scm: glyph-string now produces smaller, more
4672 readable, and probably faster PostScript. Several findfont
4673 scalefont setfont instances changed to selectfont
4674 Hacked-up string-appends changed to formats.
4676 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4678 2006-03-30 Graham Percival <gpermus@gmail.com>
4680 * scm/lily-library.scm: make "no version" warning message more polite.
4682 * lily/music.cc: add double quotes to failed octave check.
4684 * Documentation/user/ advanced-notation, changing-defaults,
4685 instrument-notation, invoking, music-glossary: whole bunch of minor
4688 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4690 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4691 $(buildscriptdir) iso. depth.
4693 * VERSION (PACKAGE_NAME): release 2.9.1
4695 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4697 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4699 * VERSION (PATCH_LEVEL): bump version number.
4701 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4704 * lily/pango-font.cc (pango_item_string_stencil): use
4707 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4708 $(outdir)/emmentaler-%.svg): remove canary.
4710 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4711 glyphnames if we have a ttf font.
4713 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4715 * Documentation/user/advanced-notation.itely (Font selection):
4716 Corrected reference to the font-family-override.ly example.
4718 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4720 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4721 stem-tremolo object in the stem (or else the stem might not be
4724 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4726 * lily/ttf.cc (print_trailer): only print existing glyphs.
4728 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4730 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4731 position the tremolo based on the position of the notehead.
4733 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4734 notes and update the texidoc line with the new positioning rules.
4736 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4738 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4740 * scripts/lilypond-book.py (Module): set default for linewidth if
4743 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4745 * VERSION (PACKAGE_NAME): release 2.9.0.
4747 * input/regression/stem-tremolo-position.ly: new file.
4749 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4751 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4753 * lily/stem-tremolo.cc (print): position
4754 the tremolo depending only on the end of the stem
4755 and not on the notehead
4756 (raw_stencil): center, on the middle staff line, the
4757 flag that is closest to the end of the stem (previously
4759 (calc_width): add this callback to shorten a tremolo when
4760 it is beamed or it is stemup with a flag
4761 (style): add this callback to make a tremolo rectangular when
4762 it is beamed or it is stemup with a flag
4763 (rotated_box): this is like Lookup::beam but makes a rotated
4764 rectangle instead of a parallelogram
4766 * lily/stem.cc (calc_stem_info): make sure the stem
4767 is long enough to fit the tremolo
4768 (calc-length): reduce the length of tremolo stems since the
4769 tremolo code is now capable of better positioning
4771 * scm/define-grobs.scm: make calc_width the default beam-width
4772 callback for stem-tremolo and add the style callback
4774 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4776 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4779 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4781 * lily/ttf.cc (make_index_to_charcode_map): restore old
4784 2006-03-28 Werner Lemberg <wl@gnu.org>
4786 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4788 2006-03-28 Graham Percival <gpermus@gmail.com>
4790 * THANKS: update for 2.9, add section for Documentation helpers.
4792 * Documentation/topdocs/NEWS.tely: compile fix.
4794 * Documentation/user/ basic-notation, global, advanced-notation,
4795 examples.itely: minor fixes from mailist.
4797 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4799 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4802 * lily/ttf.cc (print_trailer): use it.
4804 * lily/pango-font.cc (get_unicode_name): new function.
4806 * lily/ttf.cc (make_index_to_charcode_map): move function from
4808 (print_trailer): substitute uniXXXX name if applicable.
4810 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4811 (pango_item_string_stencil): use it to generate uniXXXX names.
4813 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4814 note heads, for uniform widths in shape note output.
4815 (overdone_heads): hmm. remove them again.
4817 * scripts/lilypond-book.py (output): add links to filenames.
4819 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4821 * lily/note-collision.cc (get_clash_groups): only consider when
4822 Note_column::dir <> CENTER.
4824 * scripts/lilypond-book.py (get_option_parser): init output_name
4827 2006-03-24 Graham Percival <gpermus@gmail.com>
4829 * Documentation/topdocs/NEWS.tely: add @end itemize
4831 * Documentation/user/ global, advanced-notation: minor
4834 2006-03-23 Graham Percival <gpermus@gmail.com>
4836 * Documentation/user/ lilypond.tely, music-glossary,
4837 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4839 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4841 * mf/GNUmakefile: don't install .enc files.
4843 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4845 * VERSION (PATCH_LEVEL): bump to 2.9.0
4847 2006-03-22 Graham Percival <gpermus@gmail.com>
4849 * Documentation/user/advanced-notation.itely: minor fixes
4852 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4854 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4856 * branch lilypond_2_8
4858 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4860 * scripts/lilypond-book.py (samefile): new function, for windoze
4863 2006-03-21 Graham Percival <gpermus@gmail.com>
4865 * ly/engraver-init.ly: add info about StaffGroup.
4867 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4869 * input/regression/stem-direction-context.ly: idem.
4871 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4875 * input/regression/page-layout-twopass.ly: comment out \markup so
4878 * lily/instrument-name-engraver.cc (finalize): add to instrument
4879 name global System. This also fixes chopped instrument names, but
4880 doesn't crash when there are slurs/beams.
4882 * lily/slur-configuration.cc (add_score): disallow negative slur
4885 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4887 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4889 * lily/instrument-name-engraver.cc (process_music): kludge: add
4890 InstrumentName spanner to axis group of left bound. Fixes chopped
4891 off instrument names in EPS images.
4893 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4895 * scripts/abc2ly.py (option_parser): update to 2.7.40
4897 2006-03-20 Graham Percival <gpermus@gmail.com>
4899 * THANKS: move small doc contributors to SUGGESTIONS.
4901 * Documentation/user/ basic-notation, advanced-notation,
4902 global: small changes from mailist.
4904 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4906 * Documentation/user/advanced-notation.itely (Text marks): update
4907 for new rehearsalMarkAlignSymbol convention.
4909 * VERSION (PATCH_LEVEL): bump version.
4911 * input/test/instrument-name-align.ly: new file.
4913 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4915 * input/test/instrument-name-align.ly: new file. Document how to
4916 align instrument names.
4918 * lily/mark-engraver.cc: remove properties.
4920 * scm/define-context-properties.scm
4921 (all-user-translation-properties): remove align symbol properties
4922 for barnumber/reh. mark.
4924 * lily/break-align-interface.cc (self_align_callback): new
4925 interface, new function. Look at complete alignment. This handles
4926 tunable break alignments in case break-align-symbols are missing.
4928 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4930 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4932 * python/convertrules.py (conv): mark/bar number alignment rule.
4934 * lily/break-align-interface.cc (calc_positioning_done): also
4935 store offset from last visible break-alignment to its
4936 neighbor. This makes alignment on non-visible objects more reliable.
4938 * po/lilypond.pot (Module): ran po-replace.
4940 * input/regression/tie-single-manual.ly (Module): new file.
4942 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4943 look at has_manual_position_.
4944 (from_ties): set has_manual_position_ if tie has staff-position set.
4946 * lily/tuplet-bracket.cc (calc_positions): idem.
4948 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4951 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4953 * scm/define-markup-commands.scm (smallCaps): new markup command
4954 for turning a text to small caps using smaller font size and upper
4957 2006-03-17 Graham Percival <gpermus@gmail.com>
4959 * Documentation/user/ examples, instrument-notation,
4960 advnaced-notation: minor fixes from mailist.
4962 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4964 * Documentation/user/tutorial.itely (First steps): change example
4967 2006-03-17 Graham Percival <gpermus@gmail.com>
4969 * Documentation/user/ examples, advanced: minor changes from mailist.
4971 * THANKS: add Geoff Horton, for documentation stuff.
4973 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4975 * python/lilylib.py (system): revert have_select kludge.
4977 * Documentation/user/tutorial.itely (Commenting input files):
4978 update version numbers in doc.
4980 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4981 bound-padding to multi-measure-interface
4983 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4985 * input/test/engraver-example.ily: update version number.
4987 * VERSION (PACKAGE_NAME): release 2.7.39
4989 * lily/note-spacing.cc (get_spacing): heighten threshold where
4990 accidentals/arpeggios influence previous spacing fully.
4992 * lily/rest.cc (y_offset_callback): only use direction if
4993 staff-position wasn't set before.
4995 * lily/bar-number-engraver.cc: add support for
4996 barNumberAlignSymbol.
4997 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4999 * lily/pointer-group-interface.cc (set_ordered): new function.
5000 (add_unordered_grob): new function.
5002 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5003 to ordered, unless the opposite has been proved. This fixes
5004 random reordering of large object groups across linebreaks,
5007 * lily/main.cc (do_chroot_jail): printf format fix.
5009 * lily/tie-formatting-problem.cc (generate_configuration):
5010 multiply y-shift for dot with direction.
5012 * scm/define-markup-commands.scm (note-by-number): put (magstep
5013 size) in y-attach too.
5015 * Documentation/topdocs/NEWS.tely (Top): show override.
5017 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5018 direction for stems.
5020 2006-03-15 Graham Percival <gpermus@gmail.com>
5022 * Documentation/user/ changing-defaults, global: minor
5025 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5027 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5029 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5030 breakable items after uniformly stretched notes.
5032 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5033 outline with outer edge of note heads. This prevents infinity
5034 problems with tied whole notes.
5036 * scripts/lilypond-book.py (do_file): use os.popen
5038 * python/convertrules.py (conv): add rule for Stem #'beamed-*
5040 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
5042 * Documentation/user/invoking.itely: Add ragged-right to bug report
5045 2006-03-14 Graham Percival <gpermus@gmail.com>
5047 * Documentation/user/global.itely: small fix from mailist.
5049 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
5051 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5052 file descriptor returned by tempfile.mkstemp() when writing
5053 to tmpfile and closing it. Solves problem with unlink(tmpfile)
5056 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
5058 * po/fi.po: newline bugfix.
5060 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
5062 * scm/paper.scm (paper-alist): Rounding fixes.
5064 2006-03-13 Graham Percival <gpermus@gmail.com>
5066 * Documentation/user/ changing-defaults, instrument-notation,
5067 tutorial: small fixes from mailist, mostly from Mats. Thanks!
5069 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5073 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5075 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5078 * python/lilylib.py (print_environment): move ps_page_count to
5081 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5083 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5085 * scm/framework-ps.scm (embed-document): new function. Use to
5088 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5090 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5092 * Documentation/user/instrument-notation.itely (Setting simple
5093 songs): Added \book{...} around the full example, so the separate
5094 markups are included in the printed example.
5096 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5098 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5101 * python/lilylib.py (system): rewrite system() using
5102 subprocess. Remove >& redirection trickery.
5104 2006-03-11 Graham Percival <gpermus@gmail.com>
5106 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5107 notation-appendices.itely: minor fixes from mailist.
5109 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5111 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5112 unsplit man also needs images.
5114 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5116 * VERSION (PACKAGE_NAME): 2.7.38 released.
5118 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5120 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5123 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5125 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5126 respects the Score.skipTypesetting property.
5128 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5130 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5131 Prolog. No %%EOF after CFF file.
5133 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5135 * lily/constrained-breaking.cc (get_max_systems): used to return a
5137 (combine_demerits): use pointers to reduce copying data
5138 (calc_subproblem): idem
5139 (get_page_penalty): add page turn penalties
5141 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5143 * Documentation/user/invoking.itely (Invoking lilypond): better
5144 explanation of -e usage.
5146 * lily/main.cc (main_with_guile): don't append to
5147 init_scheme_code_string
5149 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5151 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5153 * scripts/convert-ly.py (do_options): don't print help for
5156 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5157 @code and @example. Update from texinfo.tex from CVS.
5159 2006-03-08 Graham Percival <gpermus@gmail.com>
5161 * Documentation/user/scheme-tutorial.itely: clarifies distances
5162 measured in staff-spaces.
5164 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5166 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5167 consider[k] is true.
5169 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5171 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5172 consider columns that have originals. Unifies spacing for mm
5173 rests around line breaks.
5175 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5176 (set_text_rods): idem.
5177 (calculate_spacing_rods): new function: share code between
5178 set_text_rods and set_spacing_rods.
5179 (set_text_rods): take extents of bounds into account.
5181 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5183 * Documentation/user/basic-notation.itely (Writing music in
5184 parallel): don't use relative.
5186 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5188 * ly/music-functions-init.ly (Module): add shiftDurations
5190 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5192 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5194 * ly/engraver-init.ly: init vocalName to nil.
5196 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5198 * scm/music-functions.scm (music->make-music): bugfix,
5199 KeyChangeEvents are now handled correctly.
5201 * scripts/lilypond-book.py: Add --debug option.
5203 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5205 * python/lilylib.py: add tempfile.
5207 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5209 * VERSION (PACKAGE_NAME): release 2.7.37
5211 * python/lilylib.py (ps_page_count): remove make_ps_images().
5212 (ps_page_count): remove mkdir_p
5213 (system): remove cleanup_temp.
5214 (exit): remove lilypond_version_(check)
5215 (error_log): remove pseudo_filter_p
5220 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5223 * lily/accidental-engraver.cc (make_standard_accidental): only add
5224 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5226 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5227 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5228 Make incompatibilities.
5230 * scm/output-ps.scm (grob-cause): replace backslashes by /
5231 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5233 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5235 * cygwin/GNUmakefile: Install fixes.
5237 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5239 * lily/note-head.cc (head::get_balltype): Compile fix.
5241 * flower/file-name.cc (dos_to_posix): Flower string fix.
5243 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5245 * python/lilylib.py: pychecker cleanups.
5247 * scripts/lilypond-book.py
5248 (Lilypond_snippet.output_print_filename): pychecker cleanups
5250 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5252 * python/lilylib.py (underscore): remove identify() , warranty()
5254 * ps/music-drawing-routines.ps: change Border routine for GSView
5257 * lily/stem.cc (height): use quantize-positions. This triggers
5258 set_stem_lengths, so scripts on beamed stems are handled correctly.
5260 * lily/side-position-interface.cc (aligned_side): check if edges
5261 of script are inside staff. Fixes accent of edge of the staff.
5263 * input/regression/staccato-pos.ly: more examples.
5265 * stepmake/aclocal.m4 (depth): fix bashism.
5267 * lily/lyric-combine-music-iterator.cc: move from
5268 new-lyric-combine-iterator.cc
5269 (process): add pending_grace_lyric_ member to delay lyrics on
5272 * lily/system-start-text.cc (print): suicide if we don't have any
5273 elements. Fixes hara kiri'd instrument names.
5275 * scripts/mup2ly.py (Module): remove.
5277 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5279 * Documentation/user/global.itely (A single music expression):
5280 close @lilypond properly
5282 * lily/volta-bracket.cc (modify_edge_height): change from
5283 after_line_breaking_callback. Suicide last bracket if appropriate.
5285 * python/lilylib.py: strip getopt support
5287 * scripts/etf2ly.py (do_options): use optparse
5289 * scripts/midi2ly.py: optparse, strip lilylib copy.
5291 * scripts/abc2ly.py (voices): use optparse.
5293 * stepmake/stepmake/generic-vars.make: new function absdir.
5295 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5297 * scripts/lilypond-book.py (find_file): use global_options for
5300 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5303 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5305 * python/lilylib.py (get_global_option): ughness for extracting
5306 global options from lilylib.
5307 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5309 * scripts/lilypond-book.py (get_option_parser): use optparse for
5310 option handling. Put options in global_options variable.
5312 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5314 * Documentation/index.html.in: clarify.
5316 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5318 * scm/layout-page-layout.scm (write-page-breaks): add a
5319 music-system-heights property to the page layout output.
5321 * scm/page.scm (make-page-stencil): take footer into account when
5322 computing the 'space-left page property
5323 (annotate-space-left): take footer into account when annonating
5326 2006-02-28 Graham Percival <gpermus@gmail.com>
5328 * Documentation/user/ advanced-notation, global: more (final)
5329 docs for music expressions, removed special fermatas.
5331 2006-02-27 Graham Percival <gpermus@gmail.com>
5333 * Documentation/user/ basic-notation, global: minor changes
5336 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5338 * scm/framework-ps.scm:
5339 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5340 layer for inf? and nan? from framework-ps to lily-library.
5342 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5344 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5345 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5347 * buildscripts/substitute-encoding.py (Module): remove file.
5349 * mf/GNUmakefile: more PFA strippage.
5351 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5353 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5356 * scm/framework-ps.scm: remove font name munging.
5358 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5360 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5362 * scm/markup.scm (define-markup-command): change
5363 def-markup-command to define-markup-command
5365 * scm/music-functions.scm (define-music-function): change
5366 def-music-function to define-music-function.
5368 * python/convertrules.py (conv): rules for def-music-function
5369 and def-markup-commands
5371 * Documentation/user/programming-interface.itely,
5372 input/no-notation/display-lily-tests.ly,
5373 input/regression/lily-in-scheme.ly,
5374 input/regression/markup-user.ly,
5375 input/regression/music-function.ly, input/regression/tie-chord.ly,
5376 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5377 ly/gregorian-init.ly: use new macro names (define-music-function,
5378 define-markup-command).
5380 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5382 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5383 (output): add comments to lp-book latex output.
5385 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5388 2006-02-23 Graham Percival <gpermus@gmail.com>
5390 * Documentation/user/ tutorial, global: minor changes.
5392 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5394 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5395 blocks (for make 3.80)
5397 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5398 \notemode so that user should not have to explicitely type it.
5400 * scm/define-music-display-methods.scm: various
5401 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5404 * input/no-notation/display-lily-tests.ly: new tests for
5405 \applyOutput and \applyContext
5407 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5409 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5410 changed it slightly so that the number of systems returned by
5411 solve () will be the same as the last value passed to resize
5412 (). I've also added more documentation, removed casts, fixed style
5413 problems and put in some recovery if constraints aren't satisfied."
5415 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5417 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5418 for emacs < 22 compatibility.
5419 (count-rexp): Use it.
5420 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5421 substring juggling (Milan Zamazal).
5423 2006-02-23 Graham Percival <gpermus@gmail.com>
5425 * Documentation/user/ basic-notation, advanced-notation,
5426 global.itely, invoking.itely, tutorial,itely:
5427 minor fixes from mailist.
5429 * scm/define-markup-commands.scm: improve docs of \filled-box.
5431 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5433 * Documentation/index.html.in: changes concern the previous release.
5435 * input/regression/+.ly: cultivate typographical terminology.
5437 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5439 * scm/define-grob-interfaces.scm (parentheses-interface): add
5440 padding to parentheses-interface.
5442 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5443 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5445 * VERSION (PATCH_LEVEL): release 2.7.36
5447 * lily/slur.cc: add avoid-slur (ugh.)
5449 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5450 intersection gets smaller. This fixes slurs over extreme points.
5452 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5453 stems with neutral-direction set.
5455 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5457 * lily/open-type-font.cc (load_table): format error.
5459 * lily/change-iterator.cc (process): format fix.
5461 * flower/include/international.hh (_f): idem.
5463 * flower/include/std-string.hh: add format printf attribute.
5465 * scm/define-grobs.scm (all-grob-descriptions): height of all
5466 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5468 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5471 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5473 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5475 * input/regression/: upgraded syntax for some files.
5477 * THANKS: Add bughunters.
5479 2006-02-22 Graham Percival <gpermus@gmail.com>
5481 * Documentation/user/ invoking.itely, advanced-notation.itely,
5482 global.itely: long-awaited "let's make chapter 10 not suck"
5483 update. Rearrange chapter 10; now called "global issues",
5484 addresses file structure, etc. Some info from other files
5485 moved into global.itely.
5487 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5489 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5490 catch trill-span-event notes.
5492 * Documentation/user/examples.itely (Ancient notation templates): typo.
5495 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5497 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5499 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5501 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5503 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5504 froum Laissez_vibrer_engraver.
5506 * ly/declarations-init.ly (repeatTie): add \repeatTie
5508 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5510 * scm/define-grob-properties.scm (all-user-grob-properties): add
5511 head-direction property.
5513 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5514 from_lv_ties. Take head direction argument.
5516 * lily/semi-tie-column.cc: rename from
5517 laissez-vibrer-tie-column.cc. Rename class too.
5519 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5522 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5524 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5526 (find_breaks): idem.
5528 2006-02-21 Graham Percival <gpermus@gmail.com>
5530 * Documentation/user/advanced-notation.itely: fixed make-moment]
5533 * Documentation/user/basic-notation.itely: more clarification to
5536 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5538 * lily/include/constrained-breaking.hh (class
5539 Constrained_breaking): new file.
5541 * lily/constrained-breaking.cc (resize): new file.
5543 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5545 * Documentation/user/advanced-notation.itely (Clusters): insert
5548 * lily/tie-column.cc (calc_positioning_done): support for
5551 * lily/tie-formatting-problem.cc
5552 (generate_extremal_tie_variations): factor out.
5553 (score_ties_configuration): annotate all tie
5554 (print_ties_configuration): new routine.
5555 (generate_configuration): nudge extremal ties outside of the head
5557 (score_ties_configuration): oops. convert to staff-space before
5558 determining position symmetry.
5560 2006-02-20 Graham Percival <gpermus@gmail.com>
5562 * Documentation/user/*-notation.itely: misc minor editing,
5563 shifting doc sections around.
5565 * Documentation/user/*-notation-itely, global.itely,
5566 changing-defaults.itely: added new stuff from NEWS.
5568 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5572 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5574 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5575 lilypond --verbose for lp-book.
5577 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5578 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5580 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5581 $(buildscript-dir) iso. absolute depth.
5583 * buildscripts/genicon.py (dir): thinko.
5585 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5587 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5589 * scm/output-lib.scm: swap darkcyan/darkyellow
5591 * THANKS: Add bughunters.
5593 2006-02-19 Graham Percival <gpermus@gmail.com>
5595 * Documentation/user/programming-interfaces.itely: fixed example.
5597 * Documentation/user/instrument-notation.itely: fix @{ @}.
5599 * scm/script.scm: add avoid-slur for \open.
5601 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5603 * lily/tie-formatting-problem.cc (score_configuration): use
5604 sliding score for min-length.
5606 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5607 spaghetti for icons.
5609 * buildscripts/genicon.py (program_name): new file.
5611 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5613 (generate_configuration): for small ties, also look for collisions
5614 at Y + DIR*h + DELTA_Y.
5615 (get_variations): consider variation for dot positions too.
5617 * lily/side-position-interface.cc (aligned_side): take abs for
5618 quantized rounded position. Fixes tenuto below staff.
5620 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5621 markers when necessary.
5623 * lily/program-option.cc (internal_set_option): add
5624 strict_infinity_checking option.
5626 * scm/output-lib.scm (cyan): swap yellow and cyan.
5628 2006-02-19 Graham Percival <gpermus@gmail.com>
5630 * darwin.patch: trivial linenumber update.
5632 * Documentation/user/ {various}: `\context foo = named' changed
5633 to `\new foo = "name"' in docs.
5635 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5637 * scm/stencil.scm (annotate-y-interval): use it.
5639 * scm/lily-library.scm (interval-sane?): new function.
5641 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5644 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5647 * flower/include/std-vector.hh (iterof): add iterof macro.
5649 * lily/enclosing-bracket.cc (width): new function.
5651 * lily/align-interface.cc (align_elements_to_extents): reinstate
5654 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5656 * Documentation/index.html.in: fix spelling: thankyous.
5658 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5660 * lily/lyric-hyphen.cc: typo.
5662 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5664 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5665 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5668 * VERSION: release 2.7.35
5670 * lily/beam.cc (get_default_dir): oops. Take abs () for
5672 (get_default_dir): use extreme position criterion only in absence
5673 of forced stem directions.
5675 * VERSION (PATCH_LEVEL): bump VERSION.
5677 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5678 dependencies. Necessary for -jX builds.
5680 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5682 * lily/relocate.cc (setup_paths): Yet another const fix.
5684 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5686 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5688 * lily/relocate.cc (setup_paths): oops.
5690 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5692 * Documentation/index.html.in: order links: html before PDF.
5694 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5696 * lily/tie-column-format.cc (Module): remove.
5698 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5700 * lily/text-spanner.cc (print): idem.
5702 * lily/dynamic-text-spanner.cc (print): only print line if longer
5705 * lily/auto-change-iterator.cc (change_to): formatting.
5707 * lily/beam.cc (get_default_dir): take extreme note head as input
5710 * lily/tie.cc (get_default_dir): only look directions for visible
5713 * lily/side-position-interface.cc (aligned_side): oops. Don't
5714 mutiply with direction. This fixes quantized (staccato, tenuto)
5715 scripts below notes.
5717 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5718 direction. Fixes c-lyrics-center-align.ly
5720 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5722 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5725 * lily/std-string.cc:
5726 * lily/include/std-vector.hh (split_string): Move and rename from
5727 lily/include/misc.hh, lily/misc.cc. Update callers.
5729 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5731 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5733 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5735 * flower/test-file.cc: New file.
5737 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5740 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5742 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5744 * flower/include/file-storage.hh: remove file.
5746 * lily/include/midi-item.hh (class Midi_track): idem.
5748 * lily/include/source.hh (class Sources): idem.
5750 * lily/include/performance.hh (class Performance): use vector
5753 * flower/include/cons.hh (class Cons): remove file.
5755 * flower/include/flower-proto.hh: remove template cruft.
5757 * lily/include/font-metric.hh: use size_t not vsize for indices.
5759 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5762 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5764 * lily/include/paper-book.hh (class Paper_book):
5765 make get_system_specs() public.
5767 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5768 the force=10000 case if we don't have a current-best.
5770 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5773 * flower/include/flower-proto.hh: remove outdated templates.
5775 * scm/page.scm: use annotate-spacing
5777 2006-02-15 Graham Percival <gpermus@gmail.com>
5779 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5781 * THANKS: moved Erlend Aasland to contributors.
5783 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5785 * config.hh.in: remove HAVE_PANGO_16
5787 * lily/tuplet-bracket.cc (calc_positions): multiply with
5788 staff-space for beam case. This fixes tuplets+beams on scaled
5791 * config.hh.in: remove all Kpathsea related defines.
5793 * lily/dot-column.cc (side_position): reach stem via dots->
5794 head->stem. Inspect all stems for dot collisions.
5796 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5799 * lily/bar-number-engraver.cc (process_music): document function
5802 * lily/score.cc (default_rendering): add pscore, not systems
5805 * lily/paper-book.cc (get_system_specs): separate generation of
5808 * flower/include/std-vector.hh: don't include config.hh
5810 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5812 * flower/include/std-vector.hh: Better wrapper compatibility with
5815 * flower/include/flower-proto.hh: Remove cheap forward declaration
5818 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5820 2006-02-14 Graham Percival <gpermus@gmail.com>
5822 * Documentation/user/invoking.itely: add warning about command line.
5824 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5826 * lily/include/lily-proto.hh: add Prob, rm Page.
5828 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5830 * VERSION: release 2.7.34
5832 * lily/relocate.cc (framework_relocation): show canary if
5833 GHOSTSCRIPT_VERSION undefined.
5835 * GNUmakefile.in: remove $(VERSION) symlink.
5837 * lily/relocate.cc (setup_paths): add +
5839 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5841 * Documentation/index.html.in: specify sizes for all big HTML pages.
5843 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5845 * config.hh.in: remove @FRAMEWORKDIR@
5847 * lily/system-start-text.cc (get_stencil): new file: separate out
5848 system-start-delimiter text support.
5850 * input/**ly: replace \context with \new where appropriate.
5854 * lily/slur-scoring.cc (get_base_attachments): use
5855 robust_relative_extent. This fixes problems with empty paper-columns.
5857 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5859 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5861 * scm/define-music-properties.scm (all-music-properties):
5862 create-new property.
5864 * lily/context-specced-music-iterator.cc (construct_children):
5865 inspect 'create-new property iso. magical $uniqueContextId context
5868 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5870 * lily/context-key-manager.cc (Module): new file. Encapsulate
5871 object key generation.
5873 * lily/include/context-key-manager.hh (Module): new file.
5875 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5877 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5880 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5882 (reloc_b): excise --enable-framework-dir
5884 * lily/relocate.cc (framework_relocation): use getenv
5885 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5887 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5889 * flower/include/std-string.hh:
5890 * flower/include/std-vector.hh: Finish std:: conversion; move
5891 flower extensions from std:: namespace. Update users.
5893 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5894 their expansion to vector<*>. Update users.
5896 2006-02-10 Graham Percival <gpermus@gmail.com>
5898 * Documentation/user/invoking.itely: add example to File structure.
5900 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5901 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5903 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5905 * ly/paper-defaults.ly: typo.
5907 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5908 set_parent() for parentheses. This will make it show up in bbox
5911 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5912 ly:grob-common* functions.
5914 * lily/grob-scheme.cc (LY_DEFINE):
5915 ly:grob-common-refpoint-of-array: new function
5916 ly:grob-common-refpoint: new function
5917 ly:grob-relative-coordinate: new function
5919 * lily/instrument-name-engraver.cc (process_music): use
5920 Text_interface::is_markup(). This fixes \markup on instrument names.
5922 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5925 * lily/slur.cc (print): idem.
5927 * lily/tie.cc: add line-thickness for ties.
5929 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5931 * scm/output-svg.scm: Document diversion from GNU coding standards
5932 as a workaround for a bug in Microsoft Internet Explorer.
5934 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5936 * lily/instrument-name-engraver.cc (process_music): use
5937 is_markup() iso. is_string()
5939 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5941 * lily/percent-repeat-engraver.cc (process_music): only look at
5942 main_part_ for % repeats.
5944 * lily/stem-tremolo.cc (get_beam_translation): new function.
5945 (calc_slope): new function.
5946 (height): don't use real slope.
5948 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5950 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5951 new connect-to-neighbor, control-points and staff-padding
5952 properties to make ligature brackets showing up again.
5954 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5956 * VERSION: release 2.7.33
5958 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5961 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5962 remove applyOutput example.
5963 (Objects connected to the input): document \tweak, \parenthesize
5965 * lily/relocate.cc (prefix_relocation): allow "current"
5966 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5967 changing VERSION in a lily tree less painful.
5969 * input/regression/parenthesize.ly: new file.
5971 * scm/output-lib.scm (parenthesize-element): new function.
5973 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5975 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5977 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5978 cause: accidentals are caused by note heads, not note events.
5980 2006-02-08 Graham Percival <gpermus@gmail.com>
5982 * darwin.patch: small patch from Erlend, thanks!
5984 * Documentation/user/basic-notation.itely: add stem-neutral example.
5986 * Documentation/user/putting.itely: clarifications.
5988 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5990 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5991 note, add more guidelines to what should go into NEWS.
5993 * input/sakura-sakura.ly: document how to override font.
5995 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5997 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5999 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6001 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
6003 * scripts/convert-ly.py (lilypond_version_re_str): Move from
6004 convertrules. Add explicit grouping, needed for python2.2.
6006 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
6008 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6010 2006-02-07 Graham Percival <gpermus@gmail.com>
6012 * Documentation/user/global.itely: fix line-width in (text) docs.
6014 * Documentation/user/lilypond-book.itely: same.
6016 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6018 * VERSION (PACKAGE_NAME): release 2.7.32
6020 * Documentation/topdocs/NEWS.tely (Top): document new variable
6023 * flower/include/array.icc (Message): remove file.
6025 * flower/include/std-vector.hh: make sure vsize and VPOS are
6026 defined for binary_search_bounds().
6028 * flower/std-string.cc (std): add to_string(long unsigned).
6030 * configure.in (gui_b): excise std_string option.
6031 (gui_b): excise std_vector option.
6033 * flower/string.cc (Module): excise flower array & string
6035 * flower/include/std-string.hh: excise flower string.
6037 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6039 * python/convertrules.py (lilypond_version_re_str): require
6040 only numbers and dots in \version string.
6042 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6044 * lily/system-start-delimiter.cc (print): allow style = text too.
6046 * lily/system-start-delimiter-engraver.cc
6047 (acknowledge_system_start_text): new function, also add add to
6048 support of system-start-text (instrument names). This fixes
6049 instrument names on piano staves.
6051 * lily/instrument-name-engraver.cc: rewrite. Use
6052 system-start-delimiter approach. This save memory and cpu.
6054 * scm/define-grobs.scm (all-grob-descriptions): remove
6055 instrument-name from break-alignment.
6057 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6059 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
6061 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6064 * configure.in (std_vector): On by default.
6066 * lily/include/font-metric.hh:
6067 * lily/include/tfm-reader.hh:
6068 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6071 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6073 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6075 * VERSION (PACKAGE_NAME): 2.7.31
6077 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6078 EPS edge at 0, but take minimum with left-overshoot. This fixes
6079 cut off system start delims.
6081 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6082 hack: add to axis group if not added yet. This fixes hara kiri'd
6085 * lily/hara-kiri-group-spanner.cc
6086 (force_hara_kiri_in_y_parent_callback): fix signatures.
6088 * lily/hairpin.cc (print): check next hairpin to see whether or
6089 not to be continuing.
6091 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6093 * Remove trailing whitespace from makefiles.
6095 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6098 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6100 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6102 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6104 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6106 * configure.in: Use it.
6108 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6110 * scm/music-functions.scm (pitch-of-note): new function.
6112 * ly/music-functions-init.ly: add \octave and \addquote
6114 * lily/parser.yy (music_function_chord_body): softcode \octave.
6115 (lilypond_header): softcode \addquote
6117 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6119 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6120 array.hh, parray.hh at all. Getting ready to flip the
6123 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6125 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6128 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6130 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6132 * flower/include/array.hh: typo.
6134 2006-02-02 Graham Percival <gpermus@gmail.com>
6136 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6138 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6140 * flower/include/pqueue.hh: Derive from std::vector.
6142 * flower/include/parray.hh: Conform to std::vector interface.
6145 2006-02-02 Graham Percival <gpermus@gmail.com>
6147 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6149 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6151 * flower/file-path.cc (is_file): remove if 0 section.
6153 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6154 selecting afii61352.
6156 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6158 * flower/include/std-vector.hh (boundary): Oops, reverse.
6160 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6161 remove superfluous `d'.
6163 * flower/include/std-vector.hh (boundary, top): Detach from class.
6164 Remove empty vector shell.
6166 * flower/include/array.hh (reverse, swap): Detach from class.
6169 * flower/include/std-vector.hh
6170 * flower/include/array.hh (concat): Globally change to insert ().
6172 * flower/include/std-vector.hh
6173 * flower/include/parray.hh
6174 * flower/include/array.hh (elem, elem_ref): Globally replace by
6177 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6179 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6181 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6182 anticipate on identifier substitutions.
6184 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6186 * flower/include/std-vector.hh (insert): Remove, replace by
6187 std::vector interface. Update callers.
6189 * flower/include/array.icc (insert): Change signature to
6190 match std::vector interface.
6192 * flower/include/array.icc (vector_sort): Bugfix.
6194 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6196 * lily/parser.yy (output_def_head_with_mode_switch): new
6197 production. Result: dashes and underscores may be used in the
6200 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6202 * python/convertrules.py (conv): oops. One slash too much.
6204 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6206 * flower/include/std-vector.hh (sort): Remove, replace by
6207 ::vector_sort. Update callers.
6209 * flower/include/std-vector.hh (slice): Remove. Update callers.
6212 * flower/test-std.cc (vector_sort): New test.
6214 2006-02-01 Graham Percival <gpermus@gmail.com>
6216 * Documentation/user/putting.itely: fixes from Erik.
6218 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6220 * flower/test-std.cc: Add simple unit test for vector migration.
6222 * stepmake/stepmake/test*: Unit test support.
6224 * flower/include/std-vector.hh (del): Remove. Use erase (),
6227 * flower/include/array.hh (begin, end): Add.
6230 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6232 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6233 std::string not String.
6235 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6238 * lily/prob.cc (Prob): copy type_ too.
6240 * lily/lily-guile.cc (mangle_cxx_identifier): new
6241 function. Class_bla::foo_bar_[px] ->
6242 ly:class-bla::foo-bar[?!]. Changes throughout
6244 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6246 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6248 * lily/beam.cc (calc_direction): take dir from visible stem in
6251 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6253 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6254 Fix -1, >=0 boundary checks for unsigned vsize.
6256 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6257 loop for unsigned vsize.
6259 * configure.in (--enable-std-vector): New option.
6260 (--enable-std-string): On by default.
6262 * flower/include/std-vector.hh: New file. Enable switch to
6263 std::vector, update client code.
6265 2006-01-30 Graham Percival <gpermus@gmail.com>
6267 * scm/document-translation.scm: clarify "this context is also
6268 known as". Thanks, Werner!
6270 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6272 * Documentation/user/invoking.itely: small fix from Don.
6274 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6276 * scm/lily.scm (define-scheme-options): rename option
6277 preview-include-book-title to book-title-preview
6278 (define-scheme-options): move force-eps-font-include (from paper
6279 block) to eps-font-include -d option.
6281 * VERSION (PATCH_LEVEL): release 2.7.30
6283 * input/bach-schenker.ly (staffPiano): new file.
6285 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6287 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6290 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6292 * ps/lilyponddefs.ps: remove start-system, stop-system,
6293 start-page fluff. This saves putting { } code on the stack, fixing
6294 stack overflows when including EPS files.
6296 2006-01-29 Graham Percival <gpermus@gmail.com>
6298 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6300 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6302 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6304 2006-01-28 Graham Percival <gpermus@gmail.com>
6306 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6308 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6310 * input/mutopia/claop.py: Update.
6312 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6314 * input/regression/completion-heads.ly (texidoc): fix.
6316 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6318 * lily/tie-formatting-problem.cc
6319 (set_ties_config_standard_directions): use abs iso fabs for ints.
6321 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6323 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6324 little less than noteheight, to prevent overlaps in chords.
6326 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6327 head, and fudge stem-attachment.
6329 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6331 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6333 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6335 * lily/main.cc (main): Debugging aid: catch exceptions.
6337 * flower/std-string.cc (to_string): Robustification. Fixes midi
6338 output with std::string.
6340 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6342 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6344 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6346 * Fix -DSTRING_UTILS_INLINED.
6348 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6350 * VERSION (PATCH_LEVEL): release 2.7.29
6352 * lily/relocate.cc (setup_paths): mingw uses std string too.
6354 * lily/*.cc: various fixes for substr(ARG).
6356 * lily/sustain-pedal.cc (print):
6358 * flower/file-name.cc (slashify): use std strings.
6360 * flower/string-convert.cc: remove publib.h
6362 * scm/define-markup-commands.scm (verbatim-file): new markup
6363 command \verbatim-file
6365 * Documentation/topdocs/NEWS.tely: fixup URLs
6367 * input/regression/alignment-vertical-manual-setting.ly (Module):
6370 * lily/align-interface.cc (align_elements_to_extents): overwrite
6371 translations with numbers in alignment-offsets from left bound
6373 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6374 (page-translate-systems): new function: take into account Y-offset.
6376 * Documentation/topdocs/NEWS.tely (Top): document new features.
6378 * input/regression/page-layout-manual-position.ly (Module): new
6381 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6383 * flower/file-path.cc (path::parse_path): Oops.
6385 * Finish std::string interface. For now, use std:: marker
6386 throughout for easy s/r.
6388 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6390 * Documentation/user/putting.itely (Score is a single musical
6392 (Score is a single musical expression): more typos.
6394 * scm/page.scm (annotate-space-left): thinko.
6395 (annotate-page): more thinkos.
6397 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6399 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6400 for different \score blocks separately.
6401 (post-process-pages): put write-page-layout into paper block.
6403 * lily/output-def.cc (get_parser): new file.
6405 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6408 * lily/include/output-def.hh (class Output_def): add parser_ member.
6410 * input/regression/page-layout-twopass.ly (Module): new file.
6412 * scm/lily.scm: remove cpp hack.
6414 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6416 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6418 * GNUmakefile.in (c-clean): New target.
6420 * flower/include/std-string.hh: String/std::string compatibility:
6421 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6424 * flower/rational.cc:
6425 * flower/include/rational.hh:
6428 * flower/include/offset.hh:
6430 * flower/interval.cc:
6431 * flower/include/interval.hh:
6433 * flower/string-convert.cc:
6434 * flower/include/string-convert.hh: Use std::string [interface].
6437 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6439 * Documentation/index.html.in: clean up.
6441 2006-01-25 Graham Percival <gpermus@gmail.com>
6443 * Documentation/user/putting.itely: another new untested doc section.
6445 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6447 * scm/layout-page-layout.scm (write-page-breaks): write
6448 \spacingTweaks #ALIST. Handle grace timing.
6450 * scm/: more imports.
6452 * scm/page.scm (make-page): add footer/header.
6453 (annotate-space-left): revise: only take page argument.
6454 (layout->page-init): new function.
6456 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6457 version of the system/spacing/linebreak hack writing to the output
6459 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6462 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6465 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6467 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6469 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6471 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6472 handling to page.scm
6474 * lily/prob-scheme.cc (LY_DEFINE): new file.
6475 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6477 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6480 * lily/music.cc (derived_mark): derive Music from Prob.
6482 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6484 * lily/prob.cc (Module): Implement Prob (Property Object), object
6485 with shared and r/w property alists.
6487 * lily/include/prob.hh (Module): new file. Declare Prob.
6489 * flower/string.cc: remove is_empty().
6491 * flower/include/string.hh (class String): remove String:: qualifier.
6493 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6494 substitute appropriate functions.
6496 * flower/include/string.hh (class String): remove to_str0 and
6497 is_empty(). S&R everywhere.
6499 2006-01-23 Graham Percival <gpermus@gmail.com>
6501 * Documentation/user/basic-notation.itely: add hairpin
6502 after-linebreak tweak to commonprop.
6504 * Documentation/user/putting.itely: added two new sections.
6506 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6508 * flower/international.cc:
6509 * flower/include/international.hh:
6511 * flower/getopt-long.cc:
6512 * flower/include/getopt-long.hh: Use std::string [interface].
6515 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6517 * stepmake/stepmake/executable-rules.make: Add dependency on
6520 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6522 * flower/file-path.cc:
6523 * flower/include/file-path.hh: Use std::string [interface].
6526 * flower/direction.cc:
6527 * flower/axis.cc: Unused. Remove.
6529 * configure.in (--enable-std-string): New option.
6531 * flower/std-string.cc:
6532 * flower/include/std-string.hh: New file.
6534 * flower/file-name.cc[STD_STRING]:
6535 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6537 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6539 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6541 * scm/define-markup-commands.scm (with-dimensions):
6542 with-dimensions markup command.
6544 * input/test/font-table.ly: use it.
6546 * lily/open-type-font.cc (glyph_list): new function.
6548 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6550 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6552 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6554 * ly/music-functions-init.ly (parallelMusic): new music function
6555 for parallel music entry.
6557 * scm/define-music-properties.scm (all-music-properties): new
6558 'void music property
6560 * scm/music-functions.scm (ly:music-message): make public, to be
6561 used in music function definitions
6563 * scm/lily-library.scm (collect-music-for-book): discard music
6564 when the 'void property is set.
6566 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6568 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6570 * mf/GNUmakefile: idem.
6572 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6574 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6576 * Documentation/user/notation-appendices.itely (The Feta font):
6579 * input/test/font-table.ly: new file. Generate font table within lily.
6581 * Documentation/user/notation-appendices.itely (The Feta font):
6582 use new font-table.ly file.
6584 * stepmake/stepmake/install-out-targets.make
6585 (local-install-outfiles): only create directory if
6586 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6588 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6590 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6592 * VERSION (PACKAGE_NAME): release 2.7.28
6594 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6595 the right font from a Mac dfont.
6596 (write-preamble): don't forget directory, only look at files.
6598 This fixes problems with TTF files in dfonts that don't match
6599 their PostScript names.
6601 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6602 PS name from TTF font.
6604 * input/regression/tie-manual.ly: document new feature.
6606 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6608 * VERSION (MY_PATCH_LEVEL): bump to .28
6610 * Documentation/user/basic-notation.itely (Ties): add tie examples
6613 * lily/tie-formatting-problem.cc (score_ties_configuration):
6614 symmetry penalties for outer ties.
6616 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6618 * lily/tie-formatting-problem.cc (generate_configuration)
6619 (set_manual_tie_configuration): skip non-pair manual
6620 tie-configuration, so you can set individual ties as
6622 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6624 * input/regression/tie-chord.ly: use generateTiePattern to
6627 * lily/tie-formatting-problem.cc (peak_around): new function.
6628 (score_configuration): use sliding criterion for staff line collisions.
6629 (score_configuration): idem for dot collisions.
6630 (generate_configuration): use separate stem_gap for gap to stem.
6632 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6633 separate penalty factors for x and y distance.
6634 (struct Tie_details): separate penalties for tip and center line collisions.
6636 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6638 * lily/tie-formatting-problem.cc (generate_configuration): make
6639 large ties avoid stafflines in the horizontal section.
6640 (score_configuration): use softcoded penalties
6641 (score_aptitude): idem.
6643 * lily/tie-helper.cc (from_grob): softcode tie details
6645 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6647 * lily/staff-symbol-referencer.cc (on_line): rename from
6650 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6652 * ly/music-functions-init.ly: remove duplicate tag.
6654 * lily/include/*.hh: GCC 4.1 fixes.
6656 006-01-16 Erlend Aasland <erlenda@gmail.com>
6658 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6660 * scm/define-music-types.scm: fix bug in desc. string
6661 for OverrideProperty
6663 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6665 * scripts/lilypond-book.py: bugfix
6667 * scm/define-music-types.scm: fix typos.
6669 2006-01-14 Graham Percival <gpermus@gmail.com>
6671 * Documentation/user/ basic-notation.itely, global.itely,
6672 advanced-notation.itely, instrument-notation.itely: small
6673 additions (bugs and commonly tweaked properties).
6675 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6677 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6678 detection of mingw build.
6679 (MINGW_BUILD): opps.
6681 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6683 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6686 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6688 * scm/music-functions.scm (skip->rest): add skip->rest
6690 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6692 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6695 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6696 config dirs. Aids debugging.
6697 (display_config): also display config files.
6699 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6701 * VERSION: release 2.7.27
6703 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6704 for determining bar size.
6706 * lily/staff-symbol.cc (print): place lines at distance line-positions
6708 * scm/define-grob-properties.scm (all-user-grob-properties): add
6711 * lily/staff-symbol.cc (height): new function.
6713 * input/regression/staff-line-positions.ly: new file.
6715 2006-01-06 Graham Percival <gpermus@gmail.com>
6717 * input/test/add-staccato.ly: remove reference to old file.
6719 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6721 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6722 lilypond binary too.
6724 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6726 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6728 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6730 * scripts/midi2ly.py: Bugfix: Declare datadir.
6732 * make/ly-rules.make:
6733 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6734 that seems to be gone). Fixes make web.
6736 * The grand 2005-2006 replace.
6738 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6740 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6742 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6743 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6744 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6745 like -dgs-font-load.
6747 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6748 remove absolute path to lilypond binary.
6750 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6752 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6754 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6756 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6758 * mf/GNUmakefile: remove broken dvips map symlink.
6760 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6763 * configure.in: Cosmetic fixes.
6765 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6767 * Documentation/user/music-glossary.tely (Pitch names): Added
6768 Spanish pitch names and durations, thanks to Ernesto Gancedo
6770 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6772 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6773 init. Fixes verbose printing of .scm files.
6775 * stepmake/aclocal.m4: add spaces before - options.
6777 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6779 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6780 of path search in local block variable.
6782 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6784 * configure.in (NCSB_DIR): --enable-ncsb-dir
6785 (LINK_GXX_STATICALLY): denko.
6787 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6789 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6790 use locate to find c059033l.pfb.
6792 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6794 * lily/tie-formatting-problem.cc
6795 (problem::generate_base_chord_configuration): Use my_round (was
6798 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6799 do not invoke mbrtowc.
6801 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6803 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6805 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6807 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6809 * Documentation/user/invoking.itely (svg): revise.
6811 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6813 * lily/lexer.ll: use sourcefilename iso. renameinput.
6815 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6817 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6818 <PostScriptName>.ttf instead of c059XXXttf.
6820 * lily/program-option.cc (LY_DEFINE): special support for
6821 --verbose, so it works before option init too.
6823 * mf/GNUmakefile (local-install): oops.
6825 * lily/lyric-hyphen.cc (print): oops.
6827 * buildscripts/pfx2ttf.fontforge: new file.
6829 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6830 ($(outdir)/%.ttf): new rule.
6832 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6835 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6838 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6840 * VERSION: release 2.7.26
6842 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6844 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6846 * lily/font-config.cc (init_fontconfig): verbosity.
6848 * THANKS: add Muziekacademie Lede.
6850 * scripts/musicxml2ly.py (print_voice_definitions): new function
6851 (print_score_setup): new function
6852 (convert): read part definition to output staves properly.
6854 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6857 * python/musicexp.py (Output_printer.__init__): use _ in data
6859 (Output_printer.unformatted_output): new function: no formatting,
6861 (Duration.get_length): remove isinstance() checks for
6862 Output_printer everywhere.
6864 * input/regression/lyrics-bar.ly (texidoc): add
6865 Separating_line_group_engraver.
6867 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6869 * lily/relocate.cc (framework_relocation): New function,
6870 factored from set_relocation ().
6871 (prefix_relocation): Rename from set_relocation ().
6872 (setup_paths): Use it.
6874 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6876 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6877 numbers. Patch by Erlend Aasland.
6879 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6881 * lily/font-config.cc (init_fontconfig): print warning if cache
6882 file is not existant.
6884 * lily/main.cc: don't use #ifdef but #if
6886 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6888 * lily/grob-property.cc (internal_set_property): don't abort on
6889 calculation-in-progress.
6891 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6893 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6894 connect-to-neighbor property not connect-to-other
6896 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6897 (LY_DEFINE): oops. don't forget protection.
6899 * flower/parse-afm.cc (Module): strip AFM handling completely.
6901 * lily/stencil-expression.cc: idem.
6903 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6905 * lily/function-documentation.cc (ly_add_function_documentation):
6906 use static member iso. Protected_scm
6908 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6910 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6912 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6914 * lily/relocate.cc (set_env_dir): New function.
6915 (set_relocation): Use it to fix setting PANGO_PREFIX.
6917 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6919 * input/regression/stem-direction-context.ly: remove rest.
6921 * lily/melody-engraver.cc (process_music): restart for bar lines.
6922 (acknowledge_slur): restart for slurs.
6924 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6926 * Documentation/user/invoking.itely: describe how to view SVG
6927 output using Inkscape which replace embedded fonts with OTF fonts.
6929 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6931 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6933 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6935 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6938 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6940 * VERSION (PACKAGE_NAME): release 2.7.25
6942 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6944 * input/regression/stem-direction-context.ly: new file.
6946 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6948 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6951 * ly/engraver-init.ly: add Melody_engraver
6953 * lily/beam.cc (calc_direction): use default-direction
6954 iso. get_default_direction()
6956 * scm/define-grob-properties.scm (all-user-grob-properties): add
6957 default-direction property.
6959 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6961 * lily/stem.cc (calc_default_direction): remove
6962 Stem::get_default_direction, use default-direction with callback
6965 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6967 * lily/melody-engraver.cc: new file. Acknowledge stems for
6968 interpolated stem directions.
6970 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6972 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6974 * lily/slur-configuration.cc (fit_factor): more robust check for
6975 point in curve X-extent.
6977 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6978 (outside_slur_callback): check for 'outside avoidance.
6980 * lily/slur-configuration.cc (score_extra_encompass): don't use
6981 bound->column() == avoid->column() for checking extents, as this
6982 doesn't work for accidentals.
6984 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6985 DynamicText hardcoding.
6987 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6988 crash if bound stem is NULL
6990 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6993 2005-12-22 Graham Percival <gpermus@gmail.com>
6995 * scm/define-markup-commands.scm: typo. @code{\raise}
6998 * darwin.patch: now used again, includes a
6999 required patch from fink.
7001 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
7003 * po/TODO: mention gtranslator along with kbabel.
7004 * po/fi.po: update translations.
7006 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7008 * lily/relocate.cc (setup_paths): Bugfix.
7010 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7012 * lily/slur-configuration.cc (score_extra_encompass): don't use
7013 "avoid" choice for avoid-slur.
7015 * stepmake/bin/install.py (dest): don't create existing dir.
7017 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7019 * stepmake/bin/install.py: Remove file before copying.
7022 * stepmake/aclocal.m4: Do not substitute INSTALL.
7024 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7026 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7027 depend on link-tree.
7029 * lily/relocate.cc (setup_paths): only check path for non-absolute
7030 dir without directory part.
7032 * flower/file-name.cc (is_absolute): new method.
7033 (is_absolute): check root_ too.
7035 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
7037 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7038 relocation code. Oops, don't comment out too much.
7040 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7043 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
7046 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
7048 * .cvsignore: Add install-sh.
7050 * autogen.sh (srcdir): Typo.
7052 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
7054 * autogen.sh (srcdir): urg. Touch install-sh.
7056 * stepmake/bin/install-sh (Module): remove.
7058 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7060 * lily/include/relocate.hh: new file.
7062 * lily/relocate.cc: new file. Contain relocation logic.
7064 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7065 (main): read LILYPOND_VERBOSE as the first thing.
7067 * stepmake/aclocal.m4: remove INSTALL variable.
7069 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7070 separate target for making font symlinks.
7071 (documentation-dir): use $(if $(findstring )) for switching off
7074 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7075 something if DOCUMENTATION is no.
7077 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7079 * VERSION: release 2.7.24
7081 * lily/script-column-engraver.cc (stop_translation_timestep):
7082 delay adding to script-column.
7084 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7086 * python/convertrules.py (conv): rule for number-visibility
7088 * lily/slur-configuration.cc (score_extra_encompass): different
7089 distance measure for avoid and inside avoidance.
7090 (score_extra_encompass): use 1/(distance+eps) as penalty.
7092 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7093 encompass objects for generating slur curves.
7095 * lily/slur.cc: use details iso. slur-details property.
7097 * input/regression/slur-tuplet.ly: new file.
7099 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7101 * flower/include/offset.hh (class Offset): new operator /=
7103 * lily/tuplet-number.cc (print): new file, new interface.
7105 * scm/define-grob-properties.scm (all-user-grob-properties):
7106 remove number-visibility property.
7108 * lily/tuplet-bracket.cc (calc_control_points): new function
7109 (calc_connect_to_neighbors): new function.
7110 (print): remove text handling for tuplet numberdef.
7112 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7115 * lily/lily-guile.cc (robust_scm2booldrul): new function
7117 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7119 * lily/tuplet-bracket.cc (calc_position_and_height): use
7120 staff-padding to control whether tuplet brackets are over staves.
7122 * lily/grob.cc (suicide): clear dim_caches_.
7124 * lily/dimension-cache.cc (clear): new function.
7126 * lily/grob.cc (extent): swap order of min-extent and extent
7127 calculations. This fixes hara kiri staves.
7129 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7131 * lily/main.cc: Nitpick: relocation is not based on path, but on
7132 directory (location).
7134 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7136 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7138 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7140 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7142 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7144 * stepmake/stepmake/generic-vars.make (Module): idem.
7146 * stepmake/stepmake/executable-targets.make (default): use it.
7148 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7150 * make/GNUmakefile: don't install make rules.
7152 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7154 (prepend_env_path): more verbosity.
7156 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7158 * GNUmakefile.in: add dir argument for find command.
7160 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7161 fixes weird line numbers for point & click.
7163 * lily/source-file.cc (get_counts): init line/column/char counts.
7165 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7167 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7169 2005-12-16 Graham Percival <gpermus@gmail.com>
7171 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7172 minor fixes from Fredric. Thanks!
7174 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7176 * ly/music-functions-init.ly: add \bar and \clef music function
7178 * lily/lily-lexer.cc: idem.
7180 * lily/parser.yy (FIXME): remove BAR and CLEF.
7182 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7184 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7186 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7187 function arguments too
7189 * lily/main.cc (set_relocation): new function.
7191 * scripts/musicxml2ly.py (convert): add \version
7193 * lily/tie.cc: remove get_default_attachments()
7195 * VERSION (PACKAGE_NAME): release 2.7.23
7197 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7198 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7200 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7202 * lily/tie-formatting-problem.cc (score_ties): new function
7203 (get_variations): new function. Try flipping dirs for collisions.
7204 (generate_optimal_chord_configuration): new function. 1-opt search
7205 for better configuration.
7207 * lily/tie-configuration.cc: new file.
7209 * lily/tie.cc: junk Tie::get_configuration()
7211 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7212 (score_ties_configuration): new function.
7213 (generate_ties_configuration): new function.
7214 (generate_base_chord_configuration): new function.
7215 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7216 (set_manual_tie_configuration): Move body from tie-column-format.cc
7218 * input/regression/tie-dot.ly: new file.
7220 * lily/tie-formatting-problem.cc (score_configuration): score
7223 * lily/tie-helper.cc (get_transformed_bezier): new function
7225 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7227 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7228 -undefined suppress iso. -framework Python
7230 * scm/define-grobs.scm (all-grob-descriptions): set
7231 springs-and-rods (thanks Joe Neeman!)
7233 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7235 * input/no-notation/display-lily-tests.ly (test):
7236 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7237 changed from \tag #'(a b) to \tag #'a \tag #'b
7239 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7241 * Documentation/topdocs/NEWS.tely: strip out-www.
7243 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7245 * config.make.in (AR): add AR and RANLIB
7247 * flower/libc-extension.cc: include cassert
7249 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7252 2005-12-11 Graham Percival <gpermus@gmail.com>
7254 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7256 * stepmake/stepmake/python-modules-vars.make: define
7257 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7259 * THANKS: added Johannes Schindelin.
7261 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7263 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7265 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7266 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7268 * lily/parser.yy: reorganize file layout.
7270 * ly/music-functions-init.ly: add tweak music function.
7272 * lily/grob-info.cc (ultimate_music_cause): new function:
7273 recursively lookup causes.
7275 * lily/parser.yy (chord_body_element): allow music functions for
7276 post-events, allow music functions for chord elements.
7278 * lily/font-config-scheme.cc (display_fontset): add cast.
7280 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7281 #'(a b) -> \tag #'a \tag #'b rule.
7283 * python/musicexp.py (Output_printer.dump_version): new function
7285 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7287 * lily/parser.yy (FIXME): remove \tag
7288 (FIXME): remove tag_music() function.
7290 * lily/lily-lexer.cc: remove \tag
7292 * ly/music-functions-init.ly: define music-function "tag"
7294 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7296 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7298 * VERSION (PATCH_LEVEL): release 2.7.22
7300 * input/regression/lyric-hyphen-retain.ly: renew.
7302 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7305 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7306 iso. minimum-length property for rods.
7308 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7309 LyricSpace item to keep lyrics spaced apart.
7311 * ly/engraver-init.ly: remove Separating_line_group_engraver
7313 * Documentation/user/music-glossary.tely: do setfilename before
7316 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7318 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7319 See xref documentation, for example.
7321 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7323 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7324 pending_skip iso. ly_voice[-1]
7325 (main): add if __main__ for debugging.
7327 * python/musicxml.py (Accidental.__init__): new class.
7329 * scripts/musicxml2ly.py (progress): new function
7330 (musicxml_key_to_lily): don't barf on modeless keys.
7331 (create_skip_music): new function.
7332 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7333 (musicxml_note_to_lily_main_event): new function.
7335 * python/musicexp.py (Music.__init__): add comment field.
7336 (NestedMusic.append): new routine.
7337 (SequentialMusic.print_ly): print comment.
7338 (ArpeggioEvent.ly_expression): new class
7339 (BeamEvent.ly_expression): new class
7340 (NoteEvent.__init__): support for cautionary/forced accs.
7342 * lily/lookup.cc (slur): normal order for array loop.
7344 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7347 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7350 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7352 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7354 * scripts/lilypond-book.py: Introduce option
7355 --preserve-line-breaks, for usage with srcltx
7357 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7359 * scm/output-lib.scm (print-circled-text-callback): draw circle
7360 around text using make-circle-markup.
7362 * Documentation/user/*: strip out-www from file names.
7364 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7366 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7367 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7369 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7371 * Documentation/user/GNUmakefile: idem.
7373 * Documentation/user/macros.itexi: strip out-www
7375 * python/rational.py: python 2.3 compat.
7377 * VERSION (PATCH_LEVEL): release 2.7.21
7379 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7380 option formatting, lilypond style.
7382 * python/musicexp.py: grab from Ikebana: a library for composing
7383 ly music expressions.
7384 (Output_printer): class for advanced .ly printing.
7387 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7388 convert to pythonesque structure.
7390 * python/rational.py: PD rational number class.
7392 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7394 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7396 * lily/part-combine-iterator.cc: Minor bugfix
7398 * THANKS: Update bughunters
7400 2005-12-02 Werner Lemberg <wl@gnu.org>
7402 * mf/README: Document process for proper mf2pt1 conversion.
7404 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7407 * mf/feta-harmonica.mf: Removed. Unused.
7409 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7411 * scripts/lilypond-book.py (do_file): fix thinkos.
7413 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7415 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7416 ($(outdir)/parser.cc):
7417 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7419 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7421 * ly/titling-init.ly (tagline): it should be a space between
7422 "Music engraving by LilyPond" and the version number.
7424 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7426 * VERSION (PACKAGE_NAME): release 2.7.20
7428 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7430 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7432 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7434 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7436 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7438 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7440 * kpath-guile/: remove directory
7442 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7443 file. Encapsulate kpathsea using commandline tools.
7445 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7448 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7450 * Documentation/user/advanced-notation.itely (Setting automatic
7451 beam behavior): Correct a few typos. Thanks to David Bobroff.
7453 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7454 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7456 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7458 * scripts/*.py: gmane address for bugs.
7460 2005-11-28 Pal Benko <benkop@freestart.hu>
7462 * make/ly-rules.make: add -f switch to mv
7464 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7466 * lily/bar-line.cc: interpret it
7468 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7470 * configure.in (--disable-documentation): New switch.
7472 * GNUmakefile.in: Use it.
7474 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7476 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7478 * scripts/lilypond-book.py (do_file): search chunks for
7481 * GNUmakefile.in: add copy step in between so we can lose the
7482 out-www directories.
7484 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7486 * lily/pango-font.cc (pango_item_string_stencil): put
7487 geometry.width into glyph-string too.
7489 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7491 * scm/define-music-display-methods.scm (RevertProperty):
7492 (OverrideProperty): Use grob-property-path property, a list of
7493 symbols, instead of grob-property, which used to be a single
7495 (BassFigureEvent): a figure can be a plain number, not necessarily a
7498 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7500 * VERSION: release 2.7.19
7502 * lily/figured-bass-engraver.cc (process_music): check
7503 figuredBassCenterContinuations first.
7505 * scm/translation-functions.scm (format-bass-figure): make double
7508 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7511 * lily/system-start-delimiter-engraver.cc: move from
7512 Nested_system_start_delimiter_engraver, rename
7513 Nested_system_start_delimiter_engraver ->
7514 System_start_delimiter_engraver.
7516 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7517 bracket type from hierarchy.
7519 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7521 * lily/rest.cc (y_offset_callback): read staff-position.
7523 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7524 mark after-line-breaking-callback as internal.
7526 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7528 2005-11-25 Werner Lemberg <wl@gnu.org>
7530 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7532 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7534 * stepmake/bin/add-html-footer.py (do_file): add google
7536 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7537 staff if first_start_ is true.
7539 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7541 * scripts/midi2ly.py (split_track): add __repr__ members.
7542 (track_first_item): only return Item if not None. This fixes a
7543 problem when dumping a track that starts with an empty channel.
7545 * python/midi.c: doc module.
7547 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7549 * Documentation/user/global.itely (Creating MIDI files): Fix
7550 compilation problem.
7552 2005-11-22 Graham Percival <gpermus@gmail.com>
7554 * Documentation/user/basic-notation.itely: clarify dynamic
7557 * Documentation/user/advanced-notation.itely: add unicode
7558 escape control example, whatever that is. :)
7560 * Documentation/user/global.itely: added "removing dynamics
7563 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7565 * VERSION (PATCH_LEVEL): release 2.7.18
7567 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7568 System_start_delimiter_engraver by
7569 Nested_system_start_delimiter_engraver.
7571 * lily/nested-system-start-delimiter-engraver.cc (struct
7572 Bracket_nesting_node): new class.
7573 (struct Bracket_nesting_group): new class
7574 (struct Bracket_nesting_staff): new class.
7575 (process_music): create hierarchy of grobs. This allows separate
7576 tuning of different SSDs.
7578 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7579 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7581 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7583 * lily/side-position-interface.cc (aligned_side): multiply
7586 * lily/script-engraver.cc (make_script_from_event): allow setting
7589 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7591 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7593 * scm/define-grobs.scm (all-grob-descriptions): new grob
7594 NestedSystemStartDelimiter.
7596 * input/regression/system-start-heavy-bar.ly: new file.
7598 * lily/nested-system-start-delimiter-engraver.cc: new file.
7600 * lily/nested-system-start-delimiter.cc: new file.
7602 * input/regression/system-start-nesting.ly: new file.
7604 * scm/define-grobs.scm (all-grob-descriptions): use X side
7605 positioning for positioning braces for nested contexts.
7607 * lily/system-start-delimiter.cc (print): don't divide extent by
7609 (print): use style iso. glyph.
7610 (staff_bracket): translate glyph inside routine already.
7612 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7614 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7617 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7619 * scm/define-context-properties.scm
7620 (all-user-translation-properties): rename figuredBassFormatter
7621 from newFiguredBassFormatter.
7623 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7625 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7627 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7629 * lily/beam.cc (calc_beaming): new function.
7630 (calc_shorten): new function.
7632 * THANKS: add Edward Neeman.
7634 * input/regression/accidental-clef-change.ly: new file.
7636 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7638 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7640 * lily/clef-engraver.cc (inspect_clef_properties): reset
7641 localKeySignature for clef changes.
7643 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7645 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7646 add dummy definition that works in Linux and add information in
7647 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7649 * Documentation/user/changing-defaults.itely (Modifying context
7650 plug-ins): Add index for \with.
7652 * Documentation/user/music-glossary.tely (dal segno): Updated
7653 example to version >=2.6.
7655 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7657 * Documentation/user/instrument-notation.itely (Printing chord
7658 names): Reorder \chordmode and \repeat in one example.
7660 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7662 * VERSION: release 2.7.17
7664 * Documentation/topdocs/NEWS.tely (Top): add note about
7667 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7668 new function. Search region of 3 positions for best tie.
7669 (score_configuration): new function.
7670 (score_aptitude): new function.
7671 (generate_configuration): new function.
7672 (get_configuration): new function.
7673 (Tie_formatting_problem): new function
7675 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7677 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7679 * THANKS: add Eduardo Vieira & Ralph Little
7681 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7684 * lily/include/tie-formatting-problem.hh (class
7685 Tie_formatting_problem): add Tie_details to
7686 Tie_formatting_problem. Update calling conventions.
7688 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7691 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7693 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7695 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7696 scm/define-context-properties.scm: Maintenance bugfix: make
7697 ligature brackets work again by removing obsolete ligature
7698 primitive callback push/pop.
7700 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7701 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7704 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7706 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7707 used and do not call it a path.
7708 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7710 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7712 * lily/include/tie-formatting-problem.hh (class
7713 Tie_formatting_problem): new file.
7715 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7717 * Documentation/misc/ChangeLog-2.3: new file.
7719 * lily/audio-staff.cc (output): degarianize.
7721 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7723 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7724 Unset PYTHONOPTIMIZE. Fixes install if set.
7726 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7728 * python/convertrules.py (conv): add warning about drums.
7730 * make/stepmake.make: include toplevel-version.make after config.make.
7732 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7733 also allow python2.4
7735 * config.make.in (configure-srcdir): remove GXX GCC vars.
7737 * stepmake/aclocal.m4: don't do non-srcdir build with
7738 symlinks. Use inclusion, so the src directory name can be changed.
7740 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7742 * make/mutopia-vars.make:
7743 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7746 2005-11-13 Werner Lemberg <wl@gnu.org>
7748 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7749 but the affected path. This ensures that the (overlapping) outlines
7750 have the same direction, which is a necessary prerequisite for
7751 FontForge's algorithm to remove overlaps.
7754 * mf/feta-haak.mf: Formatting.
7755 (draw_bracket): Slightly modify outline to avoid an unnecessary
7757 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7758 them from the affected paths.
7760 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7762 * mf/README: remove xpm / accordion notes.
7764 * lily/tie-column-format.cc (set_chord_outline): add dots into
7765 skyline extents. This fixes tie formatting if the left head has dots.
7767 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7768 space inside the staff.
7769 (get_configuration): shift another position if necessary in case
7772 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7774 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7775 buildscript-dir iso. $(depth)/buildscripts.
7777 * tex/GNUmakefile (local-uninstall): remove
7778 music-drawing-routines.ps juggling.
7780 * stepmake/stepmake/install-targets.make (local-install-files):
7781 prepend src-dir to install targets.
7783 * lily/system-start-delimiter-engraver.cc
7784 (acknowledge_system_start_delimiter): use
7785 add_offset_callback(). This fixes translation of nested
7788 * lily/grob-closure.cc (add_offset_callback): only encaps in
7789 simple_closure if it's a procedure.
7791 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7794 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7795 remove-empty where pertinent.
7797 2005-11-12 Graham Percival <gpermus@gmail.com>
7799 * Documentation/user/instrument-notation.itely: added
7800 Cameron Horsburgh's multiple stanzas docs. Thanks!
7802 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7805 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7806 make picture in builddir, not srcdir.
7808 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7810 * VERSION: release 2.7.16
7812 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7815 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7817 * Documentation/user/examples.itely (Piano templates): Minor
7818 modification to the Piano centered lyrics example.
7820 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7822 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7825 * Documentation/user/point-and-click.itely: simplify p&c
7826 instruction: don't configure firefox. Put lilypond-invoke-editor
7827 in front of the browser.
7829 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7830 (run-browser): new function.
7832 * lily/parser.yy (Lily_lexer): recognize Book
7834 * lily/book.cc (clone): new function
7836 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7838 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7840 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7841 Maintenance bugfix: reduce number of font related warnings by
7842 updating naming conventions for glyph-name.
7844 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7846 * scm/define-grobs.scm (all-grob-descriptions): add
7847 rhythmic-grob-interface to TabNoteHead.
7849 * scm/layout-beam.scm (check-quant-callbacks): remove
7852 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7854 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7855 alignment of centered divisiones.
7857 * scm/scripts.scm (articulations): Maintenance bugfix:
7858 follow-into-staff -> quantize-position.
7860 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7861 plica head in porrectus deminutus.
7863 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7865 * make/lilypond.fedora.spec.in (Group): add %clean section.
7867 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7868 less then 1/5th of total length.
7869 (print): use gap too. Fixes tupletUp-single-bracket.ly
7871 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7872 events into EventChord. This fixes textspanners on mm rests. Fixes
7875 * lily/side-position-interface.cc (get_axis): read side-axis
7876 (set_axis): set side-axis.
7878 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7879 properties everywhere.
7881 * lily/spacing-spanner.cc (breakable_column_spacing): add
7882 average-spacing-wishes. Take maximum if not set.
7883 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7885 * scm/define-grobs.scm (all-grob-descriptions): add
7886 average-spacing-wishes.
7888 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7889 offset callbacks. This fixes alignment for Fingering objects.
7891 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7892 space for key - timesig combination.
7894 * input/regression/script-stem-tremolo.ly (Module): new file.
7896 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7899 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7900 Fixes: c-tremolo-script.ly.
7902 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7904 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7906 * scm/define-grobs.scm (all-grob-descriptions): remove
7907 self-X-offset. Fixes alignment of octavate-8.
7909 * scripts/lilypond-book.py (datadir): look in
7910 LILYPONDPREFIX/share/lilypond/current/
7912 * GNUmakefile.in: symlink current to <VERSION>.
7914 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7916 * lily/main.cc: eps listed as a backend.
7918 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7920 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7922 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7924 * lily/include/score.hh (class Score): remove texts_ member.
7926 * lily/beam.cc (set_stem_lengths): force direction callback.
7927 (print): read quantized-positions, so we can force
7928 Beam::set_stem_lengths to occur.
7929 (rest_collision_callback): use common X parent.
7931 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7933 * flower/file-path.cc (find): Bugfix: Return name of file found.
7935 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7936 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7937 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7939 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7941 * flower/offset.cc: idem.
7943 * mf/*.mf: update email address.
7945 * lily/font-config-scheme.cc: new file.
7947 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7949 * lily/*: cs.uu.nl -> xs4all.nl
7951 * VERSION (PATCH_LEVEL): release 2.7.15
7953 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7956 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7958 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7960 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7962 * lily/staff-performer.cc (process_music): add audio
7963 elements. This makes MIDI instrument changes work once again.
7965 * lily/main.cc (LY_DEFINE): add gmane address.
7967 * lily/beam.cc: remove calc_positions()
7969 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7970 original_ in private scope.
7971 (class Grob): drop pscore_ pointer, change to output_def pointer.
7972 (class Grob): cleanup class definition.
7974 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7976 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7978 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7979 absolute. Better diagnostics.
7981 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7982 This makes lilypond run from the build directory using argv0
7983 relocation (without any --prefix or LILYPONDPREFIX setting).
7985 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7987 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7989 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7990 with simple-closure.
7992 * lily/self-aligment-interface.cc (set_align_self): new function
7993 (set_center_parent): new function.
7995 * lily/side-position-interface.cc (set_axis): new function.
7997 * lily/new-fingering-engraver.cc (position_scripts): use drul for
8000 * scm/define-grob-properties.scm (all-user-grob-properties):
8001 remove [XY]-offset-callbacks add [YX]-offset
8003 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
8005 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8006 entry for time signatures after breathing signs. Bug report by
8009 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
8011 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8012 not absolute, make it absolute using PATH.
8014 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
8016 * python/midi.c (initmidi): Fix type for mingw.
8018 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
8020 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8022 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8025 * stepmake/aclocal.m4: Support python cross compiling.
8027 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8030 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8032 * scm/output-lib.scm (chain-grob-member-functions): replace
8035 * lily/chained-callback.cc (Module): remove file.
8037 * lily/rest-collision.cc (force_shift_callback_rest): change to
8040 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
8042 * lily/grob.cc (y_parent_positioning): remove axis argument from
8043 parent_positioning callbacks.
8044 (Grob): junk init code
8045 (get_offset): use generic property callbacks for
8046 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8047 (axis_parent_positioning): new function
8048 (axis_offset_symbol): new function
8049 (chain_offset_callback): new function
8050 (add_offset_callback): new function
8052 * lily/beam.cc (rest_collision_callback): change signature; this
8053 is now a chained callback.
8055 * lily/include/dimension-cache.hh (class Dimension_cache): remove
8056 callback administration.
8058 * lily/simple-closure.cc: new file. Smob type that allows "grob
8061 (ly:make-simple-closure FUNC A B)
8063 is evaluated as (FUNC grob A B). This allows chaining of callbacks
8066 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8069 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8071 * lily/rest.cc (polyphonic_offset_callback): remove.
8073 * lily/script-engraver.cc (try_music): remove bool* argument.
8075 * scm/script.scm (default-script-alist): set quantize-position
8078 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8080 * lily/side-position-interface.cc (aligned_side): move staff
8081 position quantization from
8082 Side_position_interface::quantised_position().
8083 (quantised_position): remove
8085 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8087 * input/regression/beam-quant-standard.ly: reindent, set
8088 debug-beam-quanting to #t.
8090 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8091 10000 if this is a "hard" concave beam.
8093 * lily/beam.cc (calc_least_squares_positions): change from
8094 calc_least_squares_dy
8095 (set_stem_lengths): this is now a chained callback.
8097 * lily/context-property.cc (execute_general_pushpop_property):
8098 bugfix override with procedure should have effect.
8100 * scm/define-grob-properties.scm (all-internal-grob-properties):
8101 remove position-callbacks.
8103 * scm/define-grobs.scm (all-grob-descriptions): use
8104 ly:make-callback-chain for positions property.
8106 * scm/layout-beam.scm (check-quant-callbacks): return list of
8109 * scm/lily.scm (type-p-name-alist): add callback-chain
8111 * lily/lily-guile.cc (type_check_assignment): type check failure
8112 is warning not message.
8114 * lily/grob-property.cc (try_callback): walk callback chain if
8117 * lily/chained-callback.cc: new file. new smob type.
8119 * lily/lily-guile.cc (procedure_arity): new function.
8121 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8123 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8125 2005-10-25 John Mandereau <john.mandereau@free.fr>
8127 * Documentation/user/instrument-notation.itely (Figured bass):
8128 describe new features
8130 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8132 * lily/beam.cc (calc_least_squares_dy): use property callback.
8134 * lily/beam-concave.cc (calc_concaveness): use property callback.
8136 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8138 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8142 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8144 * scm/layout-page-layout.scm (page-headfoot): annotate
8147 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8149 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8150 doesn't take y-space.
8152 * scm/paper.scm (paper-alist): fix A7 dimensions.
8154 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8156 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8157 src-wildcard, remove $(wildcard).
8159 * po/GNUmakefile (PO_FILES):
8160 * ps/GNUmakefile (PS_FILES):
8161 * tex/GNUmakefile (TEX_FILES):
8162 * cygwin/GNUmakefile (POSTINSTALLS):
8163 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8164 some wildcard calls.
8166 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8168 * THANKS: add Thomas Bushnell.
8170 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8172 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8173 (lilypond-main): Redirect to gui-main if 'gui is set.
8175 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8176 for alternative installations kludging s/share/lib/g
8179 * SConstruct (libdir_package_version): Define.
8181 * python/SConscript:
8182 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8185 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8187 * lily/main.cc: clarify --safe.
8189 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8191 * VERSION: release 2.7.14
8193 * Documentation/user/*.itely: remove minimumVerticalExtent.
8195 * scm/define-grobs.scm (all-grob-descriptions): remove
8196 RemoveEmptyVerticalGroup
8198 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8200 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8203 * python/convertrules.py (conv): add rules.
8205 * lily/grob.cc: remove is_empty()
8207 * lily/grob-property.cc: remove add_to_list_property().
8209 * scripts/convert-ly.py (datadir): add prefix switching hack to
8212 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8213 space-function tweak.
8215 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8217 * scm/define-grob-properties.scm (all-user-grob-properties):
8218 remove callback property.
8220 * lily/include/grob.hh (class Grob): remove property_callbacks_
8221 member. Properties of procedure type are assumed to be callbacks.
8223 * lily/ligature-engraver.cc (override_stencil_callback):
8224 rewrite. Use noteHeadLigaturePrimitive as source.
8226 * scm/define-grob-properties.scm (all-internal-grob-properties):
8227 remove ligature-primitive-callback
8229 * lily/include/dimension-cache.hh (class Dimension_cache): make
8230 class, with Grob as friend.
8232 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8233 has_extent_callback()
8235 * scm/translation-functions.scm (format-new-bass-figure): read
8236 figuredBassPlusDirection
8238 * scm/define-context-properties.scm
8239 (all-user-translation-properties): add figuredBassPlusDirection.
8241 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8243 * lily/align-interface.cc (set_ordered): new function.
8245 * lily/grob.cc (flush_extent_cache): rewrite.
8247 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8248 Interval pointer directly.
8250 * lily/main.cc (setup_paths): insert extra / .
8251 (setup_paths): junk cff entry.
8253 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8256 * lily/axis-group-engraver.cc (finalize): remove
8257 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8259 * lily/grob.cc (Grob): don't set extent from ctor.
8260 (extent): use property callbacks.
8262 * lily/axis-group-interface.cc: remove set_axes() function.
8264 * lily/grob-property.cc (del_property): new function.
8266 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8268 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8270 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8272 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8274 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8276 * mf/SConscript: Updates.
8278 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8280 * stepmake/stepmake/*:
8284 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8285 from any directory in build-dir. Cleanups.
8287 * make/srcdir.make.in: Remove.
8289 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8291 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8294 * lily/SConscript: Remove ttftools.
8296 * SConstruct: Resurrect.
8298 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8300 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8303 * lily/paper-book.cc (add_score_title): put Paper_score title into
8306 * scm/translation-functions.scm (format-new-bass-figure): also
8307 allow plus in combination with _
8309 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8311 * VERSION: 2.7.13 released.
8313 * lily/note-collision.cc (check_meshing_chords): don't wipe
8314 stencil, merely set transparent.
8316 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8317 (Top): document #'callbacks.
8318 (Top): document nested \override.
8320 * input/regression/figured-bass.ly: update for slash and pluses.
8322 * input/regression/figured-bass-continuation-forbid.ly (Module):
8325 * scm/translation-functions.scm (format-new-bass-figure): use
8326 slashed-digit if diminished is set.
8327 (format-new-bass-figure): add + if 'augmented is set.
8329 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8331 * input/test/piano-staff-distance.ly: remove file.
8333 * Documentation/user/advanced-notation.itely (Formatting cue
8334 notes): use length-fraction for making stems/beams smaller.
8336 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8339 * lily/new-figured-bass-engraver.cc: new property
8340 centerFiguredBassContinuations
8342 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8345 * lily/context-property.cc (execute_general_pushpop_property):
8348 * input/regression/override-nest.ly: new file.
8350 * python/convertrules.py (FatalConversionError.subber): conversion
8351 rule for #'callbacks
8353 * input/regression/override-nest.ly: new function.
8355 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8358 * lily/context-property.cc (lookup_nested_property): new function.
8359 (evict_from_alist): new function.
8360 (general_pushpop_property): new function.
8361 (execute_general_pushpop_property): rewrite. Support nested
8364 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8366 * lily/beam.cc: use length-fraction too.
8368 * scm/define-grob-properties.scm (all-user-grob-properties):
8369 remove property flag-width-function
8370 (all-user-grob-properties): remove space-function.
8372 * scm/layout-beam.scm: remove flag-width-function.
8374 * lily/beam.cc: remove flag-width-function
8376 * scm/layout-beam.scm: remove beam dir functions.
8378 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8380 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8381 for easier grace tweaks.
8383 * lily/beam.cc: remove dir-function.
8385 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8387 * lily/grob.cc: remove spacing-procedure.
8389 * lily/note-head.cc (calc_stem_attachment): new function.
8390 (internal_print): use callback to get glyph-name.
8392 * lily/grob-property.cc (get_interfaces): new function.
8394 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8396 * lily/stem.cc (calc_stem_end_position): new function.
8397 (calc_length): new function.
8398 document details for stem.
8399 remove Stem::get_direction()
8401 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8403 * lily/grob-property.cc (set_callback): new function.
8405 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8407 * lily/item-scheme.cc: new file.
8409 * lily/bar-line.cc (before_line_breaking): remove function.
8410 remove bar-size-procedure, break-glyph-function
8412 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8414 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8416 * lily/system-start-delimiter.cc (print): suicide from
8417 here. Remove after_line_breaking_callback.
8419 * lily/script-interface.cc (calc_direction): use callback for direction.
8421 * lily/side-position-interface.cc (aligned_side): don't use
8422 Side_position_interface::get_direction directly. Use callback.
8424 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8426 (get_print_stencil): rename from get_stencil: create stencil with
8427 transparency, color and cause.
8429 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8431 * python/convertrules.py (conv): insert temporary warning rule.
8433 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8435 * lily/grob-property.cc (try_callback): remove marker if applicable.
8437 * lily/grob.cc: elucidate doc about after/before-line-breaking
8439 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8441 * lily/stem.cc (height): idem.
8443 * lily/stem-tremolo.cc: idem.
8445 * lily/slur.cc (height): don't use get_uncached_stencil()
8447 * lily/rest.cc (y_offset_callback): use offset callback
8448 iso. after-line-breaking callback.
8450 * lily/grob.cc: change after/before-line-breaking-callback to
8451 after/before-line-breaking dummy properties.
8453 * lily/include/grob.hh: remove Grob_status.
8455 * scm/define-context-properties.scm
8456 (all-user-translation-properties): remove verticalAlignmentChildCallback
8458 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8459 (calc_direction): use callback
8460 (calc_positions): use callback.
8462 * lily/tie.cc (calc_direction): use callback. Only call parent
8463 positioning for more than one tie.
8465 * lily/tie-column.cc (calc_positioning_done): use callback
8467 * lily/slur-scoring.cc (calc_control_points): use callback
8469 * lily/slur.cc (calc_direction): use callback.
8471 * lily/note-collision.cc (force_shift_callback): remove.
8473 * lily/dot-column.cc (force_shift_callback): remove. Use
8474 other_axis_parent_positioning.
8476 * lily/grob.cc (other_axis_parent_positioning): new function.
8477 (same_axis_parent_positioning): new function
8479 * lily/align-interface.cc (alignment_callback): remove function.
8481 * lily/note-collision.cc (calc_positioning_done): use callback.
8483 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8484 (calc_direction): idem.
8485 remove print function.
8487 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8489 * lily/dot-column.cc (calc_positioning_done): use callback.
8491 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8493 * lily/beam.cc (calc_direction): use pseudo-property for beam
8495 (calc_positions): use callback
8497 * lily/align-interface.cc (calc_positioning_done): use
8498 callback. Fold fixed distance and normal alignment in one function.
8500 * lily/stem.cc (calc_stem_end_position): use callback.
8501 (calc_positioning_done): idem.
8502 (calc_direction): idem.
8503 (calc_stem_end_position): idem
8504 (calc_stem_info): idem.
8506 * lily/grob-property.cc (get_property_data): new function:
8507 (try_callback): new function.
8509 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8512 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8514 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8516 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8520 * lily/include/*.hh (Module): compile fixes.
8522 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8524 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8525 as an argument for char-syntax: use (char-syntax (or nil 0))
8526 instead of (char-syntax nil), thanks to Milan Zamazal.
8528 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8530 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8533 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8536 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8538 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8539 add class_name() method.
8541 * lily/music-scheme.cc: remove ly:music-name.
8543 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8545 * cygwin/postinstall-lilypond.sh: Remove cruft.
8547 * cygwin/postremove-lilypond.sh: Remove.
8549 * cygwin/GNUmakefile (default): Remove postremove rules.
8551 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8553 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8556 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8559 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8560 consider break index for broken spanner.
8562 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8563 characters from string before splitting.
8565 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8567 * scm/framework-ps.scm (output-preview-framework): use
8568 is-book-title to determine whether to chop off the booktitle.
8570 * lily/paper-book.cc (systems): init from book-title-properties
8571 (add_score_title): init score-title-properties.
8573 * ly/paper-defaults.ly: add {score,book}-title-properties.
8575 * scm/document-backend.scm (lookup-interface): error message if
8576 using unknown interface.
8578 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8581 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8583 (make_bracket): new function.
8585 * scm/lily.scm (define-scheme-options): add paper-size option.
8587 * ly/declarations-init.ly (laissezVibrer): get paper size from
8590 * scm/translation-functions.scm: use \fontsize for changing the
8593 * scm/define-grobs.scm (all-grob-descriptions): set
8594 between-length-limit to 1.0
8596 * lily/tie-helper.cc: add between_length_limit_ detail property.
8598 * mf/feta-bolletjes.mf: typos.
8600 * lily/note-head.cc (internal_print): don't shadow idx
8601 parameter. This fixes wrong attachment for do shape heads.
8603 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8605 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8607 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8609 * scm/layout-slur.scm: rename from slur.scm
8611 * scm/layout-page-layout.scm: rename from page-layout.scm
8613 * scm/layout-beam.scm: rename from beam.scm
8615 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8616 bass-figure-interface
8618 * lily/new-figured-bass-engraver.cc (process_music): add
8619 implicitBassFigures property.
8621 * scm/define-markup-commands.scm (pad-x): new markup.
8623 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8624 minimumVerticalExtent on FiguredBass context.
8626 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8627 case the continuation crosses a line break.
8629 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8631 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8632 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8633 absolute file name bug.
8635 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8637 * VERSION (PACKAGE_NAME): release 2.7.12
8639 * input/regression/figured-bass-continuation-center.ly: new file.
8641 * input/regression/beam-outside-beamlets.ly: new file.
8643 * lily/beam.cc (set_beaming): don't clip edges.
8644 (connect_beams): don't clip edges.
8646 * lily/beaming-info.cc (clip_edges): new function.
8648 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8650 * Documentation/user/instrument-notation.itely (Figured bass):
8651 demonstrate extenders, update seealso links.
8653 * scm/titling.scm (marked-up-headfoot): change tagline
8654 handling. tagline = ##f will blank the tagline as well.
8656 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8658 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8660 * lily/new-figured-bass-engraver.cc (struct
8661 New_figured_bass_engraver): add new_music_found_ member.
8663 * lily/lilypond-version.cc (Lilypond_version): deal with
8664 incorrectly formatted version strings.
8666 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8667 New_figured_bass_engraver by default.
8669 * lily/ttf.cc (print_trailer): only define glyph names when
8670 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8672 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8674 * lily/horizontal-bracket.cc (make_bracket): new function.
8676 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8677 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8678 BassFigureLine, BassFigureAlignment
8680 * lily/new-figured-bass-engraver.cc (process_music): new file.
8682 * lily/figured-bass-continuation.cc: new file.
8684 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8687 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8689 * scripts/lilypond-book.py: Bug fix, put the quote around the
8690 actual score for LaTeX documents.
8692 * scm/define-grobs.scm (all-grob-descriptions): Change
8693 collapse-height of the SystemStartBracket grob to 5.0,
8694 so the bracket disappears for single stave score lines (similarly
8695 to SystemStartBraces).
8697 * Documentation/user/advanced-notation.itely (Polymetric
8698 notation): Clarify the use of compressMusic.
8700 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8701 that the grace spacer note in other staves need the same duration
8702 and document the stroke-style property.
8704 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8706 * Documentation/user/global.itely (Vertical spacing): document
8707 alignment-extra-space and fixed-alignment-extra-space.
8709 * Documentation/topdocs/NEWS.tely (Top): add entry.
8711 * input/regression/alignment-vertical-spacing.ly: new file.
8713 * python/convertrules.py (conv): add rule.
8715 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8717 * lily/align-interface.cc (stretch_after_break): new
8718 function. Read fixed-alignment-extra-space property.
8719 (align_elements_to_extents): read alignment-extra-space property.
8721 * lily/lily-guile.cc (robust_scm2dir): new function.
8723 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8724 (annotate-space-left): new function. Annotate space left on page.
8725 (annotate-y-interval): new function.
8726 (paper-system-annotate-last): new function. Annotate bottom-space.
8728 * mf/feta-beugel.mf (y):
8730 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8732 * VERSION (PACKAGE_NAME): release 2.7.11
8734 * scm/lily-library.scm (interval-translate): new function
8735 (interval-center): new function.
8737 * scm/page-layout.scm (paper-system-annotate): new function. Add
8738 arrows for dimensions.
8740 * scm/stencil.scm (dimension-arrows): new function.
8742 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8744 * input/regression/page-spacing.ly: add annotatespacing
8746 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8747 (LY_DEFINE): new function ly:paper-system-set-property!
8749 * Documentation/user/global.itely (Paper size): explain how to add
8752 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8753 correspond to GS's definition.
8755 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8757 (print): only connect to next bracket if the next one is alive.
8758 (print): set padding to 0.0 if the bound is a breakable
8759 column. This makes tupletFullLength brackets reach up to the staff
8760 line if it doesn't connect to the next line.
8762 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8764 * lily/bar-number-engraver.cc: correct docs.
8766 * scm/output-lib.scm (first-bar-number-invisible): rename from
8767 default-bar-number-visibility
8769 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8771 * scm/define-music-properties.scm (all-music-properties): remove
8774 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8776 * po/fi.po: refresh.
8778 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8780 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8782 (disappear): bugfix.
8784 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8786 * lily/include/paper-system.hh (class Paper_system): remove
8787 staff_extents_ member.
8789 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8791 * lily/include/paper-system.hh (class Paper_system): remove
8792 number_ variable. Remove is_title_. Remove break_before_penalty_
8794 * lily/paper-book.cc (systems): use 'number property iso. number_
8797 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8798 remove ly:paper-system-number.
8800 * scm/lily-library.scm (paper-system-title?): new function.
8802 * lily/book.cc (process): bugfix: flip ?: cases.
8804 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8807 * ly/music-functions-init.ly: add outputProperty music function.
8809 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8811 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8813 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8815 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8817 * lily/paper-system.cc (internal_get_property): new function.
8819 * Documentation/user/global.itely (Vertical spacing): refer to
8822 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8825 * input/regression/page-spacing.ly: new file.
8827 * input/regression/page-top-space.ly: new file.
8829 * lily/spacing-spanner.cc: cmath -> math.h
8831 * lily/paper-system.cc (read_left_bound): new function. Read
8832 line-break-system-details from left bound to determine extents.
8834 * Documentation/user/programming-interface.itely (Using LilyPond
8835 syntax inside Scheme): change applyxxx -> applyXxx.
8837 * ly/music-functions-init.ly: add outputProperty music function.
8839 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8841 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8843 * python/convertrules.py (conv): rule
8845 * ly/music-functions-init.ly: applyxxx -> applyXxx
8847 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8850 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8852 * flower/include/real.hh: include <math.h> iso. <cmath>
8854 * flower/include/offset.hh: include real.hh
8856 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8858 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8859 fix example, now that 'interfaces is no longer directly available.
8861 * lily/book.cc (process): don't crash if paper == NULL.
8865 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8867 * scm/define-music-types.scm (music-descriptions): set length and
8868 start-callback for QuoteMusic
8870 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8872 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8873 arguments. Fixes compilation error with gcc 3.3.
8875 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8877 * VERSION: release 2.7.10
8879 * stepmake/stepmake/python-module-rules.make
8880 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8882 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8885 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8887 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8888 -Werror. Otherwise GCC barfs over various optimizations.
8890 * scm/define-grob-properties.scm (all-internal-grob-properties):
8891 add note-head property
8893 * Documentation/user/instrument-notation.itely (Laissez vibrer
8896 * input/regression/laissez-vibrer-ties.ly: new file.
8898 * lily/laissez-vibrer-engraver.cc: new file.
8900 * lily/include/tie-column-format.hh: new file.
8902 * lily/tie-column-format.cc: new file.
8904 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8906 * lily/laissez-vibrer-tie.cc: new file.
8908 * lily/include/laissez-vibrer-tie.hh: new file.
8910 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8912 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8914 * scm/define-grobs.scm (all-grob-descriptions): add
8915 LaissezVibrerTie, LaissezVibrerTieColumn
8917 * lily/tie-column.cc (set_tie_config_directions): new function
8918 (final_shape_adjustment): new function.
8919 (shift_small_ties): new function.
8921 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8923 * lily/include/tie.hh (struct Tie_details): add x_gap_
8924 (struct Tie_configuration): add head_position_
8926 * lily/tie-column.cc (set_chord_outline): new function.
8928 * mf/cmr.enc.in: remove file.
8930 2005-09-11 Graham Percival <gpermus@gmail.com>
8932 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8934 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8936 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8937 reduce aliasing effects.
8939 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8942 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8944 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8946 * flower/include/real.hh: std::fabs too.
8948 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8950 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8952 * lily, flower: Include C++ iso C headers. Import namespace std
8955 * lily/side-position-interface.cc:
8957 * lily/note-head.cc:
8958 * lily/include/includable-lexer.hh:
8959 * flower/include/string-data.icc: Remove using std::*.
8961 * lily, flower: Include C++ iso C headers. Import namespace std
8964 * lily/side-position-interface.cc:
8966 * lily/note-head.cc:
8967 * lily/include/includable-lexer.hh:
8968 * flower/include/string-data.icc: Remove using std::*.
8970 * Documentation/user/instrument-notation.itely (Entering lyrics):
8971 Multiple latin-1->utf-8 conversion fix.
8973 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8975 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8977 * lily/tie.cc (get_configuration): also avoid dots for non-space
8980 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8982 * Documentation/user/instrument-notation.itely: Bugfix.
8984 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8986 * tex/GNUmakefile: don't install texinfo.tex
8988 * tex/ : cleanup: remove unused files.
8990 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8992 * flower/include/real.hh: using std::{isnan,isinf}
8994 * VERSION (PATCH_LEVEL): release 2.7.9
8996 2005-09-05 Graham Percival <gpermus@gmail.com>
8998 * Documentation/user/ instrument-notation.itely,
8999 advanced-notation.itely: minor tweaks.
9001 * input/test/script-chart.ly: add item padding.
9003 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
9005 * flower/offset.cc: use math.h iso. <cmath>
9007 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9010 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9011 (widen-left-stencil-edges): new function. Fix alignment problems
9012 with LaTeX includegraphics.
9014 * lily/text-interface.cc (interpret_markup): use abort().
9016 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
9018 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9020 * lily/tie.cc (get_configuration): update bezier shape as we
9022 (get_configuration): don't move large ties if we're outside of the
9025 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
9027 * scm/define-markup-commands.scm (strut): swap X and Y dims.
9029 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
9031 * .cvsignore: Add auto-generated configure files and then some.
9033 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
9035 * scm/define-grobs.scm (DynamicLineSpanner): Add
9036 X-extent-callback. Fixes hairpin-slur collision.
9038 2005-08-31 Graham Percival <gpermus@gmail.com>
9040 * Documentation/user/advanced-notation.itely,
9041 basic-notation.itely: minor changes.
9043 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
9045 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9046 \linebreak between each .eps file if \betweenLilyPondSystem is
9049 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9050 music): Document the \linebreak
9052 * Documentation/user/lilypond-book.itely,
9053 input/tutorial/lbook-latex-test.tex,
9054 Documentation/user/examples.itely: Remove \usepackage{graphics}
9056 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
9058 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9060 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9063 * scripts/lilypond-book.py (PREAMBLE_LY): define
9064 inside-lilypond-book
9065 (modify_preamble): new function. Insert \RequirePackage{graphics}
9066 when no {graphics found in preamble.
9068 2005-08030 Graham Percival <gpermus@gmail.com>
9070 * Documentation/user/basic-notation.itely, global.itely,
9071 tutorial.itely: misc small changes.
9073 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9075 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9078 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9080 * lily/tie-column.cc (new_directions): put Tie down on center
9083 * lily/script-interface.cc (before_line_breaking): use
9084 Grob::programming_error
9086 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9088 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9091 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9093 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9095 2005-08-29 Werner Lemberg <wl@gnu.org>
9097 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9098 the `*.scale.pfa' files to avoid warnings.
9100 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9102 * lily/tempo-performer.cc (process_music): idem.
9104 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9106 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9108 * Documentation/user/advanced-notation.itely (Text markup): not a
9111 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9113 * lily/staff-performer.cc (initialize): add tempo/name to
9116 2005-08-26 Graham Percival <gpermus@gmail.com>
9118 * Documentation/user/advanced.itely: add text-only example.
9120 * Documentation/user/invoking.itely: add index entries for
9123 * Documentation/user/ tutorial.itely, basic-notation.itely:
9124 small fixes suggested by Steve D. Thanks!
9126 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9128 * input/regression/markup-bidi-pango.ly: new file.
9130 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9131 standard. Remove #ifdef. Remove memleak.
9132 (text_stencil): use text_dir to decide how to composite items.
9133 (text_stencil): determine uniform text direction for the entire
9136 * scripts/lilypond-book.py (output_name): remove
9137 latex_filter_cmd. Non-portable to non-Unix systems.
9138 (get_latex_textwidth): use File.write and os.unlink() instead.
9140 * THANKS: add Vicente & Trevor.
9142 * lily/grob.cc (discretionary_processing): look up origin for
9143 programming_error too.
9145 * input/regression/tie-broken.ly: new file.
9147 * lily/tie-column.cc (set_chord_outlines): set outline for line
9150 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9152 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9153 unscaled transform, just translate stencils.
9155 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9158 * scm/define-markup-commands.scm (wordwrap-string): use
9160 (wordwrap-stencils): idem.
9163 (wordwrap-stencils): translate last line to right for
9164 text-direction = LEFT.
9166 * scm/define-grob-properties.scm (all-user-grob-properties): add
9169 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9171 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9172 when copying a Lily_parser object.
9174 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9176 * scm/define-markup-commands.scm (null): add null markup.
9178 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9180 * lily/item.cc: Add documentation of center-invisible
9182 2005-08-24 Graham Percival <gpermus@gmail.com>
9184 * Documentation/user/advanced-notation.itely: add info about
9187 * Documentation/user/programming-interface.itely: fix example
9188 involving raised text.
9190 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9192 * lily/beam.cc (print): fix X start/end points of isolated
9195 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9197 * lily/multi-measure-rest.cc (set_text_rods): new function.
9199 * lily/vertical-align-engraver.cc (process_music): call
9200 Align_interface::set_axis(). This forces #'elements to be ordered,
9201 preventing random vertical reordering of staves.
9203 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9204 add avoid-slur property.
9206 * Documentation/user/basic-notation.itely (Measure repeats): add
9207 countPercentRepeats example.
9209 * Documentation/user/advanced-notation.itely (Other text markup
9210 issues): remove remark about normal-font. We have \normal-text
9212 * input/regression/tie-chord.ly: add note about remaining bugs.
9214 * lily/tie.cc (print): try Tie_column::set_directions () if
9215 control-points not yet defined.
9217 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9219 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9220 extent. This fixes braces falling out of the EPS bbox.
9222 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9225 2005-08-23 Graham Percival <gpermus@gmail.com>
9227 * {various} : change #up->#UP and #down->#DOWN.
9229 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9231 * Documentation/user/advanced-notation.itely: clarify
9232 what objects handles text on a multimeasure rest.
9234 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9236 * VERSION (PATCH_LEVEL): release 2.7.7
9238 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9240 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9242 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9244 * input/regression/*.ly: formatting clean-up. Default layout
9245 before music expression.
9247 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9248 romanze28-2 example.
9250 * scm/ps-to-png.scm: remove dir-re function.
9251 (make-ps-images): generate page names, instead of globbing them.
9252 This brings down LilyPond memory usage for make web by a factor
9255 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9256 don't use glob. With 3000 files, globbing
9257 Documentation/user/out-www/ can take too much time.
9259 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9261 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9263 * input/regression/tie-manual.ly: new file
9265 * input/regression/tie-chord.ly: update.
9267 * flower/include/interval.hh (struct Interval_t):
9269 * lily/tie.cc (distance): new function
9270 (height): new function.
9271 (init): new function
9272 (Tie_details): new struct.
9274 * lily/skyline.cc (skyline_height): new function.
9276 * lily/tie-column.cc (set_chord_outlines): new function.
9277 (new_directions): read tie-configuration
9279 * lily/skyline.cc: fix ASCII art.
9281 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9283 * python/convertrules.py (string_or_scheme): Fix spelling error
9285 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9287 * lily/tie-column.cc (set_directions): set directions only once.
9288 (add_configuration): new function.
9290 * lily/tie.cc (set_control_points): new function
9292 * lily/tie-column.cc (new_directions): new function.
9294 * ly/music-functions-init.ly: set 'pitch property
9295 iso. trill-pitch. This makes \relative work with \pitchedTrill
9297 * lily/tie.cc (get_configuration): new function. Don't generate
9298 control points, rather, generate configuration.
9299 remove head-pair property.
9301 * lily/include/tie.hh (struct Tie_configuration): new struct.
9303 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9305 * Documentation/topdocs/NEWS.tely: clarify.
9307 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9309 * lily/tie.cc: remove minimum-length
9311 * scm/define-grob-properties.scm (all-user-grob-properties):
9312 remove staffline-clearance, y-offset
9314 * input/regression/tie-dots.ly (Module): remove.
9316 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9317 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9319 * input/regression/tie-single.ly: new file.
9321 2005-08-21 Graham Percival <gpermus@gmail.com>
9323 * ly/bagpipe.ly: fix compile problem.
9325 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9327 * lily/midi-item.cc (name): new method.
9329 * lily/staff-performer.cc (acknowledge_audio_element): use
9330 signature of baseclass.
9332 * lily/engraver-group.cc (do_announces): move recursion call out
9335 * lily/drum-note-performer.cc (class Drum_note_performer): use
9336 process_music everywhere.
9338 * ly/performer-init.ly: add default children everywhere.
9340 * lily/paper-book.cc (output): call paper-book-write-midis
9341 directly: always write MIDI, even if no \layout {} block.
9343 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9345 * VERSION (PACKAGE_NAME): release 2.7.6
9347 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9348 about not being able to handle repeat.
9350 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9352 * Documentation/user/examples.itely (Piano templates):
9353 * lily/include/performer-group.hh: Remove last traces of
9354 Performer_group_performer. Fixes make web.
9356 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9358 * Documentation/user/examples.itely (Piano templates): change
9359 Engraver_group_engraver -> Engraver_group
9361 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9362 scm_stand_in_procs is not weak_any.
9364 * lily/volta-bracket.cc (print): don't use strcmp().
9366 * lily/volta-engraver.cc (process_music): use
9367 Text_interface::is_markup() for setting the 'text property of the
9370 * input/mutopia/claop.py (accents): update syntax to 2.6
9372 * scm/define-context-properties.scm
9373 (all-user-translation-properties): add countPercentRepeats.
9375 * Documentation/user/basic-notation.itely (Measure repeats): add
9376 isolated percent example.
9378 2005-08-18 Graham Percival <gpermus@gmail.com>
9380 * input/ {various}: change direction #1, #-1 to
9381 #up/#down or \fooUp, \fooDown.
9383 * Documentation/user/music-glossary.tely: #-1 to #down.
9385 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9386 to #up, #-1 to #down.
9388 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9390 * lily/include/engraver-group.hh: rename.
9392 * lily/include/performer-group.hh: rename.
9394 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9396 * input/test/script-abbreviations.ly: Removed some old LaTeX
9399 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9401 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9402 Remove functions. Remove if 1: constructs, reindent.
9404 * scripts/convert-ly.py (add_version): Add functions from
9407 * scm/script.scm (default-script-alist):
9408 s/priority/script-priority. Fixes script stacking. Backportme.
9409 (Fermata): Very low priority.
9411 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9413 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9415 * input/regression/slur-script.ly: remove padding tweaks. Add
9418 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9419 time sigs and related stuff.
9421 * scm/define-grob-properties.scm (all-user-grob-properties): add