1 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
12 * input/regression/utf-8.ly:
13 document utf-8 meaning of phrases.
15 * scm/define-markup-commands.scm:
16 make \caps markup default to smallCaps
20 use glyph indexing for glyph name .notdef
22 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
24 * input/regression/utf-8.ly: Fix doc to match order of language
27 2006-11-01 Joe Neeman <joeneeman@gmail.com>
29 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
32 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
34 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
36 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
38 * Documentation/user/GNUmakefile:
39 don't use ImageMagick, use GS directly.
42 otf depends on otf-g?table. Fixes race condition in -j2 build.
43 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
49 remove .deb/.rpm downloading.
51 * buildscripts/git-update-changelog.py:
52 bugfixes for git-update-changelog.py
54 * Documentation/user/GNUmakefile:
57 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
59 * input/regression/tie-semi-single.ly:
60 use position/direction from single tie case too. This fixes
61 overrides and defaults for single laissez-vibrer and repeat ties.
63 * buildscripts/git-update-changelog.py:
64 only prepend header if one patch was successful.
66 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
68 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
69 stuff. Remove cygwin packaging stuff.
71 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
73 * python/convertrules.py (conv): Part 2 fixes vertical extent.
75 * input/test/vertical-extent.ly: Fix and elaborate on vertical
76 staff extent. (Thanks Mats)
78 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
80 * buildscripts/git-update-changelog.py (main): write .msg and cvs
83 * scm/define-grobs.scm:
84 separation-items have width
90 * Documentation/topdocs/NEWS.tely:
91 * lily/separating-group-spanner.cc:
92 * lily/slur-engraver.cc:
93 * lily/slur-scoring.cc:
94 * scm/define-grobs.scm:
95 * input/regression/slur-clef.ly:
96 add breakableSeparationItem to extra encompass for slurs. This
97 fixes slur/clef slur/key collisions etc. Should fix #49
99 * lily/include/slur-scoring.hh:
100 * lily/slur-scoring.cc:
101 Use X of separation item as slur start. Fixes #120
103 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
105 * buildscripts/git-update-changelog.py (changelog_body): don't
108 * lily/grob.cc: add avoid-slur
110 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
114 move server/emacsclient to elisp/
116 * buildscripts/git-update-changelog.py (Commit.note_del_file):
119 * elisp/server.el.patch:
122 * elisp/emacsclient.patch:
125 * buildscripts/git-update-changelog.py:
132 * buildscripts/git-update-changelog.py:
133 script to update ChangeLog with Git messages.
135 * lily/beam-engraver.cc:
136 * input/regression/rest-pitched-beam.ly:
137 don't set callback if staff-position set. Fixes #126.
139 * lily/bar-number-engraver.cc:
141 * lily/fingering-engraver.cc:
142 * lily/grob-property.cc:
144 * lily/include/grob.hh:
145 * lily/include/lily-guile-macros.hh:
146 * lily/mark-engraver.cc:
147 * lily/melody-engraver.cc:
148 * lily/script-column.cc:
149 * lily/tie-formatting-problem.cc:
151 internal_get_property_data() using ly_symbol2scm()
153 * stepmake/stepmake/generic-targets.make:
154 create .gitignore in outdir.
159 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
161 * input/test/vertical-extent.ly:
162 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
164 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
166 * stepmake/bin/add-html-footer.py (compose): remove setgcos
168 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
170 * GNUmakefile.in (install-help2man): install-help2man target.
172 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
174 * SConstruct (configure): Do not check for /bin/sh.
176 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
178 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
181 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
183 * input/regression/fret-boards.ly: new file.
185 * po/de.po: new po courtesy translation team.
187 * scripts/lilypond-book.py (get_option_parser): add newline to doc
190 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
192 * ly/gregorian-init.ly (neumeDemoLayout): update
193 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
195 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
196 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
198 2006-10-27 Erlend Aasland <erlenda@gmail.com>
200 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
201 Yet another build fix.
203 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
205 * SConstruct (lilypondprefix): use sorted() for list_sort()
208 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
210 * flower/SConscript: Unit test rules.
212 * flower/test-std.cc: Compile fix.
214 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
216 * python/midi.c (pymidi_parse_track): warning fixes.
218 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
219 include dot-column.hh
221 2006-10-26 Graham Percival <gpermus@gmail.com>
223 * Documentation/user/{basic-, global}: minor changes from mailist.
225 2006-10-26 Erlend Aasland <erlenda@gmail.com>
227 * scm/define-grobs.scm: trivial beautification
229 * lily/tie-performer.cc: no need to #include "pqueue.hh"
231 * lily/source-file.cc: put multibyte var inside #if clause
233 * scm/define-grob-interfaces.scm:
234 * scm/define-grob-properties.scm:
235 Build fix (string-fret-finger-combinations)
237 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
240 * Documentation/user/lilypond-book.itely: Build fix.
242 2006-10-26 Joe Neeman <joeneeman@gmail.com>
244 * lily/system.cc (get_paper_system):
245 * lily/paper-book.cc (systems):
246 move most of the backwards compatibility stuff into
249 * Documentation/topdocs/NEWS.tely: add 2 entries for the
252 * Documentation/user/page.itely: remove time-scaled-music
253 bug for the Page_turn_engraver
255 * lily/paper-book.cc (set_system_penalty): backwards
256 compatibility (breakbefore) for the old page breaker
258 2006-10-25 Graham Percival <gpermus@gmail.com>
260 * Diocumentation/user/instrument-notation.itely: added more
261 info about stanzas; thanks Geoff!
263 * Documentation/user/ {basic, advanced}: small fixes from
266 * THANKS: add some bug reporters.
268 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
270 * scm/define-context-properties.scm (all-user-translation-properties):
271 noteToFretFunction: Add.
273 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
274 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
276 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
278 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
281 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
282 Remove bashism in delete.
284 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
286 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
288 * scm/translation-functions.scm (determine-frets-mf): flatten let*
290 * scm/define-context-properties.scm
291 (all-user-translation-properties): add maximumFretStretch property.
293 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
295 * lily/source-file.cc (get_counts): use multibyte variable.
297 * scm/translation-functions.scm (determine-frets-mf): new
298 function: compute fret numbers.
300 * scm/output-lib.scm (string-frets->description) new function.
301 (fret-board::calc-stencil): new function
303 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
305 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
307 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
309 * lily/tab-note-heads-engraver.cc: cleanups.
311 * lily/fretboard-engraver.cc: new file
313 * ly/engraver-init.ly: add FretBoards context
315 2006-10-24 Joe Neeman <joeneeman@gmail.com>
317 * lily/grob.cc (pure_relative_y_coordinate)
318 (pure_height): use the new call_pure_function stuff
320 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
323 * lily/side-position-interface.cc (pure_y_aligned_side): add an
326 * lily/simple-closure.cc (ly_eval_simple_closure): make
327 simple-closure evaluatable from scheme
328 (evaluate_with_simple_closure): make simple-closures pure-
331 * lily/slur.cc (pure_outside_slur_callback): new function
333 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
334 fits in with previous changes that made the page forces much
337 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
338 and pure-Y-extent into this new function.
339 (pure-conversions-alist): add outside-slur-callback
341 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
343 * Documentation/user/advanced-notation.itely (Instrument names):
344 Remove obsolete bug workaround for instrument names on piano
347 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
349 * Documentation/user/lilypond-book.itely (Integrating DocBook and
350 music): patch by Bertalan Fodor for docbook.
352 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
353 of $(LILYPOND). Prevents lilypond run for .txt files.
355 * INSTALL.txt: gitness.
357 * .cvsignore: update to force gitness.
359 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
361 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
362 detect suicide in nested tuplets.
364 2006-10-23 Werner Lemberg <wl@gnu.org>
366 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
367 typo in argument to FT_Get_X11_Font_Format.
369 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
371 * stepmake/stepmake/po-vars.make: more gitness.
373 * flower/polynomial.cc (check_sol): no empty if bodies.
375 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
377 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
379 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
381 * Documentation/user/examples.itely (Transcription of mensural
382 music): Added more comments in .ly source. Suggest to remove
383 Forbid_line_break_engraver to allow line breaking at all bars.
385 * Documentation/user/instrument-notation.itely (Ancient
386 articulations): Updated @refbugs regarding episem.
388 * Documentation/user/instrument-notation.itely (Gregorian square
389 neumes ligatures): Added \augmentum dots. Updated @refbugs
390 regarding \augmentum.
392 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
394 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
397 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
400 * ly/gregorian-init.ly: Added \augmentum macro.
402 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
404 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
406 * lily/pango-font.cc (pango_item_string_stencil): use
407 FT_Get_X11_Font_Format()
409 2006-10-22 John Mandereau <john.mandereau@free.fr>
411 * po/fr.po: update translation.
413 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
415 * VERSION (PATCH_LEVEL): bump version
417 * input/regression/horizontal-bracket-break.ly: new file.
419 * scm/define-grobs.scm (all-grob-descriptions): calc
422 * lily/horizontal-bracket.cc (make_bracket): support
423 connect-to-neighbor. Fix #118
425 * VERSION: release 2.9.26-2
427 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
429 * VERSION (PACKAGE_NAME): release 2.9.26
431 * buildscripts/output-distance.py (test_basic_compare): add
433 (FileLink.multi_img_cell): new function, glob multi-page png
436 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
438 * po/lilypond.pot: update.
440 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
442 * Documentation/user/global.itely (File structure): remove
445 * lily/parser.yy (FIXME): remove ADDQUOTE
447 * Documentation/user/global.itely (Extracting fragments of
448 notation): new node, about clip systems.
450 * Documentation/user/lilypond-book.itely (Many quotes of a large
451 score): ref to clip systems.
453 * Documentation/user/instrument-notation.itely (Entering lyrics):
454 add note about lyric ties and required font.
456 * lily/open-type-font.cc (glyph_list): format errors.
458 * Documentation/user/programming-interface.itely (Scheme
459 procedures as properties): more doco on simple-closure and scheme
461 (Input variables and Scheme): use lilypond[verbatim], document
464 * Documentation/user/page.itely (Displaying spacing): use \book
465 explicitly, so arrows show .
466 (Line breaking): add note about Forbid_line_break_engraver
468 * Documentation/user/tweaks.itely (Common tweaks): also set length
469 to prevent tie squeezing.
470 (Default files): use @var{}
472 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
473 (Generating LilyPond files): add FOMUS.
475 2006-10-20 Joe Neeman <joeneeman@gmail.com>
477 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
478 Y-offset for TextScript and Script
480 * lily/text-engraver.cc (make_item):
481 * lily/script-engraver.cc (make_script_from_event):
482 remove call to Side_position_interface::set_axis since all scripts
483 now have this set by default
486 * lily/prob.cc: use variables
488 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
490 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
491 at typography, rather analyse stream event duration.
493 * Documentation/user/page.itely (Page formatting): set a6 paper
494 for system separator example.
496 * lily/arpeggio.cc (Module): idem.
498 * lily/accidental-placement.cc: add script-priority property.
500 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
502 * lily/ttf.cc (print_trailer): if all else fails: use
503 glyphIndexXXXX as glyph name. Fixes #117.
505 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
506 entry if cmap contains glyph.
507 (get_index_to_charcode_map): remove from Pango_font class, use
508 global filename -> font mapping.
509 (get_glyph_index_name): new function.
510 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
513 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
515 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
518 * scm/define-grob-properties.scm (all-user-grob-properties):
519 remove outdated doc. Fixes #116
521 * lily/completion-note-heads-engraver.cc (process_music): always
522 clone input events; otherwise we may overwrite input 'duration
523 property. Fixes #115.
525 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
528 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
531 * VERSION (PATCH_LEVEL): bump version.
533 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
535 * lily/engraver.cc (internal_make_grob): use variables.
537 * flower/string-convert.cc (dec2double): clean-up warnings.
539 * configure.in (CXXFLAGS): add -Werror.
541 * VERSION (PACKAGE_NAME): release 2.9.25
543 2006-10-18 Joe Neeman <joeneeman@gmail.com>
545 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
546 line even if we precede a forced break.
548 * lily/optimal-page-breaking.cc (try_page_spacing): square line
549 forces too. Make page-spacing weight default to 10 because the
550 changes to vertical springs decreased the page force/line force
551 proportions. Also, take the average of line force and page force
552 instead of just the sum.
554 * lily/constrained-breaking.cc (initialize): make the stiffness
555 of the vertical springs depend on the height of the system. This
556 prevents pages with only a few large systems from getting huge
559 * Documentation/user/page.itely (Page formatting): document the
560 change in default page-spacing-weight
562 * lily/include/constrained-breaking.hh: initialise bottom_padding_
564 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
566 * input/typography-demo.ly (melody): remove superfluous slur.
568 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
569 add piano-pedal-script-interface
571 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
573 * scripts/lilypond-book.py: DocBook support.
575 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
577 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
579 (stop_translation_timestep): set bound to currentMusicalColumn if
580 not set yet. Fixes #102
582 * lily/piano-pedal-bracket.cc: formatting.
584 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
586 * lily/piano-pedal-align-engraver.cc: new class
587 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
590 2006-10-18 Heikki Junes <hjunes@gmail.com>
592 * po/fi.po: Update Finnish translation (before the next release).
594 2006-10-17 Joe Neeman <joeneeman@gmail.com>
596 * lily/system.cc (get_paper_system): reinstate the backwards-
597 compatible page breaking for the old page breaker.
599 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
601 * lily/recording-group-engraver.cc: removed
603 * lily/context.cc, lily/translator-group.cc: Don't touch
604 Context::implementation_ if it's null
606 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
608 * scm/paper.scm: only use left-margin if defined.
610 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
612 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
614 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
615 strokeFingerOrientations
617 * lily/script-column.cc (row_before_line_breaking): also handle
618 accidentals and arpeggios in horizontal script stacking.
620 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
623 * input/regression/script-stack-horizontal.ly: trim.
625 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
627 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
630 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
631 'text if string argument.
633 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
635 * scm/define-context-properties.scm
636 (all-user-translation-properties): change to strokeFingerOrientations
638 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
640 * lily/parser.yy: remove debug output
642 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
644 * ly/paper-defaults.ly: set left/right margin.
646 * scm/paper.scm (set-paper-dimensions): use left-margin and
647 right-margin for computing linewidth.
649 * Documentation/topdocs/NEWS.tely (Top): idem.
651 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
654 * scm/define-markup-commands.scm (tied-lyric): increase negative
655 space: space syllables tighter.
657 * VERSION (PATCH_LEVEL): bump version.
659 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
662 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
664 * COPYING: further clarification
666 * VERSION: release 2.9.24
668 * input/regression/script-stack-horizontal.ly: add version.
670 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
672 * input/regression/lyric-tie.ly (texidoc): use different words.
674 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
676 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
678 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
679 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
681 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
683 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
685 * Doxyfile: remove file.
687 * scm/define-grob-interfaces.scm (string-finger-interface): add
688 string-finger-interface
690 * lily/general-scheme.cc (LY_DEFINE): move
691 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
693 * Documentation/topdocs/NEWS.tely (Top): add note for
694 string-finger feature.
696 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
699 * scm/output-lib.scm (string-finger::calc-text): read 'digit
702 * input/regression/script-stack-horizontal.ly: new file.
704 * ly/engraver-init.ly: add Script_row_engraver.
706 * lily/script-column.cc (order_grobs): refactor: separate axis
708 (row_before_line_breaking): new function.
710 * lily/script-row-engraver.cc (Script_row_engraver): new file.
712 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
714 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
716 * Documentation/user/instrument-notation.itely: Cleanup: Remove
717 annoying skip notes from mensural ligature example. Update
718 @refbugs for ligatures and mensural ligatures.
720 * lily/coherent-ligature-engraver.cc,
721 lily/include/coherent-ligature-engraver.hh,
722 lily/mensural-ligature-engraver.cc,
723 lily/vaticana-ligature-engraver.cc: Revise code for item
724 reparentizing. There should now be less programming_error
727 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
729 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
730 Maintenance bugfix: Don't create empty Stencil (), but empty box
731 instead. This fix should eliminate some programming_error
734 * ly/engraver-init.ly (MensuralStaff): Set default accidental
737 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
738 \layout block _before_ score.
740 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
742 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
744 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
746 2006-10-13 Erlend Aasland <erlenda@gmail.com>
748 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
750 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
752 * VERSION (PATCH_LEVEL): bump version.
754 * COPYING: clarify exception note.
756 * lily/main.cc: remove remark about "COPYING".
758 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
759 system-count starts at 0 for each clip-region. Change name to
760 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
761 layout block, per score.
763 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
765 * lily/input-smob.cc: add equal_p for Input
767 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
770 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
772 * lily/prob.cc: Add equal_p predicate for Prob
774 * lily/translator.cc: small cleanup
776 * scm/document-music.cc: use data from translator listener
777 registration to generate documentation for event classes
779 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
781 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
783 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
785 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
787 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
789 * Documentation/topdocs/INSTALL.texi: Thinko.
791 * .cvsignore: Update.
793 * lexer-gcc-3.1.sh: Remove.
795 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
796 Update anonymous cvs access. Remove comment about gcc 3.0.4.
798 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
800 * VERSION: release 2.9.23
802 * lily/paper-column-engraver.cc (stop_translation_timestep): also
805 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
807 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
809 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
811 * input/regression/clip-systems.ly (Notes): new file.
813 * scm/lily.scm (define-scheme-options): add clip-systems option.
815 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
817 (dump-stencil-as-EPS): move bbox calculation from previous
819 (output-framework): use -dclip-systems
821 * scm/lily-library.scm (filtered-map): new function
823 * scm/framework-ps.scm (clip-system-EPS): new function.
824 (clip-system-EPSes): new function.
826 * lily/paper-column.cc: add rhythmic-location to interface
828 * scm/define-grob-properties.scm (all-user-grob-properties): add
829 rhythmic-location property.
831 * scm/clip-region.scm: new file: rhythmic-location data type and
832 system-clipped-x-extent function.
834 * ly/init.ly: use (scm clip-region)
836 * lily/paper-column-engraver.cc (stop_translation_timestep): set
837 rhythmic-location for paper column grobs.
839 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
841 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
843 * ly/engraver-init.ly: Remove obsolete comment on
846 * Documentation/user/instrument-notation.itely: Tune Ancient
847 Articulations figure, such that the episem actually shows.
849 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
850 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
852 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
855 2006-10-12 Graham Percival <gpermus@gmail.com>
857 * Documentation/user/ {some}: minor edits that were lost somehow.
859 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
861 * VERSION (PACKAGE_NAME): bump version.
863 * input/regression/lyric-tie.ly (texidoc): new file.
865 * Documentation/topdocs/NEWS.tely (Top): add new feature.
867 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
869 * scm/define-markup-commands.scm (tied-lyric): new function: split
870 string along ~ and reattach with U+203F (tie character) and
873 * scm/output-lib.scm (lyric-text::calc-text): new function.
875 * lily/lyric-engraver.cc (process_music): don't set 'text.
877 * scm/output-lib.scm (string-finger::calc-text): new function
878 (lyric-text::print): new function.
880 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
881 generic for fingering & string number. Use for string-finger.
883 * scm/define-music-types.scm (music-descriptions): add
886 * lily/fingering-engraver.cc (listen_string_finger): new function
888 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
890 * scm/define-context-properties.scm
891 (all-user-translation-properties): add stringFingerOrientations
893 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
895 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
896 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
898 * lily/dots.cc: Added style property for dots.
900 * mf/parmesan-heads.mf: Fix typo in comment.
902 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
903 adding longa head to feta font and removing obsolete default
906 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
908 * scm/output-lib.scm (fingering::calc-text): use origin
909 event-property, not music-property.
911 * lily/lilypond.rc.in: spell my name correctly.
913 2006-10-10 Joe Neeman <joeneeman@gmail.com>
915 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
916 already have a non-empty extent. Fixes estimation for Hara-kiri
919 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
921 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
924 * lily/ligature-engraver.cc: Remove unused #include.
926 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
927 Bugfix: remove method check_for_prefix_loss(Item *) from global
928 namespace to avoid namespace pollution.
930 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
932 * VERSION: release 2.9.22
934 * ly/generate-documentation.ly: update option name.
936 * lily/dynamic-text-spanner.cc (print): revert fix.
938 * scm/define-grob-interfaces.scm
939 (trill-pitch-accidental-interface):
940 add trill-pitch-accidental-interface
942 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
943 dereference if it's really a duration.
945 * lily/figured-bass-engraver.cc (process_music): clear spanner if
946 useBassFigureExtenders is not set.
947 (listen_bass_figure): record as new event if
948 useBassFigureExtenders not set. Fixes #103.
950 * scm/stencil.scm (circle-stencil): don't center stencil argument,
951 instead: move circle. Fixes #107.
953 * scm/define-grobs.scm (all-grob-descriptions): set
954 allow-loose-spacing for PaperColumn and
955 NonMusicalPaperColumn. Kludge for #110.
957 * lily/spaceable-grob.cc: add allow-loose-spacing property.
959 * lily/spacing-determine-loose-columns.cc (is_loose_column):
960 allow-loose-spacing property.
962 * scm/define-markup-commands.scm (postscript): gsave & grestore
963 around embedded PS. Do setlinewidth too. Fixes #109.
965 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
967 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
968 code. This patch fixes ligature brackets that were not at all
971 2006-10-08 Graham Percival <gpermus@gmail.com>
973 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
975 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
977 * scm/define-context-properties.scm: clarified docs (bug 91).
979 * Documentation/user/basic-notation.itely: document volta brackets
980 not aligning (bug 63).
982 * Documentation/user/ global.itely invoking.itely: ignore or
983 add warnings about texstr.
985 2006-10-08 John Mandereau <john.mandereau@free.fr>
987 * po/fr.po: update translation.
989 * po/: update msgids.
991 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
993 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
995 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
997 * Documentation/user/page.itely (Two-pass vertical spacing): add
998 documentation for two-pass spacing technique.
1000 2006-10-06 Graham Percival <gpermus@gmail.com>
1002 * Documentation/user/convert-ly.txt: new file; new
1003 storage place for this file (moved from bugs/ CVS).
1005 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1007 * lily/note-head.cc: Fixed programming_error message.
1009 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1011 * scm/define-grobs.scm (pure-conversion): move pure-callback
1014 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1015 marcato, stopped, thumb.
1017 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1019 * lily/completion-note-heads-engraver.cc (process_music): don't
1020 skimp on memory usage.
1022 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1025 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1026 parenthesis item. This fixes premature Y-extent triggering. Fixes
1029 * VERSION (PATCH_LEVEL): bump version.
1031 2006-10-04 Graham Percival <gpermus@gmail.com>
1033 * Documentation/user/advanced-notation.itely: added
1034 info about instrument names for piano or other contexts,
1037 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1039 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1040 solfa_base_notewidth as unit for non-DO-notes too.
1042 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1044 * VERSION: release 2.9.21
1046 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1049 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1051 * python/lilylib.py (progress): Minor fix.
1053 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1055 * lily/note-name-engraver.cc: doc engraver.
1057 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1059 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1061 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1064 * lily/stem-engraver.cc (make_stem): don't set duration-log
1066 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1067 write snippet-names binary.
1069 * python/lilylib.py (system): use os.system for mingw32
1071 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1074 * scm/backend-library.scm: update email address.
1076 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1079 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1082 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1083 handle dot creation separately.
1085 * lily/tab-note-heads-engraver.cc (process_music): idem.
1087 * lily/drum-note-engraver.cc (process_music): idem.
1089 * lily/note-heads-engraver.cc (process_music): idem.
1091 * lily/rest-engraver.cc: don't set duration-log.
1093 * scm/output-lib.scm (string-number::calc-text): new function.
1094 (note-head::calc-duration-log): new function.
1096 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1098 * scm/output-lib.scm (fingering::calc-text): new function.
1100 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1102 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1103 and include-eps-font -> include-eps-fonts
1105 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1107 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1109 * lily/timing-translator.cc: list properties.
1110 (start_translation_timestep): update internalBarNumber too.
1112 * scm/define-context-properties.scm
1113 (all-user-translation-properties): add internalBarNumber.
1115 * input/regression/spacing-no-note.ly: new file.
1117 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1119 * lily/book.cc: #include cleanup.
1121 * lily/include/lily-guile-macros.hh: add assert to
1122 scm_or_str2symbol(SCM).
1124 * VERSION (PATCH_LEVEL): bump version.
1126 * lily/spacing-spanner.cc (musical_column_spacing): handle
1127 musical->nonmusical spacing case, where there is no spacing
1128 wish. Fixes issue #61.
1130 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1131 (pango_item_string_stencil): use logical rect horizontally (to
1132 preserve spaces), ink_rect vertically (for time signatures).
1134 * lily/font-metric.cc (word_stencil): new interface function
1136 * input/regression/utf-8-mixed-text.ly: new file.
1138 * lily/percent-repeat-engraver.cc (listen_percent): remove
1141 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1142 non-dynamic scripts. Fixes #30.
1144 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1146 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1148 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1149 SCM_UNDEFINED for non-existent data.
1151 * lily/side-position-interface.cc (general_side_position): allow
1152 optional current_offset argument for chaining, so combinations of side-position
1153 and outside slur callback don't add up. Fixes issue #92.
1155 * lily/pango-font.cc (pango_item_string_stencil): use
1156 logical_rect. This prevents spaces after words from disappearing,
1159 * VERSION: release 2.9.20
1161 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1163 * scm/define-grob-properties.scm (all-user-grob-properties):
1164 mention stencil as user settable.
1166 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1168 * Documentation/user/page.itely (Page formatting):
1169 document auto-first-page-number
1171 * lily/page-breaking.cc (find_chunks_and_breaks):
1172 * lily/paper-score.cc (calc_breaking): Follow changes to the
1173 Constrained_breaking interface
1175 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1176 here backwards, as an optimisation
1177 (initialize): new function; move most of the code in resize () here
1178 (combine_demerits): cache ragged_right_
1179 (Constrained_breaking): constructor now takes the Paper_score
1181 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1183 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1184 avoid parser lookahead for 0-ary functions.
1186 * lily/translator.cc: Extract event classes from
1187 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1189 2006-10-02 Heikki Junes <hjunes@gmail.com>
1191 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1194 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1196 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1197 function. Call the page breaking function selected in the
1198 `page-breaking' \paper variable, then the post processing function
1199 chosen using the `page-post-process' \paper variable.
1200 (line-height): new function. Return the height of a system.
1201 (line-minimum-position-on-page): new function. Return the position
1202 of a system on page (using the previous line position), only
1203 considering between system padding.
1204 (stretchable-line?): new function. Says whether a line can be
1205 stretched (ie. is not a title nor a single staff system).
1206 (page-maximum-space-left): new function. Computes space left on a
1207 page, when all systems are separated by their padding.
1209 * lily/page-breaking.cc (breaking::make_pages): Move page post
1210 processing function call to page breaking wrapper (common to all
1213 * lily/paper-book.cc (book::pages): call the page breaking
1214 wrapper, instead of the page breaker directly
1216 * ly/paper-defaults.ly: Add \paper variables for page breaking
1217 wrapper and page post processing function. Make
1218 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1219 `system-maximum-stretch-procedure' variable for holding a function
1220 computing the maximum stretch a system allows.
1222 * scm/layout-page-dump.scm (write-page-breaks): computes the
1223 stretch to apply to systems on a page to minimize left
1224 space. Dump this stretch length.
1226 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1227 the system-stretch property of the tweak data to stretch the
1229 (includePageLayoutFile): Void function which includes the
1230 generated page-layout file if it exists and if the page layout
1231 dumping is not asked.
1232 (scoreTweak): if the score tweak named by the argument exists,
1235 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1237 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1238 handle correctly the case where there are multiple \noPageBreaks
1241 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1243 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1245 * abc2ly.py fix so that entering " -- " will translate to a -- in
1246 the lilypond instead of a " - - "
1248 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1250 * lily/align-interface.cc: fix typo
1252 * lily/dynamic-text-spanner.cc (print): Add a special case for
1253 trill spanner right sides.
1255 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1257 * lily/align-interface.cc (get_extents_aligned_translates): add
1258 support for padding variable.
1260 * lily/break-align-interface.cc (self_align_callback): oops: use
1261 loop variable in guard.
1263 * input/regression/repeat-percent-grace.ly: new file.
1265 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1266 remember first currentCommandColumn of a grace run. Fixes issue 70.
1268 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1269 move class definition to CC file.
1271 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1273 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1274 measure-long repeats.
1276 * flower/include/international.hh: include stdarg.h
1278 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1280 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1281 put_systems_on_pages to return an empty result, we need to assign
1282 demerits properly in that case.
1283 (put_systems_on_pages): Make the number of pages depend on the
1284 evenness of page_number. Add auto-first-page-number.
1285 (calc_subproblem): ensure that the page-number is even for the
1286 left-hand page. Warn if the first page-turn doesn't fit onto the
1287 first (right-hand) page.
1289 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1290 (min_page_count): make this publicly accessible
1291 (min_page_count): fix a bug when there are forced page breaks that
1292 was introduced when I made this loop run backwards
1293 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1294 replace space_systems_on_min_pages with these two. The logic in
1295 space_systems_on_min_pages was getting too convoluted and is better
1296 contained in page-turn-page-breaking.
1298 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1300 (breakable_column): typo
1302 * lily/source-file.cc (get_line): fix off-by-one error
1303 and clean up some of the logic
1305 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1307 * lily/page-breaking.cc (make_pages): honour the first-page-number
1310 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1312 * VERSION (PACKAGE_NAME): bump version.
1314 2006-09-26 Pal Benko <benko.pal@gmail.com>
1316 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1317 (the latter is the same as petrucci-f which is kept for compatibility)
1319 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1321 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1323 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1325 * lily/global-context.cc (run_iterator_on_me): break out of loop
1326 if moment doesn't increase.
1328 * scm/define-grob-properties.scm (all-user-grob-properties): add
1331 * lily/accidental.cc (after_line_breaking): read forced property.
1333 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1336 * input/regression/accidental-forced-tie.ly: new file.
1338 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1340 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1342 * lily/figured-bass-engraver.cc: only listen to rest events if
1343 ignoreFiguredBassRest is not set.
1345 * scm/define-context-properties.scm
1346 (all-user-translation-properties): add ignoreFiguredBassRest property
1348 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1350 * lily/paper-book.cc (get_system_specs):
1351 (set_system_penalty): fix breakbefore.
1352 We used to set a penalty on the system after the break, now we
1353 set a permission on the system before the break
1355 * lily/grob-property.cc: add scm debugging hooks into
1356 property modification
1358 * lily/context-property.cc:
1360 rename make_foo_from_properties to internal_make_foo and
1361 move it from context-property.cc to a member function of
1364 * lily/include/lily-guile-macros.hh:
1365 overload ly_symbol2scm macro so that there is no more need
1368 * lily/volta-repeat-iterator.cc:
1369 * lily/tweak-engraver.cc:
1370 * lily/tuplet-bracket.cc:
1371 * lily/span-bar-engraver.cc:
1372 * lily/script-engraver.cc:
1373 * lily/prob-scheme.cc:
1374 * lily/pointer-group-interface.cc:
1376 * lily/grob-scheme.cc:
1377 * lily/grob-property.cc:
1379 * lily/context-property.cc:
1380 * lily/break-substitution.cc:
1381 * lily/break-align-engraver.cc:
1382 * lily/axis-group-interface.cc:
1383 * lily/align-interface.cc:
1384 remove calls to internal_FOO
1386 * lily/system-start-delimiter-engraver.cc:
1387 * lily/parenthesis-engraver.cc:
1388 * lily/accidental-engraver.cc:
1389 remove calls to make_foo_from_properties
1391 2006-09-23 Graham Percival <gpermus@gmail.com>
1393 * Documentation/user/programming-iterfaces.itely: fix
1394 def-music-function -> define-music... leftover.
1396 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1398 * lily/page-spacing.cc (min_page_count): by running the loop
1399 backwards, we can calculate ragged_last properly.
1401 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1403 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1404 printfirst-page-number -> print-first-page-number
1406 * python/convertrules.py: corresponding rule.
1408 * Documentation/user/page.itely (Page formatting): Document the
1409 default values of all page layout parameters.
1411 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1413 * lily/lexer.ll: remove limitation on music function arity. New
1414 mode extratoken, which inserts extra EXPECT_* tokens after
1415 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1417 * lily/parser.yy: Change grammar for music function accordingly.
1419 * lily/include/lily-parser.hh: New method get_state, new member
1420 hidden_state. Works around a problem when parser fetches
1421 MUSIC_FUNCTION token but not the following EXPECT_* token.
1423 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1426 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1427 references to Music; use ASSIGN_EVENT_ONCE everywhere
1429 * lily/grob-info.cc: junk *music_cause
1431 * lily/music.cc: copy eventified articulations to stream event
1433 * lily/part-combine-iterator.cc: Cleanup using enums
1435 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1438 * lily/include/engraver.hh: Junk music.hh include
1440 * lily/stream-event.cc: Changed constructors
1442 2006-09-21 Graham Percival <gpermus@gmail.com>
1444 * Documentation/user/tweaks.itely (Fitting music onto fewer
1445 pages): change settings to avoid warning messages.
1447 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1449 * Documentation/user/tweaks.itely (Fitting music onto fewer
1450 pages): Add between-system-space setting.
1452 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1454 * lily/accidental-placement.cc (calc_positioning_done): don't
1455 trigger Y-extent calculation too early. Use pure_height instead.
1457 * lily/scale.cc (LY_DEFINE): new file.
1459 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1461 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1462 that happen at the start of a score: having a zero-length
1463 chunk was messing up min_system_count calculations.
1465 * lily/source-file.cc (get_line): lower_bound, not
1466 binary_search. Fixes problem where point-and-click would
1467 always point to the first line.
1469 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1471 * lily/accidental-placement.cc (calc_positioning_done): also put
1472 stems into accidental support.
1474 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1477 * scm/script.scm (default-script-alist): avoid-slur and
1478 slur-padding for portato script.
1480 * lily/stem-tremolo.cc (translated_stencil): new function.
1481 (height): use new function. Fixes tremolos on whole notes.
1483 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1486 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1488 * scripts/abc2ly.py (try_parse_comment): idem.
1490 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1491 bar_string iso. string.find()
1495 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1498 2006-09-18 Graham Percival <gpermus@gmail.com>
1500 * Documentation/user/basic-notation.itely: add bug
1501 warning about ties and octavation/clef.
1503 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1505 * VERSION (PACKAGE_NAME): release 2.9.18
1507 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1509 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1510 figure out midi file names right here.
1512 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1514 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1516 * scm/backend-library.scm: option naming: gs-font-load*s*
1518 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1521 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1523 * scm/define-music-types.scm (music-descriptions): remove
1524 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1525 Music::to_event doesn't complain.
1527 * lily/accidental-placement.cc (ape_compare):
1528 * lily/semi-tie.cc (compare):
1529 * lily/note-column.cc (shift_compare): replace by XXX_less
1531 * lily/tie-formatting-problem.cc (set_chord_outline):
1532 * lily/tie-column.cc (calc_positioning_done):
1533 * lily/system.cc (post_processing)
1535 * lily/stem.cc (note_head_positions)
1536 (calc_positioning_done):
1537 * lily/spanner.cc (do_break_processing)
1538 (find_broken_piece):
1539 * lily/span-bar.cc (print):
1540 * lily/semi-tie-column.cc (calc_positioning_done):
1541 * lily/rest-collision.cc (calc_positioning_done):
1542 * lily/program-option.cc (get_help_string):
1543 * lily/note-collision.cc (get_clash_groups):
1544 * lily/new-fingering-engraver.cc (position_scripts):
1545 * lily/keyword.cc (Keyword_table):
1546 * lily/hara-kiri-group-spanner.cc (request_suicide):
1547 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1548 * lily/accidental-placement.cc (calc_positioning_done):
1550 * lily/beam.cc (get_beam_segments):
1551 * lily/grob-array.cc (remove_duplicates):
1554 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1555 ragged-last-bottom = ##f (test the new page breaker)
1557 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1559 * scm/define-context-properties.scm
1560 (all-internal-translation-properties): remove properties that
1561 were used to communicate page-turn stuff to the paper-column
1564 * lily/lily-guile.cc (robust_scm2string): new function
1566 * lily/paper-column-engraver.cc: Clean up page turn stuff
1568 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1569 instead of cluttering up paper-column-engraver.cc
1571 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1573 * scm/layout-page-dump.scm (scm): export utility function names,
1574 to allow user writing cutsom dumping functions.
1576 * scm/layout-page-layout.scm: export utility function names to
1577 enable custom page breaking function writing. Tabify.
1578 (line-next-space): use ?-suffix only for predicates
1579 (page-maximum-space-to-fill): new function. Return the space
1580 between first and bottom system of a page, to give to
1582 (space-systems): use a space-to-fill argument (for instance as
1583 computed by page-maximum-space-to-fill) instead of computing
1584 internaly this space with the page height. That way, the caller
1585 can adjust the space to use.
1586 (make-page-from-systems, walk-paths): compute space to fill before
1587 calling space-systems.
1589 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1591 * scm/script.scm (default-script-alist): set paddings for every
1592 type here, increase for portato mark.
1594 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1597 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1599 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1600 use spanner::set-spacing-rods
1602 * lily/note-column.cc: reformat.
1604 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1605 step positioning for note/rest combinations.
1607 * input/regression/rest-note-collision.ly: new file.
1609 * scm/define-grobs.scm (all-grob-descriptions): add
1612 * flower/include/std-vector.hh: switch off again.
1614 * VERSION (PATCH_LEVEL): bump to 2.9.18
1616 * flower/include/std-string.hh: idem.
1618 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1620 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1622 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1625 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1627 * Documentation/user/page.itely: update page breaking documentation
1629 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1631 * lily/note-collision.cc (calc_positioning_done): only access
1632 first head if available.
1634 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1636 * scm/framework-ps.scm (output-preview-framework): use new name.
1638 * lily/program-option.cc (internal_set_option): use new names.
1640 * Documentation/user/SConscript (lilypond_book_flags): update -d
1643 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1644 output into other programs): new variable names.
1646 * scm/lily.scm (define-scheme-options): uniformize var names.
1648 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1649 tuplets_ is non-empty before popping.
1651 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1653 * lily/spanner.cc (find_broken_piece):
1654 * lily/spacing-spanner.cc (get_columns):
1655 * lily/source-file.cc (get_line):
1656 * lily/simple-spacer.cc (get_column_description):
1657 * lily/keyword.cc (lookup):
1658 use the new binary search.
1660 * flower/include/std-vector.hh: replace binary_search with
1661 a more STL-like version
1663 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1665 * lily/tie-performer.cc: remove unused last_event_ property.
1666 (class Tie_performer): add now_tied_heads_ property for
1667 partially-tied heads.
1668 (acknowledge_audio_element): when adding an Audio_note, put the
1669 note in now_tied_heads_ if the audio note is partially tied.
1670 (stop_translation_timestep): always include entries in
1671 now_tied_heads_ in heads_to_tie_.
1673 * lily/drum-note-performer.cc (process_music): look for tie-events
1674 in the articulations; pass to Audio_note constructor.
1676 * lily/note-performer.cc (process_music): look for tie-events in
1677 the articulations; pass to Audio_note constructor.
1679 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1682 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1683 include initializer in constructor.
1685 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1687 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1688 unless they are breakable. This fixes discrepancies between the forces
1689 calculated here and the forces calculated in get_line_configuration.
1691 * lily/grob.cc (pure_relative_y_coordinate): fix some
1692 mis-estimation that was happening with piano staves.
1694 * lily/constrained-breaking.cc (resize): don't choke if we get a
1695 measure that won't fit on a line.
1696 (combine_demerits): don't consider uniformity when ragged
1698 * lily/page-spacing.cc (solve): why the f* were there two of these?
1699 (calc_subproblem): properly handle the case where a system is taller
1702 * lily/system.cc (get_paper_system): ensure that all the permissions
1703 and penalties are passed to the paper systems.
1705 * lily/page-breaking.cc (create_system_list): support system-count.
1707 * scm/define-grobs.scm (pure-print-callbacks): add
1708 ly:script-interface::print
1710 * lily/page-spacing.cc (min_page_count): fix calculation of min
1711 pages if we are ragged and there are non-zero springs.
1713 * scm/layout-page-layout.scm: if the pure-height estimates are under
1714 the real height, allow space-systems to ignore padding if it is
1715 needed in order to fit the systems on one page
1717 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1719 (solve): fix performance problem. Make sure we always get at least
1722 * lily/page-breaking.cc (make_pages): include write-page-breaks
1725 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1727 * scm/define-grobs.scm: add the new slur-callback
1728 fix pure-relevant to not exclude grobs whose extent is already
1731 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1734 * lily/slur.cc (pure_height): new callback to estimate the height
1737 2006-09-02 Graham Percival <gpermus@gmail.com>
1739 * Documentation/user/invoking.itely: small update on
1740 MacOS X notes; thanks Trevor!
1742 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1744 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1746 * lily/lexer.ll: accept EOF in all states.
1748 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1750 * lily/source-file.cc (Source_file): always 0-terminate character
1751 array, to prevent Flex from barfing.
1753 * lily/global-context.cc (get_output): robustness: don't crash if
1754 no Score context found.
1756 * lily/include/book.hh (class Book): idem.
1758 * lily/include/context-def.hh (struct Context_def): idem.
1760 * lily/include/score.hh (class Score): don't derive from Input.
1762 * lily/book.cc (Book): add a copy ctor.
1764 * buildscripts/output-distance.py (FileLink.calc_distance): count
1765 orphans in distance too.
1767 * python/midi.c (midi_parse_track): robustness: don't read past
1770 * ly/performer-init.ly: add Control_track_performer, move
1771 Tempo_performer and Time_signature_performer to Score.
1773 * lily/score-performer.cc (acknowledge_audio_elements): override
1774 from base class: add to audio-columns
1776 * lily/control-track-performer.cc (add_text): new file: generate
1779 * lily/performance.cc: move output_header_track to
1780 Control_track_performer ()
1782 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1784 * lily/include/midi-item.hh (class Midi_channel_item): insert
1785 class into hierarchy, for items that can have a channel setting. Dehungarify.
1787 * lily/include/performer.hh (class Performer): remove
1788 play_element(); move functionality into announce/acknowledge.
1790 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1792 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1793 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1795 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1797 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1800 * lily/all-font-metrics.cc: remove TFM support.
1802 * lily/include/tfm.hh: remove TFM support, TFM reader.
1804 * lily/include/binary-source-file.hh: remove Binary_source_file.
1806 2006-08-27 Graham Percival <gpermus@gmail.com>
1808 * Documentation/topdocs/NEWS.itely: add @c marker for
1809 stuff I've processed.
1811 * Documentation/user/ various: info from NEWS.
1813 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1815 * lily/paper-column-engraver.cc (finalize): Oops, this change
1816 should have gone in on 2006-08-23
1818 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1820 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1821 quotes to quote arguments. Fixes Windows problem.
1823 * python/lilylib.py (progress): idem
1825 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1827 * scripts/musicxml2ly.py: fix for importing
1828 minor key signatures from MusicXML. (Phillip Kirlin)
1830 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1832 * python/musicxml.py:
1833 (Attributes.get_key_signature): now correctly retrieves mode from
1836 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1838 * lily/parser.yy (output_def_body): take ownership of identifier
1841 * Documentation/user/advanced-notation.itely (Metronome marks):
1842 update use of \tempo in \midi.
1844 * VERSION: release 2.9.16
1846 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1848 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1851 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1853 * input/regression/tie-chord-partial.ly: clarify example.
1855 * scm/define-music-properties.scm (all-music-properties): remove
1858 * ly/music-functions-init.ly: remove \untied.
1860 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1861 stream events and music events.
1862 (stop_translation_timestep): search acknowledged heads for
1865 * input/regression/tie-chord-partial.ly: new file.
1867 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1868 for \char markup command.
1870 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1872 * scm/define-music-types.scm (music-descriptions): consistency:
1873 Use solo-{one,two}-event iso. solo-[12]-event.
1875 * lily/part-combine-engraver.cc (process_music):
1876 Use solo-{one,two}-event iso. solo-[12]-event.
1878 * ly/declarations-init.ly (partCombineListener): add Timing as
1881 * flower/std-string.cc (string_copy): use copy ()
1883 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1885 2006-08-24 Graham Percival <gpermus@gmail.com>
1887 * Documentation/user/changing-defaults.itely, global.itely,
1888 lilypond-book.itely, page.itely: minor changes from mailist.
1890 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1892 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1895 * scm/define-context-properties.scm
1896 (translator-property-description): robustness: detect type errors
1897 in property definitions.
1899 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1900 after getting it from SCM.
1902 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1905 * lily/include/performer.hh (class Performer): strip get_tempo()
1908 * lily/midi-def.cc: strip file.
1910 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1912 * lily/include/context-def.hh (struct Context_def): use
1913 VIRTUAL_COPY_CONSTRUCTOR().
1915 * lily/source-file.cc: smobification.
1917 * lily/include/source-file.hh (class Source_file): smobify
1918 Source_file. Trim redundant members.
1920 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1921 clones after creation. This plugs a huge memory leak.
1923 * python/convertrules.py (FatalConversionError.sub_tempo):
1924 complete rule for \midi{ \tempo }
1926 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1928 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1930 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1932 * input/regression/optimal-page-breaking-hstretch.ly: test for
1933 ragged-last-bottom also
1935 * lily/paper-column-engraver.cc (finalize): make the end of a score
1936 breakable by default. This is to balance out a change in behaviour
1937 of the page-turn-breaker which no longer makes the end of a score
1940 * lily/paper-book.cc (pages): set the systems_ once the pages are
1943 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1944 Page_breaking interface.
1946 * lily/page-breaking.cc (class Page_breaking): make the interface
1947 more consistent and provide abstractions for dealing with
1950 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1951 algorithm. Use the new interface to Page_breaking.
1953 * lily/page-spacing.cc: better support for ragged-bottom and
1956 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1958 * python/convertrules.py (conv): warning on \tempo{}
1960 * ly/performer-init.ly: set tempoWholesPerMinute.
1962 * ly/midi-init.ly: remove \midi
1964 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1967 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1968 tempoUnitDuration for determining what to print.
1970 * lily/lyric-extender.cc: typo.
1972 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1974 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1977 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1979 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1980 eps-pad-boxes is set.
1982 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1984 * THANKS: update sponsors.
1986 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1988 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1990 * input/regression/tie-chord-untied.ly: new file.
1992 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1994 * scm/define-music-properties.scm (all-music-properties): add
1997 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1999 (headertext_nopics): sanitize no-examples text.
2001 * scm/page.scm (make-page-stencil): don't rely on extents of
2002 page-stencil. This fixes spurious space around .EPS files produced
2003 with the EPS backend.
2005 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2007 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2009 * lily/hara-kiri-engraver.cc (process_music): remember
2010 keepAliveInterfaces after processing \set
2012 * lily/lyric-extender.cc (print): support left/right-padding for
2015 * scm/documentation-generate.scm (string-append): revert lilypond/
2018 2006-08-20 Graham Percival <gpermus@gmail.com>
2020 * Documentation/user/lilypond.tely: clarification to
2021 license presentation (not to actual license).
2023 * Documentation/user/basic-notation.itely,
2024 instrument-notation.itely: minor changes.
2026 * input/ {regression, test}/+.ly: clarification to
2027 text (you can click on examples). Thanks, Mats!
2029 * input/manual/bar-lines.ly: adds ||: repeats.
2031 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2033 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2035 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2037 * Documentation/user/lilypond.tely: strip lilypond/ from info
2038 links, rename to category LilyPond
2040 * lily/pango-font.cc (description_string): new function.
2042 * VERSION: release 2.9.15
2044 * lily/spacing-engraver.cc (stop_translation_timestep): use
2045 Dscho's fix for spacing spanner.
2047 * scm/define-music-types.scm (music-descriptions): use
2048 apply-output-event for ApplyOutputEvent
2050 * lily/output-property-engraver.cc (listen_apply_output): rename
2051 from listen_layout_instruction.
2053 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2056 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2058 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2059 commandline args with contains, split by \n.
2061 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2062 write snippet-names file, call with -dread-file-list. Fixes
2063 command limitations on 64-bit systems.
2065 * input/regression/stencil-color-rotation.ly: new file.
2067 * lily/include/translator.hh (struct Acknowledge_information):
2068 revert: don't use Protected_scm in global objects, as GUILE can't
2069 handle gc_unprotect from automated destructors on MacOS X.
2071 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2072 color, not the original stencil. Fixes combinations of
2073 color/transparency/rotation.
2075 * scripts/lilypond-book.py (main): add --formats=eps for
2078 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2079 crash if spacing_ is nonexistent.
2081 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2083 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2084 \catcode`\@=12 in the LaTeX output.
2086 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2088 * scm/define-music-types.scm (music-descriptions):
2089 use sustain-event iso. sustain-pedal-event.
2091 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2093 * scripts/convert-ly.py: honour the -n command-line switch
2095 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2097 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2098 break specification.
2100 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2102 * Documentation/user: convert-ly the user manual
2104 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2106 * stepmake/aclocal.m4: version check patch (thanks MWD)
2108 * ly/music-functions-init.ly: robustness. Don't crash if
2109 currentBarNumber is not a number.
2111 * VERSION (PATCH_LEVEL): bump.
2113 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2115 * stepmake/aclocal.m4: better version check; handle fooX.Y
2118 * ly/performer-init.ly: instrument name fixup.
2120 * input/manual/chord-names-jazz.ly (banterProperties):
2121 instrumentName update
2123 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2125 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2127 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2128 function. Use hash tables to check membership.
2130 * lily/general-scheme.cc (LY_DEFINE): new function.
2132 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2134 * lily/include/translator.hh (struct Acknowledge_information): add
2137 * ly/music-functions-init.ly: change name to BreathingEvent
2139 * input/regression/*.ly: apply it.
2141 * python/convertrules.py (conv): better instrumentName conversion
2144 * scm/define-music-types.scm (music-descriptions): add
2145 line-break-event to LineBreakEvent music
2147 * lily/music.cc (to_event): don't crash if music type not set.
2149 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2152 * lily/spacing-engraver.cc (stop_translation_timestep): set
2153 spacing for proportional notation too.
2155 * scm/translation-functions.scm (format-bass-figure): inspect
2158 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2160 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2162 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2164 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2166 * scm/layout-page-layout.scm (make-page-from-systems): new function
2167 (optimal-page-breaks): use the new page-breaking calling convention
2169 * scm/define-context-properties.scm (all-user-translation-properties):
2172 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2173 revokePageTurns functionality. If there is a special barline within
2174 the breakable region, break there instead of at the end of the region.
2176 * lily/paper-book.cc (pages): use the new page-breaking calling
2179 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2181 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2183 * scripts/lilypond-book.py: insert \sourcefileline command in
2184 output, so lilypond error messages refer to the spot in the
2185 original .lytex / .itely sourcefile.
2187 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2189 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2190 space to next column for distance to fixed col.
2192 * VERSION (PACKAGE_NAME): release 2.9.14
2194 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2197 * lily/accidental-engraver.cc (process_acknowledged): don't create
2198 accidental for trill span event. This fixes spurious accidentals
2201 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2203 * scm/define-grob-properties.scm (all-user-grob-properties):
2204 Clarify documentation of side-axis and direction. Thanks to Paul
2205 for the inspiration.
2207 * lily/bar-line.cc: Add documentation for "||:" also in the
2208 interface documentation.
2210 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2212 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2214 * lily/paper-column.cc (set_system): new function.
2216 * lily/spacing-engraver.cc (stop_translation_timestep): store
2217 SpacingSpanner refs in Paper_column.
2219 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2220 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2222 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2224 * lily/beam-engraver.cc (listen_beam): add method for
2225 Grace_beam_engraver too.
2227 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2229 * python/convertrules.py: Fix indentation bug that broke
2230 conversion of files older than 1.3.117.
2231 Fix escape error in the description for 2.9.6.
2233 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2235 * lily/*-engraver.cc: convert all try_music functions to listen_*
2238 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2239 enums to represent pedal types, and calculate more data statically.
2241 * scm/part-combiner.scm (recording-group-emulate): create a
2242 softcoded substitute for recording-group-engraver.cc.
2244 * lily/music.cc: make a common transpose function for events and
2247 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2248 ManualMelismaEvent, and obsoletes Melisma_translator.
2250 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2252 * input/test/instrument-name-align.ly: update version.
2254 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2256 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2257 Doc the --pdf flag to lilypond-book.
2259 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2261 * Documentation/topdocs/NEWS.tely (Top): add description.
2263 * input/regression/tuplet-full-length-note.ly: add file.
2265 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2266 always store axis group.
2268 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2270 * input/regression/instrument-switch.ly: new file.
2272 * lily/instrument-switch-engraver.cc (process_music): new file.
2274 * ly/engraver-init.ly: add Instrument_switch_engraver
2276 * ly/music-functions-init.ly: \instrumentSwitch
2278 * scm/define-context-properties.scm
2279 (all-user-translation-properties): add instrumentCueName
2281 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2283 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2285 * ly/music-functions-init.ly: music function \transposition.
2287 * lily/parser.yy (command_element): softcode \transposition.
2289 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2290 (process_music): oops.
2292 * lily/instrument-name-engraver.cc (start_spanner): new
2293 function. Create spanner when property changes.
2294 (stop_spanner): new function.
2296 * python/convertrules.py (conv): add rule.
2298 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2299 shortInstrumentName iso. instr.
2301 * scm/output-ps.scm (dashed-line): add phase argument to
2304 * lily/bar-line.cc (dashed_bar_line): new function.
2305 (compound_barline): support \bar "dashed".
2307 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2308 --output=DIR to DIR/BASE if it is a dir.
2310 * flower/file-name.cc (file_part): new function
2311 (dir_part): new function
2313 * lily/lily-parser-scheme.cc (LY_DEFINE):
2315 * DEDICATION: update
2317 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2319 * lily/instrument-name-engraver.cc: formatting.
2321 * python/convertrules.py (conv): bugfix for \epsfile.
2323 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2327 * lily/gourlay-breaking.cc: Oops, these should have been included
2330 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2332 * scripts/*.py (program_name): cleanup relocation snippets.
2334 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2336 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2338 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2339 page-breakable by default
2341 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2342 correctly calculated for a single-system page
2344 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2345 bigger than the second number
2347 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2348 acknowledge that we aren't satisfying constraints)
2350 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2353 * lily/grob.cc (pure_height): add minimum-Y-extent
2355 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2358 * lily/constrained-breaking.cc: convert code to use new Matrix class
2359 (get_best_solution): new function
2361 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2362 is a page with no systems
2364 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2366 * VERSION (PACKAGE_NAME): release 2.9.13
2368 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2371 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2373 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2375 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2378 * scm/define-grob-properties.scm (all-user-grob-properties):
2379 remove grace-space-factor.
2381 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2382 grace-spacing-interface
2383 (spacing-options-interface): add.
2385 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2387 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2389 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2390 GraceSpacing object.
2392 * lily/note-spacing.cc: fix prop list formatting
2394 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2395 beaming for grace notes too.
2397 * input/regression/spacing-grace.ly: update.
2399 * lily/grace-spacing-engraver.cc: new file.
2401 * lily/spacing-spanner.cc: add strict-grace-spacing.
2403 2006-07-20 Graham Percival <gpermus@gmail.com>
2405 * lily/parser.yy: compile fix.
2407 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2409 * scm/define-grobs.scm (all-grob-descriptions): typo.
2411 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2412 .eps extension from includegraphics.
2414 * scripts/lilypond-book.py (main): add support for --pdf.
2416 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2417 callback to compute common shortest duration.
2418 (set_springs): typo.
2420 * scm/define-grob-properties.scm (all-user-grob-properties): add
2421 strict-grace-spacing.
2423 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2424 support float_grace_columns_.
2426 * lily/spacing-options.cc (init_from_grob): new file.
2428 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2430 * input/regression/spacing-loose-grace.ly: new file.
2432 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2434 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2435 tupletFullLengthNote too. Choose right bound depending on value.
2437 * input/regression/tuplet-full-length-note.ly: new file.
2439 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2441 * lily/*-performer.cc: Converted try_music to listen_*
2443 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2444 as a stream-event internally. Introduce event_cause (), deprecate
2447 * scm/define-music-types.scm: Removed BusyPlayingEvent
2449 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2451 * Documentation/user/advanced-notation.itely (Font selection):
2452 Document how to get a list of available fonts using 'lilypond
2453 -dshow-available-fonts blabla'.
2455 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2457 * GNUmakefile.in: filter lily-XXX.pdf files.
2459 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2461 * scm/define-grob-properties.scm (all-internal-grob-properties):
2462 remove delta-pitch. Use delta-position everywhere.
2464 * scm/output-lib.scm (fall::print): use new order.
2466 * scm/output-ps.scm (path): reorder arguments.
2468 * scm/output-svg.scm (path): support for path primitive.
2470 * input/regression/bend-after.ly: new file.
2472 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2473 recipe for eps -> pdf conversion.
2475 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2477 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2480 2006-07-19 Graham Percival <gpermus@gmail.com>
2482 * input/manual/screech-boink.ly: moved to here.
2484 * input/screech-boink.ly: deleted.
2486 * scm/define-grob-properties.scm: clarify doc string.
2488 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2490 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2492 * scm/output-ps.scm (path): define path.
2494 * scm/define-stencil-commands.scm
2495 (ly:register-stencil-expression): add path.
2497 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2499 * ly/engraver-init.ly: add Fall_engraver
2501 * lily/parser.yy (music_function_event): allow musicfunction
2502 without music arg as music_function_event.
2504 * lily/grob-scheme.cc (LY_DEFINE):
2505 ly:grob-robust-relative-extent. New function.
2507 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2509 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2511 * scm/output-lib.scm (fall::print): new function
2513 * lily/fall-engraver.cc (stop_fall): new file.
2515 * ly/music-functions-init.ly: alphabetise.
2517 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2520 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2522 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2524 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2527 * lily/translator-group.cc (connect_to_context): non const error message.
2529 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2531 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2534 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2536 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2538 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2541 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2543 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2545 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2547 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2549 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2551 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2553 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2555 * scm/layout-page-layout.scm: Define module, tidy code, use more
2556 functions iso. a single big one.
2558 * scm/layout-page-dump.scm: move page dump functions used in two
2559 pass spacing to this file. Define module.
2561 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2564 * ly/paper-defaults.ly: use module layout-page-layout.
2566 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2568 * lily/music.cc: Revised MusicEvent event class. It now contains
2569 event data directly instead of encapsulating it in music. The
2570 previously used class is renamed to OldMusicEvent.
2572 * lily/stream-event.cc: Stream events are now probs.
2574 * lily/translator-group.cc, lily/translator.cc: Translators can
2575 now listen directly to stream events, by using macros
2576 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2578 * lily/arpeggio-engraver.cc: Converted to use new event system
2580 * THANKS: Corrected spelling mistake.
2582 2006-07-12 Graham Percival <gpermus@gmail.com>
2584 * Documentation/user/SConscript, make/lilypond-vars.make,
2585 input/GNUmakefile: doc build looks in input/manual instead
2588 * input/manual/ GNUmakefile, SConscript: build files for
2591 * input/test/ various: some files moved to input/manual/
2593 * Documentation/user/basic-notation.itely: small updates;
2594 thanks Kieren and Charles!
2596 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2598 * VERSION (PACKAGE_NAME): release 2.9.11
2600 * Documentation/topdocs/NEWS.tely (Top): update prop value
2602 * Documentation/user/basic-notation.itely (Tuplets): new property
2605 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2607 * python/convertrules.py (conv): tweaks.
2609 * VERSION (PATCH_LEVEL): bump version.
2611 * python/convertrules.py (conv): add rule for
2612 tupletNumberFormatFunction.
2614 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2615 tupletNumberFormatFunction.
2617 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2618 text through 'text callback.
2620 * lily/time-scaled-music-iterator.cc (construct_children): copy
2621 tweaks generated events.
2623 * scm/define-context-properties.scm
2624 (all-user-translation-properties): remove tupletNumberFormatFunction
2626 * lily/tuplet-engraver.cc (process_music): don't read
2627 tupletNumberFormatFunction
2629 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2632 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2634 * lily/global-context-scheme.cc: Separated ly:run-translator into
2637 * lily/score-engraver.cc, lily/score-performer.cc,
2638 scm/define-context-properties.scm: Make paper/midi output
2639 accessable as a context property.
2641 * lily/score-translator.cc, lily/score-context.cc: Removed.
2643 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2645 * scm/ps-to-png.scm (Module):
2646 * scm/framework-tex.scm (Module):
2647 * scm/framework-ps.scm (Module):
2648 * scm/backend-library.scm (Module):
2649 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2650 "dDEVICEHEIGHTPOINTS".
2652 2006-07-04 Graham Percival <gpermus@gmail.com>
2654 * Documentation/user/ various: general improvements to
2655 "working with lilypond files" section.
2657 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2659 * lily/sequential-iterator.cc: Change the default get_music_list
2660 to read elements-callback music property
2662 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2663 processing of multimeasure rests. Softcoded
2664 sequential-music-iterator.
2666 * lily/sequential-music-iterator.cc: Removed.
2668 2006-06-28 Graham Percival <gpermus@gmail.com>
2670 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2672 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2674 * lily/parser.yy: Wrap non-post-events in EventChords before
2675 assigning them to identifiers.
2677 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2679 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2680 gives correct vertical placement of \bar ":" in all staff
2681 sizes. Thanks Martial!
2683 2006-06-26 Graham Percival <gpermus@gmail.com>
2685 * Documentation/user/invoking.itely : minor update from mailist.
2687 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2689 * lily/ various: Introduce stream events of types Prepare,
2690 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2691 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2693 * lily/global-context*.cc: Time is now -inf before iteration
2696 * lily/include/context.hh: Removed unique_, init_
2698 * Documentation/topdocs/NEWS: Make the feathered beam example
2699 avoid triggering a bug.
2701 2006-06-24 Graham Percival <gpermus@gmail.com>
2703 * Documentation/user/ various: small additions from mailist.
2705 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2707 * ly/performer-init.ly: Add some missing links in the context
2708 hierarchy for MIDI output. There are probably some more missing!
2710 2006-06-21 Graham Percival <gpermus@gmail.com>
2712 * Documentation/user/ various: minor spelling fixes;
2713 thanks Dave Luttinen!
2715 * Documentation/user/ various: small clarifications;
2716 thanks Anthony Youngman!
2718 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2720 * po/fr.po: add \n appropriately.
2722 * lily/lexer.ll: remove ? from version-seen?
2724 2006-06-19 John Mandereau <john.mandereau@free.fr>
2726 * po/fr.po; update translation, by Jean-Charles Malahieude and
2729 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2731 * THANKS: add Markus Schneider.
2733 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2734 Staff_symbol_engraver
2736 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2737 replace staff_engraver
2739 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2742 * lily/staff-collecting-engraver.cc
2743 (acknowledge_end_staff_symbol): new function
2745 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2747 * lily/staff-collecting-engraver.cc
2748 (acknowledge_end_staff_symbol): new function.
2750 * lily/main.cc: switch on relocation by default.
2752 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2754 * lily/spacing-spanner.cc (musical_column_spacing): set
2755 compound_fixed_note_space to 0.0. Document why.
2757 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2758 range of inverse_hooke_
2759 (Simple_spacer): init completely.
2761 (get_line_configuration): don't use cols.resize(); it introduces
2764 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2766 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2768 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2769 try. Divide by beatlength.
2771 * input/regression/beaming-ternary-metrum.ly: update doc.
2772 add beatLength hack.
2774 * scm/music-functions.scm (make-time-signature-set): add
2775 standard-beat-grouping.
2777 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2779 * input/regression/tie-whole.ly: new file.
2781 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2782 cross center of note head in case of invisible stem.
2784 2006-06-16 Graham Percival <gpermus@gmail.com>
2786 * Documentation/user/ various: small fixes from mailist.
2788 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2790 * lily/breathing-sign.cc (offset_callback): idem.
2792 * lily/align-interface.cc (align_to_fixed_distance): remove
2795 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2798 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2800 * VERSION (PACKAGE_NAME): release 2.9.9
2802 * ly/lilypond-book-preamble.ly: add \version
2804 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2806 * scripts/lilypond-book.py (PREAMBLE_LY): include
2807 lilypond-book-preamble.ly
2809 * lily/stem.cc (get_beaming): return max of 0 and
2810 scm_ilength. Fixes slurring from/to beams.
2812 * ly/lilypond-book-preamble.ly: new file.
2814 * lily/slur.cc: add inspect-index feature.
2816 2006-06-13 Graham Percival <gpermus@gmail.com>
2818 * Documentation/user/tutorial.itely: trivial fix.
2820 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2822 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2823 all non-event music in the parser via MAKE_SYNTAX.
2825 * lily/parser-scheme.cc: Add ly:parser-error function
2827 * scm/paper.scm: fix typo
2829 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2833 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2836 * buildscripts/output-distance.py (test_compare_signatures):
2838 (read_signature_file): use new signature format.
2840 * scm/stencil.scm (write-system-signature): simpler signature
2843 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2846 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2847 stem_end_position, but estimate instead.
2849 * lily/tuplet-bracket.cc (calc_positions): look at
2850 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2851 brackets narrower than beams.
2853 * lily/lexer.ll: set version-seen? even if version is
2856 * lily/rest.cc (y_offset_callback): bugfix: decide position
2857 override based on scm_is_number(). Fixes \rest on center staff
2860 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2861 patterns for 16th triplets.
2863 2006-06-10 Graham Percival <gpermus@gmail.com>
2865 * Documentation/user/ page.itely, global.itely: editing
2868 * Documentation/user/ various: findex -> funindex.
2870 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2872 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2873 insert extra tuplet events.
2875 2006-06-10 Graham Percival <gpermus@gmail.com>
2877 * Documentation/user/programming-interfaces.itely: add
2880 * python/convertrules.py: add annotatefoo -> annotate-foo
2883 * Documentation/user/global.itely: start editing.
2885 * Documentation/user/page.itely: major editing, new spacing
2888 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2890 * scm/define-markup-commands.scm (wordwrap-markups): use
2891 output-def 'line-width if undefined.
2893 * HACKING: trim outdated info.
2895 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2897 * scm/define-grobs.scm (all-grob-descriptions): Add
2898 line-spanner-interface to all grobs that already have
2899 text-spanner-interface or dynamic-text-spanner-interface
2901 * scm/page.scm: Rename annotate{headers,systems,page}->
2904 * input/regression/page-spacing.ly,
2905 input/regression/page-layout-manual-position.ly: idem
2907 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2909 * lily/line-spanner.cc: cleanup property list.
2911 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2912 generator expressions (2.3 compat).
2914 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2916 * lily/vertical-align-engraver.cc: Make sure that the
2917 align{Above,Below}Context properties are included in the automatic
2920 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2922 * scm/paper-system.scm (paper-system-annotate): also annotate the
2923 estimated pure-Y-extent
2925 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2927 * lily/system.cc (break_into_pieces): set the estimated height
2928 of each child system
2930 * lily/stem.cc (pure_height): new pure-Y-extent callback
2932 * lily/staff-symbol-referencer.cc (callback): don't destroy
2933 the staff-position property
2935 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2936 consider_suicide into two functions
2938 * lily/constrained-breaking.cc (resize): use the new pure
2939 callbacks to estimate the height of a system
2941 * lily/axis-group-interface.cc (pure_group_height): new
2942 side-effect-free VerticalAxisGroup height-callback
2944 * lily/align-interface.cc (get_extents_aligned_translates):
2945 split align_elements_to_extents into two functions
2946 (get_pure_child_y_translation): new function
2948 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2950 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2952 * lily/paper-score.cc: cache break_indices and columns
2954 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2956 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2958 * lily/font-config.cc (init_fontconfig): do the init if
2959 cache_file, but don't look at cache_file.
2961 * input/regression/quote-tie.ly: new file.
2963 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2964 to Head_event_tuple, so we deal gracefully with ties on
2967 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2970 2006-06-08 Graham Percival <gpermus@gmail.com>
2972 * input/test/ smart-transpose.ly, reverse-music.ly:
2973 \applyMusic to music functions update, thanks Michael!
2975 2006-06-07 Graham Percival <gpermus@gmail.com>
2977 * input/test/ add-staccato.ly, add-text-script.ly,
2978 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2979 music functions update, thanks to Michael Meixner.
2981 * Documentation/user/music-glossary.tely: small fix
2984 * Documentation/user/ various: minor additions from mailist.
2986 * Documentation/user/lilypond.tely, basic-notation.itely:
2987 small test of @funindex. (works here)
2989 * input/test/font-table.ly: reduce size to partially
2990 de-ugly version in manual.
2992 * Documentation/user/page.itely: new file (split former
2993 "global issues" into "page settings" and "non-musical
2996 * Documentation/user/ various: fix @ref{}s to match
2997 new chapter names (above).
2999 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3001 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3003 2006-06-06 Graham Percival <gpermus@gmail.com>
3005 * Documentation/user/advanced-notation.itely: add example
3006 for segno/coda on barline.
3008 * tex/texinfo.tex: merge from upstream.
3010 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3012 * scripts/lilypond-book.py (process_snippets): Argument fix.
3015 * buildscripts/builder.py:
3018 * Documentation/user/SConscript: More SCons fixes.
3020 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3022 * lily/font-config.cc (init_fontconfig): Only initialize if
3023 global cache_file is found.
3025 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3027 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3030 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3032 * VERSION (PACKAGE_NAME): release 2.9.8
3034 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3035 function. Delay ledger modifying ledgered grobs to
3036 stop_translation_timestep(), to ensure that we're ledgering
3037 according to the new spanner.
3038 (acknowledge_staff_symbol): don't check for non-NULL
3039 staff_sym->get_bound()
3041 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3044 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3047 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3048 directly from srcdir/stepmake/aclocal.m4
3050 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3053 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3055 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3057 * lily/simple-spacer.cc (get_line_configuration): add
3058 keep-inside-line rods
3059 (struct Column_desc): add constructor
3060 (struct Rod_desc): add constructor
3061 (get_line_forces): check for forced page breaks here too
3063 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3064 support/elements cycles between InstrumentNames and AxisGroups
3066 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3068 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3070 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3071 make-txt-files target.
3073 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3074 make-txt-files target.
3076 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3078 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3081 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3083 * Documentation/user/instrument-notation.itely,
3084 input/regression/breathing-sign-ancient.ly,
3085 input/test/divisiones.ly: Removed redundant property settings for
3088 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3089 fix lyrics alignment problems. They are implemented now as scheme
3090 functions that add the appropriate unicode char to the first lyric
3091 event rather than adding a separate lyric event. Minor edit of
3094 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3096 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3097 pollute src dir with built .txt files, but install directly from
3098 Documentation/topdocs/out/
3100 * buildscripts/output-distance.py
3101 (ComparisonData.create_html_result_page): put version/directories
3104 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3107 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3108 Patch by Karl Hammar
3110 * buildscripts/readlink.py: add file.
3111 Patch by Karl Hammar
3113 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3115 * lily/tuplet-number.cc (print): prevent stencil from being
3118 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3120 * scm/stencil.scm (write-system-signature): explicitly
3121 -well, superfluously- close output port.
3123 * buildscripts/output-distance.py (main): oops. Add extra argument.
3125 2006-06-05 Graham Percival <gpermus@gmail.com>
3127 * Documentation/user/music-glossary.tely: clarified example
3128 from Francisco Vila, thanks!
3130 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3132 * input/regression/spacing-section.ly: new file.
3134 * lily/input.cc (programming_error): new function.
3136 * lily/spacing-engraver.cc (try_music): new function. Accept
3137 spacing-section-event
3139 * lily/spacing-spanner.cc (set_springs): take slices of all
3140 columns for spacing.
3142 * lily/include/paper-column.hh (class Paper_column): add
3143 Paper_column::compare.
3145 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3147 * scm/define-music-types.scm (music-descriptions): add
3150 * lily/music-iterator.cc (report_event): use programming_error for
3151 sending non-event error.
3153 * lily/input.cc (programming_error): new function
3155 * buildscripts/output-distance.py (main): use compare-XXX for
3157 (main): --threshold option, default at 0.30
3159 * output-distance.py (main): add --threshold option.
3161 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3163 * scm/paper-system.scm (paper-system-annotate): fix problem when
3164 annotating an empty system
3166 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3168 * GNUmakefile.in: reinstate old web tar/copying.
3170 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3172 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3173 nothing changes. (Erik S)
3175 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3178 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3180 * scm/define-markup-commands.scm (whiteout): do not force
3181 foreground color of argument markup to black.
3183 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3184 the left of the arrow, instead of below the arrow name, so that,
3185 when two little arrows are vertically stacked, their dimensions
3186 and name should not overlap. Add a color key parameter.
3188 * scm/paper-system.scm (paper-system-annotate): Annotate
3189 next-space+next-padding instead of next-space. Annotate space
3190 between next-padding and next-space+padding, respectively, and
3191 following system extent and refpoint-Y-extent. Use colors.
3193 * scm/page.scm (annotate-page): translate annotations slightly to
3196 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3198 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3199 fix for x-staff slurs. Thanks Joe!
3201 * buildscripts/output-distance.py
3202 (SystemLink.output_expression_change_count): keep track of changed
3203 details, and dump in details html page.
3205 * input/regression/figured-bass-staff.ly: add note about setting
3206 properties in Staff context.
3208 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3209 add slurs and ties to support too.
3211 * buildscripts/output-distance.py (main): set dest_dir
3212 argument. Add --max-count option.
3214 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3216 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3217 shortcuts for special unicode chars that are useful in chant
3218 notation. Revised exisiting and added new comments.
3220 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3222 * make/mutopia-rules.make: remove duplicate recipe.
3224 2006-06-02 Werner Lemberg <wl@gnu.org>
3226 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3227 Add support for U+0132 (IJ) and U+0133 (ij).
3229 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3231 * buildscripts/output-distance.py (FileLink): new class. collect
3232 info systems from one .ly file.
3233 (FileLink.link_files_for_html): further tweaks.
3235 2006-06-02 Graham Percival <gpermus@gmail.com>
3237 * tex/texinfo.tex: partial fix for @funindex.
3239 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3242 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3244 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3246 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3247 @example too. Backportme.
3249 2006-06-02 Graham Percival <gpermus@gmail.com>
3251 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3252 from Werner Lemberg.
3254 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3256 * Documentation/user/music-glossary.tely: additional spanish
3257 updates and a lyrics fix in an example.
3259 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3261 * scm/define-grob-properties.scm: Previous patch contained
3262 spurious line from another patch not yet committed. Fixed.
3264 * scm/define-grob-properties.scm: Add missing doc strings for
3267 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3269 * buildscripts/output-distance.py
3270 (ComparisonData.write_text_result_page): separate the scores, sort
3273 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3276 * buildscripts/output-distance.py (me_path): use argv[0] for
3278 (ComparisonData.img_cell): use colored borders.
3280 * scm/stencil.scm (write-system-signature): escape newlines too.
3281 (write-system-signature): use (1,-1) interval for empty interval
3283 2006-01-01 Graham Percival <gpermus@gmail.com>
3285 * Documentation/user/music-glossary.tely: Spanish updates
3286 from Francisco Vila.
3288 * Documentation/user/lilypond-book.itely: addition from
3291 * Documentation/user/ various: edits, small additions
3294 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3296 * GNUmakefile.in (tree-lib-prefix-current):
3297 (tree-share-prefix-current): Use version number in tree, add
3300 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3302 * GNUmakefile.in: write VERSION, again.
3304 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3305 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3307 * stepmake/aclocal.m4: robuster version detection.
3309 * buildscripts/output-distance.py
3310 (ComparisonData.create_html_result_page): copy only if file
3311 exists, fixup src paths.
3313 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3315 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3317 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3318 Another datarootdir reto.
3320 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3321 available. This should be moved to postinstall-lilypond-doc.
3323 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3325 * GNUmakefile.in: simplify local-WWW-post.
3326 remove -type l from find.
3328 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3329 fixes. Don't follow symlinks.
3330 (ComparisonData.create_html_result_page): remove previous results.
3331 insert ../python in path.
3333 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3335 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3337 * config.make.in (datadir): Add datarootdir to silence autoconf.
3339 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3341 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3343 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3345 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3346 slash beams too wide.
3348 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3350 * VERSION: release 2.9.7
3352 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3354 * lily/relocate.cc (read_relocation_dir): Do not blindly
3357 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3359 * lily/parser.yy: replace THIS by PARSER
3361 * Documentation/index.html.in: add link to test-results.html page.
3363 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3365 * scm/translation-functions.scm (format-bass-figure): translate
3366 digits over 10 to the left
3368 * scm/define-markup-commands.scm (translate-scaled): new markup.
3370 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3373 * ly/engraver-init.ly: add Figured_bass_engraver
3375 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3377 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3379 * lily/score-engraver.cc (announce_grob): only note START announces.
3381 * lily/include/engraver-group.hh (Translator_group):
3382 acknowledge_hash_table_ is now drul.
3384 * lily/engraver.cc (announce_end_grob): new method.
3386 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3388 * lily/translator-dispatch-list.cc (create): take start_end argument.
3390 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3391 acknowledge_static_array_ to drul
3393 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3395 * scm/define-grob-interfaces.scm
3396 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3398 * scm/define-grobs.scm (all-grob-descriptions): add
3399 BassFigureAlignmentPositioning
3401 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3402 number stays up to date. Backportme.
3404 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3406 * Documentation/user/basic-notation.itely (Bar lines): Document
3409 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3411 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3413 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3414 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3417 * Resurrect `scons lily' build.
3419 * SConstruct (symlink_tree): Bugfix: link
3420 music-drawing-routines.ps to file iso directory.
3422 * lily/SConscript: Remove kpath-guile from LIBS.
3424 * SConstruct (libdir_package_version): Typo.
3425 (configure): Comment-out fontforge for lack of fontforge.pc .
3426 Also add libdir* to environment.
3428 2006-05-30 Graham Percival <gpermus@gmail.com>
3430 * Documentation/user/ various: minor additions from mailist and
3433 2006-05-30 Paco <fravd@ya.com>
3435 * Documentation/user/music-glossary.tely: numerous corrections and
3436 some new translations.
3438 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3442 * buildscripts/output-distance.py
3443 (ComparisonData.create_html_result_page): new routine: summarise
3444 results in HTML page with images.
3445 (ComparisonData.create_text_result_page): create summary text files too.
3447 * GNUmakefile.in (web-ext): package .signature files too. They
3450 * scm/stencil.scm (write-system-signature): typo.
3452 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3454 * scm/stencil.scm (write-system-signature): better escaping.
3455 only write signature for music systems, not for markup systems.
3457 * scm/framework-ps.scm (output-framework): dump-signatures support
3460 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3462 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3463 for -dno-point-and-click
3465 * lily/grob.cc (get_print_stencil): don't read
3466 point_and_click_global to determine whether to set grob-cause.
3468 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3470 * buildscripts/output-distance.py (main): new function.
3471 (ComparisonData): new class.
3473 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3474 careful with generating new LedgerLineSpanners.
3476 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3478 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3479 context. This fixes double ledger lines in output.
3481 * lily/system.cc (get_paper_system): remove 3 layer limit.
3483 * buildscripts/output-distance.py (SystemLink.distance): new
3484 file. Compare signatures.
3486 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3488 * lily/grob-array.cc (remove_duplicates): rename from
3489 uniq(). Sort before calling uniq() so it actually works.
3491 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3493 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3494 \version from lilypond file snippet.
3495 (Lilypond_file_snippet.ly): oops. typo.
3496 (find_toplevel_snippets): urgh. again.
3498 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3499 prevent duplicated broken items in output.
3501 * scm/framework-eps.scm (output-classic-framework): only dump if
3502 dump-signatures is set.
3504 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3506 * scm/stencil.scm (write-system-signature): new routine: write
3507 python parseable signature of a separate paper system.
3510 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3512 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3516 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3518 * translator-group.cc: send music events to engravers in
3519 non-bottom contexts.
3521 * tuplet-engraver.cc: process tuplet brackets in correct order.
3523 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3525 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3526 arg 2 might point us to a new binary (patch by Karl Hammar)
3528 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3530 * VERSION (PACKAGE_NAME): release 2.9.6
3532 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3534 * Documentation/user/*.itely: 2nd
3535 attempt: replace funindex -> findex globally.
3537 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3539 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3540 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3542 * scm/define-music-display-methods.scm: display methods for
3543 breaks. Fix \applyOutput.
3545 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3547 * Documentation/user/macros.itexi: comment out funindex expansion.
3549 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3552 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3553 Karl Hammar. Backportme.
3555 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3557 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3559 * Documentation/user/programming-interface.itely (Running a
3560 function on all layout objects): idem.
3562 * Documentation/user/introduction.itely (Automated engraving):
3563 update \applyOutput syntax
3565 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3566 remove debugging hook.
3568 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3571 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3573 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3574 TEXI2DVI_FLAGS to texi2dvi invocation.
3576 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3578 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3579 works. More work is done by iterator now, and engraver has been
3580 very much simplified.
3582 * lily/translator-group.cc: try_music is now invoked through a
3585 * lily/*-iterator.cc: Massive cleanups. Junked
3586 try_music_in_children globally. Renamed try_music to report_event,
3587 and made that method descend to a bottom context automatically.
3589 * lily/event-iterator.cc: New file.
3591 * lily/output-property-iterator.cc,
3592 lily/old-lyric-combine-music-iterator.cc: Removed.
3594 * python/convert-rules.py: Modified the syntax for \applyOutput.
3596 2006-05-23 Graham Percival <gpermus@gmail.com>
3598 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3601 * Documentation/user/ various: stuff that might have helped
3602 to fix the pdf creation, plus some minor doc additions.
3604 * Documentation/user/changing-defaults.itely: remove @b from
3605 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3607 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3609 * lily/beaming-pattern.cc (beamify): deal with negative start
3610 moments for beaming patterns.
3612 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3614 * lily/beaming-info.cc (beamify): new function: read beatLength
3615 and beatGrouping from context.
3617 * input/regression/beam-beat-grouping.ly (Module): new file.
3619 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3621 * lily/beam.cc (get_beam_segments): generate events for
3622 max_connect_ case too.
3623 (get_beam_segments): read Stem::max-beam-connect.
3625 * input/regression/beam-single-stem.ly: new file.
3627 * lily/stem.cc (set_beaming): use #f as signaling value for
3630 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3632 * lily/beam.cc (set_beaming): read clip-edges property.
3633 (calc_direction): don't suicide for single stem.
3635 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3636 argument, remove 1<<15 hack. Remove clip_edges()
3638 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3640 2006-05-21 Graham Percival <gpermus@gmail.com>
3642 * Documentation/user/basic-notation.itely: reorg.
3644 * Documentation/user/ various: minor fixes.
3646 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3648 * lily/stencil-expression.cc (register_stencil_head): opps, append
3649 to cdr of static SCM object.
3651 2006-05-19 Graham Percival <gpermus@gmail.com>
3653 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3654 update framework for command index. DOC WRITERS: use @funindex
3655 instead of @cindex @code{}.
3657 * Documentation/user/ various: replace @cindex @code{} => @funindex
3659 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3661 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3662 case positions is set manually.
3664 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3666 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3669 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3671 * Documentation/user/changing-defaults.itely (Contexts explained):
3672 use absolute dimension for @image.
3674 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3675 out image for illustration too.
3676 ($(outdir)/%.png): add more png <-> eps rules.
3678 2006-05-17 Graham Percival <gpermus@gmail.com>
3680 * Documentation/user/ various: remove trailing whitespace, cosmetic
3681 change to reduce changes produced by diff.
3683 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3685 * lily/main.cc (do_chroot_jail): correctness tweak.
3687 * python/lilylib.py (system): import subprocess in system () only.
3689 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3691 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3692 variable. Backportme.
3694 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3696 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3698 2006-05-17 Werner Lemberg <wl@gnu.org>
3700 * lily/lexer.ll (init_signature_has_table): Add
3701 `scm-scm-music-music'.
3703 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3704 (Generic_prefix_music_scm): Add rule for it.
3706 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3707 `quoted-transposition' property.
3709 * ly/music-functions-init.ly (transposedCueDuring): New function.
3711 * scm/define-music-properties.scm (all-music-properties): Updated.
3713 * Documenation/topdocs/NEWS.itely: Document it.
3715 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3717 * python/lilylib.py (system): move import subprocess to system()
3720 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3722 * VERSION (PATCH_LEVEL): release 2.9.5
3724 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3727 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3729 2006-05-16 Graham Percival <gpermus@gmail.com>
3731 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3733 * Documentation/user/ various: minor fixes.
3735 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3737 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3739 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3741 * Documentation/user/advanced-notation.itely (Instrument names):
3742 Modified obsolete instruction on how to move instrument names away
3743 from the staves. Hmm, at second thought the bug probably has been
3744 solved, so the full bug description should probably be removed.
3746 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3748 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3749 currentCommandColumn.
3751 * lily/hairpin.cc (print): also add padding for non-neighbor
3754 * scm/define-context-properties.scm
3755 (all-user-translation-properties): add hairpinToBarline
3757 * input/regression/hairpin-to-barline.ly: new file.
3759 * lily/context.cc (internal_send_stream_event): thinko fix.
3761 * lily/tie.cc (set_default_control_points): robustness fix.
3763 * python/musicxml.py (Part.interpret): don't complain about
3764 incomplete measures.
3766 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3767 new music if last_event_chord() returned None.
3769 * python/musicxml.py (Part.interpret): skip back over chord notes.
3771 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3773 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3774 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3775 lily/slash-repeat-engraver.cc,
3776 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3777 iterator sends PercentEvents
3779 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3780 rework tuplets: send start/stop events to engraver
3782 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3783 dispatchers event-source and events-below to Context
3785 2006-05-15 Graham Percival <gpermus@gmail.com>
3787 * Documentation/user/README.txt: update info for doc writers.
3789 * Documentation/user/programming-interface.itely: integrate
3790 Nicolas' fixes for chapter rewrite.
3792 * Documentation/user/ various: minor fixes.
3794 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3796 * lily/clef-engraver.cc: cleanup.
3798 * Documentation/user/GNUmakefile: dist context-example.eps too.
3800 * lily/key-engraver.cc (create_key): use
3801 explicitKeySignatureVisibility for cancellation too.
3803 * lily/font-config.cc (init_fontconfig): don't close file if
3806 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3808 * Documentation/topdocs/NEWS.tely: niente and rotation news
3810 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3812 * lily/include/stencil.hh
3813 * lily/stencil.cc (rotate): new function. Makes it possible
3814 to rotate a stencil around a given offset.
3816 * lily/grob.cc (get_print_stencil): add rotation support
3818 * lily/stencil-interpret.cc (interpret_stencil_expression):
3819 add rotation support
3821 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3823 * scm/define-grob-properties.scm: add 'rotation property
3825 * scm/define-markup-commands.scm: add rotate markup command
3827 * scm/output-ps.scm: add rotation support in PostScript backend
3829 * scm/output-svg.scm: add rotation support in SVG backend
3831 2006-05-13 Graham Percival <gpermus@gmail.com>
3833 * Documentation/user/music-glossary.itely: French correction.
3835 * Documentation/user/programming-interface.itely: major
3836 new docs, some reorg, some info from Nicolas.
3838 * Documentation/user/ various: small fixes.
3840 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3842 * Documentation/user/programming-interface.itely (Markup
3843 programmer interface): Remove duplicate text.
3845 2006-05-12 Graham Percival <gpermus@gmail.com>
3847 * Documentation/user/context-example.eps: new file.
3849 * Documentation/user/changing-defaults.itely: set up file to
3852 * Documentation/user/programming-interface.itely: changes
3855 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3857 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3859 2006-05-11 Graham Percival <gpermus@gmail.com>
3861 * Documentation/user/programming-interface.itely: first round of
3862 editing and merging emails from Nicolas.
3864 * Documentation/user/scheme-tutorial: minor edit.
3866 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3868 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3870 (Xml_node.message): use it.
3872 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3873 oops. Add duration argument.
3875 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3877 * lily/paper-column-engraver.cc (make_columns):
3878 * scm/define-grobs.scm: Revert my previous change and set the default
3879 in define-grobs.scm instead.
3881 2006-05-09 Graham Percival <gpermus@gmail.com>
3883 * Documentation/user/changing-defaults.itely: general editing,
3884 info about \set and \override.
3886 * Documentation/user/tweaking.itely, advanced-notation.itely:
3887 fixes from Dave Luttinen, thanks!
3889 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3891 * lily/paper-column-engraver.cc (make_columns): By default, a column
3892 needs to be breakable.
3894 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3896 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3898 (musicxml_time_to_lily): idem
3899 (musicxml_key_to_lily): idem
3900 (instrument_drumtype_dict): dict for supported drumtypes.
3901 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3902 moments and pending mm rests
3903 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3904 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3905 (musicxml_voice_to_lily_voice): add mode change.
3906 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3907 speed and less memory usage (factor 5 to 10).
3908 (convert): write -defs.ly and driver file separately so people
3909 can script their own part extraction.
3911 * python/musicxml.py (minidom_demarshal_node): new function:
3912 separate minidom handling.
3913 (lxml_demarshal_node): new function: support lxml.etree too.
3914 (Xml_node.message): new function: verbose error message, with XML
3915 path to offending node.
3916 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3917 (Part_list.generate_id_instrument_dict): new method: collect
3918 instrument names, to be able to set drum_type.
3919 (Part.interpret): handle underfull measures
3920 (Part.interpret): assign instrument names.
3922 * python/musicexp.py (Output_printer.close): new method
3923 (MusicWrapper.print_ly): new class: support other modes,
3925 (BarCheck.print_ly): new class. Support bar checks, with comments
3926 and fancy barchecks.
3927 (NoteEvent.__init__): also set drum_type for drum notes.
3928 (MultiMeasureRest.lisp_expression): dump mm rests.
3930 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3931 line-break-permission if forbidBreak is not set.
3933 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3935 * scm/define-context-properties.scm:
3936 * scm/define-grob-properties.scm:
3937 * scm/define-grobs.scm:
3938 * scm/define-music-display-methods.scm:
3939 * scm/define-music-properties.scm:
3940 * scm/define-music-types.scm:
3941 * scm/music-functions.scm:
3942 * ly/declarations-init.ly:
3943 * lily/include/constrained-breaking.hh:
3945 * lily/spaceable-grob.cc:
3946 * lily/simple-spacer.cc:
3947 * lily/paper-score.cc:
3948 * lily/paper-column.cc:
3949 * lily/paper-column-engraver.cc:
3951 * lily/gourlay-breaking.cc:
3952 * lily/constrained-breaking.cc:
3953 * python/convertrules.py:
3954 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3955 "page-break-penalty" and "line-break-permission".
3956 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3957 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3959 * lily/bar-engraver.cc:
3960 * lily/beam-engraver.cc:
3961 * lily/forbid-break-engraver.cc:
3962 * lily/ligature-engraver.cc:
3963 * lily/paper-column-engraver.cc:
3964 * lily/percent-repeat-engraver.cc:
3965 * lily/score-engraver.cc:
3966 * lily/score-engraver.hh:
3967 * lily/paper-column-engraver.hh:
3968 Inter-engraver communication regarding line breaks is done through context
3969 properties (Score.forbidBreak) instead of function calls.
3971 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3973 * VERSION (PACKAGE_NAME): release 2.9.4
3975 2006-05-08 Graham Percival <gpermus@gmail.com>
3977 * Documentation/user/working.itely: proofreading from Dave
3980 * Doucmentation/user/README.txt: updated with manual style info.
3982 * Documentation/user/ various: trim linewidth to 78 chars.
3984 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3986 * scm/define-grob-properties.scm (all-internal-grob-properties):
3987 remove chord-tremolo property.
3989 * lily/beam.cc (get_beam_segments): don't use stem position as
3990 base for broken ends.
3992 2006-05-06 Graham Percival <gpermus@gmail.com>
3994 * Documentation/user/putting.itely: proofreading from Dave
3997 * Documentation/user/ various: more reorg and clarifications.
3999 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4001 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4003 * ly/music-functions-init.ly: new function featherDurations
4005 * lily/beam.cc: read grow-direction for feathered beaming.
4007 * Documentation/topdocs/NEWS.tely (Top): typo.
4009 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4011 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4014 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4015 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4016 used by music streams.
4018 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4019 lily/stream-event.cc, lily/stream-event-scheme.cc,
4020 lily/listener.cc, lily/scheme-listener.cc,
4021 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4022 lily/include/stream-event.hh, lily/include/listener.hh,
4023 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4024 Created data structures for music streams.
4026 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4028 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4029 construction of a beam.
4032 * flower/include/std-vector.hh (default_compare): use only one comparison.
4034 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4035 (note-by-number): further attachment fixes.
4037 * scm/lily-library.scm (ordered-cons): new function.
4038 (interval-index): new function
4040 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4042 * lily/note-head.cc (get_stem_attachment): new function.
4044 * scm/define-markup-commands.scm (note-by-number): read 'style
4047 * input/regression/markup-note.ly: show note-head style option.
4049 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4052 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4054 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4056 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4058 * lily/include/constrained-breaking.hh: GCC 4 fix.
4060 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4062 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4063 Replace it with functions get_line_forces and get_line_configuration.
4064 (class Simple_spacer): Make data private.
4065 Rewrite compression algorithm to be faster and simpler.
4067 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4068 * lily/gourlay-breaking.cc (solve):
4069 * lily/constrained_breaking.cc (space_line):
4070 Change it to the new simple-spacer code.
4072 * lily/paper-score.cc (get_paper_systems):
4075 Delay breaking the systems until they are requested.
4076 (find_break_indices):
4077 Use vsize for indices.
4079 Move the "Calculating line breaks" message here.
4081 * lily/system.cc (pre_processing):
4082 Move the "Calculating line breaks" message away from here.
4083 (break_into_pieces):
4084 Allow multiple calls to this function in sequence (with touching-but-
4085 not-overlapping breakpoints).
4087 * lily/constrained-breaking.cc:
4088 Replace most of the get_XXXX functions with get_line_details.
4089 Only calculate the force for each line. Calculate configurations only
4090 for the lines we will actually use.
4091 Replace cols_ with lines_.
4093 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4095 * mf/GNUmakefile (depth): remove FC_FIND.
4097 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4099 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4101 * scm/framework-ps.scm (write-preamble): new function.
4102 (write-preamble): load mac fonts via fondu, even if gs-font-load
4105 2006-05-03 Werner Lemberg <wl@gnu.org>
4107 * mf/GNUmakefile (FC_FIND): Fix typo.
4109 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4111 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4113 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4115 * stepmake/aclocal.m4: run python-config for crosscompiling
4118 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4119 -f png for HTML, TEXINFO formats.
4121 * input/tutorial/lbook-html-test.html: new file.
4123 * lily/include/tie-formatting-problem.hh (class
4124 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4125 [column, direction]. This fixes laissez vibrer ties.
4127 * flower/include/tuple.hh (struct Tuple2): new file.
4129 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4130 $(FCMATCH), only if $(NCSB_DIR) not set.
4132 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4134 * config.make.in (DOCUMENTATION): set FCMATCH.
4136 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4138 2006-05-03 Graham Percival <gpermus@gmail.com>
4140 * Documentation/user/ various: final round of reorg.
4142 * Documentation/user/instrument-notation.itely: some more
4143 fixes from Eduardo, thanks!
4145 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4147 * VERSION (PACKAGE_NAME): release 2.9.3
4149 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4151 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4153 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4155 * scm/define-grob-properties.scm (all-user-grob-properties):
4156 Correct typo, thanks to Eduardo.
4158 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4160 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4162 * buildscripts/lilypond-words.py (F): indent fix.
4164 * input/regression/tie-arpeggio-collision.ly: new file.
4166 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4167 function: store outlines per column rank.
4169 * lily/include/tie-configuration.hh (class Tie_configuration): add
4170 column_ranks_ to specification and configuration, to distinguish
4171 between ties for different heads in arpegiated chords.
4173 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4175 * *.py: more 4 space indents.
4177 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4179 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4181 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4183 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4185 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4187 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4189 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4191 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4193 * python/convertrules.py (conv): indent 4 for python files.
4195 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4197 * Documentation/user/changing-defaults.itely (Creating contexts):
4198 Clarify \new semantics.
4200 2006-04-28 Graham Percival <gpermus@gmail.com>
4202 * Documentation/user/ various: major new sections in the
4203 Learning manual, slight reorg elsewhere.
4205 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4207 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4209 * scm/framework-ps.scm (output-framework): remove PageMedia
4211 2006-04-27 Graham Percival <gpermus@gmail.com>
4213 * Documentation/user/ tweaks.itely, working.itely: new
4214 files, being more advanced "learning manual" chapters.
4216 * Documentation/user/ tutorial, putting, lilypond: reorg.
4218 2006-04-26 Graham Percival <gpermus@gmail.com>
4220 * input/regression/lyric-combine-polyphonic.ly: fixed test
4221 (no more "can't find context `one'" error).
4223 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4225 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4227 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4229 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4231 * lily/relocate.cc (read_relocation_dir): new function.
4233 2006-04-26 Graham Percival <gpermus@gmail.com>
4235 * Documentation/user/instrument-notation.itely: a few more fixes
4236 from Eduardo, thanks!
4238 * Documentation/user/README.txt: new file; contains info on
4239 style that used to be in lilypond.tely.
4241 * Documentation/user/ various: first round of doc reorg.
4243 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4244 graphic; this probably causes problems on some pdf
4245 viewers, notably Adobe Acrobat.
4247 2006-04-24 Graham Percival <gpermus@gmail.com>
4249 * Documentation/user/instrument-notation.itely: many alterations
4250 to Vocal music, from Eduardo Viera.
4252 2006-04-23 Graham Percival <gpermus@gmail.com>
4254 * Documentation/user/instrument-notation.itely: fix \new
4255 instead of \context problem.
4257 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4259 * lily/relocate.cc (expand_environment_variables): new function.
4261 (read_relocation_file): id.
4263 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4265 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4267 * ly/engraver-init.ly: remove old comments from TabVoice
4269 2006-04-20 Graham Percival <gpermus@gmail.com>
4271 * Documentation/user/instrument-notation.itely: added Erlend's
4272 latest doc patch, thanks!
4274 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4276 * lily/include/slur.hh:
4278 * lily/phrasing-slur-engraver.cc:
4279 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4280 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4281 Slur_engraver:: and putting it in
4282 Slur::auxiliary_acknowledge_extra_object ().
4284 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4286 * lily/note-collision.cc: fix a comment
4288 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4290 * stepmake/bin/add-html-footer.py: fix footer position in
4291 generated html files: before </body> and </html> tags.
4293 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4295 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4296 Earlier successive `make' commands finally compiled ok.
4298 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4300 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4302 * lily/include/stem-tremolo.hh:
4303 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4307 * lily/include/lookup.hh: add rotated_box ()
4309 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4311 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4312 been generated. Fixes "can't get `--help'" bug after make clean.
4314 * THANKS: alphabetize contributors.
4316 2006-04-17 Graham Percival <gpermus@gmail.com>
4318 * Documentation/user/instrument-notation.itely: added Erlend's
4319 tabs and banjo doc patch. Thanks!
4321 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4323 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4325 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4327 * scm/output-lib.scm: add some more predefined string tunings.
4329 * Documentation/user/instrument-notation.itely: and doc them.
4331 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4333 * ly/engraver.ly: Remove obsolete comments.
4335 * ly/gregorian-init.ly: Define default layout block.
4337 * input/puer-fragment.ly: Updated and extended.
4339 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4341 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4342 pdf conversion behaviour.
4344 * flower/file-name.cc (dir_name)
4345 (get_working_directory): Move from relocate.cc.
4347 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4349 * lily/relocate.cc: Encapsulate sys/stat.h in
4352 2006-04-14 Graham Percival <gpermus@gmail.com>
4354 * Documentation/user/ various: small updates from Cameron
4355 and Juergen, thanks!
4357 * Documentation/user/ various: small updates of my own.
4359 * THANKS: 2.7 -> 2.8.
4361 2006-04-11 Graham Percival <gpermus@gmail.com>
4363 * scm/define-context-properties.scm: typo.
4365 * Documentation/user/ : many more small updates.
4367 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4369 * scm/define-music-types.scm: disposed "docme".
4371 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4373 * lily/hairpin.cc: make niente circles a bit smaller.
4375 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4377 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4378 get-pfa and get-*-fonts targets.
4380 2006-04-10 Graham Percival <gpermus@gmail.com>
4382 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4383 music-glossary, programming-interface: more minor fixes
4386 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4388 * scm/define-context-properties.scm: another old \property update.
4389 This time tested for compiling!
4391 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4393 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4395 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4397 * scm/define-context-properties.scm (all-user-translation-properties):
4398 * Documentation/user/global.itely (Page formatting): Compile fix.
4400 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4402 * Documentation/user/advanced-notation.itely (Polymetric
4403 notation): Update the example to use the "+" symbol and add link
4404 to input/test/compound-time.ly.
4406 2006-04-08 Graham Percival <gpermus@gmail.com>
4408 * scm/define-grob-properties.scm: clarify docs for #'direction.
4410 * scm/define-context-properties.scm: update old \property override.
4412 * Documentation/user/ advanced-notation, global, lilypond-book:
4413 more minor doc updates.
4415 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4417 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4419 * scm/backend-library.scm (search-gs): oops.
4421 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4423 * scripts/lilypond-book.py (output): use base, not filename for href.
4425 * scm/backend-library.scm: only look for gs.
4427 * scripts/lilypond-book.py (output): fix printfilename.
4429 * lily/parser.yy (music_function_musicless_prefix): fold together
4430 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4432 * lily/slur.cc (print): only set font-size if not set yet.
4434 * lily/slur-configuration.cc (add_score): improved layout of debug
4437 2006-04-05 David Feuer <David.Feuer@gmail.com>
4439 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4440 (draw_circle): Hopefully fixed regression.
4441 Improved documentation for several procedures.
4443 2006-03-04 Werner Lemberg <wl@gnu.org>
4445 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4447 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4449 * scripts/musicxml2ly.py (bindir): add dynamic
4452 2006-04-04 Graham Percival <gpermus@gmail.com>
4454 * Documentation/user/ basic-notation, advanced-notation, putting,
4455 instrument-notation, invoking, lilypond, THANKS: another ream of small
4456 fixes from the Doc Helpers.
4458 2006-04-03 David Feuer <David.Feuer@gmail.com>
4460 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4462 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4464 * Cleaned up interfaces between PostScript and Scheme, and moved
4465 computations from PostScript to Scheme:
4467 * music-drawing-routines.ps
4468 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4469 with stroke_and_fill throughout.
4470 (euclidean_length, print_letter, draw_box): Deleted unused
4471 procedures. If someone needs draw_box, implement it using
4472 draw_round_box; don't duplicate code.
4473 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4474 Refactored/cleaned up interfaces.
4477 * output-ps.scm: reordered arguments to PostScript functions to
4478 match new interfaces
4479 (glyph-string): Rewrote glyph-string.
4480 (grob-cause): Replaced string-append with format.
4481 (repeat-slash): Rewrote to do computation here.
4482 (round-filled-box): Rewrote to do computation here.
4484 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4486 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4488 * stepmake/stepmake/toplevel- targets.make: print help info about
4491 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4493 * input/regression/hairpin-circled.ly: new file
4495 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4497 * lily/hairpin.cc (print): add support for circled tip
4499 * scm/define-grob-properties.scm: add circled-tip parameter
4501 * scm/define-grobs.scm: init circled-tip to false
4503 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4505 * scm/music-functions.scm (quote-substitute): set
4508 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4510 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4513 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4515 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4517 2006-03-31 David Feuer <david.feuer@gmail.com>
4519 * scm/framework-ps.scm:
4521 * scm/output-ps.scm: glyph-string now produces smaller, more
4522 readable, and probably faster PostScript. Several findfont
4523 scalefont setfont instances changed to selectfont
4524 Hacked-up string-appends changed to formats.
4526 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4528 2006-03-30 Graham Percival <gpermus@gmail.com>
4530 * scm/lily-library.scm: make "no version" warning message more polite.
4532 * lily/music.cc: add double quotes to failed octave check.
4534 * Documentation/user/ advanced-notation, changing-defaults,
4535 instrument-notation, invoking, music-glossary: whole bunch of minor
4538 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4540 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4541 $(buildscriptdir) iso. depth.
4543 * VERSION (PACKAGE_NAME): release 2.9.1
4545 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4547 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4549 * VERSION (PATCH_LEVEL): bump version number.
4551 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4554 * lily/pango-font.cc (pango_item_string_stencil): use
4557 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4558 $(outdir)/emmentaler-%.svg): remove canary.
4560 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4561 glyphnames if we have a ttf font.
4563 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4565 * Documentation/user/advanced-notation.itely (Font selection):
4566 Corrected reference to the font-family-override.ly example.
4568 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4570 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4571 stem-tremolo object in the stem (or else the stem might not be
4574 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4576 * lily/ttf.cc (print_trailer): only print existing glyphs.
4578 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4580 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4581 position the tremolo based on the position of the notehead.
4583 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4584 notes and update the texidoc line with the new positioning rules.
4586 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4588 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4590 * scripts/lilypond-book.py (Module): set default for linewidth if
4593 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4595 * VERSION (PACKAGE_NAME): release 2.9.0.
4597 * input/regression/stem-tremolo-position.ly: new file.
4599 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4601 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4603 * lily/stem-tremolo.cc (print): position
4604 the tremolo depending only on the end of the stem
4605 and not on the notehead
4606 (raw_stencil): center, on the middle staff line, the
4607 flag that is closest to the end of the stem (previously
4609 (calc_width): add this callback to shorten a tremolo when
4610 it is beamed or it is stemup with a flag
4611 (style): add this callback to make a tremolo rectangular when
4612 it is beamed or it is stemup with a flag
4613 (rotated_box): this is like Lookup::beam but makes a rotated
4614 rectangle instead of a parallelogram
4616 * lily/stem.cc (calc_stem_info): make sure the stem
4617 is long enough to fit the tremolo
4618 (calc-length): reduce the length of tremolo stems since the
4619 tremolo code is now capable of better positioning
4621 * scm/define-grobs.scm: make calc_width the default beam-width
4622 callback for stem-tremolo and add the style callback
4624 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4626 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4629 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4631 * lily/ttf.cc (make_index_to_charcode_map): restore old
4634 2006-03-28 Werner Lemberg <wl@gnu.org>
4636 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4638 2006-03-28 Graham Percival <gpermus@gmail.com>
4640 * THANKS: update for 2.9, add section for Documentation helpers.
4642 * Documentation/topdocs/NEWS.tely: compile fix.
4644 * Documentation/user/ basic-notation, global, advanced-notation,
4645 examples.itely: minor fixes from mailist.
4647 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4649 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4652 * lily/ttf.cc (print_trailer): use it.
4654 * lily/pango-font.cc (get_unicode_name): new function.
4656 * lily/ttf.cc (make_index_to_charcode_map): move function from
4658 (print_trailer): substitute uniXXXX name if applicable.
4660 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4661 (pango_item_string_stencil): use it to generate uniXXXX names.
4663 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4664 note heads, for uniform widths in shape note output.
4665 (overdone_heads): hmm. remove them again.
4667 * scripts/lilypond-book.py (output): add links to filenames.
4669 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4671 * lily/note-collision.cc (get_clash_groups): only consider when
4672 Note_column::dir <> CENTER.
4674 * scripts/lilypond-book.py (get_option_parser): init output_name
4677 2006-03-24 Graham Percival <gpermus@gmail.com>
4679 * Documentation/topdocs/NEWS.tely: add @end itemize
4681 * Documentation/user/ global, advanced-notation: minor
4684 2006-03-23 Graham Percival <gpermus@gmail.com>
4686 * Documentation/user/ lilypond.tely, music-glossary,
4687 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4689 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4691 * mf/GNUmakefile: don't install .enc files.
4693 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4695 * VERSION (PATCH_LEVEL): bump to 2.9.0
4697 2006-03-22 Graham Percival <gpermus@gmail.com>
4699 * Documentation/user/advanced-notation.itely: minor fixes
4702 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4704 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4706 * branch lilypond_2_8
4708 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4710 * scripts/lilypond-book.py (samefile): new function, for windoze
4713 2006-03-21 Graham Percival <gpermus@gmail.com>
4715 * ly/engraver-init.ly: add info about StaffGroup.
4717 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4719 * input/regression/stem-direction-context.ly: idem.
4721 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4725 * input/regression/page-layout-twopass.ly: comment out \markup so
4728 * lily/instrument-name-engraver.cc (finalize): add to instrument
4729 name global System. This also fixes chopped instrument names, but
4730 doesn't crash when there are slurs/beams.
4732 * lily/slur-configuration.cc (add_score): disallow negative slur
4735 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4737 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4739 * lily/instrument-name-engraver.cc (process_music): kludge: add
4740 InstrumentName spanner to axis group of left bound. Fixes chopped
4741 off instrument names in EPS images.
4743 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4745 * scripts/abc2ly.py (option_parser): update to 2.7.40
4747 2006-03-20 Graham Percival <gpermus@gmail.com>
4749 * THANKS: move small doc contributors to SUGGESTIONS.
4751 * Documentation/user/ basic-notation, advanced-notation,
4752 global: small changes from mailist.
4754 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4756 * Documentation/user/advanced-notation.itely (Text marks): update
4757 for new rehearsalMarkAlignSymbol convention.
4759 * VERSION (PATCH_LEVEL): bump version.
4761 * input/test/instrument-name-align.ly: new file.
4763 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4765 * input/test/instrument-name-align.ly: new file. Document how to
4766 align instrument names.
4768 * lily/mark-engraver.cc: remove properties.
4770 * scm/define-context-properties.scm
4771 (all-user-translation-properties): remove align symbol properties
4772 for barnumber/reh. mark.
4774 * lily/break-align-interface.cc (self_align_callback): new
4775 interface, new function. Look at complete alignment. This handles
4776 tunable break alignments in case break-align-symbols are missing.
4778 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4780 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4782 * python/convertrules.py (conv): mark/bar number alignment rule.
4784 * lily/break-align-interface.cc (calc_positioning_done): also
4785 store offset from last visible break-alignment to its
4786 neighbor. This makes alignment on non-visible objects more reliable.
4788 * po/lilypond.pot (Module): ran po-replace.
4790 * input/regression/tie-single-manual.ly (Module): new file.
4792 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4793 look at has_manual_position_.
4794 (from_ties): set has_manual_position_ if tie has staff-position set.
4796 * lily/tuplet-bracket.cc (calc_positions): idem.
4798 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4801 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4803 * scm/define-markup-commands.scm (smallCaps): new markup command
4804 for turning a text to small caps using smaller font size and upper
4807 2006-03-17 Graham Percival <gpermus@gmail.com>
4809 * Documentation/user/ examples, instrument-notation,
4810 advnaced-notation: minor fixes from mailist.
4812 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4814 * Documentation/user/tutorial.itely (First steps): change example
4817 2006-03-17 Graham Percival <gpermus@gmail.com>
4819 * Documentation/user/ examples, advanced: minor changes from mailist.
4821 * THANKS: add Geoff Horton, for documentation stuff.
4823 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4825 * python/lilylib.py (system): revert have_select kludge.
4827 * Documentation/user/tutorial.itely (Commenting input files):
4828 update version numbers in doc.
4830 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4831 bound-padding to multi-measure-interface
4833 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4835 * input/test/engraver-example.ily: update version number.
4837 * VERSION (PACKAGE_NAME): release 2.7.39
4839 * lily/note-spacing.cc (get_spacing): heighten threshold where
4840 accidentals/arpeggios influence previous spacing fully.
4842 * lily/rest.cc (y_offset_callback): only use direction if
4843 staff-position wasn't set before.
4845 * lily/bar-number-engraver.cc: add support for
4846 barNumberAlignSymbol.
4847 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4849 * lily/pointer-group-interface.cc (set_ordered): new function.
4850 (add_unordered_grob): new function.
4852 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4853 to ordered, unless the opposite has been proved. This fixes
4854 random reordering of large object groups across linebreaks,
4857 * lily/main.cc (do_chroot_jail): printf format fix.
4859 * lily/tie-formatting-problem.cc (generate_configuration):
4860 multiply y-shift for dot with direction.
4862 * scm/define-markup-commands.scm (note-by-number): put (magstep
4863 size) in y-attach too.
4865 * Documentation/topdocs/NEWS.tely (Top): show override.
4867 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4868 direction for stems.
4870 2006-03-15 Graham Percival <gpermus@gmail.com>
4872 * Documentation/user/ changing-defaults, global: minor
4875 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4877 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4879 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4880 breakable items after uniformly stretched notes.
4882 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4883 outline with outer edge of note heads. This prevents infinity
4884 problems with tied whole notes.
4886 * scripts/lilypond-book.py (do_file): use os.popen
4888 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4890 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4892 * Documentation/user/invoking.itely: Add ragged-right to bug report
4895 2006-03-14 Graham Percival <gpermus@gmail.com>
4897 * Documentation/user/global.itely: small fix from mailist.
4899 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4901 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4902 file descriptor returned by tempfile.mkstemp() when writing
4903 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4906 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4908 * po/fi.po: newline bugfix.
4910 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4912 * scm/paper.scm (paper-alist): Rounding fixes.
4914 2006-03-13 Graham Percival <gpermus@gmail.com>
4916 * Documentation/user/ changing-defaults, instrument-notation,
4917 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4919 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4923 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4925 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4928 * python/lilylib.py (print_environment): move ps_page_count to
4931 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4933 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4935 * scm/framework-ps.scm (embed-document): new function. Use to
4938 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4940 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4942 * Documentation/user/instrument-notation.itely (Setting simple
4943 songs): Added \book{...} around the full example, so the separate
4944 markups are included in the printed example.
4946 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4948 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4951 * python/lilylib.py (system): rewrite system() using
4952 subprocess. Remove >& redirection trickery.
4954 2006-03-11 Graham Percival <gpermus@gmail.com>
4956 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4957 notation-appendices.itely: minor fixes from mailist.
4959 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4961 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4962 unsplit man also needs images.
4964 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4966 * VERSION (PACKAGE_NAME): 2.7.38 released.
4968 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4970 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4973 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4975 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4976 respects the Score.skipTypesetting property.
4978 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4980 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4981 Prolog. No %%EOF after CFF file.
4983 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4985 * lily/constrained-breaking.cc (get_max_systems): used to return a
4987 (combine_demerits): use pointers to reduce copying data
4988 (calc_subproblem): idem
4989 (get_page_penalty): add page turn penalties
4991 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4993 * Documentation/user/invoking.itely (Invoking lilypond): better
4994 explanation of -e usage.
4996 * lily/main.cc (main_with_guile): don't append to
4997 init_scheme_code_string
4999 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5001 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5003 * scripts/convert-ly.py (do_options): don't print help for
5006 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5007 @code and @example. Update from texinfo.tex from CVS.
5009 2006-03-08 Graham Percival <gpermus@gmail.com>
5011 * Documentation/user/scheme-tutorial.itely: clarifies distances
5012 measured in staff-spaces.
5014 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5016 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5017 consider[k] is true.
5019 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5021 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5022 consider columns that have originals. Unifies spacing for mm
5023 rests around line breaks.
5025 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5026 (set_text_rods): idem.
5027 (calculate_spacing_rods): new function: share code between
5028 set_text_rods and set_spacing_rods.
5029 (set_text_rods): take extents of bounds into account.
5031 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5033 * Documentation/user/basic-notation.itely (Writing music in
5034 parallel): don't use relative.
5036 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5038 * ly/music-functions-init.ly (Module): add shiftDurations
5040 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5042 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5044 * ly/engraver-init.ly: init vocalName to nil.
5046 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5048 * scm/music-functions.scm (music->make-music): bugfix,
5049 KeyChangeEvents are now handled correctly.
5051 * scripts/lilypond-book.py: Add --debug option.
5053 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5055 * python/lilylib.py: add tempfile.
5057 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5059 * VERSION (PACKAGE_NAME): release 2.7.37
5061 * python/lilylib.py (ps_page_count): remove make_ps_images().
5062 (ps_page_count): remove mkdir_p
5063 (system): remove cleanup_temp.
5064 (exit): remove lilypond_version_(check)
5065 (error_log): remove pseudo_filter_p
5070 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5073 * lily/accidental-engraver.cc (make_standard_accidental): only add
5074 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5076 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5077 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5078 Make incompatibilities.
5080 * scm/output-ps.scm (grob-cause): replace backslashes by /
5081 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5083 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5085 * cygwin/GNUmakefile: Install fixes.
5087 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5089 * lily/note-head.cc (head::get_balltype): Compile fix.
5091 * flower/file-name.cc (dos_to_posix): Flower string fix.
5093 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5095 * python/lilylib.py: pychecker cleanups.
5097 * scripts/lilypond-book.py
5098 (Lilypond_snippet.output_print_filename): pychecker cleanups
5100 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5102 * python/lilylib.py (underscore): remove identify() , warranty()
5104 * ps/music-drawing-routines.ps: change Border routine for GSView
5107 * lily/stem.cc (height): use quantize-positions. This triggers
5108 set_stem_lengths, so scripts on beamed stems are handled correctly.
5110 * lily/side-position-interface.cc (aligned_side): check if edges
5111 of script are inside staff. Fixes accent of edge of the staff.
5113 * input/regression/staccato-pos.ly: more examples.
5115 * stepmake/aclocal.m4 (depth): fix bashism.
5117 * lily/lyric-combine-music-iterator.cc: move from
5118 new-lyric-combine-iterator.cc
5119 (process): add pending_grace_lyric_ member to delay lyrics on
5122 * lily/system-start-text.cc (print): suicide if we don't have any
5123 elements. Fixes hara kiri'd instrument names.
5125 * scripts/mup2ly.py (Module): remove.
5127 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5129 * Documentation/user/global.itely (A single music expression):
5130 close @lilypond properly
5132 * lily/volta-bracket.cc (modify_edge_height): change from
5133 after_line_breaking_callback. Suicide last bracket if appropriate.
5135 * python/lilylib.py: strip getopt support
5137 * scripts/etf2ly.py (do_options): use optparse
5139 * scripts/midi2ly.py: optparse, strip lilylib copy.
5141 * scripts/abc2ly.py (voices): use optparse.
5143 * stepmake/stepmake/generic-vars.make: new function absdir.
5145 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5147 * scripts/lilypond-book.py (find_file): use global_options for
5150 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5153 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5155 * python/lilylib.py (get_global_option): ughness for extracting
5156 global options from lilylib.
5157 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5159 * scripts/lilypond-book.py (get_option_parser): use optparse for
5160 option handling. Put options in global_options variable.
5162 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5164 * Documentation/index.html.in: clarify.
5166 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5168 * scm/layout-page-layout.scm (write-page-breaks): add a
5169 music-system-heights property to the page layout output.
5171 * scm/page.scm (make-page-stencil): take footer into account when
5172 computing the 'space-left page property
5173 (annotate-space-left): take footer into account when annonating
5176 2006-02-28 Graham Percival <gpermus@gmail.com>
5178 * Documentation/user/ advanced-notation, global: more (final)
5179 docs for music expressions, removed special fermatas.
5181 2006-02-27 Graham Percival <gpermus@gmail.com>
5183 * Documentation/user/ basic-notation, global: minor changes
5186 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5188 * scm/framework-ps.scm:
5189 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5190 layer for inf? and nan? from framework-ps to lily-library.
5192 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5194 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5195 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5197 * buildscripts/substitute-encoding.py (Module): remove file.
5199 * mf/GNUmakefile: more PFA strippage.
5201 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5203 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5206 * scm/framework-ps.scm: remove font name munging.
5208 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5210 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5212 * scm/markup.scm (define-markup-command): change
5213 def-markup-command to define-markup-command
5215 * scm/music-functions.scm (define-music-function): change
5216 def-music-function to define-music-function.
5218 * python/convertrules.py (conv): rules for def-music-function
5219 and def-markup-commands
5221 * Documentation/user/programming-interface.itely,
5222 input/no-notation/display-lily-tests.ly,
5223 input/regression/lily-in-scheme.ly,
5224 input/regression/markup-user.ly,
5225 input/regression/music-function.ly, input/regression/tie-chord.ly,
5226 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5227 ly/gregorian-init.ly: use new macro names (define-music-function,
5228 define-markup-command).
5230 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5232 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5233 (output): add comments to lp-book latex output.
5235 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5238 2006-02-23 Graham Percival <gpermus@gmail.com>
5240 * Documentation/user/ tutorial, global: minor changes.
5242 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5244 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5245 blocks (for make 3.80)
5247 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5248 \notemode so that user should not have to explicitely type it.
5250 * scm/define-music-display-methods.scm: various
5251 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5254 * input/no-notation/display-lily-tests.ly: new tests for
5255 \applyOutput and \applyContext
5257 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5259 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5260 changed it slightly so that the number of systems returned by
5261 solve () will be the same as the last value passed to resize
5262 (). I've also added more documentation, removed casts, fixed style
5263 problems and put in some recovery if constraints aren't satisfied."
5265 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5267 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5268 for emacs < 22 compatibility.
5269 (count-rexp): Use it.
5270 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5271 substring juggling (Milan Zamazal).
5273 2006-02-23 Graham Percival <gpermus@gmail.com>
5275 * Documentation/user/ basic-notation, advanced-notation,
5276 global.itely, invoking.itely, tutorial,itely:
5277 minor fixes from mailist.
5279 * scm/define-markup-commands.scm: improve docs of \filled-box.
5281 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5283 * Documentation/index.html.in: changes concern the previous release.
5285 * input/regression/+.ly: cultivate typographical terminology.
5287 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5289 * scm/define-grob-interfaces.scm (parentheses-interface): add
5290 padding to parentheses-interface.
5292 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5293 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5295 * VERSION (PATCH_LEVEL): release 2.7.36
5297 * lily/slur.cc: add avoid-slur (ugh.)
5299 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5300 intersection gets smaller. This fixes slurs over extreme points.
5302 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5303 stems with neutral-direction set.
5305 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5307 * lily/open-type-font.cc (load_table): format error.
5309 * lily/change-iterator.cc (process): format fix.
5311 * flower/include/international.hh (_f): idem.
5313 * flower/include/std-string.hh: add format printf attribute.
5315 * scm/define-grobs.scm (all-grob-descriptions): height of all
5316 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5318 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5321 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5323 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5325 * input/regression/: upgraded syntax for some files.
5327 * THANKS: Add bughunters.
5329 2006-02-22 Graham Percival <gpermus@gmail.com>
5331 * Documentation/user/ invoking.itely, advanced-notation.itely,
5332 global.itely: long-awaited "let's make chapter 10 not suck"
5333 update. Rearrange chapter 10; now called "global issues",
5334 addresses file structure, etc. Some info from other files
5335 moved into global.itely.
5337 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5339 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5340 catch trill-span-event notes.
5342 * Documentation/user/examples.itely (Ancient notation templates): typo.
5345 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5347 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5349 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5351 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5353 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5354 froum Laissez_vibrer_engraver.
5356 * ly/declarations-init.ly (repeatTie): add \repeatTie
5358 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5360 * scm/define-grob-properties.scm (all-user-grob-properties): add
5361 head-direction property.
5363 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5364 from_lv_ties. Take head direction argument.
5366 * lily/semi-tie-column.cc: rename from
5367 laissez-vibrer-tie-column.cc. Rename class too.
5369 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5372 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5374 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5376 (find_breaks): idem.
5378 2006-02-21 Graham Percival <gpermus@gmail.com>
5380 * Documentation/user/advanced-notation.itely: fixed make-moment]
5383 * Documentation/user/basic-notation.itely: more clarification to
5386 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5388 * lily/include/constrained-breaking.hh (class
5389 Constrained_breaking): new file.
5391 * lily/constrained-breaking.cc (resize): new file.
5393 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5395 * Documentation/user/advanced-notation.itely (Clusters): insert
5398 * lily/tie-column.cc (calc_positioning_done): support for
5401 * lily/tie-formatting-problem.cc
5402 (generate_extremal_tie_variations): factor out.
5403 (score_ties_configuration): annotate all tie
5404 (print_ties_configuration): new routine.
5405 (generate_configuration): nudge extremal ties outside of the head
5407 (score_ties_configuration): oops. convert to staff-space before
5408 determining position symmetry.
5410 2006-02-20 Graham Percival <gpermus@gmail.com>
5412 * Documentation/user/*-notation.itely: misc minor editing,
5413 shifting doc sections around.
5415 * Documentation/user/*-notation-itely, global.itely,
5416 changing-defaults.itely: added new stuff from NEWS.
5418 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5422 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5424 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5425 lilypond --verbose for lp-book.
5427 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5428 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5430 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5431 $(buildscript-dir) iso. absolute depth.
5433 * buildscripts/genicon.py (dir): thinko.
5435 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5437 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5439 * scm/output-lib.scm: swap darkcyan/darkyellow
5441 * THANKS: Add bughunters.
5443 2006-02-19 Graham Percival <gpermus@gmail.com>
5445 * Documentation/user/programming-interfaces.itely: fixed example.
5447 * Documentation/user/instrument-notation.itely: fix @{ @}.
5449 * scm/script.scm: add avoid-slur for \open.
5451 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5453 * lily/tie-formatting-problem.cc (score_configuration): use
5454 sliding score for min-length.
5456 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5457 spaghetti for icons.
5459 * buildscripts/genicon.py (program_name): new file.
5461 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5463 (generate_configuration): for small ties, also look for collisions
5464 at Y + DIR*h + DELTA_Y.
5465 (get_variations): consider variation for dot positions too.
5467 * lily/side-position-interface.cc (aligned_side): take abs for
5468 quantized rounded position. Fixes tenuto below staff.
5470 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5471 markers when necessary.
5473 * lily/program-option.cc (internal_set_option): add
5474 strict_infinity_checking option.
5476 * scm/output-lib.scm (cyan): swap yellow and cyan.
5478 2006-02-19 Graham Percival <gpermus@gmail.com>
5480 * darwin.patch: trivial linenumber update.
5482 * Documentation/user/ {various}: `\context foo = named' changed
5483 to `\new foo = "name"' in docs.
5485 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5487 * scm/stencil.scm (annotate-y-interval): use it.
5489 * scm/lily-library.scm (interval-sane?): new function.
5491 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5494 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5497 * flower/include/std-vector.hh (iterof): add iterof macro.
5499 * lily/enclosing-bracket.cc (width): new function.
5501 * lily/align-interface.cc (align_elements_to_extents): reinstate
5504 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5506 * Documentation/index.html.in: fix spelling: thankyous.
5508 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5510 * lily/lyric-hyphen.cc: typo.
5512 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5514 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5515 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5518 * VERSION: release 2.7.35
5520 * lily/beam.cc (get_default_dir): oops. Take abs () for
5522 (get_default_dir): use extreme position criterion only in absence
5523 of forced stem directions.
5525 * VERSION (PATCH_LEVEL): bump VERSION.
5527 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5528 dependencies. Necessary for -jX builds.
5530 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5532 * lily/relocate.cc (setup_paths): Yet another const fix.
5534 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5536 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5538 * lily/relocate.cc (setup_paths): oops.
5540 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5542 * Documentation/index.html.in: order links: html before PDF.
5544 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5546 * lily/tie-column-format.cc (Module): remove.
5548 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5550 * lily/text-spanner.cc (print): idem.
5552 * lily/dynamic-text-spanner.cc (print): only print line if longer
5555 * lily/auto-change-iterator.cc (change_to): formatting.
5557 * lily/beam.cc (get_default_dir): take extreme note head as input
5560 * lily/tie.cc (get_default_dir): only look directions for visible
5563 * lily/side-position-interface.cc (aligned_side): oops. Don't
5564 mutiply with direction. This fixes quantized (staccato, tenuto)
5565 scripts below notes.
5567 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5568 direction. Fixes c-lyrics-center-align.ly
5570 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5572 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5575 * lily/std-string.cc:
5576 * lily/include/std-vector.hh (split_string): Move and rename from
5577 lily/include/misc.hh, lily/misc.cc. Update callers.
5579 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5581 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5583 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5585 * flower/test-file.cc: New file.
5587 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5590 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5592 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5594 * flower/include/file-storage.hh: remove file.
5596 * lily/include/midi-item.hh (class Midi_track): idem.
5598 * lily/include/source.hh (class Sources): idem.
5600 * lily/include/performance.hh (class Performance): use vector
5603 * flower/include/cons.hh (class Cons): remove file.
5605 * flower/include/flower-proto.hh: remove template cruft.
5607 * lily/include/font-metric.hh: use size_t not vsize for indices.
5609 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5612 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5614 * lily/include/paper-book.hh (class Paper_book):
5615 make get_system_specs() public.
5617 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5618 the force=10000 case if we don't have a current-best.
5620 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5623 * flower/include/flower-proto.hh: remove outdated templates.
5625 * scm/page.scm: use annotate-spacing
5627 2006-02-15 Graham Percival <gpermus@gmail.com>
5629 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5631 * THANKS: moved Erlend Aasland to contributors.
5633 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5635 * config.hh.in: remove HAVE_PANGO_16
5637 * lily/tuplet-bracket.cc (calc_positions): multiply with
5638 staff-space for beam case. This fixes tuplets+beams on scaled
5641 * config.hh.in: remove all Kpathsea related defines.
5643 * lily/dot-column.cc (side_position): reach stem via dots->
5644 head->stem. Inspect all stems for dot collisions.
5646 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5649 * lily/bar-number-engraver.cc (process_music): document function
5652 * lily/score.cc (default_rendering): add pscore, not systems
5655 * lily/paper-book.cc (get_system_specs): separate generation of
5658 * flower/include/std-vector.hh: don't include config.hh
5660 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5662 * flower/include/std-vector.hh: Better wrapper compatibility with
5665 * flower/include/flower-proto.hh: Remove cheap forward declaration
5668 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5670 2006-02-14 Graham Percival <gpermus@gmail.com>
5672 * Documentation/user/invoking.itely: add warning about command line.
5674 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5676 * lily/include/lily-proto.hh: add Prob, rm Page.
5678 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5680 * VERSION: release 2.7.34
5682 * lily/relocate.cc (framework_relocation): show canary if
5683 GHOSTSCRIPT_VERSION undefined.
5685 * GNUmakefile.in: remove $(VERSION) symlink.
5687 * lily/relocate.cc (setup_paths): add +
5689 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5691 * Documentation/index.html.in: specify sizes for all big HTML pages.
5693 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5695 * config.hh.in: remove @FRAMEWORKDIR@
5697 * lily/system-start-text.cc (get_stencil): new file: separate out
5698 system-start-delimiter text support.
5700 * input/**ly: replace \context with \new where appropriate.
5704 * lily/slur-scoring.cc (get_base_attachments): use
5705 robust_relative_extent. This fixes problems with empty paper-columns.
5707 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5709 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5711 * scm/define-music-properties.scm (all-music-properties):
5712 create-new property.
5714 * lily/context-specced-music-iterator.cc (construct_children):
5715 inspect 'create-new property iso. magical $uniqueContextId context
5718 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5720 * lily/context-key-manager.cc (Module): new file. Encapsulate
5721 object key generation.
5723 * lily/include/context-key-manager.hh (Module): new file.
5725 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5727 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5730 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5732 (reloc_b): excise --enable-framework-dir
5734 * lily/relocate.cc (framework_relocation): use getenv
5735 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5737 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5739 * flower/include/std-string.hh:
5740 * flower/include/std-vector.hh: Finish std:: conversion; move
5741 flower extensions from std:: namespace. Update users.
5743 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5744 their expansion to vector<*>. Update users.
5746 2006-02-10 Graham Percival <gpermus@gmail.com>
5748 * Documentation/user/invoking.itely: add example to File structure.
5750 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5751 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5753 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5755 * ly/paper-defaults.ly: typo.
5757 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5758 set_parent() for parentheses. This will make it show up in bbox
5761 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5762 ly:grob-common* functions.
5764 * lily/grob-scheme.cc (LY_DEFINE):
5765 ly:grob-common-refpoint-of-array: new function
5766 ly:grob-common-refpoint: new function
5767 ly:grob-relative-coordinate: new function
5769 * lily/instrument-name-engraver.cc (process_music): use
5770 Text_interface::is_markup(). This fixes \markup on instrument names.
5772 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5775 * lily/slur.cc (print): idem.
5777 * lily/tie.cc: add line-thickness for ties.
5779 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5781 * scm/output-svg.scm: Document diversion from GNU coding standards
5782 as a workaround for a bug in Microsoft Internet Explorer.
5784 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5786 * lily/instrument-name-engraver.cc (process_music): use
5787 is_markup() iso. is_string()
5789 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5791 * lily/percent-repeat-engraver.cc (process_music): only look at
5792 main_part_ for % repeats.
5794 * lily/stem-tremolo.cc (get_beam_translation): new function.
5795 (calc_slope): new function.
5796 (height): don't use real slope.
5798 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5800 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5801 new connect-to-neighbor, control-points and staff-padding
5802 properties to make ligature brackets showing up again.
5804 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5806 * VERSION: release 2.7.33
5808 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5811 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5812 remove applyOutput example.
5813 (Objects connected to the input): document \tweak, \parenthesize
5815 * lily/relocate.cc (prefix_relocation): allow "current"
5816 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5817 changing VERSION in a lily tree less painful.
5819 * input/regression/parenthesize.ly: new file.
5821 * scm/output-lib.scm (parenthesize-element): new function.
5823 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5825 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5827 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5828 cause: accidentals are caused by note heads, not note events.
5830 2006-02-08 Graham Percival <gpermus@gmail.com>
5832 * darwin.patch: small patch from Erlend, thanks!
5834 * Documentation/user/basic-notation.itely: add stem-neutral example.
5836 * Documentation/user/putting.itely: clarifications.
5838 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5840 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5841 note, add more guidelines to what should go into NEWS.
5843 * input/sakura-sakura.ly: document how to override font.
5845 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5847 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5849 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5851 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5853 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5854 convertrules. Add explicit grouping, needed for python2.2.
5856 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5858 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5860 2006-02-07 Graham Percival <gpermus@gmail.com>
5862 * Documentation/user/global.itely: fix line-width in (text) docs.
5864 * Documentation/user/lilypond-book.itely: same.
5866 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5868 * VERSION (PACKAGE_NAME): release 2.7.32
5870 * Documentation/topdocs/NEWS.tely (Top): document new variable
5873 * flower/include/array.icc (Message): remove file.
5875 * flower/include/std-vector.hh: make sure vsize and VPOS are
5876 defined for binary_search_bounds().
5878 * flower/std-string.cc (std): add to_string(long unsigned).
5880 * configure.in (gui_b): excise std_string option.
5881 (gui_b): excise std_vector option.
5883 * flower/string.cc (Module): excise flower array & string
5885 * flower/include/std-string.hh: excise flower string.
5887 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5889 * python/convertrules.py (lilypond_version_re_str): require
5890 only numbers and dots in \version string.
5892 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5894 * lily/system-start-delimiter.cc (print): allow style = text too.
5896 * lily/system-start-delimiter-engraver.cc
5897 (acknowledge_system_start_text): new function, also add add to
5898 support of system-start-text (instrument names). This fixes
5899 instrument names on piano staves.
5901 * lily/instrument-name-engraver.cc: rewrite. Use
5902 system-start-delimiter approach. This save memory and cpu.
5904 * scm/define-grobs.scm (all-grob-descriptions): remove
5905 instrument-name from break-alignment.
5907 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5909 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5911 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5914 * configure.in (std_vector): On by default.
5916 * lily/include/font-metric.hh:
5917 * lily/include/tfm-reader.hh:
5918 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5921 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5923 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5925 * VERSION (PACKAGE_NAME): 2.7.31
5927 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5928 EPS edge at 0, but take minimum with left-overshoot. This fixes
5929 cut off system start delims.
5931 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5932 hack: add to axis group if not added yet. This fixes hara kiri'd
5935 * lily/hara-kiri-group-spanner.cc
5936 (force_hara_kiri_in_y_parent_callback): fix signatures.
5938 * lily/hairpin.cc (print): check next hairpin to see whether or
5939 not to be continuing.
5941 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5943 * Remove trailing whitespace from makefiles.
5945 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5948 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5950 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5952 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5954 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5956 * configure.in: Use it.
5958 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5960 * scm/music-functions.scm (pitch-of-note): new function.
5962 * ly/music-functions-init.ly: add \octave and \addquote
5964 * lily/parser.yy (music_function_chord_body): softcode \octave.
5965 (lilypond_header): softcode \addquote
5967 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5969 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5970 array.hh, parray.hh at all. Getting ready to flip the
5973 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5975 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5978 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5980 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5982 * flower/include/array.hh: typo.
5984 2006-02-02 Graham Percival <gpermus@gmail.com>
5986 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5988 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5990 * flower/include/pqueue.hh: Derive from std::vector.
5992 * flower/include/parray.hh: Conform to std::vector interface.
5995 2006-02-02 Graham Percival <gpermus@gmail.com>
5997 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5999 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6001 * flower/file-path.cc (is_file): remove if 0 section.
6003 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6004 selecting afii61352.
6006 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6008 * flower/include/std-vector.hh (boundary): Oops, reverse.
6010 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6011 remove superfluous `d'.
6013 * flower/include/std-vector.hh (boundary, top): Detach from class.
6014 Remove empty vector shell.
6016 * flower/include/array.hh (reverse, swap): Detach from class.
6019 * flower/include/std-vector.hh
6020 * flower/include/array.hh (concat): Globally change to insert ().
6022 * flower/include/std-vector.hh
6023 * flower/include/parray.hh
6024 * flower/include/array.hh (elem, elem_ref): Globally replace by
6027 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6029 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6031 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6032 anticipate on identifier substitutions.
6034 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6036 * flower/include/std-vector.hh (insert): Remove, replace by
6037 std::vector interface. Update callers.
6039 * flower/include/array.icc (insert): Change signature to
6040 match std::vector interface.
6042 * flower/include/array.icc (vector_sort): Bugfix.
6044 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6046 * lily/parser.yy (output_def_head_with_mode_switch): new
6047 production. Result: dashes and underscores may be used in the
6050 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6052 * python/convertrules.py (conv): oops. One slash too much.
6054 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6056 * flower/include/std-vector.hh (sort): Remove, replace by
6057 ::vector_sort. Update callers.
6059 * flower/include/std-vector.hh (slice): Remove. Update callers.
6062 * flower/test-std.cc (vector_sort): New test.
6064 2006-02-01 Graham Percival <gpermus@gmail.com>
6066 * Documentation/user/putting.itely: fixes from Erik.
6068 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6070 * flower/test-std.cc: Add simple unit test for vector migration.
6072 * stepmake/stepmake/test*: Unit test support.
6074 * flower/include/std-vector.hh (del): Remove. Use erase (),
6077 * flower/include/array.hh (begin, end): Add.
6080 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6082 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6083 std::string not String.
6085 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6088 * lily/prob.cc (Prob): copy type_ too.
6090 * lily/lily-guile.cc (mangle_cxx_identifier): new
6091 function. Class_bla::foo_bar_[px] ->
6092 ly:class-bla::foo-bar[?!]. Changes throughout
6094 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6096 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6098 * lily/beam.cc (calc_direction): take dir from visible stem in
6101 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6103 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6104 Fix -1, >=0 boundary checks for unsigned vsize.
6106 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6107 loop for unsigned vsize.
6109 * configure.in (--enable-std-vector): New option.
6110 (--enable-std-string): On by default.
6112 * flower/include/std-vector.hh: New file. Enable switch to
6113 std::vector, update client code.
6115 2006-01-30 Graham Percival <gpermus@gmail.com>
6117 * scm/document-translation.scm: clarify "this context is also
6118 known as". Thanks, Werner!
6120 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6122 * Documentation/user/invoking.itely: small fix from Don.
6124 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6126 * scm/lily.scm (define-scheme-options): rename option
6127 preview-include-book-title to book-title-preview
6128 (define-scheme-options): move force-eps-font-include (from paper
6129 block) to eps-font-include -d option.
6131 * VERSION (PATCH_LEVEL): release 2.7.30
6133 * input/bach-schenker.ly (staffPiano): new file.
6135 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6137 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6140 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6142 * ps/lilyponddefs.ps: remove start-system, stop-system,
6143 start-page fluff. This saves putting { } code on the stack, fixing
6144 stack overflows when including EPS files.
6146 2006-01-29 Graham Percival <gpermus@gmail.com>
6148 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6150 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6152 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6154 2006-01-28 Graham Percival <gpermus@gmail.com>
6156 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6158 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6160 * input/mutopia/claop.py: Update.
6162 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6164 * input/regression/completion-heads.ly (texidoc): fix.
6166 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6168 * lily/tie-formatting-problem.cc
6169 (set_ties_config_standard_directions): use abs iso fabs for ints.
6171 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6173 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6174 little less than noteheight, to prevent overlaps in chords.
6176 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6177 head, and fudge stem-attachment.
6179 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6181 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6183 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6185 * lily/main.cc (main): Debugging aid: catch exceptions.
6187 * flower/std-string.cc (to_string): Robustification. Fixes midi
6188 output with std::string.
6190 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6192 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6194 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6196 * Fix -DSTRING_UTILS_INLINED.
6198 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6200 * VERSION (PATCH_LEVEL): release 2.7.29
6202 * lily/relocate.cc (setup_paths): mingw uses std string too.
6204 * lily/*.cc: various fixes for substr(ARG).
6206 * lily/sustain-pedal.cc (print):
6208 * flower/file-name.cc (slashify): use std strings.
6210 * flower/string-convert.cc: remove publib.h
6212 * scm/define-markup-commands.scm (verbatim-file): new markup
6213 command \verbatim-file
6215 * Documentation/topdocs/NEWS.tely: fixup URLs
6217 * input/regression/alignment-vertical-manual-setting.ly (Module):
6220 * lily/align-interface.cc (align_elements_to_extents): overwrite
6221 translations with numbers in alignment-offsets from left bound
6223 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6224 (page-translate-systems): new function: take into account Y-offset.
6226 * Documentation/topdocs/NEWS.tely (Top): document new features.
6228 * input/regression/page-layout-manual-position.ly (Module): new
6231 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6233 * flower/file-path.cc (path::parse_path): Oops.
6235 * Finish std::string interface. For now, use std:: marker
6236 throughout for easy s/r.
6238 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6240 * Documentation/user/putting.itely (Score is a single musical
6242 (Score is a single musical expression): more typos.
6244 * scm/page.scm (annotate-space-left): thinko.
6245 (annotate-page): more thinkos.
6247 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6249 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6250 for different \score blocks separately.
6251 (post-process-pages): put write-page-layout into paper block.
6253 * lily/output-def.cc (get_parser): new file.
6255 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6258 * lily/include/output-def.hh (class Output_def): add parser_ member.
6260 * input/regression/page-layout-twopass.ly (Module): new file.
6262 * scm/lily.scm: remove cpp hack.
6264 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6266 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6268 * GNUmakefile.in (c-clean): New target.
6270 * flower/include/std-string.hh: String/std::string compatibility:
6271 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6274 * flower/rational.cc:
6275 * flower/include/rational.hh:
6278 * flower/include/offset.hh:
6280 * flower/interval.cc:
6281 * flower/include/interval.hh:
6283 * flower/string-convert.cc:
6284 * flower/include/string-convert.hh: Use std::string [interface].
6287 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6289 * Documentation/index.html.in: clean up.
6291 2006-01-25 Graham Percival <gpermus@gmail.com>
6293 * Documentation/user/putting.itely: another new untested doc section.
6295 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6297 * scm/layout-page-layout.scm (write-page-breaks): write
6298 \spacingTweaks #ALIST. Handle grace timing.
6300 * scm/: more imports.
6302 * scm/page.scm (make-page): add footer/header.
6303 (annotate-space-left): revise: only take page argument.
6304 (layout->page-init): new function.
6306 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6307 version of the system/spacing/linebreak hack writing to the output
6309 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6312 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6315 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6317 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6319 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6321 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6322 handling to page.scm
6324 * lily/prob-scheme.cc (LY_DEFINE): new file.
6325 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6327 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6330 * lily/music.cc (derived_mark): derive Music from Prob.
6332 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6334 * lily/prob.cc (Module): Implement Prob (Property Object), object
6335 with shared and r/w property alists.
6337 * lily/include/prob.hh (Module): new file. Declare Prob.
6339 * flower/string.cc: remove is_empty().
6341 * flower/include/string.hh (class String): remove String:: qualifier.
6343 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6344 substitute appropriate functions.
6346 * flower/include/string.hh (class String): remove to_str0 and
6347 is_empty(). S&R everywhere.
6349 2006-01-23 Graham Percival <gpermus@gmail.com>
6351 * Documentation/user/basic-notation.itely: add hairpin
6352 after-linebreak tweak to commonprop.
6354 * Documentation/user/putting.itely: added two new sections.
6356 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6358 * flower/international.cc:
6359 * flower/include/international.hh:
6361 * flower/getopt-long.cc:
6362 * flower/include/getopt-long.hh: Use std::string [interface].
6365 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6367 * stepmake/stepmake/executable-rules.make: Add dependency on
6370 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6372 * flower/file-path.cc:
6373 * flower/include/file-path.hh: Use std::string [interface].
6376 * flower/direction.cc:
6377 * flower/axis.cc: Unused. Remove.
6379 * configure.in (--enable-std-string): New option.
6381 * flower/std-string.cc:
6382 * flower/include/std-string.hh: New file.
6384 * flower/file-name.cc[STD_STRING]:
6385 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6387 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6389 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6391 * scm/define-markup-commands.scm (with-dimensions):
6392 with-dimensions markup command.
6394 * input/test/font-table.ly: use it.
6396 * lily/open-type-font.cc (glyph_list): new function.
6398 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6400 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6402 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6404 * ly/music-functions-init.ly (parallelMusic): new music function
6405 for parallel music entry.
6407 * scm/define-music-properties.scm (all-music-properties): new
6408 'void music property
6410 * scm/music-functions.scm (ly:music-message): make public, to be
6411 used in music function definitions
6413 * scm/lily-library.scm (collect-music-for-book): discard music
6414 when the 'void property is set.
6416 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6418 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6420 * mf/GNUmakefile: idem.
6422 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6424 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6426 * Documentation/user/notation-appendices.itely (The Feta font):
6429 * input/test/font-table.ly: new file. Generate font table within lily.
6431 * Documentation/user/notation-appendices.itely (The Feta font):
6432 use new font-table.ly file.
6434 * stepmake/stepmake/install-out-targets.make
6435 (local-install-outfiles): only create directory if
6436 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6438 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6440 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6442 * VERSION (PACKAGE_NAME): release 2.7.28
6444 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6445 the right font from a Mac dfont.
6446 (write-preamble): don't forget directory, only look at files.
6448 This fixes problems with TTF files in dfonts that don't match
6449 their PostScript names.
6451 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6452 PS name from TTF font.
6454 * input/regression/tie-manual.ly: document new feature.
6456 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6458 * VERSION (MY_PATCH_LEVEL): bump to .28
6460 * Documentation/user/basic-notation.itely (Ties): add tie examples
6463 * lily/tie-formatting-problem.cc (score_ties_configuration):
6464 symmetry penalties for outer ties.
6466 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6468 * lily/tie-formatting-problem.cc (generate_configuration)
6469 (set_manual_tie_configuration): skip non-pair manual
6470 tie-configuration, so you can set individual ties as
6472 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6474 * input/regression/tie-chord.ly: use generateTiePattern to
6477 * lily/tie-formatting-problem.cc (peak_around): new function.
6478 (score_configuration): use sliding criterion for staff line collisions.
6479 (score_configuration): idem for dot collisions.
6480 (generate_configuration): use separate stem_gap for gap to stem.
6482 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6483 separate penalty factors for x and y distance.
6484 (struct Tie_details): separate penalties for tip and center line collisions.
6486 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6488 * lily/tie-formatting-problem.cc (generate_configuration): make
6489 large ties avoid stafflines in the horizontal section.
6490 (score_configuration): use softcoded penalties
6491 (score_aptitude): idem.
6493 * lily/tie-helper.cc (from_grob): softcode tie details
6495 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6497 * lily/staff-symbol-referencer.cc (on_line): rename from
6500 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6502 * ly/music-functions-init.ly: remove duplicate tag.
6504 * lily/include/*.hh: GCC 4.1 fixes.
6506 006-01-16 Erlend Aasland <erlenda@gmail.com>
6508 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6510 * scm/define-music-types.scm: fix bug in desc. string
6511 for OverrideProperty
6513 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6515 * scripts/lilypond-book.py: bugfix
6517 * scm/define-music-types.scm: fix typos.
6519 2006-01-14 Graham Percival <gpermus@gmail.com>
6521 * Documentation/user/ basic-notation.itely, global.itely,
6522 advanced-notation.itely, instrument-notation.itely: small
6523 additions (bugs and commonly tweaked properties).
6525 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6527 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6528 detection of mingw build.
6529 (MINGW_BUILD): opps.
6531 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6533 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6536 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6538 * scm/music-functions.scm (skip->rest): add skip->rest
6540 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6542 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6545 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6546 config dirs. Aids debugging.
6547 (display_config): also display config files.
6549 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6551 * VERSION: release 2.7.27
6553 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6554 for determining bar size.
6556 * lily/staff-symbol.cc (print): place lines at distance line-positions
6558 * scm/define-grob-properties.scm (all-user-grob-properties): add
6561 * lily/staff-symbol.cc (height): new function.
6563 * input/regression/staff-line-positions.ly: new file.
6565 2006-01-06 Graham Percival <gpermus@gmail.com>
6567 * input/test/add-staccato.ly: remove reference to old file.
6569 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6571 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6572 lilypond binary too.
6574 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6576 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6578 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6580 * scripts/midi2ly.py: Bugfix: Declare datadir.
6582 * make/ly-rules.make:
6583 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6584 that seems to be gone). Fixes make web.
6586 * The grand 2005-2006 replace.
6588 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6590 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6592 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6593 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6594 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6595 like -dgs-font-load.
6597 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6598 remove absolute path to lilypond binary.
6600 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6602 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6604 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6606 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6608 * mf/GNUmakefile: remove broken dvips map symlink.
6610 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6613 * configure.in: Cosmetic fixes.
6615 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6617 * Documentation/user/music-glossary.tely (Pitch names): Added
6618 Spanish pitch names and durations, thanks to Ernesto Gancedo
6620 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6622 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6623 init. Fixes verbose printing of .scm files.
6625 * stepmake/aclocal.m4: add spaces before - options.
6627 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6629 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6630 of path search in local block variable.
6632 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6634 * configure.in (NCSB_DIR): --enable-ncsb-dir
6635 (LINK_GXX_STATICALLY): denko.
6637 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6639 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6640 use locate to find c059033l.pfb.
6642 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6644 * lily/tie-formatting-problem.cc
6645 (problem::generate_base_chord_configuration): Use my_round (was
6648 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6649 do not invoke mbrtowc.
6651 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6653 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6655 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6657 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6659 * Documentation/user/invoking.itely (svg): revise.
6661 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6663 * lily/lexer.ll: use sourcefilename iso. renameinput.
6665 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6667 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6668 <PostScriptName>.ttf instead of c059XXXttf.
6670 * lily/program-option.cc (LY_DEFINE): special support for
6671 --verbose, so it works before option init too.
6673 * mf/GNUmakefile (local-install): oops.
6675 * lily/lyric-hyphen.cc (print): oops.
6677 * buildscripts/pfx2ttf.fontforge: new file.
6679 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6680 ($(outdir)/%.ttf): new rule.
6682 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6685 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6688 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6690 * VERSION: release 2.7.26
6692 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6694 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6696 * lily/font-config.cc (init_fontconfig): verbosity.
6698 * THANKS: add Muziekacademie Lede.
6700 * scripts/musicxml2ly.py (print_voice_definitions): new function
6701 (print_score_setup): new function
6702 (convert): read part definition to output staves properly.
6704 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6707 * python/musicexp.py (Output_printer.__init__): use _ in data
6709 (Output_printer.unformatted_output): new function: no formatting,
6711 (Duration.get_length): remove isinstance() checks for
6712 Output_printer everywhere.
6714 * input/regression/lyrics-bar.ly (texidoc): add
6715 Separating_line_group_engraver.
6717 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6719 * lily/relocate.cc (framework_relocation): New function,
6720 factored from set_relocation ().
6721 (prefix_relocation): Rename from set_relocation ().
6722 (setup_paths): Use it.
6724 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6726 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6727 numbers. Patch by Erlend Aasland.
6729 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6731 * lily/font-config.cc (init_fontconfig): print warning if cache
6732 file is not existant.
6734 * lily/main.cc: don't use #ifdef but #if
6736 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6738 * lily/grob-property.cc (internal_set_property): don't abort on
6739 calculation-in-progress.
6741 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6743 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6744 connect-to-neighbor property not connect-to-other
6746 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6747 (LY_DEFINE): oops. don't forget protection.
6749 * flower/parse-afm.cc (Module): strip AFM handling completely.
6751 * lily/stencil-expression.cc: idem.
6753 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6755 * lily/function-documentation.cc (ly_add_function_documentation):
6756 use static member iso. Protected_scm
6758 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6760 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6762 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6764 * lily/relocate.cc (set_env_dir): New function.
6765 (set_relocation): Use it to fix setting PANGO_PREFIX.
6767 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6769 * input/regression/stem-direction-context.ly: remove rest.
6771 * lily/melody-engraver.cc (process_music): restart for bar lines.
6772 (acknowledge_slur): restart for slurs.
6774 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6776 * Documentation/user/invoking.itely: describe how to view SVG
6777 output using Inkscape which replace embedded fonts with OTF fonts.
6779 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6781 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6783 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6785 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6788 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6790 * VERSION (PACKAGE_NAME): release 2.7.25
6792 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6794 * input/regression/stem-direction-context.ly: new file.
6796 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6798 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6801 * ly/engraver-init.ly: add Melody_engraver
6803 * lily/beam.cc (calc_direction): use default-direction
6804 iso. get_default_direction()
6806 * scm/define-grob-properties.scm (all-user-grob-properties): add
6807 default-direction property.
6809 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6811 * lily/stem.cc (calc_default_direction): remove
6812 Stem::get_default_direction, use default-direction with callback
6815 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6817 * lily/melody-engraver.cc: new file. Acknowledge stems for
6818 interpolated stem directions.
6820 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6822 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6824 * lily/slur-configuration.cc (fit_factor): more robust check for
6825 point in curve X-extent.
6827 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6828 (outside_slur_callback): check for 'outside avoidance.
6830 * lily/slur-configuration.cc (score_extra_encompass): don't use
6831 bound->column() == avoid->column() for checking extents, as this
6832 doesn't work for accidentals.
6834 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6835 DynamicText hardcoding.
6837 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6838 crash if bound stem is NULL
6840 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6843 2005-12-22 Graham Percival <gpermus@gmail.com>
6845 * scm/define-markup-commands.scm: typo. @code{\raise}
6848 * darwin.patch: now used again, includes a
6849 required patch from fink.
6851 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6853 * po/TODO: mention gtranslator along with kbabel.
6854 * po/fi.po: update translations.
6856 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6858 * lily/relocate.cc (setup_paths): Bugfix.
6860 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6862 * lily/slur-configuration.cc (score_extra_encompass): don't use
6863 "avoid" choice for avoid-slur.
6865 * stepmake/bin/install.py (dest): don't create existing dir.
6867 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6869 * stepmake/bin/install.py: Remove file before copying.
6872 * stepmake/aclocal.m4: Do not substitute INSTALL.
6874 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6876 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6877 depend on link-tree.
6879 * lily/relocate.cc (setup_paths): only check path for non-absolute
6880 dir without directory part.
6882 * flower/file-name.cc (is_absolute): new method.
6883 (is_absolute): check root_ too.
6885 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6887 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6888 relocation code. Oops, don't comment out too much.
6890 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6893 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6896 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6898 * .cvsignore: Add install-sh.
6900 * autogen.sh (srcdir): Typo.
6902 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6904 * autogen.sh (srcdir): urg. Touch install-sh.
6906 * stepmake/bin/install-sh (Module): remove.
6908 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6910 * lily/include/relocate.hh: new file.
6912 * lily/relocate.cc: new file. Contain relocation logic.
6914 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6915 (main): read LILYPOND_VERBOSE as the first thing.
6917 * stepmake/aclocal.m4: remove INSTALL variable.
6919 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6920 separate target for making font symlinks.
6921 (documentation-dir): use $(if $(findstring )) for switching off
6924 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6925 something if DOCUMENTATION is no.
6927 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6929 * VERSION: release 2.7.24
6931 * lily/script-column-engraver.cc (stop_translation_timestep):
6932 delay adding to script-column.
6934 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6936 * python/convertrules.py (conv): rule for number-visibility
6938 * lily/slur-configuration.cc (score_extra_encompass): different
6939 distance measure for avoid and inside avoidance.
6940 (score_extra_encompass): use 1/(distance+eps) as penalty.
6942 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6943 encompass objects for generating slur curves.
6945 * lily/slur.cc: use details iso. slur-details property.
6947 * input/regression/slur-tuplet.ly: new file.
6949 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6951 * flower/include/offset.hh (class Offset): new operator /=
6953 * lily/tuplet-number.cc (print): new file, new interface.
6955 * scm/define-grob-properties.scm (all-user-grob-properties):
6956 remove number-visibility property.
6958 * lily/tuplet-bracket.cc (calc_control_points): new function
6959 (calc_connect_to_neighbors): new function.
6960 (print): remove text handling for tuplet numberdef.
6962 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6965 * lily/lily-guile.cc (robust_scm2booldrul): new function
6967 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6969 * lily/tuplet-bracket.cc (calc_position_and_height): use
6970 staff-padding to control whether tuplet brackets are over staves.
6972 * lily/grob.cc (suicide): clear dim_caches_.
6974 * lily/dimension-cache.cc (clear): new function.
6976 * lily/grob.cc (extent): swap order of min-extent and extent
6977 calculations. This fixes hara kiri staves.
6979 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6981 * lily/main.cc: Nitpick: relocation is not based on path, but on
6982 directory (location).
6984 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6986 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6988 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6990 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6992 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6994 * stepmake/stepmake/generic-vars.make (Module): idem.
6996 * stepmake/stepmake/executable-targets.make (default): use it.
6998 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7000 * make/GNUmakefile: don't install make rules.
7002 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7004 (prepend_env_path): more verbosity.
7006 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7008 * GNUmakefile.in: add dir argument for find command.
7010 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7011 fixes weird line numbers for point & click.
7013 * lily/source-file.cc (get_counts): init line/column/char counts.
7015 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7017 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7019 2005-12-16 Graham Percival <gpermus@gmail.com>
7021 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7022 minor fixes from Fredric. Thanks!
7024 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7026 * ly/music-functions-init.ly: add \bar and \clef music function
7028 * lily/lily-lexer.cc: idem.
7030 * lily/parser.yy (FIXME): remove BAR and CLEF.
7032 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7034 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7036 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7037 function arguments too
7039 * lily/main.cc (set_relocation): new function.
7041 * scripts/musicxml2ly.py (convert): add \version
7043 * lily/tie.cc: remove get_default_attachments()
7045 * VERSION (PACKAGE_NAME): release 2.7.23
7047 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7048 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7050 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7052 * lily/tie-formatting-problem.cc (score_ties): new function
7053 (get_variations): new function. Try flipping dirs for collisions.
7054 (generate_optimal_chord_configuration): new function. 1-opt search
7055 for better configuration.
7057 * lily/tie-configuration.cc: new file.
7059 * lily/tie.cc: junk Tie::get_configuration()
7061 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7062 (score_ties_configuration): new function.
7063 (generate_ties_configuration): new function.
7064 (generate_base_chord_configuration): new function.
7065 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7066 (set_manual_tie_configuration): Move body from tie-column-format.cc
7068 * input/regression/tie-dot.ly: new file.
7070 * lily/tie-formatting-problem.cc (score_configuration): score
7073 * lily/tie-helper.cc (get_transformed_bezier): new function
7075 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7077 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7078 -undefined suppress iso. -framework Python
7080 * scm/define-grobs.scm (all-grob-descriptions): set
7081 springs-and-rods (thanks Joe Neeman!)
7083 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7085 * input/no-notation/display-lily-tests.ly (test):
7086 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7087 changed from \tag #'(a b) to \tag #'a \tag #'b
7089 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7091 * Documentation/topdocs/NEWS.tely: strip out-www.
7093 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7095 * config.make.in (AR): add AR and RANLIB
7097 * flower/libc-extension.cc: include cassert
7099 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7102 2005-12-11 Graham Percival <gpermus@gmail.com>
7104 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7106 * stepmake/stepmake/python-modules-vars.make: define
7107 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7109 * THANKS: added Johannes Schindelin.
7111 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7113 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7115 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7116 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7118 * lily/parser.yy: reorganize file layout.
7120 * ly/music-functions-init.ly: add tweak music function.
7122 * lily/grob-info.cc (ultimate_music_cause): new function:
7123 recursively lookup causes.
7125 * lily/parser.yy (chord_body_element): allow music functions for
7126 post-events, allow music functions for chord elements.
7128 * lily/font-config-scheme.cc (display_fontset): add cast.
7130 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7131 #'(a b) -> \tag #'a \tag #'b rule.
7133 * python/musicexp.py (Output_printer.dump_version): new function
7135 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7137 * lily/parser.yy (FIXME): remove \tag
7138 (FIXME): remove tag_music() function.
7140 * lily/lily-lexer.cc: remove \tag
7142 * ly/music-functions-init.ly: define music-function "tag"
7144 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7146 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7148 * VERSION (PATCH_LEVEL): release 2.7.22
7150 * input/regression/lyric-hyphen-retain.ly: renew.
7152 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7155 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7156 iso. minimum-length property for rods.
7158 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7159 LyricSpace item to keep lyrics spaced apart.
7161 * ly/engraver-init.ly: remove Separating_line_group_engraver
7163 * Documentation/user/music-glossary.tely: do setfilename before
7166 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7168 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7169 See xref documentation, for example.
7171 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7173 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7174 pending_skip iso. ly_voice[-1]
7175 (main): add if __main__ for debugging.
7177 * python/musicxml.py (Accidental.__init__): new class.
7179 * scripts/musicxml2ly.py (progress): new function
7180 (musicxml_key_to_lily): don't barf on modeless keys.
7181 (create_skip_music): new function.
7182 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7183 (musicxml_note_to_lily_main_event): new function.
7185 * python/musicexp.py (Music.__init__): add comment field.
7186 (NestedMusic.append): new routine.
7187 (SequentialMusic.print_ly): print comment.
7188 (ArpeggioEvent.ly_expression): new class
7189 (BeamEvent.ly_expression): new class
7190 (NoteEvent.__init__): support for cautionary/forced accs.
7192 * lily/lookup.cc (slur): normal order for array loop.
7194 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7197 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7200 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7202 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7204 * scripts/lilypond-book.py: Introduce option
7205 --preserve-line-breaks, for usage with srcltx
7207 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7209 * scm/output-lib.scm (print-circled-text-callback): draw circle
7210 around text using make-circle-markup.
7212 * Documentation/user/*: strip out-www from file names.
7214 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7216 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7217 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7219 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7221 * Documentation/user/GNUmakefile: idem.
7223 * Documentation/user/macros.itexi: strip out-www
7225 * python/rational.py: python 2.3 compat.
7227 * VERSION (PATCH_LEVEL): release 2.7.21
7229 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7230 option formatting, lilypond style.
7232 * python/musicexp.py: grab from Ikebana: a library for composing
7233 ly music expressions.
7234 (Output_printer): class for advanced .ly printing.
7237 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7238 convert to pythonesque structure.
7240 * python/rational.py: PD rational number class.
7242 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7244 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7246 * lily/part-combine-iterator.cc: Minor bugfix
7248 * THANKS: Update bughunters
7250 2005-12-02 Werner Lemberg <wl@gnu.org>
7252 * mf/README: Document process for proper mf2pt1 conversion.
7254 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7257 * mf/feta-harmonica.mf: Removed. Unused.
7259 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7261 * scripts/lilypond-book.py (do_file): fix thinkos.
7263 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7265 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7266 ($(outdir)/parser.cc):
7267 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7269 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7271 * ly/titling-init.ly (tagline): it should be a space between
7272 "Music engraving by LilyPond" and the version number.
7274 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7276 * VERSION (PACKAGE_NAME): release 2.7.20
7278 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7280 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7282 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7284 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7286 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7288 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7290 * kpath-guile/: remove directory
7292 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7293 file. Encapsulate kpathsea using commandline tools.
7295 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7298 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7300 * Documentation/user/advanced-notation.itely (Setting automatic
7301 beam behavior): Correct a few typos. Thanks to David Bobroff.
7303 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7304 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7306 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7308 * scripts/*.py: gmane address for bugs.
7310 2005-11-28 Pal Benko <benkop@freestart.hu>
7312 * make/ly-rules.make: add -f switch to mv
7314 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7316 * lily/bar-line.cc: interpret it
7318 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7320 * configure.in (--disable-documentation): New switch.
7322 * GNUmakefile.in: Use it.
7324 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7326 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7328 * scripts/lilypond-book.py (do_file): search chunks for
7331 * GNUmakefile.in: add copy step in between so we can lose the
7332 out-www directories.
7334 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7336 * lily/pango-font.cc (pango_item_string_stencil): put
7337 geometry.width into glyph-string too.
7339 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7341 * scm/define-music-display-methods.scm (RevertProperty):
7342 (OverrideProperty): Use grob-property-path property, a list of
7343 symbols, instead of grob-property, which used to be a single
7345 (BassFigureEvent): a figure can be a plain number, not necessarily a
7348 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7350 * VERSION: release 2.7.19
7352 * lily/figured-bass-engraver.cc (process_music): check
7353 figuredBassCenterContinuations first.
7355 * scm/translation-functions.scm (format-bass-figure): make double
7358 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7361 * lily/system-start-delimiter-engraver.cc: move from
7362 Nested_system_start_delimiter_engraver, rename
7363 Nested_system_start_delimiter_engraver ->
7364 System_start_delimiter_engraver.
7366 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7367 bracket type from hierarchy.
7369 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7371 * lily/rest.cc (y_offset_callback): read staff-position.
7373 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7374 mark after-line-breaking-callback as internal.
7376 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7378 2005-11-25 Werner Lemberg <wl@gnu.org>
7380 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7382 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7384 * stepmake/bin/add-html-footer.py (do_file): add google
7386 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7387 staff if first_start_ is true.
7389 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7391 * scripts/midi2ly.py (split_track): add __repr__ members.
7392 (track_first_item): only return Item if not None. This fixes a
7393 problem when dumping a track that starts with an empty channel.
7395 * python/midi.c: doc module.
7397 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7399 * Documentation/user/global.itely (Creating MIDI files): Fix
7400 compilation problem.
7402 2005-11-22 Graham Percival <gpermus@gmail.com>
7404 * Documentation/user/basic-notation.itely: clarify dynamic
7407 * Documentation/user/advanced-notation.itely: add unicode
7408 escape control example, whatever that is. :)
7410 * Documentation/user/global.itely: added "removing dynamics
7413 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7415 * VERSION (PATCH_LEVEL): release 2.7.18
7417 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7418 System_start_delimiter_engraver by
7419 Nested_system_start_delimiter_engraver.
7421 * lily/nested-system-start-delimiter-engraver.cc (struct
7422 Bracket_nesting_node): new class.
7423 (struct Bracket_nesting_group): new class
7424 (struct Bracket_nesting_staff): new class.
7425 (process_music): create hierarchy of grobs. This allows separate
7426 tuning of different SSDs.
7428 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7429 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7431 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7433 * lily/side-position-interface.cc (aligned_side): multiply
7436 * lily/script-engraver.cc (make_script_from_event): allow setting
7439 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7441 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7443 * scm/define-grobs.scm (all-grob-descriptions): new grob
7444 NestedSystemStartDelimiter.
7446 * input/regression/system-start-heavy-bar.ly: new file.
7448 * lily/nested-system-start-delimiter-engraver.cc: new file.
7450 * lily/nested-system-start-delimiter.cc: new file.
7452 * input/regression/system-start-nesting.ly: new file.
7454 * scm/define-grobs.scm (all-grob-descriptions): use X side
7455 positioning for positioning braces for nested contexts.
7457 * lily/system-start-delimiter.cc (print): don't divide extent by
7459 (print): use style iso. glyph.
7460 (staff_bracket): translate glyph inside routine already.
7462 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7464 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7467 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7469 * scm/define-context-properties.scm
7470 (all-user-translation-properties): rename figuredBassFormatter
7471 from newFiguredBassFormatter.
7473 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7475 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7477 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7479 * lily/beam.cc (calc_beaming): new function.
7480 (calc_shorten): new function.
7482 * THANKS: add Edward Neeman.
7484 * input/regression/accidental-clef-change.ly: new file.
7486 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7488 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7490 * lily/clef-engraver.cc (inspect_clef_properties): reset
7491 localKeySignature for clef changes.
7493 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7495 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7496 add dummy definition that works in Linux and add information in
7497 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7499 * Documentation/user/changing-defaults.itely (Modifying context
7500 plug-ins): Add index for \with.
7502 * Documentation/user/music-glossary.tely (dal segno): Updated
7503 example to version >=2.6.
7505 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7507 * Documentation/user/instrument-notation.itely (Printing chord
7508 names): Reorder \chordmode and \repeat in one example.
7510 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7512 * VERSION: release 2.7.17
7514 * Documentation/topdocs/NEWS.tely (Top): add note about
7517 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7518 new function. Search region of 3 positions for best tie.
7519 (score_configuration): new function.
7520 (score_aptitude): new function.
7521 (generate_configuration): new function.
7522 (get_configuration): new function.
7523 (Tie_formatting_problem): new function
7525 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7527 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7529 * THANKS: add Eduardo Vieira & Ralph Little
7531 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7534 * lily/include/tie-formatting-problem.hh (class
7535 Tie_formatting_problem): add Tie_details to
7536 Tie_formatting_problem. Update calling conventions.
7538 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7541 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7543 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7545 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7546 scm/define-context-properties.scm: Maintenance bugfix: make
7547 ligature brackets work again by removing obsolete ligature
7548 primitive callback push/pop.
7550 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7551 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7554 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7556 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7557 used and do not call it a path.
7558 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7560 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7562 * lily/include/tie-formatting-problem.hh (class
7563 Tie_formatting_problem): new file.
7565 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7567 * Documentation/misc/ChangeLog-2.3: new file.
7569 * lily/audio-staff.cc (output): degarianize.
7571 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7573 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7574 Unset PYTHONOPTIMIZE. Fixes install if set.
7576 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7578 * python/convertrules.py (conv): add warning about drums.
7580 * make/stepmake.make: include toplevel-version.make after config.make.
7582 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7583 also allow python2.4
7585 * config.make.in (configure-srcdir): remove GXX GCC vars.
7587 * stepmake/aclocal.m4: don't do non-srcdir build with
7588 symlinks. Use inclusion, so the src directory name can be changed.
7590 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7592 * make/mutopia-vars.make:
7593 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7596 2005-11-13 Werner Lemberg <wl@gnu.org>
7598 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7599 but the affected path. This ensures that the (overlapping) outlines
7600 have the same direction, which is a necessary prerequisite for
7601 FontForge's algorithm to remove overlaps.
7604 * mf/feta-haak.mf: Formatting.
7605 (draw_bracket): Slightly modify outline to avoid an unnecessary
7607 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7608 them from the affected paths.
7610 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7612 * mf/README: remove xpm / accordion notes.
7614 * lily/tie-column-format.cc (set_chord_outline): add dots into
7615 skyline extents. This fixes tie formatting if the left head has dots.
7617 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7618 space inside the staff.
7619 (get_configuration): shift another position if necessary in case
7622 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7624 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7625 buildscript-dir iso. $(depth)/buildscripts.
7627 * tex/GNUmakefile (local-uninstall): remove
7628 music-drawing-routines.ps juggling.
7630 * stepmake/stepmake/install-targets.make (local-install-files):
7631 prepend src-dir to install targets.
7633 * lily/system-start-delimiter-engraver.cc
7634 (acknowledge_system_start_delimiter): use
7635 add_offset_callback(). This fixes translation of nested
7638 * lily/grob-closure.cc (add_offset_callback): only encaps in
7639 simple_closure if it's a procedure.
7641 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7644 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7645 remove-empty where pertinent.
7647 2005-11-12 Graham Percival <gpermus@gmail.com>
7649 * Documentation/user/instrument-notation.itely: added
7650 Cameron Horsburgh's multiple stanzas docs. Thanks!
7652 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7655 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7656 make picture in builddir, not srcdir.
7658 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7660 * VERSION: release 2.7.16
7662 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7665 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7667 * Documentation/user/examples.itely (Piano templates): Minor
7668 modification to the Piano centered lyrics example.
7670 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7672 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7675 * Documentation/user/point-and-click.itely: simplify p&c
7676 instruction: don't configure firefox. Put lilypond-invoke-editor
7677 in front of the browser.
7679 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7680 (run-browser): new function.
7682 * lily/parser.yy (Lily_lexer): recognize Book
7684 * lily/book.cc (clone): new function
7686 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7688 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7690 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7691 Maintenance bugfix: reduce number of font related warnings by
7692 updating naming conventions for glyph-name.
7694 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7696 * scm/define-grobs.scm (all-grob-descriptions): add
7697 rhythmic-grob-interface to TabNoteHead.
7699 * scm/layout-beam.scm (check-quant-callbacks): remove
7702 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7704 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7705 alignment of centered divisiones.
7707 * scm/scripts.scm (articulations): Maintenance bugfix:
7708 follow-into-staff -> quantize-position.
7710 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7711 plica head in porrectus deminutus.
7713 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7715 * make/lilypond.fedora.spec.in (Group): add %clean section.
7717 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7718 less then 1/5th of total length.
7719 (print): use gap too. Fixes tupletUp-single-bracket.ly
7721 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7722 events into EventChord. This fixes textspanners on mm rests. Fixes
7725 * lily/side-position-interface.cc (get_axis): read side-axis
7726 (set_axis): set side-axis.
7728 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7729 properties everywhere.
7731 * lily/spacing-spanner.cc (breakable_column_spacing): add
7732 average-spacing-wishes. Take maximum if not set.
7733 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7735 * scm/define-grobs.scm (all-grob-descriptions): add
7736 average-spacing-wishes.
7738 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7739 offset callbacks. This fixes alignment for Fingering objects.
7741 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7742 space for key - timesig combination.
7744 * input/regression/script-stem-tremolo.ly (Module): new file.
7746 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7749 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7750 Fixes: c-tremolo-script.ly.
7752 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7754 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7756 * scm/define-grobs.scm (all-grob-descriptions): remove
7757 self-X-offset. Fixes alignment of octavate-8.
7759 * scripts/lilypond-book.py (datadir): look in
7760 LILYPONDPREFIX/share/lilypond/current/
7762 * GNUmakefile.in: symlink current to <VERSION>.
7764 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7766 * lily/main.cc: eps listed as a backend.
7768 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7770 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7772 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7774 * lily/include/score.hh (class Score): remove texts_ member.
7776 * lily/beam.cc (set_stem_lengths): force direction callback.
7777 (print): read quantized-positions, so we can force
7778 Beam::set_stem_lengths to occur.
7779 (rest_collision_callback): use common X parent.
7781 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7783 * flower/file-path.cc (find): Bugfix: Return name of file found.
7785 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7786 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7787 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7789 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7791 * flower/offset.cc: idem.
7793 * mf/*.mf: update email address.
7795 * lily/font-config-scheme.cc: new file.
7797 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7799 * lily/*: cs.uu.nl -> xs4all.nl
7801 * VERSION (PATCH_LEVEL): release 2.7.15
7803 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7806 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7808 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7810 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7812 * lily/staff-performer.cc (process_music): add audio
7813 elements. This makes MIDI instrument changes work once again.
7815 * lily/main.cc (LY_DEFINE): add gmane address.
7817 * lily/beam.cc: remove calc_positions()
7819 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7820 original_ in private scope.
7821 (class Grob): drop pscore_ pointer, change to output_def pointer.
7822 (class Grob): cleanup class definition.
7824 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7826 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7828 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7829 absolute. Better diagnostics.
7831 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7832 This makes lilypond run from the build directory using argv0
7833 relocation (without any --prefix or LILYPONDPREFIX setting).
7835 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7837 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7839 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7840 with simple-closure.
7842 * lily/self-aligment-interface.cc (set_align_self): new function
7843 (set_center_parent): new function.
7845 * lily/side-position-interface.cc (set_axis): new function.
7847 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7850 * scm/define-grob-properties.scm (all-user-grob-properties):
7851 remove [XY]-offset-callbacks add [YX]-offset
7853 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7855 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7856 entry for time signatures after breathing signs. Bug report by
7859 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7861 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7862 not absolute, make it absolute using PATH.
7864 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7866 * python/midi.c (initmidi): Fix type for mingw.
7868 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7870 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7872 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7875 * stepmake/aclocal.m4: Support python cross compiling.
7877 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7880 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7882 * scm/output-lib.scm (chain-grob-member-functions): replace
7885 * lily/chained-callback.cc (Module): remove file.
7887 * lily/rest-collision.cc (force_shift_callback_rest): change to
7890 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7892 * lily/grob.cc (y_parent_positioning): remove axis argument from
7893 parent_positioning callbacks.
7894 (Grob): junk init code
7895 (get_offset): use generic property callbacks for
7896 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7897 (axis_parent_positioning): new function
7898 (axis_offset_symbol): new function
7899 (chain_offset_callback): new function
7900 (add_offset_callback): new function
7902 * lily/beam.cc (rest_collision_callback): change signature; this
7903 is now a chained callback.
7905 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7906 callback administration.
7908 * lily/simple-closure.cc: new file. Smob type that allows "grob
7911 (ly:make-simple-closure FUNC A B)
7913 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7916 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7919 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7921 * lily/rest.cc (polyphonic_offset_callback): remove.
7923 * lily/script-engraver.cc (try_music): remove bool* argument.
7925 * scm/script.scm (default-script-alist): set quantize-position
7928 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7930 * lily/side-position-interface.cc (aligned_side): move staff
7931 position quantization from
7932 Side_position_interface::quantised_position().
7933 (quantised_position): remove
7935 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7937 * input/regression/beam-quant-standard.ly: reindent, set
7938 debug-beam-quanting to #t.
7940 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7941 10000 if this is a "hard" concave beam.
7943 * lily/beam.cc (calc_least_squares_positions): change from
7944 calc_least_squares_dy
7945 (set_stem_lengths): this is now a chained callback.
7947 * lily/context-property.cc (execute_general_pushpop_property):
7948 bugfix override with procedure should have effect.
7950 * scm/define-grob-properties.scm (all-internal-grob-properties):
7951 remove position-callbacks.
7953 * scm/define-grobs.scm (all-grob-descriptions): use
7954 ly:make-callback-chain for positions property.
7956 * scm/layout-beam.scm (check-quant-callbacks): return list of
7959 * scm/lily.scm (type-p-name-alist): add callback-chain
7961 * lily/lily-guile.cc (type_check_assignment): type check failure
7962 is warning not message.
7964 * lily/grob-property.cc (try_callback): walk callback chain if
7967 * lily/chained-callback.cc: new file. new smob type.
7969 * lily/lily-guile.cc (procedure_arity): new function.
7971 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7973 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7975 2005-10-25 John Mandereau <john.mandereau@free.fr>
7977 * Documentation/user/instrument-notation.itely (Figured bass):
7978 describe new features
7980 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7982 * lily/beam.cc (calc_least_squares_dy): use property callback.
7984 * lily/beam-concave.cc (calc_concaveness): use property callback.
7986 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7988 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7992 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7994 * scm/layout-page-layout.scm (page-headfoot): annotate
7997 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7999 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8000 doesn't take y-space.
8002 * scm/paper.scm (paper-alist): fix A7 dimensions.
8004 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8006 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8007 src-wildcard, remove $(wildcard).
8009 * po/GNUmakefile (PO_FILES):
8010 * ps/GNUmakefile (PS_FILES):
8011 * tex/GNUmakefile (TEX_FILES):
8012 * cygwin/GNUmakefile (POSTINSTALLS):
8013 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8014 some wildcard calls.
8016 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8018 * THANKS: add Thomas Bushnell.
8020 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8022 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8023 (lilypond-main): Redirect to gui-main if 'gui is set.
8025 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8026 for alternative installations kludging s/share/lib/g
8029 * SConstruct (libdir_package_version): Define.
8031 * python/SConscript:
8032 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8035 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8037 * lily/main.cc: clarify --safe.
8039 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8041 * VERSION: release 2.7.14
8043 * Documentation/user/*.itely: remove minimumVerticalExtent.
8045 * scm/define-grobs.scm (all-grob-descriptions): remove
8046 RemoveEmptyVerticalGroup
8048 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8050 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8053 * python/convertrules.py (conv): add rules.
8055 * lily/grob.cc: remove is_empty()
8057 * lily/grob-property.cc: remove add_to_list_property().
8059 * scripts/convert-ly.py (datadir): add prefix switching hack to
8062 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8063 space-function tweak.
8065 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8067 * scm/define-grob-properties.scm (all-user-grob-properties):
8068 remove callback property.
8070 * lily/include/grob.hh (class Grob): remove property_callbacks_
8071 member. Properties of procedure type are assumed to be callbacks.
8073 * lily/ligature-engraver.cc (override_stencil_callback):
8074 rewrite. Use noteHeadLigaturePrimitive as source.
8076 * scm/define-grob-properties.scm (all-internal-grob-properties):
8077 remove ligature-primitive-callback
8079 * lily/include/dimension-cache.hh (class Dimension_cache): make
8080 class, with Grob as friend.
8082 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8083 has_extent_callback()
8085 * scm/translation-functions.scm (format-new-bass-figure): read
8086 figuredBassPlusDirection
8088 * scm/define-context-properties.scm
8089 (all-user-translation-properties): add figuredBassPlusDirection.
8091 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8093 * lily/align-interface.cc (set_ordered): new function.
8095 * lily/grob.cc (flush_extent_cache): rewrite.
8097 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8098 Interval pointer directly.
8100 * lily/main.cc (setup_paths): insert extra / .
8101 (setup_paths): junk cff entry.
8103 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8106 * lily/axis-group-engraver.cc (finalize): remove
8107 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8109 * lily/grob.cc (Grob): don't set extent from ctor.
8110 (extent): use property callbacks.
8112 * lily/axis-group-interface.cc: remove set_axes() function.
8114 * lily/grob-property.cc (del_property): new function.
8116 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8118 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8120 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8122 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8124 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8126 * mf/SConscript: Updates.
8128 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8130 * stepmake/stepmake/*:
8134 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8135 from any directory in build-dir. Cleanups.
8137 * make/srcdir.make.in: Remove.
8139 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8141 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8144 * lily/SConscript: Remove ttftools.
8146 * SConstruct: Resurrect.
8148 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8150 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8153 * lily/paper-book.cc (add_score_title): put Paper_score title into
8156 * scm/translation-functions.scm (format-new-bass-figure): also
8157 allow plus in combination with _
8159 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8161 * VERSION: 2.7.13 released.
8163 * lily/note-collision.cc (check_meshing_chords): don't wipe
8164 stencil, merely set transparent.
8166 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8167 (Top): document #'callbacks.
8168 (Top): document nested \override.
8170 * input/regression/figured-bass.ly: update for slash and pluses.
8172 * input/regression/figured-bass-continuation-forbid.ly (Module):
8175 * scm/translation-functions.scm (format-new-bass-figure): use
8176 slashed-digit if diminished is set.
8177 (format-new-bass-figure): add + if 'augmented is set.
8179 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8181 * input/test/piano-staff-distance.ly: remove file.
8183 * Documentation/user/advanced-notation.itely (Formatting cue
8184 notes): use length-fraction for making stems/beams smaller.
8186 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8189 * lily/new-figured-bass-engraver.cc: new property
8190 centerFiguredBassContinuations
8192 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8195 * lily/context-property.cc (execute_general_pushpop_property):
8198 * input/regression/override-nest.ly: new file.
8200 * python/convertrules.py (FatalConversionError.subber): conversion
8201 rule for #'callbacks
8203 * input/regression/override-nest.ly: new function.
8205 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8208 * lily/context-property.cc (lookup_nested_property): new function.
8209 (evict_from_alist): new function.
8210 (general_pushpop_property): new function.
8211 (execute_general_pushpop_property): rewrite. Support nested
8214 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8216 * lily/beam.cc: use length-fraction too.
8218 * scm/define-grob-properties.scm (all-user-grob-properties):
8219 remove property flag-width-function
8220 (all-user-grob-properties): remove space-function.
8222 * scm/layout-beam.scm: remove flag-width-function.
8224 * lily/beam.cc: remove flag-width-function
8226 * scm/layout-beam.scm: remove beam dir functions.
8228 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8230 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8231 for easier grace tweaks.
8233 * lily/beam.cc: remove dir-function.
8235 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8237 * lily/grob.cc: remove spacing-procedure.
8239 * lily/note-head.cc (calc_stem_attachment): new function.
8240 (internal_print): use callback to get glyph-name.
8242 * lily/grob-property.cc (get_interfaces): new function.
8244 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8246 * lily/stem.cc (calc_stem_end_position): new function.
8247 (calc_length): new function.
8248 document details for stem.
8249 remove Stem::get_direction()
8251 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8253 * lily/grob-property.cc (set_callback): new function.
8255 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8257 * lily/item-scheme.cc: new file.
8259 * lily/bar-line.cc (before_line_breaking): remove function.
8260 remove bar-size-procedure, break-glyph-function
8262 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8264 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8266 * lily/system-start-delimiter.cc (print): suicide from
8267 here. Remove after_line_breaking_callback.
8269 * lily/script-interface.cc (calc_direction): use callback for direction.
8271 * lily/side-position-interface.cc (aligned_side): don't use
8272 Side_position_interface::get_direction directly. Use callback.
8274 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8276 (get_print_stencil): rename from get_stencil: create stencil with
8277 transparency, color and cause.
8279 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8281 * python/convertrules.py (conv): insert temporary warning rule.
8283 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8285 * lily/grob-property.cc (try_callback): remove marker if applicable.
8287 * lily/grob.cc: elucidate doc about after/before-line-breaking
8289 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8291 * lily/stem.cc (height): idem.
8293 * lily/stem-tremolo.cc: idem.
8295 * lily/slur.cc (height): don't use get_uncached_stencil()
8297 * lily/rest.cc (y_offset_callback): use offset callback
8298 iso. after-line-breaking callback.
8300 * lily/grob.cc: change after/before-line-breaking-callback to
8301 after/before-line-breaking dummy properties.
8303 * lily/include/grob.hh: remove Grob_status.
8305 * scm/define-context-properties.scm
8306 (all-user-translation-properties): remove verticalAlignmentChildCallback
8308 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8309 (calc_direction): use callback
8310 (calc_positions): use callback.
8312 * lily/tie.cc (calc_direction): use callback. Only call parent
8313 positioning for more than one tie.
8315 * lily/tie-column.cc (calc_positioning_done): use callback
8317 * lily/slur-scoring.cc (calc_control_points): use callback
8319 * lily/slur.cc (calc_direction): use callback.
8321 * lily/note-collision.cc (force_shift_callback): remove.
8323 * lily/dot-column.cc (force_shift_callback): remove. Use
8324 other_axis_parent_positioning.
8326 * lily/grob.cc (other_axis_parent_positioning): new function.
8327 (same_axis_parent_positioning): new function
8329 * lily/align-interface.cc (alignment_callback): remove function.
8331 * lily/note-collision.cc (calc_positioning_done): use callback.
8333 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8334 (calc_direction): idem.
8335 remove print function.
8337 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8339 * lily/dot-column.cc (calc_positioning_done): use callback.
8341 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8343 * lily/beam.cc (calc_direction): use pseudo-property for beam
8345 (calc_positions): use callback
8347 * lily/align-interface.cc (calc_positioning_done): use
8348 callback. Fold fixed distance and normal alignment in one function.
8350 * lily/stem.cc (calc_stem_end_position): use callback.
8351 (calc_positioning_done): idem.
8352 (calc_direction): idem.
8353 (calc_stem_end_position): idem
8354 (calc_stem_info): idem.
8356 * lily/grob-property.cc (get_property_data): new function:
8357 (try_callback): new function.
8359 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8362 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8364 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8366 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8370 * lily/include/*.hh (Module): compile fixes.
8372 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8374 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8375 as an argument for char-syntax: use (char-syntax (or nil 0))
8376 instead of (char-syntax nil), thanks to Milan Zamazal.
8378 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8380 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8383 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8386 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8388 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8389 add class_name() method.
8391 * lily/music-scheme.cc: remove ly:music-name.
8393 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8395 * cygwin/postinstall-lilypond.sh: Remove cruft.
8397 * cygwin/postremove-lilypond.sh: Remove.
8399 * cygwin/GNUmakefile (default): Remove postremove rules.
8401 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8403 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8406 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8409 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8410 consider break index for broken spanner.
8412 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8413 characters from string before splitting.
8415 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8417 * scm/framework-ps.scm (output-preview-framework): use
8418 is-book-title to determine whether to chop off the booktitle.
8420 * lily/paper-book.cc (systems): init from book-title-properties
8421 (add_score_title): init score-title-properties.
8423 * ly/paper-defaults.ly: add {score,book}-title-properties.
8425 * scm/document-backend.scm (lookup-interface): error message if
8426 using unknown interface.
8428 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8431 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8433 (make_bracket): new function.
8435 * scm/lily.scm (define-scheme-options): add paper-size option.
8437 * ly/declarations-init.ly (laissezVibrer): get paper size from
8440 * scm/translation-functions.scm: use \fontsize for changing the
8443 * scm/define-grobs.scm (all-grob-descriptions): set
8444 between-length-limit to 1.0
8446 * lily/tie-helper.cc: add between_length_limit_ detail property.
8448 * mf/feta-bolletjes.mf: typos.
8450 * lily/note-head.cc (internal_print): don't shadow idx
8451 parameter. This fixes wrong attachment for do shape heads.
8453 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8455 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8457 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8459 * scm/layout-slur.scm: rename from slur.scm
8461 * scm/layout-page-layout.scm: rename from page-layout.scm
8463 * scm/layout-beam.scm: rename from beam.scm
8465 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8466 bass-figure-interface
8468 * lily/new-figured-bass-engraver.cc (process_music): add
8469 implicitBassFigures property.
8471 * scm/define-markup-commands.scm (pad-x): new markup.
8473 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8474 minimumVerticalExtent on FiguredBass context.
8476 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8477 case the continuation crosses a line break.
8479 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8481 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8482 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8483 absolute file name bug.
8485 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8487 * VERSION (PACKAGE_NAME): release 2.7.12
8489 * input/regression/figured-bass-continuation-center.ly: new file.
8491 * input/regression/beam-outside-beamlets.ly: new file.
8493 * lily/beam.cc (set_beaming): don't clip edges.
8494 (connect_beams): don't clip edges.
8496 * lily/beaming-info.cc (clip_edges): new function.
8498 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8500 * Documentation/user/instrument-notation.itely (Figured bass):
8501 demonstrate extenders, update seealso links.
8503 * scm/titling.scm (marked-up-headfoot): change tagline
8504 handling. tagline = ##f will blank the tagline as well.
8506 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8508 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8510 * lily/new-figured-bass-engraver.cc (struct
8511 New_figured_bass_engraver): add new_music_found_ member.
8513 * lily/lilypond-version.cc (Lilypond_version): deal with
8514 incorrectly formatted version strings.
8516 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8517 New_figured_bass_engraver by default.
8519 * lily/ttf.cc (print_trailer): only define glyph names when
8520 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8522 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8524 * lily/horizontal-bracket.cc (make_bracket): new function.
8526 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8527 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8528 BassFigureLine, BassFigureAlignment
8530 * lily/new-figured-bass-engraver.cc (process_music): new file.
8532 * lily/figured-bass-continuation.cc: new file.
8534 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8537 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8539 * scripts/lilypond-book.py: Bug fix, put the quote around the
8540 actual score for LaTeX documents.
8542 * scm/define-grobs.scm (all-grob-descriptions): Change
8543 collapse-height of the SystemStartBracket grob to 5.0,
8544 so the bracket disappears for single stave score lines (similarly
8545 to SystemStartBraces).
8547 * Documentation/user/advanced-notation.itely (Polymetric
8548 notation): Clarify the use of compressMusic.
8550 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8551 that the grace spacer note in other staves need the same duration
8552 and document the stroke-style property.
8554 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8556 * Documentation/user/global.itely (Vertical spacing): document
8557 alignment-extra-space and fixed-alignment-extra-space.
8559 * Documentation/topdocs/NEWS.tely (Top): add entry.
8561 * input/regression/alignment-vertical-spacing.ly: new file.
8563 * python/convertrules.py (conv): add rule.
8565 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8567 * lily/align-interface.cc (stretch_after_break): new
8568 function. Read fixed-alignment-extra-space property.
8569 (align_elements_to_extents): read alignment-extra-space property.
8571 * lily/lily-guile.cc (robust_scm2dir): new function.
8573 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8574 (annotate-space-left): new function. Annotate space left on page.
8575 (annotate-y-interval): new function.
8576 (paper-system-annotate-last): new function. Annotate bottom-space.
8578 * mf/feta-beugel.mf (y):
8580 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8582 * VERSION (PACKAGE_NAME): release 2.7.11
8584 * scm/lily-library.scm (interval-translate): new function
8585 (interval-center): new function.
8587 * scm/page-layout.scm (paper-system-annotate): new function. Add
8588 arrows for dimensions.
8590 * scm/stencil.scm (dimension-arrows): new function.
8592 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8594 * input/regression/page-spacing.ly: add annotatespacing
8596 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8597 (LY_DEFINE): new function ly:paper-system-set-property!
8599 * Documentation/user/global.itely (Paper size): explain how to add
8602 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8603 correspond to GS's definition.
8605 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8607 (print): only connect to next bracket if the next one is alive.
8608 (print): set padding to 0.0 if the bound is a breakable
8609 column. This makes tupletFullLength brackets reach up to the staff
8610 line if it doesn't connect to the next line.
8612 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8614 * lily/bar-number-engraver.cc: correct docs.
8616 * scm/output-lib.scm (first-bar-number-invisible): rename from
8617 default-bar-number-visibility
8619 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8621 * scm/define-music-properties.scm (all-music-properties): remove
8624 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8626 * po/fi.po: refresh.
8628 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8630 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8632 (disappear): bugfix.
8634 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8636 * lily/include/paper-system.hh (class Paper_system): remove
8637 staff_extents_ member.
8639 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8641 * lily/include/paper-system.hh (class Paper_system): remove
8642 number_ variable. Remove is_title_. Remove break_before_penalty_
8644 * lily/paper-book.cc (systems): use 'number property iso. number_
8647 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8648 remove ly:paper-system-number.
8650 * scm/lily-library.scm (paper-system-title?): new function.
8652 * lily/book.cc (process): bugfix: flip ?: cases.
8654 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8657 * ly/music-functions-init.ly: add outputProperty music function.
8659 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8661 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8663 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8665 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8667 * lily/paper-system.cc (internal_get_property): new function.
8669 * Documentation/user/global.itely (Vertical spacing): refer to
8672 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8675 * input/regression/page-spacing.ly: new file.
8677 * input/regression/page-top-space.ly: new file.
8679 * lily/spacing-spanner.cc: cmath -> math.h
8681 * lily/paper-system.cc (read_left_bound): new function. Read
8682 line-break-system-details from left bound to determine extents.
8684 * Documentation/user/programming-interface.itely (Using LilyPond
8685 syntax inside Scheme): change applyxxx -> applyXxx.
8687 * ly/music-functions-init.ly: add outputProperty music function.
8689 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8691 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8693 * python/convertrules.py (conv): rule
8695 * ly/music-functions-init.ly: applyxxx -> applyXxx
8697 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8700 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8702 * flower/include/real.hh: include <math.h> iso. <cmath>
8704 * flower/include/offset.hh: include real.hh
8706 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8708 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8709 fix example, now that 'interfaces is no longer directly available.
8711 * lily/book.cc (process): don't crash if paper == NULL.
8715 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8717 * scm/define-music-types.scm (music-descriptions): set length and
8718 start-callback for QuoteMusic
8720 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8722 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8723 arguments. Fixes compilation error with gcc 3.3.
8725 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8727 * VERSION: release 2.7.10
8729 * stepmake/stepmake/python-module-rules.make
8730 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8732 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8735 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8737 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8738 -Werror. Otherwise GCC barfs over various optimizations.
8740 * scm/define-grob-properties.scm (all-internal-grob-properties):
8741 add note-head property
8743 * Documentation/user/instrument-notation.itely (Laissez vibrer
8746 * input/regression/laissez-vibrer-ties.ly: new file.
8748 * lily/laissez-vibrer-engraver.cc: new file.
8750 * lily/include/tie-column-format.hh: new file.
8752 * lily/tie-column-format.cc: new file.
8754 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8756 * lily/laissez-vibrer-tie.cc: new file.
8758 * lily/include/laissez-vibrer-tie.hh: new file.
8760 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8762 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8764 * scm/define-grobs.scm (all-grob-descriptions): add
8765 LaissezVibrerTie, LaissezVibrerTieColumn
8767 * lily/tie-column.cc (set_tie_config_directions): new function
8768 (final_shape_adjustment): new function.
8769 (shift_small_ties): new function.
8771 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8773 * lily/include/tie.hh (struct Tie_details): add x_gap_
8774 (struct Tie_configuration): add head_position_
8776 * lily/tie-column.cc (set_chord_outline): new function.
8778 * mf/cmr.enc.in: remove file.
8780 2005-09-11 Graham Percival <gpermus@gmail.com>
8782 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8784 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8786 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8787 reduce aliasing effects.
8789 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8792 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8794 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8796 * flower/include/real.hh: std::fabs too.
8798 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8800 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8802 * lily, flower: Include C++ iso C headers. Import namespace std
8805 * lily/side-position-interface.cc:
8807 * lily/note-head.cc:
8808 * lily/include/includable-lexer.hh:
8809 * flower/include/string-data.icc: Remove using std::*.
8811 * lily, flower: Include C++ iso C headers. Import namespace std
8814 * lily/side-position-interface.cc:
8816 * lily/note-head.cc:
8817 * lily/include/includable-lexer.hh:
8818 * flower/include/string-data.icc: Remove using std::*.
8820 * Documentation/user/instrument-notation.itely (Entering lyrics):
8821 Multiple latin-1->utf-8 conversion fix.
8823 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8825 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8827 * lily/tie.cc (get_configuration): also avoid dots for non-space
8830 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8832 * Documentation/user/instrument-notation.itely: Bugfix.
8834 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8836 * tex/GNUmakefile: don't install texinfo.tex
8838 * tex/ : cleanup: remove unused files.
8840 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8842 * flower/include/real.hh: using std::{isnan,isinf}
8844 * VERSION (PATCH_LEVEL): release 2.7.9
8846 2005-09-05 Graham Percival <gpermus@gmail.com>
8848 * Documentation/user/ instrument-notation.itely,
8849 advanced-notation.itely: minor tweaks.
8851 * input/test/script-chart.ly: add item padding.
8853 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8855 * flower/offset.cc: use math.h iso. <cmath>
8857 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8860 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8861 (widen-left-stencil-edges): new function. Fix alignment problems
8862 with LaTeX includegraphics.
8864 * lily/text-interface.cc (interpret_markup): use abort().
8866 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8868 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8870 * lily/tie.cc (get_configuration): update bezier shape as we
8872 (get_configuration): don't move large ties if we're outside of the
8875 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8877 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8879 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8881 * .cvsignore: Add auto-generated configure files and then some.
8883 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8885 * scm/define-grobs.scm (DynamicLineSpanner): Add
8886 X-extent-callback. Fixes hairpin-slur collision.
8888 2005-08-31 Graham Percival <gpermus@gmail.com>
8890 * Documentation/user/advanced-notation.itely,
8891 basic-notation.itely: minor changes.
8893 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8895 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8896 \linebreak between each .eps file if \betweenLilyPondSystem is
8899 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8900 music): Document the \linebreak
8902 * Documentation/user/lilypond-book.itely,
8903 input/tutorial/lbook-latex-test.tex,
8904 Documentation/user/examples.itely: Remove \usepackage{graphics}
8906 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8908 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8910 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8913 * scripts/lilypond-book.py (PREAMBLE_LY): define
8914 inside-lilypond-book
8915 (modify_preamble): new function. Insert \RequirePackage{graphics}
8916 when no {graphics found in preamble.
8918 2005-08030 Graham Percival <gpermus@gmail.com>
8920 * Documentation/user/basic-notation.itely, global.itely,
8921 tutorial.itely: misc small changes.
8923 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8925 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8928 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8930 * lily/tie-column.cc (new_directions): put Tie down on center
8933 * lily/script-interface.cc (before_line_breaking): use
8934 Grob::programming_error
8936 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8938 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8941 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8943 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8945 2005-08-29 Werner Lemberg <wl@gnu.org>
8947 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8948 the `*.scale.pfa' files to avoid warnings.
8950 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8952 * lily/tempo-performer.cc (process_music): idem.
8954 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8956 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8958 * Documentation/user/advanced-notation.itely (Text markup): not a
8961 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8963 * lily/staff-performer.cc (initialize): add tempo/name to
8966 2005-08-26 Graham Percival <gpermus@gmail.com>
8968 * Documentation/user/advanced.itely: add text-only example.
8970 * Documentation/user/invoking.itely: add index entries for
8973 * Documentation/user/ tutorial.itely, basic-notation.itely:
8974 small fixes suggested by Steve D. Thanks!
8976 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8978 * input/regression/markup-bidi-pango.ly: new file.
8980 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8981 standard. Remove #ifdef. Remove memleak.
8982 (text_stencil): use text_dir to decide how to composite items.
8983 (text_stencil): determine uniform text direction for the entire
8986 * scripts/lilypond-book.py (output_name): remove
8987 latex_filter_cmd. Non-portable to non-Unix systems.
8988 (get_latex_textwidth): use File.write and os.unlink() instead.
8990 * THANKS: add Vicente & Trevor.
8992 * lily/grob.cc (discretionary_processing): look up origin for
8993 programming_error too.
8995 * input/regression/tie-broken.ly: new file.
8997 * lily/tie-column.cc (set_chord_outlines): set outline for line
9000 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9002 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9003 unscaled transform, just translate stencils.
9005 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9008 * scm/define-markup-commands.scm (wordwrap-string): use
9010 (wordwrap-stencils): idem.
9013 (wordwrap-stencils): translate last line to right for
9014 text-direction = LEFT.
9016 * scm/define-grob-properties.scm (all-user-grob-properties): add
9019 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9021 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9022 when copying a Lily_parser object.
9024 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9026 * scm/define-markup-commands.scm (null): add null markup.
9028 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9030 * lily/item.cc: Add documentation of center-invisible
9032 2005-08-24 Graham Percival <gpermus@gmail.com>
9034 * Documentation/user/advanced-notation.itely: add info about
9037 * Documentation/user/programming-interface.itely: fix example
9038 involving raised text.
9040 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9042 * lily/beam.cc (print): fix X start/end points of isolated
9045 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9047 * lily/multi-measure-rest.cc (set_text_rods): new function.
9049 * lily/vertical-align-engraver.cc (process_music): call
9050 Align_interface::set_axis(). This forces #'elements to be ordered,
9051 preventing random vertical reordering of staves.
9053 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9054 add avoid-slur property.
9056 * Documentation/user/basic-notation.itely (Measure repeats): add
9057 countPercentRepeats example.
9059 * Documentation/user/advanced-notation.itely (Other text markup
9060 issues): remove remark about normal-font. We have \normal-text
9062 * input/regression/tie-chord.ly: add note about remaining bugs.
9064 * lily/tie.cc (print): try Tie_column::set_directions () if
9065 control-points not yet defined.
9067 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9069 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9070 extent. This fixes braces falling out of the EPS bbox.
9072 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9075 2005-08-23 Graham Percival <gpermus@gmail.com>
9077 * {various} : change #up->#UP and #down->#DOWN.
9079 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9081 * Documentation/user/advanced-notation.itely: clarify
9082 what objects handles text on a multimeasure rest.
9084 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9086 * VERSION (PATCH_LEVEL): release 2.7.7
9088 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9090 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9092 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9094 * input/regression/*.ly: formatting clean-up. Default layout
9095 before music expression.
9097 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9098 romanze28-2 example.
9100 * scm/ps-to-png.scm: remove dir-re function.
9101 (make-ps-images): generate page names, instead of globbing them.
9102 This brings down LilyPond memory usage for make web by a factor
9105 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9106 don't use glob. With 3000 files, globbing
9107 Documentation/user/out-www/ can take too much time.
9109 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9111 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9113 * input/regression/tie-manual.ly: new file
9115 * input/regression/tie-chord.ly: update.
9117 * flower/include/interval.hh (struct Interval_t):
9119 * lily/tie.cc (distance): new function
9120 (height): new function.
9121 (init): new function
9122 (Tie_details): new struct.
9124 * lily/skyline.cc (skyline_height): new function.
9126 * lily/tie-column.cc (set_chord_outlines): new function.
9127 (new_directions): read tie-configuration
9129 * lily/skyline.cc: fix ASCII art.
9131 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9133 * python/convertrules.py (string_or_scheme): Fix spelling error
9135 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9137 * lily/tie-column.cc (set_directions): set directions only once.
9138 (add_configuration): new function.
9140 * lily/tie.cc (set_control_points): new function
9142 * lily/tie-column.cc (new_directions): new function.
9144 * ly/music-functions-init.ly: set 'pitch property
9145 iso. trill-pitch. This makes \relative work with \pitchedTrill
9147 * lily/tie.cc (get_configuration): new function. Don't generate
9148 control points, rather, generate configuration.
9149 remove head-pair property.
9151 * lily/include/tie.hh (struct Tie_configuration): new struct.
9153 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9155 * Documentation/topdocs/NEWS.tely: clarify.
9157 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9159 * lily/tie.cc: remove minimum-length
9161 * scm/define-grob-properties.scm (all-user-grob-properties):
9162 remove staffline-clearance, y-offset
9164 * input/regression/tie-dots.ly (Module): remove.
9166 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9167 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9169 * input/regression/tie-single.ly: new file.
9171 2005-08-21 Graham Percival <gpermus@gmail.com>
9173 * ly/bagpipe.ly: fix compile problem.
9175 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9177 * lily/midi-item.cc (name): new method.
9179 * lily/staff-performer.cc (acknowledge_audio_element): use
9180 signature of baseclass.
9182 * lily/engraver-group.cc (do_announces): move recursion call out
9185 * lily/drum-note-performer.cc (class Drum_note_performer): use
9186 process_music everywhere.
9188 * ly/performer-init.ly: add default children everywhere.
9190 * lily/paper-book.cc (output): call paper-book-write-midis
9191 directly: always write MIDI, even if no \layout {} block.
9193 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9195 * VERSION (PACKAGE_NAME): release 2.7.6
9197 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9198 about not being able to handle repeat.
9200 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9202 * Documentation/user/examples.itely (Piano templates):
9203 * lily/include/performer-group.hh: Remove last traces of
9204 Performer_group_performer. Fixes make web.
9206 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9208 * Documentation/user/examples.itely (Piano templates): change
9209 Engraver_group_engraver -> Engraver_group
9211 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9212 scm_stand_in_procs is not weak_any.
9214 * lily/volta-bracket.cc (print): don't use strcmp().
9216 * lily/volta-engraver.cc (process_music): use
9217 Text_interface::is_markup() for setting the 'text property of the
9220 * input/mutopia/claop.py (accents): update syntax to 2.6
9222 * scm/define-context-properties.scm
9223 (all-user-translation-properties): add countPercentRepeats.
9225 * Documentation/user/basic-notation.itely (Measure repeats): add
9226 isolated percent example.
9228 2005-08-18 Graham Percival <gpermus@gmail.com>
9230 * input/ {various}: change direction #1, #-1 to
9231 #up/#down or \fooUp, \fooDown.
9233 * Documentation/user/music-glossary.tely: #-1 to #down.
9235 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9236 to #up, #-1 to #down.
9238 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9240 * lily/include/engraver-group.hh: rename.
9242 * lily/include/performer-group.hh: rename.
9244 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9246 * input/test/script-abbreviations.ly: Removed some old LaTeX
9249 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9251 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9252 Remove functions. Remove if 1: constructs, reindent.
9254 * scripts/convert-ly.py (add_version): Add functions from
9257 * scm/script.scm (default-script-alist):
9258 s/priority/script-priority. Fixes script stacking. Backportme.
9259 (Fermata): Very low priority.
9261 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9263 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9265 * input/regression/slur-script.ly: remove padding tweaks. Add
9268 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9269 time sigs and related stuff.
9271 * scm/define-grob-properties.scm (all-user-grob-properties): add