1 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * buildscripts/git-update-changelog.py (changelog_body): don't
6 * lily/grob.cc: add avoid-slur
8 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
12 move server/emacsclient to elisp/
14 * buildscripts/git-update-changelog.py (Commit.note_del_file):
17 * elisp/server.el.patch:
20 * elisp/emacsclient.patch:
23 * buildscripts/git-update-changelog.py:
30 * buildscripts/git-update-changelog.py:
31 script to update ChangeLog with Git messages.
33 * lily/beam-engraver.cc:
34 * input/regression/rest-pitched-beam.ly:
35 don't set callback if staff-position set. Fixes #126.
37 * lily/bar-number-engraver.cc:
39 * lily/fingering-engraver.cc:
40 * lily/grob-property.cc:
42 * lily/include/grob.hh:
43 * lily/include/lily-guile-macros.hh:
44 * lily/mark-engraver.cc:
45 * lily/melody-engraver.cc:
46 * lily/script-column.cc:
47 * lily/tie-formatting-problem.cc:
49 internal_get_property_data() using ly_symbol2scm()
51 * stepmake/stepmake/generic-targets.make:
52 create .gitignore in outdir.
57 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
59 * input/test/vertical-extent.ly:
60 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
62 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
64 * stepmake/bin/add-html-footer.py (compose): remove setgcos
66 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
68 * GNUmakefile.in (install-help2man): install-help2man target.
70 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
72 * SConstruct (configure): Do not check for /bin/sh.
74 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
76 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
79 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
81 * input/regression/fret-boards.ly: new file.
83 * po/de.po: new po courtesy translation team.
85 * scripts/lilypond-book.py (get_option_parser): add newline to doc
88 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
90 * ly/gregorian-init.ly (neumeDemoLayout): update
91 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
93 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
94 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
96 2006-10-27 Erlend Aasland <erlenda@gmail.com>
98 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
99 Yet another build fix.
101 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
103 * SConstruct (lilypondprefix): use sorted() for list_sort()
106 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
108 * flower/SConscript: Unit test rules.
110 * flower/test-std.cc: Compile fix.
112 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
114 * python/midi.c (pymidi_parse_track): warning fixes.
116 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
117 include dot-column.hh
119 2006-10-26 Graham Percival <gpermus@gmail.com>
121 * Documentation/user/{basic-, global}: minor changes from mailist.
123 2006-10-26 Erlend Aasland <erlenda@gmail.com>
125 * scm/define-grobs.scm: trivial beautification
127 * lily/tie-performer.cc: no need to #include "pqueue.hh"
129 * lily/source-file.cc: put multibyte var inside #if clause
131 * scm/define-grob-interfaces.scm:
132 * scm/define-grob-properties.scm:
133 Build fix (string-fret-finger-combinations)
135 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
138 * Documentation/user/lilypond-book.itely: Build fix.
140 2006-10-26 Joe Neeman <joeneeman@gmail.com>
142 * lily/system.cc (get_paper_system):
143 * lily/paper-book.cc (systems):
144 move most of the backwards compatibility stuff into
147 * Documentation/topdocs/NEWS.tely: add 2 entries for the
150 * Documentation/user/page.itely: remove time-scaled-music
151 bug for the Page_turn_engraver
153 * lily/paper-book.cc (set_system_penalty): backwards
154 compatibility (breakbefore) for the old page breaker
156 2006-10-25 Graham Percival <gpermus@gmail.com>
158 * Diocumentation/user/instrument-notation.itely: added more
159 info about stanzas; thanks Geoff!
161 * Documentation/user/ {basic, advanced}: small fixes from
164 * THANKS: add some bug reporters.
166 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
168 * scm/define-context-properties.scm (all-user-translation-properties):
169 noteToFretFunction: Add.
171 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
172 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
174 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
176 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
179 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
180 Remove bashism in delete.
182 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
184 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
186 * scm/translation-functions.scm (determine-frets-mf): flatten let*
188 * scm/define-context-properties.scm
189 (all-user-translation-properties): add maximumFretStretch property.
191 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
193 * lily/source-file.cc (get_counts): use multibyte variable.
195 * scm/translation-functions.scm (determine-frets-mf): new
196 function: compute fret numbers.
198 * scm/output-lib.scm (string-frets->description) new function.
199 (fret-board::calc-stencil): new function
201 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
203 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
205 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
207 * lily/tab-note-heads-engraver.cc: cleanups.
209 * lily/fretboard-engraver.cc: new file
211 * ly/engraver-init.ly: add FretBoards context
213 2006-10-24 Joe Neeman <joeneeman@gmail.com>
215 * lily/grob.cc (pure_relative_y_coordinate)
216 (pure_height): use the new call_pure_function stuff
218 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
221 * lily/side-position-interface.cc (pure_y_aligned_side): add an
224 * lily/simple-closure.cc (ly_eval_simple_closure): make
225 simple-closure evaluatable from scheme
226 (evaluate_with_simple_closure): make simple-closures pure-
229 * lily/slur.cc (pure_outside_slur_callback): new function
231 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
232 fits in with previous changes that made the page forces much
235 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
236 and pure-Y-extent into this new function.
237 (pure-conversions-alist): add outside-slur-callback
239 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
241 * Documentation/user/advanced-notation.itely (Instrument names):
242 Remove obsolete bug workaround for instrument names on piano
245 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
247 * Documentation/user/lilypond-book.itely (Integrating DocBook and
248 music): patch by Bertalan Fodor for docbook.
250 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
251 of $(LILYPOND). Prevents lilypond run for .txt files.
253 * INSTALL.txt: gitness.
255 * .cvsignore: update to force gitness.
257 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
259 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
260 detect suicide in nested tuplets.
262 2006-10-23 Werner Lemberg <wl@gnu.org>
264 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
265 typo in argument to FT_Get_X11_Font_Format.
267 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
269 * stepmake/stepmake/po-vars.make: more gitness.
271 * flower/polynomial.cc (check_sol): no empty if bodies.
273 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
275 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
277 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
279 * Documentation/user/examples.itely (Transcription of mensural
280 music): Added more comments in .ly source. Suggest to remove
281 Forbid_line_break_engraver to allow line breaking at all bars.
283 * Documentation/user/instrument-notation.itely (Ancient
284 articulations): Updated @refbugs regarding episem.
286 * Documentation/user/instrument-notation.itely (Gregorian square
287 neumes ligatures): Added \augmentum dots. Updated @refbugs
288 regarding \augmentum.
290 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
292 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
295 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
298 * ly/gregorian-init.ly: Added \augmentum macro.
300 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
302 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
304 * lily/pango-font.cc (pango_item_string_stencil): use
305 FT_Get_X11_Font_Format()
307 2006-10-22 John Mandereau <john.mandereau@free.fr>
309 * po/fr.po: update translation.
311 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
313 * VERSION (PATCH_LEVEL): bump version
315 * input/regression/horizontal-bracket-break.ly: new file.
317 * scm/define-grobs.scm (all-grob-descriptions): calc
320 * lily/horizontal-bracket.cc (make_bracket): support
321 connect-to-neighbor. Fix #118
323 * VERSION: release 2.9.26-2
325 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
327 * VERSION (PACKAGE_NAME): release 2.9.26
329 * buildscripts/output-distance.py (test_basic_compare): add
331 (FileLink.multi_img_cell): new function, glob multi-page png
334 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
336 * po/lilypond.pot: update.
338 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
340 * Documentation/user/global.itely (File structure): remove
343 * lily/parser.yy (FIXME): remove ADDQUOTE
345 * Documentation/user/global.itely (Extracting fragments of
346 notation): new node, about clip systems.
348 * Documentation/user/lilypond-book.itely (Many quotes of a large
349 score): ref to clip systems.
351 * Documentation/user/instrument-notation.itely (Entering lyrics):
352 add note about lyric ties and required font.
354 * lily/open-type-font.cc (glyph_list): format errors.
356 * Documentation/user/programming-interface.itely (Scheme
357 procedures as properties): more doco on simple-closure and scheme
359 (Input variables and Scheme): use lilypond[verbatim], document
362 * Documentation/user/page.itely (Displaying spacing): use \book
363 explicitly, so arrows show .
364 (Line breaking): add note about Forbid_line_break_engraver
366 * Documentation/user/tweaks.itely (Common tweaks): also set length
367 to prevent tie squeezing.
368 (Default files): use @var{}
370 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
371 (Generating LilyPond files): add FOMUS.
373 2006-10-20 Joe Neeman <joeneeman@gmail.com>
375 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
376 Y-offset for TextScript and Script
378 * lily/text-engraver.cc (make_item):
379 * lily/script-engraver.cc (make_script_from_event):
380 remove call to Side_position_interface::set_axis since all scripts
381 now have this set by default
384 * lily/prob.cc: use variables
386 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
388 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
389 at typography, rather analyse stream event duration.
391 * Documentation/user/page.itely (Page formatting): set a6 paper
392 for system separator example.
394 * lily/arpeggio.cc (Module): idem.
396 * lily/accidental-placement.cc: add script-priority property.
398 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
400 * lily/ttf.cc (print_trailer): if all else fails: use
401 glyphIndexXXXX as glyph name. Fixes #117.
403 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
404 entry if cmap contains glyph.
405 (get_index_to_charcode_map): remove from Pango_font class, use
406 global filename -> font mapping.
407 (get_glyph_index_name): new function.
408 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
411 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
413 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
416 * scm/define-grob-properties.scm (all-user-grob-properties):
417 remove outdated doc. Fixes #116
419 * lily/completion-note-heads-engraver.cc (process_music): always
420 clone input events; otherwise we may overwrite input 'duration
421 property. Fixes #115.
423 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
426 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
429 * VERSION (PATCH_LEVEL): bump version.
431 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
433 * lily/engraver.cc (internal_make_grob): use variables.
435 * flower/string-convert.cc (dec2double): clean-up warnings.
437 * configure.in (CXXFLAGS): add -Werror.
439 * VERSION (PACKAGE_NAME): release 2.9.25
441 2006-10-18 Joe Neeman <joeneeman@gmail.com>
443 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
444 line even if we precede a forced break.
446 * lily/optimal-page-breaking.cc (try_page_spacing): square line
447 forces too. Make page-spacing weight default to 10 because the
448 changes to vertical springs decreased the page force/line force
449 proportions. Also, take the average of line force and page force
450 instead of just the sum.
452 * lily/constrained-breaking.cc (initialize): make the stiffness
453 of the vertical springs depend on the height of the system. This
454 prevents pages with only a few large systems from getting huge
457 * Documentation/user/page.itely (Page formatting): document the
458 change in default page-spacing-weight
460 * lily/include/constrained-breaking.hh: initialise bottom_padding_
462 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
464 * input/typography-demo.ly (melody): remove superfluous slur.
466 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
467 add piano-pedal-script-interface
469 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
471 * scripts/lilypond-book.py: DocBook support.
473 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
475 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
477 (stop_translation_timestep): set bound to currentMusicalColumn if
478 not set yet. Fixes #102
480 * lily/piano-pedal-bracket.cc: formatting.
482 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
484 * lily/piano-pedal-align-engraver.cc: new class
485 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
488 2006-10-18 Heikki Junes <hjunes@gmail.com>
490 * po/fi.po: Update Finnish translation (before the next release).
492 2006-10-17 Joe Neeman <joeneeman@gmail.com>
494 * lily/system.cc (get_paper_system): reinstate the backwards-
495 compatible page breaking for the old page breaker.
497 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
499 * lily/recording-group-engraver.cc: removed
501 * lily/context.cc, lily/translator-group.cc: Don't touch
502 Context::implementation_ if it's null
504 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
506 * scm/paper.scm: only use left-margin if defined.
508 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
510 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
512 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
513 strokeFingerOrientations
515 * lily/script-column.cc (row_before_line_breaking): also handle
516 accidentals and arpeggios in horizontal script stacking.
518 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
521 * input/regression/script-stack-horizontal.ly: trim.
523 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
525 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
528 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
529 'text if string argument.
531 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
533 * scm/define-context-properties.scm
534 (all-user-translation-properties): change to strokeFingerOrientations
536 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
538 * lily/parser.yy: remove debug output
540 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
542 * ly/paper-defaults.ly: set left/right margin.
544 * scm/paper.scm (set-paper-dimensions): use left-margin and
545 right-margin for computing linewidth.
547 * Documentation/topdocs/NEWS.tely (Top): idem.
549 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
552 * scm/define-markup-commands.scm (tied-lyric): increase negative
553 space: space syllables tighter.
555 * VERSION (PATCH_LEVEL): bump version.
557 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
560 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
562 * COPYING: further clarification
564 * VERSION: release 2.9.24
566 * input/regression/script-stack-horizontal.ly: add version.
568 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
570 * input/regression/lyric-tie.ly (texidoc): use different words.
572 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
574 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
576 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
577 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
579 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
581 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
583 * Doxyfile: remove file.
585 * scm/define-grob-interfaces.scm (string-finger-interface): add
586 string-finger-interface
588 * lily/general-scheme.cc (LY_DEFINE): move
589 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
591 * Documentation/topdocs/NEWS.tely (Top): add note for
592 string-finger feature.
594 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
597 * scm/output-lib.scm (string-finger::calc-text): read 'digit
600 * input/regression/script-stack-horizontal.ly: new file.
602 * ly/engraver-init.ly: add Script_row_engraver.
604 * lily/script-column.cc (order_grobs): refactor: separate axis
606 (row_before_line_breaking): new function.
608 * lily/script-row-engraver.cc (Script_row_engraver): new file.
610 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
612 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
614 * Documentation/user/instrument-notation.itely: Cleanup: Remove
615 annoying skip notes from mensural ligature example. Update
616 @refbugs for ligatures and mensural ligatures.
618 * lily/coherent-ligature-engraver.cc,
619 lily/include/coherent-ligature-engraver.hh,
620 lily/mensural-ligature-engraver.cc,
621 lily/vaticana-ligature-engraver.cc: Revise code for item
622 reparentizing. There should now be less programming_error
625 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
627 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
628 Maintenance bugfix: Don't create empty Stencil (), but empty box
629 instead. This fix should eliminate some programming_error
632 * ly/engraver-init.ly (MensuralStaff): Set default accidental
635 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
636 \layout block _before_ score.
638 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
640 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
642 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
644 2006-10-13 Erlend Aasland <erlenda@gmail.com>
646 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
648 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
650 * VERSION (PATCH_LEVEL): bump version.
652 * COPYING: clarify exception note.
654 * lily/main.cc: remove remark about "COPYING".
656 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
657 system-count starts at 0 for each clip-region. Change name to
658 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
659 layout block, per score.
661 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
663 * lily/input-smob.cc: add equal_p for Input
665 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
668 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
670 * lily/prob.cc: Add equal_p predicate for Prob
672 * lily/translator.cc: small cleanup
674 * scm/document-music.cc: use data from translator listener
675 registration to generate documentation for event classes
677 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
679 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
681 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
683 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
685 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
687 * Documentation/topdocs/INSTALL.texi: Thinko.
689 * .cvsignore: Update.
691 * lexer-gcc-3.1.sh: Remove.
693 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
694 Update anonymous cvs access. Remove comment about gcc 3.0.4.
696 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
698 * VERSION: release 2.9.23
700 * lily/paper-column-engraver.cc (stop_translation_timestep): also
703 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
705 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
707 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
709 * input/regression/clip-systems.ly (Notes): new file.
711 * scm/lily.scm (define-scheme-options): add clip-systems option.
713 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
715 (dump-stencil-as-EPS): move bbox calculation from previous
717 (output-framework): use -dclip-systems
719 * scm/lily-library.scm (filtered-map): new function
721 * scm/framework-ps.scm (clip-system-EPS): new function.
722 (clip-system-EPSes): new function.
724 * lily/paper-column.cc: add rhythmic-location to interface
726 * scm/define-grob-properties.scm (all-user-grob-properties): add
727 rhythmic-location property.
729 * scm/clip-region.scm: new file: rhythmic-location data type and
730 system-clipped-x-extent function.
732 * ly/init.ly: use (scm clip-region)
734 * lily/paper-column-engraver.cc (stop_translation_timestep): set
735 rhythmic-location for paper column grobs.
737 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
739 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
741 * ly/engraver-init.ly: Remove obsolete comment on
744 * Documentation/user/instrument-notation.itely: Tune Ancient
745 Articulations figure, such that the episem actually shows.
747 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
748 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
750 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
753 2006-10-12 Graham Percival <gpermus@gmail.com>
755 * Documentation/user/ {some}: minor edits that were lost somehow.
757 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
759 * VERSION (PACKAGE_NAME): bump version.
761 * input/regression/lyric-tie.ly (texidoc): new file.
763 * Documentation/topdocs/NEWS.tely (Top): add new feature.
765 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
767 * scm/define-markup-commands.scm (tied-lyric): new function: split
768 string along ~ and reattach with U+203F (tie character) and
771 * scm/output-lib.scm (lyric-text::calc-text): new function.
773 * lily/lyric-engraver.cc (process_music): don't set 'text.
775 * scm/output-lib.scm (string-finger::calc-text): new function
776 (lyric-text::print): new function.
778 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
779 generic for fingering & string number. Use for string-finger.
781 * scm/define-music-types.scm (music-descriptions): add
784 * lily/fingering-engraver.cc (listen_string_finger): new function
786 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
788 * scm/define-context-properties.scm
789 (all-user-translation-properties): add stringFingerOrientations
791 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
793 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
794 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
796 * lily/dots.cc: Added style property for dots.
798 * mf/parmesan-heads.mf: Fix typo in comment.
800 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
801 adding longa head to feta font and removing obsolete default
804 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
806 * scm/output-lib.scm (fingering::calc-text): use origin
807 event-property, not music-property.
809 * lily/lilypond.rc.in: spell my name correctly.
811 2006-10-10 Joe Neeman <joeneeman@gmail.com>
813 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
814 already have a non-empty extent. Fixes estimation for Hara-kiri
817 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
819 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
822 * lily/ligature-engraver.cc: Remove unused #include.
824 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
825 Bugfix: remove method check_for_prefix_loss(Item *) from global
826 namespace to avoid namespace pollution.
828 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
830 * VERSION: release 2.9.22
832 * ly/generate-documentation.ly: update option name.
834 * lily/dynamic-text-spanner.cc (print): revert fix.
836 * scm/define-grob-interfaces.scm
837 (trill-pitch-accidental-interface):
838 add trill-pitch-accidental-interface
840 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
841 dereference if it's really a duration.
843 * lily/figured-bass-engraver.cc (process_music): clear spanner if
844 useBassFigureExtenders is not set.
845 (listen_bass_figure): record as new event if
846 useBassFigureExtenders not set. Fixes #103.
848 * scm/stencil.scm (circle-stencil): don't center stencil argument,
849 instead: move circle. Fixes #107.
851 * scm/define-grobs.scm (all-grob-descriptions): set
852 allow-loose-spacing for PaperColumn and
853 NonMusicalPaperColumn. Kludge for #110.
855 * lily/spaceable-grob.cc: add allow-loose-spacing property.
857 * lily/spacing-determine-loose-columns.cc (is_loose_column):
858 allow-loose-spacing property.
860 * scm/define-markup-commands.scm (postscript): gsave & grestore
861 around embedded PS. Do setlinewidth too. Fixes #109.
863 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
865 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
866 code. This patch fixes ligature brackets that were not at all
869 2006-10-08 Graham Percival <gpermus@gmail.com>
871 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
873 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
875 * scm/define-context-properties.scm: clarified docs (bug 91).
877 * Documentation/user/basic-notation.itely: document volta brackets
878 not aligning (bug 63).
880 * Documentation/user/ global.itely invoking.itely: ignore or
881 add warnings about texstr.
883 2006-10-08 John Mandereau <john.mandereau@free.fr>
885 * po/fr.po: update translation.
887 * po/: update msgids.
889 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
891 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
893 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
895 * Documentation/user/page.itely (Two-pass vertical spacing): add
896 documentation for two-pass spacing technique.
898 2006-10-06 Graham Percival <gpermus@gmail.com>
900 * Documentation/user/convert-ly.txt: new file; new
901 storage place for this file (moved from bugs/ CVS).
903 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
905 * lily/note-head.cc: Fixed programming_error message.
907 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
909 * scm/define-grobs.scm (pure-conversion): move pure-callback
912 * scm/script.scm (default-script-alist): set avoid-slur for turn,
913 marcato, stopped, thumb.
915 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
917 * lily/completion-note-heads-engraver.cc (process_music): don't
918 skimp on memory usage.
920 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
923 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
924 parenthesis item. This fixes premature Y-extent triggering. Fixes
927 * VERSION (PATCH_LEVEL): bump version.
929 2006-10-04 Graham Percival <gpermus@gmail.com>
931 * Documentation/user/advanced-notation.itely: added
932 info about instrument names for piano or other contexts,
935 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
937 * mf/feta-bolletjes.mf (solfa_quarter_width): use
938 solfa_base_notewidth as unit for non-DO-notes too.
940 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
942 * VERSION: release 2.9.21
944 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
947 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
949 * python/lilylib.py (progress): Minor fix.
951 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
953 * lily/note-name-engraver.cc: doc engraver.
955 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
957 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
959 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
962 * lily/stem-engraver.cc (make_stem): don't set duration-log
964 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
965 write snippet-names binary.
967 * python/lilylib.py (system): use os.system for mingw32
969 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
972 * scm/backend-library.scm: update email address.
974 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
977 * scm/define-grobs.scm (all-grob-descriptions): use callback to
980 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
981 handle dot creation separately.
983 * lily/tab-note-heads-engraver.cc (process_music): idem.
985 * lily/drum-note-engraver.cc (process_music): idem.
987 * lily/note-heads-engraver.cc (process_music): idem.
989 * lily/rest-engraver.cc: don't set duration-log.
991 * scm/output-lib.scm (string-number::calc-text): new function.
992 (note-head::calc-duration-log): new function.
994 * lily/fingering-engraver.cc (make_script): remove 'text setting.
996 * scm/output-lib.scm (fingering::calc-text): new function.
998 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1000 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1001 and include-eps-font -> include-eps-fonts
1003 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1005 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1007 * lily/timing-translator.cc: list properties.
1008 (start_translation_timestep): update internalBarNumber too.
1010 * scm/define-context-properties.scm
1011 (all-user-translation-properties): add internalBarNumber.
1013 * input/regression/spacing-no-note.ly: new file.
1015 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1017 * lily/book.cc: #include cleanup.
1019 * lily/include/lily-guile-macros.hh: add assert to
1020 scm_or_str2symbol(SCM).
1022 * VERSION (PATCH_LEVEL): bump version.
1024 * lily/spacing-spanner.cc (musical_column_spacing): handle
1025 musical->nonmusical spacing case, where there is no spacing
1026 wish. Fixes issue #61.
1028 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1029 (pango_item_string_stencil): use logical rect horizontally (to
1030 preserve spaces), ink_rect vertically (for time signatures).
1032 * lily/font-metric.cc (word_stencil): new interface function
1034 * input/regression/utf-8-mixed-text.ly: new file.
1036 * lily/percent-repeat-engraver.cc (listen_percent): remove
1039 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1040 non-dynamic scripts. Fixes #30.
1042 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1044 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1046 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1047 SCM_UNDEFINED for non-existent data.
1049 * lily/side-position-interface.cc (general_side_position): allow
1050 optional current_offset argument for chaining, so combinations of side-position
1051 and outside slur callback don't add up. Fixes issue #92.
1053 * lily/pango-font.cc (pango_item_string_stencil): use
1054 logical_rect. This prevents spaces after words from disappearing,
1057 * VERSION: release 2.9.20
1059 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1061 * scm/define-grob-properties.scm (all-user-grob-properties):
1062 mention stencil as user settable.
1064 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1066 * Documentation/user/page.itely (Page formatting):
1067 document auto-first-page-number
1069 * lily/page-breaking.cc (find_chunks_and_breaks):
1070 * lily/paper-score.cc (calc_breaking): Follow changes to the
1071 Constrained_breaking interface
1073 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1074 here backwards, as an optimisation
1075 (initialize): new function; move most of the code in resize () here
1076 (combine_demerits): cache ragged_right_
1077 (Constrained_breaking): constructor now takes the Paper_score
1079 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1081 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1082 avoid parser lookahead for 0-ary functions.
1084 * lily/translator.cc: Extract event classes from
1085 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1087 2006-10-02 Heikki Junes <hjunes@gmail.com>
1089 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1092 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1094 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1095 function. Call the page breaking function selected in the
1096 `page-breaking' \paper variable, then the post processing function
1097 chosen using the `page-post-process' \paper variable.
1098 (line-height): new function. Return the height of a system.
1099 (line-minimum-position-on-page): new function. Return the position
1100 of a system on page (using the previous line position), only
1101 considering between system padding.
1102 (stretchable-line?): new function. Says whether a line can be
1103 stretched (ie. is not a title nor a single staff system).
1104 (page-maximum-space-left): new function. Computes space left on a
1105 page, when all systems are separated by their padding.
1107 * lily/page-breaking.cc (breaking::make_pages): Move page post
1108 processing function call to page breaking wrapper (common to all
1111 * lily/paper-book.cc (book::pages): call the page breaking
1112 wrapper, instead of the page breaker directly
1114 * ly/paper-defaults.ly: Add \paper variables for page breaking
1115 wrapper and page post processing function. Make
1116 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1117 `system-maximum-stretch-procedure' variable for holding a function
1118 computing the maximum stretch a system allows.
1120 * scm/layout-page-dump.scm (write-page-breaks): computes the
1121 stretch to apply to systems on a page to minimize left
1122 space. Dump this stretch length.
1124 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1125 the system-stretch property of the tweak data to stretch the
1127 (includePageLayoutFile): Void function which includes the
1128 generated page-layout file if it exists and if the page layout
1129 dumping is not asked.
1130 (scoreTweak): if the score tweak named by the argument exists,
1133 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1135 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1136 handle correctly the case where there are multiple \noPageBreaks
1139 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1141 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1143 * abc2ly.py fix so that entering " -- " will translate to a -- in
1144 the lilypond instead of a " - - "
1146 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1148 * lily/align-interface.cc: fix typo
1150 * lily/dynamic-text-spanner.cc (print): Add a special case for
1151 trill spanner right sides.
1153 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1155 * lily/align-interface.cc (get_extents_aligned_translates): add
1156 support for padding variable.
1158 * lily/break-align-interface.cc (self_align_callback): oops: use
1159 loop variable in guard.
1161 * input/regression/repeat-percent-grace.ly: new file.
1163 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1164 remember first currentCommandColumn of a grace run. Fixes issue 70.
1166 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1167 move class definition to CC file.
1169 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1171 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1172 measure-long repeats.
1174 * flower/include/international.hh: include stdarg.h
1176 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1178 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1179 put_systems_on_pages to return an empty result, we need to assign
1180 demerits properly in that case.
1181 (put_systems_on_pages): Make the number of pages depend on the
1182 evenness of page_number. Add auto-first-page-number.
1183 (calc_subproblem): ensure that the page-number is even for the
1184 left-hand page. Warn if the first page-turn doesn't fit onto the
1185 first (right-hand) page.
1187 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1188 (min_page_count): make this publicly accessible
1189 (min_page_count): fix a bug when there are forced page breaks that
1190 was introduced when I made this loop run backwards
1191 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1192 replace space_systems_on_min_pages with these two. The logic in
1193 space_systems_on_min_pages was getting too convoluted and is better
1194 contained in page-turn-page-breaking.
1196 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1198 (breakable_column): typo
1200 * lily/source-file.cc (get_line): fix off-by-one error
1201 and clean up some of the logic
1203 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1205 * lily/page-breaking.cc (make_pages): honour the first-page-number
1208 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1210 * VERSION (PACKAGE_NAME): bump version.
1212 2006-09-26 Pal Benko <benko.pal@gmail.com>
1214 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1215 (the latter is the same as petrucci-f which is kept for compatibility)
1217 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1219 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1221 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1223 * lily/global-context.cc (run_iterator_on_me): break out of loop
1224 if moment doesn't increase.
1226 * scm/define-grob-properties.scm (all-user-grob-properties): add
1229 * lily/accidental.cc (after_line_breaking): read forced property.
1231 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1234 * input/regression/accidental-forced-tie.ly: new file.
1236 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1238 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1240 * lily/figured-bass-engraver.cc: only listen to rest events if
1241 ignoreFiguredBassRest is not set.
1243 * scm/define-context-properties.scm
1244 (all-user-translation-properties): add ignoreFiguredBassRest property
1246 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1248 * lily/paper-book.cc (get_system_specs):
1249 (set_system_penalty): fix breakbefore.
1250 We used to set a penalty on the system after the break, now we
1251 set a permission on the system before the break
1253 * lily/grob-property.cc: add scm debugging hooks into
1254 property modification
1256 * lily/context-property.cc:
1258 rename make_foo_from_properties to internal_make_foo and
1259 move it from context-property.cc to a member function of
1262 * lily/include/lily-guile-macros.hh:
1263 overload ly_symbol2scm macro so that there is no more need
1266 * lily/volta-repeat-iterator.cc:
1267 * lily/tweak-engraver.cc:
1268 * lily/tuplet-bracket.cc:
1269 * lily/span-bar-engraver.cc:
1270 * lily/script-engraver.cc:
1271 * lily/prob-scheme.cc:
1272 * lily/pointer-group-interface.cc:
1274 * lily/grob-scheme.cc:
1275 * lily/grob-property.cc:
1277 * lily/context-property.cc:
1278 * lily/break-substitution.cc:
1279 * lily/break-align-engraver.cc:
1280 * lily/axis-group-interface.cc:
1281 * lily/align-interface.cc:
1282 remove calls to internal_FOO
1284 * lily/system-start-delimiter-engraver.cc:
1285 * lily/parenthesis-engraver.cc:
1286 * lily/accidental-engraver.cc:
1287 remove calls to make_foo_from_properties
1289 2006-09-23 Graham Percival <gpermus@gmail.com>
1291 * Documentation/user/programming-iterfaces.itely: fix
1292 def-music-function -> define-music... leftover.
1294 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1296 * lily/page-spacing.cc (min_page_count): by running the loop
1297 backwards, we can calculate ragged_last properly.
1299 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1301 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1302 printfirst-page-number -> print-first-page-number
1304 * python/convertrules.py: corresponding rule.
1306 * Documentation/user/page.itely (Page formatting): Document the
1307 default values of all page layout parameters.
1309 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1311 * lily/lexer.ll: remove limitation on music function arity. New
1312 mode extratoken, which inserts extra EXPECT_* tokens after
1313 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1315 * lily/parser.yy: Change grammar for music function accordingly.
1317 * lily/include/lily-parser.hh: New method get_state, new member
1318 hidden_state. Works around a problem when parser fetches
1319 MUSIC_FUNCTION token but not the following EXPECT_* token.
1321 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1324 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1325 references to Music; use ASSIGN_EVENT_ONCE everywhere
1327 * lily/grob-info.cc: junk *music_cause
1329 * lily/music.cc: copy eventified articulations to stream event
1331 * lily/part-combine-iterator.cc: Cleanup using enums
1333 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1336 * lily/include/engraver.hh: Junk music.hh include
1338 * lily/stream-event.cc: Changed constructors
1340 2006-09-21 Graham Percival <gpermus@gmail.com>
1342 * Documentation/user/tweaks.itely (Fitting music onto fewer
1343 pages): change settings to avoid warning messages.
1345 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1347 * Documentation/user/tweaks.itely (Fitting music onto fewer
1348 pages): Add between-system-space setting.
1350 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1352 * lily/accidental-placement.cc (calc_positioning_done): don't
1353 trigger Y-extent calculation too early. Use pure_height instead.
1355 * lily/scale.cc (LY_DEFINE): new file.
1357 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1359 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1360 that happen at the start of a score: having a zero-length
1361 chunk was messing up min_system_count calculations.
1363 * lily/source-file.cc (get_line): lower_bound, not
1364 binary_search. Fixes problem where point-and-click would
1365 always point to the first line.
1367 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1369 * lily/accidental-placement.cc (calc_positioning_done): also put
1370 stems into accidental support.
1372 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1375 * scm/script.scm (default-script-alist): avoid-slur and
1376 slur-padding for portato script.
1378 * lily/stem-tremolo.cc (translated_stencil): new function.
1379 (height): use new function. Fixes tremolos on whole notes.
1381 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1384 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1386 * scripts/abc2ly.py (try_parse_comment): idem.
1388 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1389 bar_string iso. string.find()
1393 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1396 2006-09-18 Graham Percival <gpermus@gmail.com>
1398 * Documentation/user/basic-notation.itely: add bug
1399 warning about ties and octavation/clef.
1401 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1403 * VERSION (PACKAGE_NAME): release 2.9.18
1405 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1407 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1408 figure out midi file names right here.
1410 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1412 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1414 * scm/backend-library.scm: option naming: gs-font-load*s*
1416 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1419 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1421 * scm/define-music-types.scm (music-descriptions): remove
1422 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1423 Music::to_event doesn't complain.
1425 * lily/accidental-placement.cc (ape_compare):
1426 * lily/semi-tie.cc (compare):
1427 * lily/note-column.cc (shift_compare): replace by XXX_less
1429 * lily/tie-formatting-problem.cc (set_chord_outline):
1430 * lily/tie-column.cc (calc_positioning_done):
1431 * lily/system.cc (post_processing)
1433 * lily/stem.cc (note_head_positions)
1434 (calc_positioning_done):
1435 * lily/spanner.cc (do_break_processing)
1436 (find_broken_piece):
1437 * lily/span-bar.cc (print):
1438 * lily/semi-tie-column.cc (calc_positioning_done):
1439 * lily/rest-collision.cc (calc_positioning_done):
1440 * lily/program-option.cc (get_help_string):
1441 * lily/note-collision.cc (get_clash_groups):
1442 * lily/new-fingering-engraver.cc (position_scripts):
1443 * lily/keyword.cc (Keyword_table):
1444 * lily/hara-kiri-group-spanner.cc (request_suicide):
1445 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1446 * lily/accidental-placement.cc (calc_positioning_done):
1448 * lily/beam.cc (get_beam_segments):
1449 * lily/grob-array.cc (remove_duplicates):
1452 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1453 ragged-last-bottom = ##f (test the new page breaker)
1455 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1457 * scm/define-context-properties.scm
1458 (all-internal-translation-properties): remove properties that
1459 were used to communicate page-turn stuff to the paper-column
1462 * lily/lily-guile.cc (robust_scm2string): new function
1464 * lily/paper-column-engraver.cc: Clean up page turn stuff
1466 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1467 instead of cluttering up paper-column-engraver.cc
1469 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1471 * scm/layout-page-dump.scm (scm): export utility function names,
1472 to allow user writing cutsom dumping functions.
1474 * scm/layout-page-layout.scm: export utility function names to
1475 enable custom page breaking function writing. Tabify.
1476 (line-next-space): use ?-suffix only for predicates
1477 (page-maximum-space-to-fill): new function. Return the space
1478 between first and bottom system of a page, to give to
1480 (space-systems): use a space-to-fill argument (for instance as
1481 computed by page-maximum-space-to-fill) instead of computing
1482 internaly this space with the page height. That way, the caller
1483 can adjust the space to use.
1484 (make-page-from-systems, walk-paths): compute space to fill before
1485 calling space-systems.
1487 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1489 * scm/script.scm (default-script-alist): set paddings for every
1490 type here, increase for portato mark.
1492 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1495 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1497 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1498 use spanner::set-spacing-rods
1500 * lily/note-column.cc: reformat.
1502 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1503 step positioning for note/rest combinations.
1505 * input/regression/rest-note-collision.ly: new file.
1507 * scm/define-grobs.scm (all-grob-descriptions): add
1510 * flower/include/std-vector.hh: switch off again.
1512 * VERSION (PATCH_LEVEL): bump to 2.9.18
1514 * flower/include/std-string.hh: idem.
1516 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1518 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1520 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1523 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1525 * Documentation/user/page.itely: update page breaking documentation
1527 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1529 * lily/note-collision.cc (calc_positioning_done): only access
1530 first head if available.
1532 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1534 * scm/framework-ps.scm (output-preview-framework): use new name.
1536 * lily/program-option.cc (internal_set_option): use new names.
1538 * Documentation/user/SConscript (lilypond_book_flags): update -d
1541 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1542 output into other programs): new variable names.
1544 * scm/lily.scm (define-scheme-options): uniformize var names.
1546 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1547 tuplets_ is non-empty before popping.
1549 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1551 * lily/spanner.cc (find_broken_piece):
1552 * lily/spacing-spanner.cc (get_columns):
1553 * lily/source-file.cc (get_line):
1554 * lily/simple-spacer.cc (get_column_description):
1555 * lily/keyword.cc (lookup):
1556 use the new binary search.
1558 * flower/include/std-vector.hh: replace binary_search with
1559 a more STL-like version
1561 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1563 * lily/tie-performer.cc: remove unused last_event_ property.
1564 (class Tie_performer): add now_tied_heads_ property for
1565 partially-tied heads.
1566 (acknowledge_audio_element): when adding an Audio_note, put the
1567 note in now_tied_heads_ if the audio note is partially tied.
1568 (stop_translation_timestep): always include entries in
1569 now_tied_heads_ in heads_to_tie_.
1571 * lily/drum-note-performer.cc (process_music): look for tie-events
1572 in the articulations; pass to Audio_note constructor.
1574 * lily/note-performer.cc (process_music): look for tie-events in
1575 the articulations; pass to Audio_note constructor.
1577 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1580 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1581 include initializer in constructor.
1583 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1585 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1586 unless they are breakable. This fixes discrepancies between the forces
1587 calculated here and the forces calculated in get_line_configuration.
1589 * lily/grob.cc (pure_relative_y_coordinate): fix some
1590 mis-estimation that was happening with piano staves.
1592 * lily/constrained-breaking.cc (resize): don't choke if we get a
1593 measure that won't fit on a line.
1594 (combine_demerits): don't consider uniformity when ragged
1596 * lily/page-spacing.cc (solve): why the f* were there two of these?
1597 (calc_subproblem): properly handle the case where a system is taller
1600 * lily/system.cc (get_paper_system): ensure that all the permissions
1601 and penalties are passed to the paper systems.
1603 * lily/page-breaking.cc (create_system_list): support system-count.
1605 * scm/define-grobs.scm (pure-print-callbacks): add
1606 ly:script-interface::print
1608 * lily/page-spacing.cc (min_page_count): fix calculation of min
1609 pages if we are ragged and there are non-zero springs.
1611 * scm/layout-page-layout.scm: if the pure-height estimates are under
1612 the real height, allow space-systems to ignore padding if it is
1613 needed in order to fit the systems on one page
1615 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1617 (solve): fix performance problem. Make sure we always get at least
1620 * lily/page-breaking.cc (make_pages): include write-page-breaks
1623 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1625 * scm/define-grobs.scm: add the new slur-callback
1626 fix pure-relevant to not exclude grobs whose extent is already
1629 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1632 * lily/slur.cc (pure_height): new callback to estimate the height
1635 2006-09-02 Graham Percival <gpermus@gmail.com>
1637 * Documentation/user/invoking.itely: small update on
1638 MacOS X notes; thanks Trevor!
1640 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1642 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1644 * lily/lexer.ll: accept EOF in all states.
1646 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1648 * lily/source-file.cc (Source_file): always 0-terminate character
1649 array, to prevent Flex from barfing.
1651 * lily/global-context.cc (get_output): robustness: don't crash if
1652 no Score context found.
1654 * lily/include/book.hh (class Book): idem.
1656 * lily/include/context-def.hh (struct Context_def): idem.
1658 * lily/include/score.hh (class Score): don't derive from Input.
1660 * lily/book.cc (Book): add a copy ctor.
1662 * buildscripts/output-distance.py (FileLink.calc_distance): count
1663 orphans in distance too.
1665 * python/midi.c (midi_parse_track): robustness: don't read past
1668 * ly/performer-init.ly: add Control_track_performer, move
1669 Tempo_performer and Time_signature_performer to Score.
1671 * lily/score-performer.cc (acknowledge_audio_elements): override
1672 from base class: add to audio-columns
1674 * lily/control-track-performer.cc (add_text): new file: generate
1677 * lily/performance.cc: move output_header_track to
1678 Control_track_performer ()
1680 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1682 * lily/include/midi-item.hh (class Midi_channel_item): insert
1683 class into hierarchy, for items that can have a channel setting. Dehungarify.
1685 * lily/include/performer.hh (class Performer): remove
1686 play_element(); move functionality into announce/acknowledge.
1688 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1690 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1691 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1693 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1695 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1698 * lily/all-font-metrics.cc: remove TFM support.
1700 * lily/include/tfm.hh: remove TFM support, TFM reader.
1702 * lily/include/binary-source-file.hh: remove Binary_source_file.
1704 2006-08-27 Graham Percival <gpermus@gmail.com>
1706 * Documentation/topdocs/NEWS.itely: add @c marker for
1707 stuff I've processed.
1709 * Documentation/user/ various: info from NEWS.
1711 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1713 * lily/paper-column-engraver.cc (finalize): Oops, this change
1714 should have gone in on 2006-08-23
1716 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1718 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1719 quotes to quote arguments. Fixes Windows problem.
1721 * python/lilylib.py (progress): idem
1723 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1725 * scripts/musicxml2ly.py: fix for importing
1726 minor key signatures from MusicXML. (Phillip Kirlin)
1728 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1730 * python/musicxml.py:
1731 (Attributes.get_key_signature): now correctly retrieves mode from
1734 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1736 * lily/parser.yy (output_def_body): take ownership of identifier
1739 * Documentation/user/advanced-notation.itely (Metronome marks):
1740 update use of \tempo in \midi.
1742 * VERSION: release 2.9.16
1744 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1746 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1749 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1751 * input/regression/tie-chord-partial.ly: clarify example.
1753 * scm/define-music-properties.scm (all-music-properties): remove
1756 * ly/music-functions-init.ly: remove \untied.
1758 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1759 stream events and music events.
1760 (stop_translation_timestep): search acknowledged heads for
1763 * input/regression/tie-chord-partial.ly: new file.
1765 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1766 for \char markup command.
1768 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1770 * scm/define-music-types.scm (music-descriptions): consistency:
1771 Use solo-{one,two}-event iso. solo-[12]-event.
1773 * lily/part-combine-engraver.cc (process_music):
1774 Use solo-{one,two}-event iso. solo-[12]-event.
1776 * ly/declarations-init.ly (partCombineListener): add Timing as
1779 * flower/std-string.cc (string_copy): use copy ()
1781 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1783 2006-08-24 Graham Percival <gpermus@gmail.com>
1785 * Documentation/user/changing-defaults.itely, global.itely,
1786 lilypond-book.itely, page.itely: minor changes from mailist.
1788 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1790 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1793 * scm/define-context-properties.scm
1794 (translator-property-description): robustness: detect type errors
1795 in property definitions.
1797 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1798 after getting it from SCM.
1800 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1803 * lily/include/performer.hh (class Performer): strip get_tempo()
1806 * lily/midi-def.cc: strip file.
1808 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1810 * lily/include/context-def.hh (struct Context_def): use
1811 VIRTUAL_COPY_CONSTRUCTOR().
1813 * lily/source-file.cc: smobification.
1815 * lily/include/source-file.hh (class Source_file): smobify
1816 Source_file. Trim redundant members.
1818 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1819 clones after creation. This plugs a huge memory leak.
1821 * python/convertrules.py (FatalConversionError.sub_tempo):
1822 complete rule for \midi{ \tempo }
1824 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1826 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1828 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1830 * input/regression/optimal-page-breaking-hstretch.ly: test for
1831 ragged-last-bottom also
1833 * lily/paper-column-engraver.cc (finalize): make the end of a score
1834 breakable by default. This is to balance out a change in behaviour
1835 of the page-turn-breaker which no longer makes the end of a score
1838 * lily/paper-book.cc (pages): set the systems_ once the pages are
1841 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1842 Page_breaking interface.
1844 * lily/page-breaking.cc (class Page_breaking): make the interface
1845 more consistent and provide abstractions for dealing with
1848 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1849 algorithm. Use the new interface to Page_breaking.
1851 * lily/page-spacing.cc: better support for ragged-bottom and
1854 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1856 * python/convertrules.py (conv): warning on \tempo{}
1858 * ly/performer-init.ly: set tempoWholesPerMinute.
1860 * ly/midi-init.ly: remove \midi
1862 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1865 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1866 tempoUnitDuration for determining what to print.
1868 * lily/lyric-extender.cc: typo.
1870 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1872 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1875 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1877 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1878 eps-pad-boxes is set.
1880 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1882 * THANKS: update sponsors.
1884 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1886 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1888 * input/regression/tie-chord-untied.ly: new file.
1890 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1892 * scm/define-music-properties.scm (all-music-properties): add
1895 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1897 (headertext_nopics): sanitize no-examples text.
1899 * scm/page.scm (make-page-stencil): don't rely on extents of
1900 page-stencil. This fixes spurious space around .EPS files produced
1901 with the EPS backend.
1903 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1905 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1907 * lily/hara-kiri-engraver.cc (process_music): remember
1908 keepAliveInterfaces after processing \set
1910 * lily/lyric-extender.cc (print): support left/right-padding for
1913 * scm/documentation-generate.scm (string-append): revert lilypond/
1916 2006-08-20 Graham Percival <gpermus@gmail.com>
1918 * Documentation/user/lilypond.tely: clarification to
1919 license presentation (not to actual license).
1921 * Documentation/user/basic-notation.itely,
1922 instrument-notation.itely: minor changes.
1924 * input/ {regression, test}/+.ly: clarification to
1925 text (you can click on examples). Thanks, Mats!
1927 * input/manual/bar-lines.ly: adds ||: repeats.
1929 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1931 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1933 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1935 * Documentation/user/lilypond.tely: strip lilypond/ from info
1936 links, rename to category LilyPond
1938 * lily/pango-font.cc (description_string): new function.
1940 * VERSION: release 2.9.15
1942 * lily/spacing-engraver.cc (stop_translation_timestep): use
1943 Dscho's fix for spacing spanner.
1945 * scm/define-music-types.scm (music-descriptions): use
1946 apply-output-event for ApplyOutputEvent
1948 * lily/output-property-engraver.cc (listen_apply_output): rename
1949 from listen_layout_instruction.
1951 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1954 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1956 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1957 commandline args with contains, split by \n.
1959 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1960 write snippet-names file, call with -dread-file-list. Fixes
1961 command limitations on 64-bit systems.
1963 * input/regression/stencil-color-rotation.ly: new file.
1965 * lily/include/translator.hh (struct Acknowledge_information):
1966 revert: don't use Protected_scm in global objects, as GUILE can't
1967 handle gc_unprotect from automated destructors on MacOS X.
1969 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1970 color, not the original stencil. Fixes combinations of
1971 color/transparency/rotation.
1973 * scripts/lilypond-book.py (main): add --formats=eps for
1976 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1977 crash if spacing_ is nonexistent.
1979 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1981 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1982 \catcode`\@=12 in the LaTeX output.
1984 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1986 * scm/define-music-types.scm (music-descriptions):
1987 use sustain-event iso. sustain-pedal-event.
1989 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1991 * scripts/convert-ly.py: honour the -n command-line switch
1993 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1995 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1996 break specification.
1998 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2000 * Documentation/user: convert-ly the user manual
2002 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2004 * stepmake/aclocal.m4: version check patch (thanks MWD)
2006 * ly/music-functions-init.ly: robustness. Don't crash if
2007 currentBarNumber is not a number.
2009 * VERSION (PATCH_LEVEL): bump.
2011 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2013 * stepmake/aclocal.m4: better version check; handle fooX.Y
2016 * ly/performer-init.ly: instrument name fixup.
2018 * input/manual/chord-names-jazz.ly (banterProperties):
2019 instrumentName update
2021 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2023 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2025 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2026 function. Use hash tables to check membership.
2028 * lily/general-scheme.cc (LY_DEFINE): new function.
2030 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2032 * lily/include/translator.hh (struct Acknowledge_information): add
2035 * ly/music-functions-init.ly: change name to BreathingEvent
2037 * input/regression/*.ly: apply it.
2039 * python/convertrules.py (conv): better instrumentName conversion
2042 * scm/define-music-types.scm (music-descriptions): add
2043 line-break-event to LineBreakEvent music
2045 * lily/music.cc (to_event): don't crash if music type not set.
2047 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2050 * lily/spacing-engraver.cc (stop_translation_timestep): set
2051 spacing for proportional notation too.
2053 * scm/translation-functions.scm (format-bass-figure): inspect
2056 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2058 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2060 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2062 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2064 * scm/layout-page-layout.scm (make-page-from-systems): new function
2065 (optimal-page-breaks): use the new page-breaking calling convention
2067 * scm/define-context-properties.scm (all-user-translation-properties):
2070 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2071 revokePageTurns functionality. If there is a special barline within
2072 the breakable region, break there instead of at the end of the region.
2074 * lily/paper-book.cc (pages): use the new page-breaking calling
2077 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2079 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2081 * scripts/lilypond-book.py: insert \sourcefileline command in
2082 output, so lilypond error messages refer to the spot in the
2083 original .lytex / .itely sourcefile.
2085 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2087 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2088 space to next column for distance to fixed col.
2090 * VERSION (PACKAGE_NAME): release 2.9.14
2092 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2095 * lily/accidental-engraver.cc (process_acknowledged): don't create
2096 accidental for trill span event. This fixes spurious accidentals
2099 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2101 * scm/define-grob-properties.scm (all-user-grob-properties):
2102 Clarify documentation of side-axis and direction. Thanks to Paul
2103 for the inspiration.
2105 * lily/bar-line.cc: Add documentation for "||:" also in the
2106 interface documentation.
2108 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2110 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2112 * lily/paper-column.cc (set_system): new function.
2114 * lily/spacing-engraver.cc (stop_translation_timestep): store
2115 SpacingSpanner refs in Paper_column.
2117 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2118 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2120 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2122 * lily/beam-engraver.cc (listen_beam): add method for
2123 Grace_beam_engraver too.
2125 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2127 * python/convertrules.py: Fix indentation bug that broke
2128 conversion of files older than 1.3.117.
2129 Fix escape error in the description for 2.9.6.
2131 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2133 * lily/*-engraver.cc: convert all try_music functions to listen_*
2136 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2137 enums to represent pedal types, and calculate more data statically.
2139 * scm/part-combiner.scm (recording-group-emulate): create a
2140 softcoded substitute for recording-group-engraver.cc.
2142 * lily/music.cc: make a common transpose function for events and
2145 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2146 ManualMelismaEvent, and obsoletes Melisma_translator.
2148 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2150 * input/test/instrument-name-align.ly: update version.
2152 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2154 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2155 Doc the --pdf flag to lilypond-book.
2157 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2159 * Documentation/topdocs/NEWS.tely (Top): add description.
2161 * input/regression/tuplet-full-length-note.ly: add file.
2163 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2164 always store axis group.
2166 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2168 * input/regression/instrument-switch.ly: new file.
2170 * lily/instrument-switch-engraver.cc (process_music): new file.
2172 * ly/engraver-init.ly: add Instrument_switch_engraver
2174 * ly/music-functions-init.ly: \instrumentSwitch
2176 * scm/define-context-properties.scm
2177 (all-user-translation-properties): add instrumentCueName
2179 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2181 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2183 * ly/music-functions-init.ly: music function \transposition.
2185 * lily/parser.yy (command_element): softcode \transposition.
2187 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2188 (process_music): oops.
2190 * lily/instrument-name-engraver.cc (start_spanner): new
2191 function. Create spanner when property changes.
2192 (stop_spanner): new function.
2194 * python/convertrules.py (conv): add rule.
2196 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2197 shortInstrumentName iso. instr.
2199 * scm/output-ps.scm (dashed-line): add phase argument to
2202 * lily/bar-line.cc (dashed_bar_line): new function.
2203 (compound_barline): support \bar "dashed".
2205 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2206 --output=DIR to DIR/BASE if it is a dir.
2208 * flower/file-name.cc (file_part): new function
2209 (dir_part): new function
2211 * lily/lily-parser-scheme.cc (LY_DEFINE):
2213 * DEDICATION: update
2215 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2217 * lily/instrument-name-engraver.cc: formatting.
2219 * python/convertrules.py (conv): bugfix for \epsfile.
2221 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2225 * lily/gourlay-breaking.cc: Oops, these should have been included
2228 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2230 * scripts/*.py (program_name): cleanup relocation snippets.
2232 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2234 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2236 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2237 page-breakable by default
2239 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2240 correctly calculated for a single-system page
2242 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2243 bigger than the second number
2245 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2246 acknowledge that we aren't satisfying constraints)
2248 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2251 * lily/grob.cc (pure_height): add minimum-Y-extent
2253 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2256 * lily/constrained-breaking.cc: convert code to use new Matrix class
2257 (get_best_solution): new function
2259 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2260 is a page with no systems
2262 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2264 * VERSION (PACKAGE_NAME): release 2.9.13
2266 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2269 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2271 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2273 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2276 * scm/define-grob-properties.scm (all-user-grob-properties):
2277 remove grace-space-factor.
2279 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2280 grace-spacing-interface
2281 (spacing-options-interface): add.
2283 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2285 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2287 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2288 GraceSpacing object.
2290 * lily/note-spacing.cc: fix prop list formatting
2292 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2293 beaming for grace notes too.
2295 * input/regression/spacing-grace.ly: update.
2297 * lily/grace-spacing-engraver.cc: new file.
2299 * lily/spacing-spanner.cc: add strict-grace-spacing.
2301 2006-07-20 Graham Percival <gpermus@gmail.com>
2303 * lily/parser.yy: compile fix.
2305 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2307 * scm/define-grobs.scm (all-grob-descriptions): typo.
2309 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2310 .eps extension from includegraphics.
2312 * scripts/lilypond-book.py (main): add support for --pdf.
2314 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2315 callback to compute common shortest duration.
2316 (set_springs): typo.
2318 * scm/define-grob-properties.scm (all-user-grob-properties): add
2319 strict-grace-spacing.
2321 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2322 support float_grace_columns_.
2324 * lily/spacing-options.cc (init_from_grob): new file.
2326 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2328 * input/regression/spacing-loose-grace.ly: new file.
2330 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2332 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2333 tupletFullLengthNote too. Choose right bound depending on value.
2335 * input/regression/tuplet-full-length-note.ly: new file.
2337 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2339 * lily/*-performer.cc: Converted try_music to listen_*
2341 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2342 as a stream-event internally. Introduce event_cause (), deprecate
2345 * scm/define-music-types.scm: Removed BusyPlayingEvent
2347 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2349 * Documentation/user/advanced-notation.itely (Font selection):
2350 Document how to get a list of available fonts using 'lilypond
2351 -dshow-available-fonts blabla'.
2353 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2355 * GNUmakefile.in: filter lily-XXX.pdf files.
2357 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2359 * scm/define-grob-properties.scm (all-internal-grob-properties):
2360 remove delta-pitch. Use delta-position everywhere.
2362 * scm/output-lib.scm (fall::print): use new order.
2364 * scm/output-ps.scm (path): reorder arguments.
2366 * scm/output-svg.scm (path): support for path primitive.
2368 * input/regression/bend-after.ly: new file.
2370 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2371 recipe for eps -> pdf conversion.
2373 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2375 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2378 2006-07-19 Graham Percival <gpermus@gmail.com>
2380 * input/manual/screech-boink.ly: moved to here.
2382 * input/screech-boink.ly: deleted.
2384 * scm/define-grob-properties.scm: clarify doc string.
2386 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2388 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2390 * scm/output-ps.scm (path): define path.
2392 * scm/define-stencil-commands.scm
2393 (ly:register-stencil-expression): add path.
2395 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2397 * ly/engraver-init.ly: add Fall_engraver
2399 * lily/parser.yy (music_function_event): allow musicfunction
2400 without music arg as music_function_event.
2402 * lily/grob-scheme.cc (LY_DEFINE):
2403 ly:grob-robust-relative-extent. New function.
2405 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2407 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2409 * scm/output-lib.scm (fall::print): new function
2411 * lily/fall-engraver.cc (stop_fall): new file.
2413 * ly/music-functions-init.ly: alphabetise.
2415 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2418 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2420 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2422 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2425 * lily/translator-group.cc (connect_to_context): non const error message.
2427 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2429 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2432 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2434 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2436 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2439 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2441 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2443 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2445 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2447 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2449 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2451 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2453 * scm/layout-page-layout.scm: Define module, tidy code, use more
2454 functions iso. a single big one.
2456 * scm/layout-page-dump.scm: move page dump functions used in two
2457 pass spacing to this file. Define module.
2459 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2462 * ly/paper-defaults.ly: use module layout-page-layout.
2464 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2466 * lily/music.cc: Revised MusicEvent event class. It now contains
2467 event data directly instead of encapsulating it in music. The
2468 previously used class is renamed to OldMusicEvent.
2470 * lily/stream-event.cc: Stream events are now probs.
2472 * lily/translator-group.cc, lily/translator.cc: Translators can
2473 now listen directly to stream events, by using macros
2474 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2476 * lily/arpeggio-engraver.cc: Converted to use new event system
2478 * THANKS: Corrected spelling mistake.
2480 2006-07-12 Graham Percival <gpermus@gmail.com>
2482 * Documentation/user/SConscript, make/lilypond-vars.make,
2483 input/GNUmakefile: doc build looks in input/manual instead
2486 * input/manual/ GNUmakefile, SConscript: build files for
2489 * input/test/ various: some files moved to input/manual/
2491 * Documentation/user/basic-notation.itely: small updates;
2492 thanks Kieren and Charles!
2494 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2496 * VERSION (PACKAGE_NAME): release 2.9.11
2498 * Documentation/topdocs/NEWS.tely (Top): update prop value
2500 * Documentation/user/basic-notation.itely (Tuplets): new property
2503 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2505 * python/convertrules.py (conv): tweaks.
2507 * VERSION (PATCH_LEVEL): bump version.
2509 * python/convertrules.py (conv): add rule for
2510 tupletNumberFormatFunction.
2512 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2513 tupletNumberFormatFunction.
2515 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2516 text through 'text callback.
2518 * lily/time-scaled-music-iterator.cc (construct_children): copy
2519 tweaks generated events.
2521 * scm/define-context-properties.scm
2522 (all-user-translation-properties): remove tupletNumberFormatFunction
2524 * lily/tuplet-engraver.cc (process_music): don't read
2525 tupletNumberFormatFunction
2527 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2530 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2532 * lily/global-context-scheme.cc: Separated ly:run-translator into
2535 * lily/score-engraver.cc, lily/score-performer.cc,
2536 scm/define-context-properties.scm: Make paper/midi output
2537 accessable as a context property.
2539 * lily/score-translator.cc, lily/score-context.cc: Removed.
2541 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2543 * scm/ps-to-png.scm (Module):
2544 * scm/framework-tex.scm (Module):
2545 * scm/framework-ps.scm (Module):
2546 * scm/backend-library.scm (Module):
2547 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2548 "dDEVICEHEIGHTPOINTS".
2550 2006-07-04 Graham Percival <gpermus@gmail.com>
2552 * Documentation/user/ various: general improvements to
2553 "working with lilypond files" section.
2555 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2557 * lily/sequential-iterator.cc: Change the default get_music_list
2558 to read elements-callback music property
2560 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2561 processing of multimeasure rests. Softcoded
2562 sequential-music-iterator.
2564 * lily/sequential-music-iterator.cc: Removed.
2566 2006-06-28 Graham Percival <gpermus@gmail.com>
2568 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2570 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2572 * lily/parser.yy: Wrap non-post-events in EventChords before
2573 assigning them to identifiers.
2575 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2577 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2578 gives correct vertical placement of \bar ":" in all staff
2579 sizes. Thanks Martial!
2581 2006-06-26 Graham Percival <gpermus@gmail.com>
2583 * Documentation/user/invoking.itely : minor update from mailist.
2585 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2587 * lily/ various: Introduce stream events of types Prepare,
2588 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2589 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2591 * lily/global-context*.cc: Time is now -inf before iteration
2594 * lily/include/context.hh: Removed unique_, init_
2596 * Documentation/topdocs/NEWS: Make the feathered beam example
2597 avoid triggering a bug.
2599 2006-06-24 Graham Percival <gpermus@gmail.com>
2601 * Documentation/user/ various: small additions from mailist.
2603 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2605 * ly/performer-init.ly: Add some missing links in the context
2606 hierarchy for MIDI output. There are probably some more missing!
2608 2006-06-21 Graham Percival <gpermus@gmail.com>
2610 * Documentation/user/ various: minor spelling fixes;
2611 thanks Dave Luttinen!
2613 * Documentation/user/ various: small clarifications;
2614 thanks Anthony Youngman!
2616 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2618 * po/fr.po: add \n appropriately.
2620 * lily/lexer.ll: remove ? from version-seen?
2622 2006-06-19 John Mandereau <john.mandereau@free.fr>
2624 * po/fr.po; update translation, by Jean-Charles Malahieude and
2627 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2629 * THANKS: add Markus Schneider.
2631 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2632 Staff_symbol_engraver
2634 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2635 replace staff_engraver
2637 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2640 * lily/staff-collecting-engraver.cc
2641 (acknowledge_end_staff_symbol): new function
2643 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2645 * lily/staff-collecting-engraver.cc
2646 (acknowledge_end_staff_symbol): new function.
2648 * lily/main.cc: switch on relocation by default.
2650 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2652 * lily/spacing-spanner.cc (musical_column_spacing): set
2653 compound_fixed_note_space to 0.0. Document why.
2655 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2656 range of inverse_hooke_
2657 (Simple_spacer): init completely.
2659 (get_line_configuration): don't use cols.resize(); it introduces
2662 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2664 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2666 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2667 try. Divide by beatlength.
2669 * input/regression/beaming-ternary-metrum.ly: update doc.
2670 add beatLength hack.
2672 * scm/music-functions.scm (make-time-signature-set): add
2673 standard-beat-grouping.
2675 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2677 * input/regression/tie-whole.ly: new file.
2679 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2680 cross center of note head in case of invisible stem.
2682 2006-06-16 Graham Percival <gpermus@gmail.com>
2684 * Documentation/user/ various: small fixes from mailist.
2686 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2688 * lily/breathing-sign.cc (offset_callback): idem.
2690 * lily/align-interface.cc (align_to_fixed_distance): remove
2693 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2696 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2698 * VERSION (PACKAGE_NAME): release 2.9.9
2700 * ly/lilypond-book-preamble.ly: add \version
2702 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2704 * scripts/lilypond-book.py (PREAMBLE_LY): include
2705 lilypond-book-preamble.ly
2707 * lily/stem.cc (get_beaming): return max of 0 and
2708 scm_ilength. Fixes slurring from/to beams.
2710 * ly/lilypond-book-preamble.ly: new file.
2712 * lily/slur.cc: add inspect-index feature.
2714 2006-06-13 Graham Percival <gpermus@gmail.com>
2716 * Documentation/user/tutorial.itely: trivial fix.
2718 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2720 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2721 all non-event music in the parser via MAKE_SYNTAX.
2723 * lily/parser-scheme.cc: Add ly:parser-error function
2725 * scm/paper.scm: fix typo
2727 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2731 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2734 * buildscripts/output-distance.py (test_compare_signatures):
2736 (read_signature_file): use new signature format.
2738 * scm/stencil.scm (write-system-signature): simpler signature
2741 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2744 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2745 stem_end_position, but estimate instead.
2747 * lily/tuplet-bracket.cc (calc_positions): look at
2748 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2749 brackets narrower than beams.
2751 * lily/lexer.ll: set version-seen? even if version is
2754 * lily/rest.cc (y_offset_callback): bugfix: decide position
2755 override based on scm_is_number(). Fixes \rest on center staff
2758 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2759 patterns for 16th triplets.
2761 2006-06-10 Graham Percival <gpermus@gmail.com>
2763 * Documentation/user/ page.itely, global.itely: editing
2766 * Documentation/user/ various: findex -> funindex.
2768 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2770 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2771 insert extra tuplet events.
2773 2006-06-10 Graham Percival <gpermus@gmail.com>
2775 * Documentation/user/programming-interfaces.itely: add
2778 * python/convertrules.py: add annotatefoo -> annotate-foo
2781 * Documentation/user/global.itely: start editing.
2783 * Documentation/user/page.itely: major editing, new spacing
2786 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2788 * scm/define-markup-commands.scm (wordwrap-markups): use
2789 output-def 'line-width if undefined.
2791 * HACKING: trim outdated info.
2793 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2795 * scm/define-grobs.scm (all-grob-descriptions): Add
2796 line-spanner-interface to all grobs that already have
2797 text-spanner-interface or dynamic-text-spanner-interface
2799 * scm/page.scm: Rename annotate{headers,systems,page}->
2802 * input/regression/page-spacing.ly,
2803 input/regression/page-layout-manual-position.ly: idem
2805 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2807 * lily/line-spanner.cc: cleanup property list.
2809 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2810 generator expressions (2.3 compat).
2812 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2814 * lily/vertical-align-engraver.cc: Make sure that the
2815 align{Above,Below}Context properties are included in the automatic
2818 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2820 * scm/paper-system.scm (paper-system-annotate): also annotate the
2821 estimated pure-Y-extent
2823 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2825 * lily/system.cc (break_into_pieces): set the estimated height
2826 of each child system
2828 * lily/stem.cc (pure_height): new pure-Y-extent callback
2830 * lily/staff-symbol-referencer.cc (callback): don't destroy
2831 the staff-position property
2833 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2834 consider_suicide into two functions
2836 * lily/constrained-breaking.cc (resize): use the new pure
2837 callbacks to estimate the height of a system
2839 * lily/axis-group-interface.cc (pure_group_height): new
2840 side-effect-free VerticalAxisGroup height-callback
2842 * lily/align-interface.cc (get_extents_aligned_translates):
2843 split align_elements_to_extents into two functions
2844 (get_pure_child_y_translation): new function
2846 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2848 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2850 * lily/paper-score.cc: cache break_indices and columns
2852 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2854 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2856 * lily/font-config.cc (init_fontconfig): do the init if
2857 cache_file, but don't look at cache_file.
2859 * input/regression/quote-tie.ly: new file.
2861 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2862 to Head_event_tuple, so we deal gracefully with ties on
2865 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2868 2006-06-08 Graham Percival <gpermus@gmail.com>
2870 * input/test/ smart-transpose.ly, reverse-music.ly:
2871 \applyMusic to music functions update, thanks Michael!
2873 2006-06-07 Graham Percival <gpermus@gmail.com>
2875 * input/test/ add-staccato.ly, add-text-script.ly,
2876 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2877 music functions update, thanks to Michael Meixner.
2879 * Documentation/user/music-glossary.tely: small fix
2882 * Documentation/user/ various: minor additions from mailist.
2884 * Documentation/user/lilypond.tely, basic-notation.itely:
2885 small test of @funindex. (works here)
2887 * input/test/font-table.ly: reduce size to partially
2888 de-ugly version in manual.
2890 * Documentation/user/page.itely: new file (split former
2891 "global issues" into "page settings" and "non-musical
2894 * Documentation/user/ various: fix @ref{}s to match
2895 new chapter names (above).
2897 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2899 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2901 2006-06-06 Graham Percival <gpermus@gmail.com>
2903 * Documentation/user/advanced-notation.itely: add example
2904 for segno/coda on barline.
2906 * tex/texinfo.tex: merge from upstream.
2908 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2910 * scripts/lilypond-book.py (process_snippets): Argument fix.
2913 * buildscripts/builder.py:
2916 * Documentation/user/SConscript: More SCons fixes.
2918 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2920 * lily/font-config.cc (init_fontconfig): Only initialize if
2921 global cache_file is found.
2923 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2925 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2928 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2930 * VERSION (PACKAGE_NAME): release 2.9.8
2932 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2933 function. Delay ledger modifying ledgered grobs to
2934 stop_translation_timestep(), to ensure that we're ledgering
2935 according to the new spanner.
2936 (acknowledge_staff_symbol): don't check for non-NULL
2937 staff_sym->get_bound()
2939 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2942 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2945 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2946 directly from srcdir/stepmake/aclocal.m4
2948 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2951 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2953 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2955 * lily/simple-spacer.cc (get_line_configuration): add
2956 keep-inside-line rods
2957 (struct Column_desc): add constructor
2958 (struct Rod_desc): add constructor
2959 (get_line_forces): check for forced page breaks here too
2961 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2962 support/elements cycles between InstrumentNames and AxisGroups
2964 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2966 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2968 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2969 make-txt-files target.
2971 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2972 make-txt-files target.
2974 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2976 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2979 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2981 * Documentation/user/instrument-notation.itely,
2982 input/regression/breathing-sign-ancient.ly,
2983 input/test/divisiones.ly: Removed redundant property settings for
2986 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2987 fix lyrics alignment problems. They are implemented now as scheme
2988 functions that add the appropriate unicode char to the first lyric
2989 event rather than adding a separate lyric event. Minor edit of
2992 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2994 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2995 pollute src dir with built .txt files, but install directly from
2996 Documentation/topdocs/out/
2998 * buildscripts/output-distance.py
2999 (ComparisonData.create_html_result_page): put version/directories
3002 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3005 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3006 Patch by Karl Hammar
3008 * buildscripts/readlink.py: add file.
3009 Patch by Karl Hammar
3011 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3013 * lily/tuplet-number.cc (print): prevent stencil from being
3016 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3018 * scm/stencil.scm (write-system-signature): explicitly
3019 -well, superfluously- close output port.
3021 * buildscripts/output-distance.py (main): oops. Add extra argument.
3023 2006-06-05 Graham Percival <gpermus@gmail.com>
3025 * Documentation/user/music-glossary.tely: clarified example
3026 from Francisco Vila, thanks!
3028 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3030 * input/regression/spacing-section.ly: new file.
3032 * lily/input.cc (programming_error): new function.
3034 * lily/spacing-engraver.cc (try_music): new function. Accept
3035 spacing-section-event
3037 * lily/spacing-spanner.cc (set_springs): take slices of all
3038 columns for spacing.
3040 * lily/include/paper-column.hh (class Paper_column): add
3041 Paper_column::compare.
3043 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3045 * scm/define-music-types.scm (music-descriptions): add
3048 * lily/music-iterator.cc (report_event): use programming_error for
3049 sending non-event error.
3051 * lily/input.cc (programming_error): new function
3053 * buildscripts/output-distance.py (main): use compare-XXX for
3055 (main): --threshold option, default at 0.30
3057 * output-distance.py (main): add --threshold option.
3059 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3061 * scm/paper-system.scm (paper-system-annotate): fix problem when
3062 annotating an empty system
3064 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3066 * GNUmakefile.in: reinstate old web tar/copying.
3068 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3070 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3071 nothing changes. (Erik S)
3073 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3076 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3078 * scm/define-markup-commands.scm (whiteout): do not force
3079 foreground color of argument markup to black.
3081 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3082 the left of the arrow, instead of below the arrow name, so that,
3083 when two little arrows are vertically stacked, their dimensions
3084 and name should not overlap. Add a color key parameter.
3086 * scm/paper-system.scm (paper-system-annotate): Annotate
3087 next-space+next-padding instead of next-space. Annotate space
3088 between next-padding and next-space+padding, respectively, and
3089 following system extent and refpoint-Y-extent. Use colors.
3091 * scm/page.scm (annotate-page): translate annotations slightly to
3094 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3096 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3097 fix for x-staff slurs. Thanks Joe!
3099 * buildscripts/output-distance.py
3100 (SystemLink.output_expression_change_count): keep track of changed
3101 details, and dump in details html page.
3103 * input/regression/figured-bass-staff.ly: add note about setting
3104 properties in Staff context.
3106 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3107 add slurs and ties to support too.
3109 * buildscripts/output-distance.py (main): set dest_dir
3110 argument. Add --max-count option.
3112 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3114 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3115 shortcuts for special unicode chars that are useful in chant
3116 notation. Revised exisiting and added new comments.
3118 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3120 * make/mutopia-rules.make: remove duplicate recipe.
3122 2006-06-02 Werner Lemberg <wl@gnu.org>
3124 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3125 Add support for U+0132 (IJ) and U+0133 (ij).
3127 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3129 * buildscripts/output-distance.py (FileLink): new class. collect
3130 info systems from one .ly file.
3131 (FileLink.link_files_for_html): further tweaks.
3133 2006-06-02 Graham Percival <gpermus@gmail.com>
3135 * tex/texinfo.tex: partial fix for @funindex.
3137 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3140 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3142 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3144 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3145 @example too. Backportme.
3147 2006-06-02 Graham Percival <gpermus@gmail.com>
3149 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3150 from Werner Lemberg.
3152 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3154 * Documentation/user/music-glossary.tely: additional spanish
3155 updates and a lyrics fix in an example.
3157 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3159 * scm/define-grob-properties.scm: Previous patch contained
3160 spurious line from another patch not yet committed. Fixed.
3162 * scm/define-grob-properties.scm: Add missing doc strings for
3165 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3167 * buildscripts/output-distance.py
3168 (ComparisonData.write_text_result_page): separate the scores, sort
3171 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3174 * buildscripts/output-distance.py (me_path): use argv[0] for
3176 (ComparisonData.img_cell): use colored borders.
3178 * scm/stencil.scm (write-system-signature): escape newlines too.
3179 (write-system-signature): use (1,-1) interval for empty interval
3181 2006-01-01 Graham Percival <gpermus@gmail.com>
3183 * Documentation/user/music-glossary.tely: Spanish updates
3184 from Francisco Vila.
3186 * Documentation/user/lilypond-book.itely: addition from
3189 * Documentation/user/ various: edits, small additions
3192 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3194 * GNUmakefile.in (tree-lib-prefix-current):
3195 (tree-share-prefix-current): Use version number in tree, add
3198 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3200 * GNUmakefile.in: write VERSION, again.
3202 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3203 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3205 * stepmake/aclocal.m4: robuster version detection.
3207 * buildscripts/output-distance.py
3208 (ComparisonData.create_html_result_page): copy only if file
3209 exists, fixup src paths.
3211 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3213 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3215 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3216 Another datarootdir reto.
3218 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3219 available. This should be moved to postinstall-lilypond-doc.
3221 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3223 * GNUmakefile.in: simplify local-WWW-post.
3224 remove -type l from find.
3226 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3227 fixes. Don't follow symlinks.
3228 (ComparisonData.create_html_result_page): remove previous results.
3229 insert ../python in path.
3231 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3233 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3235 * config.make.in (datadir): Add datarootdir to silence autoconf.
3237 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3239 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3241 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3243 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3244 slash beams too wide.
3246 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3248 * VERSION: release 2.9.7
3250 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3252 * lily/relocate.cc (read_relocation_dir): Do not blindly
3255 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3257 * lily/parser.yy: replace THIS by PARSER
3259 * Documentation/index.html.in: add link to test-results.html page.
3261 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3263 * scm/translation-functions.scm (format-bass-figure): translate
3264 digits over 10 to the left
3266 * scm/define-markup-commands.scm (translate-scaled): new markup.
3268 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3271 * ly/engraver-init.ly: add Figured_bass_engraver
3273 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3275 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3277 * lily/score-engraver.cc (announce_grob): only note START announces.
3279 * lily/include/engraver-group.hh (Translator_group):
3280 acknowledge_hash_table_ is now drul.
3282 * lily/engraver.cc (announce_end_grob): new method.
3284 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3286 * lily/translator-dispatch-list.cc (create): take start_end argument.
3288 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3289 acknowledge_static_array_ to drul
3291 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3293 * scm/define-grob-interfaces.scm
3294 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3296 * scm/define-grobs.scm (all-grob-descriptions): add
3297 BassFigureAlignmentPositioning
3299 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3300 number stays up to date. Backportme.
3302 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3304 * Documentation/user/basic-notation.itely (Bar lines): Document
3307 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3309 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3311 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3312 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3315 * Resurrect `scons lily' build.
3317 * SConstruct (symlink_tree): Bugfix: link
3318 music-drawing-routines.ps to file iso directory.
3320 * lily/SConscript: Remove kpath-guile from LIBS.
3322 * SConstruct (libdir_package_version): Typo.
3323 (configure): Comment-out fontforge for lack of fontforge.pc .
3324 Also add libdir* to environment.
3326 2006-05-30 Graham Percival <gpermus@gmail.com>
3328 * Documentation/user/ various: minor additions from mailist and
3331 2006-05-30 Paco <fravd@ya.com>
3333 * Documentation/user/music-glossary.tely: numerous corrections and
3334 some new translations.
3336 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3340 * buildscripts/output-distance.py
3341 (ComparisonData.create_html_result_page): new routine: summarise
3342 results in HTML page with images.
3343 (ComparisonData.create_text_result_page): create summary text files too.
3345 * GNUmakefile.in (web-ext): package .signature files too. They
3348 * scm/stencil.scm (write-system-signature): typo.
3350 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3352 * scm/stencil.scm (write-system-signature): better escaping.
3353 only write signature for music systems, not for markup systems.
3355 * scm/framework-ps.scm (output-framework): dump-signatures support
3358 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3360 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3361 for -dno-point-and-click
3363 * lily/grob.cc (get_print_stencil): don't read
3364 point_and_click_global to determine whether to set grob-cause.
3366 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3368 * buildscripts/output-distance.py (main): new function.
3369 (ComparisonData): new class.
3371 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3372 careful with generating new LedgerLineSpanners.
3374 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3376 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3377 context. This fixes double ledger lines in output.
3379 * lily/system.cc (get_paper_system): remove 3 layer limit.
3381 * buildscripts/output-distance.py (SystemLink.distance): new
3382 file. Compare signatures.
3384 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3386 * lily/grob-array.cc (remove_duplicates): rename from
3387 uniq(). Sort before calling uniq() so it actually works.
3389 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3391 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3392 \version from lilypond file snippet.
3393 (Lilypond_file_snippet.ly): oops. typo.
3394 (find_toplevel_snippets): urgh. again.
3396 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3397 prevent duplicated broken items in output.
3399 * scm/framework-eps.scm (output-classic-framework): only dump if
3400 dump-signatures is set.
3402 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3404 * scm/stencil.scm (write-system-signature): new routine: write
3405 python parseable signature of a separate paper system.
3408 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3410 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3414 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3416 * translator-group.cc: send music events to engravers in
3417 non-bottom contexts.
3419 * tuplet-engraver.cc: process tuplet brackets in correct order.
3421 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3423 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3424 arg 2 might point us to a new binary (patch by Karl Hammar)
3426 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3428 * VERSION (PACKAGE_NAME): release 2.9.6
3430 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3432 * Documentation/user/*.itely: 2nd
3433 attempt: replace funindex -> findex globally.
3435 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3437 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3438 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3440 * scm/define-music-display-methods.scm: display methods for
3441 breaks. Fix \applyOutput.
3443 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3445 * Documentation/user/macros.itexi: comment out funindex expansion.
3447 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3450 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3451 Karl Hammar. Backportme.
3453 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3455 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3457 * Documentation/user/programming-interface.itely (Running a
3458 function on all layout objects): idem.
3460 * Documentation/user/introduction.itely (Automated engraving):
3461 update \applyOutput syntax
3463 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3464 remove debugging hook.
3466 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3469 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3471 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3472 TEXI2DVI_FLAGS to texi2dvi invocation.
3474 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3476 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3477 works. More work is done by iterator now, and engraver has been
3478 very much simplified.
3480 * lily/translator-group.cc: try_music is now invoked through a
3483 * lily/*-iterator.cc: Massive cleanups. Junked
3484 try_music_in_children globally. Renamed try_music to report_event,
3485 and made that method descend to a bottom context automatically.
3487 * lily/event-iterator.cc: New file.
3489 * lily/output-property-iterator.cc,
3490 lily/old-lyric-combine-music-iterator.cc: Removed.
3492 * python/convert-rules.py: Modified the syntax for \applyOutput.
3494 2006-05-23 Graham Percival <gpermus@gmail.com>
3496 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3499 * Documentation/user/ various: stuff that might have helped
3500 to fix the pdf creation, plus some minor doc additions.
3502 * Documentation/user/changing-defaults.itely: remove @b from
3503 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3505 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3507 * lily/beaming-pattern.cc (beamify): deal with negative start
3508 moments for beaming patterns.
3510 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3512 * lily/beaming-info.cc (beamify): new function: read beatLength
3513 and beatGrouping from context.
3515 * input/regression/beam-beat-grouping.ly (Module): new file.
3517 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3519 * lily/beam.cc (get_beam_segments): generate events for
3520 max_connect_ case too.
3521 (get_beam_segments): read Stem::max-beam-connect.
3523 * input/regression/beam-single-stem.ly: new file.
3525 * lily/stem.cc (set_beaming): use #f as signaling value for
3528 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3530 * lily/beam.cc (set_beaming): read clip-edges property.
3531 (calc_direction): don't suicide for single stem.
3533 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3534 argument, remove 1<<15 hack. Remove clip_edges()
3536 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3538 2006-05-21 Graham Percival <gpermus@gmail.com>
3540 * Documentation/user/basic-notation.itely: reorg.
3542 * Documentation/user/ various: minor fixes.
3544 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3546 * lily/stencil-expression.cc (register_stencil_head): opps, append
3547 to cdr of static SCM object.
3549 2006-05-19 Graham Percival <gpermus@gmail.com>
3551 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3552 update framework for command index. DOC WRITERS: use @funindex
3553 instead of @cindex @code{}.
3555 * Documentation/user/ various: replace @cindex @code{} => @funindex
3557 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3559 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3560 case positions is set manually.
3562 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3564 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3567 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3569 * Documentation/user/changing-defaults.itely (Contexts explained):
3570 use absolute dimension for @image.
3572 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3573 out image for illustration too.
3574 ($(outdir)/%.png): add more png <-> eps rules.
3576 2006-05-17 Graham Percival <gpermus@gmail.com>
3578 * Documentation/user/ various: remove trailing whitespace, cosmetic
3579 change to reduce changes produced by diff.
3581 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3583 * lily/main.cc (do_chroot_jail): correctness tweak.
3585 * python/lilylib.py (system): import subprocess in system () only.
3587 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3589 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3590 variable. Backportme.
3592 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3594 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3596 2006-05-17 Werner Lemberg <wl@gnu.org>
3598 * lily/lexer.ll (init_signature_has_table): Add
3599 `scm-scm-music-music'.
3601 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3602 (Generic_prefix_music_scm): Add rule for it.
3604 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3605 `quoted-transposition' property.
3607 * ly/music-functions-init.ly (transposedCueDuring): New function.
3609 * scm/define-music-properties.scm (all-music-properties): Updated.
3611 * Documenation/topdocs/NEWS.itely: Document it.
3613 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3615 * python/lilylib.py (system): move import subprocess to system()
3618 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3620 * VERSION (PATCH_LEVEL): release 2.9.5
3622 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3625 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3627 2006-05-16 Graham Percival <gpermus@gmail.com>
3629 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3631 * Documentation/user/ various: minor fixes.
3633 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3635 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3637 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3639 * Documentation/user/advanced-notation.itely (Instrument names):
3640 Modified obsolete instruction on how to move instrument names away
3641 from the staves. Hmm, at second thought the bug probably has been
3642 solved, so the full bug description should probably be removed.
3644 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3646 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3647 currentCommandColumn.
3649 * lily/hairpin.cc (print): also add padding for non-neighbor
3652 * scm/define-context-properties.scm
3653 (all-user-translation-properties): add hairpinToBarline
3655 * input/regression/hairpin-to-barline.ly: new file.
3657 * lily/context.cc (internal_send_stream_event): thinko fix.
3659 * lily/tie.cc (set_default_control_points): robustness fix.
3661 * python/musicxml.py (Part.interpret): don't complain about
3662 incomplete measures.
3664 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3665 new music if last_event_chord() returned None.
3667 * python/musicxml.py (Part.interpret): skip back over chord notes.
3669 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3671 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3672 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3673 lily/slash-repeat-engraver.cc,
3674 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3675 iterator sends PercentEvents
3677 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3678 rework tuplets: send start/stop events to engraver
3680 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3681 dispatchers event-source and events-below to Context
3683 2006-05-15 Graham Percival <gpermus@gmail.com>
3685 * Documentation/user/README.txt: update info for doc writers.
3687 * Documentation/user/programming-interface.itely: integrate
3688 Nicolas' fixes for chapter rewrite.
3690 * Documentation/user/ various: minor fixes.
3692 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3694 * lily/clef-engraver.cc: cleanup.
3696 * Documentation/user/GNUmakefile: dist context-example.eps too.
3698 * lily/key-engraver.cc (create_key): use
3699 explicitKeySignatureVisibility for cancellation too.
3701 * lily/font-config.cc (init_fontconfig): don't close file if
3704 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3706 * Documentation/topdocs/NEWS.tely: niente and rotation news
3708 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3710 * lily/include/stencil.hh
3711 * lily/stencil.cc (rotate): new function. Makes it possible
3712 to rotate a stencil around a given offset.
3714 * lily/grob.cc (get_print_stencil): add rotation support
3716 * lily/stencil-interpret.cc (interpret_stencil_expression):
3717 add rotation support
3719 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3721 * scm/define-grob-properties.scm: add 'rotation property
3723 * scm/define-markup-commands.scm: add rotate markup command
3725 * scm/output-ps.scm: add rotation support in PostScript backend
3727 * scm/output-svg.scm: add rotation support in SVG backend
3729 2006-05-13 Graham Percival <gpermus@gmail.com>
3731 * Documentation/user/music-glossary.itely: French correction.
3733 * Documentation/user/programming-interface.itely: major
3734 new docs, some reorg, some info from Nicolas.
3736 * Documentation/user/ various: small fixes.
3738 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3740 * Documentation/user/programming-interface.itely (Markup
3741 programmer interface): Remove duplicate text.
3743 2006-05-12 Graham Percival <gpermus@gmail.com>
3745 * Documentation/user/context-example.eps: new file.
3747 * Documentation/user/changing-defaults.itely: set up file to
3750 * Documentation/user/programming-interface.itely: changes
3753 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3755 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3757 2006-05-11 Graham Percival <gpermus@gmail.com>
3759 * Documentation/user/programming-interface.itely: first round of
3760 editing and merging emails from Nicolas.
3762 * Documentation/user/scheme-tutorial: minor edit.
3764 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3766 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3768 (Xml_node.message): use it.
3770 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3771 oops. Add duration argument.
3773 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3775 * lily/paper-column-engraver.cc (make_columns):
3776 * scm/define-grobs.scm: Revert my previous change and set the default
3777 in define-grobs.scm instead.
3779 2006-05-09 Graham Percival <gpermus@gmail.com>
3781 * Documentation/user/changing-defaults.itely: general editing,
3782 info about \set and \override.
3784 * Documentation/user/tweaking.itely, advanced-notation.itely:
3785 fixes from Dave Luttinen, thanks!
3787 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3789 * lily/paper-column-engraver.cc (make_columns): By default, a column
3790 needs to be breakable.
3792 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3794 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3796 (musicxml_time_to_lily): idem
3797 (musicxml_key_to_lily): idem
3798 (instrument_drumtype_dict): dict for supported drumtypes.
3799 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3800 moments and pending mm rests
3801 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3802 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3803 (musicxml_voice_to_lily_voice): add mode change.
3804 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3805 speed and less memory usage (factor 5 to 10).
3806 (convert): write -defs.ly and driver file separately so people
3807 can script their own part extraction.
3809 * python/musicxml.py (minidom_demarshal_node): new function:
3810 separate minidom handling.
3811 (lxml_demarshal_node): new function: support lxml.etree too.
3812 (Xml_node.message): new function: verbose error message, with XML
3813 path to offending node.
3814 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3815 (Part_list.generate_id_instrument_dict): new method: collect
3816 instrument names, to be able to set drum_type.
3817 (Part.interpret): handle underfull measures
3818 (Part.interpret): assign instrument names.
3820 * python/musicexp.py (Output_printer.close): new method
3821 (MusicWrapper.print_ly): new class: support other modes,
3823 (BarCheck.print_ly): new class. Support bar checks, with comments
3824 and fancy barchecks.
3825 (NoteEvent.__init__): also set drum_type for drum notes.
3826 (MultiMeasureRest.lisp_expression): dump mm rests.
3828 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3829 line-break-permission if forbidBreak is not set.
3831 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3833 * scm/define-context-properties.scm:
3834 * scm/define-grob-properties.scm:
3835 * scm/define-grobs.scm:
3836 * scm/define-music-display-methods.scm:
3837 * scm/define-music-properties.scm:
3838 * scm/define-music-types.scm:
3839 * scm/music-functions.scm:
3840 * ly/declarations-init.ly:
3841 * lily/include/constrained-breaking.hh:
3843 * lily/spaceable-grob.cc:
3844 * lily/simple-spacer.cc:
3845 * lily/paper-score.cc:
3846 * lily/paper-column.cc:
3847 * lily/paper-column-engraver.cc:
3849 * lily/gourlay-breaking.cc:
3850 * lily/constrained-breaking.cc:
3851 * python/convertrules.py:
3852 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3853 "page-break-penalty" and "line-break-permission".
3854 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3855 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3857 * lily/bar-engraver.cc:
3858 * lily/beam-engraver.cc:
3859 * lily/forbid-break-engraver.cc:
3860 * lily/ligature-engraver.cc:
3861 * lily/paper-column-engraver.cc:
3862 * lily/percent-repeat-engraver.cc:
3863 * lily/score-engraver.cc:
3864 * lily/score-engraver.hh:
3865 * lily/paper-column-engraver.hh:
3866 Inter-engraver communication regarding line breaks is done through context
3867 properties (Score.forbidBreak) instead of function calls.
3869 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3871 * VERSION (PACKAGE_NAME): release 2.9.4
3873 2006-05-08 Graham Percival <gpermus@gmail.com>
3875 * Documentation/user/working.itely: proofreading from Dave
3878 * Doucmentation/user/README.txt: updated with manual style info.
3880 * Documentation/user/ various: trim linewidth to 78 chars.
3882 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3884 * scm/define-grob-properties.scm (all-internal-grob-properties):
3885 remove chord-tremolo property.
3887 * lily/beam.cc (get_beam_segments): don't use stem position as
3888 base for broken ends.
3890 2006-05-06 Graham Percival <gpermus@gmail.com>
3892 * Documentation/user/putting.itely: proofreading from Dave
3895 * Documentation/user/ various: more reorg and clarifications.
3897 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3899 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3901 * ly/music-functions-init.ly: new function featherDurations
3903 * lily/beam.cc: read grow-direction for feathered beaming.
3905 * Documentation/topdocs/NEWS.tely (Top): typo.
3907 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3909 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3912 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3913 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3914 used by music streams.
3916 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3917 lily/stream-event.cc, lily/stream-event-scheme.cc,
3918 lily/listener.cc, lily/scheme-listener.cc,
3919 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3920 lily/include/stream-event.hh, lily/include/listener.hh,
3921 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3922 Created data structures for music streams.
3924 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3926 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3927 construction of a beam.
3930 * flower/include/std-vector.hh (default_compare): use only one comparison.
3932 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3933 (note-by-number): further attachment fixes.
3935 * scm/lily-library.scm (ordered-cons): new function.
3936 (interval-index): new function
3938 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3940 * lily/note-head.cc (get_stem_attachment): new function.
3942 * scm/define-markup-commands.scm (note-by-number): read 'style
3945 * input/regression/markup-note.ly: show note-head style option.
3947 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3950 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3952 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3954 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3956 * lily/include/constrained-breaking.hh: GCC 4 fix.
3958 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3960 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3961 Replace it with functions get_line_forces and get_line_configuration.
3962 (class Simple_spacer): Make data private.
3963 Rewrite compression algorithm to be faster and simpler.
3965 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3966 * lily/gourlay-breaking.cc (solve):
3967 * lily/constrained_breaking.cc (space_line):
3968 Change it to the new simple-spacer code.
3970 * lily/paper-score.cc (get_paper_systems):
3973 Delay breaking the systems until they are requested.
3974 (find_break_indices):
3975 Use vsize for indices.
3977 Move the "Calculating line breaks" message here.
3979 * lily/system.cc (pre_processing):
3980 Move the "Calculating line breaks" message away from here.
3981 (break_into_pieces):
3982 Allow multiple calls to this function in sequence (with touching-but-
3983 not-overlapping breakpoints).
3985 * lily/constrained-breaking.cc:
3986 Replace most of the get_XXXX functions with get_line_details.
3987 Only calculate the force for each line. Calculate configurations only
3988 for the lines we will actually use.
3989 Replace cols_ with lines_.
3991 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3993 * mf/GNUmakefile (depth): remove FC_FIND.
3995 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3997 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3999 * scm/framework-ps.scm (write-preamble): new function.
4000 (write-preamble): load mac fonts via fondu, even if gs-font-load
4003 2006-05-03 Werner Lemberg <wl@gnu.org>
4005 * mf/GNUmakefile (FC_FIND): Fix typo.
4007 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4009 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4011 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4013 * stepmake/aclocal.m4: run python-config for crosscompiling
4016 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4017 -f png for HTML, TEXINFO formats.
4019 * input/tutorial/lbook-html-test.html: new file.
4021 * lily/include/tie-formatting-problem.hh (class
4022 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4023 [column, direction]. This fixes laissez vibrer ties.
4025 * flower/include/tuple.hh (struct Tuple2): new file.
4027 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4028 $(FCMATCH), only if $(NCSB_DIR) not set.
4030 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4032 * config.make.in (DOCUMENTATION): set FCMATCH.
4034 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4036 2006-05-03 Graham Percival <gpermus@gmail.com>
4038 * Documentation/user/ various: final round of reorg.
4040 * Documentation/user/instrument-notation.itely: some more
4041 fixes from Eduardo, thanks!
4043 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4045 * VERSION (PACKAGE_NAME): release 2.9.3
4047 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4049 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4051 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4053 * scm/define-grob-properties.scm (all-user-grob-properties):
4054 Correct typo, thanks to Eduardo.
4056 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4058 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4060 * buildscripts/lilypond-words.py (F): indent fix.
4062 * input/regression/tie-arpeggio-collision.ly: new file.
4064 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4065 function: store outlines per column rank.
4067 * lily/include/tie-configuration.hh (class Tie_configuration): add
4068 column_ranks_ to specification and configuration, to distinguish
4069 between ties for different heads in arpegiated chords.
4071 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4073 * *.py: more 4 space indents.
4075 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4077 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4079 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4081 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4083 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4085 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4087 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4089 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4091 * python/convertrules.py (conv): indent 4 for python files.
4093 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4095 * Documentation/user/changing-defaults.itely (Creating contexts):
4096 Clarify \new semantics.
4098 2006-04-28 Graham Percival <gpermus@gmail.com>
4100 * Documentation/user/ various: major new sections in the
4101 Learning manual, slight reorg elsewhere.
4103 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4105 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4107 * scm/framework-ps.scm (output-framework): remove PageMedia
4109 2006-04-27 Graham Percival <gpermus@gmail.com>
4111 * Documentation/user/ tweaks.itely, working.itely: new
4112 files, being more advanced "learning manual" chapters.
4114 * Documentation/user/ tutorial, putting, lilypond: reorg.
4116 2006-04-26 Graham Percival <gpermus@gmail.com>
4118 * input/regression/lyric-combine-polyphonic.ly: fixed test
4119 (no more "can't find context `one'" error).
4121 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4123 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4125 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4127 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4129 * lily/relocate.cc (read_relocation_dir): new function.
4131 2006-04-26 Graham Percival <gpermus@gmail.com>
4133 * Documentation/user/instrument-notation.itely: a few more fixes
4134 from Eduardo, thanks!
4136 * Documentation/user/README.txt: new file; contains info on
4137 style that used to be in lilypond.tely.
4139 * Documentation/user/ various: first round of doc reorg.
4141 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4142 graphic; this probably causes problems on some pdf
4143 viewers, notably Adobe Acrobat.
4145 2006-04-24 Graham Percival <gpermus@gmail.com>
4147 * Documentation/user/instrument-notation.itely: many alterations
4148 to Vocal music, from Eduardo Viera.
4150 2006-04-23 Graham Percival <gpermus@gmail.com>
4152 * Documentation/user/instrument-notation.itely: fix \new
4153 instead of \context problem.
4155 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4157 * lily/relocate.cc (expand_environment_variables): new function.
4159 (read_relocation_file): id.
4161 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4163 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4165 * ly/engraver-init.ly: remove old comments from TabVoice
4167 2006-04-20 Graham Percival <gpermus@gmail.com>
4169 * Documentation/user/instrument-notation.itely: added Erlend's
4170 latest doc patch, thanks!
4172 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4174 * lily/include/slur.hh:
4176 * lily/phrasing-slur-engraver.cc:
4177 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4178 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4179 Slur_engraver:: and putting it in
4180 Slur::auxiliary_acknowledge_extra_object ().
4182 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4184 * lily/note-collision.cc: fix a comment
4186 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4188 * stepmake/bin/add-html-footer.py: fix footer position in
4189 generated html files: before </body> and </html> tags.
4191 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4193 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4194 Earlier successive `make' commands finally compiled ok.
4196 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4198 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4200 * lily/include/stem-tremolo.hh:
4201 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4205 * lily/include/lookup.hh: add rotated_box ()
4207 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4209 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4210 been generated. Fixes "can't get `--help'" bug after make clean.
4212 * THANKS: alphabetize contributors.
4214 2006-04-17 Graham Percival <gpermus@gmail.com>
4216 * Documentation/user/instrument-notation.itely: added Erlend's
4217 tabs and banjo doc patch. Thanks!
4219 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4221 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4223 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4225 * scm/output-lib.scm: add some more predefined string tunings.
4227 * Documentation/user/instrument-notation.itely: and doc them.
4229 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4231 * ly/engraver.ly: Remove obsolete comments.
4233 * ly/gregorian-init.ly: Define default layout block.
4235 * input/puer-fragment.ly: Updated and extended.
4237 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4239 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4240 pdf conversion behaviour.
4242 * flower/file-name.cc (dir_name)
4243 (get_working_directory): Move from relocate.cc.
4245 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4247 * lily/relocate.cc: Encapsulate sys/stat.h in
4250 2006-04-14 Graham Percival <gpermus@gmail.com>
4252 * Documentation/user/ various: small updates from Cameron
4253 and Juergen, thanks!
4255 * Documentation/user/ various: small updates of my own.
4257 * THANKS: 2.7 -> 2.8.
4259 2006-04-11 Graham Percival <gpermus@gmail.com>
4261 * scm/define-context-properties.scm: typo.
4263 * Documentation/user/ : many more small updates.
4265 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4267 * scm/define-music-types.scm: disposed "docme".
4269 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4271 * lily/hairpin.cc: make niente circles a bit smaller.
4273 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4275 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4276 get-pfa and get-*-fonts targets.
4278 2006-04-10 Graham Percival <gpermus@gmail.com>
4280 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4281 music-glossary, programming-interface: more minor fixes
4284 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4286 * scm/define-context-properties.scm: another old \property update.
4287 This time tested for compiling!
4289 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4291 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4293 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4295 * scm/define-context-properties.scm (all-user-translation-properties):
4296 * Documentation/user/global.itely (Page formatting): Compile fix.
4298 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4300 * Documentation/user/advanced-notation.itely (Polymetric
4301 notation): Update the example to use the "+" symbol and add link
4302 to input/test/compound-time.ly.
4304 2006-04-08 Graham Percival <gpermus@gmail.com>
4306 * scm/define-grob-properties.scm: clarify docs for #'direction.
4308 * scm/define-context-properties.scm: update old \property override.
4310 * Documentation/user/ advanced-notation, global, lilypond-book:
4311 more minor doc updates.
4313 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4315 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4317 * scm/backend-library.scm (search-gs): oops.
4319 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4321 * scripts/lilypond-book.py (output): use base, not filename for href.
4323 * scm/backend-library.scm: only look for gs.
4325 * scripts/lilypond-book.py (output): fix printfilename.
4327 * lily/parser.yy (music_function_musicless_prefix): fold together
4328 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4330 * lily/slur.cc (print): only set font-size if not set yet.
4332 * lily/slur-configuration.cc (add_score): improved layout of debug
4335 2006-04-05 David Feuer <David.Feuer@gmail.com>
4337 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4338 (draw_circle): Hopefully fixed regression.
4339 Improved documentation for several procedures.
4341 2006-03-04 Werner Lemberg <wl@gnu.org>
4343 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4345 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4347 * scripts/musicxml2ly.py (bindir): add dynamic
4350 2006-04-04 Graham Percival <gpermus@gmail.com>
4352 * Documentation/user/ basic-notation, advanced-notation, putting,
4353 instrument-notation, invoking, lilypond, THANKS: another ream of small
4354 fixes from the Doc Helpers.
4356 2006-04-03 David Feuer <David.Feuer@gmail.com>
4358 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4360 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4362 * Cleaned up interfaces between PostScript and Scheme, and moved
4363 computations from PostScript to Scheme:
4365 * music-drawing-routines.ps
4366 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4367 with stroke_and_fill throughout.
4368 (euclidean_length, print_letter, draw_box): Deleted unused
4369 procedures. If someone needs draw_box, implement it using
4370 draw_round_box; don't duplicate code.
4371 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4372 Refactored/cleaned up interfaces.
4375 * output-ps.scm: reordered arguments to PostScript functions to
4376 match new interfaces
4377 (glyph-string): Rewrote glyph-string.
4378 (grob-cause): Replaced string-append with format.
4379 (repeat-slash): Rewrote to do computation here.
4380 (round-filled-box): Rewrote to do computation here.
4382 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4384 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4386 * stepmake/stepmake/toplevel- targets.make: print help info about
4389 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4391 * input/regression/hairpin-circled.ly: new file
4393 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4395 * lily/hairpin.cc (print): add support for circled tip
4397 * scm/define-grob-properties.scm: add circled-tip parameter
4399 * scm/define-grobs.scm: init circled-tip to false
4401 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4403 * scm/music-functions.scm (quote-substitute): set
4406 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4408 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4411 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4413 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4415 2006-03-31 David Feuer <david.feuer@gmail.com>
4417 * scm/framework-ps.scm:
4419 * scm/output-ps.scm: glyph-string now produces smaller, more
4420 readable, and probably faster PostScript. Several findfont
4421 scalefont setfont instances changed to selectfont
4422 Hacked-up string-appends changed to formats.
4424 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4426 2006-03-30 Graham Percival <gpermus@gmail.com>
4428 * scm/lily-library.scm: make "no version" warning message more polite.
4430 * lily/music.cc: add double quotes to failed octave check.
4432 * Documentation/user/ advanced-notation, changing-defaults,
4433 instrument-notation, invoking, music-glossary: whole bunch of minor
4436 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4438 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4439 $(buildscriptdir) iso. depth.
4441 * VERSION (PACKAGE_NAME): release 2.9.1
4443 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4445 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4447 * VERSION (PATCH_LEVEL): bump version number.
4449 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4452 * lily/pango-font.cc (pango_item_string_stencil): use
4455 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4456 $(outdir)/emmentaler-%.svg): remove canary.
4458 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4459 glyphnames if we have a ttf font.
4461 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4463 * Documentation/user/advanced-notation.itely (Font selection):
4464 Corrected reference to the font-family-override.ly example.
4466 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4468 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4469 stem-tremolo object in the stem (or else the stem might not be
4472 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4474 * lily/ttf.cc (print_trailer): only print existing glyphs.
4476 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4478 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4479 position the tremolo based on the position of the notehead.
4481 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4482 notes and update the texidoc line with the new positioning rules.
4484 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4486 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4488 * scripts/lilypond-book.py (Module): set default for linewidth if
4491 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4493 * VERSION (PACKAGE_NAME): release 2.9.0.
4495 * input/regression/stem-tremolo-position.ly: new file.
4497 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4499 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4501 * lily/stem-tremolo.cc (print): position
4502 the tremolo depending only on the end of the stem
4503 and not on the notehead
4504 (raw_stencil): center, on the middle staff line, the
4505 flag that is closest to the end of the stem (previously
4507 (calc_width): add this callback to shorten a tremolo when
4508 it is beamed or it is stemup with a flag
4509 (style): add this callback to make a tremolo rectangular when
4510 it is beamed or it is stemup with a flag
4511 (rotated_box): this is like Lookup::beam but makes a rotated
4512 rectangle instead of a parallelogram
4514 * lily/stem.cc (calc_stem_info): make sure the stem
4515 is long enough to fit the tremolo
4516 (calc-length): reduce the length of tremolo stems since the
4517 tremolo code is now capable of better positioning
4519 * scm/define-grobs.scm: make calc_width the default beam-width
4520 callback for stem-tremolo and add the style callback
4522 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4524 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4527 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4529 * lily/ttf.cc (make_index_to_charcode_map): restore old
4532 2006-03-28 Werner Lemberg <wl@gnu.org>
4534 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4536 2006-03-28 Graham Percival <gpermus@gmail.com>
4538 * THANKS: update for 2.9, add section for Documentation helpers.
4540 * Documentation/topdocs/NEWS.tely: compile fix.
4542 * Documentation/user/ basic-notation, global, advanced-notation,
4543 examples.itely: minor fixes from mailist.
4545 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4547 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4550 * lily/ttf.cc (print_trailer): use it.
4552 * lily/pango-font.cc (get_unicode_name): new function.
4554 * lily/ttf.cc (make_index_to_charcode_map): move function from
4556 (print_trailer): substitute uniXXXX name if applicable.
4558 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4559 (pango_item_string_stencil): use it to generate uniXXXX names.
4561 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4562 note heads, for uniform widths in shape note output.
4563 (overdone_heads): hmm. remove them again.
4565 * scripts/lilypond-book.py (output): add links to filenames.
4567 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4569 * lily/note-collision.cc (get_clash_groups): only consider when
4570 Note_column::dir <> CENTER.
4572 * scripts/lilypond-book.py (get_option_parser): init output_name
4575 2006-03-24 Graham Percival <gpermus@gmail.com>
4577 * Documentation/topdocs/NEWS.tely: add @end itemize
4579 * Documentation/user/ global, advanced-notation: minor
4582 2006-03-23 Graham Percival <gpermus@gmail.com>
4584 * Documentation/user/ lilypond.tely, music-glossary,
4585 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4587 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4589 * mf/GNUmakefile: don't install .enc files.
4591 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4593 * VERSION (PATCH_LEVEL): bump to 2.9.0
4595 2006-03-22 Graham Percival <gpermus@gmail.com>
4597 * Documentation/user/advanced-notation.itely: minor fixes
4600 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4602 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4604 * branch lilypond_2_8
4606 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4608 * scripts/lilypond-book.py (samefile): new function, for windoze
4611 2006-03-21 Graham Percival <gpermus@gmail.com>
4613 * ly/engraver-init.ly: add info about StaffGroup.
4615 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4617 * input/regression/stem-direction-context.ly: idem.
4619 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4623 * input/regression/page-layout-twopass.ly: comment out \markup so
4626 * lily/instrument-name-engraver.cc (finalize): add to instrument
4627 name global System. This also fixes chopped instrument names, but
4628 doesn't crash when there are slurs/beams.
4630 * lily/slur-configuration.cc (add_score): disallow negative slur
4633 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4635 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4637 * lily/instrument-name-engraver.cc (process_music): kludge: add
4638 InstrumentName spanner to axis group of left bound. Fixes chopped
4639 off instrument names in EPS images.
4641 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4643 * scripts/abc2ly.py (option_parser): update to 2.7.40
4645 2006-03-20 Graham Percival <gpermus@gmail.com>
4647 * THANKS: move small doc contributors to SUGGESTIONS.
4649 * Documentation/user/ basic-notation, advanced-notation,
4650 global: small changes from mailist.
4652 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4654 * Documentation/user/advanced-notation.itely (Text marks): update
4655 for new rehearsalMarkAlignSymbol convention.
4657 * VERSION (PATCH_LEVEL): bump version.
4659 * input/test/instrument-name-align.ly: new file.
4661 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4663 * input/test/instrument-name-align.ly: new file. Document how to
4664 align instrument names.
4666 * lily/mark-engraver.cc: remove properties.
4668 * scm/define-context-properties.scm
4669 (all-user-translation-properties): remove align symbol properties
4670 for barnumber/reh. mark.
4672 * lily/break-align-interface.cc (self_align_callback): new
4673 interface, new function. Look at complete alignment. This handles
4674 tunable break alignments in case break-align-symbols are missing.
4676 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4678 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4680 * python/convertrules.py (conv): mark/bar number alignment rule.
4682 * lily/break-align-interface.cc (calc_positioning_done): also
4683 store offset from last visible break-alignment to its
4684 neighbor. This makes alignment on non-visible objects more reliable.
4686 * po/lilypond.pot (Module): ran po-replace.
4688 * input/regression/tie-single-manual.ly (Module): new file.
4690 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4691 look at has_manual_position_.
4692 (from_ties): set has_manual_position_ if tie has staff-position set.
4694 * lily/tuplet-bracket.cc (calc_positions): idem.
4696 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4699 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4701 * scm/define-markup-commands.scm (smallCaps): new markup command
4702 for turning a text to small caps using smaller font size and upper
4705 2006-03-17 Graham Percival <gpermus@gmail.com>
4707 * Documentation/user/ examples, instrument-notation,
4708 advnaced-notation: minor fixes from mailist.
4710 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4712 * Documentation/user/tutorial.itely (First steps): change example
4715 2006-03-17 Graham Percival <gpermus@gmail.com>
4717 * Documentation/user/ examples, advanced: minor changes from mailist.
4719 * THANKS: add Geoff Horton, for documentation stuff.
4721 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4723 * python/lilylib.py (system): revert have_select kludge.
4725 * Documentation/user/tutorial.itely (Commenting input files):
4726 update version numbers in doc.
4728 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4729 bound-padding to multi-measure-interface
4731 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4733 * input/test/engraver-example.ily: update version number.
4735 * VERSION (PACKAGE_NAME): release 2.7.39
4737 * lily/note-spacing.cc (get_spacing): heighten threshold where
4738 accidentals/arpeggios influence previous spacing fully.
4740 * lily/rest.cc (y_offset_callback): only use direction if
4741 staff-position wasn't set before.
4743 * lily/bar-number-engraver.cc: add support for
4744 barNumberAlignSymbol.
4745 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4747 * lily/pointer-group-interface.cc (set_ordered): new function.
4748 (add_unordered_grob): new function.
4750 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4751 to ordered, unless the opposite has been proved. This fixes
4752 random reordering of large object groups across linebreaks,
4755 * lily/main.cc (do_chroot_jail): printf format fix.
4757 * lily/tie-formatting-problem.cc (generate_configuration):
4758 multiply y-shift for dot with direction.
4760 * scm/define-markup-commands.scm (note-by-number): put (magstep
4761 size) in y-attach too.
4763 * Documentation/topdocs/NEWS.tely (Top): show override.
4765 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4766 direction for stems.
4768 2006-03-15 Graham Percival <gpermus@gmail.com>
4770 * Documentation/user/ changing-defaults, global: minor
4773 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4775 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4777 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4778 breakable items after uniformly stretched notes.
4780 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4781 outline with outer edge of note heads. This prevents infinity
4782 problems with tied whole notes.
4784 * scripts/lilypond-book.py (do_file): use os.popen
4786 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4788 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4790 * Documentation/user/invoking.itely: Add ragged-right to bug report
4793 2006-03-14 Graham Percival <gpermus@gmail.com>
4795 * Documentation/user/global.itely: small fix from mailist.
4797 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4799 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4800 file descriptor returned by tempfile.mkstemp() when writing
4801 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4804 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4806 * po/fi.po: newline bugfix.
4808 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4810 * scm/paper.scm (paper-alist): Rounding fixes.
4812 2006-03-13 Graham Percival <gpermus@gmail.com>
4814 * Documentation/user/ changing-defaults, instrument-notation,
4815 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4817 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4821 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4823 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4826 * python/lilylib.py (print_environment): move ps_page_count to
4829 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4831 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4833 * scm/framework-ps.scm (embed-document): new function. Use to
4836 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4838 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4840 * Documentation/user/instrument-notation.itely (Setting simple
4841 songs): Added \book{...} around the full example, so the separate
4842 markups are included in the printed example.
4844 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4846 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4849 * python/lilylib.py (system): rewrite system() using
4850 subprocess. Remove >& redirection trickery.
4852 2006-03-11 Graham Percival <gpermus@gmail.com>
4854 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4855 notation-appendices.itely: minor fixes from mailist.
4857 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4859 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4860 unsplit man also needs images.
4862 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4864 * VERSION (PACKAGE_NAME): 2.7.38 released.
4866 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4868 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4871 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4873 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4874 respects the Score.skipTypesetting property.
4876 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4878 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4879 Prolog. No %%EOF after CFF file.
4881 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4883 * lily/constrained-breaking.cc (get_max_systems): used to return a
4885 (combine_demerits): use pointers to reduce copying data
4886 (calc_subproblem): idem
4887 (get_page_penalty): add page turn penalties
4889 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4891 * Documentation/user/invoking.itely (Invoking lilypond): better
4892 explanation of -e usage.
4894 * lily/main.cc (main_with_guile): don't append to
4895 init_scheme_code_string
4897 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4899 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4901 * scripts/convert-ly.py (do_options): don't print help for
4904 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4905 @code and @example. Update from texinfo.tex from CVS.
4907 2006-03-08 Graham Percival <gpermus@gmail.com>
4909 * Documentation/user/scheme-tutorial.itely: clarifies distances
4910 measured in staff-spaces.
4912 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4914 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4915 consider[k] is true.
4917 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4919 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4920 consider columns that have originals. Unifies spacing for mm
4921 rests around line breaks.
4923 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4924 (set_text_rods): idem.
4925 (calculate_spacing_rods): new function: share code between
4926 set_text_rods and set_spacing_rods.
4927 (set_text_rods): take extents of bounds into account.
4929 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4931 * Documentation/user/basic-notation.itely (Writing music in
4932 parallel): don't use relative.
4934 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4936 * ly/music-functions-init.ly (Module): add shiftDurations
4938 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4940 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4942 * ly/engraver-init.ly: init vocalName to nil.
4944 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4946 * scm/music-functions.scm (music->make-music): bugfix,
4947 KeyChangeEvents are now handled correctly.
4949 * scripts/lilypond-book.py: Add --debug option.
4951 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4953 * python/lilylib.py: add tempfile.
4955 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4957 * VERSION (PACKAGE_NAME): release 2.7.37
4959 * python/lilylib.py (ps_page_count): remove make_ps_images().
4960 (ps_page_count): remove mkdir_p
4961 (system): remove cleanup_temp.
4962 (exit): remove lilypond_version_(check)
4963 (error_log): remove pseudo_filter_p
4968 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4971 * lily/accidental-engraver.cc (make_standard_accidental): only add
4972 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4974 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4975 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4976 Make incompatibilities.
4978 * scm/output-ps.scm (grob-cause): replace backslashes by /
4979 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4981 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4983 * cygwin/GNUmakefile: Install fixes.
4985 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4987 * lily/note-head.cc (head::get_balltype): Compile fix.
4989 * flower/file-name.cc (dos_to_posix): Flower string fix.
4991 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4993 * python/lilylib.py: pychecker cleanups.
4995 * scripts/lilypond-book.py
4996 (Lilypond_snippet.output_print_filename): pychecker cleanups
4998 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5000 * python/lilylib.py (underscore): remove identify() , warranty()
5002 * ps/music-drawing-routines.ps: change Border routine for GSView
5005 * lily/stem.cc (height): use quantize-positions. This triggers
5006 set_stem_lengths, so scripts on beamed stems are handled correctly.
5008 * lily/side-position-interface.cc (aligned_side): check if edges
5009 of script are inside staff. Fixes accent of edge of the staff.
5011 * input/regression/staccato-pos.ly: more examples.
5013 * stepmake/aclocal.m4 (depth): fix bashism.
5015 * lily/lyric-combine-music-iterator.cc: move from
5016 new-lyric-combine-iterator.cc
5017 (process): add pending_grace_lyric_ member to delay lyrics on
5020 * lily/system-start-text.cc (print): suicide if we don't have any
5021 elements. Fixes hara kiri'd instrument names.
5023 * scripts/mup2ly.py (Module): remove.
5025 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5027 * Documentation/user/global.itely (A single music expression):
5028 close @lilypond properly
5030 * lily/volta-bracket.cc (modify_edge_height): change from
5031 after_line_breaking_callback. Suicide last bracket if appropriate.
5033 * python/lilylib.py: strip getopt support
5035 * scripts/etf2ly.py (do_options): use optparse
5037 * scripts/midi2ly.py: optparse, strip lilylib copy.
5039 * scripts/abc2ly.py (voices): use optparse.
5041 * stepmake/stepmake/generic-vars.make: new function absdir.
5043 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5045 * scripts/lilypond-book.py (find_file): use global_options for
5048 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5051 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5053 * python/lilylib.py (get_global_option): ughness for extracting
5054 global options from lilylib.
5055 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5057 * scripts/lilypond-book.py (get_option_parser): use optparse for
5058 option handling. Put options in global_options variable.
5060 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5062 * Documentation/index.html.in: clarify.
5064 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5066 * scm/layout-page-layout.scm (write-page-breaks): add a
5067 music-system-heights property to the page layout output.
5069 * scm/page.scm (make-page-stencil): take footer into account when
5070 computing the 'space-left page property
5071 (annotate-space-left): take footer into account when annonating
5074 2006-02-28 Graham Percival <gpermus@gmail.com>
5076 * Documentation/user/ advanced-notation, global: more (final)
5077 docs for music expressions, removed special fermatas.
5079 2006-02-27 Graham Percival <gpermus@gmail.com>
5081 * Documentation/user/ basic-notation, global: minor changes
5084 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5086 * scm/framework-ps.scm:
5087 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5088 layer for inf? and nan? from framework-ps to lily-library.
5090 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5092 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5093 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5095 * buildscripts/substitute-encoding.py (Module): remove file.
5097 * mf/GNUmakefile: more PFA strippage.
5099 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5101 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5104 * scm/framework-ps.scm: remove font name munging.
5106 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5108 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5110 * scm/markup.scm (define-markup-command): change
5111 def-markup-command to define-markup-command
5113 * scm/music-functions.scm (define-music-function): change
5114 def-music-function to define-music-function.
5116 * python/convertrules.py (conv): rules for def-music-function
5117 and def-markup-commands
5119 * Documentation/user/programming-interface.itely,
5120 input/no-notation/display-lily-tests.ly,
5121 input/regression/lily-in-scheme.ly,
5122 input/regression/markup-user.ly,
5123 input/regression/music-function.ly, input/regression/tie-chord.ly,
5124 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5125 ly/gregorian-init.ly: use new macro names (define-music-function,
5126 define-markup-command).
5128 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5130 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5131 (output): add comments to lp-book latex output.
5133 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5136 2006-02-23 Graham Percival <gpermus@gmail.com>
5138 * Documentation/user/ tutorial, global: minor changes.
5140 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5142 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5143 blocks (for make 3.80)
5145 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5146 \notemode so that user should not have to explicitely type it.
5148 * scm/define-music-display-methods.scm: various
5149 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5152 * input/no-notation/display-lily-tests.ly: new tests for
5153 \applyOutput and \applyContext
5155 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5157 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5158 changed it slightly so that the number of systems returned by
5159 solve () will be the same as the last value passed to resize
5160 (). I've also added more documentation, removed casts, fixed style
5161 problems and put in some recovery if constraints aren't satisfied."
5163 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5165 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5166 for emacs < 22 compatibility.
5167 (count-rexp): Use it.
5168 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5169 substring juggling (Milan Zamazal).
5171 2006-02-23 Graham Percival <gpermus@gmail.com>
5173 * Documentation/user/ basic-notation, advanced-notation,
5174 global.itely, invoking.itely, tutorial,itely:
5175 minor fixes from mailist.
5177 * scm/define-markup-commands.scm: improve docs of \filled-box.
5179 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5181 * Documentation/index.html.in: changes concern the previous release.
5183 * input/regression/+.ly: cultivate typographical terminology.
5185 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5187 * scm/define-grob-interfaces.scm (parentheses-interface): add
5188 padding to parentheses-interface.
5190 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5191 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5193 * VERSION (PATCH_LEVEL): release 2.7.36
5195 * lily/slur.cc: add avoid-slur (ugh.)
5197 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5198 intersection gets smaller. This fixes slurs over extreme points.
5200 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5201 stems with neutral-direction set.
5203 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5205 * lily/open-type-font.cc (load_table): format error.
5207 * lily/change-iterator.cc (process): format fix.
5209 * flower/include/international.hh (_f): idem.
5211 * flower/include/std-string.hh: add format printf attribute.
5213 * scm/define-grobs.scm (all-grob-descriptions): height of all
5214 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5216 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5219 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5221 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5223 * input/regression/: upgraded syntax for some files.
5225 * THANKS: Add bughunters.
5227 2006-02-22 Graham Percival <gpermus@gmail.com>
5229 * Documentation/user/ invoking.itely, advanced-notation.itely,
5230 global.itely: long-awaited "let's make chapter 10 not suck"
5231 update. Rearrange chapter 10; now called "global issues",
5232 addresses file structure, etc. Some info from other files
5233 moved into global.itely.
5235 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5237 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5238 catch trill-span-event notes.
5240 * Documentation/user/examples.itely (Ancient notation templates): typo.
5243 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5245 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5247 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5249 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5251 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5252 froum Laissez_vibrer_engraver.
5254 * ly/declarations-init.ly (repeatTie): add \repeatTie
5256 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5258 * scm/define-grob-properties.scm (all-user-grob-properties): add
5259 head-direction property.
5261 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5262 from_lv_ties. Take head direction argument.
5264 * lily/semi-tie-column.cc: rename from
5265 laissez-vibrer-tie-column.cc. Rename class too.
5267 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5270 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5272 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5274 (find_breaks): idem.
5276 2006-02-21 Graham Percival <gpermus@gmail.com>
5278 * Documentation/user/advanced-notation.itely: fixed make-moment]
5281 * Documentation/user/basic-notation.itely: more clarification to
5284 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5286 * lily/include/constrained-breaking.hh (class
5287 Constrained_breaking): new file.
5289 * lily/constrained-breaking.cc (resize): new file.
5291 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5293 * Documentation/user/advanced-notation.itely (Clusters): insert
5296 * lily/tie-column.cc (calc_positioning_done): support for
5299 * lily/tie-formatting-problem.cc
5300 (generate_extremal_tie_variations): factor out.
5301 (score_ties_configuration): annotate all tie
5302 (print_ties_configuration): new routine.
5303 (generate_configuration): nudge extremal ties outside of the head
5305 (score_ties_configuration): oops. convert to staff-space before
5306 determining position symmetry.
5308 2006-02-20 Graham Percival <gpermus@gmail.com>
5310 * Documentation/user/*-notation.itely: misc minor editing,
5311 shifting doc sections around.
5313 * Documentation/user/*-notation-itely, global.itely,
5314 changing-defaults.itely: added new stuff from NEWS.
5316 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5320 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5322 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5323 lilypond --verbose for lp-book.
5325 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5326 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5328 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5329 $(buildscript-dir) iso. absolute depth.
5331 * buildscripts/genicon.py (dir): thinko.
5333 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5335 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5337 * scm/output-lib.scm: swap darkcyan/darkyellow
5339 * THANKS: Add bughunters.
5341 2006-02-19 Graham Percival <gpermus@gmail.com>
5343 * Documentation/user/programming-interfaces.itely: fixed example.
5345 * Documentation/user/instrument-notation.itely: fix @{ @}.
5347 * scm/script.scm: add avoid-slur for \open.
5349 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5351 * lily/tie-formatting-problem.cc (score_configuration): use
5352 sliding score for min-length.
5354 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5355 spaghetti for icons.
5357 * buildscripts/genicon.py (program_name): new file.
5359 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5361 (generate_configuration): for small ties, also look for collisions
5362 at Y + DIR*h + DELTA_Y.
5363 (get_variations): consider variation for dot positions too.
5365 * lily/side-position-interface.cc (aligned_side): take abs for
5366 quantized rounded position. Fixes tenuto below staff.
5368 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5369 markers when necessary.
5371 * lily/program-option.cc (internal_set_option): add
5372 strict_infinity_checking option.
5374 * scm/output-lib.scm (cyan): swap yellow and cyan.
5376 2006-02-19 Graham Percival <gpermus@gmail.com>
5378 * darwin.patch: trivial linenumber update.
5380 * Documentation/user/ {various}: `\context foo = named' changed
5381 to `\new foo = "name"' in docs.
5383 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5385 * scm/stencil.scm (annotate-y-interval): use it.
5387 * scm/lily-library.scm (interval-sane?): new function.
5389 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5392 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5395 * flower/include/std-vector.hh (iterof): add iterof macro.
5397 * lily/enclosing-bracket.cc (width): new function.
5399 * lily/align-interface.cc (align_elements_to_extents): reinstate
5402 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5404 * Documentation/index.html.in: fix spelling: thankyous.
5406 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5408 * lily/lyric-hyphen.cc: typo.
5410 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5412 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5413 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5416 * VERSION: release 2.7.35
5418 * lily/beam.cc (get_default_dir): oops. Take abs () for
5420 (get_default_dir): use extreme position criterion only in absence
5421 of forced stem directions.
5423 * VERSION (PATCH_LEVEL): bump VERSION.
5425 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5426 dependencies. Necessary for -jX builds.
5428 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5430 * lily/relocate.cc (setup_paths): Yet another const fix.
5432 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5434 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5436 * lily/relocate.cc (setup_paths): oops.
5438 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5440 * Documentation/index.html.in: order links: html before PDF.
5442 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5444 * lily/tie-column-format.cc (Module): remove.
5446 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5448 * lily/text-spanner.cc (print): idem.
5450 * lily/dynamic-text-spanner.cc (print): only print line if longer
5453 * lily/auto-change-iterator.cc (change_to): formatting.
5455 * lily/beam.cc (get_default_dir): take extreme note head as input
5458 * lily/tie.cc (get_default_dir): only look directions for visible
5461 * lily/side-position-interface.cc (aligned_side): oops. Don't
5462 mutiply with direction. This fixes quantized (staccato, tenuto)
5463 scripts below notes.
5465 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5466 direction. Fixes c-lyrics-center-align.ly
5468 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5470 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5473 * lily/std-string.cc:
5474 * lily/include/std-vector.hh (split_string): Move and rename from
5475 lily/include/misc.hh, lily/misc.cc. Update callers.
5477 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5479 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5481 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5483 * flower/test-file.cc: New file.
5485 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5488 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5490 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5492 * flower/include/file-storage.hh: remove file.
5494 * lily/include/midi-item.hh (class Midi_track): idem.
5496 * lily/include/source.hh (class Sources): idem.
5498 * lily/include/performance.hh (class Performance): use vector
5501 * flower/include/cons.hh (class Cons): remove file.
5503 * flower/include/flower-proto.hh: remove template cruft.
5505 * lily/include/font-metric.hh: use size_t not vsize for indices.
5507 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5510 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5512 * lily/include/paper-book.hh (class Paper_book):
5513 make get_system_specs() public.
5515 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5516 the force=10000 case if we don't have a current-best.
5518 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5521 * flower/include/flower-proto.hh: remove outdated templates.
5523 * scm/page.scm: use annotate-spacing
5525 2006-02-15 Graham Percival <gpermus@gmail.com>
5527 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5529 * THANKS: moved Erlend Aasland to contributors.
5531 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5533 * config.hh.in: remove HAVE_PANGO_16
5535 * lily/tuplet-bracket.cc (calc_positions): multiply with
5536 staff-space for beam case. This fixes tuplets+beams on scaled
5539 * config.hh.in: remove all Kpathsea related defines.
5541 * lily/dot-column.cc (side_position): reach stem via dots->
5542 head->stem. Inspect all stems for dot collisions.
5544 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5547 * lily/bar-number-engraver.cc (process_music): document function
5550 * lily/score.cc (default_rendering): add pscore, not systems
5553 * lily/paper-book.cc (get_system_specs): separate generation of
5556 * flower/include/std-vector.hh: don't include config.hh
5558 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5560 * flower/include/std-vector.hh: Better wrapper compatibility with
5563 * flower/include/flower-proto.hh: Remove cheap forward declaration
5566 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5568 2006-02-14 Graham Percival <gpermus@gmail.com>
5570 * Documentation/user/invoking.itely: add warning about command line.
5572 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5574 * lily/include/lily-proto.hh: add Prob, rm Page.
5576 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5578 * VERSION: release 2.7.34
5580 * lily/relocate.cc (framework_relocation): show canary if
5581 GHOSTSCRIPT_VERSION undefined.
5583 * GNUmakefile.in: remove $(VERSION) symlink.
5585 * lily/relocate.cc (setup_paths): add +
5587 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5589 * Documentation/index.html.in: specify sizes for all big HTML pages.
5591 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5593 * config.hh.in: remove @FRAMEWORKDIR@
5595 * lily/system-start-text.cc (get_stencil): new file: separate out
5596 system-start-delimiter text support.
5598 * input/**ly: replace \context with \new where appropriate.
5602 * lily/slur-scoring.cc (get_base_attachments): use
5603 robust_relative_extent. This fixes problems with empty paper-columns.
5605 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5607 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5609 * scm/define-music-properties.scm (all-music-properties):
5610 create-new property.
5612 * lily/context-specced-music-iterator.cc (construct_children):
5613 inspect 'create-new property iso. magical $uniqueContextId context
5616 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5618 * lily/context-key-manager.cc (Module): new file. Encapsulate
5619 object key generation.
5621 * lily/include/context-key-manager.hh (Module): new file.
5623 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5625 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5628 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5630 (reloc_b): excise --enable-framework-dir
5632 * lily/relocate.cc (framework_relocation): use getenv
5633 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5635 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5637 * flower/include/std-string.hh:
5638 * flower/include/std-vector.hh: Finish std:: conversion; move
5639 flower extensions from std:: namespace. Update users.
5641 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5642 their expansion to vector<*>. Update users.
5644 2006-02-10 Graham Percival <gpermus@gmail.com>
5646 * Documentation/user/invoking.itely: add example to File structure.
5648 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5649 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5651 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5653 * ly/paper-defaults.ly: typo.
5655 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5656 set_parent() for parentheses. This will make it show up in bbox
5659 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5660 ly:grob-common* functions.
5662 * lily/grob-scheme.cc (LY_DEFINE):
5663 ly:grob-common-refpoint-of-array: new function
5664 ly:grob-common-refpoint: new function
5665 ly:grob-relative-coordinate: new function
5667 * lily/instrument-name-engraver.cc (process_music): use
5668 Text_interface::is_markup(). This fixes \markup on instrument names.
5670 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5673 * lily/slur.cc (print): idem.
5675 * lily/tie.cc: add line-thickness for ties.
5677 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5679 * scm/output-svg.scm: Document diversion from GNU coding standards
5680 as a workaround for a bug in Microsoft Internet Explorer.
5682 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5684 * lily/instrument-name-engraver.cc (process_music): use
5685 is_markup() iso. is_string()
5687 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5689 * lily/percent-repeat-engraver.cc (process_music): only look at
5690 main_part_ for % repeats.
5692 * lily/stem-tremolo.cc (get_beam_translation): new function.
5693 (calc_slope): new function.
5694 (height): don't use real slope.
5696 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5698 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5699 new connect-to-neighbor, control-points and staff-padding
5700 properties to make ligature brackets showing up again.
5702 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5704 * VERSION: release 2.7.33
5706 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5709 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5710 remove applyOutput example.
5711 (Objects connected to the input): document \tweak, \parenthesize
5713 * lily/relocate.cc (prefix_relocation): allow "current"
5714 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5715 changing VERSION in a lily tree less painful.
5717 * input/regression/parenthesize.ly: new file.
5719 * scm/output-lib.scm (parenthesize-element): new function.
5721 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5723 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5725 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5726 cause: accidentals are caused by note heads, not note events.
5728 2006-02-08 Graham Percival <gpermus@gmail.com>
5730 * darwin.patch: small patch from Erlend, thanks!
5732 * Documentation/user/basic-notation.itely: add stem-neutral example.
5734 * Documentation/user/putting.itely: clarifications.
5736 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5738 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5739 note, add more guidelines to what should go into NEWS.
5741 * input/sakura-sakura.ly: document how to override font.
5743 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5745 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5747 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5749 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5751 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5752 convertrules. Add explicit grouping, needed for python2.2.
5754 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5756 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5758 2006-02-07 Graham Percival <gpermus@gmail.com>
5760 * Documentation/user/global.itely: fix line-width in (text) docs.
5762 * Documentation/user/lilypond-book.itely: same.
5764 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5766 * VERSION (PACKAGE_NAME): release 2.7.32
5768 * Documentation/topdocs/NEWS.tely (Top): document new variable
5771 * flower/include/array.icc (Message): remove file.
5773 * flower/include/std-vector.hh: make sure vsize and VPOS are
5774 defined for binary_search_bounds().
5776 * flower/std-string.cc (std): add to_string(long unsigned).
5778 * configure.in (gui_b): excise std_string option.
5779 (gui_b): excise std_vector option.
5781 * flower/string.cc (Module): excise flower array & string
5783 * flower/include/std-string.hh: excise flower string.
5785 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5787 * python/convertrules.py (lilypond_version_re_str): require
5788 only numbers and dots in \version string.
5790 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5792 * lily/system-start-delimiter.cc (print): allow style = text too.
5794 * lily/system-start-delimiter-engraver.cc
5795 (acknowledge_system_start_text): new function, also add add to
5796 support of system-start-text (instrument names). This fixes
5797 instrument names on piano staves.
5799 * lily/instrument-name-engraver.cc: rewrite. Use
5800 system-start-delimiter approach. This save memory and cpu.
5802 * scm/define-grobs.scm (all-grob-descriptions): remove
5803 instrument-name from break-alignment.
5805 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5807 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5809 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5812 * configure.in (std_vector): On by default.
5814 * lily/include/font-metric.hh:
5815 * lily/include/tfm-reader.hh:
5816 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5819 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5821 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5823 * VERSION (PACKAGE_NAME): 2.7.31
5825 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5826 EPS edge at 0, but take minimum with left-overshoot. This fixes
5827 cut off system start delims.
5829 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5830 hack: add to axis group if not added yet. This fixes hara kiri'd
5833 * lily/hara-kiri-group-spanner.cc
5834 (force_hara_kiri_in_y_parent_callback): fix signatures.
5836 * lily/hairpin.cc (print): check next hairpin to see whether or
5837 not to be continuing.
5839 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5841 * Remove trailing whitespace from makefiles.
5843 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5846 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5848 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5850 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5852 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5854 * configure.in: Use it.
5856 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5858 * scm/music-functions.scm (pitch-of-note): new function.
5860 * ly/music-functions-init.ly: add \octave and \addquote
5862 * lily/parser.yy (music_function_chord_body): softcode \octave.
5863 (lilypond_header): softcode \addquote
5865 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5867 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5868 array.hh, parray.hh at all. Getting ready to flip the
5871 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5873 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5876 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5878 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5880 * flower/include/array.hh: typo.
5882 2006-02-02 Graham Percival <gpermus@gmail.com>
5884 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5886 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5888 * flower/include/pqueue.hh: Derive from std::vector.
5890 * flower/include/parray.hh: Conform to std::vector interface.
5893 2006-02-02 Graham Percival <gpermus@gmail.com>
5895 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5897 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5899 * flower/file-path.cc (is_file): remove if 0 section.
5901 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5902 selecting afii61352.
5904 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5906 * flower/include/std-vector.hh (boundary): Oops, reverse.
5908 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5909 remove superfluous `d'.
5911 * flower/include/std-vector.hh (boundary, top): Detach from class.
5912 Remove empty vector shell.
5914 * flower/include/array.hh (reverse, swap): Detach from class.
5917 * flower/include/std-vector.hh
5918 * flower/include/array.hh (concat): Globally change to insert ().
5920 * flower/include/std-vector.hh
5921 * flower/include/parray.hh
5922 * flower/include/array.hh (elem, elem_ref): Globally replace by
5925 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5927 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5929 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5930 anticipate on identifier substitutions.
5932 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5934 * flower/include/std-vector.hh (insert): Remove, replace by
5935 std::vector interface. Update callers.
5937 * flower/include/array.icc (insert): Change signature to
5938 match std::vector interface.
5940 * flower/include/array.icc (vector_sort): Bugfix.
5942 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5944 * lily/parser.yy (output_def_head_with_mode_switch): new
5945 production. Result: dashes and underscores may be used in the
5948 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5950 * python/convertrules.py (conv): oops. One slash too much.
5952 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5954 * flower/include/std-vector.hh (sort): Remove, replace by
5955 ::vector_sort. Update callers.
5957 * flower/include/std-vector.hh (slice): Remove. Update callers.
5960 * flower/test-std.cc (vector_sort): New test.
5962 2006-02-01 Graham Percival <gpermus@gmail.com>
5964 * Documentation/user/putting.itely: fixes from Erik.
5966 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5968 * flower/test-std.cc: Add simple unit test for vector migration.
5970 * stepmake/stepmake/test*: Unit test support.
5972 * flower/include/std-vector.hh (del): Remove. Use erase (),
5975 * flower/include/array.hh (begin, end): Add.
5978 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5980 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5981 std::string not String.
5983 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5986 * lily/prob.cc (Prob): copy type_ too.
5988 * lily/lily-guile.cc (mangle_cxx_identifier): new
5989 function. Class_bla::foo_bar_[px] ->
5990 ly:class-bla::foo-bar[?!]. Changes throughout
5992 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5994 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5996 * lily/beam.cc (calc_direction): take dir from visible stem in
5999 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6001 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6002 Fix -1, >=0 boundary checks for unsigned vsize.
6004 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6005 loop for unsigned vsize.
6007 * configure.in (--enable-std-vector): New option.
6008 (--enable-std-string): On by default.
6010 * flower/include/std-vector.hh: New file. Enable switch to
6011 std::vector, update client code.
6013 2006-01-30 Graham Percival <gpermus@gmail.com>
6015 * scm/document-translation.scm: clarify "this context is also
6016 known as". Thanks, Werner!
6018 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6020 * Documentation/user/invoking.itely: small fix from Don.
6022 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6024 * scm/lily.scm (define-scheme-options): rename option
6025 preview-include-book-title to book-title-preview
6026 (define-scheme-options): move force-eps-font-include (from paper
6027 block) to eps-font-include -d option.
6029 * VERSION (PATCH_LEVEL): release 2.7.30
6031 * input/bach-schenker.ly (staffPiano): new file.
6033 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6035 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6038 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6040 * ps/lilyponddefs.ps: remove start-system, stop-system,
6041 start-page fluff. This saves putting { } code on the stack, fixing
6042 stack overflows when including EPS files.
6044 2006-01-29 Graham Percival <gpermus@gmail.com>
6046 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6048 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6050 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6052 2006-01-28 Graham Percival <gpermus@gmail.com>
6054 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6056 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6058 * input/mutopia/claop.py: Update.
6060 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6062 * input/regression/completion-heads.ly (texidoc): fix.
6064 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6066 * lily/tie-formatting-problem.cc
6067 (set_ties_config_standard_directions): use abs iso fabs for ints.
6069 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6071 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6072 little less than noteheight, to prevent overlaps in chords.
6074 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6075 head, and fudge stem-attachment.
6077 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6079 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6081 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6083 * lily/main.cc (main): Debugging aid: catch exceptions.
6085 * flower/std-string.cc (to_string): Robustification. Fixes midi
6086 output with std::string.
6088 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6090 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6092 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6094 * Fix -DSTRING_UTILS_INLINED.
6096 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6098 * VERSION (PATCH_LEVEL): release 2.7.29
6100 * lily/relocate.cc (setup_paths): mingw uses std string too.
6102 * lily/*.cc: various fixes for substr(ARG).
6104 * lily/sustain-pedal.cc (print):
6106 * flower/file-name.cc (slashify): use std strings.
6108 * flower/string-convert.cc: remove publib.h
6110 * scm/define-markup-commands.scm (verbatim-file): new markup
6111 command \verbatim-file
6113 * Documentation/topdocs/NEWS.tely: fixup URLs
6115 * input/regression/alignment-vertical-manual-setting.ly (Module):
6118 * lily/align-interface.cc (align_elements_to_extents): overwrite
6119 translations with numbers in alignment-offsets from left bound
6121 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6122 (page-translate-systems): new function: take into account Y-offset.
6124 * Documentation/topdocs/NEWS.tely (Top): document new features.
6126 * input/regression/page-layout-manual-position.ly (Module): new
6129 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6131 * flower/file-path.cc (path::parse_path): Oops.
6133 * Finish std::string interface. For now, use std:: marker
6134 throughout for easy s/r.
6136 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6138 * Documentation/user/putting.itely (Score is a single musical
6140 (Score is a single musical expression): more typos.
6142 * scm/page.scm (annotate-space-left): thinko.
6143 (annotate-page): more thinkos.
6145 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6147 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6148 for different \score blocks separately.
6149 (post-process-pages): put write-page-layout into paper block.
6151 * lily/output-def.cc (get_parser): new file.
6153 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6156 * lily/include/output-def.hh (class Output_def): add parser_ member.
6158 * input/regression/page-layout-twopass.ly (Module): new file.
6160 * scm/lily.scm: remove cpp hack.
6162 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6164 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6166 * GNUmakefile.in (c-clean): New target.
6168 * flower/include/std-string.hh: String/std::string compatibility:
6169 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6172 * flower/rational.cc:
6173 * flower/include/rational.hh:
6176 * flower/include/offset.hh:
6178 * flower/interval.cc:
6179 * flower/include/interval.hh:
6181 * flower/string-convert.cc:
6182 * flower/include/string-convert.hh: Use std::string [interface].
6185 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6187 * Documentation/index.html.in: clean up.
6189 2006-01-25 Graham Percival <gpermus@gmail.com>
6191 * Documentation/user/putting.itely: another new untested doc section.
6193 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6195 * scm/layout-page-layout.scm (write-page-breaks): write
6196 \spacingTweaks #ALIST. Handle grace timing.
6198 * scm/: more imports.
6200 * scm/page.scm (make-page): add footer/header.
6201 (annotate-space-left): revise: only take page argument.
6202 (layout->page-init): new function.
6204 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6205 version of the system/spacing/linebreak hack writing to the output
6207 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6210 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6213 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6215 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6217 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6219 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6220 handling to page.scm
6222 * lily/prob-scheme.cc (LY_DEFINE): new file.
6223 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6225 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6228 * lily/music.cc (derived_mark): derive Music from Prob.
6230 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6232 * lily/prob.cc (Module): Implement Prob (Property Object), object
6233 with shared and r/w property alists.
6235 * lily/include/prob.hh (Module): new file. Declare Prob.
6237 * flower/string.cc: remove is_empty().
6239 * flower/include/string.hh (class String): remove String:: qualifier.
6241 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6242 substitute appropriate functions.
6244 * flower/include/string.hh (class String): remove to_str0 and
6245 is_empty(). S&R everywhere.
6247 2006-01-23 Graham Percival <gpermus@gmail.com>
6249 * Documentation/user/basic-notation.itely: add hairpin
6250 after-linebreak tweak to commonprop.
6252 * Documentation/user/putting.itely: added two new sections.
6254 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6256 * flower/international.cc:
6257 * flower/include/international.hh:
6259 * flower/getopt-long.cc:
6260 * flower/include/getopt-long.hh: Use std::string [interface].
6263 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6265 * stepmake/stepmake/executable-rules.make: Add dependency on
6268 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6270 * flower/file-path.cc:
6271 * flower/include/file-path.hh: Use std::string [interface].
6274 * flower/direction.cc:
6275 * flower/axis.cc: Unused. Remove.
6277 * configure.in (--enable-std-string): New option.
6279 * flower/std-string.cc:
6280 * flower/include/std-string.hh: New file.
6282 * flower/file-name.cc[STD_STRING]:
6283 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6285 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6287 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6289 * scm/define-markup-commands.scm (with-dimensions):
6290 with-dimensions markup command.
6292 * input/test/font-table.ly: use it.
6294 * lily/open-type-font.cc (glyph_list): new function.
6296 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6298 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6300 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6302 * ly/music-functions-init.ly (parallelMusic): new music function
6303 for parallel music entry.
6305 * scm/define-music-properties.scm (all-music-properties): new
6306 'void music property
6308 * scm/music-functions.scm (ly:music-message): make public, to be
6309 used in music function definitions
6311 * scm/lily-library.scm (collect-music-for-book): discard music
6312 when the 'void property is set.
6314 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6316 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6318 * mf/GNUmakefile: idem.
6320 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6322 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6324 * Documentation/user/notation-appendices.itely (The Feta font):
6327 * input/test/font-table.ly: new file. Generate font table within lily.
6329 * Documentation/user/notation-appendices.itely (The Feta font):
6330 use new font-table.ly file.
6332 * stepmake/stepmake/install-out-targets.make
6333 (local-install-outfiles): only create directory if
6334 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6336 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6338 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6340 * VERSION (PACKAGE_NAME): release 2.7.28
6342 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6343 the right font from a Mac dfont.
6344 (write-preamble): don't forget directory, only look at files.
6346 This fixes problems with TTF files in dfonts that don't match
6347 their PostScript names.
6349 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6350 PS name from TTF font.
6352 * input/regression/tie-manual.ly: document new feature.
6354 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6356 * VERSION (MY_PATCH_LEVEL): bump to .28
6358 * Documentation/user/basic-notation.itely (Ties): add tie examples
6361 * lily/tie-formatting-problem.cc (score_ties_configuration):
6362 symmetry penalties for outer ties.
6364 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6366 * lily/tie-formatting-problem.cc (generate_configuration)
6367 (set_manual_tie_configuration): skip non-pair manual
6368 tie-configuration, so you can set individual ties as
6370 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6372 * input/regression/tie-chord.ly: use generateTiePattern to
6375 * lily/tie-formatting-problem.cc (peak_around): new function.
6376 (score_configuration): use sliding criterion for staff line collisions.
6377 (score_configuration): idem for dot collisions.
6378 (generate_configuration): use separate stem_gap for gap to stem.
6380 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6381 separate penalty factors for x and y distance.
6382 (struct Tie_details): separate penalties for tip and center line collisions.
6384 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6386 * lily/tie-formatting-problem.cc (generate_configuration): make
6387 large ties avoid stafflines in the horizontal section.
6388 (score_configuration): use softcoded penalties
6389 (score_aptitude): idem.
6391 * lily/tie-helper.cc (from_grob): softcode tie details
6393 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6395 * lily/staff-symbol-referencer.cc (on_line): rename from
6398 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6400 * ly/music-functions-init.ly: remove duplicate tag.
6402 * lily/include/*.hh: GCC 4.1 fixes.
6404 006-01-16 Erlend Aasland <erlenda@gmail.com>
6406 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6408 * scm/define-music-types.scm: fix bug in desc. string
6409 for OverrideProperty
6411 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6413 * scripts/lilypond-book.py: bugfix
6415 * scm/define-music-types.scm: fix typos.
6417 2006-01-14 Graham Percival <gpermus@gmail.com>
6419 * Documentation/user/ basic-notation.itely, global.itely,
6420 advanced-notation.itely, instrument-notation.itely: small
6421 additions (bugs and commonly tweaked properties).
6423 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6425 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6426 detection of mingw build.
6427 (MINGW_BUILD): opps.
6429 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6431 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6434 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6436 * scm/music-functions.scm (skip->rest): add skip->rest
6438 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6440 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6443 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6444 config dirs. Aids debugging.
6445 (display_config): also display config files.
6447 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6449 * VERSION: release 2.7.27
6451 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6452 for determining bar size.
6454 * lily/staff-symbol.cc (print): place lines at distance line-positions
6456 * scm/define-grob-properties.scm (all-user-grob-properties): add
6459 * lily/staff-symbol.cc (height): new function.
6461 * input/regression/staff-line-positions.ly: new file.
6463 2006-01-06 Graham Percival <gpermus@gmail.com>
6465 * input/test/add-staccato.ly: remove reference to old file.
6467 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6469 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6470 lilypond binary too.
6472 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6474 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6476 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6478 * scripts/midi2ly.py: Bugfix: Declare datadir.
6480 * make/ly-rules.make:
6481 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6482 that seems to be gone). Fixes make web.
6484 * The grand 2005-2006 replace.
6486 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6488 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6490 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6491 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6492 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6493 like -dgs-font-load.
6495 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6496 remove absolute path to lilypond binary.
6498 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6500 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6502 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6504 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6506 * mf/GNUmakefile: remove broken dvips map symlink.
6508 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6511 * configure.in: Cosmetic fixes.
6513 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6515 * Documentation/user/music-glossary.tely (Pitch names): Added
6516 Spanish pitch names and durations, thanks to Ernesto Gancedo
6518 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6520 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6521 init. Fixes verbose printing of .scm files.
6523 * stepmake/aclocal.m4: add spaces before - options.
6525 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6527 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6528 of path search in local block variable.
6530 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6532 * configure.in (NCSB_DIR): --enable-ncsb-dir
6533 (LINK_GXX_STATICALLY): denko.
6535 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6537 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6538 use locate to find c059033l.pfb.
6540 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6542 * lily/tie-formatting-problem.cc
6543 (problem::generate_base_chord_configuration): Use my_round (was
6546 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6547 do not invoke mbrtowc.
6549 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6551 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6553 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6555 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6557 * Documentation/user/invoking.itely (svg): revise.
6559 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6561 * lily/lexer.ll: use sourcefilename iso. renameinput.
6563 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6565 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6566 <PostScriptName>.ttf instead of c059XXXttf.
6568 * lily/program-option.cc (LY_DEFINE): special support for
6569 --verbose, so it works before option init too.
6571 * mf/GNUmakefile (local-install): oops.
6573 * lily/lyric-hyphen.cc (print): oops.
6575 * buildscripts/pfx2ttf.fontforge: new file.
6577 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6578 ($(outdir)/%.ttf): new rule.
6580 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6583 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6586 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6588 * VERSION: release 2.7.26
6590 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6592 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6594 * lily/font-config.cc (init_fontconfig): verbosity.
6596 * THANKS: add Muziekacademie Lede.
6598 * scripts/musicxml2ly.py (print_voice_definitions): new function
6599 (print_score_setup): new function
6600 (convert): read part definition to output staves properly.
6602 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6605 * python/musicexp.py (Output_printer.__init__): use _ in data
6607 (Output_printer.unformatted_output): new function: no formatting,
6609 (Duration.get_length): remove isinstance() checks for
6610 Output_printer everywhere.
6612 * input/regression/lyrics-bar.ly (texidoc): add
6613 Separating_line_group_engraver.
6615 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6617 * lily/relocate.cc (framework_relocation): New function,
6618 factored from set_relocation ().
6619 (prefix_relocation): Rename from set_relocation ().
6620 (setup_paths): Use it.
6622 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6624 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6625 numbers. Patch by Erlend Aasland.
6627 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6629 * lily/font-config.cc (init_fontconfig): print warning if cache
6630 file is not existant.
6632 * lily/main.cc: don't use #ifdef but #if
6634 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6636 * lily/grob-property.cc (internal_set_property): don't abort on
6637 calculation-in-progress.
6639 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6641 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6642 connect-to-neighbor property not connect-to-other
6644 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6645 (LY_DEFINE): oops. don't forget protection.
6647 * flower/parse-afm.cc (Module): strip AFM handling completely.
6649 * lily/stencil-expression.cc: idem.
6651 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6653 * lily/function-documentation.cc (ly_add_function_documentation):
6654 use static member iso. Protected_scm
6656 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6658 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6660 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6662 * lily/relocate.cc (set_env_dir): New function.
6663 (set_relocation): Use it to fix setting PANGO_PREFIX.
6665 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6667 * input/regression/stem-direction-context.ly: remove rest.
6669 * lily/melody-engraver.cc (process_music): restart for bar lines.
6670 (acknowledge_slur): restart for slurs.
6672 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6674 * Documentation/user/invoking.itely: describe how to view SVG
6675 output using Inkscape which replace embedded fonts with OTF fonts.
6677 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6679 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6681 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6683 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6686 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6688 * VERSION (PACKAGE_NAME): release 2.7.25
6690 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6692 * input/regression/stem-direction-context.ly: new file.
6694 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6696 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6699 * ly/engraver-init.ly: add Melody_engraver
6701 * lily/beam.cc (calc_direction): use default-direction
6702 iso. get_default_direction()
6704 * scm/define-grob-properties.scm (all-user-grob-properties): add
6705 default-direction property.
6707 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6709 * lily/stem.cc (calc_default_direction): remove
6710 Stem::get_default_direction, use default-direction with callback
6713 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6715 * lily/melody-engraver.cc: new file. Acknowledge stems for
6716 interpolated stem directions.
6718 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6720 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6722 * lily/slur-configuration.cc (fit_factor): more robust check for
6723 point in curve X-extent.
6725 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6726 (outside_slur_callback): check for 'outside avoidance.
6728 * lily/slur-configuration.cc (score_extra_encompass): don't use
6729 bound->column() == avoid->column() for checking extents, as this
6730 doesn't work for accidentals.
6732 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6733 DynamicText hardcoding.
6735 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6736 crash if bound stem is NULL
6738 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6741 2005-12-22 Graham Percival <gpermus@gmail.com>
6743 * scm/define-markup-commands.scm: typo. @code{\raise}
6746 * darwin.patch: now used again, includes a
6747 required patch from fink.
6749 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6751 * po/TODO: mention gtranslator along with kbabel.
6752 * po/fi.po: update translations.
6754 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6756 * lily/relocate.cc (setup_paths): Bugfix.
6758 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6760 * lily/slur-configuration.cc (score_extra_encompass): don't use
6761 "avoid" choice for avoid-slur.
6763 * stepmake/bin/install.py (dest): don't create existing dir.
6765 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6767 * stepmake/bin/install.py: Remove file before copying.
6770 * stepmake/aclocal.m4: Do not substitute INSTALL.
6772 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6774 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6775 depend on link-tree.
6777 * lily/relocate.cc (setup_paths): only check path for non-absolute
6778 dir without directory part.
6780 * flower/file-name.cc (is_absolute): new method.
6781 (is_absolute): check root_ too.
6783 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6785 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6786 relocation code. Oops, don't comment out too much.
6788 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6791 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6794 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6796 * .cvsignore: Add install-sh.
6798 * autogen.sh (srcdir): Typo.
6800 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6802 * autogen.sh (srcdir): urg. Touch install-sh.
6804 * stepmake/bin/install-sh (Module): remove.
6806 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6808 * lily/include/relocate.hh: new file.
6810 * lily/relocate.cc: new file. Contain relocation logic.
6812 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6813 (main): read LILYPOND_VERBOSE as the first thing.
6815 * stepmake/aclocal.m4: remove INSTALL variable.
6817 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6818 separate target for making font symlinks.
6819 (documentation-dir): use $(if $(findstring )) for switching off
6822 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6823 something if DOCUMENTATION is no.
6825 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6827 * VERSION: release 2.7.24
6829 * lily/script-column-engraver.cc (stop_translation_timestep):
6830 delay adding to script-column.
6832 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6834 * python/convertrules.py (conv): rule for number-visibility
6836 * lily/slur-configuration.cc (score_extra_encompass): different
6837 distance measure for avoid and inside avoidance.
6838 (score_extra_encompass): use 1/(distance+eps) as penalty.
6840 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6841 encompass objects for generating slur curves.
6843 * lily/slur.cc: use details iso. slur-details property.
6845 * input/regression/slur-tuplet.ly: new file.
6847 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6849 * flower/include/offset.hh (class Offset): new operator /=
6851 * lily/tuplet-number.cc (print): new file, new interface.
6853 * scm/define-grob-properties.scm (all-user-grob-properties):
6854 remove number-visibility property.
6856 * lily/tuplet-bracket.cc (calc_control_points): new function
6857 (calc_connect_to_neighbors): new function.
6858 (print): remove text handling for tuplet numberdef.
6860 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6863 * lily/lily-guile.cc (robust_scm2booldrul): new function
6865 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6867 * lily/tuplet-bracket.cc (calc_position_and_height): use
6868 staff-padding to control whether tuplet brackets are over staves.
6870 * lily/grob.cc (suicide): clear dim_caches_.
6872 * lily/dimension-cache.cc (clear): new function.
6874 * lily/grob.cc (extent): swap order of min-extent and extent
6875 calculations. This fixes hara kiri staves.
6877 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6879 * lily/main.cc: Nitpick: relocation is not based on path, but on
6880 directory (location).
6882 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6884 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6886 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6888 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6890 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6892 * stepmake/stepmake/generic-vars.make (Module): idem.
6894 * stepmake/stepmake/executable-targets.make (default): use it.
6896 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6898 * make/GNUmakefile: don't install make rules.
6900 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6902 (prepend_env_path): more verbosity.
6904 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6906 * GNUmakefile.in: add dir argument for find command.
6908 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6909 fixes weird line numbers for point & click.
6911 * lily/source-file.cc (get_counts): init line/column/char counts.
6913 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6915 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6917 2005-12-16 Graham Percival <gpermus@gmail.com>
6919 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6920 minor fixes from Fredric. Thanks!
6922 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6924 * ly/music-functions-init.ly: add \bar and \clef music function
6926 * lily/lily-lexer.cc: idem.
6928 * lily/parser.yy (FIXME): remove BAR and CLEF.
6930 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6932 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6934 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6935 function arguments too
6937 * lily/main.cc (set_relocation): new function.
6939 * scripts/musicxml2ly.py (convert): add \version
6941 * lily/tie.cc: remove get_default_attachments()
6943 * VERSION (PACKAGE_NAME): release 2.7.23
6945 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6946 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6948 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6950 * lily/tie-formatting-problem.cc (score_ties): new function
6951 (get_variations): new function. Try flipping dirs for collisions.
6952 (generate_optimal_chord_configuration): new function. 1-opt search
6953 for better configuration.
6955 * lily/tie-configuration.cc: new file.
6957 * lily/tie.cc: junk Tie::get_configuration()
6959 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6960 (score_ties_configuration): new function.
6961 (generate_ties_configuration): new function.
6962 (generate_base_chord_configuration): new function.
6963 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6964 (set_manual_tie_configuration): Move body from tie-column-format.cc
6966 * input/regression/tie-dot.ly: new file.
6968 * lily/tie-formatting-problem.cc (score_configuration): score
6971 * lily/tie-helper.cc (get_transformed_bezier): new function
6973 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6975 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6976 -undefined suppress iso. -framework Python
6978 * scm/define-grobs.scm (all-grob-descriptions): set
6979 springs-and-rods (thanks Joe Neeman!)
6981 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6983 * input/no-notation/display-lily-tests.ly (test):
6984 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6985 changed from \tag #'(a b) to \tag #'a \tag #'b
6987 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6989 * Documentation/topdocs/NEWS.tely: strip out-www.
6991 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6993 * config.make.in (AR): add AR and RANLIB
6995 * flower/libc-extension.cc: include cassert
6997 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7000 2005-12-11 Graham Percival <gpermus@gmail.com>
7002 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7004 * stepmake/stepmake/python-modules-vars.make: define
7005 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7007 * THANKS: added Johannes Schindelin.
7009 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7011 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7013 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7014 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7016 * lily/parser.yy: reorganize file layout.
7018 * ly/music-functions-init.ly: add tweak music function.
7020 * lily/grob-info.cc (ultimate_music_cause): new function:
7021 recursively lookup causes.
7023 * lily/parser.yy (chord_body_element): allow music functions for
7024 post-events, allow music functions for chord elements.
7026 * lily/font-config-scheme.cc (display_fontset): add cast.
7028 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7029 #'(a b) -> \tag #'a \tag #'b rule.
7031 * python/musicexp.py (Output_printer.dump_version): new function
7033 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7035 * lily/parser.yy (FIXME): remove \tag
7036 (FIXME): remove tag_music() function.
7038 * lily/lily-lexer.cc: remove \tag
7040 * ly/music-functions-init.ly: define music-function "tag"
7042 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7044 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7046 * VERSION (PATCH_LEVEL): release 2.7.22
7048 * input/regression/lyric-hyphen-retain.ly: renew.
7050 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7053 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7054 iso. minimum-length property for rods.
7056 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7057 LyricSpace item to keep lyrics spaced apart.
7059 * ly/engraver-init.ly: remove Separating_line_group_engraver
7061 * Documentation/user/music-glossary.tely: do setfilename before
7064 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7066 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7067 See xref documentation, for example.
7069 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7071 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7072 pending_skip iso. ly_voice[-1]
7073 (main): add if __main__ for debugging.
7075 * python/musicxml.py (Accidental.__init__): new class.
7077 * scripts/musicxml2ly.py (progress): new function
7078 (musicxml_key_to_lily): don't barf on modeless keys.
7079 (create_skip_music): new function.
7080 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7081 (musicxml_note_to_lily_main_event): new function.
7083 * python/musicexp.py (Music.__init__): add comment field.
7084 (NestedMusic.append): new routine.
7085 (SequentialMusic.print_ly): print comment.
7086 (ArpeggioEvent.ly_expression): new class
7087 (BeamEvent.ly_expression): new class
7088 (NoteEvent.__init__): support for cautionary/forced accs.
7090 * lily/lookup.cc (slur): normal order for array loop.
7092 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7095 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7098 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7100 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7102 * scripts/lilypond-book.py: Introduce option
7103 --preserve-line-breaks, for usage with srcltx
7105 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7107 * scm/output-lib.scm (print-circled-text-callback): draw circle
7108 around text using make-circle-markup.
7110 * Documentation/user/*: strip out-www from file names.
7112 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7114 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7115 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7117 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7119 * Documentation/user/GNUmakefile: idem.
7121 * Documentation/user/macros.itexi: strip out-www
7123 * python/rational.py: python 2.3 compat.
7125 * VERSION (PATCH_LEVEL): release 2.7.21
7127 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7128 option formatting, lilypond style.
7130 * python/musicexp.py: grab from Ikebana: a library for composing
7131 ly music expressions.
7132 (Output_printer): class for advanced .ly printing.
7135 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7136 convert to pythonesque structure.
7138 * python/rational.py: PD rational number class.
7140 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7142 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7144 * lily/part-combine-iterator.cc: Minor bugfix
7146 * THANKS: Update bughunters
7148 2005-12-02 Werner Lemberg <wl@gnu.org>
7150 * mf/README: Document process for proper mf2pt1 conversion.
7152 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7155 * mf/feta-harmonica.mf: Removed. Unused.
7157 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7159 * scripts/lilypond-book.py (do_file): fix thinkos.
7161 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7163 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7164 ($(outdir)/parser.cc):
7165 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7167 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7169 * ly/titling-init.ly (tagline): it should be a space between
7170 "Music engraving by LilyPond" and the version number.
7172 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7174 * VERSION (PACKAGE_NAME): release 2.7.20
7176 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7178 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7180 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7182 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7184 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7186 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7188 * kpath-guile/: remove directory
7190 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7191 file. Encapsulate kpathsea using commandline tools.
7193 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7196 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7198 * Documentation/user/advanced-notation.itely (Setting automatic
7199 beam behavior): Correct a few typos. Thanks to David Bobroff.
7201 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7202 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7204 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7206 * scripts/*.py: gmane address for bugs.
7208 2005-11-28 Pal Benko <benkop@freestart.hu>
7210 * make/ly-rules.make: add -f switch to mv
7212 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7214 * lily/bar-line.cc: interpret it
7216 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7218 * configure.in (--disable-documentation): New switch.
7220 * GNUmakefile.in: Use it.
7222 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7224 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7226 * scripts/lilypond-book.py (do_file): search chunks for
7229 * GNUmakefile.in: add copy step in between so we can lose the
7230 out-www directories.
7232 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7234 * lily/pango-font.cc (pango_item_string_stencil): put
7235 geometry.width into glyph-string too.
7237 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7239 * scm/define-music-display-methods.scm (RevertProperty):
7240 (OverrideProperty): Use grob-property-path property, a list of
7241 symbols, instead of grob-property, which used to be a single
7243 (BassFigureEvent): a figure can be a plain number, not necessarily a
7246 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7248 * VERSION: release 2.7.19
7250 * lily/figured-bass-engraver.cc (process_music): check
7251 figuredBassCenterContinuations first.
7253 * scm/translation-functions.scm (format-bass-figure): make double
7256 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7259 * lily/system-start-delimiter-engraver.cc: move from
7260 Nested_system_start_delimiter_engraver, rename
7261 Nested_system_start_delimiter_engraver ->
7262 System_start_delimiter_engraver.
7264 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7265 bracket type from hierarchy.
7267 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7269 * lily/rest.cc (y_offset_callback): read staff-position.
7271 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7272 mark after-line-breaking-callback as internal.
7274 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7276 2005-11-25 Werner Lemberg <wl@gnu.org>
7278 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7280 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7282 * stepmake/bin/add-html-footer.py (do_file): add google
7284 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7285 staff if first_start_ is true.
7287 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7289 * scripts/midi2ly.py (split_track): add __repr__ members.
7290 (track_first_item): only return Item if not None. This fixes a
7291 problem when dumping a track that starts with an empty channel.
7293 * python/midi.c: doc module.
7295 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7297 * Documentation/user/global.itely (Creating MIDI files): Fix
7298 compilation problem.
7300 2005-11-22 Graham Percival <gpermus@gmail.com>
7302 * Documentation/user/basic-notation.itely: clarify dynamic
7305 * Documentation/user/advanced-notation.itely: add unicode
7306 escape control example, whatever that is. :)
7308 * Documentation/user/global.itely: added "removing dynamics
7311 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7313 * VERSION (PATCH_LEVEL): release 2.7.18
7315 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7316 System_start_delimiter_engraver by
7317 Nested_system_start_delimiter_engraver.
7319 * lily/nested-system-start-delimiter-engraver.cc (struct
7320 Bracket_nesting_node): new class.
7321 (struct Bracket_nesting_group): new class
7322 (struct Bracket_nesting_staff): new class.
7323 (process_music): create hierarchy of grobs. This allows separate
7324 tuning of different SSDs.
7326 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7327 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7329 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7331 * lily/side-position-interface.cc (aligned_side): multiply
7334 * lily/script-engraver.cc (make_script_from_event): allow setting
7337 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7339 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7341 * scm/define-grobs.scm (all-grob-descriptions): new grob
7342 NestedSystemStartDelimiter.
7344 * input/regression/system-start-heavy-bar.ly: new file.
7346 * lily/nested-system-start-delimiter-engraver.cc: new file.
7348 * lily/nested-system-start-delimiter.cc: new file.
7350 * input/regression/system-start-nesting.ly: new file.
7352 * scm/define-grobs.scm (all-grob-descriptions): use X side
7353 positioning for positioning braces for nested contexts.
7355 * lily/system-start-delimiter.cc (print): don't divide extent by
7357 (print): use style iso. glyph.
7358 (staff_bracket): translate glyph inside routine already.
7360 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7362 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7365 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7367 * scm/define-context-properties.scm
7368 (all-user-translation-properties): rename figuredBassFormatter
7369 from newFiguredBassFormatter.
7371 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7373 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7375 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7377 * lily/beam.cc (calc_beaming): new function.
7378 (calc_shorten): new function.
7380 * THANKS: add Edward Neeman.
7382 * input/regression/accidental-clef-change.ly: new file.
7384 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7386 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7388 * lily/clef-engraver.cc (inspect_clef_properties): reset
7389 localKeySignature for clef changes.
7391 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7393 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7394 add dummy definition that works in Linux and add information in
7395 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7397 * Documentation/user/changing-defaults.itely (Modifying context
7398 plug-ins): Add index for \with.
7400 * Documentation/user/music-glossary.tely (dal segno): Updated
7401 example to version >=2.6.
7403 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7405 * Documentation/user/instrument-notation.itely (Printing chord
7406 names): Reorder \chordmode and \repeat in one example.
7408 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7410 * VERSION: release 2.7.17
7412 * Documentation/topdocs/NEWS.tely (Top): add note about
7415 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7416 new function. Search region of 3 positions for best tie.
7417 (score_configuration): new function.
7418 (score_aptitude): new function.
7419 (generate_configuration): new function.
7420 (get_configuration): new function.
7421 (Tie_formatting_problem): new function
7423 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7425 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7427 * THANKS: add Eduardo Vieira & Ralph Little
7429 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7432 * lily/include/tie-formatting-problem.hh (class
7433 Tie_formatting_problem): add Tie_details to
7434 Tie_formatting_problem. Update calling conventions.
7436 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7439 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7441 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7443 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7444 scm/define-context-properties.scm: Maintenance bugfix: make
7445 ligature brackets work again by removing obsolete ligature
7446 primitive callback push/pop.
7448 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7449 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7452 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7454 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7455 used and do not call it a path.
7456 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7458 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7460 * lily/include/tie-formatting-problem.hh (class
7461 Tie_formatting_problem): new file.
7463 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7465 * Documentation/misc/ChangeLog-2.3: new file.
7467 * lily/audio-staff.cc (output): degarianize.
7469 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7471 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7472 Unset PYTHONOPTIMIZE. Fixes install if set.
7474 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7476 * python/convertrules.py (conv): add warning about drums.
7478 * make/stepmake.make: include toplevel-version.make after config.make.
7480 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7481 also allow python2.4
7483 * config.make.in (configure-srcdir): remove GXX GCC vars.
7485 * stepmake/aclocal.m4: don't do non-srcdir build with
7486 symlinks. Use inclusion, so the src directory name can be changed.
7488 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7490 * make/mutopia-vars.make:
7491 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7494 2005-11-13 Werner Lemberg <wl@gnu.org>
7496 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7497 but the affected path. This ensures that the (overlapping) outlines
7498 have the same direction, which is a necessary prerequisite for
7499 FontForge's algorithm to remove overlaps.
7502 * mf/feta-haak.mf: Formatting.
7503 (draw_bracket): Slightly modify outline to avoid an unnecessary
7505 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7506 them from the affected paths.
7508 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7510 * mf/README: remove xpm / accordion notes.
7512 * lily/tie-column-format.cc (set_chord_outline): add dots into
7513 skyline extents. This fixes tie formatting if the left head has dots.
7515 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7516 space inside the staff.
7517 (get_configuration): shift another position if necessary in case
7520 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7522 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7523 buildscript-dir iso. $(depth)/buildscripts.
7525 * tex/GNUmakefile (local-uninstall): remove
7526 music-drawing-routines.ps juggling.
7528 * stepmake/stepmake/install-targets.make (local-install-files):
7529 prepend src-dir to install targets.
7531 * lily/system-start-delimiter-engraver.cc
7532 (acknowledge_system_start_delimiter): use
7533 add_offset_callback(). This fixes translation of nested
7536 * lily/grob-closure.cc (add_offset_callback): only encaps in
7537 simple_closure if it's a procedure.
7539 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7542 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7543 remove-empty where pertinent.
7545 2005-11-12 Graham Percival <gpermus@gmail.com>
7547 * Documentation/user/instrument-notation.itely: added
7548 Cameron Horsburgh's multiple stanzas docs. Thanks!
7550 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7553 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7554 make picture in builddir, not srcdir.
7556 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7558 * VERSION: release 2.7.16
7560 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7563 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7565 * Documentation/user/examples.itely (Piano templates): Minor
7566 modification to the Piano centered lyrics example.
7568 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7570 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7573 * Documentation/user/point-and-click.itely: simplify p&c
7574 instruction: don't configure firefox. Put lilypond-invoke-editor
7575 in front of the browser.
7577 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7578 (run-browser): new function.
7580 * lily/parser.yy (Lily_lexer): recognize Book
7582 * lily/book.cc (clone): new function
7584 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7586 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7588 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7589 Maintenance bugfix: reduce number of font related warnings by
7590 updating naming conventions for glyph-name.
7592 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7594 * scm/define-grobs.scm (all-grob-descriptions): add
7595 rhythmic-grob-interface to TabNoteHead.
7597 * scm/layout-beam.scm (check-quant-callbacks): remove
7600 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7602 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7603 alignment of centered divisiones.
7605 * scm/scripts.scm (articulations): Maintenance bugfix:
7606 follow-into-staff -> quantize-position.
7608 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7609 plica head in porrectus deminutus.
7611 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7613 * make/lilypond.fedora.spec.in (Group): add %clean section.
7615 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7616 less then 1/5th of total length.
7617 (print): use gap too. Fixes tupletUp-single-bracket.ly
7619 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7620 events into EventChord. This fixes textspanners on mm rests. Fixes
7623 * lily/side-position-interface.cc (get_axis): read side-axis
7624 (set_axis): set side-axis.
7626 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7627 properties everywhere.
7629 * lily/spacing-spanner.cc (breakable_column_spacing): add
7630 average-spacing-wishes. Take maximum if not set.
7631 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7633 * scm/define-grobs.scm (all-grob-descriptions): add
7634 average-spacing-wishes.
7636 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7637 offset callbacks. This fixes alignment for Fingering objects.
7639 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7640 space for key - timesig combination.
7642 * input/regression/script-stem-tremolo.ly (Module): new file.
7644 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7647 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7648 Fixes: c-tremolo-script.ly.
7650 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7652 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7654 * scm/define-grobs.scm (all-grob-descriptions): remove
7655 self-X-offset. Fixes alignment of octavate-8.
7657 * scripts/lilypond-book.py (datadir): look in
7658 LILYPONDPREFIX/share/lilypond/current/
7660 * GNUmakefile.in: symlink current to <VERSION>.
7662 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7664 * lily/main.cc: eps listed as a backend.
7666 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7668 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7670 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7672 * lily/include/score.hh (class Score): remove texts_ member.
7674 * lily/beam.cc (set_stem_lengths): force direction callback.
7675 (print): read quantized-positions, so we can force
7676 Beam::set_stem_lengths to occur.
7677 (rest_collision_callback): use common X parent.
7679 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7681 * flower/file-path.cc (find): Bugfix: Return name of file found.
7683 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7684 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7685 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7687 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7689 * flower/offset.cc: idem.
7691 * mf/*.mf: update email address.
7693 * lily/font-config-scheme.cc: new file.
7695 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7697 * lily/*: cs.uu.nl -> xs4all.nl
7699 * VERSION (PATCH_LEVEL): release 2.7.15
7701 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7704 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7706 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7708 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7710 * lily/staff-performer.cc (process_music): add audio
7711 elements. This makes MIDI instrument changes work once again.
7713 * lily/main.cc (LY_DEFINE): add gmane address.
7715 * lily/beam.cc: remove calc_positions()
7717 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7718 original_ in private scope.
7719 (class Grob): drop pscore_ pointer, change to output_def pointer.
7720 (class Grob): cleanup class definition.
7722 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7724 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7726 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7727 absolute. Better diagnostics.
7729 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7730 This makes lilypond run from the build directory using argv0
7731 relocation (without any --prefix or LILYPONDPREFIX setting).
7733 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7735 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7737 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7738 with simple-closure.
7740 * lily/self-aligment-interface.cc (set_align_self): new function
7741 (set_center_parent): new function.
7743 * lily/side-position-interface.cc (set_axis): new function.
7745 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7748 * scm/define-grob-properties.scm (all-user-grob-properties):
7749 remove [XY]-offset-callbacks add [YX]-offset
7751 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7753 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7754 entry for time signatures after breathing signs. Bug report by
7757 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7759 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7760 not absolute, make it absolute using PATH.
7762 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7764 * python/midi.c (initmidi): Fix type for mingw.
7766 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7768 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7770 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7773 * stepmake/aclocal.m4: Support python cross compiling.
7775 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7778 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7780 * scm/output-lib.scm (chain-grob-member-functions): replace
7783 * lily/chained-callback.cc (Module): remove file.
7785 * lily/rest-collision.cc (force_shift_callback_rest): change to
7788 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7790 * lily/grob.cc (y_parent_positioning): remove axis argument from
7791 parent_positioning callbacks.
7792 (Grob): junk init code
7793 (get_offset): use generic property callbacks for
7794 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7795 (axis_parent_positioning): new function
7796 (axis_offset_symbol): new function
7797 (chain_offset_callback): new function
7798 (add_offset_callback): new function
7800 * lily/beam.cc (rest_collision_callback): change signature; this
7801 is now a chained callback.
7803 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7804 callback administration.
7806 * lily/simple-closure.cc: new file. Smob type that allows "grob
7809 (ly:make-simple-closure FUNC A B)
7811 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7814 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7817 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7819 * lily/rest.cc (polyphonic_offset_callback): remove.
7821 * lily/script-engraver.cc (try_music): remove bool* argument.
7823 * scm/script.scm (default-script-alist): set quantize-position
7826 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7828 * lily/side-position-interface.cc (aligned_side): move staff
7829 position quantization from
7830 Side_position_interface::quantised_position().
7831 (quantised_position): remove
7833 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7835 * input/regression/beam-quant-standard.ly: reindent, set
7836 debug-beam-quanting to #t.
7838 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7839 10000 if this is a "hard" concave beam.
7841 * lily/beam.cc (calc_least_squares_positions): change from
7842 calc_least_squares_dy
7843 (set_stem_lengths): this is now a chained callback.
7845 * lily/context-property.cc (execute_general_pushpop_property):
7846 bugfix override with procedure should have effect.
7848 * scm/define-grob-properties.scm (all-internal-grob-properties):
7849 remove position-callbacks.
7851 * scm/define-grobs.scm (all-grob-descriptions): use
7852 ly:make-callback-chain for positions property.
7854 * scm/layout-beam.scm (check-quant-callbacks): return list of
7857 * scm/lily.scm (type-p-name-alist): add callback-chain
7859 * lily/lily-guile.cc (type_check_assignment): type check failure
7860 is warning not message.
7862 * lily/grob-property.cc (try_callback): walk callback chain if
7865 * lily/chained-callback.cc: new file. new smob type.
7867 * lily/lily-guile.cc (procedure_arity): new function.
7869 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7871 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7873 2005-10-25 John Mandereau <john.mandereau@free.fr>
7875 * Documentation/user/instrument-notation.itely (Figured bass):
7876 describe new features
7878 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7880 * lily/beam.cc (calc_least_squares_dy): use property callback.
7882 * lily/beam-concave.cc (calc_concaveness): use property callback.
7884 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7886 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7890 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7892 * scm/layout-page-layout.scm (page-headfoot): annotate
7895 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7897 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7898 doesn't take y-space.
7900 * scm/paper.scm (paper-alist): fix A7 dimensions.
7902 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7904 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7905 src-wildcard, remove $(wildcard).
7907 * po/GNUmakefile (PO_FILES):
7908 * ps/GNUmakefile (PS_FILES):
7909 * tex/GNUmakefile (TEX_FILES):
7910 * cygwin/GNUmakefile (POSTINSTALLS):
7911 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7912 some wildcard calls.
7914 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7916 * THANKS: add Thomas Bushnell.
7918 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7920 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7921 (lilypond-main): Redirect to gui-main if 'gui is set.
7923 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7924 for alternative installations kludging s/share/lib/g
7927 * SConstruct (libdir_package_version): Define.
7929 * python/SConscript:
7930 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7933 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7935 * lily/main.cc: clarify --safe.
7937 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7939 * VERSION: release 2.7.14
7941 * Documentation/user/*.itely: remove minimumVerticalExtent.
7943 * scm/define-grobs.scm (all-grob-descriptions): remove
7944 RemoveEmptyVerticalGroup
7946 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7948 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7951 * python/convertrules.py (conv): add rules.
7953 * lily/grob.cc: remove is_empty()
7955 * lily/grob-property.cc: remove add_to_list_property().
7957 * scripts/convert-ly.py (datadir): add prefix switching hack to
7960 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7961 space-function tweak.
7963 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7965 * scm/define-grob-properties.scm (all-user-grob-properties):
7966 remove callback property.
7968 * lily/include/grob.hh (class Grob): remove property_callbacks_
7969 member. Properties of procedure type are assumed to be callbacks.
7971 * lily/ligature-engraver.cc (override_stencil_callback):
7972 rewrite. Use noteHeadLigaturePrimitive as source.
7974 * scm/define-grob-properties.scm (all-internal-grob-properties):
7975 remove ligature-primitive-callback
7977 * lily/include/dimension-cache.hh (class Dimension_cache): make
7978 class, with Grob as friend.
7980 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7981 has_extent_callback()
7983 * scm/translation-functions.scm (format-new-bass-figure): read
7984 figuredBassPlusDirection
7986 * scm/define-context-properties.scm
7987 (all-user-translation-properties): add figuredBassPlusDirection.
7989 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7991 * lily/align-interface.cc (set_ordered): new function.
7993 * lily/grob.cc (flush_extent_cache): rewrite.
7995 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7996 Interval pointer directly.
7998 * lily/main.cc (setup_paths): insert extra / .
7999 (setup_paths): junk cff entry.
8001 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8004 * lily/axis-group-engraver.cc (finalize): remove
8005 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8007 * lily/grob.cc (Grob): don't set extent from ctor.
8008 (extent): use property callbacks.
8010 * lily/axis-group-interface.cc: remove set_axes() function.
8012 * lily/grob-property.cc (del_property): new function.
8014 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8016 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8018 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8020 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8022 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8024 * mf/SConscript: Updates.
8026 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8028 * stepmake/stepmake/*:
8032 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8033 from any directory in build-dir. Cleanups.
8035 * make/srcdir.make.in: Remove.
8037 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8039 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8042 * lily/SConscript: Remove ttftools.
8044 * SConstruct: Resurrect.
8046 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8048 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8051 * lily/paper-book.cc (add_score_title): put Paper_score title into
8054 * scm/translation-functions.scm (format-new-bass-figure): also
8055 allow plus in combination with _
8057 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8059 * VERSION: 2.7.13 released.
8061 * lily/note-collision.cc (check_meshing_chords): don't wipe
8062 stencil, merely set transparent.
8064 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8065 (Top): document #'callbacks.
8066 (Top): document nested \override.
8068 * input/regression/figured-bass.ly: update for slash and pluses.
8070 * input/regression/figured-bass-continuation-forbid.ly (Module):
8073 * scm/translation-functions.scm (format-new-bass-figure): use
8074 slashed-digit if diminished is set.
8075 (format-new-bass-figure): add + if 'augmented is set.
8077 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8079 * input/test/piano-staff-distance.ly: remove file.
8081 * Documentation/user/advanced-notation.itely (Formatting cue
8082 notes): use length-fraction for making stems/beams smaller.
8084 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8087 * lily/new-figured-bass-engraver.cc: new property
8088 centerFiguredBassContinuations
8090 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8093 * lily/context-property.cc (execute_general_pushpop_property):
8096 * input/regression/override-nest.ly: new file.
8098 * python/convertrules.py (FatalConversionError.subber): conversion
8099 rule for #'callbacks
8101 * input/regression/override-nest.ly: new function.
8103 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8106 * lily/context-property.cc (lookup_nested_property): new function.
8107 (evict_from_alist): new function.
8108 (general_pushpop_property): new function.
8109 (execute_general_pushpop_property): rewrite. Support nested
8112 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8114 * lily/beam.cc: use length-fraction too.
8116 * scm/define-grob-properties.scm (all-user-grob-properties):
8117 remove property flag-width-function
8118 (all-user-grob-properties): remove space-function.
8120 * scm/layout-beam.scm: remove flag-width-function.
8122 * lily/beam.cc: remove flag-width-function
8124 * scm/layout-beam.scm: remove beam dir functions.
8126 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8128 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8129 for easier grace tweaks.
8131 * lily/beam.cc: remove dir-function.
8133 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8135 * lily/grob.cc: remove spacing-procedure.
8137 * lily/note-head.cc (calc_stem_attachment): new function.
8138 (internal_print): use callback to get glyph-name.
8140 * lily/grob-property.cc (get_interfaces): new function.
8142 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8144 * lily/stem.cc (calc_stem_end_position): new function.
8145 (calc_length): new function.
8146 document details for stem.
8147 remove Stem::get_direction()
8149 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8151 * lily/grob-property.cc (set_callback): new function.
8153 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8155 * lily/item-scheme.cc: new file.
8157 * lily/bar-line.cc (before_line_breaking): remove function.
8158 remove bar-size-procedure, break-glyph-function
8160 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8162 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8164 * lily/system-start-delimiter.cc (print): suicide from
8165 here. Remove after_line_breaking_callback.
8167 * lily/script-interface.cc (calc_direction): use callback for direction.
8169 * lily/side-position-interface.cc (aligned_side): don't use
8170 Side_position_interface::get_direction directly. Use callback.
8172 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8174 (get_print_stencil): rename from get_stencil: create stencil with
8175 transparency, color and cause.
8177 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8179 * python/convertrules.py (conv): insert temporary warning rule.
8181 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8183 * lily/grob-property.cc (try_callback): remove marker if applicable.
8185 * lily/grob.cc: elucidate doc about after/before-line-breaking
8187 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8189 * lily/stem.cc (height): idem.
8191 * lily/stem-tremolo.cc: idem.
8193 * lily/slur.cc (height): don't use get_uncached_stencil()
8195 * lily/rest.cc (y_offset_callback): use offset callback
8196 iso. after-line-breaking callback.
8198 * lily/grob.cc: change after/before-line-breaking-callback to
8199 after/before-line-breaking dummy properties.
8201 * lily/include/grob.hh: remove Grob_status.
8203 * scm/define-context-properties.scm
8204 (all-user-translation-properties): remove verticalAlignmentChildCallback
8206 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8207 (calc_direction): use callback
8208 (calc_positions): use callback.
8210 * lily/tie.cc (calc_direction): use callback. Only call parent
8211 positioning for more than one tie.
8213 * lily/tie-column.cc (calc_positioning_done): use callback
8215 * lily/slur-scoring.cc (calc_control_points): use callback
8217 * lily/slur.cc (calc_direction): use callback.
8219 * lily/note-collision.cc (force_shift_callback): remove.
8221 * lily/dot-column.cc (force_shift_callback): remove. Use
8222 other_axis_parent_positioning.
8224 * lily/grob.cc (other_axis_parent_positioning): new function.
8225 (same_axis_parent_positioning): new function
8227 * lily/align-interface.cc (alignment_callback): remove function.
8229 * lily/note-collision.cc (calc_positioning_done): use callback.
8231 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8232 (calc_direction): idem.
8233 remove print function.
8235 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8237 * lily/dot-column.cc (calc_positioning_done): use callback.
8239 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8241 * lily/beam.cc (calc_direction): use pseudo-property for beam
8243 (calc_positions): use callback
8245 * lily/align-interface.cc (calc_positioning_done): use
8246 callback. Fold fixed distance and normal alignment in one function.
8248 * lily/stem.cc (calc_stem_end_position): use callback.
8249 (calc_positioning_done): idem.
8250 (calc_direction): idem.
8251 (calc_stem_end_position): idem
8252 (calc_stem_info): idem.
8254 * lily/grob-property.cc (get_property_data): new function:
8255 (try_callback): new function.
8257 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8260 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8262 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8264 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8268 * lily/include/*.hh (Module): compile fixes.
8270 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8272 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8273 as an argument for char-syntax: use (char-syntax (or nil 0))
8274 instead of (char-syntax nil), thanks to Milan Zamazal.
8276 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8278 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8281 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8284 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8286 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8287 add class_name() method.
8289 * lily/music-scheme.cc: remove ly:music-name.
8291 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8293 * cygwin/postinstall-lilypond.sh: Remove cruft.
8295 * cygwin/postremove-lilypond.sh: Remove.
8297 * cygwin/GNUmakefile (default): Remove postremove rules.
8299 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8301 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8304 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8307 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8308 consider break index for broken spanner.
8310 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8311 characters from string before splitting.
8313 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8315 * scm/framework-ps.scm (output-preview-framework): use
8316 is-book-title to determine whether to chop off the booktitle.
8318 * lily/paper-book.cc (systems): init from book-title-properties
8319 (add_score_title): init score-title-properties.
8321 * ly/paper-defaults.ly: add {score,book}-title-properties.
8323 * scm/document-backend.scm (lookup-interface): error message if
8324 using unknown interface.
8326 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8329 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8331 (make_bracket): new function.
8333 * scm/lily.scm (define-scheme-options): add paper-size option.
8335 * ly/declarations-init.ly (laissezVibrer): get paper size from
8338 * scm/translation-functions.scm: use \fontsize for changing the
8341 * scm/define-grobs.scm (all-grob-descriptions): set
8342 between-length-limit to 1.0
8344 * lily/tie-helper.cc: add between_length_limit_ detail property.
8346 * mf/feta-bolletjes.mf: typos.
8348 * lily/note-head.cc (internal_print): don't shadow idx
8349 parameter. This fixes wrong attachment for do shape heads.
8351 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8353 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8355 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8357 * scm/layout-slur.scm: rename from slur.scm
8359 * scm/layout-page-layout.scm: rename from page-layout.scm
8361 * scm/layout-beam.scm: rename from beam.scm
8363 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8364 bass-figure-interface
8366 * lily/new-figured-bass-engraver.cc (process_music): add
8367 implicitBassFigures property.
8369 * scm/define-markup-commands.scm (pad-x): new markup.
8371 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8372 minimumVerticalExtent on FiguredBass context.
8374 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8375 case the continuation crosses a line break.
8377 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8379 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8380 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8381 absolute file name bug.
8383 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8385 * VERSION (PACKAGE_NAME): release 2.7.12
8387 * input/regression/figured-bass-continuation-center.ly: new file.
8389 * input/regression/beam-outside-beamlets.ly: new file.
8391 * lily/beam.cc (set_beaming): don't clip edges.
8392 (connect_beams): don't clip edges.
8394 * lily/beaming-info.cc (clip_edges): new function.
8396 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8398 * Documentation/user/instrument-notation.itely (Figured bass):
8399 demonstrate extenders, update seealso links.
8401 * scm/titling.scm (marked-up-headfoot): change tagline
8402 handling. tagline = ##f will blank the tagline as well.
8404 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8406 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8408 * lily/new-figured-bass-engraver.cc (struct
8409 New_figured_bass_engraver): add new_music_found_ member.
8411 * lily/lilypond-version.cc (Lilypond_version): deal with
8412 incorrectly formatted version strings.
8414 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8415 New_figured_bass_engraver by default.
8417 * lily/ttf.cc (print_trailer): only define glyph names when
8418 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8420 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8422 * lily/horizontal-bracket.cc (make_bracket): new function.
8424 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8425 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8426 BassFigureLine, BassFigureAlignment
8428 * lily/new-figured-bass-engraver.cc (process_music): new file.
8430 * lily/figured-bass-continuation.cc: new file.
8432 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8435 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8437 * scripts/lilypond-book.py: Bug fix, put the quote around the
8438 actual score for LaTeX documents.
8440 * scm/define-grobs.scm (all-grob-descriptions): Change
8441 collapse-height of the SystemStartBracket grob to 5.0,
8442 so the bracket disappears for single stave score lines (similarly
8443 to SystemStartBraces).
8445 * Documentation/user/advanced-notation.itely (Polymetric
8446 notation): Clarify the use of compressMusic.
8448 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8449 that the grace spacer note in other staves need the same duration
8450 and document the stroke-style property.
8452 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8454 * Documentation/user/global.itely (Vertical spacing): document
8455 alignment-extra-space and fixed-alignment-extra-space.
8457 * Documentation/topdocs/NEWS.tely (Top): add entry.
8459 * input/regression/alignment-vertical-spacing.ly: new file.
8461 * python/convertrules.py (conv): add rule.
8463 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8465 * lily/align-interface.cc (stretch_after_break): new
8466 function. Read fixed-alignment-extra-space property.
8467 (align_elements_to_extents): read alignment-extra-space property.
8469 * lily/lily-guile.cc (robust_scm2dir): new function.
8471 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8472 (annotate-space-left): new function. Annotate space left on page.
8473 (annotate-y-interval): new function.
8474 (paper-system-annotate-last): new function. Annotate bottom-space.
8476 * mf/feta-beugel.mf (y):
8478 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8480 * VERSION (PACKAGE_NAME): release 2.7.11
8482 * scm/lily-library.scm (interval-translate): new function
8483 (interval-center): new function.
8485 * scm/page-layout.scm (paper-system-annotate): new function. Add
8486 arrows for dimensions.
8488 * scm/stencil.scm (dimension-arrows): new function.
8490 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8492 * input/regression/page-spacing.ly: add annotatespacing
8494 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8495 (LY_DEFINE): new function ly:paper-system-set-property!
8497 * Documentation/user/global.itely (Paper size): explain how to add
8500 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8501 correspond to GS's definition.
8503 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8505 (print): only connect to next bracket if the next one is alive.
8506 (print): set padding to 0.0 if the bound is a breakable
8507 column. This makes tupletFullLength brackets reach up to the staff
8508 line if it doesn't connect to the next line.
8510 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8512 * lily/bar-number-engraver.cc: correct docs.
8514 * scm/output-lib.scm (first-bar-number-invisible): rename from
8515 default-bar-number-visibility
8517 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8519 * scm/define-music-properties.scm (all-music-properties): remove
8522 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8524 * po/fi.po: refresh.
8526 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8528 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8530 (disappear): bugfix.
8532 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8534 * lily/include/paper-system.hh (class Paper_system): remove
8535 staff_extents_ member.
8537 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8539 * lily/include/paper-system.hh (class Paper_system): remove
8540 number_ variable. Remove is_title_. Remove break_before_penalty_
8542 * lily/paper-book.cc (systems): use 'number property iso. number_
8545 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8546 remove ly:paper-system-number.
8548 * scm/lily-library.scm (paper-system-title?): new function.
8550 * lily/book.cc (process): bugfix: flip ?: cases.
8552 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8555 * ly/music-functions-init.ly: add outputProperty music function.
8557 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8559 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8561 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8563 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8565 * lily/paper-system.cc (internal_get_property): new function.
8567 * Documentation/user/global.itely (Vertical spacing): refer to
8570 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8573 * input/regression/page-spacing.ly: new file.
8575 * input/regression/page-top-space.ly: new file.
8577 * lily/spacing-spanner.cc: cmath -> math.h
8579 * lily/paper-system.cc (read_left_bound): new function. Read
8580 line-break-system-details from left bound to determine extents.
8582 * Documentation/user/programming-interface.itely (Using LilyPond
8583 syntax inside Scheme): change applyxxx -> applyXxx.
8585 * ly/music-functions-init.ly: add outputProperty music function.
8587 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8589 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8591 * python/convertrules.py (conv): rule
8593 * ly/music-functions-init.ly: applyxxx -> applyXxx
8595 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8598 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8600 * flower/include/real.hh: include <math.h> iso. <cmath>
8602 * flower/include/offset.hh: include real.hh
8604 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8606 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8607 fix example, now that 'interfaces is no longer directly available.
8609 * lily/book.cc (process): don't crash if paper == NULL.
8613 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8615 * scm/define-music-types.scm (music-descriptions): set length and
8616 start-callback for QuoteMusic
8618 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8620 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8621 arguments. Fixes compilation error with gcc 3.3.
8623 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8625 * VERSION: release 2.7.10
8627 * stepmake/stepmake/python-module-rules.make
8628 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8630 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8633 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8635 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8636 -Werror. Otherwise GCC barfs over various optimizations.
8638 * scm/define-grob-properties.scm (all-internal-grob-properties):
8639 add note-head property
8641 * Documentation/user/instrument-notation.itely (Laissez vibrer
8644 * input/regression/laissez-vibrer-ties.ly: new file.
8646 * lily/laissez-vibrer-engraver.cc: new file.
8648 * lily/include/tie-column-format.hh: new file.
8650 * lily/tie-column-format.cc: new file.
8652 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8654 * lily/laissez-vibrer-tie.cc: new file.
8656 * lily/include/laissez-vibrer-tie.hh: new file.
8658 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8660 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8662 * scm/define-grobs.scm (all-grob-descriptions): add
8663 LaissezVibrerTie, LaissezVibrerTieColumn
8665 * lily/tie-column.cc (set_tie_config_directions): new function
8666 (final_shape_adjustment): new function.
8667 (shift_small_ties): new function.
8669 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8671 * lily/include/tie.hh (struct Tie_details): add x_gap_
8672 (struct Tie_configuration): add head_position_
8674 * lily/tie-column.cc (set_chord_outline): new function.
8676 * mf/cmr.enc.in: remove file.
8678 2005-09-11 Graham Percival <gpermus@gmail.com>
8680 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8682 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8684 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8685 reduce aliasing effects.
8687 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8690 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8692 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8694 * flower/include/real.hh: std::fabs too.
8696 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8698 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8700 * lily, flower: Include C++ iso C headers. Import namespace std
8703 * lily/side-position-interface.cc:
8705 * lily/note-head.cc:
8706 * lily/include/includable-lexer.hh:
8707 * flower/include/string-data.icc: Remove using std::*.
8709 * lily, flower: Include C++ iso C headers. Import namespace std
8712 * lily/side-position-interface.cc:
8714 * lily/note-head.cc:
8715 * lily/include/includable-lexer.hh:
8716 * flower/include/string-data.icc: Remove using std::*.
8718 * Documentation/user/instrument-notation.itely (Entering lyrics):
8719 Multiple latin-1->utf-8 conversion fix.
8721 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8723 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8725 * lily/tie.cc (get_configuration): also avoid dots for non-space
8728 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8730 * Documentation/user/instrument-notation.itely: Bugfix.
8732 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8734 * tex/GNUmakefile: don't install texinfo.tex
8736 * tex/ : cleanup: remove unused files.
8738 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8740 * flower/include/real.hh: using std::{isnan,isinf}
8742 * VERSION (PATCH_LEVEL): release 2.7.9
8744 2005-09-05 Graham Percival <gpermus@gmail.com>
8746 * Documentation/user/ instrument-notation.itely,
8747 advanced-notation.itely: minor tweaks.
8749 * input/test/script-chart.ly: add item padding.
8751 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8753 * flower/offset.cc: use math.h iso. <cmath>
8755 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8758 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8759 (widen-left-stencil-edges): new function. Fix alignment problems
8760 with LaTeX includegraphics.
8762 * lily/text-interface.cc (interpret_markup): use abort().
8764 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8766 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8768 * lily/tie.cc (get_configuration): update bezier shape as we
8770 (get_configuration): don't move large ties if we're outside of the
8773 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8775 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8777 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8779 * .cvsignore: Add auto-generated configure files and then some.
8781 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8783 * scm/define-grobs.scm (DynamicLineSpanner): Add
8784 X-extent-callback. Fixes hairpin-slur collision.
8786 2005-08-31 Graham Percival <gpermus@gmail.com>
8788 * Documentation/user/advanced-notation.itely,
8789 basic-notation.itely: minor changes.
8791 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8793 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8794 \linebreak between each .eps file if \betweenLilyPondSystem is
8797 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8798 music): Document the \linebreak
8800 * Documentation/user/lilypond-book.itely,
8801 input/tutorial/lbook-latex-test.tex,
8802 Documentation/user/examples.itely: Remove \usepackage{graphics}
8804 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8806 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8808 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8811 * scripts/lilypond-book.py (PREAMBLE_LY): define
8812 inside-lilypond-book
8813 (modify_preamble): new function. Insert \RequirePackage{graphics}
8814 when no {graphics found in preamble.
8816 2005-08030 Graham Percival <gpermus@gmail.com>
8818 * Documentation/user/basic-notation.itely, global.itely,
8819 tutorial.itely: misc small changes.
8821 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8823 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8826 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8828 * lily/tie-column.cc (new_directions): put Tie down on center
8831 * lily/script-interface.cc (before_line_breaking): use
8832 Grob::programming_error
8834 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8836 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8839 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8841 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8843 2005-08-29 Werner Lemberg <wl@gnu.org>
8845 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8846 the `*.scale.pfa' files to avoid warnings.
8848 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8850 * lily/tempo-performer.cc (process_music): idem.
8852 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8854 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8856 * Documentation/user/advanced-notation.itely (Text markup): not a
8859 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8861 * lily/staff-performer.cc (initialize): add tempo/name to
8864 2005-08-26 Graham Percival <gpermus@gmail.com>
8866 * Documentation/user/advanced.itely: add text-only example.
8868 * Documentation/user/invoking.itely: add index entries for
8871 * Documentation/user/ tutorial.itely, basic-notation.itely:
8872 small fixes suggested by Steve D. Thanks!
8874 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8876 * input/regression/markup-bidi-pango.ly: new file.
8878 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8879 standard. Remove #ifdef. Remove memleak.
8880 (text_stencil): use text_dir to decide how to composite items.
8881 (text_stencil): determine uniform text direction for the entire
8884 * scripts/lilypond-book.py (output_name): remove
8885 latex_filter_cmd. Non-portable to non-Unix systems.
8886 (get_latex_textwidth): use File.write and os.unlink() instead.
8888 * THANKS: add Vicente & Trevor.
8890 * lily/grob.cc (discretionary_processing): look up origin for
8891 programming_error too.
8893 * input/regression/tie-broken.ly: new file.
8895 * lily/tie-column.cc (set_chord_outlines): set outline for line
8898 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8900 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8901 unscaled transform, just translate stencils.
8903 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8906 * scm/define-markup-commands.scm (wordwrap-string): use
8908 (wordwrap-stencils): idem.
8911 (wordwrap-stencils): translate last line to right for
8912 text-direction = LEFT.
8914 * scm/define-grob-properties.scm (all-user-grob-properties): add
8917 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8919 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8920 when copying a Lily_parser object.
8922 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8924 * scm/define-markup-commands.scm (null): add null markup.
8926 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8928 * lily/item.cc: Add documentation of center-invisible
8930 2005-08-24 Graham Percival <gpermus@gmail.com>
8932 * Documentation/user/advanced-notation.itely: add info about
8935 * Documentation/user/programming-interface.itely: fix example
8936 involving raised text.
8938 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8940 * lily/beam.cc (print): fix X start/end points of isolated
8943 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8945 * lily/multi-measure-rest.cc (set_text_rods): new function.
8947 * lily/vertical-align-engraver.cc (process_music): call
8948 Align_interface::set_axis(). This forces #'elements to be ordered,
8949 preventing random vertical reordering of staves.
8951 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8952 add avoid-slur property.
8954 * Documentation/user/basic-notation.itely (Measure repeats): add
8955 countPercentRepeats example.
8957 * Documentation/user/advanced-notation.itely (Other text markup
8958 issues): remove remark about normal-font. We have \normal-text
8960 * input/regression/tie-chord.ly: add note about remaining bugs.
8962 * lily/tie.cc (print): try Tie_column::set_directions () if
8963 control-points not yet defined.
8965 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8967 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8968 extent. This fixes braces falling out of the EPS bbox.
8970 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8973 2005-08-23 Graham Percival <gpermus@gmail.com>
8975 * {various} : change #up->#UP and #down->#DOWN.
8977 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8979 * Documentation/user/advanced-notation.itely: clarify
8980 what objects handles text on a multimeasure rest.
8982 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8984 * VERSION (PATCH_LEVEL): release 2.7.7
8986 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8988 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8990 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8992 * input/regression/*.ly: formatting clean-up. Default layout
8993 before music expression.
8995 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8996 romanze28-2 example.
8998 * scm/ps-to-png.scm: remove dir-re function.
8999 (make-ps-images): generate page names, instead of globbing them.
9000 This brings down LilyPond memory usage for make web by a factor
9003 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9004 don't use glob. With 3000 files, globbing
9005 Documentation/user/out-www/ can take too much time.
9007 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9009 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9011 * input/regression/tie-manual.ly: new file
9013 * input/regression/tie-chord.ly: update.
9015 * flower/include/interval.hh (struct Interval_t):
9017 * lily/tie.cc (distance): new function
9018 (height): new function.
9019 (init): new function
9020 (Tie_details): new struct.
9022 * lily/skyline.cc (skyline_height): new function.
9024 * lily/tie-column.cc (set_chord_outlines): new function.
9025 (new_directions): read tie-configuration
9027 * lily/skyline.cc: fix ASCII art.
9029 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9031 * python/convertrules.py (string_or_scheme): Fix spelling error
9033 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9035 * lily/tie-column.cc (set_directions): set directions only once.
9036 (add_configuration): new function.
9038 * lily/tie.cc (set_control_points): new function
9040 * lily/tie-column.cc (new_directions): new function.
9042 * ly/music-functions-init.ly: set 'pitch property
9043 iso. trill-pitch. This makes \relative work with \pitchedTrill
9045 * lily/tie.cc (get_configuration): new function. Don't generate
9046 control points, rather, generate configuration.
9047 remove head-pair property.
9049 * lily/include/tie.hh (struct Tie_configuration): new struct.
9051 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9053 * Documentation/topdocs/NEWS.tely: clarify.
9055 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9057 * lily/tie.cc: remove minimum-length
9059 * scm/define-grob-properties.scm (all-user-grob-properties):
9060 remove staffline-clearance, y-offset
9062 * input/regression/tie-dots.ly (Module): remove.
9064 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9065 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9067 * input/regression/tie-single.ly: new file.
9069 2005-08-21 Graham Percival <gpermus@gmail.com>
9071 * ly/bagpipe.ly: fix compile problem.
9073 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9075 * lily/midi-item.cc (name): new method.
9077 * lily/staff-performer.cc (acknowledge_audio_element): use
9078 signature of baseclass.
9080 * lily/engraver-group.cc (do_announces): move recursion call out
9083 * lily/drum-note-performer.cc (class Drum_note_performer): use
9084 process_music everywhere.
9086 * ly/performer-init.ly: add default children everywhere.
9088 * lily/paper-book.cc (output): call paper-book-write-midis
9089 directly: always write MIDI, even if no \layout {} block.
9091 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9093 * VERSION (PACKAGE_NAME): release 2.7.6
9095 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9096 about not being able to handle repeat.
9098 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9100 * Documentation/user/examples.itely (Piano templates):
9101 * lily/include/performer-group.hh: Remove last traces of
9102 Performer_group_performer. Fixes make web.
9104 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9106 * Documentation/user/examples.itely (Piano templates): change
9107 Engraver_group_engraver -> Engraver_group
9109 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9110 scm_stand_in_procs is not weak_any.
9112 * lily/volta-bracket.cc (print): don't use strcmp().
9114 * lily/volta-engraver.cc (process_music): use
9115 Text_interface::is_markup() for setting the 'text property of the
9118 * input/mutopia/claop.py (accents): update syntax to 2.6
9120 * scm/define-context-properties.scm
9121 (all-user-translation-properties): add countPercentRepeats.
9123 * Documentation/user/basic-notation.itely (Measure repeats): add
9124 isolated percent example.
9126 2005-08-18 Graham Percival <gpermus@gmail.com>
9128 * input/ {various}: change direction #1, #-1 to
9129 #up/#down or \fooUp, \fooDown.
9131 * Documentation/user/music-glossary.tely: #-1 to #down.
9133 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9134 to #up, #-1 to #down.
9136 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9138 * lily/include/engraver-group.hh: rename.
9140 * lily/include/performer-group.hh: rename.
9142 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9144 * input/test/script-abbreviations.ly: Removed some old LaTeX
9147 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9149 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9150 Remove functions. Remove if 1: constructs, reindent.
9152 * scripts/convert-ly.py (add_version): Add functions from
9155 * scm/script.scm (default-script-alist):
9156 s/priority/script-priority. Fixes script stacking. Backportme.
9157 (Fermata): Very low priority.
9159 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9161 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9163 * input/regression/slur-script.ly: remove padding tweaks. Add
9166 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9167 time sigs and related stuff.
9169 * scm/define-grob-properties.scm (all-user-grob-properties): add