1 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * Documentation/user/GNUmakefile:
4 don't use ImageMagick, use GS directly.
7 otf depends on otf-g?table. Fixes race condition in -j2 build.(cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
13 remove .deb/.rpm downloading.
15 * buildscripts/git-update-changelog.py:
16 bugfixes for git-update-changelog.py
18 * Documentation/user/GNUmakefile:
21 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
23 * input/regression/tie-semi-single.ly:
24 use position/direction from single tie case too. This fixes overridesand defaults for single laissez-vibrer and repeat ties.
26 * buildscripts/git-update-changelog.py:
27 only prepend header if one patch was successful.
29 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
31 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
32 stuff. Remove cygwin packaging stuff.
34 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
36 * python/convertrules.py (conv): Part 2 fixes vertical extent.
38 * input/test/vertical-extent.ly: Fix and elaborate on vertical
39 staff extent. (Thanks Mats)
41 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
43 * buildscripts/git-update-changelog.py (main): write .msg and cvs
46 * scm/define-grobs.scm:
47 separation-items have width
53 * Documentation/topdocs/NEWS.tely:
54 * lily/separating-group-spanner.cc:
55 * lily/slur-engraver.cc:
56 * lily/slur-scoring.cc:
57 * scm/define-grobs.scm:
58 * input/regression/slur-clef.ly:
59 add breakableSeparationItem to extra encompass for slurs. This
60 fixes slur/clef slur/key collisions etc. Should fix #49
62 * lily/include/slur-scoring.hh:
63 * lily/slur-scoring.cc:
64 Use X of separation item as slur start. Fixes #120
66 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
68 * buildscripts/git-update-changelog.py (changelog_body): don't
71 * lily/grob.cc: add avoid-slur
73 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
77 move server/emacsclient to elisp/
79 * buildscripts/git-update-changelog.py (Commit.note_del_file):
82 * elisp/server.el.patch:
85 * elisp/emacsclient.patch:
88 * buildscripts/git-update-changelog.py:
95 * buildscripts/git-update-changelog.py:
96 script to update ChangeLog with Git messages.
98 * lily/beam-engraver.cc:
99 * input/regression/rest-pitched-beam.ly:
100 don't set callback if staff-position set. Fixes #126.
102 * lily/bar-number-engraver.cc:
104 * lily/fingering-engraver.cc:
105 * lily/grob-property.cc:
107 * lily/include/grob.hh:
108 * lily/include/lily-guile-macros.hh:
109 * lily/mark-engraver.cc:
110 * lily/melody-engraver.cc:
111 * lily/script-column.cc:
112 * lily/tie-formatting-problem.cc:
114 internal_get_property_data() using ly_symbol2scm()
116 * stepmake/stepmake/generic-targets.make:
117 create .gitignore in outdir.
122 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
124 * input/test/vertical-extent.ly:
125 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
127 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
129 * stepmake/bin/add-html-footer.py (compose): remove setgcos
131 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
133 * GNUmakefile.in (install-help2man): install-help2man target.
135 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
137 * SConstruct (configure): Do not check for /bin/sh.
139 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
141 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
144 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
146 * input/regression/fret-boards.ly: new file.
148 * po/de.po: new po courtesy translation team.
150 * scripts/lilypond-book.py (get_option_parser): add newline to doc
153 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
155 * ly/gregorian-init.ly (neumeDemoLayout): update
156 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
158 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
159 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
161 2006-10-27 Erlend Aasland <erlenda@gmail.com>
163 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
164 Yet another build fix.
166 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
168 * SConstruct (lilypondprefix): use sorted() for list_sort()
171 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
173 * flower/SConscript: Unit test rules.
175 * flower/test-std.cc: Compile fix.
177 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
179 * python/midi.c (pymidi_parse_track): warning fixes.
181 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
182 include dot-column.hh
184 2006-10-26 Graham Percival <gpermus@gmail.com>
186 * Documentation/user/{basic-, global}: minor changes from mailist.
188 2006-10-26 Erlend Aasland <erlenda@gmail.com>
190 * scm/define-grobs.scm: trivial beautification
192 * lily/tie-performer.cc: no need to #include "pqueue.hh"
194 * lily/source-file.cc: put multibyte var inside #if clause
196 * scm/define-grob-interfaces.scm:
197 * scm/define-grob-properties.scm:
198 Build fix (string-fret-finger-combinations)
200 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
203 * Documentation/user/lilypond-book.itely: Build fix.
205 2006-10-26 Joe Neeman <joeneeman@gmail.com>
207 * lily/system.cc (get_paper_system):
208 * lily/paper-book.cc (systems):
209 move most of the backwards compatibility stuff into
212 * Documentation/topdocs/NEWS.tely: add 2 entries for the
215 * Documentation/user/page.itely: remove time-scaled-music
216 bug for the Page_turn_engraver
218 * lily/paper-book.cc (set_system_penalty): backwards
219 compatibility (breakbefore) for the old page breaker
221 2006-10-25 Graham Percival <gpermus@gmail.com>
223 * Diocumentation/user/instrument-notation.itely: added more
224 info about stanzas; thanks Geoff!
226 * Documentation/user/ {basic, advanced}: small fixes from
229 * THANKS: add some bug reporters.
231 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
233 * scm/define-context-properties.scm (all-user-translation-properties):
234 noteToFretFunction: Add.
236 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
237 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
239 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
241 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
244 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
245 Remove bashism in delete.
247 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
249 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
251 * scm/translation-functions.scm (determine-frets-mf): flatten let*
253 * scm/define-context-properties.scm
254 (all-user-translation-properties): add maximumFretStretch property.
256 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
258 * lily/source-file.cc (get_counts): use multibyte variable.
260 * scm/translation-functions.scm (determine-frets-mf): new
261 function: compute fret numbers.
263 * scm/output-lib.scm (string-frets->description) new function.
264 (fret-board::calc-stencil): new function
266 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
268 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
270 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
272 * lily/tab-note-heads-engraver.cc: cleanups.
274 * lily/fretboard-engraver.cc: new file
276 * ly/engraver-init.ly: add FretBoards context
278 2006-10-24 Joe Neeman <joeneeman@gmail.com>
280 * lily/grob.cc (pure_relative_y_coordinate)
281 (pure_height): use the new call_pure_function stuff
283 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
286 * lily/side-position-interface.cc (pure_y_aligned_side): add an
289 * lily/simple-closure.cc (ly_eval_simple_closure): make
290 simple-closure evaluatable from scheme
291 (evaluate_with_simple_closure): make simple-closures pure-
294 * lily/slur.cc (pure_outside_slur_callback): new function
296 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
297 fits in with previous changes that made the page forces much
300 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
301 and pure-Y-extent into this new function.
302 (pure-conversions-alist): add outside-slur-callback
304 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
306 * Documentation/user/advanced-notation.itely (Instrument names):
307 Remove obsolete bug workaround for instrument names on piano
310 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
312 * Documentation/user/lilypond-book.itely (Integrating DocBook and
313 music): patch by Bertalan Fodor for docbook.
315 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
316 of $(LILYPOND). Prevents lilypond run for .txt files.
318 * INSTALL.txt: gitness.
320 * .cvsignore: update to force gitness.
322 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
324 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
325 detect suicide in nested tuplets.
327 2006-10-23 Werner Lemberg <wl@gnu.org>
329 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
330 typo in argument to FT_Get_X11_Font_Format.
332 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
334 * stepmake/stepmake/po-vars.make: more gitness.
336 * flower/polynomial.cc (check_sol): no empty if bodies.
338 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
340 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
342 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
344 * Documentation/user/examples.itely (Transcription of mensural
345 music): Added more comments in .ly source. Suggest to remove
346 Forbid_line_break_engraver to allow line breaking at all bars.
348 * Documentation/user/instrument-notation.itely (Ancient
349 articulations): Updated @refbugs regarding episem.
351 * Documentation/user/instrument-notation.itely (Gregorian square
352 neumes ligatures): Added \augmentum dots. Updated @refbugs
353 regarding \augmentum.
355 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
357 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
360 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
363 * ly/gregorian-init.ly: Added \augmentum macro.
365 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
367 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
369 * lily/pango-font.cc (pango_item_string_stencil): use
370 FT_Get_X11_Font_Format()
372 2006-10-22 John Mandereau <john.mandereau@free.fr>
374 * po/fr.po: update translation.
376 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
378 * VERSION (PATCH_LEVEL): bump version
380 * input/regression/horizontal-bracket-break.ly: new file.
382 * scm/define-grobs.scm (all-grob-descriptions): calc
385 * lily/horizontal-bracket.cc (make_bracket): support
386 connect-to-neighbor. Fix #118
388 * VERSION: release 2.9.26-2
390 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
392 * VERSION (PACKAGE_NAME): release 2.9.26
394 * buildscripts/output-distance.py (test_basic_compare): add
396 (FileLink.multi_img_cell): new function, glob multi-page png
399 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
401 * po/lilypond.pot: update.
403 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
405 * Documentation/user/global.itely (File structure): remove
408 * lily/parser.yy (FIXME): remove ADDQUOTE
410 * Documentation/user/global.itely (Extracting fragments of
411 notation): new node, about clip systems.
413 * Documentation/user/lilypond-book.itely (Many quotes of a large
414 score): ref to clip systems.
416 * Documentation/user/instrument-notation.itely (Entering lyrics):
417 add note about lyric ties and required font.
419 * lily/open-type-font.cc (glyph_list): format errors.
421 * Documentation/user/programming-interface.itely (Scheme
422 procedures as properties): more doco on simple-closure and scheme
424 (Input variables and Scheme): use lilypond[verbatim], document
427 * Documentation/user/page.itely (Displaying spacing): use \book
428 explicitly, so arrows show .
429 (Line breaking): add note about Forbid_line_break_engraver
431 * Documentation/user/tweaks.itely (Common tweaks): also set length
432 to prevent tie squeezing.
433 (Default files): use @var{}
435 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
436 (Generating LilyPond files): add FOMUS.
438 2006-10-20 Joe Neeman <joeneeman@gmail.com>
440 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
441 Y-offset for TextScript and Script
443 * lily/text-engraver.cc (make_item):
444 * lily/script-engraver.cc (make_script_from_event):
445 remove call to Side_position_interface::set_axis since all scripts
446 now have this set by default
449 * lily/prob.cc: use variables
451 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
453 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
454 at typography, rather analyse stream event duration.
456 * Documentation/user/page.itely (Page formatting): set a6 paper
457 for system separator example.
459 * lily/arpeggio.cc (Module): idem.
461 * lily/accidental-placement.cc: add script-priority property.
463 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
465 * lily/ttf.cc (print_trailer): if all else fails: use
466 glyphIndexXXXX as glyph name. Fixes #117.
468 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
469 entry if cmap contains glyph.
470 (get_index_to_charcode_map): remove from Pango_font class, use
471 global filename -> font mapping.
472 (get_glyph_index_name): new function.
473 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
476 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
478 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
481 * scm/define-grob-properties.scm (all-user-grob-properties):
482 remove outdated doc. Fixes #116
484 * lily/completion-note-heads-engraver.cc (process_music): always
485 clone input events; otherwise we may overwrite input 'duration
486 property. Fixes #115.
488 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
491 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
494 * VERSION (PATCH_LEVEL): bump version.
496 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
498 * lily/engraver.cc (internal_make_grob): use variables.
500 * flower/string-convert.cc (dec2double): clean-up warnings.
502 * configure.in (CXXFLAGS): add -Werror.
504 * VERSION (PACKAGE_NAME): release 2.9.25
506 2006-10-18 Joe Neeman <joeneeman@gmail.com>
508 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
509 line even if we precede a forced break.
511 * lily/optimal-page-breaking.cc (try_page_spacing): square line
512 forces too. Make page-spacing weight default to 10 because the
513 changes to vertical springs decreased the page force/line force
514 proportions. Also, take the average of line force and page force
515 instead of just the sum.
517 * lily/constrained-breaking.cc (initialize): make the stiffness
518 of the vertical springs depend on the height of the system. This
519 prevents pages with only a few large systems from getting huge
522 * Documentation/user/page.itely (Page formatting): document the
523 change in default page-spacing-weight
525 * lily/include/constrained-breaking.hh: initialise bottom_padding_
527 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
529 * input/typography-demo.ly (melody): remove superfluous slur.
531 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
532 add piano-pedal-script-interface
534 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
536 * scripts/lilypond-book.py: DocBook support.
538 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
540 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
542 (stop_translation_timestep): set bound to currentMusicalColumn if
543 not set yet. Fixes #102
545 * lily/piano-pedal-bracket.cc: formatting.
547 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
549 * lily/piano-pedal-align-engraver.cc: new class
550 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
553 2006-10-18 Heikki Junes <hjunes@gmail.com>
555 * po/fi.po: Update Finnish translation (before the next release).
557 2006-10-17 Joe Neeman <joeneeman@gmail.com>
559 * lily/system.cc (get_paper_system): reinstate the backwards-
560 compatible page breaking for the old page breaker.
562 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
564 * lily/recording-group-engraver.cc: removed
566 * lily/context.cc, lily/translator-group.cc: Don't touch
567 Context::implementation_ if it's null
569 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
571 * scm/paper.scm: only use left-margin if defined.
573 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
575 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
577 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
578 strokeFingerOrientations
580 * lily/script-column.cc (row_before_line_breaking): also handle
581 accidentals and arpeggios in horizontal script stacking.
583 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
586 * input/regression/script-stack-horizontal.ly: trim.
588 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
590 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
593 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
594 'text if string argument.
596 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
598 * scm/define-context-properties.scm
599 (all-user-translation-properties): change to strokeFingerOrientations
601 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
603 * lily/parser.yy: remove debug output
605 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
607 * ly/paper-defaults.ly: set left/right margin.
609 * scm/paper.scm (set-paper-dimensions): use left-margin and
610 right-margin for computing linewidth.
612 * Documentation/topdocs/NEWS.tely (Top): idem.
614 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
617 * scm/define-markup-commands.scm (tied-lyric): increase negative
618 space: space syllables tighter.
620 * VERSION (PATCH_LEVEL): bump version.
622 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
625 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
627 * COPYING: further clarification
629 * VERSION: release 2.9.24
631 * input/regression/script-stack-horizontal.ly: add version.
633 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
635 * input/regression/lyric-tie.ly (texidoc): use different words.
637 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
639 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
641 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
642 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
644 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
646 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
648 * Doxyfile: remove file.
650 * scm/define-grob-interfaces.scm (string-finger-interface): add
651 string-finger-interface
653 * lily/general-scheme.cc (LY_DEFINE): move
654 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
656 * Documentation/topdocs/NEWS.tely (Top): add note for
657 string-finger feature.
659 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
662 * scm/output-lib.scm (string-finger::calc-text): read 'digit
665 * input/regression/script-stack-horizontal.ly: new file.
667 * ly/engraver-init.ly: add Script_row_engraver.
669 * lily/script-column.cc (order_grobs): refactor: separate axis
671 (row_before_line_breaking): new function.
673 * lily/script-row-engraver.cc (Script_row_engraver): new file.
675 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
677 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
679 * Documentation/user/instrument-notation.itely: Cleanup: Remove
680 annoying skip notes from mensural ligature example. Update
681 @refbugs for ligatures and mensural ligatures.
683 * lily/coherent-ligature-engraver.cc,
684 lily/include/coherent-ligature-engraver.hh,
685 lily/mensural-ligature-engraver.cc,
686 lily/vaticana-ligature-engraver.cc: Revise code for item
687 reparentizing. There should now be less programming_error
690 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
692 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
693 Maintenance bugfix: Don't create empty Stencil (), but empty box
694 instead. This fix should eliminate some programming_error
697 * ly/engraver-init.ly (MensuralStaff): Set default accidental
700 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
701 \layout block _before_ score.
703 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
705 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
707 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
709 2006-10-13 Erlend Aasland <erlenda@gmail.com>
711 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
713 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
715 * VERSION (PATCH_LEVEL): bump version.
717 * COPYING: clarify exception note.
719 * lily/main.cc: remove remark about "COPYING".
721 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
722 system-count starts at 0 for each clip-region. Change name to
723 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
724 layout block, per score.
726 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
728 * lily/input-smob.cc: add equal_p for Input
730 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
733 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
735 * lily/prob.cc: Add equal_p predicate for Prob
737 * lily/translator.cc: small cleanup
739 * scm/document-music.cc: use data from translator listener
740 registration to generate documentation for event classes
742 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
744 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
746 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
748 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
750 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
752 * Documentation/topdocs/INSTALL.texi: Thinko.
754 * .cvsignore: Update.
756 * lexer-gcc-3.1.sh: Remove.
758 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
759 Update anonymous cvs access. Remove comment about gcc 3.0.4.
761 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
763 * VERSION: release 2.9.23
765 * lily/paper-column-engraver.cc (stop_translation_timestep): also
768 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
770 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
772 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
774 * input/regression/clip-systems.ly (Notes): new file.
776 * scm/lily.scm (define-scheme-options): add clip-systems option.
778 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
780 (dump-stencil-as-EPS): move bbox calculation from previous
782 (output-framework): use -dclip-systems
784 * scm/lily-library.scm (filtered-map): new function
786 * scm/framework-ps.scm (clip-system-EPS): new function.
787 (clip-system-EPSes): new function.
789 * lily/paper-column.cc: add rhythmic-location to interface
791 * scm/define-grob-properties.scm (all-user-grob-properties): add
792 rhythmic-location property.
794 * scm/clip-region.scm: new file: rhythmic-location data type and
795 system-clipped-x-extent function.
797 * ly/init.ly: use (scm clip-region)
799 * lily/paper-column-engraver.cc (stop_translation_timestep): set
800 rhythmic-location for paper column grobs.
802 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
804 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
806 * ly/engraver-init.ly: Remove obsolete comment on
809 * Documentation/user/instrument-notation.itely: Tune Ancient
810 Articulations figure, such that the episem actually shows.
812 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
813 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
815 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
818 2006-10-12 Graham Percival <gpermus@gmail.com>
820 * Documentation/user/ {some}: minor edits that were lost somehow.
822 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
824 * VERSION (PACKAGE_NAME): bump version.
826 * input/regression/lyric-tie.ly (texidoc): new file.
828 * Documentation/topdocs/NEWS.tely (Top): add new feature.
830 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
832 * scm/define-markup-commands.scm (tied-lyric): new function: split
833 string along ~ and reattach with U+203F (tie character) and
836 * scm/output-lib.scm (lyric-text::calc-text): new function.
838 * lily/lyric-engraver.cc (process_music): don't set 'text.
840 * scm/output-lib.scm (string-finger::calc-text): new function
841 (lyric-text::print): new function.
843 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
844 generic for fingering & string number. Use for string-finger.
846 * scm/define-music-types.scm (music-descriptions): add
849 * lily/fingering-engraver.cc (listen_string_finger): new function
851 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
853 * scm/define-context-properties.scm
854 (all-user-translation-properties): add stringFingerOrientations
856 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
858 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
859 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
861 * lily/dots.cc: Added style property for dots.
863 * mf/parmesan-heads.mf: Fix typo in comment.
865 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
866 adding longa head to feta font and removing obsolete default
869 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
871 * scm/output-lib.scm (fingering::calc-text): use origin
872 event-property, not music-property.
874 * lily/lilypond.rc.in: spell my name correctly.
876 2006-10-10 Joe Neeman <joeneeman@gmail.com>
878 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
879 already have a non-empty extent. Fixes estimation for Hara-kiri
882 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
884 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
887 * lily/ligature-engraver.cc: Remove unused #include.
889 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
890 Bugfix: remove method check_for_prefix_loss(Item *) from global
891 namespace to avoid namespace pollution.
893 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
895 * VERSION: release 2.9.22
897 * ly/generate-documentation.ly: update option name.
899 * lily/dynamic-text-spanner.cc (print): revert fix.
901 * scm/define-grob-interfaces.scm
902 (trill-pitch-accidental-interface):
903 add trill-pitch-accidental-interface
905 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
906 dereference if it's really a duration.
908 * lily/figured-bass-engraver.cc (process_music): clear spanner if
909 useBassFigureExtenders is not set.
910 (listen_bass_figure): record as new event if
911 useBassFigureExtenders not set. Fixes #103.
913 * scm/stencil.scm (circle-stencil): don't center stencil argument,
914 instead: move circle. Fixes #107.
916 * scm/define-grobs.scm (all-grob-descriptions): set
917 allow-loose-spacing for PaperColumn and
918 NonMusicalPaperColumn. Kludge for #110.
920 * lily/spaceable-grob.cc: add allow-loose-spacing property.
922 * lily/spacing-determine-loose-columns.cc (is_loose_column):
923 allow-loose-spacing property.
925 * scm/define-markup-commands.scm (postscript): gsave & grestore
926 around embedded PS. Do setlinewidth too. Fixes #109.
928 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
930 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
931 code. This patch fixes ligature brackets that were not at all
934 2006-10-08 Graham Percival <gpermus@gmail.com>
936 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
938 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
940 * scm/define-context-properties.scm: clarified docs (bug 91).
942 * Documentation/user/basic-notation.itely: document volta brackets
943 not aligning (bug 63).
945 * Documentation/user/ global.itely invoking.itely: ignore or
946 add warnings about texstr.
948 2006-10-08 John Mandereau <john.mandereau@free.fr>
950 * po/fr.po: update translation.
952 * po/: update msgids.
954 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
956 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
958 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
960 * Documentation/user/page.itely (Two-pass vertical spacing): add
961 documentation for two-pass spacing technique.
963 2006-10-06 Graham Percival <gpermus@gmail.com>
965 * Documentation/user/convert-ly.txt: new file; new
966 storage place for this file (moved from bugs/ CVS).
968 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
970 * lily/note-head.cc: Fixed programming_error message.
972 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
974 * scm/define-grobs.scm (pure-conversion): move pure-callback
977 * scm/script.scm (default-script-alist): set avoid-slur for turn,
978 marcato, stopped, thumb.
980 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
982 * lily/completion-note-heads-engraver.cc (process_music): don't
983 skimp on memory usage.
985 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
988 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
989 parenthesis item. This fixes premature Y-extent triggering. Fixes
992 * VERSION (PATCH_LEVEL): bump version.
994 2006-10-04 Graham Percival <gpermus@gmail.com>
996 * Documentation/user/advanced-notation.itely: added
997 info about instrument names for piano or other contexts,
1000 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1002 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1003 solfa_base_notewidth as unit for non-DO-notes too.
1005 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1007 * VERSION: release 2.9.21
1009 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1012 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1014 * python/lilylib.py (progress): Minor fix.
1016 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1018 * lily/note-name-engraver.cc: doc engraver.
1020 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1022 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1024 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1027 * lily/stem-engraver.cc (make_stem): don't set duration-log
1029 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1030 write snippet-names binary.
1032 * python/lilylib.py (system): use os.system for mingw32
1034 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1037 * scm/backend-library.scm: update email address.
1039 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1042 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1045 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1046 handle dot creation separately.
1048 * lily/tab-note-heads-engraver.cc (process_music): idem.
1050 * lily/drum-note-engraver.cc (process_music): idem.
1052 * lily/note-heads-engraver.cc (process_music): idem.
1054 * lily/rest-engraver.cc: don't set duration-log.
1056 * scm/output-lib.scm (string-number::calc-text): new function.
1057 (note-head::calc-duration-log): new function.
1059 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1061 * scm/output-lib.scm (fingering::calc-text): new function.
1063 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1065 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1066 and include-eps-font -> include-eps-fonts
1068 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1070 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1072 * lily/timing-translator.cc: list properties.
1073 (start_translation_timestep): update internalBarNumber too.
1075 * scm/define-context-properties.scm
1076 (all-user-translation-properties): add internalBarNumber.
1078 * input/regression/spacing-no-note.ly: new file.
1080 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1082 * lily/book.cc: #include cleanup.
1084 * lily/include/lily-guile-macros.hh: add assert to
1085 scm_or_str2symbol(SCM).
1087 * VERSION (PATCH_LEVEL): bump version.
1089 * lily/spacing-spanner.cc (musical_column_spacing): handle
1090 musical->nonmusical spacing case, where there is no spacing
1091 wish. Fixes issue #61.
1093 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1094 (pango_item_string_stencil): use logical rect horizontally (to
1095 preserve spaces), ink_rect vertically (for time signatures).
1097 * lily/font-metric.cc (word_stencil): new interface function
1099 * input/regression/utf-8-mixed-text.ly: new file.
1101 * lily/percent-repeat-engraver.cc (listen_percent): remove
1104 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1105 non-dynamic scripts. Fixes #30.
1107 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1109 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1111 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1112 SCM_UNDEFINED for non-existent data.
1114 * lily/side-position-interface.cc (general_side_position): allow
1115 optional current_offset argument for chaining, so combinations of side-position
1116 and outside slur callback don't add up. Fixes issue #92.
1118 * lily/pango-font.cc (pango_item_string_stencil): use
1119 logical_rect. This prevents spaces after words from disappearing,
1122 * VERSION: release 2.9.20
1124 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1126 * scm/define-grob-properties.scm (all-user-grob-properties):
1127 mention stencil as user settable.
1129 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1131 * Documentation/user/page.itely (Page formatting):
1132 document auto-first-page-number
1134 * lily/page-breaking.cc (find_chunks_and_breaks):
1135 * lily/paper-score.cc (calc_breaking): Follow changes to the
1136 Constrained_breaking interface
1138 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1139 here backwards, as an optimisation
1140 (initialize): new function; move most of the code in resize () here
1141 (combine_demerits): cache ragged_right_
1142 (Constrained_breaking): constructor now takes the Paper_score
1144 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1146 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1147 avoid parser lookahead for 0-ary functions.
1149 * lily/translator.cc: Extract event classes from
1150 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1152 2006-10-02 Heikki Junes <hjunes@gmail.com>
1154 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1157 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1159 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1160 function. Call the page breaking function selected in the
1161 `page-breaking' \paper variable, then the post processing function
1162 chosen using the `page-post-process' \paper variable.
1163 (line-height): new function. Return the height of a system.
1164 (line-minimum-position-on-page): new function. Return the position
1165 of a system on page (using the previous line position), only
1166 considering between system padding.
1167 (stretchable-line?): new function. Says whether a line can be
1168 stretched (ie. is not a title nor a single staff system).
1169 (page-maximum-space-left): new function. Computes space left on a
1170 page, when all systems are separated by their padding.
1172 * lily/page-breaking.cc (breaking::make_pages): Move page post
1173 processing function call to page breaking wrapper (common to all
1176 * lily/paper-book.cc (book::pages): call the page breaking
1177 wrapper, instead of the page breaker directly
1179 * ly/paper-defaults.ly: Add \paper variables for page breaking
1180 wrapper and page post processing function. Make
1181 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1182 `system-maximum-stretch-procedure' variable for holding a function
1183 computing the maximum stretch a system allows.
1185 * scm/layout-page-dump.scm (write-page-breaks): computes the
1186 stretch to apply to systems on a page to minimize left
1187 space. Dump this stretch length.
1189 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1190 the system-stretch property of the tweak data to stretch the
1192 (includePageLayoutFile): Void function which includes the
1193 generated page-layout file if it exists and if the page layout
1194 dumping is not asked.
1195 (scoreTweak): if the score tweak named by the argument exists,
1198 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1200 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1201 handle correctly the case where there are multiple \noPageBreaks
1204 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1206 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1208 * abc2ly.py fix so that entering " -- " will translate to a -- in
1209 the lilypond instead of a " - - "
1211 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1213 * lily/align-interface.cc: fix typo
1215 * lily/dynamic-text-spanner.cc (print): Add a special case for
1216 trill spanner right sides.
1218 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1220 * lily/align-interface.cc (get_extents_aligned_translates): add
1221 support for padding variable.
1223 * lily/break-align-interface.cc (self_align_callback): oops: use
1224 loop variable in guard.
1226 * input/regression/repeat-percent-grace.ly: new file.
1228 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1229 remember first currentCommandColumn of a grace run. Fixes issue 70.
1231 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1232 move class definition to CC file.
1234 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1236 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1237 measure-long repeats.
1239 * flower/include/international.hh: include stdarg.h
1241 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1243 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1244 put_systems_on_pages to return an empty result, we need to assign
1245 demerits properly in that case.
1246 (put_systems_on_pages): Make the number of pages depend on the
1247 evenness of page_number. Add auto-first-page-number.
1248 (calc_subproblem): ensure that the page-number is even for the
1249 left-hand page. Warn if the first page-turn doesn't fit onto the
1250 first (right-hand) page.
1252 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1253 (min_page_count): make this publicly accessible
1254 (min_page_count): fix a bug when there are forced page breaks that
1255 was introduced when I made this loop run backwards
1256 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1257 replace space_systems_on_min_pages with these two. The logic in
1258 space_systems_on_min_pages was getting too convoluted and is better
1259 contained in page-turn-page-breaking.
1261 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1263 (breakable_column): typo
1265 * lily/source-file.cc (get_line): fix off-by-one error
1266 and clean up some of the logic
1268 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1270 * lily/page-breaking.cc (make_pages): honour the first-page-number
1273 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1275 * VERSION (PACKAGE_NAME): bump version.
1277 2006-09-26 Pal Benko <benko.pal@gmail.com>
1279 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1280 (the latter is the same as petrucci-f which is kept for compatibility)
1282 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1284 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1286 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1288 * lily/global-context.cc (run_iterator_on_me): break out of loop
1289 if moment doesn't increase.
1291 * scm/define-grob-properties.scm (all-user-grob-properties): add
1294 * lily/accidental.cc (after_line_breaking): read forced property.
1296 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1299 * input/regression/accidental-forced-tie.ly: new file.
1301 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1303 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1305 * lily/figured-bass-engraver.cc: only listen to rest events if
1306 ignoreFiguredBassRest is not set.
1308 * scm/define-context-properties.scm
1309 (all-user-translation-properties): add ignoreFiguredBassRest property
1311 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1313 * lily/paper-book.cc (get_system_specs):
1314 (set_system_penalty): fix breakbefore.
1315 We used to set a penalty on the system after the break, now we
1316 set a permission on the system before the break
1318 * lily/grob-property.cc: add scm debugging hooks into
1319 property modification
1321 * lily/context-property.cc:
1323 rename make_foo_from_properties to internal_make_foo and
1324 move it from context-property.cc to a member function of
1327 * lily/include/lily-guile-macros.hh:
1328 overload ly_symbol2scm macro so that there is no more need
1331 * lily/volta-repeat-iterator.cc:
1332 * lily/tweak-engraver.cc:
1333 * lily/tuplet-bracket.cc:
1334 * lily/span-bar-engraver.cc:
1335 * lily/script-engraver.cc:
1336 * lily/prob-scheme.cc:
1337 * lily/pointer-group-interface.cc:
1339 * lily/grob-scheme.cc:
1340 * lily/grob-property.cc:
1342 * lily/context-property.cc:
1343 * lily/break-substitution.cc:
1344 * lily/break-align-engraver.cc:
1345 * lily/axis-group-interface.cc:
1346 * lily/align-interface.cc:
1347 remove calls to internal_FOO
1349 * lily/system-start-delimiter-engraver.cc:
1350 * lily/parenthesis-engraver.cc:
1351 * lily/accidental-engraver.cc:
1352 remove calls to make_foo_from_properties
1354 2006-09-23 Graham Percival <gpermus@gmail.com>
1356 * Documentation/user/programming-iterfaces.itely: fix
1357 def-music-function -> define-music... leftover.
1359 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1361 * lily/page-spacing.cc (min_page_count): by running the loop
1362 backwards, we can calculate ragged_last properly.
1364 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1366 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1367 printfirst-page-number -> print-first-page-number
1369 * python/convertrules.py: corresponding rule.
1371 * Documentation/user/page.itely (Page formatting): Document the
1372 default values of all page layout parameters.
1374 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1376 * lily/lexer.ll: remove limitation on music function arity. New
1377 mode extratoken, which inserts extra EXPECT_* tokens after
1378 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1380 * lily/parser.yy: Change grammar for music function accordingly.
1382 * lily/include/lily-parser.hh: New method get_state, new member
1383 hidden_state. Works around a problem when parser fetches
1384 MUSIC_FUNCTION token but not the following EXPECT_* token.
1386 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1389 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1390 references to Music; use ASSIGN_EVENT_ONCE everywhere
1392 * lily/grob-info.cc: junk *music_cause
1394 * lily/music.cc: copy eventified articulations to stream event
1396 * lily/part-combine-iterator.cc: Cleanup using enums
1398 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1401 * lily/include/engraver.hh: Junk music.hh include
1403 * lily/stream-event.cc: Changed constructors
1405 2006-09-21 Graham Percival <gpermus@gmail.com>
1407 * Documentation/user/tweaks.itely (Fitting music onto fewer
1408 pages): change settings to avoid warning messages.
1410 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1412 * Documentation/user/tweaks.itely (Fitting music onto fewer
1413 pages): Add between-system-space setting.
1415 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1417 * lily/accidental-placement.cc (calc_positioning_done): don't
1418 trigger Y-extent calculation too early. Use pure_height instead.
1420 * lily/scale.cc (LY_DEFINE): new file.
1422 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1424 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1425 that happen at the start of a score: having a zero-length
1426 chunk was messing up min_system_count calculations.
1428 * lily/source-file.cc (get_line): lower_bound, not
1429 binary_search. Fixes problem where point-and-click would
1430 always point to the first line.
1432 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1434 * lily/accidental-placement.cc (calc_positioning_done): also put
1435 stems into accidental support.
1437 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1440 * scm/script.scm (default-script-alist): avoid-slur and
1441 slur-padding for portato script.
1443 * lily/stem-tremolo.cc (translated_stencil): new function.
1444 (height): use new function. Fixes tremolos on whole notes.
1446 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1449 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1451 * scripts/abc2ly.py (try_parse_comment): idem.
1453 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1454 bar_string iso. string.find()
1458 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1461 2006-09-18 Graham Percival <gpermus@gmail.com>
1463 * Documentation/user/basic-notation.itely: add bug
1464 warning about ties and octavation/clef.
1466 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1468 * VERSION (PACKAGE_NAME): release 2.9.18
1470 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1472 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1473 figure out midi file names right here.
1475 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1477 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1479 * scm/backend-library.scm: option naming: gs-font-load*s*
1481 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1484 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1486 * scm/define-music-types.scm (music-descriptions): remove
1487 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1488 Music::to_event doesn't complain.
1490 * lily/accidental-placement.cc (ape_compare):
1491 * lily/semi-tie.cc (compare):
1492 * lily/note-column.cc (shift_compare): replace by XXX_less
1494 * lily/tie-formatting-problem.cc (set_chord_outline):
1495 * lily/tie-column.cc (calc_positioning_done):
1496 * lily/system.cc (post_processing)
1498 * lily/stem.cc (note_head_positions)
1499 (calc_positioning_done):
1500 * lily/spanner.cc (do_break_processing)
1501 (find_broken_piece):
1502 * lily/span-bar.cc (print):
1503 * lily/semi-tie-column.cc (calc_positioning_done):
1504 * lily/rest-collision.cc (calc_positioning_done):
1505 * lily/program-option.cc (get_help_string):
1506 * lily/note-collision.cc (get_clash_groups):
1507 * lily/new-fingering-engraver.cc (position_scripts):
1508 * lily/keyword.cc (Keyword_table):
1509 * lily/hara-kiri-group-spanner.cc (request_suicide):
1510 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1511 * lily/accidental-placement.cc (calc_positioning_done):
1513 * lily/beam.cc (get_beam_segments):
1514 * lily/grob-array.cc (remove_duplicates):
1517 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1518 ragged-last-bottom = ##f (test the new page breaker)
1520 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1522 * scm/define-context-properties.scm
1523 (all-internal-translation-properties): remove properties that
1524 were used to communicate page-turn stuff to the paper-column
1527 * lily/lily-guile.cc (robust_scm2string): new function
1529 * lily/paper-column-engraver.cc: Clean up page turn stuff
1531 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1532 instead of cluttering up paper-column-engraver.cc
1534 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1536 * scm/layout-page-dump.scm (scm): export utility function names,
1537 to allow user writing cutsom dumping functions.
1539 * scm/layout-page-layout.scm: export utility function names to
1540 enable custom page breaking function writing. Tabify.
1541 (line-next-space): use ?-suffix only for predicates
1542 (page-maximum-space-to-fill): new function. Return the space
1543 between first and bottom system of a page, to give to
1545 (space-systems): use a space-to-fill argument (for instance as
1546 computed by page-maximum-space-to-fill) instead of computing
1547 internaly this space with the page height. That way, the caller
1548 can adjust the space to use.
1549 (make-page-from-systems, walk-paths): compute space to fill before
1550 calling space-systems.
1552 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1554 * scm/script.scm (default-script-alist): set paddings for every
1555 type here, increase for portato mark.
1557 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1560 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1562 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1563 use spanner::set-spacing-rods
1565 * lily/note-column.cc: reformat.
1567 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1568 step positioning for note/rest combinations.
1570 * input/regression/rest-note-collision.ly: new file.
1572 * scm/define-grobs.scm (all-grob-descriptions): add
1575 * flower/include/std-vector.hh: switch off again.
1577 * VERSION (PATCH_LEVEL): bump to 2.9.18
1579 * flower/include/std-string.hh: idem.
1581 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1583 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1585 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1588 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1590 * Documentation/user/page.itely: update page breaking documentation
1592 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1594 * lily/note-collision.cc (calc_positioning_done): only access
1595 first head if available.
1597 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1599 * scm/framework-ps.scm (output-preview-framework): use new name.
1601 * lily/program-option.cc (internal_set_option): use new names.
1603 * Documentation/user/SConscript (lilypond_book_flags): update -d
1606 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1607 output into other programs): new variable names.
1609 * scm/lily.scm (define-scheme-options): uniformize var names.
1611 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1612 tuplets_ is non-empty before popping.
1614 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1616 * lily/spanner.cc (find_broken_piece):
1617 * lily/spacing-spanner.cc (get_columns):
1618 * lily/source-file.cc (get_line):
1619 * lily/simple-spacer.cc (get_column_description):
1620 * lily/keyword.cc (lookup):
1621 use the new binary search.
1623 * flower/include/std-vector.hh: replace binary_search with
1624 a more STL-like version
1626 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1628 * lily/tie-performer.cc: remove unused last_event_ property.
1629 (class Tie_performer): add now_tied_heads_ property for
1630 partially-tied heads.
1631 (acknowledge_audio_element): when adding an Audio_note, put the
1632 note in now_tied_heads_ if the audio note is partially tied.
1633 (stop_translation_timestep): always include entries in
1634 now_tied_heads_ in heads_to_tie_.
1636 * lily/drum-note-performer.cc (process_music): look for tie-events
1637 in the articulations; pass to Audio_note constructor.
1639 * lily/note-performer.cc (process_music): look for tie-events in
1640 the articulations; pass to Audio_note constructor.
1642 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1645 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1646 include initializer in constructor.
1648 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1650 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1651 unless they are breakable. This fixes discrepancies between the forces
1652 calculated here and the forces calculated in get_line_configuration.
1654 * lily/grob.cc (pure_relative_y_coordinate): fix some
1655 mis-estimation that was happening with piano staves.
1657 * lily/constrained-breaking.cc (resize): don't choke if we get a
1658 measure that won't fit on a line.
1659 (combine_demerits): don't consider uniformity when ragged
1661 * lily/page-spacing.cc (solve): why the f* were there two of these?
1662 (calc_subproblem): properly handle the case where a system is taller
1665 * lily/system.cc (get_paper_system): ensure that all the permissions
1666 and penalties are passed to the paper systems.
1668 * lily/page-breaking.cc (create_system_list): support system-count.
1670 * scm/define-grobs.scm (pure-print-callbacks): add
1671 ly:script-interface::print
1673 * lily/page-spacing.cc (min_page_count): fix calculation of min
1674 pages if we are ragged and there are non-zero springs.
1676 * scm/layout-page-layout.scm: if the pure-height estimates are under
1677 the real height, allow space-systems to ignore padding if it is
1678 needed in order to fit the systems on one page
1680 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1682 (solve): fix performance problem. Make sure we always get at least
1685 * lily/page-breaking.cc (make_pages): include write-page-breaks
1688 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1690 * scm/define-grobs.scm: add the new slur-callback
1691 fix pure-relevant to not exclude grobs whose extent is already
1694 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1697 * lily/slur.cc (pure_height): new callback to estimate the height
1700 2006-09-02 Graham Percival <gpermus@gmail.com>
1702 * Documentation/user/invoking.itely: small update on
1703 MacOS X notes; thanks Trevor!
1705 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1707 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1709 * lily/lexer.ll: accept EOF in all states.
1711 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1713 * lily/source-file.cc (Source_file): always 0-terminate character
1714 array, to prevent Flex from barfing.
1716 * lily/global-context.cc (get_output): robustness: don't crash if
1717 no Score context found.
1719 * lily/include/book.hh (class Book): idem.
1721 * lily/include/context-def.hh (struct Context_def): idem.
1723 * lily/include/score.hh (class Score): don't derive from Input.
1725 * lily/book.cc (Book): add a copy ctor.
1727 * buildscripts/output-distance.py (FileLink.calc_distance): count
1728 orphans in distance too.
1730 * python/midi.c (midi_parse_track): robustness: don't read past
1733 * ly/performer-init.ly: add Control_track_performer, move
1734 Tempo_performer and Time_signature_performer to Score.
1736 * lily/score-performer.cc (acknowledge_audio_elements): override
1737 from base class: add to audio-columns
1739 * lily/control-track-performer.cc (add_text): new file: generate
1742 * lily/performance.cc: move output_header_track to
1743 Control_track_performer ()
1745 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1747 * lily/include/midi-item.hh (class Midi_channel_item): insert
1748 class into hierarchy, for items that can have a channel setting. Dehungarify.
1750 * lily/include/performer.hh (class Performer): remove
1751 play_element(); move functionality into announce/acknowledge.
1753 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1755 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1756 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1758 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1760 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1763 * lily/all-font-metrics.cc: remove TFM support.
1765 * lily/include/tfm.hh: remove TFM support, TFM reader.
1767 * lily/include/binary-source-file.hh: remove Binary_source_file.
1769 2006-08-27 Graham Percival <gpermus@gmail.com>
1771 * Documentation/topdocs/NEWS.itely: add @c marker for
1772 stuff I've processed.
1774 * Documentation/user/ various: info from NEWS.
1776 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1778 * lily/paper-column-engraver.cc (finalize): Oops, this change
1779 should have gone in on 2006-08-23
1781 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1783 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1784 quotes to quote arguments. Fixes Windows problem.
1786 * python/lilylib.py (progress): idem
1788 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1790 * scripts/musicxml2ly.py: fix for importing
1791 minor key signatures from MusicXML. (Phillip Kirlin)
1793 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1795 * python/musicxml.py:
1796 (Attributes.get_key_signature): now correctly retrieves mode from
1799 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1801 * lily/parser.yy (output_def_body): take ownership of identifier
1804 * Documentation/user/advanced-notation.itely (Metronome marks):
1805 update use of \tempo in \midi.
1807 * VERSION: release 2.9.16
1809 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1811 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1814 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1816 * input/regression/tie-chord-partial.ly: clarify example.
1818 * scm/define-music-properties.scm (all-music-properties): remove
1821 * ly/music-functions-init.ly: remove \untied.
1823 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1824 stream events and music events.
1825 (stop_translation_timestep): search acknowledged heads for
1828 * input/regression/tie-chord-partial.ly: new file.
1830 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1831 for \char markup command.
1833 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1835 * scm/define-music-types.scm (music-descriptions): consistency:
1836 Use solo-{one,two}-event iso. solo-[12]-event.
1838 * lily/part-combine-engraver.cc (process_music):
1839 Use solo-{one,two}-event iso. solo-[12]-event.
1841 * ly/declarations-init.ly (partCombineListener): add Timing as
1844 * flower/std-string.cc (string_copy): use copy ()
1846 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1848 2006-08-24 Graham Percival <gpermus@gmail.com>
1850 * Documentation/user/changing-defaults.itely, global.itely,
1851 lilypond-book.itely, page.itely: minor changes from mailist.
1853 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1855 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1858 * scm/define-context-properties.scm
1859 (translator-property-description): robustness: detect type errors
1860 in property definitions.
1862 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1863 after getting it from SCM.
1865 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1868 * lily/include/performer.hh (class Performer): strip get_tempo()
1871 * lily/midi-def.cc: strip file.
1873 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1875 * lily/include/context-def.hh (struct Context_def): use
1876 VIRTUAL_COPY_CONSTRUCTOR().
1878 * lily/source-file.cc: smobification.
1880 * lily/include/source-file.hh (class Source_file): smobify
1881 Source_file. Trim redundant members.
1883 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1884 clones after creation. This plugs a huge memory leak.
1886 * python/convertrules.py (FatalConversionError.sub_tempo):
1887 complete rule for \midi{ \tempo }
1889 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1891 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1893 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1895 * input/regression/optimal-page-breaking-hstretch.ly: test for
1896 ragged-last-bottom also
1898 * lily/paper-column-engraver.cc (finalize): make the end of a score
1899 breakable by default. This is to balance out a change in behaviour
1900 of the page-turn-breaker which no longer makes the end of a score
1903 * lily/paper-book.cc (pages): set the systems_ once the pages are
1906 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1907 Page_breaking interface.
1909 * lily/page-breaking.cc (class Page_breaking): make the interface
1910 more consistent and provide abstractions for dealing with
1913 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1914 algorithm. Use the new interface to Page_breaking.
1916 * lily/page-spacing.cc: better support for ragged-bottom and
1919 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1921 * python/convertrules.py (conv): warning on \tempo{}
1923 * ly/performer-init.ly: set tempoWholesPerMinute.
1925 * ly/midi-init.ly: remove \midi
1927 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1930 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1931 tempoUnitDuration for determining what to print.
1933 * lily/lyric-extender.cc: typo.
1935 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1937 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1940 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1942 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1943 eps-pad-boxes is set.
1945 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1947 * THANKS: update sponsors.
1949 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1951 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1953 * input/regression/tie-chord-untied.ly: new file.
1955 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1957 * scm/define-music-properties.scm (all-music-properties): add
1960 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1962 (headertext_nopics): sanitize no-examples text.
1964 * scm/page.scm (make-page-stencil): don't rely on extents of
1965 page-stencil. This fixes spurious space around .EPS files produced
1966 with the EPS backend.
1968 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1970 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1972 * lily/hara-kiri-engraver.cc (process_music): remember
1973 keepAliveInterfaces after processing \set
1975 * lily/lyric-extender.cc (print): support left/right-padding for
1978 * scm/documentation-generate.scm (string-append): revert lilypond/
1981 2006-08-20 Graham Percival <gpermus@gmail.com>
1983 * Documentation/user/lilypond.tely: clarification to
1984 license presentation (not to actual license).
1986 * Documentation/user/basic-notation.itely,
1987 instrument-notation.itely: minor changes.
1989 * input/ {regression, test}/+.ly: clarification to
1990 text (you can click on examples). Thanks, Mats!
1992 * input/manual/bar-lines.ly: adds ||: repeats.
1994 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1996 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1998 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2000 * Documentation/user/lilypond.tely: strip lilypond/ from info
2001 links, rename to category LilyPond
2003 * lily/pango-font.cc (description_string): new function.
2005 * VERSION: release 2.9.15
2007 * lily/spacing-engraver.cc (stop_translation_timestep): use
2008 Dscho's fix for spacing spanner.
2010 * scm/define-music-types.scm (music-descriptions): use
2011 apply-output-event for ApplyOutputEvent
2013 * lily/output-property-engraver.cc (listen_apply_output): rename
2014 from listen_layout_instruction.
2016 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2019 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2021 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2022 commandline args with contains, split by \n.
2024 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2025 write snippet-names file, call with -dread-file-list. Fixes
2026 command limitations on 64-bit systems.
2028 * input/regression/stencil-color-rotation.ly: new file.
2030 * lily/include/translator.hh (struct Acknowledge_information):
2031 revert: don't use Protected_scm in global objects, as GUILE can't
2032 handle gc_unprotect from automated destructors on MacOS X.
2034 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2035 color, not the original stencil. Fixes combinations of
2036 color/transparency/rotation.
2038 * scripts/lilypond-book.py (main): add --formats=eps for
2041 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2042 crash if spacing_ is nonexistent.
2044 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2046 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2047 \catcode`\@=12 in the LaTeX output.
2049 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2051 * scm/define-music-types.scm (music-descriptions):
2052 use sustain-event iso. sustain-pedal-event.
2054 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2056 * scripts/convert-ly.py: honour the -n command-line switch
2058 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2060 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2061 break specification.
2063 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2065 * Documentation/user: convert-ly the user manual
2067 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2069 * stepmake/aclocal.m4: version check patch (thanks MWD)
2071 * ly/music-functions-init.ly: robustness. Don't crash if
2072 currentBarNumber is not a number.
2074 * VERSION (PATCH_LEVEL): bump.
2076 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2078 * stepmake/aclocal.m4: better version check; handle fooX.Y
2081 * ly/performer-init.ly: instrument name fixup.
2083 * input/manual/chord-names-jazz.ly (banterProperties):
2084 instrumentName update
2086 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2088 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2090 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2091 function. Use hash tables to check membership.
2093 * lily/general-scheme.cc (LY_DEFINE): new function.
2095 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2097 * lily/include/translator.hh (struct Acknowledge_information): add
2100 * ly/music-functions-init.ly: change name to BreathingEvent
2102 * input/regression/*.ly: apply it.
2104 * python/convertrules.py (conv): better instrumentName conversion
2107 * scm/define-music-types.scm (music-descriptions): add
2108 line-break-event to LineBreakEvent music
2110 * lily/music.cc (to_event): don't crash if music type not set.
2112 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2115 * lily/spacing-engraver.cc (stop_translation_timestep): set
2116 spacing for proportional notation too.
2118 * scm/translation-functions.scm (format-bass-figure): inspect
2121 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2123 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2125 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2127 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2129 * scm/layout-page-layout.scm (make-page-from-systems): new function
2130 (optimal-page-breaks): use the new page-breaking calling convention
2132 * scm/define-context-properties.scm (all-user-translation-properties):
2135 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2136 revokePageTurns functionality. If there is a special barline within
2137 the breakable region, break there instead of at the end of the region.
2139 * lily/paper-book.cc (pages): use the new page-breaking calling
2142 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2144 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2146 * scripts/lilypond-book.py: insert \sourcefileline command in
2147 output, so lilypond error messages refer to the spot in the
2148 original .lytex / .itely sourcefile.
2150 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2152 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2153 space to next column for distance to fixed col.
2155 * VERSION (PACKAGE_NAME): release 2.9.14
2157 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2160 * lily/accidental-engraver.cc (process_acknowledged): don't create
2161 accidental for trill span event. This fixes spurious accidentals
2164 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2166 * scm/define-grob-properties.scm (all-user-grob-properties):
2167 Clarify documentation of side-axis and direction. Thanks to Paul
2168 for the inspiration.
2170 * lily/bar-line.cc: Add documentation for "||:" also in the
2171 interface documentation.
2173 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2175 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2177 * lily/paper-column.cc (set_system): new function.
2179 * lily/spacing-engraver.cc (stop_translation_timestep): store
2180 SpacingSpanner refs in Paper_column.
2182 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2183 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2185 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2187 * lily/beam-engraver.cc (listen_beam): add method for
2188 Grace_beam_engraver too.
2190 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2192 * python/convertrules.py: Fix indentation bug that broke
2193 conversion of files older than 1.3.117.
2194 Fix escape error in the description for 2.9.6.
2196 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2198 * lily/*-engraver.cc: convert all try_music functions to listen_*
2201 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2202 enums to represent pedal types, and calculate more data statically.
2204 * scm/part-combiner.scm (recording-group-emulate): create a
2205 softcoded substitute for recording-group-engraver.cc.
2207 * lily/music.cc: make a common transpose function for events and
2210 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2211 ManualMelismaEvent, and obsoletes Melisma_translator.
2213 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2215 * input/test/instrument-name-align.ly: update version.
2217 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2219 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2220 Doc the --pdf flag to lilypond-book.
2222 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2224 * Documentation/topdocs/NEWS.tely (Top): add description.
2226 * input/regression/tuplet-full-length-note.ly: add file.
2228 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2229 always store axis group.
2231 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2233 * input/regression/instrument-switch.ly: new file.
2235 * lily/instrument-switch-engraver.cc (process_music): new file.
2237 * ly/engraver-init.ly: add Instrument_switch_engraver
2239 * ly/music-functions-init.ly: \instrumentSwitch
2241 * scm/define-context-properties.scm
2242 (all-user-translation-properties): add instrumentCueName
2244 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2246 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2248 * ly/music-functions-init.ly: music function \transposition.
2250 * lily/parser.yy (command_element): softcode \transposition.
2252 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2253 (process_music): oops.
2255 * lily/instrument-name-engraver.cc (start_spanner): new
2256 function. Create spanner when property changes.
2257 (stop_spanner): new function.
2259 * python/convertrules.py (conv): add rule.
2261 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2262 shortInstrumentName iso. instr.
2264 * scm/output-ps.scm (dashed-line): add phase argument to
2267 * lily/bar-line.cc (dashed_bar_line): new function.
2268 (compound_barline): support \bar "dashed".
2270 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2271 --output=DIR to DIR/BASE if it is a dir.
2273 * flower/file-name.cc (file_part): new function
2274 (dir_part): new function
2276 * lily/lily-parser-scheme.cc (LY_DEFINE):
2278 * DEDICATION: update
2280 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2282 * lily/instrument-name-engraver.cc: formatting.
2284 * python/convertrules.py (conv): bugfix for \epsfile.
2286 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2290 * lily/gourlay-breaking.cc: Oops, these should have been included
2293 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2295 * scripts/*.py (program_name): cleanup relocation snippets.
2297 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2299 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2301 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2302 page-breakable by default
2304 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2305 correctly calculated for a single-system page
2307 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2308 bigger than the second number
2310 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2311 acknowledge that we aren't satisfying constraints)
2313 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2316 * lily/grob.cc (pure_height): add minimum-Y-extent
2318 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2321 * lily/constrained-breaking.cc: convert code to use new Matrix class
2322 (get_best_solution): new function
2324 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2325 is a page with no systems
2327 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2329 * VERSION (PACKAGE_NAME): release 2.9.13
2331 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2334 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2336 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2338 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2341 * scm/define-grob-properties.scm (all-user-grob-properties):
2342 remove grace-space-factor.
2344 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2345 grace-spacing-interface
2346 (spacing-options-interface): add.
2348 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2350 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2352 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2353 GraceSpacing object.
2355 * lily/note-spacing.cc: fix prop list formatting
2357 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2358 beaming for grace notes too.
2360 * input/regression/spacing-grace.ly: update.
2362 * lily/grace-spacing-engraver.cc: new file.
2364 * lily/spacing-spanner.cc: add strict-grace-spacing.
2366 2006-07-20 Graham Percival <gpermus@gmail.com>
2368 * lily/parser.yy: compile fix.
2370 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2372 * scm/define-grobs.scm (all-grob-descriptions): typo.
2374 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2375 .eps extension from includegraphics.
2377 * scripts/lilypond-book.py (main): add support for --pdf.
2379 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2380 callback to compute common shortest duration.
2381 (set_springs): typo.
2383 * scm/define-grob-properties.scm (all-user-grob-properties): add
2384 strict-grace-spacing.
2386 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2387 support float_grace_columns_.
2389 * lily/spacing-options.cc (init_from_grob): new file.
2391 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2393 * input/regression/spacing-loose-grace.ly: new file.
2395 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2397 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2398 tupletFullLengthNote too. Choose right bound depending on value.
2400 * input/regression/tuplet-full-length-note.ly: new file.
2402 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2404 * lily/*-performer.cc: Converted try_music to listen_*
2406 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2407 as a stream-event internally. Introduce event_cause (), deprecate
2410 * scm/define-music-types.scm: Removed BusyPlayingEvent
2412 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2414 * Documentation/user/advanced-notation.itely (Font selection):
2415 Document how to get a list of available fonts using 'lilypond
2416 -dshow-available-fonts blabla'.
2418 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2420 * GNUmakefile.in: filter lily-XXX.pdf files.
2422 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2424 * scm/define-grob-properties.scm (all-internal-grob-properties):
2425 remove delta-pitch. Use delta-position everywhere.
2427 * scm/output-lib.scm (fall::print): use new order.
2429 * scm/output-ps.scm (path): reorder arguments.
2431 * scm/output-svg.scm (path): support for path primitive.
2433 * input/regression/bend-after.ly: new file.
2435 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2436 recipe for eps -> pdf conversion.
2438 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2440 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2443 2006-07-19 Graham Percival <gpermus@gmail.com>
2445 * input/manual/screech-boink.ly: moved to here.
2447 * input/screech-boink.ly: deleted.
2449 * scm/define-grob-properties.scm: clarify doc string.
2451 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2453 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2455 * scm/output-ps.scm (path): define path.
2457 * scm/define-stencil-commands.scm
2458 (ly:register-stencil-expression): add path.
2460 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2462 * ly/engraver-init.ly: add Fall_engraver
2464 * lily/parser.yy (music_function_event): allow musicfunction
2465 without music arg as music_function_event.
2467 * lily/grob-scheme.cc (LY_DEFINE):
2468 ly:grob-robust-relative-extent. New function.
2470 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2472 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2474 * scm/output-lib.scm (fall::print): new function
2476 * lily/fall-engraver.cc (stop_fall): new file.
2478 * ly/music-functions-init.ly: alphabetise.
2480 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2483 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2485 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2487 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2490 * lily/translator-group.cc (connect_to_context): non const error message.
2492 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2494 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2497 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2499 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2501 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2504 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2506 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2508 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2510 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2512 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2514 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2516 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2518 * scm/layout-page-layout.scm: Define module, tidy code, use more
2519 functions iso. a single big one.
2521 * scm/layout-page-dump.scm: move page dump functions used in two
2522 pass spacing to this file. Define module.
2524 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2527 * ly/paper-defaults.ly: use module layout-page-layout.
2529 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2531 * lily/music.cc: Revised MusicEvent event class. It now contains
2532 event data directly instead of encapsulating it in music. The
2533 previously used class is renamed to OldMusicEvent.
2535 * lily/stream-event.cc: Stream events are now probs.
2537 * lily/translator-group.cc, lily/translator.cc: Translators can
2538 now listen directly to stream events, by using macros
2539 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2541 * lily/arpeggio-engraver.cc: Converted to use new event system
2543 * THANKS: Corrected spelling mistake.
2545 2006-07-12 Graham Percival <gpermus@gmail.com>
2547 * Documentation/user/SConscript, make/lilypond-vars.make,
2548 input/GNUmakefile: doc build looks in input/manual instead
2551 * input/manual/ GNUmakefile, SConscript: build files for
2554 * input/test/ various: some files moved to input/manual/
2556 * Documentation/user/basic-notation.itely: small updates;
2557 thanks Kieren and Charles!
2559 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2561 * VERSION (PACKAGE_NAME): release 2.9.11
2563 * Documentation/topdocs/NEWS.tely (Top): update prop value
2565 * Documentation/user/basic-notation.itely (Tuplets): new property
2568 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2570 * python/convertrules.py (conv): tweaks.
2572 * VERSION (PATCH_LEVEL): bump version.
2574 * python/convertrules.py (conv): add rule for
2575 tupletNumberFormatFunction.
2577 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2578 tupletNumberFormatFunction.
2580 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2581 text through 'text callback.
2583 * lily/time-scaled-music-iterator.cc (construct_children): copy
2584 tweaks generated events.
2586 * scm/define-context-properties.scm
2587 (all-user-translation-properties): remove tupletNumberFormatFunction
2589 * lily/tuplet-engraver.cc (process_music): don't read
2590 tupletNumberFormatFunction
2592 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2595 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2597 * lily/global-context-scheme.cc: Separated ly:run-translator into
2600 * lily/score-engraver.cc, lily/score-performer.cc,
2601 scm/define-context-properties.scm: Make paper/midi output
2602 accessable as a context property.
2604 * lily/score-translator.cc, lily/score-context.cc: Removed.
2606 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2608 * scm/ps-to-png.scm (Module):
2609 * scm/framework-tex.scm (Module):
2610 * scm/framework-ps.scm (Module):
2611 * scm/backend-library.scm (Module):
2612 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2613 "dDEVICEHEIGHTPOINTS".
2615 2006-07-04 Graham Percival <gpermus@gmail.com>
2617 * Documentation/user/ various: general improvements to
2618 "working with lilypond files" section.
2620 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2622 * lily/sequential-iterator.cc: Change the default get_music_list
2623 to read elements-callback music property
2625 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2626 processing of multimeasure rests. Softcoded
2627 sequential-music-iterator.
2629 * lily/sequential-music-iterator.cc: Removed.
2631 2006-06-28 Graham Percival <gpermus@gmail.com>
2633 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2635 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2637 * lily/parser.yy: Wrap non-post-events in EventChords before
2638 assigning them to identifiers.
2640 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2642 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2643 gives correct vertical placement of \bar ":" in all staff
2644 sizes. Thanks Martial!
2646 2006-06-26 Graham Percival <gpermus@gmail.com>
2648 * Documentation/user/invoking.itely : minor update from mailist.
2650 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2652 * lily/ various: Introduce stream events of types Prepare,
2653 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2654 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2656 * lily/global-context*.cc: Time is now -inf before iteration
2659 * lily/include/context.hh: Removed unique_, init_
2661 * Documentation/topdocs/NEWS: Make the feathered beam example
2662 avoid triggering a bug.
2664 2006-06-24 Graham Percival <gpermus@gmail.com>
2666 * Documentation/user/ various: small additions from mailist.
2668 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2670 * ly/performer-init.ly: Add some missing links in the context
2671 hierarchy for MIDI output. There are probably some more missing!
2673 2006-06-21 Graham Percival <gpermus@gmail.com>
2675 * Documentation/user/ various: minor spelling fixes;
2676 thanks Dave Luttinen!
2678 * Documentation/user/ various: small clarifications;
2679 thanks Anthony Youngman!
2681 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2683 * po/fr.po: add \n appropriately.
2685 * lily/lexer.ll: remove ? from version-seen?
2687 2006-06-19 John Mandereau <john.mandereau@free.fr>
2689 * po/fr.po; update translation, by Jean-Charles Malahieude and
2692 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2694 * THANKS: add Markus Schneider.
2696 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2697 Staff_symbol_engraver
2699 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2700 replace staff_engraver
2702 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2705 * lily/staff-collecting-engraver.cc
2706 (acknowledge_end_staff_symbol): new function
2708 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2710 * lily/staff-collecting-engraver.cc
2711 (acknowledge_end_staff_symbol): new function.
2713 * lily/main.cc: switch on relocation by default.
2715 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2717 * lily/spacing-spanner.cc (musical_column_spacing): set
2718 compound_fixed_note_space to 0.0. Document why.
2720 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2721 range of inverse_hooke_
2722 (Simple_spacer): init completely.
2724 (get_line_configuration): don't use cols.resize(); it introduces
2727 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2729 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2731 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2732 try. Divide by beatlength.
2734 * input/regression/beaming-ternary-metrum.ly: update doc.
2735 add beatLength hack.
2737 * scm/music-functions.scm (make-time-signature-set): add
2738 standard-beat-grouping.
2740 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2742 * input/regression/tie-whole.ly: new file.
2744 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2745 cross center of note head in case of invisible stem.
2747 2006-06-16 Graham Percival <gpermus@gmail.com>
2749 * Documentation/user/ various: small fixes from mailist.
2751 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2753 * lily/breathing-sign.cc (offset_callback): idem.
2755 * lily/align-interface.cc (align_to_fixed_distance): remove
2758 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2761 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2763 * VERSION (PACKAGE_NAME): release 2.9.9
2765 * ly/lilypond-book-preamble.ly: add \version
2767 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2769 * scripts/lilypond-book.py (PREAMBLE_LY): include
2770 lilypond-book-preamble.ly
2772 * lily/stem.cc (get_beaming): return max of 0 and
2773 scm_ilength. Fixes slurring from/to beams.
2775 * ly/lilypond-book-preamble.ly: new file.
2777 * lily/slur.cc: add inspect-index feature.
2779 2006-06-13 Graham Percival <gpermus@gmail.com>
2781 * Documentation/user/tutorial.itely: trivial fix.
2783 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2785 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2786 all non-event music in the parser via MAKE_SYNTAX.
2788 * lily/parser-scheme.cc: Add ly:parser-error function
2790 * scm/paper.scm: fix typo
2792 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2796 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2799 * buildscripts/output-distance.py (test_compare_signatures):
2801 (read_signature_file): use new signature format.
2803 * scm/stencil.scm (write-system-signature): simpler signature
2806 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2809 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2810 stem_end_position, but estimate instead.
2812 * lily/tuplet-bracket.cc (calc_positions): look at
2813 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2814 brackets narrower than beams.
2816 * lily/lexer.ll: set version-seen? even if version is
2819 * lily/rest.cc (y_offset_callback): bugfix: decide position
2820 override based on scm_is_number(). Fixes \rest on center staff
2823 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2824 patterns for 16th triplets.
2826 2006-06-10 Graham Percival <gpermus@gmail.com>
2828 * Documentation/user/ page.itely, global.itely: editing
2831 * Documentation/user/ various: findex -> funindex.
2833 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2835 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2836 insert extra tuplet events.
2838 2006-06-10 Graham Percival <gpermus@gmail.com>
2840 * Documentation/user/programming-interfaces.itely: add
2843 * python/convertrules.py: add annotatefoo -> annotate-foo
2846 * Documentation/user/global.itely: start editing.
2848 * Documentation/user/page.itely: major editing, new spacing
2851 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2853 * scm/define-markup-commands.scm (wordwrap-markups): use
2854 output-def 'line-width if undefined.
2856 * HACKING: trim outdated info.
2858 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2860 * scm/define-grobs.scm (all-grob-descriptions): Add
2861 line-spanner-interface to all grobs that already have
2862 text-spanner-interface or dynamic-text-spanner-interface
2864 * scm/page.scm: Rename annotate{headers,systems,page}->
2867 * input/regression/page-spacing.ly,
2868 input/regression/page-layout-manual-position.ly: idem
2870 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2872 * lily/line-spanner.cc: cleanup property list.
2874 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2875 generator expressions (2.3 compat).
2877 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2879 * lily/vertical-align-engraver.cc: Make sure that the
2880 align{Above,Below}Context properties are included in the automatic
2883 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2885 * scm/paper-system.scm (paper-system-annotate): also annotate the
2886 estimated pure-Y-extent
2888 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2890 * lily/system.cc (break_into_pieces): set the estimated height
2891 of each child system
2893 * lily/stem.cc (pure_height): new pure-Y-extent callback
2895 * lily/staff-symbol-referencer.cc (callback): don't destroy
2896 the staff-position property
2898 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2899 consider_suicide into two functions
2901 * lily/constrained-breaking.cc (resize): use the new pure
2902 callbacks to estimate the height of a system
2904 * lily/axis-group-interface.cc (pure_group_height): new
2905 side-effect-free VerticalAxisGroup height-callback
2907 * lily/align-interface.cc (get_extents_aligned_translates):
2908 split align_elements_to_extents into two functions
2909 (get_pure_child_y_translation): new function
2911 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2913 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2915 * lily/paper-score.cc: cache break_indices and columns
2917 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2919 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2921 * lily/font-config.cc (init_fontconfig): do the init if
2922 cache_file, but don't look at cache_file.
2924 * input/regression/quote-tie.ly: new file.
2926 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2927 to Head_event_tuple, so we deal gracefully with ties on
2930 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2933 2006-06-08 Graham Percival <gpermus@gmail.com>
2935 * input/test/ smart-transpose.ly, reverse-music.ly:
2936 \applyMusic to music functions update, thanks Michael!
2938 2006-06-07 Graham Percival <gpermus@gmail.com>
2940 * input/test/ add-staccato.ly, add-text-script.ly,
2941 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2942 music functions update, thanks to Michael Meixner.
2944 * Documentation/user/music-glossary.tely: small fix
2947 * Documentation/user/ various: minor additions from mailist.
2949 * Documentation/user/lilypond.tely, basic-notation.itely:
2950 small test of @funindex. (works here)
2952 * input/test/font-table.ly: reduce size to partially
2953 de-ugly version in manual.
2955 * Documentation/user/page.itely: new file (split former
2956 "global issues" into "page settings" and "non-musical
2959 * Documentation/user/ various: fix @ref{}s to match
2960 new chapter names (above).
2962 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2964 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2966 2006-06-06 Graham Percival <gpermus@gmail.com>
2968 * Documentation/user/advanced-notation.itely: add example
2969 for segno/coda on barline.
2971 * tex/texinfo.tex: merge from upstream.
2973 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2975 * scripts/lilypond-book.py (process_snippets): Argument fix.
2978 * buildscripts/builder.py:
2981 * Documentation/user/SConscript: More SCons fixes.
2983 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2985 * lily/font-config.cc (init_fontconfig): Only initialize if
2986 global cache_file is found.
2988 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2990 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2993 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2995 * VERSION (PACKAGE_NAME): release 2.9.8
2997 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2998 function. Delay ledger modifying ledgered grobs to
2999 stop_translation_timestep(), to ensure that we're ledgering
3000 according to the new spanner.
3001 (acknowledge_staff_symbol): don't check for non-NULL
3002 staff_sym->get_bound()
3004 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3007 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3010 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3011 directly from srcdir/stepmake/aclocal.m4
3013 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3016 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3018 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3020 * lily/simple-spacer.cc (get_line_configuration): add
3021 keep-inside-line rods
3022 (struct Column_desc): add constructor
3023 (struct Rod_desc): add constructor
3024 (get_line_forces): check for forced page breaks here too
3026 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3027 support/elements cycles between InstrumentNames and AxisGroups
3029 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3031 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3033 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3034 make-txt-files target.
3036 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3037 make-txt-files target.
3039 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3041 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3044 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3046 * Documentation/user/instrument-notation.itely,
3047 input/regression/breathing-sign-ancient.ly,
3048 input/test/divisiones.ly: Removed redundant property settings for
3051 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3052 fix lyrics alignment problems. They are implemented now as scheme
3053 functions that add the appropriate unicode char to the first lyric
3054 event rather than adding a separate lyric event. Minor edit of
3057 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3059 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3060 pollute src dir with built .txt files, but install directly from
3061 Documentation/topdocs/out/
3063 * buildscripts/output-distance.py
3064 (ComparisonData.create_html_result_page): put version/directories
3067 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3070 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3071 Patch by Karl Hammar
3073 * buildscripts/readlink.py: add file.
3074 Patch by Karl Hammar
3076 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3078 * lily/tuplet-number.cc (print): prevent stencil from being
3081 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3083 * scm/stencil.scm (write-system-signature): explicitly
3084 -well, superfluously- close output port.
3086 * buildscripts/output-distance.py (main): oops. Add extra argument.
3088 2006-06-05 Graham Percival <gpermus@gmail.com>
3090 * Documentation/user/music-glossary.tely: clarified example
3091 from Francisco Vila, thanks!
3093 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3095 * input/regression/spacing-section.ly: new file.
3097 * lily/input.cc (programming_error): new function.
3099 * lily/spacing-engraver.cc (try_music): new function. Accept
3100 spacing-section-event
3102 * lily/spacing-spanner.cc (set_springs): take slices of all
3103 columns for spacing.
3105 * lily/include/paper-column.hh (class Paper_column): add
3106 Paper_column::compare.
3108 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3110 * scm/define-music-types.scm (music-descriptions): add
3113 * lily/music-iterator.cc (report_event): use programming_error for
3114 sending non-event error.
3116 * lily/input.cc (programming_error): new function
3118 * buildscripts/output-distance.py (main): use compare-XXX for
3120 (main): --threshold option, default at 0.30
3122 * output-distance.py (main): add --threshold option.
3124 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3126 * scm/paper-system.scm (paper-system-annotate): fix problem when
3127 annotating an empty system
3129 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3131 * GNUmakefile.in: reinstate old web tar/copying.
3133 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3135 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3136 nothing changes. (Erik S)
3138 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3141 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3143 * scm/define-markup-commands.scm (whiteout): do not force
3144 foreground color of argument markup to black.
3146 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3147 the left of the arrow, instead of below the arrow name, so that,
3148 when two little arrows are vertically stacked, their dimensions
3149 and name should not overlap. Add a color key parameter.
3151 * scm/paper-system.scm (paper-system-annotate): Annotate
3152 next-space+next-padding instead of next-space. Annotate space
3153 between next-padding and next-space+padding, respectively, and
3154 following system extent and refpoint-Y-extent. Use colors.
3156 * scm/page.scm (annotate-page): translate annotations slightly to
3159 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3161 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3162 fix for x-staff slurs. Thanks Joe!
3164 * buildscripts/output-distance.py
3165 (SystemLink.output_expression_change_count): keep track of changed
3166 details, and dump in details html page.
3168 * input/regression/figured-bass-staff.ly: add note about setting
3169 properties in Staff context.
3171 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3172 add slurs and ties to support too.
3174 * buildscripts/output-distance.py (main): set dest_dir
3175 argument. Add --max-count option.
3177 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3179 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3180 shortcuts for special unicode chars that are useful in chant
3181 notation. Revised exisiting and added new comments.
3183 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3185 * make/mutopia-rules.make: remove duplicate recipe.
3187 2006-06-02 Werner Lemberg <wl@gnu.org>
3189 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3190 Add support for U+0132 (IJ) and U+0133 (ij).
3192 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3194 * buildscripts/output-distance.py (FileLink): new class. collect
3195 info systems from one .ly file.
3196 (FileLink.link_files_for_html): further tweaks.
3198 2006-06-02 Graham Percival <gpermus@gmail.com>
3200 * tex/texinfo.tex: partial fix for @funindex.
3202 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3205 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3207 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3209 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3210 @example too. Backportme.
3212 2006-06-02 Graham Percival <gpermus@gmail.com>
3214 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3215 from Werner Lemberg.
3217 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3219 * Documentation/user/music-glossary.tely: additional spanish
3220 updates and a lyrics fix in an example.
3222 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3224 * scm/define-grob-properties.scm: Previous patch contained
3225 spurious line from another patch not yet committed. Fixed.
3227 * scm/define-grob-properties.scm: Add missing doc strings for
3230 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3232 * buildscripts/output-distance.py
3233 (ComparisonData.write_text_result_page): separate the scores, sort
3236 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3239 * buildscripts/output-distance.py (me_path): use argv[0] for
3241 (ComparisonData.img_cell): use colored borders.
3243 * scm/stencil.scm (write-system-signature): escape newlines too.
3244 (write-system-signature): use (1,-1) interval for empty interval
3246 2006-01-01 Graham Percival <gpermus@gmail.com>
3248 * Documentation/user/music-glossary.tely: Spanish updates
3249 from Francisco Vila.
3251 * Documentation/user/lilypond-book.itely: addition from
3254 * Documentation/user/ various: edits, small additions
3257 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3259 * GNUmakefile.in (tree-lib-prefix-current):
3260 (tree-share-prefix-current): Use version number in tree, add
3263 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3265 * GNUmakefile.in: write VERSION, again.
3267 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3268 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3270 * stepmake/aclocal.m4: robuster version detection.
3272 * buildscripts/output-distance.py
3273 (ComparisonData.create_html_result_page): copy only if file
3274 exists, fixup src paths.
3276 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3278 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3280 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3281 Another datarootdir reto.
3283 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3284 available. This should be moved to postinstall-lilypond-doc.
3286 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3288 * GNUmakefile.in: simplify local-WWW-post.
3289 remove -type l from find.
3291 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3292 fixes. Don't follow symlinks.
3293 (ComparisonData.create_html_result_page): remove previous results.
3294 insert ../python in path.
3296 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3298 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3300 * config.make.in (datadir): Add datarootdir to silence autoconf.
3302 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3304 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3306 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3308 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3309 slash beams too wide.
3311 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3313 * VERSION: release 2.9.7
3315 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3317 * lily/relocate.cc (read_relocation_dir): Do not blindly
3320 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3322 * lily/parser.yy: replace THIS by PARSER
3324 * Documentation/index.html.in: add link to test-results.html page.
3326 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3328 * scm/translation-functions.scm (format-bass-figure): translate
3329 digits over 10 to the left
3331 * scm/define-markup-commands.scm (translate-scaled): new markup.
3333 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3336 * ly/engraver-init.ly: add Figured_bass_engraver
3338 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3340 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3342 * lily/score-engraver.cc (announce_grob): only note START announces.
3344 * lily/include/engraver-group.hh (Translator_group):
3345 acknowledge_hash_table_ is now drul.
3347 * lily/engraver.cc (announce_end_grob): new method.
3349 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3351 * lily/translator-dispatch-list.cc (create): take start_end argument.
3353 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3354 acknowledge_static_array_ to drul
3356 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3358 * scm/define-grob-interfaces.scm
3359 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3361 * scm/define-grobs.scm (all-grob-descriptions): add
3362 BassFigureAlignmentPositioning
3364 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3365 number stays up to date. Backportme.
3367 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3369 * Documentation/user/basic-notation.itely (Bar lines): Document
3372 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3374 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3376 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3377 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3380 * Resurrect `scons lily' build.
3382 * SConstruct (symlink_tree): Bugfix: link
3383 music-drawing-routines.ps to file iso directory.
3385 * lily/SConscript: Remove kpath-guile from LIBS.
3387 * SConstruct (libdir_package_version): Typo.
3388 (configure): Comment-out fontforge for lack of fontforge.pc .
3389 Also add libdir* to environment.
3391 2006-05-30 Graham Percival <gpermus@gmail.com>
3393 * Documentation/user/ various: minor additions from mailist and
3396 2006-05-30 Paco <fravd@ya.com>
3398 * Documentation/user/music-glossary.tely: numerous corrections and
3399 some new translations.
3401 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3405 * buildscripts/output-distance.py
3406 (ComparisonData.create_html_result_page): new routine: summarise
3407 results in HTML page with images.
3408 (ComparisonData.create_text_result_page): create summary text files too.
3410 * GNUmakefile.in (web-ext): package .signature files too. They
3413 * scm/stencil.scm (write-system-signature): typo.
3415 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3417 * scm/stencil.scm (write-system-signature): better escaping.
3418 only write signature for music systems, not for markup systems.
3420 * scm/framework-ps.scm (output-framework): dump-signatures support
3423 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3425 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3426 for -dno-point-and-click
3428 * lily/grob.cc (get_print_stencil): don't read
3429 point_and_click_global to determine whether to set grob-cause.
3431 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3433 * buildscripts/output-distance.py (main): new function.
3434 (ComparisonData): new class.
3436 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3437 careful with generating new LedgerLineSpanners.
3439 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3441 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3442 context. This fixes double ledger lines in output.
3444 * lily/system.cc (get_paper_system): remove 3 layer limit.
3446 * buildscripts/output-distance.py (SystemLink.distance): new
3447 file. Compare signatures.
3449 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3451 * lily/grob-array.cc (remove_duplicates): rename from
3452 uniq(). Sort before calling uniq() so it actually works.
3454 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3456 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3457 \version from lilypond file snippet.
3458 (Lilypond_file_snippet.ly): oops. typo.
3459 (find_toplevel_snippets): urgh. again.
3461 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3462 prevent duplicated broken items in output.
3464 * scm/framework-eps.scm (output-classic-framework): only dump if
3465 dump-signatures is set.
3467 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3469 * scm/stencil.scm (write-system-signature): new routine: write
3470 python parseable signature of a separate paper system.
3473 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3475 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3479 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3481 * translator-group.cc: send music events to engravers in
3482 non-bottom contexts.
3484 * tuplet-engraver.cc: process tuplet brackets in correct order.
3486 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3488 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3489 arg 2 might point us to a new binary (patch by Karl Hammar)
3491 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3493 * VERSION (PACKAGE_NAME): release 2.9.6
3495 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3497 * Documentation/user/*.itely: 2nd
3498 attempt: replace funindex -> findex globally.
3500 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3502 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3503 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3505 * scm/define-music-display-methods.scm: display methods for
3506 breaks. Fix \applyOutput.
3508 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3510 * Documentation/user/macros.itexi: comment out funindex expansion.
3512 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3515 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3516 Karl Hammar. Backportme.
3518 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3520 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3522 * Documentation/user/programming-interface.itely (Running a
3523 function on all layout objects): idem.
3525 * Documentation/user/introduction.itely (Automated engraving):
3526 update \applyOutput syntax
3528 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3529 remove debugging hook.
3531 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3534 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3536 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3537 TEXI2DVI_FLAGS to texi2dvi invocation.
3539 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3541 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3542 works. More work is done by iterator now, and engraver has been
3543 very much simplified.
3545 * lily/translator-group.cc: try_music is now invoked through a
3548 * lily/*-iterator.cc: Massive cleanups. Junked
3549 try_music_in_children globally. Renamed try_music to report_event,
3550 and made that method descend to a bottom context automatically.
3552 * lily/event-iterator.cc: New file.
3554 * lily/output-property-iterator.cc,
3555 lily/old-lyric-combine-music-iterator.cc: Removed.
3557 * python/convert-rules.py: Modified the syntax for \applyOutput.
3559 2006-05-23 Graham Percival <gpermus@gmail.com>
3561 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3564 * Documentation/user/ various: stuff that might have helped
3565 to fix the pdf creation, plus some minor doc additions.
3567 * Documentation/user/changing-defaults.itely: remove @b from
3568 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3570 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3572 * lily/beaming-pattern.cc (beamify): deal with negative start
3573 moments for beaming patterns.
3575 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3577 * lily/beaming-info.cc (beamify): new function: read beatLength
3578 and beatGrouping from context.
3580 * input/regression/beam-beat-grouping.ly (Module): new file.
3582 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3584 * lily/beam.cc (get_beam_segments): generate events for
3585 max_connect_ case too.
3586 (get_beam_segments): read Stem::max-beam-connect.
3588 * input/regression/beam-single-stem.ly: new file.
3590 * lily/stem.cc (set_beaming): use #f as signaling value for
3593 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3595 * lily/beam.cc (set_beaming): read clip-edges property.
3596 (calc_direction): don't suicide for single stem.
3598 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3599 argument, remove 1<<15 hack. Remove clip_edges()
3601 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3603 2006-05-21 Graham Percival <gpermus@gmail.com>
3605 * Documentation/user/basic-notation.itely: reorg.
3607 * Documentation/user/ various: minor fixes.
3609 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3611 * lily/stencil-expression.cc (register_stencil_head): opps, append
3612 to cdr of static SCM object.
3614 2006-05-19 Graham Percival <gpermus@gmail.com>
3616 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3617 update framework for command index. DOC WRITERS: use @funindex
3618 instead of @cindex @code{}.
3620 * Documentation/user/ various: replace @cindex @code{} => @funindex
3622 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3624 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3625 case positions is set manually.
3627 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3629 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3632 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3634 * Documentation/user/changing-defaults.itely (Contexts explained):
3635 use absolute dimension for @image.
3637 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3638 out image for illustration too.
3639 ($(outdir)/%.png): add more png <-> eps rules.
3641 2006-05-17 Graham Percival <gpermus@gmail.com>
3643 * Documentation/user/ various: remove trailing whitespace, cosmetic
3644 change to reduce changes produced by diff.
3646 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3648 * lily/main.cc (do_chroot_jail): correctness tweak.
3650 * python/lilylib.py (system): import subprocess in system () only.
3652 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3654 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3655 variable. Backportme.
3657 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3659 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3661 2006-05-17 Werner Lemberg <wl@gnu.org>
3663 * lily/lexer.ll (init_signature_has_table): Add
3664 `scm-scm-music-music'.
3666 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3667 (Generic_prefix_music_scm): Add rule for it.
3669 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3670 `quoted-transposition' property.
3672 * ly/music-functions-init.ly (transposedCueDuring): New function.
3674 * scm/define-music-properties.scm (all-music-properties): Updated.
3676 * Documenation/topdocs/NEWS.itely: Document it.
3678 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3680 * python/lilylib.py (system): move import subprocess to system()
3683 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3685 * VERSION (PATCH_LEVEL): release 2.9.5
3687 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3690 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3692 2006-05-16 Graham Percival <gpermus@gmail.com>
3694 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3696 * Documentation/user/ various: minor fixes.
3698 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3700 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3702 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3704 * Documentation/user/advanced-notation.itely (Instrument names):
3705 Modified obsolete instruction on how to move instrument names away
3706 from the staves. Hmm, at second thought the bug probably has been
3707 solved, so the full bug description should probably be removed.
3709 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3711 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3712 currentCommandColumn.
3714 * lily/hairpin.cc (print): also add padding for non-neighbor
3717 * scm/define-context-properties.scm
3718 (all-user-translation-properties): add hairpinToBarline
3720 * input/regression/hairpin-to-barline.ly: new file.
3722 * lily/context.cc (internal_send_stream_event): thinko fix.
3724 * lily/tie.cc (set_default_control_points): robustness fix.
3726 * python/musicxml.py (Part.interpret): don't complain about
3727 incomplete measures.
3729 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3730 new music if last_event_chord() returned None.
3732 * python/musicxml.py (Part.interpret): skip back over chord notes.
3734 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3736 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3737 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3738 lily/slash-repeat-engraver.cc,
3739 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3740 iterator sends PercentEvents
3742 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3743 rework tuplets: send start/stop events to engraver
3745 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3746 dispatchers event-source and events-below to Context
3748 2006-05-15 Graham Percival <gpermus@gmail.com>
3750 * Documentation/user/README.txt: update info for doc writers.
3752 * Documentation/user/programming-interface.itely: integrate
3753 Nicolas' fixes for chapter rewrite.
3755 * Documentation/user/ various: minor fixes.
3757 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3759 * lily/clef-engraver.cc: cleanup.
3761 * Documentation/user/GNUmakefile: dist context-example.eps too.
3763 * lily/key-engraver.cc (create_key): use
3764 explicitKeySignatureVisibility for cancellation too.
3766 * lily/font-config.cc (init_fontconfig): don't close file if
3769 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3771 * Documentation/topdocs/NEWS.tely: niente and rotation news
3773 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3775 * lily/include/stencil.hh
3776 * lily/stencil.cc (rotate): new function. Makes it possible
3777 to rotate a stencil around a given offset.
3779 * lily/grob.cc (get_print_stencil): add rotation support
3781 * lily/stencil-interpret.cc (interpret_stencil_expression):
3782 add rotation support
3784 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3786 * scm/define-grob-properties.scm: add 'rotation property
3788 * scm/define-markup-commands.scm: add rotate markup command
3790 * scm/output-ps.scm: add rotation support in PostScript backend
3792 * scm/output-svg.scm: add rotation support in SVG backend
3794 2006-05-13 Graham Percival <gpermus@gmail.com>
3796 * Documentation/user/music-glossary.itely: French correction.
3798 * Documentation/user/programming-interface.itely: major
3799 new docs, some reorg, some info from Nicolas.
3801 * Documentation/user/ various: small fixes.
3803 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3805 * Documentation/user/programming-interface.itely (Markup
3806 programmer interface): Remove duplicate text.
3808 2006-05-12 Graham Percival <gpermus@gmail.com>
3810 * Documentation/user/context-example.eps: new file.
3812 * Documentation/user/changing-defaults.itely: set up file to
3815 * Documentation/user/programming-interface.itely: changes
3818 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3820 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3822 2006-05-11 Graham Percival <gpermus@gmail.com>
3824 * Documentation/user/programming-interface.itely: first round of
3825 editing and merging emails from Nicolas.
3827 * Documentation/user/scheme-tutorial: minor edit.
3829 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3831 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3833 (Xml_node.message): use it.
3835 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3836 oops. Add duration argument.
3838 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3840 * lily/paper-column-engraver.cc (make_columns):
3841 * scm/define-grobs.scm: Revert my previous change and set the default
3842 in define-grobs.scm instead.
3844 2006-05-09 Graham Percival <gpermus@gmail.com>
3846 * Documentation/user/changing-defaults.itely: general editing,
3847 info about \set and \override.
3849 * Documentation/user/tweaking.itely, advanced-notation.itely:
3850 fixes from Dave Luttinen, thanks!
3852 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3854 * lily/paper-column-engraver.cc (make_columns): By default, a column
3855 needs to be breakable.
3857 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3859 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3861 (musicxml_time_to_lily): idem
3862 (musicxml_key_to_lily): idem
3863 (instrument_drumtype_dict): dict for supported drumtypes.
3864 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3865 moments and pending mm rests
3866 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3867 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3868 (musicxml_voice_to_lily_voice): add mode change.
3869 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3870 speed and less memory usage (factor 5 to 10).
3871 (convert): write -defs.ly and driver file separately so people
3872 can script their own part extraction.
3874 * python/musicxml.py (minidom_demarshal_node): new function:
3875 separate minidom handling.
3876 (lxml_demarshal_node): new function: support lxml.etree too.
3877 (Xml_node.message): new function: verbose error message, with XML
3878 path to offending node.
3879 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3880 (Part_list.generate_id_instrument_dict): new method: collect
3881 instrument names, to be able to set drum_type.
3882 (Part.interpret): handle underfull measures
3883 (Part.interpret): assign instrument names.
3885 * python/musicexp.py (Output_printer.close): new method
3886 (MusicWrapper.print_ly): new class: support other modes,
3888 (BarCheck.print_ly): new class. Support bar checks, with comments
3889 and fancy barchecks.
3890 (NoteEvent.__init__): also set drum_type for drum notes.
3891 (MultiMeasureRest.lisp_expression): dump mm rests.
3893 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3894 line-break-permission if forbidBreak is not set.
3896 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3898 * scm/define-context-properties.scm:
3899 * scm/define-grob-properties.scm:
3900 * scm/define-grobs.scm:
3901 * scm/define-music-display-methods.scm:
3902 * scm/define-music-properties.scm:
3903 * scm/define-music-types.scm:
3904 * scm/music-functions.scm:
3905 * ly/declarations-init.ly:
3906 * lily/include/constrained-breaking.hh:
3908 * lily/spaceable-grob.cc:
3909 * lily/simple-spacer.cc:
3910 * lily/paper-score.cc:
3911 * lily/paper-column.cc:
3912 * lily/paper-column-engraver.cc:
3914 * lily/gourlay-breaking.cc:
3915 * lily/constrained-breaking.cc:
3916 * python/convertrules.py:
3917 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3918 "page-break-penalty" and "line-break-permission".
3919 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3920 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3922 * lily/bar-engraver.cc:
3923 * lily/beam-engraver.cc:
3924 * lily/forbid-break-engraver.cc:
3925 * lily/ligature-engraver.cc:
3926 * lily/paper-column-engraver.cc:
3927 * lily/percent-repeat-engraver.cc:
3928 * lily/score-engraver.cc:
3929 * lily/score-engraver.hh:
3930 * lily/paper-column-engraver.hh:
3931 Inter-engraver communication regarding line breaks is done through context
3932 properties (Score.forbidBreak) instead of function calls.
3934 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3936 * VERSION (PACKAGE_NAME): release 2.9.4
3938 2006-05-08 Graham Percival <gpermus@gmail.com>
3940 * Documentation/user/working.itely: proofreading from Dave
3943 * Doucmentation/user/README.txt: updated with manual style info.
3945 * Documentation/user/ various: trim linewidth to 78 chars.
3947 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3949 * scm/define-grob-properties.scm (all-internal-grob-properties):
3950 remove chord-tremolo property.
3952 * lily/beam.cc (get_beam_segments): don't use stem position as
3953 base for broken ends.
3955 2006-05-06 Graham Percival <gpermus@gmail.com>
3957 * Documentation/user/putting.itely: proofreading from Dave
3960 * Documentation/user/ various: more reorg and clarifications.
3962 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3964 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3966 * ly/music-functions-init.ly: new function featherDurations
3968 * lily/beam.cc: read grow-direction for feathered beaming.
3970 * Documentation/topdocs/NEWS.tely (Top): typo.
3972 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3974 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3977 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3978 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3979 used by music streams.
3981 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3982 lily/stream-event.cc, lily/stream-event-scheme.cc,
3983 lily/listener.cc, lily/scheme-listener.cc,
3984 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3985 lily/include/stream-event.hh, lily/include/listener.hh,
3986 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3987 Created data structures for music streams.
3989 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3991 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3992 construction of a beam.
3995 * flower/include/std-vector.hh (default_compare): use only one comparison.
3997 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3998 (note-by-number): further attachment fixes.
4000 * scm/lily-library.scm (ordered-cons): new function.
4001 (interval-index): new function
4003 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4005 * lily/note-head.cc (get_stem_attachment): new function.
4007 * scm/define-markup-commands.scm (note-by-number): read 'style
4010 * input/regression/markup-note.ly: show note-head style option.
4012 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4015 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4017 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4019 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4021 * lily/include/constrained-breaking.hh: GCC 4 fix.
4023 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4025 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4026 Replace it with functions get_line_forces and get_line_configuration.
4027 (class Simple_spacer): Make data private.
4028 Rewrite compression algorithm to be faster and simpler.
4030 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4031 * lily/gourlay-breaking.cc (solve):
4032 * lily/constrained_breaking.cc (space_line):
4033 Change it to the new simple-spacer code.
4035 * lily/paper-score.cc (get_paper_systems):
4038 Delay breaking the systems until they are requested.
4039 (find_break_indices):
4040 Use vsize for indices.
4042 Move the "Calculating line breaks" message here.
4044 * lily/system.cc (pre_processing):
4045 Move the "Calculating line breaks" message away from here.
4046 (break_into_pieces):
4047 Allow multiple calls to this function in sequence (with touching-but-
4048 not-overlapping breakpoints).
4050 * lily/constrained-breaking.cc:
4051 Replace most of the get_XXXX functions with get_line_details.
4052 Only calculate the force for each line. Calculate configurations only
4053 for the lines we will actually use.
4054 Replace cols_ with lines_.
4056 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4058 * mf/GNUmakefile (depth): remove FC_FIND.
4060 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4062 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4064 * scm/framework-ps.scm (write-preamble): new function.
4065 (write-preamble): load mac fonts via fondu, even if gs-font-load
4068 2006-05-03 Werner Lemberg <wl@gnu.org>
4070 * mf/GNUmakefile (FC_FIND): Fix typo.
4072 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4074 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4076 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4078 * stepmake/aclocal.m4: run python-config for crosscompiling
4081 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4082 -f png for HTML, TEXINFO formats.
4084 * input/tutorial/lbook-html-test.html: new file.
4086 * lily/include/tie-formatting-problem.hh (class
4087 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4088 [column, direction]. This fixes laissez vibrer ties.
4090 * flower/include/tuple.hh (struct Tuple2): new file.
4092 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4093 $(FCMATCH), only if $(NCSB_DIR) not set.
4095 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4097 * config.make.in (DOCUMENTATION): set FCMATCH.
4099 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4101 2006-05-03 Graham Percival <gpermus@gmail.com>
4103 * Documentation/user/ various: final round of reorg.
4105 * Documentation/user/instrument-notation.itely: some more
4106 fixes from Eduardo, thanks!
4108 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4110 * VERSION (PACKAGE_NAME): release 2.9.3
4112 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4114 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4116 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4118 * scm/define-grob-properties.scm (all-user-grob-properties):
4119 Correct typo, thanks to Eduardo.
4121 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4123 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4125 * buildscripts/lilypond-words.py (F): indent fix.
4127 * input/regression/tie-arpeggio-collision.ly: new file.
4129 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4130 function: store outlines per column rank.
4132 * lily/include/tie-configuration.hh (class Tie_configuration): add
4133 column_ranks_ to specification and configuration, to distinguish
4134 between ties for different heads in arpegiated chords.
4136 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4138 * *.py: more 4 space indents.
4140 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4142 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4144 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4146 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4148 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4150 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4152 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4154 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4156 * python/convertrules.py (conv): indent 4 for python files.
4158 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4160 * Documentation/user/changing-defaults.itely (Creating contexts):
4161 Clarify \new semantics.
4163 2006-04-28 Graham Percival <gpermus@gmail.com>
4165 * Documentation/user/ various: major new sections in the
4166 Learning manual, slight reorg elsewhere.
4168 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4170 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4172 * scm/framework-ps.scm (output-framework): remove PageMedia
4174 2006-04-27 Graham Percival <gpermus@gmail.com>
4176 * Documentation/user/ tweaks.itely, working.itely: new
4177 files, being more advanced "learning manual" chapters.
4179 * Documentation/user/ tutorial, putting, lilypond: reorg.
4181 2006-04-26 Graham Percival <gpermus@gmail.com>
4183 * input/regression/lyric-combine-polyphonic.ly: fixed test
4184 (no more "can't find context `one'" error).
4186 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4188 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4190 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4192 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4194 * lily/relocate.cc (read_relocation_dir): new function.
4196 2006-04-26 Graham Percival <gpermus@gmail.com>
4198 * Documentation/user/instrument-notation.itely: a few more fixes
4199 from Eduardo, thanks!
4201 * Documentation/user/README.txt: new file; contains info on
4202 style that used to be in lilypond.tely.
4204 * Documentation/user/ various: first round of doc reorg.
4206 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4207 graphic; this probably causes problems on some pdf
4208 viewers, notably Adobe Acrobat.
4210 2006-04-24 Graham Percival <gpermus@gmail.com>
4212 * Documentation/user/instrument-notation.itely: many alterations
4213 to Vocal music, from Eduardo Viera.
4215 2006-04-23 Graham Percival <gpermus@gmail.com>
4217 * Documentation/user/instrument-notation.itely: fix \new
4218 instead of \context problem.
4220 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4222 * lily/relocate.cc (expand_environment_variables): new function.
4224 (read_relocation_file): id.
4226 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4228 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4230 * ly/engraver-init.ly: remove old comments from TabVoice
4232 2006-04-20 Graham Percival <gpermus@gmail.com>
4234 * Documentation/user/instrument-notation.itely: added Erlend's
4235 latest doc patch, thanks!
4237 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4239 * lily/include/slur.hh:
4241 * lily/phrasing-slur-engraver.cc:
4242 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4243 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4244 Slur_engraver:: and putting it in
4245 Slur::auxiliary_acknowledge_extra_object ().
4247 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4249 * lily/note-collision.cc: fix a comment
4251 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4253 * stepmake/bin/add-html-footer.py: fix footer position in
4254 generated html files: before </body> and </html> tags.
4256 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4258 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4259 Earlier successive `make' commands finally compiled ok.
4261 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4263 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4265 * lily/include/stem-tremolo.hh:
4266 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4270 * lily/include/lookup.hh: add rotated_box ()
4272 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4274 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4275 been generated. Fixes "can't get `--help'" bug after make clean.
4277 * THANKS: alphabetize contributors.
4279 2006-04-17 Graham Percival <gpermus@gmail.com>
4281 * Documentation/user/instrument-notation.itely: added Erlend's
4282 tabs and banjo doc patch. Thanks!
4284 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4286 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4288 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4290 * scm/output-lib.scm: add some more predefined string tunings.
4292 * Documentation/user/instrument-notation.itely: and doc them.
4294 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4296 * ly/engraver.ly: Remove obsolete comments.
4298 * ly/gregorian-init.ly: Define default layout block.
4300 * input/puer-fragment.ly: Updated and extended.
4302 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4304 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4305 pdf conversion behaviour.
4307 * flower/file-name.cc (dir_name)
4308 (get_working_directory): Move from relocate.cc.
4310 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4312 * lily/relocate.cc: Encapsulate sys/stat.h in
4315 2006-04-14 Graham Percival <gpermus@gmail.com>
4317 * Documentation/user/ various: small updates from Cameron
4318 and Juergen, thanks!
4320 * Documentation/user/ various: small updates of my own.
4322 * THANKS: 2.7 -> 2.8.
4324 2006-04-11 Graham Percival <gpermus@gmail.com>
4326 * scm/define-context-properties.scm: typo.
4328 * Documentation/user/ : many more small updates.
4330 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4332 * scm/define-music-types.scm: disposed "docme".
4334 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4336 * lily/hairpin.cc: make niente circles a bit smaller.
4338 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4340 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4341 get-pfa and get-*-fonts targets.
4343 2006-04-10 Graham Percival <gpermus@gmail.com>
4345 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4346 music-glossary, programming-interface: more minor fixes
4349 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4351 * scm/define-context-properties.scm: another old \property update.
4352 This time tested for compiling!
4354 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4356 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4358 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4360 * scm/define-context-properties.scm (all-user-translation-properties):
4361 * Documentation/user/global.itely (Page formatting): Compile fix.
4363 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4365 * Documentation/user/advanced-notation.itely (Polymetric
4366 notation): Update the example to use the "+" symbol and add link
4367 to input/test/compound-time.ly.
4369 2006-04-08 Graham Percival <gpermus@gmail.com>
4371 * scm/define-grob-properties.scm: clarify docs for #'direction.
4373 * scm/define-context-properties.scm: update old \property override.
4375 * Documentation/user/ advanced-notation, global, lilypond-book:
4376 more minor doc updates.
4378 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4380 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4382 * scm/backend-library.scm (search-gs): oops.
4384 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4386 * scripts/lilypond-book.py (output): use base, not filename for href.
4388 * scm/backend-library.scm: only look for gs.
4390 * scripts/lilypond-book.py (output): fix printfilename.
4392 * lily/parser.yy (music_function_musicless_prefix): fold together
4393 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4395 * lily/slur.cc (print): only set font-size if not set yet.
4397 * lily/slur-configuration.cc (add_score): improved layout of debug
4400 2006-04-05 David Feuer <David.Feuer@gmail.com>
4402 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4403 (draw_circle): Hopefully fixed regression.
4404 Improved documentation for several procedures.
4406 2006-03-04 Werner Lemberg <wl@gnu.org>
4408 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4410 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4412 * scripts/musicxml2ly.py (bindir): add dynamic
4415 2006-04-04 Graham Percival <gpermus@gmail.com>
4417 * Documentation/user/ basic-notation, advanced-notation, putting,
4418 instrument-notation, invoking, lilypond, THANKS: another ream of small
4419 fixes from the Doc Helpers.
4421 2006-04-03 David Feuer <David.Feuer@gmail.com>
4423 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4425 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4427 * Cleaned up interfaces between PostScript and Scheme, and moved
4428 computations from PostScript to Scheme:
4430 * music-drawing-routines.ps
4431 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4432 with stroke_and_fill throughout.
4433 (euclidean_length, print_letter, draw_box): Deleted unused
4434 procedures. If someone needs draw_box, implement it using
4435 draw_round_box; don't duplicate code.
4436 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4437 Refactored/cleaned up interfaces.
4440 * output-ps.scm: reordered arguments to PostScript functions to
4441 match new interfaces
4442 (glyph-string): Rewrote glyph-string.
4443 (grob-cause): Replaced string-append with format.
4444 (repeat-slash): Rewrote to do computation here.
4445 (round-filled-box): Rewrote to do computation here.
4447 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4449 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4451 * stepmake/stepmake/toplevel- targets.make: print help info about
4454 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4456 * input/regression/hairpin-circled.ly: new file
4458 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4460 * lily/hairpin.cc (print): add support for circled tip
4462 * scm/define-grob-properties.scm: add circled-tip parameter
4464 * scm/define-grobs.scm: init circled-tip to false
4466 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4468 * scm/music-functions.scm (quote-substitute): set
4471 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4473 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4476 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4478 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4480 2006-03-31 David Feuer <david.feuer@gmail.com>
4482 * scm/framework-ps.scm:
4484 * scm/output-ps.scm: glyph-string now produces smaller, more
4485 readable, and probably faster PostScript. Several findfont
4486 scalefont setfont instances changed to selectfont
4487 Hacked-up string-appends changed to formats.
4489 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4491 2006-03-30 Graham Percival <gpermus@gmail.com>
4493 * scm/lily-library.scm: make "no version" warning message more polite.
4495 * lily/music.cc: add double quotes to failed octave check.
4497 * Documentation/user/ advanced-notation, changing-defaults,
4498 instrument-notation, invoking, music-glossary: whole bunch of minor
4501 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4503 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4504 $(buildscriptdir) iso. depth.
4506 * VERSION (PACKAGE_NAME): release 2.9.1
4508 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4510 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4512 * VERSION (PATCH_LEVEL): bump version number.
4514 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4517 * lily/pango-font.cc (pango_item_string_stencil): use
4520 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4521 $(outdir)/emmentaler-%.svg): remove canary.
4523 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4524 glyphnames if we have a ttf font.
4526 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4528 * Documentation/user/advanced-notation.itely (Font selection):
4529 Corrected reference to the font-family-override.ly example.
4531 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4533 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4534 stem-tremolo object in the stem (or else the stem might not be
4537 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4539 * lily/ttf.cc (print_trailer): only print existing glyphs.
4541 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4543 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4544 position the tremolo based on the position of the notehead.
4546 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4547 notes and update the texidoc line with the new positioning rules.
4549 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4551 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4553 * scripts/lilypond-book.py (Module): set default for linewidth if
4556 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4558 * VERSION (PACKAGE_NAME): release 2.9.0.
4560 * input/regression/stem-tremolo-position.ly: new file.
4562 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4564 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4566 * lily/stem-tremolo.cc (print): position
4567 the tremolo depending only on the end of the stem
4568 and not on the notehead
4569 (raw_stencil): center, on the middle staff line, the
4570 flag that is closest to the end of the stem (previously
4572 (calc_width): add this callback to shorten a tremolo when
4573 it is beamed or it is stemup with a flag
4574 (style): add this callback to make a tremolo rectangular when
4575 it is beamed or it is stemup with a flag
4576 (rotated_box): this is like Lookup::beam but makes a rotated
4577 rectangle instead of a parallelogram
4579 * lily/stem.cc (calc_stem_info): make sure the stem
4580 is long enough to fit the tremolo
4581 (calc-length): reduce the length of tremolo stems since the
4582 tremolo code is now capable of better positioning
4584 * scm/define-grobs.scm: make calc_width the default beam-width
4585 callback for stem-tremolo and add the style callback
4587 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4589 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4592 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4594 * lily/ttf.cc (make_index_to_charcode_map): restore old
4597 2006-03-28 Werner Lemberg <wl@gnu.org>
4599 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4601 2006-03-28 Graham Percival <gpermus@gmail.com>
4603 * THANKS: update for 2.9, add section for Documentation helpers.
4605 * Documentation/topdocs/NEWS.tely: compile fix.
4607 * Documentation/user/ basic-notation, global, advanced-notation,
4608 examples.itely: minor fixes from mailist.
4610 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4612 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4615 * lily/ttf.cc (print_trailer): use it.
4617 * lily/pango-font.cc (get_unicode_name): new function.
4619 * lily/ttf.cc (make_index_to_charcode_map): move function from
4621 (print_trailer): substitute uniXXXX name if applicable.
4623 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4624 (pango_item_string_stencil): use it to generate uniXXXX names.
4626 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4627 note heads, for uniform widths in shape note output.
4628 (overdone_heads): hmm. remove them again.
4630 * scripts/lilypond-book.py (output): add links to filenames.
4632 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4634 * lily/note-collision.cc (get_clash_groups): only consider when
4635 Note_column::dir <> CENTER.
4637 * scripts/lilypond-book.py (get_option_parser): init output_name
4640 2006-03-24 Graham Percival <gpermus@gmail.com>
4642 * Documentation/topdocs/NEWS.tely: add @end itemize
4644 * Documentation/user/ global, advanced-notation: minor
4647 2006-03-23 Graham Percival <gpermus@gmail.com>
4649 * Documentation/user/ lilypond.tely, music-glossary,
4650 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4652 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4654 * mf/GNUmakefile: don't install .enc files.
4656 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4658 * VERSION (PATCH_LEVEL): bump to 2.9.0
4660 2006-03-22 Graham Percival <gpermus@gmail.com>
4662 * Documentation/user/advanced-notation.itely: minor fixes
4665 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4667 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4669 * branch lilypond_2_8
4671 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4673 * scripts/lilypond-book.py (samefile): new function, for windoze
4676 2006-03-21 Graham Percival <gpermus@gmail.com>
4678 * ly/engraver-init.ly: add info about StaffGroup.
4680 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4682 * input/regression/stem-direction-context.ly: idem.
4684 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4688 * input/regression/page-layout-twopass.ly: comment out \markup so
4691 * lily/instrument-name-engraver.cc (finalize): add to instrument
4692 name global System. This also fixes chopped instrument names, but
4693 doesn't crash when there are slurs/beams.
4695 * lily/slur-configuration.cc (add_score): disallow negative slur
4698 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4700 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4702 * lily/instrument-name-engraver.cc (process_music): kludge: add
4703 InstrumentName spanner to axis group of left bound. Fixes chopped
4704 off instrument names in EPS images.
4706 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4708 * scripts/abc2ly.py (option_parser): update to 2.7.40
4710 2006-03-20 Graham Percival <gpermus@gmail.com>
4712 * THANKS: move small doc contributors to SUGGESTIONS.
4714 * Documentation/user/ basic-notation, advanced-notation,
4715 global: small changes from mailist.
4717 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4719 * Documentation/user/advanced-notation.itely (Text marks): update
4720 for new rehearsalMarkAlignSymbol convention.
4722 * VERSION (PATCH_LEVEL): bump version.
4724 * input/test/instrument-name-align.ly: new file.
4726 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4728 * input/test/instrument-name-align.ly: new file. Document how to
4729 align instrument names.
4731 * lily/mark-engraver.cc: remove properties.
4733 * scm/define-context-properties.scm
4734 (all-user-translation-properties): remove align symbol properties
4735 for barnumber/reh. mark.
4737 * lily/break-align-interface.cc (self_align_callback): new
4738 interface, new function. Look at complete alignment. This handles
4739 tunable break alignments in case break-align-symbols are missing.
4741 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4743 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4745 * python/convertrules.py (conv): mark/bar number alignment rule.
4747 * lily/break-align-interface.cc (calc_positioning_done): also
4748 store offset from last visible break-alignment to its
4749 neighbor. This makes alignment on non-visible objects more reliable.
4751 * po/lilypond.pot (Module): ran po-replace.
4753 * input/regression/tie-single-manual.ly (Module): new file.
4755 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4756 look at has_manual_position_.
4757 (from_ties): set has_manual_position_ if tie has staff-position set.
4759 * lily/tuplet-bracket.cc (calc_positions): idem.
4761 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4764 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4766 * scm/define-markup-commands.scm (smallCaps): new markup command
4767 for turning a text to small caps using smaller font size and upper
4770 2006-03-17 Graham Percival <gpermus@gmail.com>
4772 * Documentation/user/ examples, instrument-notation,
4773 advnaced-notation: minor fixes from mailist.
4775 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4777 * Documentation/user/tutorial.itely (First steps): change example
4780 2006-03-17 Graham Percival <gpermus@gmail.com>
4782 * Documentation/user/ examples, advanced: minor changes from mailist.
4784 * THANKS: add Geoff Horton, for documentation stuff.
4786 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4788 * python/lilylib.py (system): revert have_select kludge.
4790 * Documentation/user/tutorial.itely (Commenting input files):
4791 update version numbers in doc.
4793 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4794 bound-padding to multi-measure-interface
4796 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4798 * input/test/engraver-example.ily: update version number.
4800 * VERSION (PACKAGE_NAME): release 2.7.39
4802 * lily/note-spacing.cc (get_spacing): heighten threshold where
4803 accidentals/arpeggios influence previous spacing fully.
4805 * lily/rest.cc (y_offset_callback): only use direction if
4806 staff-position wasn't set before.
4808 * lily/bar-number-engraver.cc: add support for
4809 barNumberAlignSymbol.
4810 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4812 * lily/pointer-group-interface.cc (set_ordered): new function.
4813 (add_unordered_grob): new function.
4815 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4816 to ordered, unless the opposite has been proved. This fixes
4817 random reordering of large object groups across linebreaks,
4820 * lily/main.cc (do_chroot_jail): printf format fix.
4822 * lily/tie-formatting-problem.cc (generate_configuration):
4823 multiply y-shift for dot with direction.
4825 * scm/define-markup-commands.scm (note-by-number): put (magstep
4826 size) in y-attach too.
4828 * Documentation/topdocs/NEWS.tely (Top): show override.
4830 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4831 direction for stems.
4833 2006-03-15 Graham Percival <gpermus@gmail.com>
4835 * Documentation/user/ changing-defaults, global: minor
4838 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4840 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4842 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4843 breakable items after uniformly stretched notes.
4845 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4846 outline with outer edge of note heads. This prevents infinity
4847 problems with tied whole notes.
4849 * scripts/lilypond-book.py (do_file): use os.popen
4851 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4853 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4855 * Documentation/user/invoking.itely: Add ragged-right to bug report
4858 2006-03-14 Graham Percival <gpermus@gmail.com>
4860 * Documentation/user/global.itely: small fix from mailist.
4862 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4864 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4865 file descriptor returned by tempfile.mkstemp() when writing
4866 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4869 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4871 * po/fi.po: newline bugfix.
4873 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4875 * scm/paper.scm (paper-alist): Rounding fixes.
4877 2006-03-13 Graham Percival <gpermus@gmail.com>
4879 * Documentation/user/ changing-defaults, instrument-notation,
4880 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4882 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4886 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4888 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4891 * python/lilylib.py (print_environment): move ps_page_count to
4894 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4896 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4898 * scm/framework-ps.scm (embed-document): new function. Use to
4901 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4903 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4905 * Documentation/user/instrument-notation.itely (Setting simple
4906 songs): Added \book{...} around the full example, so the separate
4907 markups are included in the printed example.
4909 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4911 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4914 * python/lilylib.py (system): rewrite system() using
4915 subprocess. Remove >& redirection trickery.
4917 2006-03-11 Graham Percival <gpermus@gmail.com>
4919 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4920 notation-appendices.itely: minor fixes from mailist.
4922 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4924 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4925 unsplit man also needs images.
4927 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4929 * VERSION (PACKAGE_NAME): 2.7.38 released.
4931 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4933 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4936 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4938 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4939 respects the Score.skipTypesetting property.
4941 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4943 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4944 Prolog. No %%EOF after CFF file.
4946 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4948 * lily/constrained-breaking.cc (get_max_systems): used to return a
4950 (combine_demerits): use pointers to reduce copying data
4951 (calc_subproblem): idem
4952 (get_page_penalty): add page turn penalties
4954 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4956 * Documentation/user/invoking.itely (Invoking lilypond): better
4957 explanation of -e usage.
4959 * lily/main.cc (main_with_guile): don't append to
4960 init_scheme_code_string
4962 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4964 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4966 * scripts/convert-ly.py (do_options): don't print help for
4969 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4970 @code and @example. Update from texinfo.tex from CVS.
4972 2006-03-08 Graham Percival <gpermus@gmail.com>
4974 * Documentation/user/scheme-tutorial.itely: clarifies distances
4975 measured in staff-spaces.
4977 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4979 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4980 consider[k] is true.
4982 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4984 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4985 consider columns that have originals. Unifies spacing for mm
4986 rests around line breaks.
4988 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4989 (set_text_rods): idem.
4990 (calculate_spacing_rods): new function: share code between
4991 set_text_rods and set_spacing_rods.
4992 (set_text_rods): take extents of bounds into account.
4994 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4996 * Documentation/user/basic-notation.itely (Writing music in
4997 parallel): don't use relative.
4999 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5001 * ly/music-functions-init.ly (Module): add shiftDurations
5003 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5005 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5007 * ly/engraver-init.ly: init vocalName to nil.
5009 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5011 * scm/music-functions.scm (music->make-music): bugfix,
5012 KeyChangeEvents are now handled correctly.
5014 * scripts/lilypond-book.py: Add --debug option.
5016 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5018 * python/lilylib.py: add tempfile.
5020 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5022 * VERSION (PACKAGE_NAME): release 2.7.37
5024 * python/lilylib.py (ps_page_count): remove make_ps_images().
5025 (ps_page_count): remove mkdir_p
5026 (system): remove cleanup_temp.
5027 (exit): remove lilypond_version_(check)
5028 (error_log): remove pseudo_filter_p
5033 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5036 * lily/accidental-engraver.cc (make_standard_accidental): only add
5037 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5039 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5040 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5041 Make incompatibilities.
5043 * scm/output-ps.scm (grob-cause): replace backslashes by /
5044 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5046 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5048 * cygwin/GNUmakefile: Install fixes.
5050 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5052 * lily/note-head.cc (head::get_balltype): Compile fix.
5054 * flower/file-name.cc (dos_to_posix): Flower string fix.
5056 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5058 * python/lilylib.py: pychecker cleanups.
5060 * scripts/lilypond-book.py
5061 (Lilypond_snippet.output_print_filename): pychecker cleanups
5063 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5065 * python/lilylib.py (underscore): remove identify() , warranty()
5067 * ps/music-drawing-routines.ps: change Border routine for GSView
5070 * lily/stem.cc (height): use quantize-positions. This triggers
5071 set_stem_lengths, so scripts on beamed stems are handled correctly.
5073 * lily/side-position-interface.cc (aligned_side): check if edges
5074 of script are inside staff. Fixes accent of edge of the staff.
5076 * input/regression/staccato-pos.ly: more examples.
5078 * stepmake/aclocal.m4 (depth): fix bashism.
5080 * lily/lyric-combine-music-iterator.cc: move from
5081 new-lyric-combine-iterator.cc
5082 (process): add pending_grace_lyric_ member to delay lyrics on
5085 * lily/system-start-text.cc (print): suicide if we don't have any
5086 elements. Fixes hara kiri'd instrument names.
5088 * scripts/mup2ly.py (Module): remove.
5090 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5092 * Documentation/user/global.itely (A single music expression):
5093 close @lilypond properly
5095 * lily/volta-bracket.cc (modify_edge_height): change from
5096 after_line_breaking_callback. Suicide last bracket if appropriate.
5098 * python/lilylib.py: strip getopt support
5100 * scripts/etf2ly.py (do_options): use optparse
5102 * scripts/midi2ly.py: optparse, strip lilylib copy.
5104 * scripts/abc2ly.py (voices): use optparse.
5106 * stepmake/stepmake/generic-vars.make: new function absdir.
5108 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5110 * scripts/lilypond-book.py (find_file): use global_options for
5113 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5116 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5118 * python/lilylib.py (get_global_option): ughness for extracting
5119 global options from lilylib.
5120 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5122 * scripts/lilypond-book.py (get_option_parser): use optparse for
5123 option handling. Put options in global_options variable.
5125 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5127 * Documentation/index.html.in: clarify.
5129 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5131 * scm/layout-page-layout.scm (write-page-breaks): add a
5132 music-system-heights property to the page layout output.
5134 * scm/page.scm (make-page-stencil): take footer into account when
5135 computing the 'space-left page property
5136 (annotate-space-left): take footer into account when annonating
5139 2006-02-28 Graham Percival <gpermus@gmail.com>
5141 * Documentation/user/ advanced-notation, global: more (final)
5142 docs for music expressions, removed special fermatas.
5144 2006-02-27 Graham Percival <gpermus@gmail.com>
5146 * Documentation/user/ basic-notation, global: minor changes
5149 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5151 * scm/framework-ps.scm:
5152 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5153 layer for inf? and nan? from framework-ps to lily-library.
5155 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5157 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5158 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5160 * buildscripts/substitute-encoding.py (Module): remove file.
5162 * mf/GNUmakefile: more PFA strippage.
5164 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5166 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5169 * scm/framework-ps.scm: remove font name munging.
5171 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5173 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5175 * scm/markup.scm (define-markup-command): change
5176 def-markup-command to define-markup-command
5178 * scm/music-functions.scm (define-music-function): change
5179 def-music-function to define-music-function.
5181 * python/convertrules.py (conv): rules for def-music-function
5182 and def-markup-commands
5184 * Documentation/user/programming-interface.itely,
5185 input/no-notation/display-lily-tests.ly,
5186 input/regression/lily-in-scheme.ly,
5187 input/regression/markup-user.ly,
5188 input/regression/music-function.ly, input/regression/tie-chord.ly,
5189 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5190 ly/gregorian-init.ly: use new macro names (define-music-function,
5191 define-markup-command).
5193 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5195 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5196 (output): add comments to lp-book latex output.
5198 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5201 2006-02-23 Graham Percival <gpermus@gmail.com>
5203 * Documentation/user/ tutorial, global: minor changes.
5205 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5207 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5208 blocks (for make 3.80)
5210 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5211 \notemode so that user should not have to explicitely type it.
5213 * scm/define-music-display-methods.scm: various
5214 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5217 * input/no-notation/display-lily-tests.ly: new tests for
5218 \applyOutput and \applyContext
5220 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5222 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5223 changed it slightly so that the number of systems returned by
5224 solve () will be the same as the last value passed to resize
5225 (). I've also added more documentation, removed casts, fixed style
5226 problems and put in some recovery if constraints aren't satisfied."
5228 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5230 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5231 for emacs < 22 compatibility.
5232 (count-rexp): Use it.
5233 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5234 substring juggling (Milan Zamazal).
5236 2006-02-23 Graham Percival <gpermus@gmail.com>
5238 * Documentation/user/ basic-notation, advanced-notation,
5239 global.itely, invoking.itely, tutorial,itely:
5240 minor fixes from mailist.
5242 * scm/define-markup-commands.scm: improve docs of \filled-box.
5244 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5246 * Documentation/index.html.in: changes concern the previous release.
5248 * input/regression/+.ly: cultivate typographical terminology.
5250 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5252 * scm/define-grob-interfaces.scm (parentheses-interface): add
5253 padding to parentheses-interface.
5255 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5256 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5258 * VERSION (PATCH_LEVEL): release 2.7.36
5260 * lily/slur.cc: add avoid-slur (ugh.)
5262 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5263 intersection gets smaller. This fixes slurs over extreme points.
5265 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5266 stems with neutral-direction set.
5268 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5270 * lily/open-type-font.cc (load_table): format error.
5272 * lily/change-iterator.cc (process): format fix.
5274 * flower/include/international.hh (_f): idem.
5276 * flower/include/std-string.hh: add format printf attribute.
5278 * scm/define-grobs.scm (all-grob-descriptions): height of all
5279 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5281 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5284 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5286 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5288 * input/regression/: upgraded syntax for some files.
5290 * THANKS: Add bughunters.
5292 2006-02-22 Graham Percival <gpermus@gmail.com>
5294 * Documentation/user/ invoking.itely, advanced-notation.itely,
5295 global.itely: long-awaited "let's make chapter 10 not suck"
5296 update. Rearrange chapter 10; now called "global issues",
5297 addresses file structure, etc. Some info from other files
5298 moved into global.itely.
5300 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5302 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5303 catch trill-span-event notes.
5305 * Documentation/user/examples.itely (Ancient notation templates): typo.
5308 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5310 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5312 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5314 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5316 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5317 froum Laissez_vibrer_engraver.
5319 * ly/declarations-init.ly (repeatTie): add \repeatTie
5321 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5323 * scm/define-grob-properties.scm (all-user-grob-properties): add
5324 head-direction property.
5326 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5327 from_lv_ties. Take head direction argument.
5329 * lily/semi-tie-column.cc: rename from
5330 laissez-vibrer-tie-column.cc. Rename class too.
5332 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5335 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5337 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5339 (find_breaks): idem.
5341 2006-02-21 Graham Percival <gpermus@gmail.com>
5343 * Documentation/user/advanced-notation.itely: fixed make-moment]
5346 * Documentation/user/basic-notation.itely: more clarification to
5349 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5351 * lily/include/constrained-breaking.hh (class
5352 Constrained_breaking): new file.
5354 * lily/constrained-breaking.cc (resize): new file.
5356 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5358 * Documentation/user/advanced-notation.itely (Clusters): insert
5361 * lily/tie-column.cc (calc_positioning_done): support for
5364 * lily/tie-formatting-problem.cc
5365 (generate_extremal_tie_variations): factor out.
5366 (score_ties_configuration): annotate all tie
5367 (print_ties_configuration): new routine.
5368 (generate_configuration): nudge extremal ties outside of the head
5370 (score_ties_configuration): oops. convert to staff-space before
5371 determining position symmetry.
5373 2006-02-20 Graham Percival <gpermus@gmail.com>
5375 * Documentation/user/*-notation.itely: misc minor editing,
5376 shifting doc sections around.
5378 * Documentation/user/*-notation-itely, global.itely,
5379 changing-defaults.itely: added new stuff from NEWS.
5381 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5385 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5387 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5388 lilypond --verbose for lp-book.
5390 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5391 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5393 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5394 $(buildscript-dir) iso. absolute depth.
5396 * buildscripts/genicon.py (dir): thinko.
5398 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5400 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5402 * scm/output-lib.scm: swap darkcyan/darkyellow
5404 * THANKS: Add bughunters.
5406 2006-02-19 Graham Percival <gpermus@gmail.com>
5408 * Documentation/user/programming-interfaces.itely: fixed example.
5410 * Documentation/user/instrument-notation.itely: fix @{ @}.
5412 * scm/script.scm: add avoid-slur for \open.
5414 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5416 * lily/tie-formatting-problem.cc (score_configuration): use
5417 sliding score for min-length.
5419 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5420 spaghetti for icons.
5422 * buildscripts/genicon.py (program_name): new file.
5424 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5426 (generate_configuration): for small ties, also look for collisions
5427 at Y + DIR*h + DELTA_Y.
5428 (get_variations): consider variation for dot positions too.
5430 * lily/side-position-interface.cc (aligned_side): take abs for
5431 quantized rounded position. Fixes tenuto below staff.
5433 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5434 markers when necessary.
5436 * lily/program-option.cc (internal_set_option): add
5437 strict_infinity_checking option.
5439 * scm/output-lib.scm (cyan): swap yellow and cyan.
5441 2006-02-19 Graham Percival <gpermus@gmail.com>
5443 * darwin.patch: trivial linenumber update.
5445 * Documentation/user/ {various}: `\context foo = named' changed
5446 to `\new foo = "name"' in docs.
5448 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5450 * scm/stencil.scm (annotate-y-interval): use it.
5452 * scm/lily-library.scm (interval-sane?): new function.
5454 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5457 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5460 * flower/include/std-vector.hh (iterof): add iterof macro.
5462 * lily/enclosing-bracket.cc (width): new function.
5464 * lily/align-interface.cc (align_elements_to_extents): reinstate
5467 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5469 * Documentation/index.html.in: fix spelling: thankyous.
5471 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5473 * lily/lyric-hyphen.cc: typo.
5475 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5477 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5478 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5481 * VERSION: release 2.7.35
5483 * lily/beam.cc (get_default_dir): oops. Take abs () for
5485 (get_default_dir): use extreme position criterion only in absence
5486 of forced stem directions.
5488 * VERSION (PATCH_LEVEL): bump VERSION.
5490 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5491 dependencies. Necessary for -jX builds.
5493 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5495 * lily/relocate.cc (setup_paths): Yet another const fix.
5497 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5499 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5501 * lily/relocate.cc (setup_paths): oops.
5503 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5505 * Documentation/index.html.in: order links: html before PDF.
5507 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5509 * lily/tie-column-format.cc (Module): remove.
5511 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5513 * lily/text-spanner.cc (print): idem.
5515 * lily/dynamic-text-spanner.cc (print): only print line if longer
5518 * lily/auto-change-iterator.cc (change_to): formatting.
5520 * lily/beam.cc (get_default_dir): take extreme note head as input
5523 * lily/tie.cc (get_default_dir): only look directions for visible
5526 * lily/side-position-interface.cc (aligned_side): oops. Don't
5527 mutiply with direction. This fixes quantized (staccato, tenuto)
5528 scripts below notes.
5530 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5531 direction. Fixes c-lyrics-center-align.ly
5533 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5535 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5538 * lily/std-string.cc:
5539 * lily/include/std-vector.hh (split_string): Move and rename from
5540 lily/include/misc.hh, lily/misc.cc. Update callers.
5542 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5544 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5546 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5548 * flower/test-file.cc: New file.
5550 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5553 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5555 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5557 * flower/include/file-storage.hh: remove file.
5559 * lily/include/midi-item.hh (class Midi_track): idem.
5561 * lily/include/source.hh (class Sources): idem.
5563 * lily/include/performance.hh (class Performance): use vector
5566 * flower/include/cons.hh (class Cons): remove file.
5568 * flower/include/flower-proto.hh: remove template cruft.
5570 * lily/include/font-metric.hh: use size_t not vsize for indices.
5572 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5575 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5577 * lily/include/paper-book.hh (class Paper_book):
5578 make get_system_specs() public.
5580 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5581 the force=10000 case if we don't have a current-best.
5583 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5586 * flower/include/flower-proto.hh: remove outdated templates.
5588 * scm/page.scm: use annotate-spacing
5590 2006-02-15 Graham Percival <gpermus@gmail.com>
5592 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5594 * THANKS: moved Erlend Aasland to contributors.
5596 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5598 * config.hh.in: remove HAVE_PANGO_16
5600 * lily/tuplet-bracket.cc (calc_positions): multiply with
5601 staff-space for beam case. This fixes tuplets+beams on scaled
5604 * config.hh.in: remove all Kpathsea related defines.
5606 * lily/dot-column.cc (side_position): reach stem via dots->
5607 head->stem. Inspect all stems for dot collisions.
5609 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5612 * lily/bar-number-engraver.cc (process_music): document function
5615 * lily/score.cc (default_rendering): add pscore, not systems
5618 * lily/paper-book.cc (get_system_specs): separate generation of
5621 * flower/include/std-vector.hh: don't include config.hh
5623 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5625 * flower/include/std-vector.hh: Better wrapper compatibility with
5628 * flower/include/flower-proto.hh: Remove cheap forward declaration
5631 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5633 2006-02-14 Graham Percival <gpermus@gmail.com>
5635 * Documentation/user/invoking.itely: add warning about command line.
5637 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5639 * lily/include/lily-proto.hh: add Prob, rm Page.
5641 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5643 * VERSION: release 2.7.34
5645 * lily/relocate.cc (framework_relocation): show canary if
5646 GHOSTSCRIPT_VERSION undefined.
5648 * GNUmakefile.in: remove $(VERSION) symlink.
5650 * lily/relocate.cc (setup_paths): add +
5652 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5654 * Documentation/index.html.in: specify sizes for all big HTML pages.
5656 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5658 * config.hh.in: remove @FRAMEWORKDIR@
5660 * lily/system-start-text.cc (get_stencil): new file: separate out
5661 system-start-delimiter text support.
5663 * input/**ly: replace \context with \new where appropriate.
5667 * lily/slur-scoring.cc (get_base_attachments): use
5668 robust_relative_extent. This fixes problems with empty paper-columns.
5670 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5672 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5674 * scm/define-music-properties.scm (all-music-properties):
5675 create-new property.
5677 * lily/context-specced-music-iterator.cc (construct_children):
5678 inspect 'create-new property iso. magical $uniqueContextId context
5681 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5683 * lily/context-key-manager.cc (Module): new file. Encapsulate
5684 object key generation.
5686 * lily/include/context-key-manager.hh (Module): new file.
5688 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5690 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5693 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5695 (reloc_b): excise --enable-framework-dir
5697 * lily/relocate.cc (framework_relocation): use getenv
5698 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5700 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5702 * flower/include/std-string.hh:
5703 * flower/include/std-vector.hh: Finish std:: conversion; move
5704 flower extensions from std:: namespace. Update users.
5706 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5707 their expansion to vector<*>. Update users.
5709 2006-02-10 Graham Percival <gpermus@gmail.com>
5711 * Documentation/user/invoking.itely: add example to File structure.
5713 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5714 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5716 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5718 * ly/paper-defaults.ly: typo.
5720 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5721 set_parent() for parentheses. This will make it show up in bbox
5724 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5725 ly:grob-common* functions.
5727 * lily/grob-scheme.cc (LY_DEFINE):
5728 ly:grob-common-refpoint-of-array: new function
5729 ly:grob-common-refpoint: new function
5730 ly:grob-relative-coordinate: new function
5732 * lily/instrument-name-engraver.cc (process_music): use
5733 Text_interface::is_markup(). This fixes \markup on instrument names.
5735 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5738 * lily/slur.cc (print): idem.
5740 * lily/tie.cc: add line-thickness for ties.
5742 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5744 * scm/output-svg.scm: Document diversion from GNU coding standards
5745 as a workaround for a bug in Microsoft Internet Explorer.
5747 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5749 * lily/instrument-name-engraver.cc (process_music): use
5750 is_markup() iso. is_string()
5752 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5754 * lily/percent-repeat-engraver.cc (process_music): only look at
5755 main_part_ for % repeats.
5757 * lily/stem-tremolo.cc (get_beam_translation): new function.
5758 (calc_slope): new function.
5759 (height): don't use real slope.
5761 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5763 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5764 new connect-to-neighbor, control-points and staff-padding
5765 properties to make ligature brackets showing up again.
5767 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5769 * VERSION: release 2.7.33
5771 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5774 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5775 remove applyOutput example.
5776 (Objects connected to the input): document \tweak, \parenthesize
5778 * lily/relocate.cc (prefix_relocation): allow "current"
5779 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5780 changing VERSION in a lily tree less painful.
5782 * input/regression/parenthesize.ly: new file.
5784 * scm/output-lib.scm (parenthesize-element): new function.
5786 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5788 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5790 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5791 cause: accidentals are caused by note heads, not note events.
5793 2006-02-08 Graham Percival <gpermus@gmail.com>
5795 * darwin.patch: small patch from Erlend, thanks!
5797 * Documentation/user/basic-notation.itely: add stem-neutral example.
5799 * Documentation/user/putting.itely: clarifications.
5801 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5803 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5804 note, add more guidelines to what should go into NEWS.
5806 * input/sakura-sakura.ly: document how to override font.
5808 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5810 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5812 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5814 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5816 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5817 convertrules. Add explicit grouping, needed for python2.2.
5819 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5821 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5823 2006-02-07 Graham Percival <gpermus@gmail.com>
5825 * Documentation/user/global.itely: fix line-width in (text) docs.
5827 * Documentation/user/lilypond-book.itely: same.
5829 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5831 * VERSION (PACKAGE_NAME): release 2.7.32
5833 * Documentation/topdocs/NEWS.tely (Top): document new variable
5836 * flower/include/array.icc (Message): remove file.
5838 * flower/include/std-vector.hh: make sure vsize and VPOS are
5839 defined for binary_search_bounds().
5841 * flower/std-string.cc (std): add to_string(long unsigned).
5843 * configure.in (gui_b): excise std_string option.
5844 (gui_b): excise std_vector option.
5846 * flower/string.cc (Module): excise flower array & string
5848 * flower/include/std-string.hh: excise flower string.
5850 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5852 * python/convertrules.py (lilypond_version_re_str): require
5853 only numbers and dots in \version string.
5855 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5857 * lily/system-start-delimiter.cc (print): allow style = text too.
5859 * lily/system-start-delimiter-engraver.cc
5860 (acknowledge_system_start_text): new function, also add add to
5861 support of system-start-text (instrument names). This fixes
5862 instrument names on piano staves.
5864 * lily/instrument-name-engraver.cc: rewrite. Use
5865 system-start-delimiter approach. This save memory and cpu.
5867 * scm/define-grobs.scm (all-grob-descriptions): remove
5868 instrument-name from break-alignment.
5870 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5872 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5874 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5877 * configure.in (std_vector): On by default.
5879 * lily/include/font-metric.hh:
5880 * lily/include/tfm-reader.hh:
5881 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5884 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5886 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5888 * VERSION (PACKAGE_NAME): 2.7.31
5890 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5891 EPS edge at 0, but take minimum with left-overshoot. This fixes
5892 cut off system start delims.
5894 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5895 hack: add to axis group if not added yet. This fixes hara kiri'd
5898 * lily/hara-kiri-group-spanner.cc
5899 (force_hara_kiri_in_y_parent_callback): fix signatures.
5901 * lily/hairpin.cc (print): check next hairpin to see whether or
5902 not to be continuing.
5904 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5906 * Remove trailing whitespace from makefiles.
5908 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5911 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5913 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5915 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5917 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5919 * configure.in: Use it.
5921 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5923 * scm/music-functions.scm (pitch-of-note): new function.
5925 * ly/music-functions-init.ly: add \octave and \addquote
5927 * lily/parser.yy (music_function_chord_body): softcode \octave.
5928 (lilypond_header): softcode \addquote
5930 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5932 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5933 array.hh, parray.hh at all. Getting ready to flip the
5936 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5938 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5941 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5943 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5945 * flower/include/array.hh: typo.
5947 2006-02-02 Graham Percival <gpermus@gmail.com>
5949 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5951 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5953 * flower/include/pqueue.hh: Derive from std::vector.
5955 * flower/include/parray.hh: Conform to std::vector interface.
5958 2006-02-02 Graham Percival <gpermus@gmail.com>
5960 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5962 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5964 * flower/file-path.cc (is_file): remove if 0 section.
5966 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5967 selecting afii61352.
5969 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5971 * flower/include/std-vector.hh (boundary): Oops, reverse.
5973 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5974 remove superfluous `d'.
5976 * flower/include/std-vector.hh (boundary, top): Detach from class.
5977 Remove empty vector shell.
5979 * flower/include/array.hh (reverse, swap): Detach from class.
5982 * flower/include/std-vector.hh
5983 * flower/include/array.hh (concat): Globally change to insert ().
5985 * flower/include/std-vector.hh
5986 * flower/include/parray.hh
5987 * flower/include/array.hh (elem, elem_ref): Globally replace by
5990 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5992 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5994 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5995 anticipate on identifier substitutions.
5997 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5999 * flower/include/std-vector.hh (insert): Remove, replace by
6000 std::vector interface. Update callers.
6002 * flower/include/array.icc (insert): Change signature to
6003 match std::vector interface.
6005 * flower/include/array.icc (vector_sort): Bugfix.
6007 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6009 * lily/parser.yy (output_def_head_with_mode_switch): new
6010 production. Result: dashes and underscores may be used in the
6013 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6015 * python/convertrules.py (conv): oops. One slash too much.
6017 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6019 * flower/include/std-vector.hh (sort): Remove, replace by
6020 ::vector_sort. Update callers.
6022 * flower/include/std-vector.hh (slice): Remove. Update callers.
6025 * flower/test-std.cc (vector_sort): New test.
6027 2006-02-01 Graham Percival <gpermus@gmail.com>
6029 * Documentation/user/putting.itely: fixes from Erik.
6031 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6033 * flower/test-std.cc: Add simple unit test for vector migration.
6035 * stepmake/stepmake/test*: Unit test support.
6037 * flower/include/std-vector.hh (del): Remove. Use erase (),
6040 * flower/include/array.hh (begin, end): Add.
6043 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6045 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6046 std::string not String.
6048 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6051 * lily/prob.cc (Prob): copy type_ too.
6053 * lily/lily-guile.cc (mangle_cxx_identifier): new
6054 function. Class_bla::foo_bar_[px] ->
6055 ly:class-bla::foo-bar[?!]. Changes throughout
6057 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6059 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6061 * lily/beam.cc (calc_direction): take dir from visible stem in
6064 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6066 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6067 Fix -1, >=0 boundary checks for unsigned vsize.
6069 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6070 loop for unsigned vsize.
6072 * configure.in (--enable-std-vector): New option.
6073 (--enable-std-string): On by default.
6075 * flower/include/std-vector.hh: New file. Enable switch to
6076 std::vector, update client code.
6078 2006-01-30 Graham Percival <gpermus@gmail.com>
6080 * scm/document-translation.scm: clarify "this context is also
6081 known as". Thanks, Werner!
6083 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6085 * Documentation/user/invoking.itely: small fix from Don.
6087 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6089 * scm/lily.scm (define-scheme-options): rename option
6090 preview-include-book-title to book-title-preview
6091 (define-scheme-options): move force-eps-font-include (from paper
6092 block) to eps-font-include -d option.
6094 * VERSION (PATCH_LEVEL): release 2.7.30
6096 * input/bach-schenker.ly (staffPiano): new file.
6098 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6100 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6103 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6105 * ps/lilyponddefs.ps: remove start-system, stop-system,
6106 start-page fluff. This saves putting { } code on the stack, fixing
6107 stack overflows when including EPS files.
6109 2006-01-29 Graham Percival <gpermus@gmail.com>
6111 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6113 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6115 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6117 2006-01-28 Graham Percival <gpermus@gmail.com>
6119 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6121 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6123 * input/mutopia/claop.py: Update.
6125 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6127 * input/regression/completion-heads.ly (texidoc): fix.
6129 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6131 * lily/tie-formatting-problem.cc
6132 (set_ties_config_standard_directions): use abs iso fabs for ints.
6134 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6136 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6137 little less than noteheight, to prevent overlaps in chords.
6139 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6140 head, and fudge stem-attachment.
6142 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6144 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6146 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6148 * lily/main.cc (main): Debugging aid: catch exceptions.
6150 * flower/std-string.cc (to_string): Robustification. Fixes midi
6151 output with std::string.
6153 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6155 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6157 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6159 * Fix -DSTRING_UTILS_INLINED.
6161 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6163 * VERSION (PATCH_LEVEL): release 2.7.29
6165 * lily/relocate.cc (setup_paths): mingw uses std string too.
6167 * lily/*.cc: various fixes for substr(ARG).
6169 * lily/sustain-pedal.cc (print):
6171 * flower/file-name.cc (slashify): use std strings.
6173 * flower/string-convert.cc: remove publib.h
6175 * scm/define-markup-commands.scm (verbatim-file): new markup
6176 command \verbatim-file
6178 * Documentation/topdocs/NEWS.tely: fixup URLs
6180 * input/regression/alignment-vertical-manual-setting.ly (Module):
6183 * lily/align-interface.cc (align_elements_to_extents): overwrite
6184 translations with numbers in alignment-offsets from left bound
6186 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6187 (page-translate-systems): new function: take into account Y-offset.
6189 * Documentation/topdocs/NEWS.tely (Top): document new features.
6191 * input/regression/page-layout-manual-position.ly (Module): new
6194 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6196 * flower/file-path.cc (path::parse_path): Oops.
6198 * Finish std::string interface. For now, use std:: marker
6199 throughout for easy s/r.
6201 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6203 * Documentation/user/putting.itely (Score is a single musical
6205 (Score is a single musical expression): more typos.
6207 * scm/page.scm (annotate-space-left): thinko.
6208 (annotate-page): more thinkos.
6210 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6212 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6213 for different \score blocks separately.
6214 (post-process-pages): put write-page-layout into paper block.
6216 * lily/output-def.cc (get_parser): new file.
6218 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6221 * lily/include/output-def.hh (class Output_def): add parser_ member.
6223 * input/regression/page-layout-twopass.ly (Module): new file.
6225 * scm/lily.scm: remove cpp hack.
6227 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6229 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6231 * GNUmakefile.in (c-clean): New target.
6233 * flower/include/std-string.hh: String/std::string compatibility:
6234 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6237 * flower/rational.cc:
6238 * flower/include/rational.hh:
6241 * flower/include/offset.hh:
6243 * flower/interval.cc:
6244 * flower/include/interval.hh:
6246 * flower/string-convert.cc:
6247 * flower/include/string-convert.hh: Use std::string [interface].
6250 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6252 * Documentation/index.html.in: clean up.
6254 2006-01-25 Graham Percival <gpermus@gmail.com>
6256 * Documentation/user/putting.itely: another new untested doc section.
6258 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6260 * scm/layout-page-layout.scm (write-page-breaks): write
6261 \spacingTweaks #ALIST. Handle grace timing.
6263 * scm/: more imports.
6265 * scm/page.scm (make-page): add footer/header.
6266 (annotate-space-left): revise: only take page argument.
6267 (layout->page-init): new function.
6269 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6270 version of the system/spacing/linebreak hack writing to the output
6272 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6275 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6278 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6280 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6282 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6284 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6285 handling to page.scm
6287 * lily/prob-scheme.cc (LY_DEFINE): new file.
6288 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6290 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6293 * lily/music.cc (derived_mark): derive Music from Prob.
6295 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6297 * lily/prob.cc (Module): Implement Prob (Property Object), object
6298 with shared and r/w property alists.
6300 * lily/include/prob.hh (Module): new file. Declare Prob.
6302 * flower/string.cc: remove is_empty().
6304 * flower/include/string.hh (class String): remove String:: qualifier.
6306 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6307 substitute appropriate functions.
6309 * flower/include/string.hh (class String): remove to_str0 and
6310 is_empty(). S&R everywhere.
6312 2006-01-23 Graham Percival <gpermus@gmail.com>
6314 * Documentation/user/basic-notation.itely: add hairpin
6315 after-linebreak tweak to commonprop.
6317 * Documentation/user/putting.itely: added two new sections.
6319 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6321 * flower/international.cc:
6322 * flower/include/international.hh:
6324 * flower/getopt-long.cc:
6325 * flower/include/getopt-long.hh: Use std::string [interface].
6328 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6330 * stepmake/stepmake/executable-rules.make: Add dependency on
6333 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6335 * flower/file-path.cc:
6336 * flower/include/file-path.hh: Use std::string [interface].
6339 * flower/direction.cc:
6340 * flower/axis.cc: Unused. Remove.
6342 * configure.in (--enable-std-string): New option.
6344 * flower/std-string.cc:
6345 * flower/include/std-string.hh: New file.
6347 * flower/file-name.cc[STD_STRING]:
6348 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6350 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6352 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6354 * scm/define-markup-commands.scm (with-dimensions):
6355 with-dimensions markup command.
6357 * input/test/font-table.ly: use it.
6359 * lily/open-type-font.cc (glyph_list): new function.
6361 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6363 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6365 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6367 * ly/music-functions-init.ly (parallelMusic): new music function
6368 for parallel music entry.
6370 * scm/define-music-properties.scm (all-music-properties): new
6371 'void music property
6373 * scm/music-functions.scm (ly:music-message): make public, to be
6374 used in music function definitions
6376 * scm/lily-library.scm (collect-music-for-book): discard music
6377 when the 'void property is set.
6379 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6381 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6383 * mf/GNUmakefile: idem.
6385 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6387 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6389 * Documentation/user/notation-appendices.itely (The Feta font):
6392 * input/test/font-table.ly: new file. Generate font table within lily.
6394 * Documentation/user/notation-appendices.itely (The Feta font):
6395 use new font-table.ly file.
6397 * stepmake/stepmake/install-out-targets.make
6398 (local-install-outfiles): only create directory if
6399 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6401 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6403 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6405 * VERSION (PACKAGE_NAME): release 2.7.28
6407 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6408 the right font from a Mac dfont.
6409 (write-preamble): don't forget directory, only look at files.
6411 This fixes problems with TTF files in dfonts that don't match
6412 their PostScript names.
6414 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6415 PS name from TTF font.
6417 * input/regression/tie-manual.ly: document new feature.
6419 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6421 * VERSION (MY_PATCH_LEVEL): bump to .28
6423 * Documentation/user/basic-notation.itely (Ties): add tie examples
6426 * lily/tie-formatting-problem.cc (score_ties_configuration):
6427 symmetry penalties for outer ties.
6429 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6431 * lily/tie-formatting-problem.cc (generate_configuration)
6432 (set_manual_tie_configuration): skip non-pair manual
6433 tie-configuration, so you can set individual ties as
6435 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6437 * input/regression/tie-chord.ly: use generateTiePattern to
6440 * lily/tie-formatting-problem.cc (peak_around): new function.
6441 (score_configuration): use sliding criterion for staff line collisions.
6442 (score_configuration): idem for dot collisions.
6443 (generate_configuration): use separate stem_gap for gap to stem.
6445 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6446 separate penalty factors for x and y distance.
6447 (struct Tie_details): separate penalties for tip and center line collisions.
6449 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6451 * lily/tie-formatting-problem.cc (generate_configuration): make
6452 large ties avoid stafflines in the horizontal section.
6453 (score_configuration): use softcoded penalties
6454 (score_aptitude): idem.
6456 * lily/tie-helper.cc (from_grob): softcode tie details
6458 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6460 * lily/staff-symbol-referencer.cc (on_line): rename from
6463 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6465 * ly/music-functions-init.ly: remove duplicate tag.
6467 * lily/include/*.hh: GCC 4.1 fixes.
6469 006-01-16 Erlend Aasland <erlenda@gmail.com>
6471 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6473 * scm/define-music-types.scm: fix bug in desc. string
6474 for OverrideProperty
6476 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6478 * scripts/lilypond-book.py: bugfix
6480 * scm/define-music-types.scm: fix typos.
6482 2006-01-14 Graham Percival <gpermus@gmail.com>
6484 * Documentation/user/ basic-notation.itely, global.itely,
6485 advanced-notation.itely, instrument-notation.itely: small
6486 additions (bugs and commonly tweaked properties).
6488 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6490 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6491 detection of mingw build.
6492 (MINGW_BUILD): opps.
6494 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6496 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6499 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6501 * scm/music-functions.scm (skip->rest): add skip->rest
6503 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6505 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6508 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6509 config dirs. Aids debugging.
6510 (display_config): also display config files.
6512 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6514 * VERSION: release 2.7.27
6516 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6517 for determining bar size.
6519 * lily/staff-symbol.cc (print): place lines at distance line-positions
6521 * scm/define-grob-properties.scm (all-user-grob-properties): add
6524 * lily/staff-symbol.cc (height): new function.
6526 * input/regression/staff-line-positions.ly: new file.
6528 2006-01-06 Graham Percival <gpermus@gmail.com>
6530 * input/test/add-staccato.ly: remove reference to old file.
6532 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6534 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6535 lilypond binary too.
6537 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6539 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6541 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6543 * scripts/midi2ly.py: Bugfix: Declare datadir.
6545 * make/ly-rules.make:
6546 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6547 that seems to be gone). Fixes make web.
6549 * The grand 2005-2006 replace.
6551 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6553 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6555 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6556 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6557 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6558 like -dgs-font-load.
6560 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6561 remove absolute path to lilypond binary.
6563 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6565 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6567 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6569 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6571 * mf/GNUmakefile: remove broken dvips map symlink.
6573 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6576 * configure.in: Cosmetic fixes.
6578 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6580 * Documentation/user/music-glossary.tely (Pitch names): Added
6581 Spanish pitch names and durations, thanks to Ernesto Gancedo
6583 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6585 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6586 init. Fixes verbose printing of .scm files.
6588 * stepmake/aclocal.m4: add spaces before - options.
6590 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6592 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6593 of path search in local block variable.
6595 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6597 * configure.in (NCSB_DIR): --enable-ncsb-dir
6598 (LINK_GXX_STATICALLY): denko.
6600 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6602 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6603 use locate to find c059033l.pfb.
6605 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6607 * lily/tie-formatting-problem.cc
6608 (problem::generate_base_chord_configuration): Use my_round (was
6611 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6612 do not invoke mbrtowc.
6614 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6616 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6618 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6620 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6622 * Documentation/user/invoking.itely (svg): revise.
6624 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6626 * lily/lexer.ll: use sourcefilename iso. renameinput.
6628 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6630 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6631 <PostScriptName>.ttf instead of c059XXXttf.
6633 * lily/program-option.cc (LY_DEFINE): special support for
6634 --verbose, so it works before option init too.
6636 * mf/GNUmakefile (local-install): oops.
6638 * lily/lyric-hyphen.cc (print): oops.
6640 * buildscripts/pfx2ttf.fontforge: new file.
6642 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6643 ($(outdir)/%.ttf): new rule.
6645 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6648 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6651 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6653 * VERSION: release 2.7.26
6655 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6657 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6659 * lily/font-config.cc (init_fontconfig): verbosity.
6661 * THANKS: add Muziekacademie Lede.
6663 * scripts/musicxml2ly.py (print_voice_definitions): new function
6664 (print_score_setup): new function
6665 (convert): read part definition to output staves properly.
6667 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6670 * python/musicexp.py (Output_printer.__init__): use _ in data
6672 (Output_printer.unformatted_output): new function: no formatting,
6674 (Duration.get_length): remove isinstance() checks for
6675 Output_printer everywhere.
6677 * input/regression/lyrics-bar.ly (texidoc): add
6678 Separating_line_group_engraver.
6680 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6682 * lily/relocate.cc (framework_relocation): New function,
6683 factored from set_relocation ().
6684 (prefix_relocation): Rename from set_relocation ().
6685 (setup_paths): Use it.
6687 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6689 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6690 numbers. Patch by Erlend Aasland.
6692 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6694 * lily/font-config.cc (init_fontconfig): print warning if cache
6695 file is not existant.
6697 * lily/main.cc: don't use #ifdef but #if
6699 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6701 * lily/grob-property.cc (internal_set_property): don't abort on
6702 calculation-in-progress.
6704 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6706 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6707 connect-to-neighbor property not connect-to-other
6709 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6710 (LY_DEFINE): oops. don't forget protection.
6712 * flower/parse-afm.cc (Module): strip AFM handling completely.
6714 * lily/stencil-expression.cc: idem.
6716 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6718 * lily/function-documentation.cc (ly_add_function_documentation):
6719 use static member iso. Protected_scm
6721 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6723 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6725 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6727 * lily/relocate.cc (set_env_dir): New function.
6728 (set_relocation): Use it to fix setting PANGO_PREFIX.
6730 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6732 * input/regression/stem-direction-context.ly: remove rest.
6734 * lily/melody-engraver.cc (process_music): restart for bar lines.
6735 (acknowledge_slur): restart for slurs.
6737 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6739 * Documentation/user/invoking.itely: describe how to view SVG
6740 output using Inkscape which replace embedded fonts with OTF fonts.
6742 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6744 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6746 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6748 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6751 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6753 * VERSION (PACKAGE_NAME): release 2.7.25
6755 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6757 * input/regression/stem-direction-context.ly: new file.
6759 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6761 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6764 * ly/engraver-init.ly: add Melody_engraver
6766 * lily/beam.cc (calc_direction): use default-direction
6767 iso. get_default_direction()
6769 * scm/define-grob-properties.scm (all-user-grob-properties): add
6770 default-direction property.
6772 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6774 * lily/stem.cc (calc_default_direction): remove
6775 Stem::get_default_direction, use default-direction with callback
6778 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6780 * lily/melody-engraver.cc: new file. Acknowledge stems for
6781 interpolated stem directions.
6783 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6785 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6787 * lily/slur-configuration.cc (fit_factor): more robust check for
6788 point in curve X-extent.
6790 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6791 (outside_slur_callback): check for 'outside avoidance.
6793 * lily/slur-configuration.cc (score_extra_encompass): don't use
6794 bound->column() == avoid->column() for checking extents, as this
6795 doesn't work for accidentals.
6797 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6798 DynamicText hardcoding.
6800 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6801 crash if bound stem is NULL
6803 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6806 2005-12-22 Graham Percival <gpermus@gmail.com>
6808 * scm/define-markup-commands.scm: typo. @code{\raise}
6811 * darwin.patch: now used again, includes a
6812 required patch from fink.
6814 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6816 * po/TODO: mention gtranslator along with kbabel.
6817 * po/fi.po: update translations.
6819 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6821 * lily/relocate.cc (setup_paths): Bugfix.
6823 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6825 * lily/slur-configuration.cc (score_extra_encompass): don't use
6826 "avoid" choice for avoid-slur.
6828 * stepmake/bin/install.py (dest): don't create existing dir.
6830 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6832 * stepmake/bin/install.py: Remove file before copying.
6835 * stepmake/aclocal.m4: Do not substitute INSTALL.
6837 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6839 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6840 depend on link-tree.
6842 * lily/relocate.cc (setup_paths): only check path for non-absolute
6843 dir without directory part.
6845 * flower/file-name.cc (is_absolute): new method.
6846 (is_absolute): check root_ too.
6848 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6850 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6851 relocation code. Oops, don't comment out too much.
6853 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6856 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6859 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6861 * .cvsignore: Add install-sh.
6863 * autogen.sh (srcdir): Typo.
6865 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6867 * autogen.sh (srcdir): urg. Touch install-sh.
6869 * stepmake/bin/install-sh (Module): remove.
6871 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6873 * lily/include/relocate.hh: new file.
6875 * lily/relocate.cc: new file. Contain relocation logic.
6877 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6878 (main): read LILYPOND_VERBOSE as the first thing.
6880 * stepmake/aclocal.m4: remove INSTALL variable.
6882 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6883 separate target for making font symlinks.
6884 (documentation-dir): use $(if $(findstring )) for switching off
6887 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6888 something if DOCUMENTATION is no.
6890 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6892 * VERSION: release 2.7.24
6894 * lily/script-column-engraver.cc (stop_translation_timestep):
6895 delay adding to script-column.
6897 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6899 * python/convertrules.py (conv): rule for number-visibility
6901 * lily/slur-configuration.cc (score_extra_encompass): different
6902 distance measure for avoid and inside avoidance.
6903 (score_extra_encompass): use 1/(distance+eps) as penalty.
6905 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6906 encompass objects for generating slur curves.
6908 * lily/slur.cc: use details iso. slur-details property.
6910 * input/regression/slur-tuplet.ly: new file.
6912 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6914 * flower/include/offset.hh (class Offset): new operator /=
6916 * lily/tuplet-number.cc (print): new file, new interface.
6918 * scm/define-grob-properties.scm (all-user-grob-properties):
6919 remove number-visibility property.
6921 * lily/tuplet-bracket.cc (calc_control_points): new function
6922 (calc_connect_to_neighbors): new function.
6923 (print): remove text handling for tuplet numberdef.
6925 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6928 * lily/lily-guile.cc (robust_scm2booldrul): new function
6930 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6932 * lily/tuplet-bracket.cc (calc_position_and_height): use
6933 staff-padding to control whether tuplet brackets are over staves.
6935 * lily/grob.cc (suicide): clear dim_caches_.
6937 * lily/dimension-cache.cc (clear): new function.
6939 * lily/grob.cc (extent): swap order of min-extent and extent
6940 calculations. This fixes hara kiri staves.
6942 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6944 * lily/main.cc: Nitpick: relocation is not based on path, but on
6945 directory (location).
6947 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6949 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6951 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6953 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6955 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6957 * stepmake/stepmake/generic-vars.make (Module): idem.
6959 * stepmake/stepmake/executable-targets.make (default): use it.
6961 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6963 * make/GNUmakefile: don't install make rules.
6965 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6967 (prepend_env_path): more verbosity.
6969 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6971 * GNUmakefile.in: add dir argument for find command.
6973 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6974 fixes weird line numbers for point & click.
6976 * lily/source-file.cc (get_counts): init line/column/char counts.
6978 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6980 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6982 2005-12-16 Graham Percival <gpermus@gmail.com>
6984 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6985 minor fixes from Fredric. Thanks!
6987 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6989 * ly/music-functions-init.ly: add \bar and \clef music function
6991 * lily/lily-lexer.cc: idem.
6993 * lily/parser.yy (FIXME): remove BAR and CLEF.
6995 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6997 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6999 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7000 function arguments too
7002 * lily/main.cc (set_relocation): new function.
7004 * scripts/musicxml2ly.py (convert): add \version
7006 * lily/tie.cc: remove get_default_attachments()
7008 * VERSION (PACKAGE_NAME): release 2.7.23
7010 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7011 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7013 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7015 * lily/tie-formatting-problem.cc (score_ties): new function
7016 (get_variations): new function. Try flipping dirs for collisions.
7017 (generate_optimal_chord_configuration): new function. 1-opt search
7018 for better configuration.
7020 * lily/tie-configuration.cc: new file.
7022 * lily/tie.cc: junk Tie::get_configuration()
7024 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7025 (score_ties_configuration): new function.
7026 (generate_ties_configuration): new function.
7027 (generate_base_chord_configuration): new function.
7028 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7029 (set_manual_tie_configuration): Move body from tie-column-format.cc
7031 * input/regression/tie-dot.ly: new file.
7033 * lily/tie-formatting-problem.cc (score_configuration): score
7036 * lily/tie-helper.cc (get_transformed_bezier): new function
7038 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7040 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7041 -undefined suppress iso. -framework Python
7043 * scm/define-grobs.scm (all-grob-descriptions): set
7044 springs-and-rods (thanks Joe Neeman!)
7046 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7048 * input/no-notation/display-lily-tests.ly (test):
7049 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7050 changed from \tag #'(a b) to \tag #'a \tag #'b
7052 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7054 * Documentation/topdocs/NEWS.tely: strip out-www.
7056 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7058 * config.make.in (AR): add AR and RANLIB
7060 * flower/libc-extension.cc: include cassert
7062 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7065 2005-12-11 Graham Percival <gpermus@gmail.com>
7067 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7069 * stepmake/stepmake/python-modules-vars.make: define
7070 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7072 * THANKS: added Johannes Schindelin.
7074 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7076 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7078 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7079 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7081 * lily/parser.yy: reorganize file layout.
7083 * ly/music-functions-init.ly: add tweak music function.
7085 * lily/grob-info.cc (ultimate_music_cause): new function:
7086 recursively lookup causes.
7088 * lily/parser.yy (chord_body_element): allow music functions for
7089 post-events, allow music functions for chord elements.
7091 * lily/font-config-scheme.cc (display_fontset): add cast.
7093 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7094 #'(a b) -> \tag #'a \tag #'b rule.
7096 * python/musicexp.py (Output_printer.dump_version): new function
7098 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7100 * lily/parser.yy (FIXME): remove \tag
7101 (FIXME): remove tag_music() function.
7103 * lily/lily-lexer.cc: remove \tag
7105 * ly/music-functions-init.ly: define music-function "tag"
7107 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7109 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7111 * VERSION (PATCH_LEVEL): release 2.7.22
7113 * input/regression/lyric-hyphen-retain.ly: renew.
7115 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7118 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7119 iso. minimum-length property for rods.
7121 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7122 LyricSpace item to keep lyrics spaced apart.
7124 * ly/engraver-init.ly: remove Separating_line_group_engraver
7126 * Documentation/user/music-glossary.tely: do setfilename before
7129 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7131 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7132 See xref documentation, for example.
7134 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7136 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7137 pending_skip iso. ly_voice[-1]
7138 (main): add if __main__ for debugging.
7140 * python/musicxml.py (Accidental.__init__): new class.
7142 * scripts/musicxml2ly.py (progress): new function
7143 (musicxml_key_to_lily): don't barf on modeless keys.
7144 (create_skip_music): new function.
7145 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7146 (musicxml_note_to_lily_main_event): new function.
7148 * python/musicexp.py (Music.__init__): add comment field.
7149 (NestedMusic.append): new routine.
7150 (SequentialMusic.print_ly): print comment.
7151 (ArpeggioEvent.ly_expression): new class
7152 (BeamEvent.ly_expression): new class
7153 (NoteEvent.__init__): support for cautionary/forced accs.
7155 * lily/lookup.cc (slur): normal order for array loop.
7157 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7160 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7163 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7165 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7167 * scripts/lilypond-book.py: Introduce option
7168 --preserve-line-breaks, for usage with srcltx
7170 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7172 * scm/output-lib.scm (print-circled-text-callback): draw circle
7173 around text using make-circle-markup.
7175 * Documentation/user/*: strip out-www from file names.
7177 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7179 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7180 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7182 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7184 * Documentation/user/GNUmakefile: idem.
7186 * Documentation/user/macros.itexi: strip out-www
7188 * python/rational.py: python 2.3 compat.
7190 * VERSION (PATCH_LEVEL): release 2.7.21
7192 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7193 option formatting, lilypond style.
7195 * python/musicexp.py: grab from Ikebana: a library for composing
7196 ly music expressions.
7197 (Output_printer): class for advanced .ly printing.
7200 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7201 convert to pythonesque structure.
7203 * python/rational.py: PD rational number class.
7205 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7207 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7209 * lily/part-combine-iterator.cc: Minor bugfix
7211 * THANKS: Update bughunters
7213 2005-12-02 Werner Lemberg <wl@gnu.org>
7215 * mf/README: Document process for proper mf2pt1 conversion.
7217 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7220 * mf/feta-harmonica.mf: Removed. Unused.
7222 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7224 * scripts/lilypond-book.py (do_file): fix thinkos.
7226 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7228 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7229 ($(outdir)/parser.cc):
7230 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7232 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7234 * ly/titling-init.ly (tagline): it should be a space between
7235 "Music engraving by LilyPond" and the version number.
7237 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7239 * VERSION (PACKAGE_NAME): release 2.7.20
7241 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7243 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7245 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7247 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7249 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7251 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7253 * kpath-guile/: remove directory
7255 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7256 file. Encapsulate kpathsea using commandline tools.
7258 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7261 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7263 * Documentation/user/advanced-notation.itely (Setting automatic
7264 beam behavior): Correct a few typos. Thanks to David Bobroff.
7266 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7267 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7269 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7271 * scripts/*.py: gmane address for bugs.
7273 2005-11-28 Pal Benko <benkop@freestart.hu>
7275 * make/ly-rules.make: add -f switch to mv
7277 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7279 * lily/bar-line.cc: interpret it
7281 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7283 * configure.in (--disable-documentation): New switch.
7285 * GNUmakefile.in: Use it.
7287 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7289 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7291 * scripts/lilypond-book.py (do_file): search chunks for
7294 * GNUmakefile.in: add copy step in between so we can lose the
7295 out-www directories.
7297 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7299 * lily/pango-font.cc (pango_item_string_stencil): put
7300 geometry.width into glyph-string too.
7302 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7304 * scm/define-music-display-methods.scm (RevertProperty):
7305 (OverrideProperty): Use grob-property-path property, a list of
7306 symbols, instead of grob-property, which used to be a single
7308 (BassFigureEvent): a figure can be a plain number, not necessarily a
7311 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7313 * VERSION: release 2.7.19
7315 * lily/figured-bass-engraver.cc (process_music): check
7316 figuredBassCenterContinuations first.
7318 * scm/translation-functions.scm (format-bass-figure): make double
7321 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7324 * lily/system-start-delimiter-engraver.cc: move from
7325 Nested_system_start_delimiter_engraver, rename
7326 Nested_system_start_delimiter_engraver ->
7327 System_start_delimiter_engraver.
7329 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7330 bracket type from hierarchy.
7332 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7334 * lily/rest.cc (y_offset_callback): read staff-position.
7336 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7337 mark after-line-breaking-callback as internal.
7339 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7341 2005-11-25 Werner Lemberg <wl@gnu.org>
7343 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7345 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7347 * stepmake/bin/add-html-footer.py (do_file): add google
7349 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7350 staff if first_start_ is true.
7352 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7354 * scripts/midi2ly.py (split_track): add __repr__ members.
7355 (track_first_item): only return Item if not None. This fixes a
7356 problem when dumping a track that starts with an empty channel.
7358 * python/midi.c: doc module.
7360 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7362 * Documentation/user/global.itely (Creating MIDI files): Fix
7363 compilation problem.
7365 2005-11-22 Graham Percival <gpermus@gmail.com>
7367 * Documentation/user/basic-notation.itely: clarify dynamic
7370 * Documentation/user/advanced-notation.itely: add unicode
7371 escape control example, whatever that is. :)
7373 * Documentation/user/global.itely: added "removing dynamics
7376 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7378 * VERSION (PATCH_LEVEL): release 2.7.18
7380 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7381 System_start_delimiter_engraver by
7382 Nested_system_start_delimiter_engraver.
7384 * lily/nested-system-start-delimiter-engraver.cc (struct
7385 Bracket_nesting_node): new class.
7386 (struct Bracket_nesting_group): new class
7387 (struct Bracket_nesting_staff): new class.
7388 (process_music): create hierarchy of grobs. This allows separate
7389 tuning of different SSDs.
7391 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7392 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7394 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7396 * lily/side-position-interface.cc (aligned_side): multiply
7399 * lily/script-engraver.cc (make_script_from_event): allow setting
7402 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7404 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7406 * scm/define-grobs.scm (all-grob-descriptions): new grob
7407 NestedSystemStartDelimiter.
7409 * input/regression/system-start-heavy-bar.ly: new file.
7411 * lily/nested-system-start-delimiter-engraver.cc: new file.
7413 * lily/nested-system-start-delimiter.cc: new file.
7415 * input/regression/system-start-nesting.ly: new file.
7417 * scm/define-grobs.scm (all-grob-descriptions): use X side
7418 positioning for positioning braces for nested contexts.
7420 * lily/system-start-delimiter.cc (print): don't divide extent by
7422 (print): use style iso. glyph.
7423 (staff_bracket): translate glyph inside routine already.
7425 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7427 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7430 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7432 * scm/define-context-properties.scm
7433 (all-user-translation-properties): rename figuredBassFormatter
7434 from newFiguredBassFormatter.
7436 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7438 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7440 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7442 * lily/beam.cc (calc_beaming): new function.
7443 (calc_shorten): new function.
7445 * THANKS: add Edward Neeman.
7447 * input/regression/accidental-clef-change.ly: new file.
7449 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7451 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7453 * lily/clef-engraver.cc (inspect_clef_properties): reset
7454 localKeySignature for clef changes.
7456 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7458 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7459 add dummy definition that works in Linux and add information in
7460 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7462 * Documentation/user/changing-defaults.itely (Modifying context
7463 plug-ins): Add index for \with.
7465 * Documentation/user/music-glossary.tely (dal segno): Updated
7466 example to version >=2.6.
7468 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7470 * Documentation/user/instrument-notation.itely (Printing chord
7471 names): Reorder \chordmode and \repeat in one example.
7473 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7475 * VERSION: release 2.7.17
7477 * Documentation/topdocs/NEWS.tely (Top): add note about
7480 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7481 new function. Search region of 3 positions for best tie.
7482 (score_configuration): new function.
7483 (score_aptitude): new function.
7484 (generate_configuration): new function.
7485 (get_configuration): new function.
7486 (Tie_formatting_problem): new function
7488 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7490 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7492 * THANKS: add Eduardo Vieira & Ralph Little
7494 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7497 * lily/include/tie-formatting-problem.hh (class
7498 Tie_formatting_problem): add Tie_details to
7499 Tie_formatting_problem. Update calling conventions.
7501 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7504 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7506 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7508 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7509 scm/define-context-properties.scm: Maintenance bugfix: make
7510 ligature brackets work again by removing obsolete ligature
7511 primitive callback push/pop.
7513 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7514 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7517 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7519 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7520 used and do not call it a path.
7521 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7523 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7525 * lily/include/tie-formatting-problem.hh (class
7526 Tie_formatting_problem): new file.
7528 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7530 * Documentation/misc/ChangeLog-2.3: new file.
7532 * lily/audio-staff.cc (output): degarianize.
7534 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7536 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7537 Unset PYTHONOPTIMIZE. Fixes install if set.
7539 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7541 * python/convertrules.py (conv): add warning about drums.
7543 * make/stepmake.make: include toplevel-version.make after config.make.
7545 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7546 also allow python2.4
7548 * config.make.in (configure-srcdir): remove GXX GCC vars.
7550 * stepmake/aclocal.m4: don't do non-srcdir build with
7551 symlinks. Use inclusion, so the src directory name can be changed.
7553 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7555 * make/mutopia-vars.make:
7556 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7559 2005-11-13 Werner Lemberg <wl@gnu.org>
7561 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7562 but the affected path. This ensures that the (overlapping) outlines
7563 have the same direction, which is a necessary prerequisite for
7564 FontForge's algorithm to remove overlaps.
7567 * mf/feta-haak.mf: Formatting.
7568 (draw_bracket): Slightly modify outline to avoid an unnecessary
7570 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7571 them from the affected paths.
7573 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7575 * mf/README: remove xpm / accordion notes.
7577 * lily/tie-column-format.cc (set_chord_outline): add dots into
7578 skyline extents. This fixes tie formatting if the left head has dots.
7580 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7581 space inside the staff.
7582 (get_configuration): shift another position if necessary in case
7585 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7587 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7588 buildscript-dir iso. $(depth)/buildscripts.
7590 * tex/GNUmakefile (local-uninstall): remove
7591 music-drawing-routines.ps juggling.
7593 * stepmake/stepmake/install-targets.make (local-install-files):
7594 prepend src-dir to install targets.
7596 * lily/system-start-delimiter-engraver.cc
7597 (acknowledge_system_start_delimiter): use
7598 add_offset_callback(). This fixes translation of nested
7601 * lily/grob-closure.cc (add_offset_callback): only encaps in
7602 simple_closure if it's a procedure.
7604 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7607 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7608 remove-empty where pertinent.
7610 2005-11-12 Graham Percival <gpermus@gmail.com>
7612 * Documentation/user/instrument-notation.itely: added
7613 Cameron Horsburgh's multiple stanzas docs. Thanks!
7615 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7618 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7619 make picture in builddir, not srcdir.
7621 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7623 * VERSION: release 2.7.16
7625 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7628 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7630 * Documentation/user/examples.itely (Piano templates): Minor
7631 modification to the Piano centered lyrics example.
7633 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7635 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7638 * Documentation/user/point-and-click.itely: simplify p&c
7639 instruction: don't configure firefox. Put lilypond-invoke-editor
7640 in front of the browser.
7642 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7643 (run-browser): new function.
7645 * lily/parser.yy (Lily_lexer): recognize Book
7647 * lily/book.cc (clone): new function
7649 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7651 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7653 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7654 Maintenance bugfix: reduce number of font related warnings by
7655 updating naming conventions for glyph-name.
7657 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7659 * scm/define-grobs.scm (all-grob-descriptions): add
7660 rhythmic-grob-interface to TabNoteHead.
7662 * scm/layout-beam.scm (check-quant-callbacks): remove
7665 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7667 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7668 alignment of centered divisiones.
7670 * scm/scripts.scm (articulations): Maintenance bugfix:
7671 follow-into-staff -> quantize-position.
7673 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7674 plica head in porrectus deminutus.
7676 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7678 * make/lilypond.fedora.spec.in (Group): add %clean section.
7680 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7681 less then 1/5th of total length.
7682 (print): use gap too. Fixes tupletUp-single-bracket.ly
7684 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7685 events into EventChord. This fixes textspanners on mm rests. Fixes
7688 * lily/side-position-interface.cc (get_axis): read side-axis
7689 (set_axis): set side-axis.
7691 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7692 properties everywhere.
7694 * lily/spacing-spanner.cc (breakable_column_spacing): add
7695 average-spacing-wishes. Take maximum if not set.
7696 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7698 * scm/define-grobs.scm (all-grob-descriptions): add
7699 average-spacing-wishes.
7701 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7702 offset callbacks. This fixes alignment for Fingering objects.
7704 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7705 space for key - timesig combination.
7707 * input/regression/script-stem-tremolo.ly (Module): new file.
7709 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7712 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7713 Fixes: c-tremolo-script.ly.
7715 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7717 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7719 * scm/define-grobs.scm (all-grob-descriptions): remove
7720 self-X-offset. Fixes alignment of octavate-8.
7722 * scripts/lilypond-book.py (datadir): look in
7723 LILYPONDPREFIX/share/lilypond/current/
7725 * GNUmakefile.in: symlink current to <VERSION>.
7727 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7729 * lily/main.cc: eps listed as a backend.
7731 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7733 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7735 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7737 * lily/include/score.hh (class Score): remove texts_ member.
7739 * lily/beam.cc (set_stem_lengths): force direction callback.
7740 (print): read quantized-positions, so we can force
7741 Beam::set_stem_lengths to occur.
7742 (rest_collision_callback): use common X parent.
7744 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7746 * flower/file-path.cc (find): Bugfix: Return name of file found.
7748 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7749 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7750 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7752 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7754 * flower/offset.cc: idem.
7756 * mf/*.mf: update email address.
7758 * lily/font-config-scheme.cc: new file.
7760 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7762 * lily/*: cs.uu.nl -> xs4all.nl
7764 * VERSION (PATCH_LEVEL): release 2.7.15
7766 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7769 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7771 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7773 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7775 * lily/staff-performer.cc (process_music): add audio
7776 elements. This makes MIDI instrument changes work once again.
7778 * lily/main.cc (LY_DEFINE): add gmane address.
7780 * lily/beam.cc: remove calc_positions()
7782 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7783 original_ in private scope.
7784 (class Grob): drop pscore_ pointer, change to output_def pointer.
7785 (class Grob): cleanup class definition.
7787 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7789 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7791 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7792 absolute. Better diagnostics.
7794 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7795 This makes lilypond run from the build directory using argv0
7796 relocation (without any --prefix or LILYPONDPREFIX setting).
7798 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7800 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7802 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7803 with simple-closure.
7805 * lily/self-aligment-interface.cc (set_align_self): new function
7806 (set_center_parent): new function.
7808 * lily/side-position-interface.cc (set_axis): new function.
7810 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7813 * scm/define-grob-properties.scm (all-user-grob-properties):
7814 remove [XY]-offset-callbacks add [YX]-offset
7816 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7818 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7819 entry for time signatures after breathing signs. Bug report by
7822 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7824 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7825 not absolute, make it absolute using PATH.
7827 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7829 * python/midi.c (initmidi): Fix type for mingw.
7831 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7833 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7835 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7838 * stepmake/aclocal.m4: Support python cross compiling.
7840 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7843 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7845 * scm/output-lib.scm (chain-grob-member-functions): replace
7848 * lily/chained-callback.cc (Module): remove file.
7850 * lily/rest-collision.cc (force_shift_callback_rest): change to
7853 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7855 * lily/grob.cc (y_parent_positioning): remove axis argument from
7856 parent_positioning callbacks.
7857 (Grob): junk init code
7858 (get_offset): use generic property callbacks for
7859 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7860 (axis_parent_positioning): new function
7861 (axis_offset_symbol): new function
7862 (chain_offset_callback): new function
7863 (add_offset_callback): new function
7865 * lily/beam.cc (rest_collision_callback): change signature; this
7866 is now a chained callback.
7868 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7869 callback administration.
7871 * lily/simple-closure.cc: new file. Smob type that allows "grob
7874 (ly:make-simple-closure FUNC A B)
7876 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7879 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7882 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7884 * lily/rest.cc (polyphonic_offset_callback): remove.
7886 * lily/script-engraver.cc (try_music): remove bool* argument.
7888 * scm/script.scm (default-script-alist): set quantize-position
7891 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7893 * lily/side-position-interface.cc (aligned_side): move staff
7894 position quantization from
7895 Side_position_interface::quantised_position().
7896 (quantised_position): remove
7898 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7900 * input/regression/beam-quant-standard.ly: reindent, set
7901 debug-beam-quanting to #t.
7903 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7904 10000 if this is a "hard" concave beam.
7906 * lily/beam.cc (calc_least_squares_positions): change from
7907 calc_least_squares_dy
7908 (set_stem_lengths): this is now a chained callback.
7910 * lily/context-property.cc (execute_general_pushpop_property):
7911 bugfix override with procedure should have effect.
7913 * scm/define-grob-properties.scm (all-internal-grob-properties):
7914 remove position-callbacks.
7916 * scm/define-grobs.scm (all-grob-descriptions): use
7917 ly:make-callback-chain for positions property.
7919 * scm/layout-beam.scm (check-quant-callbacks): return list of
7922 * scm/lily.scm (type-p-name-alist): add callback-chain
7924 * lily/lily-guile.cc (type_check_assignment): type check failure
7925 is warning not message.
7927 * lily/grob-property.cc (try_callback): walk callback chain if
7930 * lily/chained-callback.cc: new file. new smob type.
7932 * lily/lily-guile.cc (procedure_arity): new function.
7934 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7936 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7938 2005-10-25 John Mandereau <john.mandereau@free.fr>
7940 * Documentation/user/instrument-notation.itely (Figured bass):
7941 describe new features
7943 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7945 * lily/beam.cc (calc_least_squares_dy): use property callback.
7947 * lily/beam-concave.cc (calc_concaveness): use property callback.
7949 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7951 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7955 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7957 * scm/layout-page-layout.scm (page-headfoot): annotate
7960 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7962 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7963 doesn't take y-space.
7965 * scm/paper.scm (paper-alist): fix A7 dimensions.
7967 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7969 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7970 src-wildcard, remove $(wildcard).
7972 * po/GNUmakefile (PO_FILES):
7973 * ps/GNUmakefile (PS_FILES):
7974 * tex/GNUmakefile (TEX_FILES):
7975 * cygwin/GNUmakefile (POSTINSTALLS):
7976 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7977 some wildcard calls.
7979 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7981 * THANKS: add Thomas Bushnell.
7983 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7985 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7986 (lilypond-main): Redirect to gui-main if 'gui is set.
7988 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7989 for alternative installations kludging s/share/lib/g
7992 * SConstruct (libdir_package_version): Define.
7994 * python/SConscript:
7995 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7998 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8000 * lily/main.cc: clarify --safe.
8002 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8004 * VERSION: release 2.7.14
8006 * Documentation/user/*.itely: remove minimumVerticalExtent.
8008 * scm/define-grobs.scm (all-grob-descriptions): remove
8009 RemoveEmptyVerticalGroup
8011 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8013 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8016 * python/convertrules.py (conv): add rules.
8018 * lily/grob.cc: remove is_empty()
8020 * lily/grob-property.cc: remove add_to_list_property().
8022 * scripts/convert-ly.py (datadir): add prefix switching hack to
8025 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8026 space-function tweak.
8028 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8030 * scm/define-grob-properties.scm (all-user-grob-properties):
8031 remove callback property.
8033 * lily/include/grob.hh (class Grob): remove property_callbacks_
8034 member. Properties of procedure type are assumed to be callbacks.
8036 * lily/ligature-engraver.cc (override_stencil_callback):
8037 rewrite. Use noteHeadLigaturePrimitive as source.
8039 * scm/define-grob-properties.scm (all-internal-grob-properties):
8040 remove ligature-primitive-callback
8042 * lily/include/dimension-cache.hh (class Dimension_cache): make
8043 class, with Grob as friend.
8045 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8046 has_extent_callback()
8048 * scm/translation-functions.scm (format-new-bass-figure): read
8049 figuredBassPlusDirection
8051 * scm/define-context-properties.scm
8052 (all-user-translation-properties): add figuredBassPlusDirection.
8054 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8056 * lily/align-interface.cc (set_ordered): new function.
8058 * lily/grob.cc (flush_extent_cache): rewrite.
8060 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8061 Interval pointer directly.
8063 * lily/main.cc (setup_paths): insert extra / .
8064 (setup_paths): junk cff entry.
8066 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8069 * lily/axis-group-engraver.cc (finalize): remove
8070 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8072 * lily/grob.cc (Grob): don't set extent from ctor.
8073 (extent): use property callbacks.
8075 * lily/axis-group-interface.cc: remove set_axes() function.
8077 * lily/grob-property.cc (del_property): new function.
8079 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8081 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8083 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8085 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8087 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8089 * mf/SConscript: Updates.
8091 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8093 * stepmake/stepmake/*:
8097 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8098 from any directory in build-dir. Cleanups.
8100 * make/srcdir.make.in: Remove.
8102 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8104 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8107 * lily/SConscript: Remove ttftools.
8109 * SConstruct: Resurrect.
8111 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8113 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8116 * lily/paper-book.cc (add_score_title): put Paper_score title into
8119 * scm/translation-functions.scm (format-new-bass-figure): also
8120 allow plus in combination with _
8122 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8124 * VERSION: 2.7.13 released.
8126 * lily/note-collision.cc (check_meshing_chords): don't wipe
8127 stencil, merely set transparent.
8129 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8130 (Top): document #'callbacks.
8131 (Top): document nested \override.
8133 * input/regression/figured-bass.ly: update for slash and pluses.
8135 * input/regression/figured-bass-continuation-forbid.ly (Module):
8138 * scm/translation-functions.scm (format-new-bass-figure): use
8139 slashed-digit if diminished is set.
8140 (format-new-bass-figure): add + if 'augmented is set.
8142 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8144 * input/test/piano-staff-distance.ly: remove file.
8146 * Documentation/user/advanced-notation.itely (Formatting cue
8147 notes): use length-fraction for making stems/beams smaller.
8149 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8152 * lily/new-figured-bass-engraver.cc: new property
8153 centerFiguredBassContinuations
8155 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8158 * lily/context-property.cc (execute_general_pushpop_property):
8161 * input/regression/override-nest.ly: new file.
8163 * python/convertrules.py (FatalConversionError.subber): conversion
8164 rule for #'callbacks
8166 * input/regression/override-nest.ly: new function.
8168 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8171 * lily/context-property.cc (lookup_nested_property): new function.
8172 (evict_from_alist): new function.
8173 (general_pushpop_property): new function.
8174 (execute_general_pushpop_property): rewrite. Support nested
8177 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8179 * lily/beam.cc: use length-fraction too.
8181 * scm/define-grob-properties.scm (all-user-grob-properties):
8182 remove property flag-width-function
8183 (all-user-grob-properties): remove space-function.
8185 * scm/layout-beam.scm: remove flag-width-function.
8187 * lily/beam.cc: remove flag-width-function
8189 * scm/layout-beam.scm: remove beam dir functions.
8191 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8193 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8194 for easier grace tweaks.
8196 * lily/beam.cc: remove dir-function.
8198 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8200 * lily/grob.cc: remove spacing-procedure.
8202 * lily/note-head.cc (calc_stem_attachment): new function.
8203 (internal_print): use callback to get glyph-name.
8205 * lily/grob-property.cc (get_interfaces): new function.
8207 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8209 * lily/stem.cc (calc_stem_end_position): new function.
8210 (calc_length): new function.
8211 document details for stem.
8212 remove Stem::get_direction()
8214 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8216 * lily/grob-property.cc (set_callback): new function.
8218 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8220 * lily/item-scheme.cc: new file.
8222 * lily/bar-line.cc (before_line_breaking): remove function.
8223 remove bar-size-procedure, break-glyph-function
8225 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8227 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8229 * lily/system-start-delimiter.cc (print): suicide from
8230 here. Remove after_line_breaking_callback.
8232 * lily/script-interface.cc (calc_direction): use callback for direction.
8234 * lily/side-position-interface.cc (aligned_side): don't use
8235 Side_position_interface::get_direction directly. Use callback.
8237 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8239 (get_print_stencil): rename from get_stencil: create stencil with
8240 transparency, color and cause.
8242 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8244 * python/convertrules.py (conv): insert temporary warning rule.
8246 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8248 * lily/grob-property.cc (try_callback): remove marker if applicable.
8250 * lily/grob.cc: elucidate doc about after/before-line-breaking
8252 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8254 * lily/stem.cc (height): idem.
8256 * lily/stem-tremolo.cc: idem.
8258 * lily/slur.cc (height): don't use get_uncached_stencil()
8260 * lily/rest.cc (y_offset_callback): use offset callback
8261 iso. after-line-breaking callback.
8263 * lily/grob.cc: change after/before-line-breaking-callback to
8264 after/before-line-breaking dummy properties.
8266 * lily/include/grob.hh: remove Grob_status.
8268 * scm/define-context-properties.scm
8269 (all-user-translation-properties): remove verticalAlignmentChildCallback
8271 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8272 (calc_direction): use callback
8273 (calc_positions): use callback.
8275 * lily/tie.cc (calc_direction): use callback. Only call parent
8276 positioning for more than one tie.
8278 * lily/tie-column.cc (calc_positioning_done): use callback
8280 * lily/slur-scoring.cc (calc_control_points): use callback
8282 * lily/slur.cc (calc_direction): use callback.
8284 * lily/note-collision.cc (force_shift_callback): remove.
8286 * lily/dot-column.cc (force_shift_callback): remove. Use
8287 other_axis_parent_positioning.
8289 * lily/grob.cc (other_axis_parent_positioning): new function.
8290 (same_axis_parent_positioning): new function
8292 * lily/align-interface.cc (alignment_callback): remove function.
8294 * lily/note-collision.cc (calc_positioning_done): use callback.
8296 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8297 (calc_direction): idem.
8298 remove print function.
8300 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8302 * lily/dot-column.cc (calc_positioning_done): use callback.
8304 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8306 * lily/beam.cc (calc_direction): use pseudo-property for beam
8308 (calc_positions): use callback
8310 * lily/align-interface.cc (calc_positioning_done): use
8311 callback. Fold fixed distance and normal alignment in one function.
8313 * lily/stem.cc (calc_stem_end_position): use callback.
8314 (calc_positioning_done): idem.
8315 (calc_direction): idem.
8316 (calc_stem_end_position): idem
8317 (calc_stem_info): idem.
8319 * lily/grob-property.cc (get_property_data): new function:
8320 (try_callback): new function.
8322 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8325 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8327 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8329 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8333 * lily/include/*.hh (Module): compile fixes.
8335 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8337 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8338 as an argument for char-syntax: use (char-syntax (or nil 0))
8339 instead of (char-syntax nil), thanks to Milan Zamazal.
8341 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8343 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8346 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8349 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8351 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8352 add class_name() method.
8354 * lily/music-scheme.cc: remove ly:music-name.
8356 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8358 * cygwin/postinstall-lilypond.sh: Remove cruft.
8360 * cygwin/postremove-lilypond.sh: Remove.
8362 * cygwin/GNUmakefile (default): Remove postremove rules.
8364 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8366 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8369 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8372 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8373 consider break index for broken spanner.
8375 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8376 characters from string before splitting.
8378 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8380 * scm/framework-ps.scm (output-preview-framework): use
8381 is-book-title to determine whether to chop off the booktitle.
8383 * lily/paper-book.cc (systems): init from book-title-properties
8384 (add_score_title): init score-title-properties.
8386 * ly/paper-defaults.ly: add {score,book}-title-properties.
8388 * scm/document-backend.scm (lookup-interface): error message if
8389 using unknown interface.
8391 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8394 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8396 (make_bracket): new function.
8398 * scm/lily.scm (define-scheme-options): add paper-size option.
8400 * ly/declarations-init.ly (laissezVibrer): get paper size from
8403 * scm/translation-functions.scm: use \fontsize for changing the
8406 * scm/define-grobs.scm (all-grob-descriptions): set
8407 between-length-limit to 1.0
8409 * lily/tie-helper.cc: add between_length_limit_ detail property.
8411 * mf/feta-bolletjes.mf: typos.
8413 * lily/note-head.cc (internal_print): don't shadow idx
8414 parameter. This fixes wrong attachment for do shape heads.
8416 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8418 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8420 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8422 * scm/layout-slur.scm: rename from slur.scm
8424 * scm/layout-page-layout.scm: rename from page-layout.scm
8426 * scm/layout-beam.scm: rename from beam.scm
8428 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8429 bass-figure-interface
8431 * lily/new-figured-bass-engraver.cc (process_music): add
8432 implicitBassFigures property.
8434 * scm/define-markup-commands.scm (pad-x): new markup.
8436 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8437 minimumVerticalExtent on FiguredBass context.
8439 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8440 case the continuation crosses a line break.
8442 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8444 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8445 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8446 absolute file name bug.
8448 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8450 * VERSION (PACKAGE_NAME): release 2.7.12
8452 * input/regression/figured-bass-continuation-center.ly: new file.
8454 * input/regression/beam-outside-beamlets.ly: new file.
8456 * lily/beam.cc (set_beaming): don't clip edges.
8457 (connect_beams): don't clip edges.
8459 * lily/beaming-info.cc (clip_edges): new function.
8461 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8463 * Documentation/user/instrument-notation.itely (Figured bass):
8464 demonstrate extenders, update seealso links.
8466 * scm/titling.scm (marked-up-headfoot): change tagline
8467 handling. tagline = ##f will blank the tagline as well.
8469 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8471 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8473 * lily/new-figured-bass-engraver.cc (struct
8474 New_figured_bass_engraver): add new_music_found_ member.
8476 * lily/lilypond-version.cc (Lilypond_version): deal with
8477 incorrectly formatted version strings.
8479 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8480 New_figured_bass_engraver by default.
8482 * lily/ttf.cc (print_trailer): only define glyph names when
8483 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8485 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8487 * lily/horizontal-bracket.cc (make_bracket): new function.
8489 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8490 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8491 BassFigureLine, BassFigureAlignment
8493 * lily/new-figured-bass-engraver.cc (process_music): new file.
8495 * lily/figured-bass-continuation.cc: new file.
8497 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8500 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8502 * scripts/lilypond-book.py: Bug fix, put the quote around the
8503 actual score for LaTeX documents.
8505 * scm/define-grobs.scm (all-grob-descriptions): Change
8506 collapse-height of the SystemStartBracket grob to 5.0,
8507 so the bracket disappears for single stave score lines (similarly
8508 to SystemStartBraces).
8510 * Documentation/user/advanced-notation.itely (Polymetric
8511 notation): Clarify the use of compressMusic.
8513 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8514 that the grace spacer note in other staves need the same duration
8515 and document the stroke-style property.
8517 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8519 * Documentation/user/global.itely (Vertical spacing): document
8520 alignment-extra-space and fixed-alignment-extra-space.
8522 * Documentation/topdocs/NEWS.tely (Top): add entry.
8524 * input/regression/alignment-vertical-spacing.ly: new file.
8526 * python/convertrules.py (conv): add rule.
8528 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8530 * lily/align-interface.cc (stretch_after_break): new
8531 function. Read fixed-alignment-extra-space property.
8532 (align_elements_to_extents): read alignment-extra-space property.
8534 * lily/lily-guile.cc (robust_scm2dir): new function.
8536 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8537 (annotate-space-left): new function. Annotate space left on page.
8538 (annotate-y-interval): new function.
8539 (paper-system-annotate-last): new function. Annotate bottom-space.
8541 * mf/feta-beugel.mf (y):
8543 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8545 * VERSION (PACKAGE_NAME): release 2.7.11
8547 * scm/lily-library.scm (interval-translate): new function
8548 (interval-center): new function.
8550 * scm/page-layout.scm (paper-system-annotate): new function. Add
8551 arrows for dimensions.
8553 * scm/stencil.scm (dimension-arrows): new function.
8555 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8557 * input/regression/page-spacing.ly: add annotatespacing
8559 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8560 (LY_DEFINE): new function ly:paper-system-set-property!
8562 * Documentation/user/global.itely (Paper size): explain how to add
8565 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8566 correspond to GS's definition.
8568 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8570 (print): only connect to next bracket if the next one is alive.
8571 (print): set padding to 0.0 if the bound is a breakable
8572 column. This makes tupletFullLength brackets reach up to the staff
8573 line if it doesn't connect to the next line.
8575 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8577 * lily/bar-number-engraver.cc: correct docs.
8579 * scm/output-lib.scm (first-bar-number-invisible): rename from
8580 default-bar-number-visibility
8582 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8584 * scm/define-music-properties.scm (all-music-properties): remove
8587 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8589 * po/fi.po: refresh.
8591 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8593 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8595 (disappear): bugfix.
8597 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8599 * lily/include/paper-system.hh (class Paper_system): remove
8600 staff_extents_ member.
8602 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8604 * lily/include/paper-system.hh (class Paper_system): remove
8605 number_ variable. Remove is_title_. Remove break_before_penalty_
8607 * lily/paper-book.cc (systems): use 'number property iso. number_
8610 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8611 remove ly:paper-system-number.
8613 * scm/lily-library.scm (paper-system-title?): new function.
8615 * lily/book.cc (process): bugfix: flip ?: cases.
8617 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8620 * ly/music-functions-init.ly: add outputProperty music function.
8622 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8624 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8626 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8628 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8630 * lily/paper-system.cc (internal_get_property): new function.
8632 * Documentation/user/global.itely (Vertical spacing): refer to
8635 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8638 * input/regression/page-spacing.ly: new file.
8640 * input/regression/page-top-space.ly: new file.
8642 * lily/spacing-spanner.cc: cmath -> math.h
8644 * lily/paper-system.cc (read_left_bound): new function. Read
8645 line-break-system-details from left bound to determine extents.
8647 * Documentation/user/programming-interface.itely (Using LilyPond
8648 syntax inside Scheme): change applyxxx -> applyXxx.
8650 * ly/music-functions-init.ly: add outputProperty music function.
8652 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8654 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8656 * python/convertrules.py (conv): rule
8658 * ly/music-functions-init.ly: applyxxx -> applyXxx
8660 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8663 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8665 * flower/include/real.hh: include <math.h> iso. <cmath>
8667 * flower/include/offset.hh: include real.hh
8669 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8671 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8672 fix example, now that 'interfaces is no longer directly available.
8674 * lily/book.cc (process): don't crash if paper == NULL.
8678 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8680 * scm/define-music-types.scm (music-descriptions): set length and
8681 start-callback for QuoteMusic
8683 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8685 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8686 arguments. Fixes compilation error with gcc 3.3.
8688 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8690 * VERSION: release 2.7.10
8692 * stepmake/stepmake/python-module-rules.make
8693 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8695 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8698 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8700 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8701 -Werror. Otherwise GCC barfs over various optimizations.
8703 * scm/define-grob-properties.scm (all-internal-grob-properties):
8704 add note-head property
8706 * Documentation/user/instrument-notation.itely (Laissez vibrer
8709 * input/regression/laissez-vibrer-ties.ly: new file.
8711 * lily/laissez-vibrer-engraver.cc: new file.
8713 * lily/include/tie-column-format.hh: new file.
8715 * lily/tie-column-format.cc: new file.
8717 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8719 * lily/laissez-vibrer-tie.cc: new file.
8721 * lily/include/laissez-vibrer-tie.hh: new file.
8723 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8725 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8727 * scm/define-grobs.scm (all-grob-descriptions): add
8728 LaissezVibrerTie, LaissezVibrerTieColumn
8730 * lily/tie-column.cc (set_tie_config_directions): new function
8731 (final_shape_adjustment): new function.
8732 (shift_small_ties): new function.
8734 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8736 * lily/include/tie.hh (struct Tie_details): add x_gap_
8737 (struct Tie_configuration): add head_position_
8739 * lily/tie-column.cc (set_chord_outline): new function.
8741 * mf/cmr.enc.in: remove file.
8743 2005-09-11 Graham Percival <gpermus@gmail.com>
8745 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8747 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8749 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8750 reduce aliasing effects.
8752 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8755 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8757 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8759 * flower/include/real.hh: std::fabs too.
8761 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8763 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8765 * lily, flower: Include C++ iso C headers. Import namespace std
8768 * lily/side-position-interface.cc:
8770 * lily/note-head.cc:
8771 * lily/include/includable-lexer.hh:
8772 * flower/include/string-data.icc: Remove using std::*.
8774 * lily, flower: Include C++ iso C headers. Import namespace std
8777 * lily/side-position-interface.cc:
8779 * lily/note-head.cc:
8780 * lily/include/includable-lexer.hh:
8781 * flower/include/string-data.icc: Remove using std::*.
8783 * Documentation/user/instrument-notation.itely (Entering lyrics):
8784 Multiple latin-1->utf-8 conversion fix.
8786 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8788 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8790 * lily/tie.cc (get_configuration): also avoid dots for non-space
8793 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8795 * Documentation/user/instrument-notation.itely: Bugfix.
8797 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8799 * tex/GNUmakefile: don't install texinfo.tex
8801 * tex/ : cleanup: remove unused files.
8803 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8805 * flower/include/real.hh: using std::{isnan,isinf}
8807 * VERSION (PATCH_LEVEL): release 2.7.9
8809 2005-09-05 Graham Percival <gpermus@gmail.com>
8811 * Documentation/user/ instrument-notation.itely,
8812 advanced-notation.itely: minor tweaks.
8814 * input/test/script-chart.ly: add item padding.
8816 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8818 * flower/offset.cc: use math.h iso. <cmath>
8820 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8823 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8824 (widen-left-stencil-edges): new function. Fix alignment problems
8825 with LaTeX includegraphics.
8827 * lily/text-interface.cc (interpret_markup): use abort().
8829 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8831 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8833 * lily/tie.cc (get_configuration): update bezier shape as we
8835 (get_configuration): don't move large ties if we're outside of the
8838 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8840 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8842 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8844 * .cvsignore: Add auto-generated configure files and then some.
8846 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8848 * scm/define-grobs.scm (DynamicLineSpanner): Add
8849 X-extent-callback. Fixes hairpin-slur collision.
8851 2005-08-31 Graham Percival <gpermus@gmail.com>
8853 * Documentation/user/advanced-notation.itely,
8854 basic-notation.itely: minor changes.
8856 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8858 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8859 \linebreak between each .eps file if \betweenLilyPondSystem is
8862 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8863 music): Document the \linebreak
8865 * Documentation/user/lilypond-book.itely,
8866 input/tutorial/lbook-latex-test.tex,
8867 Documentation/user/examples.itely: Remove \usepackage{graphics}
8869 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8871 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8873 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8876 * scripts/lilypond-book.py (PREAMBLE_LY): define
8877 inside-lilypond-book
8878 (modify_preamble): new function. Insert \RequirePackage{graphics}
8879 when no {graphics found in preamble.
8881 2005-08030 Graham Percival <gpermus@gmail.com>
8883 * Documentation/user/basic-notation.itely, global.itely,
8884 tutorial.itely: misc small changes.
8886 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8888 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8891 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8893 * lily/tie-column.cc (new_directions): put Tie down on center
8896 * lily/script-interface.cc (before_line_breaking): use
8897 Grob::programming_error
8899 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8901 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8904 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8906 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8908 2005-08-29 Werner Lemberg <wl@gnu.org>
8910 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8911 the `*.scale.pfa' files to avoid warnings.
8913 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8915 * lily/tempo-performer.cc (process_music): idem.
8917 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8919 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8921 * Documentation/user/advanced-notation.itely (Text markup): not a
8924 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8926 * lily/staff-performer.cc (initialize): add tempo/name to
8929 2005-08-26 Graham Percival <gpermus@gmail.com>
8931 * Documentation/user/advanced.itely: add text-only example.
8933 * Documentation/user/invoking.itely: add index entries for
8936 * Documentation/user/ tutorial.itely, basic-notation.itely:
8937 small fixes suggested by Steve D. Thanks!
8939 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8941 * input/regression/markup-bidi-pango.ly: new file.
8943 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8944 standard. Remove #ifdef. Remove memleak.
8945 (text_stencil): use text_dir to decide how to composite items.
8946 (text_stencil): determine uniform text direction for the entire
8949 * scripts/lilypond-book.py (output_name): remove
8950 latex_filter_cmd. Non-portable to non-Unix systems.
8951 (get_latex_textwidth): use File.write and os.unlink() instead.
8953 * THANKS: add Vicente & Trevor.
8955 * lily/grob.cc (discretionary_processing): look up origin for
8956 programming_error too.
8958 * input/regression/tie-broken.ly: new file.
8960 * lily/tie-column.cc (set_chord_outlines): set outline for line
8963 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8965 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8966 unscaled transform, just translate stencils.
8968 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8971 * scm/define-markup-commands.scm (wordwrap-string): use
8973 (wordwrap-stencils): idem.
8976 (wordwrap-stencils): translate last line to right for
8977 text-direction = LEFT.
8979 * scm/define-grob-properties.scm (all-user-grob-properties): add
8982 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8984 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8985 when copying a Lily_parser object.
8987 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8989 * scm/define-markup-commands.scm (null): add null markup.
8991 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8993 * lily/item.cc: Add documentation of center-invisible
8995 2005-08-24 Graham Percival <gpermus@gmail.com>
8997 * Documentation/user/advanced-notation.itely: add info about
9000 * Documentation/user/programming-interface.itely: fix example
9001 involving raised text.
9003 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9005 * lily/beam.cc (print): fix X start/end points of isolated
9008 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9010 * lily/multi-measure-rest.cc (set_text_rods): new function.
9012 * lily/vertical-align-engraver.cc (process_music): call
9013 Align_interface::set_axis(). This forces #'elements to be ordered,
9014 preventing random vertical reordering of staves.
9016 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9017 add avoid-slur property.
9019 * Documentation/user/basic-notation.itely (Measure repeats): add
9020 countPercentRepeats example.
9022 * Documentation/user/advanced-notation.itely (Other text markup
9023 issues): remove remark about normal-font. We have \normal-text
9025 * input/regression/tie-chord.ly: add note about remaining bugs.
9027 * lily/tie.cc (print): try Tie_column::set_directions () if
9028 control-points not yet defined.
9030 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9032 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9033 extent. This fixes braces falling out of the EPS bbox.
9035 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9038 2005-08-23 Graham Percival <gpermus@gmail.com>
9040 * {various} : change #up->#UP and #down->#DOWN.
9042 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9044 * Documentation/user/advanced-notation.itely: clarify
9045 what objects handles text on a multimeasure rest.
9047 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9049 * VERSION (PATCH_LEVEL): release 2.7.7
9051 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9053 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9055 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9057 * input/regression/*.ly: formatting clean-up. Default layout
9058 before music expression.
9060 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9061 romanze28-2 example.
9063 * scm/ps-to-png.scm: remove dir-re function.
9064 (make-ps-images): generate page names, instead of globbing them.
9065 This brings down LilyPond memory usage for make web by a factor
9068 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9069 don't use glob. With 3000 files, globbing
9070 Documentation/user/out-www/ can take too much time.
9072 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9074 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9076 * input/regression/tie-manual.ly: new file
9078 * input/regression/tie-chord.ly: update.
9080 * flower/include/interval.hh (struct Interval_t):
9082 * lily/tie.cc (distance): new function
9083 (height): new function.
9084 (init): new function
9085 (Tie_details): new struct.
9087 * lily/skyline.cc (skyline_height): new function.
9089 * lily/tie-column.cc (set_chord_outlines): new function.
9090 (new_directions): read tie-configuration
9092 * lily/skyline.cc: fix ASCII art.
9094 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9096 * python/convertrules.py (string_or_scheme): Fix spelling error
9098 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9100 * lily/tie-column.cc (set_directions): set directions only once.
9101 (add_configuration): new function.
9103 * lily/tie.cc (set_control_points): new function
9105 * lily/tie-column.cc (new_directions): new function.
9107 * ly/music-functions-init.ly: set 'pitch property
9108 iso. trill-pitch. This makes \relative work with \pitchedTrill
9110 * lily/tie.cc (get_configuration): new function. Don't generate
9111 control points, rather, generate configuration.
9112 remove head-pair property.
9114 * lily/include/tie.hh (struct Tie_configuration): new struct.
9116 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9118 * Documentation/topdocs/NEWS.tely: clarify.
9120 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9122 * lily/tie.cc: remove minimum-length
9124 * scm/define-grob-properties.scm (all-user-grob-properties):
9125 remove staffline-clearance, y-offset
9127 * input/regression/tie-dots.ly (Module): remove.
9129 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9130 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9132 * input/regression/tie-single.ly: new file.
9134 2005-08-21 Graham Percival <gpermus@gmail.com>
9136 * ly/bagpipe.ly: fix compile problem.
9138 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9140 * lily/midi-item.cc (name): new method.
9142 * lily/staff-performer.cc (acknowledge_audio_element): use
9143 signature of baseclass.
9145 * lily/engraver-group.cc (do_announces): move recursion call out
9148 * lily/drum-note-performer.cc (class Drum_note_performer): use
9149 process_music everywhere.
9151 * ly/performer-init.ly: add default children everywhere.
9153 * lily/paper-book.cc (output): call paper-book-write-midis
9154 directly: always write MIDI, even if no \layout {} block.
9156 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9158 * VERSION (PACKAGE_NAME): release 2.7.6
9160 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9161 about not being able to handle repeat.
9163 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9165 * Documentation/user/examples.itely (Piano templates):
9166 * lily/include/performer-group.hh: Remove last traces of
9167 Performer_group_performer. Fixes make web.
9169 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9171 * Documentation/user/examples.itely (Piano templates): change
9172 Engraver_group_engraver -> Engraver_group
9174 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9175 scm_stand_in_procs is not weak_any.
9177 * lily/volta-bracket.cc (print): don't use strcmp().
9179 * lily/volta-engraver.cc (process_music): use
9180 Text_interface::is_markup() for setting the 'text property of the
9183 * input/mutopia/claop.py (accents): update syntax to 2.6
9185 * scm/define-context-properties.scm
9186 (all-user-translation-properties): add countPercentRepeats.
9188 * Documentation/user/basic-notation.itely (Measure repeats): add
9189 isolated percent example.
9191 2005-08-18 Graham Percival <gpermus@gmail.com>
9193 * input/ {various}: change direction #1, #-1 to
9194 #up/#down or \fooUp, \fooDown.
9196 * Documentation/user/music-glossary.tely: #-1 to #down.
9198 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9199 to #up, #-1 to #down.
9201 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9203 * lily/include/engraver-group.hh: rename.
9205 * lily/include/performer-group.hh: rename.
9207 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9209 * input/test/script-abbreviations.ly: Removed some old LaTeX
9212 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9214 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9215 Remove functions. Remove if 1: constructs, reindent.
9217 * scripts/convert-ly.py (add_version): Add functions from
9220 * scm/script.scm (default-script-alist):
9221 s/priority/script-priority. Fixes script stacking. Backportme.
9222 (Fermata): Very low priority.
9224 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9226 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9228 * input/regression/slur-script.ly: remove padding tweaks. Add
9231 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9232 time sigs and related stuff.
9234 * scm/define-grob-properties.scm (all-user-grob-properties): add