1 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4 * scm/define-grobs.scm:
5 separation-items have width
13 * Documentation/topdocs/NEWS.tely:
14 * lily/separating-group-spanner.cc:
15 * lily/slur-engraver.cc:
16 * lily/slur-scoring.cc:
17 * scm/define-grobs.scm:
18 * input/regression/slur-clef.ly:
19 add breakableSeparationItem to extra encompass for slurs. This fixesslur/clef slur/key collisions etc. Should fix #49
22 * lily/include/slur-scoring.hh:
23 * lily/slur-scoring.cc:
24 Use X of separation item as slur start. Fixes #120
26 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
28 * buildscripts/git-update-changelog.py (changelog_body): don't
31 * lily/grob.cc: add avoid-slur
33 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
37 move server/emacsclient to elisp/
39 * buildscripts/git-update-changelog.py (Commit.note_del_file):
42 * elisp/server.el.patch:
45 * elisp/emacsclient.patch:
48 * buildscripts/git-update-changelog.py:
55 * buildscripts/git-update-changelog.py:
56 script to update ChangeLog with Git messages.
58 * lily/beam-engraver.cc:
59 * input/regression/rest-pitched-beam.ly:
60 don't set callback if staff-position set. Fixes #126.
62 * lily/bar-number-engraver.cc:
64 * lily/fingering-engraver.cc:
65 * lily/grob-property.cc:
67 * lily/include/grob.hh:
68 * lily/include/lily-guile-macros.hh:
69 * lily/mark-engraver.cc:
70 * lily/melody-engraver.cc:
71 * lily/script-column.cc:
72 * lily/tie-formatting-problem.cc:
74 internal_get_property_data() using ly_symbol2scm()
76 * stepmake/stepmake/generic-targets.make:
77 create .gitignore in outdir.
82 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
84 * input/test/vertical-extent.ly:
85 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
87 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
89 * stepmake/bin/add-html-footer.py (compose): remove setgcos
91 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
93 * GNUmakefile.in (install-help2man): install-help2man target.
95 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
97 * SConstruct (configure): Do not check for /bin/sh.
99 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
101 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
104 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
106 * input/regression/fret-boards.ly: new file.
108 * po/de.po: new po courtesy translation team.
110 * scripts/lilypond-book.py (get_option_parser): add newline to doc
113 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
115 * ly/gregorian-init.ly (neumeDemoLayout): update
116 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
118 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
119 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
121 2006-10-27 Erlend Aasland <erlenda@gmail.com>
123 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
124 Yet another build fix.
126 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
128 * SConstruct (lilypondprefix): use sorted() for list_sort()
131 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
133 * flower/SConscript: Unit test rules.
135 * flower/test-std.cc: Compile fix.
137 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
139 * python/midi.c (pymidi_parse_track): warning fixes.
141 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
142 include dot-column.hh
144 2006-10-26 Graham Percival <gpermus@gmail.com>
146 * Documentation/user/{basic-, global}: minor changes from mailist.
148 2006-10-26 Erlend Aasland <erlenda@gmail.com>
150 * scm/define-grobs.scm: trivial beautification
152 * lily/tie-performer.cc: no need to #include "pqueue.hh"
154 * lily/source-file.cc: put multibyte var inside #if clause
156 * scm/define-grob-interfaces.scm:
157 * scm/define-grob-properties.scm:
158 Build fix (string-fret-finger-combinations)
160 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
163 * Documentation/user/lilypond-book.itely: Build fix.
165 2006-10-26 Joe Neeman <joeneeman@gmail.com>
167 * lily/system.cc (get_paper_system):
168 * lily/paper-book.cc (systems):
169 move most of the backwards compatibility stuff into
172 * Documentation/topdocs/NEWS.tely: add 2 entries for the
175 * Documentation/user/page.itely: remove time-scaled-music
176 bug for the Page_turn_engraver
178 * lily/paper-book.cc (set_system_penalty): backwards
179 compatibility (breakbefore) for the old page breaker
181 2006-10-25 Graham Percival <gpermus@gmail.com>
183 * Diocumentation/user/instrument-notation.itely: added more
184 info about stanzas; thanks Geoff!
186 * Documentation/user/ {basic, advanced}: small fixes from
189 * THANKS: add some bug reporters.
191 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
193 * scm/define-context-properties.scm (all-user-translation-properties):
194 noteToFretFunction: Add.
196 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
197 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
199 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
201 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
204 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
205 Remove bashism in delete.
207 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
209 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
211 * scm/translation-functions.scm (determine-frets-mf): flatten let*
213 * scm/define-context-properties.scm
214 (all-user-translation-properties): add maximumFretStretch property.
216 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
218 * lily/source-file.cc (get_counts): use multibyte variable.
220 * scm/translation-functions.scm (determine-frets-mf): new
221 function: compute fret numbers.
223 * scm/output-lib.scm (string-frets->description) new function.
224 (fret-board::calc-stencil): new function
226 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
228 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
230 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
232 * lily/tab-note-heads-engraver.cc: cleanups.
234 * lily/fretboard-engraver.cc: new file
236 * ly/engraver-init.ly: add FretBoards context
238 2006-10-24 Joe Neeman <joeneeman@gmail.com>
240 * lily/grob.cc (pure_relative_y_coordinate)
241 (pure_height): use the new call_pure_function stuff
243 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
246 * lily/side-position-interface.cc (pure_y_aligned_side): add an
249 * lily/simple-closure.cc (ly_eval_simple_closure): make
250 simple-closure evaluatable from scheme
251 (evaluate_with_simple_closure): make simple-closures pure-
254 * lily/slur.cc (pure_outside_slur_callback): new function
256 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
257 fits in with previous changes that made the page forces much
260 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
261 and pure-Y-extent into this new function.
262 (pure-conversions-alist): add outside-slur-callback
264 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
266 * Documentation/user/advanced-notation.itely (Instrument names):
267 Remove obsolete bug workaround for instrument names on piano
270 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
272 * Documentation/user/lilypond-book.itely (Integrating DocBook and
273 music): patch by Bertalan Fodor for docbook.
275 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
276 of $(LILYPOND). Prevents lilypond run for .txt files.
278 * INSTALL.txt: gitness.
280 * .cvsignore: update to force gitness.
282 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
284 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
285 detect suicide in nested tuplets.
287 2006-10-23 Werner Lemberg <wl@gnu.org>
289 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
290 typo in argument to FT_Get_X11_Font_Format.
292 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
294 * stepmake/stepmake/po-vars.make: more gitness.
296 * flower/polynomial.cc (check_sol): no empty if bodies.
298 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
300 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
302 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
304 * Documentation/user/examples.itely (Transcription of mensural
305 music): Added more comments in .ly source. Suggest to remove
306 Forbid_line_break_engraver to allow line breaking at all bars.
308 * Documentation/user/instrument-notation.itely (Ancient
309 articulations): Updated @refbugs regarding episem.
311 * Documentation/user/instrument-notation.itely (Gregorian square
312 neumes ligatures): Added \augmentum dots. Updated @refbugs
313 regarding \augmentum.
315 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
317 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
320 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
323 * ly/gregorian-init.ly: Added \augmentum macro.
325 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
327 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
329 * lily/pango-font.cc (pango_item_string_stencil): use
330 FT_Get_X11_Font_Format()
332 2006-10-22 John Mandereau <john.mandereau@free.fr>
334 * po/fr.po: update translation.
336 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
338 * VERSION (PATCH_LEVEL): bump version
340 * input/regression/horizontal-bracket-break.ly: new file.
342 * scm/define-grobs.scm (all-grob-descriptions): calc
345 * lily/horizontal-bracket.cc (make_bracket): support
346 connect-to-neighbor. Fix #118
348 * VERSION: release 2.9.26-2
350 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
352 * VERSION (PACKAGE_NAME): release 2.9.26
354 * buildscripts/output-distance.py (test_basic_compare): add
356 (FileLink.multi_img_cell): new function, glob multi-page png
359 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
361 * po/lilypond.pot: update.
363 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
365 * Documentation/user/global.itely (File structure): remove
368 * lily/parser.yy (FIXME): remove ADDQUOTE
370 * Documentation/user/global.itely (Extracting fragments of
371 notation): new node, about clip systems.
373 * Documentation/user/lilypond-book.itely (Many quotes of a large
374 score): ref to clip systems.
376 * Documentation/user/instrument-notation.itely (Entering lyrics):
377 add note about lyric ties and required font.
379 * lily/open-type-font.cc (glyph_list): format errors.
381 * Documentation/user/programming-interface.itely (Scheme
382 procedures as properties): more doco on simple-closure and scheme
384 (Input variables and Scheme): use lilypond[verbatim], document
387 * Documentation/user/page.itely (Displaying spacing): use \book
388 explicitly, so arrows show .
389 (Line breaking): add note about Forbid_line_break_engraver
391 * Documentation/user/tweaks.itely (Common tweaks): also set length
392 to prevent tie squeezing.
393 (Default files): use @var{}
395 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
396 (Generating LilyPond files): add FOMUS.
398 2006-10-20 Joe Neeman <joeneeman@gmail.com>
400 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
401 Y-offset for TextScript and Script
403 * lily/text-engraver.cc (make_item):
404 * lily/script-engraver.cc (make_script_from_event):
405 remove call to Side_position_interface::set_axis since all scripts
406 now have this set by default
409 * lily/prob.cc: use variables
411 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
413 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
414 at typography, rather analyse stream event duration.
416 * Documentation/user/page.itely (Page formatting): set a6 paper
417 for system separator example.
419 * lily/arpeggio.cc (Module): idem.
421 * lily/accidental-placement.cc: add script-priority property.
423 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
425 * lily/ttf.cc (print_trailer): if all else fails: use
426 glyphIndexXXXX as glyph name. Fixes #117.
428 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
429 entry if cmap contains glyph.
430 (get_index_to_charcode_map): remove from Pango_font class, use
431 global filename -> font mapping.
432 (get_glyph_index_name): new function.
433 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
436 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
438 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
441 * scm/define-grob-properties.scm (all-user-grob-properties):
442 remove outdated doc. Fixes #116
444 * lily/completion-note-heads-engraver.cc (process_music): always
445 clone input events; otherwise we may overwrite input 'duration
446 property. Fixes #115.
448 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
451 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
454 * VERSION (PATCH_LEVEL): bump version.
456 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
458 * lily/engraver.cc (internal_make_grob): use variables.
460 * flower/string-convert.cc (dec2double): clean-up warnings.
462 * configure.in (CXXFLAGS): add -Werror.
464 * VERSION (PACKAGE_NAME): release 2.9.25
466 2006-10-18 Joe Neeman <joeneeman@gmail.com>
468 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
469 line even if we precede a forced break.
471 * lily/optimal-page-breaking.cc (try_page_spacing): square line
472 forces too. Make page-spacing weight default to 10 because the
473 changes to vertical springs decreased the page force/line force
474 proportions. Also, take the average of line force and page force
475 instead of just the sum.
477 * lily/constrained-breaking.cc (initialize): make the stiffness
478 of the vertical springs depend on the height of the system. This
479 prevents pages with only a few large systems from getting huge
482 * Documentation/user/page.itely (Page formatting): document the
483 change in default page-spacing-weight
485 * lily/include/constrained-breaking.hh: initialise bottom_padding_
487 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
489 * input/typography-demo.ly (melody): remove superfluous slur.
491 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
492 add piano-pedal-script-interface
494 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
496 * scripts/lilypond-book.py: DocBook support.
498 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
500 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
502 (stop_translation_timestep): set bound to currentMusicalColumn if
503 not set yet. Fixes #102
505 * lily/piano-pedal-bracket.cc: formatting.
507 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
509 * lily/piano-pedal-align-engraver.cc: new class
510 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
513 2006-10-18 Heikki Junes <hjunes@gmail.com>
515 * po/fi.po: Update Finnish translation (before the next release).
517 2006-10-17 Joe Neeman <joeneeman@gmail.com>
519 * lily/system.cc (get_paper_system): reinstate the backwards-
520 compatible page breaking for the old page breaker.
522 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
524 * lily/recording-group-engraver.cc: removed
526 * lily/context.cc, lily/translator-group.cc: Don't touch
527 Context::implementation_ if it's null
529 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
531 * scm/paper.scm: only use left-margin if defined.
533 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
535 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
537 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
538 strokeFingerOrientations
540 * lily/script-column.cc (row_before_line_breaking): also handle
541 accidentals and arpeggios in horizontal script stacking.
543 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
546 * input/regression/script-stack-horizontal.ly: trim.
548 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
550 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
553 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
554 'text if string argument.
556 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
558 * scm/define-context-properties.scm
559 (all-user-translation-properties): change to strokeFingerOrientations
561 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
563 * lily/parser.yy: remove debug output
565 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
567 * ly/paper-defaults.ly: set left/right margin.
569 * scm/paper.scm (set-paper-dimensions): use left-margin and
570 right-margin for computing linewidth.
572 * Documentation/topdocs/NEWS.tely (Top): idem.
574 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
577 * scm/define-markup-commands.scm (tied-lyric): increase negative
578 space: space syllables tighter.
580 * VERSION (PATCH_LEVEL): bump version.
582 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
585 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
587 * COPYING: further clarification
589 * VERSION: release 2.9.24
591 * input/regression/script-stack-horizontal.ly: add version.
593 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
595 * input/regression/lyric-tie.ly (texidoc): use different words.
597 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
599 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
601 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
602 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
604 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
606 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
608 * Doxyfile: remove file.
610 * scm/define-grob-interfaces.scm (string-finger-interface): add
611 string-finger-interface
613 * lily/general-scheme.cc (LY_DEFINE): move
614 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
616 * Documentation/topdocs/NEWS.tely (Top): add note for
617 string-finger feature.
619 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
622 * scm/output-lib.scm (string-finger::calc-text): read 'digit
625 * input/regression/script-stack-horizontal.ly: new file.
627 * ly/engraver-init.ly: add Script_row_engraver.
629 * lily/script-column.cc (order_grobs): refactor: separate axis
631 (row_before_line_breaking): new function.
633 * lily/script-row-engraver.cc (Script_row_engraver): new file.
635 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
637 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
639 * Documentation/user/instrument-notation.itely: Cleanup: Remove
640 annoying skip notes from mensural ligature example. Update
641 @refbugs for ligatures and mensural ligatures.
643 * lily/coherent-ligature-engraver.cc,
644 lily/include/coherent-ligature-engraver.hh,
645 lily/mensural-ligature-engraver.cc,
646 lily/vaticana-ligature-engraver.cc: Revise code for item
647 reparentizing. There should now be less programming_error
650 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
652 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
653 Maintenance bugfix: Don't create empty Stencil (), but empty box
654 instead. This fix should eliminate some programming_error
657 * ly/engraver-init.ly (MensuralStaff): Set default accidental
660 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
661 \layout block _before_ score.
663 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
665 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
667 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
669 2006-10-13 Erlend Aasland <erlenda@gmail.com>
671 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
673 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
675 * VERSION (PATCH_LEVEL): bump version.
677 * COPYING: clarify exception note.
679 * lily/main.cc: remove remark about "COPYING".
681 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
682 system-count starts at 0 for each clip-region. Change name to
683 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
684 layout block, per score.
686 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
688 * lily/input-smob.cc: add equal_p for Input
690 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
693 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
695 * lily/prob.cc: Add equal_p predicate for Prob
697 * lily/translator.cc: small cleanup
699 * scm/document-music.cc: use data from translator listener
700 registration to generate documentation for event classes
702 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
704 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
706 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
708 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
710 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
712 * Documentation/topdocs/INSTALL.texi: Thinko.
714 * .cvsignore: Update.
716 * lexer-gcc-3.1.sh: Remove.
718 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
719 Update anonymous cvs access. Remove comment about gcc 3.0.4.
721 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
723 * VERSION: release 2.9.23
725 * lily/paper-column-engraver.cc (stop_translation_timestep): also
728 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
730 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
732 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
734 * input/regression/clip-systems.ly (Notes): new file.
736 * scm/lily.scm (define-scheme-options): add clip-systems option.
738 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
740 (dump-stencil-as-EPS): move bbox calculation from previous
742 (output-framework): use -dclip-systems
744 * scm/lily-library.scm (filtered-map): new function
746 * scm/framework-ps.scm (clip-system-EPS): new function.
747 (clip-system-EPSes): new function.
749 * lily/paper-column.cc: add rhythmic-location to interface
751 * scm/define-grob-properties.scm (all-user-grob-properties): add
752 rhythmic-location property.
754 * scm/clip-region.scm: new file: rhythmic-location data type and
755 system-clipped-x-extent function.
757 * ly/init.ly: use (scm clip-region)
759 * lily/paper-column-engraver.cc (stop_translation_timestep): set
760 rhythmic-location for paper column grobs.
762 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
764 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
766 * ly/engraver-init.ly: Remove obsolete comment on
769 * Documentation/user/instrument-notation.itely: Tune Ancient
770 Articulations figure, such that the episem actually shows.
772 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
773 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
775 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
778 2006-10-12 Graham Percival <gpermus@gmail.com>
780 * Documentation/user/ {some}: minor edits that were lost somehow.
782 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
784 * VERSION (PACKAGE_NAME): bump version.
786 * input/regression/lyric-tie.ly (texidoc): new file.
788 * Documentation/topdocs/NEWS.tely (Top): add new feature.
790 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
792 * scm/define-markup-commands.scm (tied-lyric): new function: split
793 string along ~ and reattach with U+203F (tie character) and
796 * scm/output-lib.scm (lyric-text::calc-text): new function.
798 * lily/lyric-engraver.cc (process_music): don't set 'text.
800 * scm/output-lib.scm (string-finger::calc-text): new function
801 (lyric-text::print): new function.
803 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
804 generic for fingering & string number. Use for string-finger.
806 * scm/define-music-types.scm (music-descriptions): add
809 * lily/fingering-engraver.cc (listen_string_finger): new function
811 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
813 * scm/define-context-properties.scm
814 (all-user-translation-properties): add stringFingerOrientations
816 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
818 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
819 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
821 * lily/dots.cc: Added style property for dots.
823 * mf/parmesan-heads.mf: Fix typo in comment.
825 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
826 adding longa head to feta font and removing obsolete default
829 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
831 * scm/output-lib.scm (fingering::calc-text): use origin
832 event-property, not music-property.
834 * lily/lilypond.rc.in: spell my name correctly.
836 2006-10-10 Joe Neeman <joeneeman@gmail.com>
838 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
839 already have a non-empty extent. Fixes estimation for Hara-kiri
842 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
844 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
847 * lily/ligature-engraver.cc: Remove unused #include.
849 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
850 Bugfix: remove method check_for_prefix_loss(Item *) from global
851 namespace to avoid namespace pollution.
853 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
855 * VERSION: release 2.9.22
857 * ly/generate-documentation.ly: update option name.
859 * lily/dynamic-text-spanner.cc (print): revert fix.
861 * scm/define-grob-interfaces.scm
862 (trill-pitch-accidental-interface):
863 add trill-pitch-accidental-interface
865 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
866 dereference if it's really a duration.
868 * lily/figured-bass-engraver.cc (process_music): clear spanner if
869 useBassFigureExtenders is not set.
870 (listen_bass_figure): record as new event if
871 useBassFigureExtenders not set. Fixes #103.
873 * scm/stencil.scm (circle-stencil): don't center stencil argument,
874 instead: move circle. Fixes #107.
876 * scm/define-grobs.scm (all-grob-descriptions): set
877 allow-loose-spacing for PaperColumn and
878 NonMusicalPaperColumn. Kludge for #110.
880 * lily/spaceable-grob.cc: add allow-loose-spacing property.
882 * lily/spacing-determine-loose-columns.cc (is_loose_column):
883 allow-loose-spacing property.
885 * scm/define-markup-commands.scm (postscript): gsave & grestore
886 around embedded PS. Do setlinewidth too. Fixes #109.
888 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
890 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
891 code. This patch fixes ligature brackets that were not at all
894 2006-10-08 Graham Percival <gpermus@gmail.com>
896 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
898 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
900 * scm/define-context-properties.scm: clarified docs (bug 91).
902 * Documentation/user/basic-notation.itely: document volta brackets
903 not aligning (bug 63).
905 * Documentation/user/ global.itely invoking.itely: ignore or
906 add warnings about texstr.
908 2006-10-08 John Mandereau <john.mandereau@free.fr>
910 * po/fr.po: update translation.
912 * po/: update msgids.
914 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
916 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
918 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
920 * Documentation/user/page.itely (Two-pass vertical spacing): add
921 documentation for two-pass spacing technique.
923 2006-10-06 Graham Percival <gpermus@gmail.com>
925 * Documentation/user/convert-ly.txt: new file; new
926 storage place for this file (moved from bugs/ CVS).
928 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
930 * lily/note-head.cc: Fixed programming_error message.
932 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
934 * scm/define-grobs.scm (pure-conversion): move pure-callback
937 * scm/script.scm (default-script-alist): set avoid-slur for turn,
938 marcato, stopped, thumb.
940 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
942 * lily/completion-note-heads-engraver.cc (process_music): don't
943 skimp on memory usage.
945 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
948 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
949 parenthesis item. This fixes premature Y-extent triggering. Fixes
952 * VERSION (PATCH_LEVEL): bump version.
954 2006-10-04 Graham Percival <gpermus@gmail.com>
956 * Documentation/user/advanced-notation.itely: added
957 info about instrument names for piano or other contexts,
960 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
962 * mf/feta-bolletjes.mf (solfa_quarter_width): use
963 solfa_base_notewidth as unit for non-DO-notes too.
965 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
967 * VERSION: release 2.9.21
969 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
972 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
974 * python/lilylib.py (progress): Minor fix.
976 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
978 * lily/note-name-engraver.cc: doc engraver.
980 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
982 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
984 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
987 * lily/stem-engraver.cc (make_stem): don't set duration-log
989 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
990 write snippet-names binary.
992 * python/lilylib.py (system): use os.system for mingw32
994 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
997 * scm/backend-library.scm: update email address.
999 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1002 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1005 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1006 handle dot creation separately.
1008 * lily/tab-note-heads-engraver.cc (process_music): idem.
1010 * lily/drum-note-engraver.cc (process_music): idem.
1012 * lily/note-heads-engraver.cc (process_music): idem.
1014 * lily/rest-engraver.cc: don't set duration-log.
1016 * scm/output-lib.scm (string-number::calc-text): new function.
1017 (note-head::calc-duration-log): new function.
1019 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1021 * scm/output-lib.scm (fingering::calc-text): new function.
1023 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1025 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1026 and include-eps-font -> include-eps-fonts
1028 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1030 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1032 * lily/timing-translator.cc: list properties.
1033 (start_translation_timestep): update internalBarNumber too.
1035 * scm/define-context-properties.scm
1036 (all-user-translation-properties): add internalBarNumber.
1038 * input/regression/spacing-no-note.ly: new file.
1040 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1042 * lily/book.cc: #include cleanup.
1044 * lily/include/lily-guile-macros.hh: add assert to
1045 scm_or_str2symbol(SCM).
1047 * VERSION (PATCH_LEVEL): bump version.
1049 * lily/spacing-spanner.cc (musical_column_spacing): handle
1050 musical->nonmusical spacing case, where there is no spacing
1051 wish. Fixes issue #61.
1053 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1054 (pango_item_string_stencil): use logical rect horizontally (to
1055 preserve spaces), ink_rect vertically (for time signatures).
1057 * lily/font-metric.cc (word_stencil): new interface function
1059 * input/regression/utf-8-mixed-text.ly: new file.
1061 * lily/percent-repeat-engraver.cc (listen_percent): remove
1064 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1065 non-dynamic scripts. Fixes #30.
1067 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1069 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1071 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1072 SCM_UNDEFINED for non-existent data.
1074 * lily/side-position-interface.cc (general_side_position): allow
1075 optional current_offset argument for chaining, so combinations of side-position
1076 and outside slur callback don't add up. Fixes issue #92.
1078 * lily/pango-font.cc (pango_item_string_stencil): use
1079 logical_rect. This prevents spaces after words from disappearing,
1082 * VERSION: release 2.9.20
1084 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1086 * scm/define-grob-properties.scm (all-user-grob-properties):
1087 mention stencil as user settable.
1089 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1091 * Documentation/user/page.itely (Page formatting):
1092 document auto-first-page-number
1094 * lily/page-breaking.cc (find_chunks_and_breaks):
1095 * lily/paper-score.cc (calc_breaking): Follow changes to the
1096 Constrained_breaking interface
1098 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1099 here backwards, as an optimisation
1100 (initialize): new function; move most of the code in resize () here
1101 (combine_demerits): cache ragged_right_
1102 (Constrained_breaking): constructor now takes the Paper_score
1104 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1106 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1107 avoid parser lookahead for 0-ary functions.
1109 * lily/translator.cc: Extract event classes from
1110 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1112 2006-10-02 Heikki Junes <hjunes@gmail.com>
1114 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1117 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1119 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1120 function. Call the page breaking function selected in the
1121 `page-breaking' \paper variable, then the post processing function
1122 chosen using the `page-post-process' \paper variable.
1123 (line-height): new function. Return the height of a system.
1124 (line-minimum-position-on-page): new function. Return the position
1125 of a system on page (using the previous line position), only
1126 considering between system padding.
1127 (stretchable-line?): new function. Says whether a line can be
1128 stretched (ie. is not a title nor a single staff system).
1129 (page-maximum-space-left): new function. Computes space left on a
1130 page, when all systems are separated by their padding.
1132 * lily/page-breaking.cc (breaking::make_pages): Move page post
1133 processing function call to page breaking wrapper (common to all
1136 * lily/paper-book.cc (book::pages): call the page breaking
1137 wrapper, instead of the page breaker directly
1139 * ly/paper-defaults.ly: Add \paper variables for page breaking
1140 wrapper and page post processing function. Make
1141 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1142 `system-maximum-stretch-procedure' variable for holding a function
1143 computing the maximum stretch a system allows.
1145 * scm/layout-page-dump.scm (write-page-breaks): computes the
1146 stretch to apply to systems on a page to minimize left
1147 space. Dump this stretch length.
1149 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1150 the system-stretch property of the tweak data to stretch the
1152 (includePageLayoutFile): Void function which includes the
1153 generated page-layout file if it exists and if the page layout
1154 dumping is not asked.
1155 (scoreTweak): if the score tweak named by the argument exists,
1158 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1160 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1161 handle correctly the case where there are multiple \noPageBreaks
1164 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1166 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1168 * abc2ly.py fix so that entering " -- " will translate to a -- in
1169 the lilypond instead of a " - - "
1171 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1173 * lily/align-interface.cc: fix typo
1175 * lily/dynamic-text-spanner.cc (print): Add a special case for
1176 trill spanner right sides.
1178 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1180 * lily/align-interface.cc (get_extents_aligned_translates): add
1181 support for padding variable.
1183 * lily/break-align-interface.cc (self_align_callback): oops: use
1184 loop variable in guard.
1186 * input/regression/repeat-percent-grace.ly: new file.
1188 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1189 remember first currentCommandColumn of a grace run. Fixes issue 70.
1191 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1192 move class definition to CC file.
1194 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1196 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1197 measure-long repeats.
1199 * flower/include/international.hh: include stdarg.h
1201 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1203 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1204 put_systems_on_pages to return an empty result, we need to assign
1205 demerits properly in that case.
1206 (put_systems_on_pages): Make the number of pages depend on the
1207 evenness of page_number. Add auto-first-page-number.
1208 (calc_subproblem): ensure that the page-number is even for the
1209 left-hand page. Warn if the first page-turn doesn't fit onto the
1210 first (right-hand) page.
1212 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1213 (min_page_count): make this publicly accessible
1214 (min_page_count): fix a bug when there are forced page breaks that
1215 was introduced when I made this loop run backwards
1216 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1217 replace space_systems_on_min_pages with these two. The logic in
1218 space_systems_on_min_pages was getting too convoluted and is better
1219 contained in page-turn-page-breaking.
1221 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1223 (breakable_column): typo
1225 * lily/source-file.cc (get_line): fix off-by-one error
1226 and clean up some of the logic
1228 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1230 * lily/page-breaking.cc (make_pages): honour the first-page-number
1233 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1235 * VERSION (PACKAGE_NAME): bump version.
1237 2006-09-26 Pal Benko <benko.pal@gmail.com>
1239 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1240 (the latter is the same as petrucci-f which is kept for compatibility)
1242 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1244 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1246 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1248 * lily/global-context.cc (run_iterator_on_me): break out of loop
1249 if moment doesn't increase.
1251 * scm/define-grob-properties.scm (all-user-grob-properties): add
1254 * lily/accidental.cc (after_line_breaking): read forced property.
1256 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1259 * input/regression/accidental-forced-tie.ly: new file.
1261 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1263 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1265 * lily/figured-bass-engraver.cc: only listen to rest events if
1266 ignoreFiguredBassRest is not set.
1268 * scm/define-context-properties.scm
1269 (all-user-translation-properties): add ignoreFiguredBassRest property
1271 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1273 * lily/paper-book.cc (get_system_specs):
1274 (set_system_penalty): fix breakbefore.
1275 We used to set a penalty on the system after the break, now we
1276 set a permission on the system before the break
1278 * lily/grob-property.cc: add scm debugging hooks into
1279 property modification
1281 * lily/context-property.cc:
1283 rename make_foo_from_properties to internal_make_foo and
1284 move it from context-property.cc to a member function of
1287 * lily/include/lily-guile-macros.hh:
1288 overload ly_symbol2scm macro so that there is no more need
1291 * lily/volta-repeat-iterator.cc:
1292 * lily/tweak-engraver.cc:
1293 * lily/tuplet-bracket.cc:
1294 * lily/span-bar-engraver.cc:
1295 * lily/script-engraver.cc:
1296 * lily/prob-scheme.cc:
1297 * lily/pointer-group-interface.cc:
1299 * lily/grob-scheme.cc:
1300 * lily/grob-property.cc:
1302 * lily/context-property.cc:
1303 * lily/break-substitution.cc:
1304 * lily/break-align-engraver.cc:
1305 * lily/axis-group-interface.cc:
1306 * lily/align-interface.cc:
1307 remove calls to internal_FOO
1309 * lily/system-start-delimiter-engraver.cc:
1310 * lily/parenthesis-engraver.cc:
1311 * lily/accidental-engraver.cc:
1312 remove calls to make_foo_from_properties
1314 2006-09-23 Graham Percival <gpermus@gmail.com>
1316 * Documentation/user/programming-iterfaces.itely: fix
1317 def-music-function -> define-music... leftover.
1319 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1321 * lily/page-spacing.cc (min_page_count): by running the loop
1322 backwards, we can calculate ragged_last properly.
1324 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1326 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1327 printfirst-page-number -> print-first-page-number
1329 * python/convertrules.py: corresponding rule.
1331 * Documentation/user/page.itely (Page formatting): Document the
1332 default values of all page layout parameters.
1334 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1336 * lily/lexer.ll: remove limitation on music function arity. New
1337 mode extratoken, which inserts extra EXPECT_* tokens after
1338 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1340 * lily/parser.yy: Change grammar for music function accordingly.
1342 * lily/include/lily-parser.hh: New method get_state, new member
1343 hidden_state. Works around a problem when parser fetches
1344 MUSIC_FUNCTION token but not the following EXPECT_* token.
1346 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1349 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1350 references to Music; use ASSIGN_EVENT_ONCE everywhere
1352 * lily/grob-info.cc: junk *music_cause
1354 * lily/music.cc: copy eventified articulations to stream event
1356 * lily/part-combine-iterator.cc: Cleanup using enums
1358 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1361 * lily/include/engraver.hh: Junk music.hh include
1363 * lily/stream-event.cc: Changed constructors
1365 2006-09-21 Graham Percival <gpermus@gmail.com>
1367 * Documentation/user/tweaks.itely (Fitting music onto fewer
1368 pages): change settings to avoid warning messages.
1370 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1372 * Documentation/user/tweaks.itely (Fitting music onto fewer
1373 pages): Add between-system-space setting.
1375 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1377 * lily/accidental-placement.cc (calc_positioning_done): don't
1378 trigger Y-extent calculation too early. Use pure_height instead.
1380 * lily/scale.cc (LY_DEFINE): new file.
1382 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1384 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1385 that happen at the start of a score: having a zero-length
1386 chunk was messing up min_system_count calculations.
1388 * lily/source-file.cc (get_line): lower_bound, not
1389 binary_search. Fixes problem where point-and-click would
1390 always point to the first line.
1392 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1394 * lily/accidental-placement.cc (calc_positioning_done): also put
1395 stems into accidental support.
1397 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1400 * scm/script.scm (default-script-alist): avoid-slur and
1401 slur-padding for portato script.
1403 * lily/stem-tremolo.cc (translated_stencil): new function.
1404 (height): use new function. Fixes tremolos on whole notes.
1406 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1409 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1411 * scripts/abc2ly.py (try_parse_comment): idem.
1413 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1414 bar_string iso. string.find()
1418 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1421 2006-09-18 Graham Percival <gpermus@gmail.com>
1423 * Documentation/user/basic-notation.itely: add bug
1424 warning about ties and octavation/clef.
1426 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1428 * VERSION (PACKAGE_NAME): release 2.9.18
1430 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1432 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1433 figure out midi file names right here.
1435 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1437 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1439 * scm/backend-library.scm: option naming: gs-font-load*s*
1441 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1444 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1446 * scm/define-music-types.scm (music-descriptions): remove
1447 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1448 Music::to_event doesn't complain.
1450 * lily/accidental-placement.cc (ape_compare):
1451 * lily/semi-tie.cc (compare):
1452 * lily/note-column.cc (shift_compare): replace by XXX_less
1454 * lily/tie-formatting-problem.cc (set_chord_outline):
1455 * lily/tie-column.cc (calc_positioning_done):
1456 * lily/system.cc (post_processing)
1458 * lily/stem.cc (note_head_positions)
1459 (calc_positioning_done):
1460 * lily/spanner.cc (do_break_processing)
1461 (find_broken_piece):
1462 * lily/span-bar.cc (print):
1463 * lily/semi-tie-column.cc (calc_positioning_done):
1464 * lily/rest-collision.cc (calc_positioning_done):
1465 * lily/program-option.cc (get_help_string):
1466 * lily/note-collision.cc (get_clash_groups):
1467 * lily/new-fingering-engraver.cc (position_scripts):
1468 * lily/keyword.cc (Keyword_table):
1469 * lily/hara-kiri-group-spanner.cc (request_suicide):
1470 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1471 * lily/accidental-placement.cc (calc_positioning_done):
1473 * lily/beam.cc (get_beam_segments):
1474 * lily/grob-array.cc (remove_duplicates):
1477 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1478 ragged-last-bottom = ##f (test the new page breaker)
1480 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1482 * scm/define-context-properties.scm
1483 (all-internal-translation-properties): remove properties that
1484 were used to communicate page-turn stuff to the paper-column
1487 * lily/lily-guile.cc (robust_scm2string): new function
1489 * lily/paper-column-engraver.cc: Clean up page turn stuff
1491 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1492 instead of cluttering up paper-column-engraver.cc
1494 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1496 * scm/layout-page-dump.scm (scm): export utility function names,
1497 to allow user writing cutsom dumping functions.
1499 * scm/layout-page-layout.scm: export utility function names to
1500 enable custom page breaking function writing. Tabify.
1501 (line-next-space): use ?-suffix only for predicates
1502 (page-maximum-space-to-fill): new function. Return the space
1503 between first and bottom system of a page, to give to
1505 (space-systems): use a space-to-fill argument (for instance as
1506 computed by page-maximum-space-to-fill) instead of computing
1507 internaly this space with the page height. That way, the caller
1508 can adjust the space to use.
1509 (make-page-from-systems, walk-paths): compute space to fill before
1510 calling space-systems.
1512 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1514 * scm/script.scm (default-script-alist): set paddings for every
1515 type here, increase for portato mark.
1517 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1520 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1522 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1523 use spanner::set-spacing-rods
1525 * lily/note-column.cc: reformat.
1527 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1528 step positioning for note/rest combinations.
1530 * input/regression/rest-note-collision.ly: new file.
1532 * scm/define-grobs.scm (all-grob-descriptions): add
1535 * flower/include/std-vector.hh: switch off again.
1537 * VERSION (PATCH_LEVEL): bump to 2.9.18
1539 * flower/include/std-string.hh: idem.
1541 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1543 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1545 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1548 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1550 * Documentation/user/page.itely: update page breaking documentation
1552 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1554 * lily/note-collision.cc (calc_positioning_done): only access
1555 first head if available.
1557 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1559 * scm/framework-ps.scm (output-preview-framework): use new name.
1561 * lily/program-option.cc (internal_set_option): use new names.
1563 * Documentation/user/SConscript (lilypond_book_flags): update -d
1566 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1567 output into other programs): new variable names.
1569 * scm/lily.scm (define-scheme-options): uniformize var names.
1571 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1572 tuplets_ is non-empty before popping.
1574 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1576 * lily/spanner.cc (find_broken_piece):
1577 * lily/spacing-spanner.cc (get_columns):
1578 * lily/source-file.cc (get_line):
1579 * lily/simple-spacer.cc (get_column_description):
1580 * lily/keyword.cc (lookup):
1581 use the new binary search.
1583 * flower/include/std-vector.hh: replace binary_search with
1584 a more STL-like version
1586 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1588 * lily/tie-performer.cc: remove unused last_event_ property.
1589 (class Tie_performer): add now_tied_heads_ property for
1590 partially-tied heads.
1591 (acknowledge_audio_element): when adding an Audio_note, put the
1592 note in now_tied_heads_ if the audio note is partially tied.
1593 (stop_translation_timestep): always include entries in
1594 now_tied_heads_ in heads_to_tie_.
1596 * lily/drum-note-performer.cc (process_music): look for tie-events
1597 in the articulations; pass to Audio_note constructor.
1599 * lily/note-performer.cc (process_music): look for tie-events in
1600 the articulations; pass to Audio_note constructor.
1602 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1605 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1606 include initializer in constructor.
1608 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1610 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1611 unless they are breakable. This fixes discrepancies between the forces
1612 calculated here and the forces calculated in get_line_configuration.
1614 * lily/grob.cc (pure_relative_y_coordinate): fix some
1615 mis-estimation that was happening with piano staves.
1617 * lily/constrained-breaking.cc (resize): don't choke if we get a
1618 measure that won't fit on a line.
1619 (combine_demerits): don't consider uniformity when ragged
1621 * lily/page-spacing.cc (solve): why the f* were there two of these?
1622 (calc_subproblem): properly handle the case where a system is taller
1625 * lily/system.cc (get_paper_system): ensure that all the permissions
1626 and penalties are passed to the paper systems.
1628 * lily/page-breaking.cc (create_system_list): support system-count.
1630 * scm/define-grobs.scm (pure-print-callbacks): add
1631 ly:script-interface::print
1633 * lily/page-spacing.cc (min_page_count): fix calculation of min
1634 pages if we are ragged and there are non-zero springs.
1636 * scm/layout-page-layout.scm: if the pure-height estimates are under
1637 the real height, allow space-systems to ignore padding if it is
1638 needed in order to fit the systems on one page
1640 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1642 (solve): fix performance problem. Make sure we always get at least
1645 * lily/page-breaking.cc (make_pages): include write-page-breaks
1648 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1650 * scm/define-grobs.scm: add the new slur-callback
1651 fix pure-relevant to not exclude grobs whose extent is already
1654 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1657 * lily/slur.cc (pure_height): new callback to estimate the height
1660 2006-09-02 Graham Percival <gpermus@gmail.com>
1662 * Documentation/user/invoking.itely: small update on
1663 MacOS X notes; thanks Trevor!
1665 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1667 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1669 * lily/lexer.ll: accept EOF in all states.
1671 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1673 * lily/source-file.cc (Source_file): always 0-terminate character
1674 array, to prevent Flex from barfing.
1676 * lily/global-context.cc (get_output): robustness: don't crash if
1677 no Score context found.
1679 * lily/include/book.hh (class Book): idem.
1681 * lily/include/context-def.hh (struct Context_def): idem.
1683 * lily/include/score.hh (class Score): don't derive from Input.
1685 * lily/book.cc (Book): add a copy ctor.
1687 * buildscripts/output-distance.py (FileLink.calc_distance): count
1688 orphans in distance too.
1690 * python/midi.c (midi_parse_track): robustness: don't read past
1693 * ly/performer-init.ly: add Control_track_performer, move
1694 Tempo_performer and Time_signature_performer to Score.
1696 * lily/score-performer.cc (acknowledge_audio_elements): override
1697 from base class: add to audio-columns
1699 * lily/control-track-performer.cc (add_text): new file: generate
1702 * lily/performance.cc: move output_header_track to
1703 Control_track_performer ()
1705 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1707 * lily/include/midi-item.hh (class Midi_channel_item): insert
1708 class into hierarchy, for items that can have a channel setting. Dehungarify.
1710 * lily/include/performer.hh (class Performer): remove
1711 play_element(); move functionality into announce/acknowledge.
1713 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1715 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1716 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1718 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1720 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1723 * lily/all-font-metrics.cc: remove TFM support.
1725 * lily/include/tfm.hh: remove TFM support, TFM reader.
1727 * lily/include/binary-source-file.hh: remove Binary_source_file.
1729 2006-08-27 Graham Percival <gpermus@gmail.com>
1731 * Documentation/topdocs/NEWS.itely: add @c marker for
1732 stuff I've processed.
1734 * Documentation/user/ various: info from NEWS.
1736 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1738 * lily/paper-column-engraver.cc (finalize): Oops, this change
1739 should have gone in on 2006-08-23
1741 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1743 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1744 quotes to quote arguments. Fixes Windows problem.
1746 * python/lilylib.py (progress): idem
1748 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1750 * scripts/musicxml2ly.py: fix for importing
1751 minor key signatures from MusicXML. (Phillip Kirlin)
1753 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1755 * python/musicxml.py:
1756 (Attributes.get_key_signature): now correctly retrieves mode from
1759 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1761 * lily/parser.yy (output_def_body): take ownership of identifier
1764 * Documentation/user/advanced-notation.itely (Metronome marks):
1765 update use of \tempo in \midi.
1767 * VERSION: release 2.9.16
1769 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1771 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1774 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1776 * input/regression/tie-chord-partial.ly: clarify example.
1778 * scm/define-music-properties.scm (all-music-properties): remove
1781 * ly/music-functions-init.ly: remove \untied.
1783 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1784 stream events and music events.
1785 (stop_translation_timestep): search acknowledged heads for
1788 * input/regression/tie-chord-partial.ly: new file.
1790 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1791 for \char markup command.
1793 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1795 * scm/define-music-types.scm (music-descriptions): consistency:
1796 Use solo-{one,two}-event iso. solo-[12]-event.
1798 * lily/part-combine-engraver.cc (process_music):
1799 Use solo-{one,two}-event iso. solo-[12]-event.
1801 * ly/declarations-init.ly (partCombineListener): add Timing as
1804 * flower/std-string.cc (string_copy): use copy ()
1806 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1808 2006-08-24 Graham Percival <gpermus@gmail.com>
1810 * Documentation/user/changing-defaults.itely, global.itely,
1811 lilypond-book.itely, page.itely: minor changes from mailist.
1813 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1815 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1818 * scm/define-context-properties.scm
1819 (translator-property-description): robustness: detect type errors
1820 in property definitions.
1822 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1823 after getting it from SCM.
1825 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1828 * lily/include/performer.hh (class Performer): strip get_tempo()
1831 * lily/midi-def.cc: strip file.
1833 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1835 * lily/include/context-def.hh (struct Context_def): use
1836 VIRTUAL_COPY_CONSTRUCTOR().
1838 * lily/source-file.cc: smobification.
1840 * lily/include/source-file.hh (class Source_file): smobify
1841 Source_file. Trim redundant members.
1843 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1844 clones after creation. This plugs a huge memory leak.
1846 * python/convertrules.py (FatalConversionError.sub_tempo):
1847 complete rule for \midi{ \tempo }
1849 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1851 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1853 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1855 * input/regression/optimal-page-breaking-hstretch.ly: test for
1856 ragged-last-bottom also
1858 * lily/paper-column-engraver.cc (finalize): make the end of a score
1859 breakable by default. This is to balance out a change in behaviour
1860 of the page-turn-breaker which no longer makes the end of a score
1863 * lily/paper-book.cc (pages): set the systems_ once the pages are
1866 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1867 Page_breaking interface.
1869 * lily/page-breaking.cc (class Page_breaking): make the interface
1870 more consistent and provide abstractions for dealing with
1873 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1874 algorithm. Use the new interface to Page_breaking.
1876 * lily/page-spacing.cc: better support for ragged-bottom and
1879 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1881 * python/convertrules.py (conv): warning on \tempo{}
1883 * ly/performer-init.ly: set tempoWholesPerMinute.
1885 * ly/midi-init.ly: remove \midi
1887 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1890 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1891 tempoUnitDuration for determining what to print.
1893 * lily/lyric-extender.cc: typo.
1895 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1897 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1900 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1902 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1903 eps-pad-boxes is set.
1905 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1907 * THANKS: update sponsors.
1909 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1911 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1913 * input/regression/tie-chord-untied.ly: new file.
1915 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1917 * scm/define-music-properties.scm (all-music-properties): add
1920 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1922 (headertext_nopics): sanitize no-examples text.
1924 * scm/page.scm (make-page-stencil): don't rely on extents of
1925 page-stencil. This fixes spurious space around .EPS files produced
1926 with the EPS backend.
1928 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1930 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1932 * lily/hara-kiri-engraver.cc (process_music): remember
1933 keepAliveInterfaces after processing \set
1935 * lily/lyric-extender.cc (print): support left/right-padding for
1938 * scm/documentation-generate.scm (string-append): revert lilypond/
1941 2006-08-20 Graham Percival <gpermus@gmail.com>
1943 * Documentation/user/lilypond.tely: clarification to
1944 license presentation (not to actual license).
1946 * Documentation/user/basic-notation.itely,
1947 instrument-notation.itely: minor changes.
1949 * input/ {regression, test}/+.ly: clarification to
1950 text (you can click on examples). Thanks, Mats!
1952 * input/manual/bar-lines.ly: adds ||: repeats.
1954 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1956 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1958 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1960 * Documentation/user/lilypond.tely: strip lilypond/ from info
1961 links, rename to category LilyPond
1963 * lily/pango-font.cc (description_string): new function.
1965 * VERSION: release 2.9.15
1967 * lily/spacing-engraver.cc (stop_translation_timestep): use
1968 Dscho's fix for spacing spanner.
1970 * scm/define-music-types.scm (music-descriptions): use
1971 apply-output-event for ApplyOutputEvent
1973 * lily/output-property-engraver.cc (listen_apply_output): rename
1974 from listen_layout_instruction.
1976 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1979 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1981 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1982 commandline args with contains, split by \n.
1984 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1985 write snippet-names file, call with -dread-file-list. Fixes
1986 command limitations on 64-bit systems.
1988 * input/regression/stencil-color-rotation.ly: new file.
1990 * lily/include/translator.hh (struct Acknowledge_information):
1991 revert: don't use Protected_scm in global objects, as GUILE can't
1992 handle gc_unprotect from automated destructors on MacOS X.
1994 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1995 color, not the original stencil. Fixes combinations of
1996 color/transparency/rotation.
1998 * scripts/lilypond-book.py (main): add --formats=eps for
2001 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2002 crash if spacing_ is nonexistent.
2004 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2006 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2007 \catcode`\@=12 in the LaTeX output.
2009 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2011 * scm/define-music-types.scm (music-descriptions):
2012 use sustain-event iso. sustain-pedal-event.
2014 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2016 * scripts/convert-ly.py: honour the -n command-line switch
2018 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2020 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2021 break specification.
2023 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2025 * Documentation/user: convert-ly the user manual
2027 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2029 * stepmake/aclocal.m4: version check patch (thanks MWD)
2031 * ly/music-functions-init.ly: robustness. Don't crash if
2032 currentBarNumber is not a number.
2034 * VERSION (PATCH_LEVEL): bump.
2036 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2038 * stepmake/aclocal.m4: better version check; handle fooX.Y
2041 * ly/performer-init.ly: instrument name fixup.
2043 * input/manual/chord-names-jazz.ly (banterProperties):
2044 instrumentName update
2046 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2048 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2050 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2051 function. Use hash tables to check membership.
2053 * lily/general-scheme.cc (LY_DEFINE): new function.
2055 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2057 * lily/include/translator.hh (struct Acknowledge_information): add
2060 * ly/music-functions-init.ly: change name to BreathingEvent
2062 * input/regression/*.ly: apply it.
2064 * python/convertrules.py (conv): better instrumentName conversion
2067 * scm/define-music-types.scm (music-descriptions): add
2068 line-break-event to LineBreakEvent music
2070 * lily/music.cc (to_event): don't crash if music type not set.
2072 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2075 * lily/spacing-engraver.cc (stop_translation_timestep): set
2076 spacing for proportional notation too.
2078 * scm/translation-functions.scm (format-bass-figure): inspect
2081 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2083 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2085 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2087 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2089 * scm/layout-page-layout.scm (make-page-from-systems): new function
2090 (optimal-page-breaks): use the new page-breaking calling convention
2092 * scm/define-context-properties.scm (all-user-translation-properties):
2095 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2096 revokePageTurns functionality. If there is a special barline within
2097 the breakable region, break there instead of at the end of the region.
2099 * lily/paper-book.cc (pages): use the new page-breaking calling
2102 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2104 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2106 * scripts/lilypond-book.py: insert \sourcefileline command in
2107 output, so lilypond error messages refer to the spot in the
2108 original .lytex / .itely sourcefile.
2110 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2112 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2113 space to next column for distance to fixed col.
2115 * VERSION (PACKAGE_NAME): release 2.9.14
2117 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2120 * lily/accidental-engraver.cc (process_acknowledged): don't create
2121 accidental for trill span event. This fixes spurious accidentals
2124 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2126 * scm/define-grob-properties.scm (all-user-grob-properties):
2127 Clarify documentation of side-axis and direction. Thanks to Paul
2128 for the inspiration.
2130 * lily/bar-line.cc: Add documentation for "||:" also in the
2131 interface documentation.
2133 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2135 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2137 * lily/paper-column.cc (set_system): new function.
2139 * lily/spacing-engraver.cc (stop_translation_timestep): store
2140 SpacingSpanner refs in Paper_column.
2142 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2143 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2145 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2147 * lily/beam-engraver.cc (listen_beam): add method for
2148 Grace_beam_engraver too.
2150 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2152 * python/convertrules.py: Fix indentation bug that broke
2153 conversion of files older than 1.3.117.
2154 Fix escape error in the description for 2.9.6.
2156 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2158 * lily/*-engraver.cc: convert all try_music functions to listen_*
2161 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2162 enums to represent pedal types, and calculate more data statically.
2164 * scm/part-combiner.scm (recording-group-emulate): create a
2165 softcoded substitute for recording-group-engraver.cc.
2167 * lily/music.cc: make a common transpose function for events and
2170 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2171 ManualMelismaEvent, and obsoletes Melisma_translator.
2173 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2175 * input/test/instrument-name-align.ly: update version.
2177 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2179 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2180 Doc the --pdf flag to lilypond-book.
2182 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2184 * Documentation/topdocs/NEWS.tely (Top): add description.
2186 * input/regression/tuplet-full-length-note.ly: add file.
2188 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2189 always store axis group.
2191 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2193 * input/regression/instrument-switch.ly: new file.
2195 * lily/instrument-switch-engraver.cc (process_music): new file.
2197 * ly/engraver-init.ly: add Instrument_switch_engraver
2199 * ly/music-functions-init.ly: \instrumentSwitch
2201 * scm/define-context-properties.scm
2202 (all-user-translation-properties): add instrumentCueName
2204 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2206 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2208 * ly/music-functions-init.ly: music function \transposition.
2210 * lily/parser.yy (command_element): softcode \transposition.
2212 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2213 (process_music): oops.
2215 * lily/instrument-name-engraver.cc (start_spanner): new
2216 function. Create spanner when property changes.
2217 (stop_spanner): new function.
2219 * python/convertrules.py (conv): add rule.
2221 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2222 shortInstrumentName iso. instr.
2224 * scm/output-ps.scm (dashed-line): add phase argument to
2227 * lily/bar-line.cc (dashed_bar_line): new function.
2228 (compound_barline): support \bar "dashed".
2230 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2231 --output=DIR to DIR/BASE if it is a dir.
2233 * flower/file-name.cc (file_part): new function
2234 (dir_part): new function
2236 * lily/lily-parser-scheme.cc (LY_DEFINE):
2238 * DEDICATION: update
2240 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2242 * lily/instrument-name-engraver.cc: formatting.
2244 * python/convertrules.py (conv): bugfix for \epsfile.
2246 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2250 * lily/gourlay-breaking.cc: Oops, these should have been included
2253 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2255 * scripts/*.py (program_name): cleanup relocation snippets.
2257 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2259 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2261 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2262 page-breakable by default
2264 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2265 correctly calculated for a single-system page
2267 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2268 bigger than the second number
2270 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2271 acknowledge that we aren't satisfying constraints)
2273 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2276 * lily/grob.cc (pure_height): add minimum-Y-extent
2278 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2281 * lily/constrained-breaking.cc: convert code to use new Matrix class
2282 (get_best_solution): new function
2284 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2285 is a page with no systems
2287 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2289 * VERSION (PACKAGE_NAME): release 2.9.13
2291 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2294 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2296 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2298 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2301 * scm/define-grob-properties.scm (all-user-grob-properties):
2302 remove grace-space-factor.
2304 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2305 grace-spacing-interface
2306 (spacing-options-interface): add.
2308 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2310 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2312 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2313 GraceSpacing object.
2315 * lily/note-spacing.cc: fix prop list formatting
2317 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2318 beaming for grace notes too.
2320 * input/regression/spacing-grace.ly: update.
2322 * lily/grace-spacing-engraver.cc: new file.
2324 * lily/spacing-spanner.cc: add strict-grace-spacing.
2326 2006-07-20 Graham Percival <gpermus@gmail.com>
2328 * lily/parser.yy: compile fix.
2330 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2332 * scm/define-grobs.scm (all-grob-descriptions): typo.
2334 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2335 .eps extension from includegraphics.
2337 * scripts/lilypond-book.py (main): add support for --pdf.
2339 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2340 callback to compute common shortest duration.
2341 (set_springs): typo.
2343 * scm/define-grob-properties.scm (all-user-grob-properties): add
2344 strict-grace-spacing.
2346 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2347 support float_grace_columns_.
2349 * lily/spacing-options.cc (init_from_grob): new file.
2351 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2353 * input/regression/spacing-loose-grace.ly: new file.
2355 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2357 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2358 tupletFullLengthNote too. Choose right bound depending on value.
2360 * input/regression/tuplet-full-length-note.ly: new file.
2362 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2364 * lily/*-performer.cc: Converted try_music to listen_*
2366 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2367 as a stream-event internally. Introduce event_cause (), deprecate
2370 * scm/define-music-types.scm: Removed BusyPlayingEvent
2372 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2374 * Documentation/user/advanced-notation.itely (Font selection):
2375 Document how to get a list of available fonts using 'lilypond
2376 -dshow-available-fonts blabla'.
2378 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2380 * GNUmakefile.in: filter lily-XXX.pdf files.
2382 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2384 * scm/define-grob-properties.scm (all-internal-grob-properties):
2385 remove delta-pitch. Use delta-position everywhere.
2387 * scm/output-lib.scm (fall::print): use new order.
2389 * scm/output-ps.scm (path): reorder arguments.
2391 * scm/output-svg.scm (path): support for path primitive.
2393 * input/regression/bend-after.ly: new file.
2395 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2396 recipe for eps -> pdf conversion.
2398 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2400 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2403 2006-07-19 Graham Percival <gpermus@gmail.com>
2405 * input/manual/screech-boink.ly: moved to here.
2407 * input/screech-boink.ly: deleted.
2409 * scm/define-grob-properties.scm: clarify doc string.
2411 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2413 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2415 * scm/output-ps.scm (path): define path.
2417 * scm/define-stencil-commands.scm
2418 (ly:register-stencil-expression): add path.
2420 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2422 * ly/engraver-init.ly: add Fall_engraver
2424 * lily/parser.yy (music_function_event): allow musicfunction
2425 without music arg as music_function_event.
2427 * lily/grob-scheme.cc (LY_DEFINE):
2428 ly:grob-robust-relative-extent. New function.
2430 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2432 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2434 * scm/output-lib.scm (fall::print): new function
2436 * lily/fall-engraver.cc (stop_fall): new file.
2438 * ly/music-functions-init.ly: alphabetise.
2440 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2443 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2445 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2447 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2450 * lily/translator-group.cc (connect_to_context): non const error message.
2452 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2454 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2457 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2459 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2461 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2464 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2466 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2468 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2470 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2472 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2474 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2476 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2478 * scm/layout-page-layout.scm: Define module, tidy code, use more
2479 functions iso. a single big one.
2481 * scm/layout-page-dump.scm: move page dump functions used in two
2482 pass spacing to this file. Define module.
2484 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2487 * ly/paper-defaults.ly: use module layout-page-layout.
2489 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2491 * lily/music.cc: Revised MusicEvent event class. It now contains
2492 event data directly instead of encapsulating it in music. The
2493 previously used class is renamed to OldMusicEvent.
2495 * lily/stream-event.cc: Stream events are now probs.
2497 * lily/translator-group.cc, lily/translator.cc: Translators can
2498 now listen directly to stream events, by using macros
2499 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2501 * lily/arpeggio-engraver.cc: Converted to use new event system
2503 * THANKS: Corrected spelling mistake.
2505 2006-07-12 Graham Percival <gpermus@gmail.com>
2507 * Documentation/user/SConscript, make/lilypond-vars.make,
2508 input/GNUmakefile: doc build looks in input/manual instead
2511 * input/manual/ GNUmakefile, SConscript: build files for
2514 * input/test/ various: some files moved to input/manual/
2516 * Documentation/user/basic-notation.itely: small updates;
2517 thanks Kieren and Charles!
2519 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2521 * VERSION (PACKAGE_NAME): release 2.9.11
2523 * Documentation/topdocs/NEWS.tely (Top): update prop value
2525 * Documentation/user/basic-notation.itely (Tuplets): new property
2528 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2530 * python/convertrules.py (conv): tweaks.
2532 * VERSION (PATCH_LEVEL): bump version.
2534 * python/convertrules.py (conv): add rule for
2535 tupletNumberFormatFunction.
2537 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2538 tupletNumberFormatFunction.
2540 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2541 text through 'text callback.
2543 * lily/time-scaled-music-iterator.cc (construct_children): copy
2544 tweaks generated events.
2546 * scm/define-context-properties.scm
2547 (all-user-translation-properties): remove tupletNumberFormatFunction
2549 * lily/tuplet-engraver.cc (process_music): don't read
2550 tupletNumberFormatFunction
2552 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2555 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2557 * lily/global-context-scheme.cc: Separated ly:run-translator into
2560 * lily/score-engraver.cc, lily/score-performer.cc,
2561 scm/define-context-properties.scm: Make paper/midi output
2562 accessable as a context property.
2564 * lily/score-translator.cc, lily/score-context.cc: Removed.
2566 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2568 * scm/ps-to-png.scm (Module):
2569 * scm/framework-tex.scm (Module):
2570 * scm/framework-ps.scm (Module):
2571 * scm/backend-library.scm (Module):
2572 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2573 "dDEVICEHEIGHTPOINTS".
2575 2006-07-04 Graham Percival <gpermus@gmail.com>
2577 * Documentation/user/ various: general improvements to
2578 "working with lilypond files" section.
2580 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2582 * lily/sequential-iterator.cc: Change the default get_music_list
2583 to read elements-callback music property
2585 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2586 processing of multimeasure rests. Softcoded
2587 sequential-music-iterator.
2589 * lily/sequential-music-iterator.cc: Removed.
2591 2006-06-28 Graham Percival <gpermus@gmail.com>
2593 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2595 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2597 * lily/parser.yy: Wrap non-post-events in EventChords before
2598 assigning them to identifiers.
2600 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2602 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2603 gives correct vertical placement of \bar ":" in all staff
2604 sizes. Thanks Martial!
2606 2006-06-26 Graham Percival <gpermus@gmail.com>
2608 * Documentation/user/invoking.itely : minor update from mailist.
2610 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2612 * lily/ various: Introduce stream events of types Prepare,
2613 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2614 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2616 * lily/global-context*.cc: Time is now -inf before iteration
2619 * lily/include/context.hh: Removed unique_, init_
2621 * Documentation/topdocs/NEWS: Make the feathered beam example
2622 avoid triggering a bug.
2624 2006-06-24 Graham Percival <gpermus@gmail.com>
2626 * Documentation/user/ various: small additions from mailist.
2628 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2630 * ly/performer-init.ly: Add some missing links in the context
2631 hierarchy for MIDI output. There are probably some more missing!
2633 2006-06-21 Graham Percival <gpermus@gmail.com>
2635 * Documentation/user/ various: minor spelling fixes;
2636 thanks Dave Luttinen!
2638 * Documentation/user/ various: small clarifications;
2639 thanks Anthony Youngman!
2641 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2643 * po/fr.po: add \n appropriately.
2645 * lily/lexer.ll: remove ? from version-seen?
2647 2006-06-19 John Mandereau <john.mandereau@free.fr>
2649 * po/fr.po; update translation, by Jean-Charles Malahieude and
2652 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2654 * THANKS: add Markus Schneider.
2656 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2657 Staff_symbol_engraver
2659 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2660 replace staff_engraver
2662 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2665 * lily/staff-collecting-engraver.cc
2666 (acknowledge_end_staff_symbol): new function
2668 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2670 * lily/staff-collecting-engraver.cc
2671 (acknowledge_end_staff_symbol): new function.
2673 * lily/main.cc: switch on relocation by default.
2675 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2677 * lily/spacing-spanner.cc (musical_column_spacing): set
2678 compound_fixed_note_space to 0.0. Document why.
2680 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2681 range of inverse_hooke_
2682 (Simple_spacer): init completely.
2684 (get_line_configuration): don't use cols.resize(); it introduces
2687 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2689 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2691 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2692 try. Divide by beatlength.
2694 * input/regression/beaming-ternary-metrum.ly: update doc.
2695 add beatLength hack.
2697 * scm/music-functions.scm (make-time-signature-set): add
2698 standard-beat-grouping.
2700 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2702 * input/regression/tie-whole.ly: new file.
2704 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2705 cross center of note head in case of invisible stem.
2707 2006-06-16 Graham Percival <gpermus@gmail.com>
2709 * Documentation/user/ various: small fixes from mailist.
2711 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2713 * lily/breathing-sign.cc (offset_callback): idem.
2715 * lily/align-interface.cc (align_to_fixed_distance): remove
2718 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2721 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2723 * VERSION (PACKAGE_NAME): release 2.9.9
2725 * ly/lilypond-book-preamble.ly: add \version
2727 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2729 * scripts/lilypond-book.py (PREAMBLE_LY): include
2730 lilypond-book-preamble.ly
2732 * lily/stem.cc (get_beaming): return max of 0 and
2733 scm_ilength. Fixes slurring from/to beams.
2735 * ly/lilypond-book-preamble.ly: new file.
2737 * lily/slur.cc: add inspect-index feature.
2739 2006-06-13 Graham Percival <gpermus@gmail.com>
2741 * Documentation/user/tutorial.itely: trivial fix.
2743 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2745 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2746 all non-event music in the parser via MAKE_SYNTAX.
2748 * lily/parser-scheme.cc: Add ly:parser-error function
2750 * scm/paper.scm: fix typo
2752 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2756 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2759 * buildscripts/output-distance.py (test_compare_signatures):
2761 (read_signature_file): use new signature format.
2763 * scm/stencil.scm (write-system-signature): simpler signature
2766 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2769 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2770 stem_end_position, but estimate instead.
2772 * lily/tuplet-bracket.cc (calc_positions): look at
2773 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2774 brackets narrower than beams.
2776 * lily/lexer.ll: set version-seen? even if version is
2779 * lily/rest.cc (y_offset_callback): bugfix: decide position
2780 override based on scm_is_number(). Fixes \rest on center staff
2783 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2784 patterns for 16th triplets.
2786 2006-06-10 Graham Percival <gpermus@gmail.com>
2788 * Documentation/user/ page.itely, global.itely: editing
2791 * Documentation/user/ various: findex -> funindex.
2793 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2795 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2796 insert extra tuplet events.
2798 2006-06-10 Graham Percival <gpermus@gmail.com>
2800 * Documentation/user/programming-interfaces.itely: add
2803 * python/convertrules.py: add annotatefoo -> annotate-foo
2806 * Documentation/user/global.itely: start editing.
2808 * Documentation/user/page.itely: major editing, new spacing
2811 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2813 * scm/define-markup-commands.scm (wordwrap-markups): use
2814 output-def 'line-width if undefined.
2816 * HACKING: trim outdated info.
2818 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2820 * scm/define-grobs.scm (all-grob-descriptions): Add
2821 line-spanner-interface to all grobs that already have
2822 text-spanner-interface or dynamic-text-spanner-interface
2824 * scm/page.scm: Rename annotate{headers,systems,page}->
2827 * input/regression/page-spacing.ly,
2828 input/regression/page-layout-manual-position.ly: idem
2830 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2832 * lily/line-spanner.cc: cleanup property list.
2834 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2835 generator expressions (2.3 compat).
2837 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2839 * lily/vertical-align-engraver.cc: Make sure that the
2840 align{Above,Below}Context properties are included in the automatic
2843 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2845 * scm/paper-system.scm (paper-system-annotate): also annotate the
2846 estimated pure-Y-extent
2848 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2850 * lily/system.cc (break_into_pieces): set the estimated height
2851 of each child system
2853 * lily/stem.cc (pure_height): new pure-Y-extent callback
2855 * lily/staff-symbol-referencer.cc (callback): don't destroy
2856 the staff-position property
2858 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2859 consider_suicide into two functions
2861 * lily/constrained-breaking.cc (resize): use the new pure
2862 callbacks to estimate the height of a system
2864 * lily/axis-group-interface.cc (pure_group_height): new
2865 side-effect-free VerticalAxisGroup height-callback
2867 * lily/align-interface.cc (get_extents_aligned_translates):
2868 split align_elements_to_extents into two functions
2869 (get_pure_child_y_translation): new function
2871 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2873 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2875 * lily/paper-score.cc: cache break_indices and columns
2877 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2879 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2881 * lily/font-config.cc (init_fontconfig): do the init if
2882 cache_file, but don't look at cache_file.
2884 * input/regression/quote-tie.ly: new file.
2886 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2887 to Head_event_tuple, so we deal gracefully with ties on
2890 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2893 2006-06-08 Graham Percival <gpermus@gmail.com>
2895 * input/test/ smart-transpose.ly, reverse-music.ly:
2896 \applyMusic to music functions update, thanks Michael!
2898 2006-06-07 Graham Percival <gpermus@gmail.com>
2900 * input/test/ add-staccato.ly, add-text-script.ly,
2901 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2902 music functions update, thanks to Michael Meixner.
2904 * Documentation/user/music-glossary.tely: small fix
2907 * Documentation/user/ various: minor additions from mailist.
2909 * Documentation/user/lilypond.tely, basic-notation.itely:
2910 small test of @funindex. (works here)
2912 * input/test/font-table.ly: reduce size to partially
2913 de-ugly version in manual.
2915 * Documentation/user/page.itely: new file (split former
2916 "global issues" into "page settings" and "non-musical
2919 * Documentation/user/ various: fix @ref{}s to match
2920 new chapter names (above).
2922 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2924 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2926 2006-06-06 Graham Percival <gpermus@gmail.com>
2928 * Documentation/user/advanced-notation.itely: add example
2929 for segno/coda on barline.
2931 * tex/texinfo.tex: merge from upstream.
2933 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2935 * scripts/lilypond-book.py (process_snippets): Argument fix.
2938 * buildscripts/builder.py:
2941 * Documentation/user/SConscript: More SCons fixes.
2943 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2945 * lily/font-config.cc (init_fontconfig): Only initialize if
2946 global cache_file is found.
2948 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2950 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2953 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2955 * VERSION (PACKAGE_NAME): release 2.9.8
2957 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2958 function. Delay ledger modifying ledgered grobs to
2959 stop_translation_timestep(), to ensure that we're ledgering
2960 according to the new spanner.
2961 (acknowledge_staff_symbol): don't check for non-NULL
2962 staff_sym->get_bound()
2964 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2967 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2970 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2971 directly from srcdir/stepmake/aclocal.m4
2973 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2976 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2978 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2980 * lily/simple-spacer.cc (get_line_configuration): add
2981 keep-inside-line rods
2982 (struct Column_desc): add constructor
2983 (struct Rod_desc): add constructor
2984 (get_line_forces): check for forced page breaks here too
2986 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2987 support/elements cycles between InstrumentNames and AxisGroups
2989 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2991 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2993 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2994 make-txt-files target.
2996 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2997 make-txt-files target.
2999 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3001 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3004 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3006 * Documentation/user/instrument-notation.itely,
3007 input/regression/breathing-sign-ancient.ly,
3008 input/test/divisiones.ly: Removed redundant property settings for
3011 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3012 fix lyrics alignment problems. They are implemented now as scheme
3013 functions that add the appropriate unicode char to the first lyric
3014 event rather than adding a separate lyric event. Minor edit of
3017 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3019 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3020 pollute src dir with built .txt files, but install directly from
3021 Documentation/topdocs/out/
3023 * buildscripts/output-distance.py
3024 (ComparisonData.create_html_result_page): put version/directories
3027 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3030 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3031 Patch by Karl Hammar
3033 * buildscripts/readlink.py: add file.
3034 Patch by Karl Hammar
3036 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3038 * lily/tuplet-number.cc (print): prevent stencil from being
3041 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3043 * scm/stencil.scm (write-system-signature): explicitly
3044 -well, superfluously- close output port.
3046 * buildscripts/output-distance.py (main): oops. Add extra argument.
3048 2006-06-05 Graham Percival <gpermus@gmail.com>
3050 * Documentation/user/music-glossary.tely: clarified example
3051 from Francisco Vila, thanks!
3053 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3055 * input/regression/spacing-section.ly: new file.
3057 * lily/input.cc (programming_error): new function.
3059 * lily/spacing-engraver.cc (try_music): new function. Accept
3060 spacing-section-event
3062 * lily/spacing-spanner.cc (set_springs): take slices of all
3063 columns for spacing.
3065 * lily/include/paper-column.hh (class Paper_column): add
3066 Paper_column::compare.
3068 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3070 * scm/define-music-types.scm (music-descriptions): add
3073 * lily/music-iterator.cc (report_event): use programming_error for
3074 sending non-event error.
3076 * lily/input.cc (programming_error): new function
3078 * buildscripts/output-distance.py (main): use compare-XXX for
3080 (main): --threshold option, default at 0.30
3082 * output-distance.py (main): add --threshold option.
3084 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3086 * scm/paper-system.scm (paper-system-annotate): fix problem when
3087 annotating an empty system
3089 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3091 * GNUmakefile.in: reinstate old web tar/copying.
3093 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3095 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3096 nothing changes. (Erik S)
3098 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3101 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3103 * scm/define-markup-commands.scm (whiteout): do not force
3104 foreground color of argument markup to black.
3106 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3107 the left of the arrow, instead of below the arrow name, so that,
3108 when two little arrows are vertically stacked, their dimensions
3109 and name should not overlap. Add a color key parameter.
3111 * scm/paper-system.scm (paper-system-annotate): Annotate
3112 next-space+next-padding instead of next-space. Annotate space
3113 between next-padding and next-space+padding, respectively, and
3114 following system extent and refpoint-Y-extent. Use colors.
3116 * scm/page.scm (annotate-page): translate annotations slightly to
3119 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3121 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3122 fix for x-staff slurs. Thanks Joe!
3124 * buildscripts/output-distance.py
3125 (SystemLink.output_expression_change_count): keep track of changed
3126 details, and dump in details html page.
3128 * input/regression/figured-bass-staff.ly: add note about setting
3129 properties in Staff context.
3131 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3132 add slurs and ties to support too.
3134 * buildscripts/output-distance.py (main): set dest_dir
3135 argument. Add --max-count option.
3137 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3139 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3140 shortcuts for special unicode chars that are useful in chant
3141 notation. Revised exisiting and added new comments.
3143 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3145 * make/mutopia-rules.make: remove duplicate recipe.
3147 2006-06-02 Werner Lemberg <wl@gnu.org>
3149 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3150 Add support for U+0132 (IJ) and U+0133 (ij).
3152 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3154 * buildscripts/output-distance.py (FileLink): new class. collect
3155 info systems from one .ly file.
3156 (FileLink.link_files_for_html): further tweaks.
3158 2006-06-02 Graham Percival <gpermus@gmail.com>
3160 * tex/texinfo.tex: partial fix for @funindex.
3162 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3165 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3167 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3169 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3170 @example too. Backportme.
3172 2006-06-02 Graham Percival <gpermus@gmail.com>
3174 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3175 from Werner Lemberg.
3177 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3179 * Documentation/user/music-glossary.tely: additional spanish
3180 updates and a lyrics fix in an example.
3182 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3184 * scm/define-grob-properties.scm: Previous patch contained
3185 spurious line from another patch not yet committed. Fixed.
3187 * scm/define-grob-properties.scm: Add missing doc strings for
3190 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3192 * buildscripts/output-distance.py
3193 (ComparisonData.write_text_result_page): separate the scores, sort
3196 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3199 * buildscripts/output-distance.py (me_path): use argv[0] for
3201 (ComparisonData.img_cell): use colored borders.
3203 * scm/stencil.scm (write-system-signature): escape newlines too.
3204 (write-system-signature): use (1,-1) interval for empty interval
3206 2006-01-01 Graham Percival <gpermus@gmail.com>
3208 * Documentation/user/music-glossary.tely: Spanish updates
3209 from Francisco Vila.
3211 * Documentation/user/lilypond-book.itely: addition from
3214 * Documentation/user/ various: edits, small additions
3217 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3219 * GNUmakefile.in (tree-lib-prefix-current):
3220 (tree-share-prefix-current): Use version number in tree, add
3223 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3225 * GNUmakefile.in: write VERSION, again.
3227 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3228 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3230 * stepmake/aclocal.m4: robuster version detection.
3232 * buildscripts/output-distance.py
3233 (ComparisonData.create_html_result_page): copy only if file
3234 exists, fixup src paths.
3236 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3238 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3240 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3241 Another datarootdir reto.
3243 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3244 available. This should be moved to postinstall-lilypond-doc.
3246 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3248 * GNUmakefile.in: simplify local-WWW-post.
3249 remove -type l from find.
3251 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3252 fixes. Don't follow symlinks.
3253 (ComparisonData.create_html_result_page): remove previous results.
3254 insert ../python in path.
3256 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3258 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3260 * config.make.in (datadir): Add datarootdir to silence autoconf.
3262 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3264 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3266 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3268 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3269 slash beams too wide.
3271 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3273 * VERSION: release 2.9.7
3275 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3277 * lily/relocate.cc (read_relocation_dir): Do not blindly
3280 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3282 * lily/parser.yy: replace THIS by PARSER
3284 * Documentation/index.html.in: add link to test-results.html page.
3286 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3288 * scm/translation-functions.scm (format-bass-figure): translate
3289 digits over 10 to the left
3291 * scm/define-markup-commands.scm (translate-scaled): new markup.
3293 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3296 * ly/engraver-init.ly: add Figured_bass_engraver
3298 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3300 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3302 * lily/score-engraver.cc (announce_grob): only note START announces.
3304 * lily/include/engraver-group.hh (Translator_group):
3305 acknowledge_hash_table_ is now drul.
3307 * lily/engraver.cc (announce_end_grob): new method.
3309 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3311 * lily/translator-dispatch-list.cc (create): take start_end argument.
3313 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3314 acknowledge_static_array_ to drul
3316 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3318 * scm/define-grob-interfaces.scm
3319 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3321 * scm/define-grobs.scm (all-grob-descriptions): add
3322 BassFigureAlignmentPositioning
3324 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3325 number stays up to date. Backportme.
3327 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3329 * Documentation/user/basic-notation.itely (Bar lines): Document
3332 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3334 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3336 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3337 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3340 * Resurrect `scons lily' build.
3342 * SConstruct (symlink_tree): Bugfix: link
3343 music-drawing-routines.ps to file iso directory.
3345 * lily/SConscript: Remove kpath-guile from LIBS.
3347 * SConstruct (libdir_package_version): Typo.
3348 (configure): Comment-out fontforge for lack of fontforge.pc .
3349 Also add libdir* to environment.
3351 2006-05-30 Graham Percival <gpermus@gmail.com>
3353 * Documentation/user/ various: minor additions from mailist and
3356 2006-05-30 Paco <fravd@ya.com>
3358 * Documentation/user/music-glossary.tely: numerous corrections and
3359 some new translations.
3361 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3365 * buildscripts/output-distance.py
3366 (ComparisonData.create_html_result_page): new routine: summarise
3367 results in HTML page with images.
3368 (ComparisonData.create_text_result_page): create summary text files too.
3370 * GNUmakefile.in (web-ext): package .signature files too. They
3373 * scm/stencil.scm (write-system-signature): typo.
3375 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3377 * scm/stencil.scm (write-system-signature): better escaping.
3378 only write signature for music systems, not for markup systems.
3380 * scm/framework-ps.scm (output-framework): dump-signatures support
3383 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3385 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3386 for -dno-point-and-click
3388 * lily/grob.cc (get_print_stencil): don't read
3389 point_and_click_global to determine whether to set grob-cause.
3391 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3393 * buildscripts/output-distance.py (main): new function.
3394 (ComparisonData): new class.
3396 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3397 careful with generating new LedgerLineSpanners.
3399 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3401 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3402 context. This fixes double ledger lines in output.
3404 * lily/system.cc (get_paper_system): remove 3 layer limit.
3406 * buildscripts/output-distance.py (SystemLink.distance): new
3407 file. Compare signatures.
3409 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3411 * lily/grob-array.cc (remove_duplicates): rename from
3412 uniq(). Sort before calling uniq() so it actually works.
3414 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3416 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3417 \version from lilypond file snippet.
3418 (Lilypond_file_snippet.ly): oops. typo.
3419 (find_toplevel_snippets): urgh. again.
3421 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3422 prevent duplicated broken items in output.
3424 * scm/framework-eps.scm (output-classic-framework): only dump if
3425 dump-signatures is set.
3427 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3429 * scm/stencil.scm (write-system-signature): new routine: write
3430 python parseable signature of a separate paper system.
3433 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3435 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3439 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3441 * translator-group.cc: send music events to engravers in
3442 non-bottom contexts.
3444 * tuplet-engraver.cc: process tuplet brackets in correct order.
3446 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3448 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3449 arg 2 might point us to a new binary (patch by Karl Hammar)
3451 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3453 * VERSION (PACKAGE_NAME): release 2.9.6
3455 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3457 * Documentation/user/*.itely: 2nd
3458 attempt: replace funindex -> findex globally.
3460 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3462 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3463 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3465 * scm/define-music-display-methods.scm: display methods for
3466 breaks. Fix \applyOutput.
3468 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3470 * Documentation/user/macros.itexi: comment out funindex expansion.
3472 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3475 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3476 Karl Hammar. Backportme.
3478 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3480 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3482 * Documentation/user/programming-interface.itely (Running a
3483 function on all layout objects): idem.
3485 * Documentation/user/introduction.itely (Automated engraving):
3486 update \applyOutput syntax
3488 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3489 remove debugging hook.
3491 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3494 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3496 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3497 TEXI2DVI_FLAGS to texi2dvi invocation.
3499 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3501 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3502 works. More work is done by iterator now, and engraver has been
3503 very much simplified.
3505 * lily/translator-group.cc: try_music is now invoked through a
3508 * lily/*-iterator.cc: Massive cleanups. Junked
3509 try_music_in_children globally. Renamed try_music to report_event,
3510 and made that method descend to a bottom context automatically.
3512 * lily/event-iterator.cc: New file.
3514 * lily/output-property-iterator.cc,
3515 lily/old-lyric-combine-music-iterator.cc: Removed.
3517 * python/convert-rules.py: Modified the syntax for \applyOutput.
3519 2006-05-23 Graham Percival <gpermus@gmail.com>
3521 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3524 * Documentation/user/ various: stuff that might have helped
3525 to fix the pdf creation, plus some minor doc additions.
3527 * Documentation/user/changing-defaults.itely: remove @b from
3528 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3530 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3532 * lily/beaming-pattern.cc (beamify): deal with negative start
3533 moments for beaming patterns.
3535 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3537 * lily/beaming-info.cc (beamify): new function: read beatLength
3538 and beatGrouping from context.
3540 * input/regression/beam-beat-grouping.ly (Module): new file.
3542 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3544 * lily/beam.cc (get_beam_segments): generate events for
3545 max_connect_ case too.
3546 (get_beam_segments): read Stem::max-beam-connect.
3548 * input/regression/beam-single-stem.ly: new file.
3550 * lily/stem.cc (set_beaming): use #f as signaling value for
3553 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3555 * lily/beam.cc (set_beaming): read clip-edges property.
3556 (calc_direction): don't suicide for single stem.
3558 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3559 argument, remove 1<<15 hack. Remove clip_edges()
3561 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3563 2006-05-21 Graham Percival <gpermus@gmail.com>
3565 * Documentation/user/basic-notation.itely: reorg.
3567 * Documentation/user/ various: minor fixes.
3569 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3571 * lily/stencil-expression.cc (register_stencil_head): opps, append
3572 to cdr of static SCM object.
3574 2006-05-19 Graham Percival <gpermus@gmail.com>
3576 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3577 update framework for command index. DOC WRITERS: use @funindex
3578 instead of @cindex @code{}.
3580 * Documentation/user/ various: replace @cindex @code{} => @funindex
3582 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3584 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3585 case positions is set manually.
3587 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3589 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3592 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3594 * Documentation/user/changing-defaults.itely (Contexts explained):
3595 use absolute dimension for @image.
3597 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3598 out image for illustration too.
3599 ($(outdir)/%.png): add more png <-> eps rules.
3601 2006-05-17 Graham Percival <gpermus@gmail.com>
3603 * Documentation/user/ various: remove trailing whitespace, cosmetic
3604 change to reduce changes produced by diff.
3606 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3608 * lily/main.cc (do_chroot_jail): correctness tweak.
3610 * python/lilylib.py (system): import subprocess in system () only.
3612 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3614 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3615 variable. Backportme.
3617 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3619 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3621 2006-05-17 Werner Lemberg <wl@gnu.org>
3623 * lily/lexer.ll (init_signature_has_table): Add
3624 `scm-scm-music-music'.
3626 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3627 (Generic_prefix_music_scm): Add rule for it.
3629 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3630 `quoted-transposition' property.
3632 * ly/music-functions-init.ly (transposedCueDuring): New function.
3634 * scm/define-music-properties.scm (all-music-properties): Updated.
3636 * Documenation/topdocs/NEWS.itely: Document it.
3638 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3640 * python/lilylib.py (system): move import subprocess to system()
3643 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3645 * VERSION (PATCH_LEVEL): release 2.9.5
3647 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3650 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3652 2006-05-16 Graham Percival <gpermus@gmail.com>
3654 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3656 * Documentation/user/ various: minor fixes.
3658 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3660 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3662 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3664 * Documentation/user/advanced-notation.itely (Instrument names):
3665 Modified obsolete instruction on how to move instrument names away
3666 from the staves. Hmm, at second thought the bug probably has been
3667 solved, so the full bug description should probably be removed.
3669 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3671 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3672 currentCommandColumn.
3674 * lily/hairpin.cc (print): also add padding for non-neighbor
3677 * scm/define-context-properties.scm
3678 (all-user-translation-properties): add hairpinToBarline
3680 * input/regression/hairpin-to-barline.ly: new file.
3682 * lily/context.cc (internal_send_stream_event): thinko fix.
3684 * lily/tie.cc (set_default_control_points): robustness fix.
3686 * python/musicxml.py (Part.interpret): don't complain about
3687 incomplete measures.
3689 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3690 new music if last_event_chord() returned None.
3692 * python/musicxml.py (Part.interpret): skip back over chord notes.
3694 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3696 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3697 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3698 lily/slash-repeat-engraver.cc,
3699 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3700 iterator sends PercentEvents
3702 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3703 rework tuplets: send start/stop events to engraver
3705 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3706 dispatchers event-source and events-below to Context
3708 2006-05-15 Graham Percival <gpermus@gmail.com>
3710 * Documentation/user/README.txt: update info for doc writers.
3712 * Documentation/user/programming-interface.itely: integrate
3713 Nicolas' fixes for chapter rewrite.
3715 * Documentation/user/ various: minor fixes.
3717 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3719 * lily/clef-engraver.cc: cleanup.
3721 * Documentation/user/GNUmakefile: dist context-example.eps too.
3723 * lily/key-engraver.cc (create_key): use
3724 explicitKeySignatureVisibility for cancellation too.
3726 * lily/font-config.cc (init_fontconfig): don't close file if
3729 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3731 * Documentation/topdocs/NEWS.tely: niente and rotation news
3733 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3735 * lily/include/stencil.hh
3736 * lily/stencil.cc (rotate): new function. Makes it possible
3737 to rotate a stencil around a given offset.
3739 * lily/grob.cc (get_print_stencil): add rotation support
3741 * lily/stencil-interpret.cc (interpret_stencil_expression):
3742 add rotation support
3744 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3746 * scm/define-grob-properties.scm: add 'rotation property
3748 * scm/define-markup-commands.scm: add rotate markup command
3750 * scm/output-ps.scm: add rotation support in PostScript backend
3752 * scm/output-svg.scm: add rotation support in SVG backend
3754 2006-05-13 Graham Percival <gpermus@gmail.com>
3756 * Documentation/user/music-glossary.itely: French correction.
3758 * Documentation/user/programming-interface.itely: major
3759 new docs, some reorg, some info from Nicolas.
3761 * Documentation/user/ various: small fixes.
3763 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3765 * Documentation/user/programming-interface.itely (Markup
3766 programmer interface): Remove duplicate text.
3768 2006-05-12 Graham Percival <gpermus@gmail.com>
3770 * Documentation/user/context-example.eps: new file.
3772 * Documentation/user/changing-defaults.itely: set up file to
3775 * Documentation/user/programming-interface.itely: changes
3778 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3780 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3782 2006-05-11 Graham Percival <gpermus@gmail.com>
3784 * Documentation/user/programming-interface.itely: first round of
3785 editing and merging emails from Nicolas.
3787 * Documentation/user/scheme-tutorial: minor edit.
3789 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3791 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3793 (Xml_node.message): use it.
3795 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3796 oops. Add duration argument.
3798 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3800 * lily/paper-column-engraver.cc (make_columns):
3801 * scm/define-grobs.scm: Revert my previous change and set the default
3802 in define-grobs.scm instead.
3804 2006-05-09 Graham Percival <gpermus@gmail.com>
3806 * Documentation/user/changing-defaults.itely: general editing,
3807 info about \set and \override.
3809 * Documentation/user/tweaking.itely, advanced-notation.itely:
3810 fixes from Dave Luttinen, thanks!
3812 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3814 * lily/paper-column-engraver.cc (make_columns): By default, a column
3815 needs to be breakable.
3817 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3819 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3821 (musicxml_time_to_lily): idem
3822 (musicxml_key_to_lily): idem
3823 (instrument_drumtype_dict): dict for supported drumtypes.
3824 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3825 moments and pending mm rests
3826 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3827 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3828 (musicxml_voice_to_lily_voice): add mode change.
3829 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3830 speed and less memory usage (factor 5 to 10).
3831 (convert): write -defs.ly and driver file separately so people
3832 can script their own part extraction.
3834 * python/musicxml.py (minidom_demarshal_node): new function:
3835 separate minidom handling.
3836 (lxml_demarshal_node): new function: support lxml.etree too.
3837 (Xml_node.message): new function: verbose error message, with XML
3838 path to offending node.
3839 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3840 (Part_list.generate_id_instrument_dict): new method: collect
3841 instrument names, to be able to set drum_type.
3842 (Part.interpret): handle underfull measures
3843 (Part.interpret): assign instrument names.
3845 * python/musicexp.py (Output_printer.close): new method
3846 (MusicWrapper.print_ly): new class: support other modes,
3848 (BarCheck.print_ly): new class. Support bar checks, with comments
3849 and fancy barchecks.
3850 (NoteEvent.__init__): also set drum_type for drum notes.
3851 (MultiMeasureRest.lisp_expression): dump mm rests.
3853 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3854 line-break-permission if forbidBreak is not set.
3856 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3858 * scm/define-context-properties.scm:
3859 * scm/define-grob-properties.scm:
3860 * scm/define-grobs.scm:
3861 * scm/define-music-display-methods.scm:
3862 * scm/define-music-properties.scm:
3863 * scm/define-music-types.scm:
3864 * scm/music-functions.scm:
3865 * ly/declarations-init.ly:
3866 * lily/include/constrained-breaking.hh:
3868 * lily/spaceable-grob.cc:
3869 * lily/simple-spacer.cc:
3870 * lily/paper-score.cc:
3871 * lily/paper-column.cc:
3872 * lily/paper-column-engraver.cc:
3874 * lily/gourlay-breaking.cc:
3875 * lily/constrained-breaking.cc:
3876 * python/convertrules.py:
3877 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3878 "page-break-penalty" and "line-break-permission".
3879 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3880 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3882 * lily/bar-engraver.cc:
3883 * lily/beam-engraver.cc:
3884 * lily/forbid-break-engraver.cc:
3885 * lily/ligature-engraver.cc:
3886 * lily/paper-column-engraver.cc:
3887 * lily/percent-repeat-engraver.cc:
3888 * lily/score-engraver.cc:
3889 * lily/score-engraver.hh:
3890 * lily/paper-column-engraver.hh:
3891 Inter-engraver communication regarding line breaks is done through context
3892 properties (Score.forbidBreak) instead of function calls.
3894 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3896 * VERSION (PACKAGE_NAME): release 2.9.4
3898 2006-05-08 Graham Percival <gpermus@gmail.com>
3900 * Documentation/user/working.itely: proofreading from Dave
3903 * Doucmentation/user/README.txt: updated with manual style info.
3905 * Documentation/user/ various: trim linewidth to 78 chars.
3907 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3909 * scm/define-grob-properties.scm (all-internal-grob-properties):
3910 remove chord-tremolo property.
3912 * lily/beam.cc (get_beam_segments): don't use stem position as
3913 base for broken ends.
3915 2006-05-06 Graham Percival <gpermus@gmail.com>
3917 * Documentation/user/putting.itely: proofreading from Dave
3920 * Documentation/user/ various: more reorg and clarifications.
3922 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3924 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3926 * ly/music-functions-init.ly: new function featherDurations
3928 * lily/beam.cc: read grow-direction for feathered beaming.
3930 * Documentation/topdocs/NEWS.tely (Top): typo.
3932 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3934 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3937 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3938 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3939 used by music streams.
3941 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3942 lily/stream-event.cc, lily/stream-event-scheme.cc,
3943 lily/listener.cc, lily/scheme-listener.cc,
3944 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3945 lily/include/stream-event.hh, lily/include/listener.hh,
3946 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3947 Created data structures for music streams.
3949 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3951 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3952 construction of a beam.
3955 * flower/include/std-vector.hh (default_compare): use only one comparison.
3957 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3958 (note-by-number): further attachment fixes.
3960 * scm/lily-library.scm (ordered-cons): new function.
3961 (interval-index): new function
3963 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3965 * lily/note-head.cc (get_stem_attachment): new function.
3967 * scm/define-markup-commands.scm (note-by-number): read 'style
3970 * input/regression/markup-note.ly: show note-head style option.
3972 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3975 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3977 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3979 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3981 * lily/include/constrained-breaking.hh: GCC 4 fix.
3983 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3985 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3986 Replace it with functions get_line_forces and get_line_configuration.
3987 (class Simple_spacer): Make data private.
3988 Rewrite compression algorithm to be faster and simpler.
3990 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3991 * lily/gourlay-breaking.cc (solve):
3992 * lily/constrained_breaking.cc (space_line):
3993 Change it to the new simple-spacer code.
3995 * lily/paper-score.cc (get_paper_systems):
3998 Delay breaking the systems until they are requested.
3999 (find_break_indices):
4000 Use vsize for indices.
4002 Move the "Calculating line breaks" message here.
4004 * lily/system.cc (pre_processing):
4005 Move the "Calculating line breaks" message away from here.
4006 (break_into_pieces):
4007 Allow multiple calls to this function in sequence (with touching-but-
4008 not-overlapping breakpoints).
4010 * lily/constrained-breaking.cc:
4011 Replace most of the get_XXXX functions with get_line_details.
4012 Only calculate the force for each line. Calculate configurations only
4013 for the lines we will actually use.
4014 Replace cols_ with lines_.
4016 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4018 * mf/GNUmakefile (depth): remove FC_FIND.
4020 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4022 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4024 * scm/framework-ps.scm (write-preamble): new function.
4025 (write-preamble): load mac fonts via fondu, even if gs-font-load
4028 2006-05-03 Werner Lemberg <wl@gnu.org>
4030 * mf/GNUmakefile (FC_FIND): Fix typo.
4032 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4034 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4036 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4038 * stepmake/aclocal.m4: run python-config for crosscompiling
4041 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4042 -f png for HTML, TEXINFO formats.
4044 * input/tutorial/lbook-html-test.html: new file.
4046 * lily/include/tie-formatting-problem.hh (class
4047 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4048 [column, direction]. This fixes laissez vibrer ties.
4050 * flower/include/tuple.hh (struct Tuple2): new file.
4052 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4053 $(FCMATCH), only if $(NCSB_DIR) not set.
4055 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4057 * config.make.in (DOCUMENTATION): set FCMATCH.
4059 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4061 2006-05-03 Graham Percival <gpermus@gmail.com>
4063 * Documentation/user/ various: final round of reorg.
4065 * Documentation/user/instrument-notation.itely: some more
4066 fixes from Eduardo, thanks!
4068 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4070 * VERSION (PACKAGE_NAME): release 2.9.3
4072 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4074 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4076 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4078 * scm/define-grob-properties.scm (all-user-grob-properties):
4079 Correct typo, thanks to Eduardo.
4081 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4083 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4085 * buildscripts/lilypond-words.py (F): indent fix.
4087 * input/regression/tie-arpeggio-collision.ly: new file.
4089 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4090 function: store outlines per column rank.
4092 * lily/include/tie-configuration.hh (class Tie_configuration): add
4093 column_ranks_ to specification and configuration, to distinguish
4094 between ties for different heads in arpegiated chords.
4096 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4098 * *.py: more 4 space indents.
4100 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4102 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4104 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4106 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4108 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4110 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4112 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4114 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4116 * python/convertrules.py (conv): indent 4 for python files.
4118 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4120 * Documentation/user/changing-defaults.itely (Creating contexts):
4121 Clarify \new semantics.
4123 2006-04-28 Graham Percival <gpermus@gmail.com>
4125 * Documentation/user/ various: major new sections in the
4126 Learning manual, slight reorg elsewhere.
4128 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4130 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4132 * scm/framework-ps.scm (output-framework): remove PageMedia
4134 2006-04-27 Graham Percival <gpermus@gmail.com>
4136 * Documentation/user/ tweaks.itely, working.itely: new
4137 files, being more advanced "learning manual" chapters.
4139 * Documentation/user/ tutorial, putting, lilypond: reorg.
4141 2006-04-26 Graham Percival <gpermus@gmail.com>
4143 * input/regression/lyric-combine-polyphonic.ly: fixed test
4144 (no more "can't find context `one'" error).
4146 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4148 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4150 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4152 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4154 * lily/relocate.cc (read_relocation_dir): new function.
4156 2006-04-26 Graham Percival <gpermus@gmail.com>
4158 * Documentation/user/instrument-notation.itely: a few more fixes
4159 from Eduardo, thanks!
4161 * Documentation/user/README.txt: new file; contains info on
4162 style that used to be in lilypond.tely.
4164 * Documentation/user/ various: first round of doc reorg.
4166 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4167 graphic; this probably causes problems on some pdf
4168 viewers, notably Adobe Acrobat.
4170 2006-04-24 Graham Percival <gpermus@gmail.com>
4172 * Documentation/user/instrument-notation.itely: many alterations
4173 to Vocal music, from Eduardo Viera.
4175 2006-04-23 Graham Percival <gpermus@gmail.com>
4177 * Documentation/user/instrument-notation.itely: fix \new
4178 instead of \context problem.
4180 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4182 * lily/relocate.cc (expand_environment_variables): new function.
4184 (read_relocation_file): id.
4186 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4188 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4190 * ly/engraver-init.ly: remove old comments from TabVoice
4192 2006-04-20 Graham Percival <gpermus@gmail.com>
4194 * Documentation/user/instrument-notation.itely: added Erlend's
4195 latest doc patch, thanks!
4197 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4199 * lily/include/slur.hh:
4201 * lily/phrasing-slur-engraver.cc:
4202 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4203 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4204 Slur_engraver:: and putting it in
4205 Slur::auxiliary_acknowledge_extra_object ().
4207 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4209 * lily/note-collision.cc: fix a comment
4211 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4213 * stepmake/bin/add-html-footer.py: fix footer position in
4214 generated html files: before </body> and </html> tags.
4216 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4218 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4219 Earlier successive `make' commands finally compiled ok.
4221 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4223 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4225 * lily/include/stem-tremolo.hh:
4226 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4230 * lily/include/lookup.hh: add rotated_box ()
4232 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4234 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4235 been generated. Fixes "can't get `--help'" bug after make clean.
4237 * THANKS: alphabetize contributors.
4239 2006-04-17 Graham Percival <gpermus@gmail.com>
4241 * Documentation/user/instrument-notation.itely: added Erlend's
4242 tabs and banjo doc patch. Thanks!
4244 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4246 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4248 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4250 * scm/output-lib.scm: add some more predefined string tunings.
4252 * Documentation/user/instrument-notation.itely: and doc them.
4254 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4256 * ly/engraver.ly: Remove obsolete comments.
4258 * ly/gregorian-init.ly: Define default layout block.
4260 * input/puer-fragment.ly: Updated and extended.
4262 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4264 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4265 pdf conversion behaviour.
4267 * flower/file-name.cc (dir_name)
4268 (get_working_directory): Move from relocate.cc.
4270 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4272 * lily/relocate.cc: Encapsulate sys/stat.h in
4275 2006-04-14 Graham Percival <gpermus@gmail.com>
4277 * Documentation/user/ various: small updates from Cameron
4278 and Juergen, thanks!
4280 * Documentation/user/ various: small updates of my own.
4282 * THANKS: 2.7 -> 2.8.
4284 2006-04-11 Graham Percival <gpermus@gmail.com>
4286 * scm/define-context-properties.scm: typo.
4288 * Documentation/user/ : many more small updates.
4290 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4292 * scm/define-music-types.scm: disposed "docme".
4294 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4296 * lily/hairpin.cc: make niente circles a bit smaller.
4298 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4300 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4301 get-pfa and get-*-fonts targets.
4303 2006-04-10 Graham Percival <gpermus@gmail.com>
4305 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4306 music-glossary, programming-interface: more minor fixes
4309 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4311 * scm/define-context-properties.scm: another old \property update.
4312 This time tested for compiling!
4314 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4316 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4318 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4320 * scm/define-context-properties.scm (all-user-translation-properties):
4321 * Documentation/user/global.itely (Page formatting): Compile fix.
4323 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4325 * Documentation/user/advanced-notation.itely (Polymetric
4326 notation): Update the example to use the "+" symbol and add link
4327 to input/test/compound-time.ly.
4329 2006-04-08 Graham Percival <gpermus@gmail.com>
4331 * scm/define-grob-properties.scm: clarify docs for #'direction.
4333 * scm/define-context-properties.scm: update old \property override.
4335 * Documentation/user/ advanced-notation, global, lilypond-book:
4336 more minor doc updates.
4338 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4340 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4342 * scm/backend-library.scm (search-gs): oops.
4344 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4346 * scripts/lilypond-book.py (output): use base, not filename for href.
4348 * scm/backend-library.scm: only look for gs.
4350 * scripts/lilypond-book.py (output): fix printfilename.
4352 * lily/parser.yy (music_function_musicless_prefix): fold together
4353 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4355 * lily/slur.cc (print): only set font-size if not set yet.
4357 * lily/slur-configuration.cc (add_score): improved layout of debug
4360 2006-04-05 David Feuer <David.Feuer@gmail.com>
4362 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4363 (draw_circle): Hopefully fixed regression.
4364 Improved documentation for several procedures.
4366 2006-03-04 Werner Lemberg <wl@gnu.org>
4368 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4370 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4372 * scripts/musicxml2ly.py (bindir): add dynamic
4375 2006-04-04 Graham Percival <gpermus@gmail.com>
4377 * Documentation/user/ basic-notation, advanced-notation, putting,
4378 instrument-notation, invoking, lilypond, THANKS: another ream of small
4379 fixes from the Doc Helpers.
4381 2006-04-03 David Feuer <David.Feuer@gmail.com>
4383 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4385 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4387 * Cleaned up interfaces between PostScript and Scheme, and moved
4388 computations from PostScript to Scheme:
4390 * music-drawing-routines.ps
4391 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4392 with stroke_and_fill throughout.
4393 (euclidean_length, print_letter, draw_box): Deleted unused
4394 procedures. If someone needs draw_box, implement it using
4395 draw_round_box; don't duplicate code.
4396 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4397 Refactored/cleaned up interfaces.
4400 * output-ps.scm: reordered arguments to PostScript functions to
4401 match new interfaces
4402 (glyph-string): Rewrote glyph-string.
4403 (grob-cause): Replaced string-append with format.
4404 (repeat-slash): Rewrote to do computation here.
4405 (round-filled-box): Rewrote to do computation here.
4407 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4409 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4411 * stepmake/stepmake/toplevel- targets.make: print help info about
4414 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4416 * input/regression/hairpin-circled.ly: new file
4418 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4420 * lily/hairpin.cc (print): add support for circled tip
4422 * scm/define-grob-properties.scm: add circled-tip parameter
4424 * scm/define-grobs.scm: init circled-tip to false
4426 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4428 * scm/music-functions.scm (quote-substitute): set
4431 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4433 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4436 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4438 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4440 2006-03-31 David Feuer <david.feuer@gmail.com>
4442 * scm/framework-ps.scm:
4444 * scm/output-ps.scm: glyph-string now produces smaller, more
4445 readable, and probably faster PostScript. Several findfont
4446 scalefont setfont instances changed to selectfont
4447 Hacked-up string-appends changed to formats.
4449 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4451 2006-03-30 Graham Percival <gpermus@gmail.com>
4453 * scm/lily-library.scm: make "no version" warning message more polite.
4455 * lily/music.cc: add double quotes to failed octave check.
4457 * Documentation/user/ advanced-notation, changing-defaults,
4458 instrument-notation, invoking, music-glossary: whole bunch of minor
4461 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4463 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4464 $(buildscriptdir) iso. depth.
4466 * VERSION (PACKAGE_NAME): release 2.9.1
4468 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4470 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4472 * VERSION (PATCH_LEVEL): bump version number.
4474 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4477 * lily/pango-font.cc (pango_item_string_stencil): use
4480 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4481 $(outdir)/emmentaler-%.svg): remove canary.
4483 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4484 glyphnames if we have a ttf font.
4486 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4488 * Documentation/user/advanced-notation.itely (Font selection):
4489 Corrected reference to the font-family-override.ly example.
4491 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4493 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4494 stem-tremolo object in the stem (or else the stem might not be
4497 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4499 * lily/ttf.cc (print_trailer): only print existing glyphs.
4501 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4503 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4504 position the tremolo based on the position of the notehead.
4506 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4507 notes and update the texidoc line with the new positioning rules.
4509 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4511 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4513 * scripts/lilypond-book.py (Module): set default for linewidth if
4516 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4518 * VERSION (PACKAGE_NAME): release 2.9.0.
4520 * input/regression/stem-tremolo-position.ly: new file.
4522 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4524 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4526 * lily/stem-tremolo.cc (print): position
4527 the tremolo depending only on the end of the stem
4528 and not on the notehead
4529 (raw_stencil): center, on the middle staff line, the
4530 flag that is closest to the end of the stem (previously
4532 (calc_width): add this callback to shorten a tremolo when
4533 it is beamed or it is stemup with a flag
4534 (style): add this callback to make a tremolo rectangular when
4535 it is beamed or it is stemup with a flag
4536 (rotated_box): this is like Lookup::beam but makes a rotated
4537 rectangle instead of a parallelogram
4539 * lily/stem.cc (calc_stem_info): make sure the stem
4540 is long enough to fit the tremolo
4541 (calc-length): reduce the length of tremolo stems since the
4542 tremolo code is now capable of better positioning
4544 * scm/define-grobs.scm: make calc_width the default beam-width
4545 callback for stem-tremolo and add the style callback
4547 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4549 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4552 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4554 * lily/ttf.cc (make_index_to_charcode_map): restore old
4557 2006-03-28 Werner Lemberg <wl@gnu.org>
4559 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4561 2006-03-28 Graham Percival <gpermus@gmail.com>
4563 * THANKS: update for 2.9, add section for Documentation helpers.
4565 * Documentation/topdocs/NEWS.tely: compile fix.
4567 * Documentation/user/ basic-notation, global, advanced-notation,
4568 examples.itely: minor fixes from mailist.
4570 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4572 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4575 * lily/ttf.cc (print_trailer): use it.
4577 * lily/pango-font.cc (get_unicode_name): new function.
4579 * lily/ttf.cc (make_index_to_charcode_map): move function from
4581 (print_trailer): substitute uniXXXX name if applicable.
4583 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4584 (pango_item_string_stencil): use it to generate uniXXXX names.
4586 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4587 note heads, for uniform widths in shape note output.
4588 (overdone_heads): hmm. remove them again.
4590 * scripts/lilypond-book.py (output): add links to filenames.
4592 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4594 * lily/note-collision.cc (get_clash_groups): only consider when
4595 Note_column::dir <> CENTER.
4597 * scripts/lilypond-book.py (get_option_parser): init output_name
4600 2006-03-24 Graham Percival <gpermus@gmail.com>
4602 * Documentation/topdocs/NEWS.tely: add @end itemize
4604 * Documentation/user/ global, advanced-notation: minor
4607 2006-03-23 Graham Percival <gpermus@gmail.com>
4609 * Documentation/user/ lilypond.tely, music-glossary,
4610 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4612 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4614 * mf/GNUmakefile: don't install .enc files.
4616 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4618 * VERSION (PATCH_LEVEL): bump to 2.9.0
4620 2006-03-22 Graham Percival <gpermus@gmail.com>
4622 * Documentation/user/advanced-notation.itely: minor fixes
4625 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4627 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4629 * branch lilypond_2_8
4631 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4633 * scripts/lilypond-book.py (samefile): new function, for windoze
4636 2006-03-21 Graham Percival <gpermus@gmail.com>
4638 * ly/engraver-init.ly: add info about StaffGroup.
4640 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4642 * input/regression/stem-direction-context.ly: idem.
4644 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4648 * input/regression/page-layout-twopass.ly: comment out \markup so
4651 * lily/instrument-name-engraver.cc (finalize): add to instrument
4652 name global System. This also fixes chopped instrument names, but
4653 doesn't crash when there are slurs/beams.
4655 * lily/slur-configuration.cc (add_score): disallow negative slur
4658 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4660 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4662 * lily/instrument-name-engraver.cc (process_music): kludge: add
4663 InstrumentName spanner to axis group of left bound. Fixes chopped
4664 off instrument names in EPS images.
4666 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4668 * scripts/abc2ly.py (option_parser): update to 2.7.40
4670 2006-03-20 Graham Percival <gpermus@gmail.com>
4672 * THANKS: move small doc contributors to SUGGESTIONS.
4674 * Documentation/user/ basic-notation, advanced-notation,
4675 global: small changes from mailist.
4677 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4679 * Documentation/user/advanced-notation.itely (Text marks): update
4680 for new rehearsalMarkAlignSymbol convention.
4682 * VERSION (PATCH_LEVEL): bump version.
4684 * input/test/instrument-name-align.ly: new file.
4686 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4688 * input/test/instrument-name-align.ly: new file. Document how to
4689 align instrument names.
4691 * lily/mark-engraver.cc: remove properties.
4693 * scm/define-context-properties.scm
4694 (all-user-translation-properties): remove align symbol properties
4695 for barnumber/reh. mark.
4697 * lily/break-align-interface.cc (self_align_callback): new
4698 interface, new function. Look at complete alignment. This handles
4699 tunable break alignments in case break-align-symbols are missing.
4701 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4703 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4705 * python/convertrules.py (conv): mark/bar number alignment rule.
4707 * lily/break-align-interface.cc (calc_positioning_done): also
4708 store offset from last visible break-alignment to its
4709 neighbor. This makes alignment on non-visible objects more reliable.
4711 * po/lilypond.pot (Module): ran po-replace.
4713 * input/regression/tie-single-manual.ly (Module): new file.
4715 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4716 look at has_manual_position_.
4717 (from_ties): set has_manual_position_ if tie has staff-position set.
4719 * lily/tuplet-bracket.cc (calc_positions): idem.
4721 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4724 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4726 * scm/define-markup-commands.scm (smallCaps): new markup command
4727 for turning a text to small caps using smaller font size and upper
4730 2006-03-17 Graham Percival <gpermus@gmail.com>
4732 * Documentation/user/ examples, instrument-notation,
4733 advnaced-notation: minor fixes from mailist.
4735 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4737 * Documentation/user/tutorial.itely (First steps): change example
4740 2006-03-17 Graham Percival <gpermus@gmail.com>
4742 * Documentation/user/ examples, advanced: minor changes from mailist.
4744 * THANKS: add Geoff Horton, for documentation stuff.
4746 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4748 * python/lilylib.py (system): revert have_select kludge.
4750 * Documentation/user/tutorial.itely (Commenting input files):
4751 update version numbers in doc.
4753 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4754 bound-padding to multi-measure-interface
4756 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4758 * input/test/engraver-example.ily: update version number.
4760 * VERSION (PACKAGE_NAME): release 2.7.39
4762 * lily/note-spacing.cc (get_spacing): heighten threshold where
4763 accidentals/arpeggios influence previous spacing fully.
4765 * lily/rest.cc (y_offset_callback): only use direction if
4766 staff-position wasn't set before.
4768 * lily/bar-number-engraver.cc: add support for
4769 barNumberAlignSymbol.
4770 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4772 * lily/pointer-group-interface.cc (set_ordered): new function.
4773 (add_unordered_grob): new function.
4775 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4776 to ordered, unless the opposite has been proved. This fixes
4777 random reordering of large object groups across linebreaks,
4780 * lily/main.cc (do_chroot_jail): printf format fix.
4782 * lily/tie-formatting-problem.cc (generate_configuration):
4783 multiply y-shift for dot with direction.
4785 * scm/define-markup-commands.scm (note-by-number): put (magstep
4786 size) in y-attach too.
4788 * Documentation/topdocs/NEWS.tely (Top): show override.
4790 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4791 direction for stems.
4793 2006-03-15 Graham Percival <gpermus@gmail.com>
4795 * Documentation/user/ changing-defaults, global: minor
4798 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4800 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4802 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4803 breakable items after uniformly stretched notes.
4805 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4806 outline with outer edge of note heads. This prevents infinity
4807 problems with tied whole notes.
4809 * scripts/lilypond-book.py (do_file): use os.popen
4811 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4813 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4815 * Documentation/user/invoking.itely: Add ragged-right to bug report
4818 2006-03-14 Graham Percival <gpermus@gmail.com>
4820 * Documentation/user/global.itely: small fix from mailist.
4822 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4824 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4825 file descriptor returned by tempfile.mkstemp() when writing
4826 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4829 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4831 * po/fi.po: newline bugfix.
4833 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4835 * scm/paper.scm (paper-alist): Rounding fixes.
4837 2006-03-13 Graham Percival <gpermus@gmail.com>
4839 * Documentation/user/ changing-defaults, instrument-notation,
4840 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4842 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4846 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4848 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4851 * python/lilylib.py (print_environment): move ps_page_count to
4854 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4856 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4858 * scm/framework-ps.scm (embed-document): new function. Use to
4861 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4863 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4865 * Documentation/user/instrument-notation.itely (Setting simple
4866 songs): Added \book{...} around the full example, so the separate
4867 markups are included in the printed example.
4869 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4871 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4874 * python/lilylib.py (system): rewrite system() using
4875 subprocess. Remove >& redirection trickery.
4877 2006-03-11 Graham Percival <gpermus@gmail.com>
4879 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4880 notation-appendices.itely: minor fixes from mailist.
4882 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4884 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4885 unsplit man also needs images.
4887 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4889 * VERSION (PACKAGE_NAME): 2.7.38 released.
4891 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4893 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4896 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4898 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4899 respects the Score.skipTypesetting property.
4901 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4903 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4904 Prolog. No %%EOF after CFF file.
4906 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4908 * lily/constrained-breaking.cc (get_max_systems): used to return a
4910 (combine_demerits): use pointers to reduce copying data
4911 (calc_subproblem): idem
4912 (get_page_penalty): add page turn penalties
4914 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4916 * Documentation/user/invoking.itely (Invoking lilypond): better
4917 explanation of -e usage.
4919 * lily/main.cc (main_with_guile): don't append to
4920 init_scheme_code_string
4922 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4924 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4926 * scripts/convert-ly.py (do_options): don't print help for
4929 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4930 @code and @example. Update from texinfo.tex from CVS.
4932 2006-03-08 Graham Percival <gpermus@gmail.com>
4934 * Documentation/user/scheme-tutorial.itely: clarifies distances
4935 measured in staff-spaces.
4937 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4939 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4940 consider[k] is true.
4942 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4944 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4945 consider columns that have originals. Unifies spacing for mm
4946 rests around line breaks.
4948 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4949 (set_text_rods): idem.
4950 (calculate_spacing_rods): new function: share code between
4951 set_text_rods and set_spacing_rods.
4952 (set_text_rods): take extents of bounds into account.
4954 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4956 * Documentation/user/basic-notation.itely (Writing music in
4957 parallel): don't use relative.
4959 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4961 * ly/music-functions-init.ly (Module): add shiftDurations
4963 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4965 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4967 * ly/engraver-init.ly: init vocalName to nil.
4969 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4971 * scm/music-functions.scm (music->make-music): bugfix,
4972 KeyChangeEvents are now handled correctly.
4974 * scripts/lilypond-book.py: Add --debug option.
4976 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4978 * python/lilylib.py: add tempfile.
4980 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4982 * VERSION (PACKAGE_NAME): release 2.7.37
4984 * python/lilylib.py (ps_page_count): remove make_ps_images().
4985 (ps_page_count): remove mkdir_p
4986 (system): remove cleanup_temp.
4987 (exit): remove lilypond_version_(check)
4988 (error_log): remove pseudo_filter_p
4993 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4996 * lily/accidental-engraver.cc (make_standard_accidental): only add
4997 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4999 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5000 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5001 Make incompatibilities.
5003 * scm/output-ps.scm (grob-cause): replace backslashes by /
5004 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5006 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5008 * cygwin/GNUmakefile: Install fixes.
5010 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5012 * lily/note-head.cc (head::get_balltype): Compile fix.
5014 * flower/file-name.cc (dos_to_posix): Flower string fix.
5016 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5018 * python/lilylib.py: pychecker cleanups.
5020 * scripts/lilypond-book.py
5021 (Lilypond_snippet.output_print_filename): pychecker cleanups
5023 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5025 * python/lilylib.py (underscore): remove identify() , warranty()
5027 * ps/music-drawing-routines.ps: change Border routine for GSView
5030 * lily/stem.cc (height): use quantize-positions. This triggers
5031 set_stem_lengths, so scripts on beamed stems are handled correctly.
5033 * lily/side-position-interface.cc (aligned_side): check if edges
5034 of script are inside staff. Fixes accent of edge of the staff.
5036 * input/regression/staccato-pos.ly: more examples.
5038 * stepmake/aclocal.m4 (depth): fix bashism.
5040 * lily/lyric-combine-music-iterator.cc: move from
5041 new-lyric-combine-iterator.cc
5042 (process): add pending_grace_lyric_ member to delay lyrics on
5045 * lily/system-start-text.cc (print): suicide if we don't have any
5046 elements. Fixes hara kiri'd instrument names.
5048 * scripts/mup2ly.py (Module): remove.
5050 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5052 * Documentation/user/global.itely (A single music expression):
5053 close @lilypond properly
5055 * lily/volta-bracket.cc (modify_edge_height): change from
5056 after_line_breaking_callback. Suicide last bracket if appropriate.
5058 * python/lilylib.py: strip getopt support
5060 * scripts/etf2ly.py (do_options): use optparse
5062 * scripts/midi2ly.py: optparse, strip lilylib copy.
5064 * scripts/abc2ly.py (voices): use optparse.
5066 * stepmake/stepmake/generic-vars.make: new function absdir.
5068 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5070 * scripts/lilypond-book.py (find_file): use global_options for
5073 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5076 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5078 * python/lilylib.py (get_global_option): ughness for extracting
5079 global options from lilylib.
5080 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5082 * scripts/lilypond-book.py (get_option_parser): use optparse for
5083 option handling. Put options in global_options variable.
5085 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5087 * Documentation/index.html.in: clarify.
5089 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5091 * scm/layout-page-layout.scm (write-page-breaks): add a
5092 music-system-heights property to the page layout output.
5094 * scm/page.scm (make-page-stencil): take footer into account when
5095 computing the 'space-left page property
5096 (annotate-space-left): take footer into account when annonating
5099 2006-02-28 Graham Percival <gpermus@gmail.com>
5101 * Documentation/user/ advanced-notation, global: more (final)
5102 docs for music expressions, removed special fermatas.
5104 2006-02-27 Graham Percival <gpermus@gmail.com>
5106 * Documentation/user/ basic-notation, global: minor changes
5109 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5111 * scm/framework-ps.scm:
5112 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5113 layer for inf? and nan? from framework-ps to lily-library.
5115 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5117 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5118 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5120 * buildscripts/substitute-encoding.py (Module): remove file.
5122 * mf/GNUmakefile: more PFA strippage.
5124 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5126 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5129 * scm/framework-ps.scm: remove font name munging.
5131 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5133 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5135 * scm/markup.scm (define-markup-command): change
5136 def-markup-command to define-markup-command
5138 * scm/music-functions.scm (define-music-function): change
5139 def-music-function to define-music-function.
5141 * python/convertrules.py (conv): rules for def-music-function
5142 and def-markup-commands
5144 * Documentation/user/programming-interface.itely,
5145 input/no-notation/display-lily-tests.ly,
5146 input/regression/lily-in-scheme.ly,
5147 input/regression/markup-user.ly,
5148 input/regression/music-function.ly, input/regression/tie-chord.ly,
5149 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5150 ly/gregorian-init.ly: use new macro names (define-music-function,
5151 define-markup-command).
5153 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5155 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5156 (output): add comments to lp-book latex output.
5158 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5161 2006-02-23 Graham Percival <gpermus@gmail.com>
5163 * Documentation/user/ tutorial, global: minor changes.
5165 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5167 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5168 blocks (for make 3.80)
5170 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5171 \notemode so that user should not have to explicitely type it.
5173 * scm/define-music-display-methods.scm: various
5174 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5177 * input/no-notation/display-lily-tests.ly: new tests for
5178 \applyOutput and \applyContext
5180 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5182 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5183 changed it slightly so that the number of systems returned by
5184 solve () will be the same as the last value passed to resize
5185 (). I've also added more documentation, removed casts, fixed style
5186 problems and put in some recovery if constraints aren't satisfied."
5188 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5190 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5191 for emacs < 22 compatibility.
5192 (count-rexp): Use it.
5193 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5194 substring juggling (Milan Zamazal).
5196 2006-02-23 Graham Percival <gpermus@gmail.com>
5198 * Documentation/user/ basic-notation, advanced-notation,
5199 global.itely, invoking.itely, tutorial,itely:
5200 minor fixes from mailist.
5202 * scm/define-markup-commands.scm: improve docs of \filled-box.
5204 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5206 * Documentation/index.html.in: changes concern the previous release.
5208 * input/regression/+.ly: cultivate typographical terminology.
5210 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5212 * scm/define-grob-interfaces.scm (parentheses-interface): add
5213 padding to parentheses-interface.
5215 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5216 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5218 * VERSION (PATCH_LEVEL): release 2.7.36
5220 * lily/slur.cc: add avoid-slur (ugh.)
5222 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5223 intersection gets smaller. This fixes slurs over extreme points.
5225 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5226 stems with neutral-direction set.
5228 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5230 * lily/open-type-font.cc (load_table): format error.
5232 * lily/change-iterator.cc (process): format fix.
5234 * flower/include/international.hh (_f): idem.
5236 * flower/include/std-string.hh: add format printf attribute.
5238 * scm/define-grobs.scm (all-grob-descriptions): height of all
5239 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5241 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5244 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5246 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5248 * input/regression/: upgraded syntax for some files.
5250 * THANKS: Add bughunters.
5252 2006-02-22 Graham Percival <gpermus@gmail.com>
5254 * Documentation/user/ invoking.itely, advanced-notation.itely,
5255 global.itely: long-awaited "let's make chapter 10 not suck"
5256 update. Rearrange chapter 10; now called "global issues",
5257 addresses file structure, etc. Some info from other files
5258 moved into global.itely.
5260 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5262 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5263 catch trill-span-event notes.
5265 * Documentation/user/examples.itely (Ancient notation templates): typo.
5268 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5270 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5272 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5274 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5276 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5277 froum Laissez_vibrer_engraver.
5279 * ly/declarations-init.ly (repeatTie): add \repeatTie
5281 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5283 * scm/define-grob-properties.scm (all-user-grob-properties): add
5284 head-direction property.
5286 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5287 from_lv_ties. Take head direction argument.
5289 * lily/semi-tie-column.cc: rename from
5290 laissez-vibrer-tie-column.cc. Rename class too.
5292 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5295 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5297 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5299 (find_breaks): idem.
5301 2006-02-21 Graham Percival <gpermus@gmail.com>
5303 * Documentation/user/advanced-notation.itely: fixed make-moment]
5306 * Documentation/user/basic-notation.itely: more clarification to
5309 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5311 * lily/include/constrained-breaking.hh (class
5312 Constrained_breaking): new file.
5314 * lily/constrained-breaking.cc (resize): new file.
5316 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5318 * Documentation/user/advanced-notation.itely (Clusters): insert
5321 * lily/tie-column.cc (calc_positioning_done): support for
5324 * lily/tie-formatting-problem.cc
5325 (generate_extremal_tie_variations): factor out.
5326 (score_ties_configuration): annotate all tie
5327 (print_ties_configuration): new routine.
5328 (generate_configuration): nudge extremal ties outside of the head
5330 (score_ties_configuration): oops. convert to staff-space before
5331 determining position symmetry.
5333 2006-02-20 Graham Percival <gpermus@gmail.com>
5335 * Documentation/user/*-notation.itely: misc minor editing,
5336 shifting doc sections around.
5338 * Documentation/user/*-notation-itely, global.itely,
5339 changing-defaults.itely: added new stuff from NEWS.
5341 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5345 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5347 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5348 lilypond --verbose for lp-book.
5350 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5351 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5353 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5354 $(buildscript-dir) iso. absolute depth.
5356 * buildscripts/genicon.py (dir): thinko.
5358 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5360 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5362 * scm/output-lib.scm: swap darkcyan/darkyellow
5364 * THANKS: Add bughunters.
5366 2006-02-19 Graham Percival <gpermus@gmail.com>
5368 * Documentation/user/programming-interfaces.itely: fixed example.
5370 * Documentation/user/instrument-notation.itely: fix @{ @}.
5372 * scm/script.scm: add avoid-slur for \open.
5374 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5376 * lily/tie-formatting-problem.cc (score_configuration): use
5377 sliding score for min-length.
5379 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5380 spaghetti for icons.
5382 * buildscripts/genicon.py (program_name): new file.
5384 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5386 (generate_configuration): for small ties, also look for collisions
5387 at Y + DIR*h + DELTA_Y.
5388 (get_variations): consider variation for dot positions too.
5390 * lily/side-position-interface.cc (aligned_side): take abs for
5391 quantized rounded position. Fixes tenuto below staff.
5393 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5394 markers when necessary.
5396 * lily/program-option.cc (internal_set_option): add
5397 strict_infinity_checking option.
5399 * scm/output-lib.scm (cyan): swap yellow and cyan.
5401 2006-02-19 Graham Percival <gpermus@gmail.com>
5403 * darwin.patch: trivial linenumber update.
5405 * Documentation/user/ {various}: `\context foo = named' changed
5406 to `\new foo = "name"' in docs.
5408 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5410 * scm/stencil.scm (annotate-y-interval): use it.
5412 * scm/lily-library.scm (interval-sane?): new function.
5414 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5417 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5420 * flower/include/std-vector.hh (iterof): add iterof macro.
5422 * lily/enclosing-bracket.cc (width): new function.
5424 * lily/align-interface.cc (align_elements_to_extents): reinstate
5427 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5429 * Documentation/index.html.in: fix spelling: thankyous.
5431 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5433 * lily/lyric-hyphen.cc: typo.
5435 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5437 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5438 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5441 * VERSION: release 2.7.35
5443 * lily/beam.cc (get_default_dir): oops. Take abs () for
5445 (get_default_dir): use extreme position criterion only in absence
5446 of forced stem directions.
5448 * VERSION (PATCH_LEVEL): bump VERSION.
5450 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5451 dependencies. Necessary for -jX builds.
5453 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5455 * lily/relocate.cc (setup_paths): Yet another const fix.
5457 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5459 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5461 * lily/relocate.cc (setup_paths): oops.
5463 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5465 * Documentation/index.html.in: order links: html before PDF.
5467 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5469 * lily/tie-column-format.cc (Module): remove.
5471 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5473 * lily/text-spanner.cc (print): idem.
5475 * lily/dynamic-text-spanner.cc (print): only print line if longer
5478 * lily/auto-change-iterator.cc (change_to): formatting.
5480 * lily/beam.cc (get_default_dir): take extreme note head as input
5483 * lily/tie.cc (get_default_dir): only look directions for visible
5486 * lily/side-position-interface.cc (aligned_side): oops. Don't
5487 mutiply with direction. This fixes quantized (staccato, tenuto)
5488 scripts below notes.
5490 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5491 direction. Fixes c-lyrics-center-align.ly
5493 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5495 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5498 * lily/std-string.cc:
5499 * lily/include/std-vector.hh (split_string): Move and rename from
5500 lily/include/misc.hh, lily/misc.cc. Update callers.
5502 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5504 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5506 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5508 * flower/test-file.cc: New file.
5510 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5513 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5515 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5517 * flower/include/file-storage.hh: remove file.
5519 * lily/include/midi-item.hh (class Midi_track): idem.
5521 * lily/include/source.hh (class Sources): idem.
5523 * lily/include/performance.hh (class Performance): use vector
5526 * flower/include/cons.hh (class Cons): remove file.
5528 * flower/include/flower-proto.hh: remove template cruft.
5530 * lily/include/font-metric.hh: use size_t not vsize for indices.
5532 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5535 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5537 * lily/include/paper-book.hh (class Paper_book):
5538 make get_system_specs() public.
5540 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5541 the force=10000 case if we don't have a current-best.
5543 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5546 * flower/include/flower-proto.hh: remove outdated templates.
5548 * scm/page.scm: use annotate-spacing
5550 2006-02-15 Graham Percival <gpermus@gmail.com>
5552 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5554 * THANKS: moved Erlend Aasland to contributors.
5556 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5558 * config.hh.in: remove HAVE_PANGO_16
5560 * lily/tuplet-bracket.cc (calc_positions): multiply with
5561 staff-space for beam case. This fixes tuplets+beams on scaled
5564 * config.hh.in: remove all Kpathsea related defines.
5566 * lily/dot-column.cc (side_position): reach stem via dots->
5567 head->stem. Inspect all stems for dot collisions.
5569 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5572 * lily/bar-number-engraver.cc (process_music): document function
5575 * lily/score.cc (default_rendering): add pscore, not systems
5578 * lily/paper-book.cc (get_system_specs): separate generation of
5581 * flower/include/std-vector.hh: don't include config.hh
5583 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5585 * flower/include/std-vector.hh: Better wrapper compatibility with
5588 * flower/include/flower-proto.hh: Remove cheap forward declaration
5591 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5593 2006-02-14 Graham Percival <gpermus@gmail.com>
5595 * Documentation/user/invoking.itely: add warning about command line.
5597 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5599 * lily/include/lily-proto.hh: add Prob, rm Page.
5601 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5603 * VERSION: release 2.7.34
5605 * lily/relocate.cc (framework_relocation): show canary if
5606 GHOSTSCRIPT_VERSION undefined.
5608 * GNUmakefile.in: remove $(VERSION) symlink.
5610 * lily/relocate.cc (setup_paths): add +
5612 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5614 * Documentation/index.html.in: specify sizes for all big HTML pages.
5616 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5618 * config.hh.in: remove @FRAMEWORKDIR@
5620 * lily/system-start-text.cc (get_stencil): new file: separate out
5621 system-start-delimiter text support.
5623 * input/**ly: replace \context with \new where appropriate.
5627 * lily/slur-scoring.cc (get_base_attachments): use
5628 robust_relative_extent. This fixes problems with empty paper-columns.
5630 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5632 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5634 * scm/define-music-properties.scm (all-music-properties):
5635 create-new property.
5637 * lily/context-specced-music-iterator.cc (construct_children):
5638 inspect 'create-new property iso. magical $uniqueContextId context
5641 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5643 * lily/context-key-manager.cc (Module): new file. Encapsulate
5644 object key generation.
5646 * lily/include/context-key-manager.hh (Module): new file.
5648 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5650 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5653 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5655 (reloc_b): excise --enable-framework-dir
5657 * lily/relocate.cc (framework_relocation): use getenv
5658 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5660 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5662 * flower/include/std-string.hh:
5663 * flower/include/std-vector.hh: Finish std:: conversion; move
5664 flower extensions from std:: namespace. Update users.
5666 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5667 their expansion to vector<*>. Update users.
5669 2006-02-10 Graham Percival <gpermus@gmail.com>
5671 * Documentation/user/invoking.itely: add example to File structure.
5673 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5674 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5676 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5678 * ly/paper-defaults.ly: typo.
5680 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5681 set_parent() for parentheses. This will make it show up in bbox
5684 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5685 ly:grob-common* functions.
5687 * lily/grob-scheme.cc (LY_DEFINE):
5688 ly:grob-common-refpoint-of-array: new function
5689 ly:grob-common-refpoint: new function
5690 ly:grob-relative-coordinate: new function
5692 * lily/instrument-name-engraver.cc (process_music): use
5693 Text_interface::is_markup(). This fixes \markup on instrument names.
5695 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5698 * lily/slur.cc (print): idem.
5700 * lily/tie.cc: add line-thickness for ties.
5702 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5704 * scm/output-svg.scm: Document diversion from GNU coding standards
5705 as a workaround for a bug in Microsoft Internet Explorer.
5707 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5709 * lily/instrument-name-engraver.cc (process_music): use
5710 is_markup() iso. is_string()
5712 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5714 * lily/percent-repeat-engraver.cc (process_music): only look at
5715 main_part_ for % repeats.
5717 * lily/stem-tremolo.cc (get_beam_translation): new function.
5718 (calc_slope): new function.
5719 (height): don't use real slope.
5721 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5723 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5724 new connect-to-neighbor, control-points and staff-padding
5725 properties to make ligature brackets showing up again.
5727 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5729 * VERSION: release 2.7.33
5731 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5734 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5735 remove applyOutput example.
5736 (Objects connected to the input): document \tweak, \parenthesize
5738 * lily/relocate.cc (prefix_relocation): allow "current"
5739 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5740 changing VERSION in a lily tree less painful.
5742 * input/regression/parenthesize.ly: new file.
5744 * scm/output-lib.scm (parenthesize-element): new function.
5746 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5748 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5750 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5751 cause: accidentals are caused by note heads, not note events.
5753 2006-02-08 Graham Percival <gpermus@gmail.com>
5755 * darwin.patch: small patch from Erlend, thanks!
5757 * Documentation/user/basic-notation.itely: add stem-neutral example.
5759 * Documentation/user/putting.itely: clarifications.
5761 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5763 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5764 note, add more guidelines to what should go into NEWS.
5766 * input/sakura-sakura.ly: document how to override font.
5768 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5770 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5772 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5774 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5776 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5777 convertrules. Add explicit grouping, needed for python2.2.
5779 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5781 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5783 2006-02-07 Graham Percival <gpermus@gmail.com>
5785 * Documentation/user/global.itely: fix line-width in (text) docs.
5787 * Documentation/user/lilypond-book.itely: same.
5789 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5791 * VERSION (PACKAGE_NAME): release 2.7.32
5793 * Documentation/topdocs/NEWS.tely (Top): document new variable
5796 * flower/include/array.icc (Message): remove file.
5798 * flower/include/std-vector.hh: make sure vsize and VPOS are
5799 defined for binary_search_bounds().
5801 * flower/std-string.cc (std): add to_string(long unsigned).
5803 * configure.in (gui_b): excise std_string option.
5804 (gui_b): excise std_vector option.
5806 * flower/string.cc (Module): excise flower array & string
5808 * flower/include/std-string.hh: excise flower string.
5810 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5812 * python/convertrules.py (lilypond_version_re_str): require
5813 only numbers and dots in \version string.
5815 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5817 * lily/system-start-delimiter.cc (print): allow style = text too.
5819 * lily/system-start-delimiter-engraver.cc
5820 (acknowledge_system_start_text): new function, also add add to
5821 support of system-start-text (instrument names). This fixes
5822 instrument names on piano staves.
5824 * lily/instrument-name-engraver.cc: rewrite. Use
5825 system-start-delimiter approach. This save memory and cpu.
5827 * scm/define-grobs.scm (all-grob-descriptions): remove
5828 instrument-name from break-alignment.
5830 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5832 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5834 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5837 * configure.in (std_vector): On by default.
5839 * lily/include/font-metric.hh:
5840 * lily/include/tfm-reader.hh:
5841 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5844 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5846 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5848 * VERSION (PACKAGE_NAME): 2.7.31
5850 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5851 EPS edge at 0, but take minimum with left-overshoot. This fixes
5852 cut off system start delims.
5854 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5855 hack: add to axis group if not added yet. This fixes hara kiri'd
5858 * lily/hara-kiri-group-spanner.cc
5859 (force_hara_kiri_in_y_parent_callback): fix signatures.
5861 * lily/hairpin.cc (print): check next hairpin to see whether or
5862 not to be continuing.
5864 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5866 * Remove trailing whitespace from makefiles.
5868 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5871 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5873 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5875 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5877 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5879 * configure.in: Use it.
5881 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5883 * scm/music-functions.scm (pitch-of-note): new function.
5885 * ly/music-functions-init.ly: add \octave and \addquote
5887 * lily/parser.yy (music_function_chord_body): softcode \octave.
5888 (lilypond_header): softcode \addquote
5890 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5892 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5893 array.hh, parray.hh at all. Getting ready to flip the
5896 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5898 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5901 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5903 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5905 * flower/include/array.hh: typo.
5907 2006-02-02 Graham Percival <gpermus@gmail.com>
5909 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5911 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5913 * flower/include/pqueue.hh: Derive from std::vector.
5915 * flower/include/parray.hh: Conform to std::vector interface.
5918 2006-02-02 Graham Percival <gpermus@gmail.com>
5920 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5922 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5924 * flower/file-path.cc (is_file): remove if 0 section.
5926 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5927 selecting afii61352.
5929 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5931 * flower/include/std-vector.hh (boundary): Oops, reverse.
5933 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5934 remove superfluous `d'.
5936 * flower/include/std-vector.hh (boundary, top): Detach from class.
5937 Remove empty vector shell.
5939 * flower/include/array.hh (reverse, swap): Detach from class.
5942 * flower/include/std-vector.hh
5943 * flower/include/array.hh (concat): Globally change to insert ().
5945 * flower/include/std-vector.hh
5946 * flower/include/parray.hh
5947 * flower/include/array.hh (elem, elem_ref): Globally replace by
5950 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5952 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5954 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5955 anticipate on identifier substitutions.
5957 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5959 * flower/include/std-vector.hh (insert): Remove, replace by
5960 std::vector interface. Update callers.
5962 * flower/include/array.icc (insert): Change signature to
5963 match std::vector interface.
5965 * flower/include/array.icc (vector_sort): Bugfix.
5967 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5969 * lily/parser.yy (output_def_head_with_mode_switch): new
5970 production. Result: dashes and underscores may be used in the
5973 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5975 * python/convertrules.py (conv): oops. One slash too much.
5977 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5979 * flower/include/std-vector.hh (sort): Remove, replace by
5980 ::vector_sort. Update callers.
5982 * flower/include/std-vector.hh (slice): Remove. Update callers.
5985 * flower/test-std.cc (vector_sort): New test.
5987 2006-02-01 Graham Percival <gpermus@gmail.com>
5989 * Documentation/user/putting.itely: fixes from Erik.
5991 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5993 * flower/test-std.cc: Add simple unit test for vector migration.
5995 * stepmake/stepmake/test*: Unit test support.
5997 * flower/include/std-vector.hh (del): Remove. Use erase (),
6000 * flower/include/array.hh (begin, end): Add.
6003 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6005 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6006 std::string not String.
6008 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6011 * lily/prob.cc (Prob): copy type_ too.
6013 * lily/lily-guile.cc (mangle_cxx_identifier): new
6014 function. Class_bla::foo_bar_[px] ->
6015 ly:class-bla::foo-bar[?!]. Changes throughout
6017 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6019 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6021 * lily/beam.cc (calc_direction): take dir from visible stem in
6024 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6026 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6027 Fix -1, >=0 boundary checks for unsigned vsize.
6029 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6030 loop for unsigned vsize.
6032 * configure.in (--enable-std-vector): New option.
6033 (--enable-std-string): On by default.
6035 * flower/include/std-vector.hh: New file. Enable switch to
6036 std::vector, update client code.
6038 2006-01-30 Graham Percival <gpermus@gmail.com>
6040 * scm/document-translation.scm: clarify "this context is also
6041 known as". Thanks, Werner!
6043 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6045 * Documentation/user/invoking.itely: small fix from Don.
6047 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6049 * scm/lily.scm (define-scheme-options): rename option
6050 preview-include-book-title to book-title-preview
6051 (define-scheme-options): move force-eps-font-include (from paper
6052 block) to eps-font-include -d option.
6054 * VERSION (PATCH_LEVEL): release 2.7.30
6056 * input/bach-schenker.ly (staffPiano): new file.
6058 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6060 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6063 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6065 * ps/lilyponddefs.ps: remove start-system, stop-system,
6066 start-page fluff. This saves putting { } code on the stack, fixing
6067 stack overflows when including EPS files.
6069 2006-01-29 Graham Percival <gpermus@gmail.com>
6071 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6073 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6075 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6077 2006-01-28 Graham Percival <gpermus@gmail.com>
6079 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6081 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6083 * input/mutopia/claop.py: Update.
6085 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6087 * input/regression/completion-heads.ly (texidoc): fix.
6089 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6091 * lily/tie-formatting-problem.cc
6092 (set_ties_config_standard_directions): use abs iso fabs for ints.
6094 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6096 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6097 little less than noteheight, to prevent overlaps in chords.
6099 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6100 head, and fudge stem-attachment.
6102 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6104 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6106 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6108 * lily/main.cc (main): Debugging aid: catch exceptions.
6110 * flower/std-string.cc (to_string): Robustification. Fixes midi
6111 output with std::string.
6113 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6115 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6117 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6119 * Fix -DSTRING_UTILS_INLINED.
6121 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6123 * VERSION (PATCH_LEVEL): release 2.7.29
6125 * lily/relocate.cc (setup_paths): mingw uses std string too.
6127 * lily/*.cc: various fixes for substr(ARG).
6129 * lily/sustain-pedal.cc (print):
6131 * flower/file-name.cc (slashify): use std strings.
6133 * flower/string-convert.cc: remove publib.h
6135 * scm/define-markup-commands.scm (verbatim-file): new markup
6136 command \verbatim-file
6138 * Documentation/topdocs/NEWS.tely: fixup URLs
6140 * input/regression/alignment-vertical-manual-setting.ly (Module):
6143 * lily/align-interface.cc (align_elements_to_extents): overwrite
6144 translations with numbers in alignment-offsets from left bound
6146 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6147 (page-translate-systems): new function: take into account Y-offset.
6149 * Documentation/topdocs/NEWS.tely (Top): document new features.
6151 * input/regression/page-layout-manual-position.ly (Module): new
6154 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6156 * flower/file-path.cc (path::parse_path): Oops.
6158 * Finish std::string interface. For now, use std:: marker
6159 throughout for easy s/r.
6161 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6163 * Documentation/user/putting.itely (Score is a single musical
6165 (Score is a single musical expression): more typos.
6167 * scm/page.scm (annotate-space-left): thinko.
6168 (annotate-page): more thinkos.
6170 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6172 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6173 for different \score blocks separately.
6174 (post-process-pages): put write-page-layout into paper block.
6176 * lily/output-def.cc (get_parser): new file.
6178 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6181 * lily/include/output-def.hh (class Output_def): add parser_ member.
6183 * input/regression/page-layout-twopass.ly (Module): new file.
6185 * scm/lily.scm: remove cpp hack.
6187 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6189 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6191 * GNUmakefile.in (c-clean): New target.
6193 * flower/include/std-string.hh: String/std::string compatibility:
6194 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6197 * flower/rational.cc:
6198 * flower/include/rational.hh:
6201 * flower/include/offset.hh:
6203 * flower/interval.cc:
6204 * flower/include/interval.hh:
6206 * flower/string-convert.cc:
6207 * flower/include/string-convert.hh: Use std::string [interface].
6210 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6212 * Documentation/index.html.in: clean up.
6214 2006-01-25 Graham Percival <gpermus@gmail.com>
6216 * Documentation/user/putting.itely: another new untested doc section.
6218 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6220 * scm/layout-page-layout.scm (write-page-breaks): write
6221 \spacingTweaks #ALIST. Handle grace timing.
6223 * scm/: more imports.
6225 * scm/page.scm (make-page): add footer/header.
6226 (annotate-space-left): revise: only take page argument.
6227 (layout->page-init): new function.
6229 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6230 version of the system/spacing/linebreak hack writing to the output
6232 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6235 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6238 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6240 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6242 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6244 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6245 handling to page.scm
6247 * lily/prob-scheme.cc (LY_DEFINE): new file.
6248 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6250 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6253 * lily/music.cc (derived_mark): derive Music from Prob.
6255 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6257 * lily/prob.cc (Module): Implement Prob (Property Object), object
6258 with shared and r/w property alists.
6260 * lily/include/prob.hh (Module): new file. Declare Prob.
6262 * flower/string.cc: remove is_empty().
6264 * flower/include/string.hh (class String): remove String:: qualifier.
6266 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6267 substitute appropriate functions.
6269 * flower/include/string.hh (class String): remove to_str0 and
6270 is_empty(). S&R everywhere.
6272 2006-01-23 Graham Percival <gpermus@gmail.com>
6274 * Documentation/user/basic-notation.itely: add hairpin
6275 after-linebreak tweak to commonprop.
6277 * Documentation/user/putting.itely: added two new sections.
6279 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6281 * flower/international.cc:
6282 * flower/include/international.hh:
6284 * flower/getopt-long.cc:
6285 * flower/include/getopt-long.hh: Use std::string [interface].
6288 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6290 * stepmake/stepmake/executable-rules.make: Add dependency on
6293 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6295 * flower/file-path.cc:
6296 * flower/include/file-path.hh: Use std::string [interface].
6299 * flower/direction.cc:
6300 * flower/axis.cc: Unused. Remove.
6302 * configure.in (--enable-std-string): New option.
6304 * flower/std-string.cc:
6305 * flower/include/std-string.hh: New file.
6307 * flower/file-name.cc[STD_STRING]:
6308 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6310 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6312 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6314 * scm/define-markup-commands.scm (with-dimensions):
6315 with-dimensions markup command.
6317 * input/test/font-table.ly: use it.
6319 * lily/open-type-font.cc (glyph_list): new function.
6321 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6323 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6325 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6327 * ly/music-functions-init.ly (parallelMusic): new music function
6328 for parallel music entry.
6330 * scm/define-music-properties.scm (all-music-properties): new
6331 'void music property
6333 * scm/music-functions.scm (ly:music-message): make public, to be
6334 used in music function definitions
6336 * scm/lily-library.scm (collect-music-for-book): discard music
6337 when the 'void property is set.
6339 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6341 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6343 * mf/GNUmakefile: idem.
6345 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6347 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6349 * Documentation/user/notation-appendices.itely (The Feta font):
6352 * input/test/font-table.ly: new file. Generate font table within lily.
6354 * Documentation/user/notation-appendices.itely (The Feta font):
6355 use new font-table.ly file.
6357 * stepmake/stepmake/install-out-targets.make
6358 (local-install-outfiles): only create directory if
6359 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6361 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6363 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6365 * VERSION (PACKAGE_NAME): release 2.7.28
6367 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6368 the right font from a Mac dfont.
6369 (write-preamble): don't forget directory, only look at files.
6371 This fixes problems with TTF files in dfonts that don't match
6372 their PostScript names.
6374 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6375 PS name from TTF font.
6377 * input/regression/tie-manual.ly: document new feature.
6379 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6381 * VERSION (MY_PATCH_LEVEL): bump to .28
6383 * Documentation/user/basic-notation.itely (Ties): add tie examples
6386 * lily/tie-formatting-problem.cc (score_ties_configuration):
6387 symmetry penalties for outer ties.
6389 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6391 * lily/tie-formatting-problem.cc (generate_configuration)
6392 (set_manual_tie_configuration): skip non-pair manual
6393 tie-configuration, so you can set individual ties as
6395 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6397 * input/regression/tie-chord.ly: use generateTiePattern to
6400 * lily/tie-formatting-problem.cc (peak_around): new function.
6401 (score_configuration): use sliding criterion for staff line collisions.
6402 (score_configuration): idem for dot collisions.
6403 (generate_configuration): use separate stem_gap for gap to stem.
6405 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6406 separate penalty factors for x and y distance.
6407 (struct Tie_details): separate penalties for tip and center line collisions.
6409 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6411 * lily/tie-formatting-problem.cc (generate_configuration): make
6412 large ties avoid stafflines in the horizontal section.
6413 (score_configuration): use softcoded penalties
6414 (score_aptitude): idem.
6416 * lily/tie-helper.cc (from_grob): softcode tie details
6418 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6420 * lily/staff-symbol-referencer.cc (on_line): rename from
6423 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6425 * ly/music-functions-init.ly: remove duplicate tag.
6427 * lily/include/*.hh: GCC 4.1 fixes.
6429 006-01-16 Erlend Aasland <erlenda@gmail.com>
6431 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6433 * scm/define-music-types.scm: fix bug in desc. string
6434 for OverrideProperty
6436 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6438 * scripts/lilypond-book.py: bugfix
6440 * scm/define-music-types.scm: fix typos.
6442 2006-01-14 Graham Percival <gpermus@gmail.com>
6444 * Documentation/user/ basic-notation.itely, global.itely,
6445 advanced-notation.itely, instrument-notation.itely: small
6446 additions (bugs and commonly tweaked properties).
6448 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6450 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6451 detection of mingw build.
6452 (MINGW_BUILD): opps.
6454 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6456 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6459 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6461 * scm/music-functions.scm (skip->rest): add skip->rest
6463 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6465 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6468 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6469 config dirs. Aids debugging.
6470 (display_config): also display config files.
6472 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6474 * VERSION: release 2.7.27
6476 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6477 for determining bar size.
6479 * lily/staff-symbol.cc (print): place lines at distance line-positions
6481 * scm/define-grob-properties.scm (all-user-grob-properties): add
6484 * lily/staff-symbol.cc (height): new function.
6486 * input/regression/staff-line-positions.ly: new file.
6488 2006-01-06 Graham Percival <gpermus@gmail.com>
6490 * input/test/add-staccato.ly: remove reference to old file.
6492 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6494 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6495 lilypond binary too.
6497 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6499 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6501 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6503 * scripts/midi2ly.py: Bugfix: Declare datadir.
6505 * make/ly-rules.make:
6506 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6507 that seems to be gone). Fixes make web.
6509 * The grand 2005-2006 replace.
6511 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6513 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6515 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6516 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6517 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6518 like -dgs-font-load.
6520 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6521 remove absolute path to lilypond binary.
6523 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6525 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6527 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6529 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6531 * mf/GNUmakefile: remove broken dvips map symlink.
6533 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6536 * configure.in: Cosmetic fixes.
6538 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6540 * Documentation/user/music-glossary.tely (Pitch names): Added
6541 Spanish pitch names and durations, thanks to Ernesto Gancedo
6543 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6545 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6546 init. Fixes verbose printing of .scm files.
6548 * stepmake/aclocal.m4: add spaces before - options.
6550 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6552 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6553 of path search in local block variable.
6555 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6557 * configure.in (NCSB_DIR): --enable-ncsb-dir
6558 (LINK_GXX_STATICALLY): denko.
6560 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6562 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6563 use locate to find c059033l.pfb.
6565 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6567 * lily/tie-formatting-problem.cc
6568 (problem::generate_base_chord_configuration): Use my_round (was
6571 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6572 do not invoke mbrtowc.
6574 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6576 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6578 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6580 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6582 * Documentation/user/invoking.itely (svg): revise.
6584 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6586 * lily/lexer.ll: use sourcefilename iso. renameinput.
6588 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6590 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6591 <PostScriptName>.ttf instead of c059XXXttf.
6593 * lily/program-option.cc (LY_DEFINE): special support for
6594 --verbose, so it works before option init too.
6596 * mf/GNUmakefile (local-install): oops.
6598 * lily/lyric-hyphen.cc (print): oops.
6600 * buildscripts/pfx2ttf.fontforge: new file.
6602 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6603 ($(outdir)/%.ttf): new rule.
6605 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6608 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6611 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6613 * VERSION: release 2.7.26
6615 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6617 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6619 * lily/font-config.cc (init_fontconfig): verbosity.
6621 * THANKS: add Muziekacademie Lede.
6623 * scripts/musicxml2ly.py (print_voice_definitions): new function
6624 (print_score_setup): new function
6625 (convert): read part definition to output staves properly.
6627 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6630 * python/musicexp.py (Output_printer.__init__): use _ in data
6632 (Output_printer.unformatted_output): new function: no formatting,
6634 (Duration.get_length): remove isinstance() checks for
6635 Output_printer everywhere.
6637 * input/regression/lyrics-bar.ly (texidoc): add
6638 Separating_line_group_engraver.
6640 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6642 * lily/relocate.cc (framework_relocation): New function,
6643 factored from set_relocation ().
6644 (prefix_relocation): Rename from set_relocation ().
6645 (setup_paths): Use it.
6647 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6649 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6650 numbers. Patch by Erlend Aasland.
6652 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6654 * lily/font-config.cc (init_fontconfig): print warning if cache
6655 file is not existant.
6657 * lily/main.cc: don't use #ifdef but #if
6659 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6661 * lily/grob-property.cc (internal_set_property): don't abort on
6662 calculation-in-progress.
6664 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6666 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6667 connect-to-neighbor property not connect-to-other
6669 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6670 (LY_DEFINE): oops. don't forget protection.
6672 * flower/parse-afm.cc (Module): strip AFM handling completely.
6674 * lily/stencil-expression.cc: idem.
6676 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6678 * lily/function-documentation.cc (ly_add_function_documentation):
6679 use static member iso. Protected_scm
6681 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6683 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6685 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6687 * lily/relocate.cc (set_env_dir): New function.
6688 (set_relocation): Use it to fix setting PANGO_PREFIX.
6690 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6692 * input/regression/stem-direction-context.ly: remove rest.
6694 * lily/melody-engraver.cc (process_music): restart for bar lines.
6695 (acknowledge_slur): restart for slurs.
6697 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6699 * Documentation/user/invoking.itely: describe how to view SVG
6700 output using Inkscape which replace embedded fonts with OTF fonts.
6702 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6704 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6706 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6708 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6711 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6713 * VERSION (PACKAGE_NAME): release 2.7.25
6715 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6717 * input/regression/stem-direction-context.ly: new file.
6719 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6721 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6724 * ly/engraver-init.ly: add Melody_engraver
6726 * lily/beam.cc (calc_direction): use default-direction
6727 iso. get_default_direction()
6729 * scm/define-grob-properties.scm (all-user-grob-properties): add
6730 default-direction property.
6732 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6734 * lily/stem.cc (calc_default_direction): remove
6735 Stem::get_default_direction, use default-direction with callback
6738 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6740 * lily/melody-engraver.cc: new file. Acknowledge stems for
6741 interpolated stem directions.
6743 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6745 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6747 * lily/slur-configuration.cc (fit_factor): more robust check for
6748 point in curve X-extent.
6750 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6751 (outside_slur_callback): check for 'outside avoidance.
6753 * lily/slur-configuration.cc (score_extra_encompass): don't use
6754 bound->column() == avoid->column() for checking extents, as this
6755 doesn't work for accidentals.
6757 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6758 DynamicText hardcoding.
6760 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6761 crash if bound stem is NULL
6763 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6766 2005-12-22 Graham Percival <gpermus@gmail.com>
6768 * scm/define-markup-commands.scm: typo. @code{\raise}
6771 * darwin.patch: now used again, includes a
6772 required patch from fink.
6774 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6776 * po/TODO: mention gtranslator along with kbabel.
6777 * po/fi.po: update translations.
6779 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6781 * lily/relocate.cc (setup_paths): Bugfix.
6783 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6785 * lily/slur-configuration.cc (score_extra_encompass): don't use
6786 "avoid" choice for avoid-slur.
6788 * stepmake/bin/install.py (dest): don't create existing dir.
6790 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6792 * stepmake/bin/install.py: Remove file before copying.
6795 * stepmake/aclocal.m4: Do not substitute INSTALL.
6797 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6799 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6800 depend on link-tree.
6802 * lily/relocate.cc (setup_paths): only check path for non-absolute
6803 dir without directory part.
6805 * flower/file-name.cc (is_absolute): new method.
6806 (is_absolute): check root_ too.
6808 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6810 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6811 relocation code. Oops, don't comment out too much.
6813 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6816 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6819 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6821 * .cvsignore: Add install-sh.
6823 * autogen.sh (srcdir): Typo.
6825 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6827 * autogen.sh (srcdir): urg. Touch install-sh.
6829 * stepmake/bin/install-sh (Module): remove.
6831 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6833 * lily/include/relocate.hh: new file.
6835 * lily/relocate.cc: new file. Contain relocation logic.
6837 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6838 (main): read LILYPOND_VERBOSE as the first thing.
6840 * stepmake/aclocal.m4: remove INSTALL variable.
6842 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6843 separate target for making font symlinks.
6844 (documentation-dir): use $(if $(findstring )) for switching off
6847 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6848 something if DOCUMENTATION is no.
6850 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6852 * VERSION: release 2.7.24
6854 * lily/script-column-engraver.cc (stop_translation_timestep):
6855 delay adding to script-column.
6857 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6859 * python/convertrules.py (conv): rule for number-visibility
6861 * lily/slur-configuration.cc (score_extra_encompass): different
6862 distance measure for avoid and inside avoidance.
6863 (score_extra_encompass): use 1/(distance+eps) as penalty.
6865 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6866 encompass objects for generating slur curves.
6868 * lily/slur.cc: use details iso. slur-details property.
6870 * input/regression/slur-tuplet.ly: new file.
6872 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6874 * flower/include/offset.hh (class Offset): new operator /=
6876 * lily/tuplet-number.cc (print): new file, new interface.
6878 * scm/define-grob-properties.scm (all-user-grob-properties):
6879 remove number-visibility property.
6881 * lily/tuplet-bracket.cc (calc_control_points): new function
6882 (calc_connect_to_neighbors): new function.
6883 (print): remove text handling for tuplet numberdef.
6885 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6888 * lily/lily-guile.cc (robust_scm2booldrul): new function
6890 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6892 * lily/tuplet-bracket.cc (calc_position_and_height): use
6893 staff-padding to control whether tuplet brackets are over staves.
6895 * lily/grob.cc (suicide): clear dim_caches_.
6897 * lily/dimension-cache.cc (clear): new function.
6899 * lily/grob.cc (extent): swap order of min-extent and extent
6900 calculations. This fixes hara kiri staves.
6902 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6904 * lily/main.cc: Nitpick: relocation is not based on path, but on
6905 directory (location).
6907 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6909 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6911 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6913 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6915 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6917 * stepmake/stepmake/generic-vars.make (Module): idem.
6919 * stepmake/stepmake/executable-targets.make (default): use it.
6921 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6923 * make/GNUmakefile: don't install make rules.
6925 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6927 (prepend_env_path): more verbosity.
6929 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6931 * GNUmakefile.in: add dir argument for find command.
6933 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6934 fixes weird line numbers for point & click.
6936 * lily/source-file.cc (get_counts): init line/column/char counts.
6938 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6940 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6942 2005-12-16 Graham Percival <gpermus@gmail.com>
6944 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6945 minor fixes from Fredric. Thanks!
6947 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6949 * ly/music-functions-init.ly: add \bar and \clef music function
6951 * lily/lily-lexer.cc: idem.
6953 * lily/parser.yy (FIXME): remove BAR and CLEF.
6955 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6957 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6959 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6960 function arguments too
6962 * lily/main.cc (set_relocation): new function.
6964 * scripts/musicxml2ly.py (convert): add \version
6966 * lily/tie.cc: remove get_default_attachments()
6968 * VERSION (PACKAGE_NAME): release 2.7.23
6970 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6971 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6973 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6975 * lily/tie-formatting-problem.cc (score_ties): new function
6976 (get_variations): new function. Try flipping dirs for collisions.
6977 (generate_optimal_chord_configuration): new function. 1-opt search
6978 for better configuration.
6980 * lily/tie-configuration.cc: new file.
6982 * lily/tie.cc: junk Tie::get_configuration()
6984 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6985 (score_ties_configuration): new function.
6986 (generate_ties_configuration): new function.
6987 (generate_base_chord_configuration): new function.
6988 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6989 (set_manual_tie_configuration): Move body from tie-column-format.cc
6991 * input/regression/tie-dot.ly: new file.
6993 * lily/tie-formatting-problem.cc (score_configuration): score
6996 * lily/tie-helper.cc (get_transformed_bezier): new function
6998 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7000 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7001 -undefined suppress iso. -framework Python
7003 * scm/define-grobs.scm (all-grob-descriptions): set
7004 springs-and-rods (thanks Joe Neeman!)
7006 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7008 * input/no-notation/display-lily-tests.ly (test):
7009 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7010 changed from \tag #'(a b) to \tag #'a \tag #'b
7012 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7014 * Documentation/topdocs/NEWS.tely: strip out-www.
7016 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7018 * config.make.in (AR): add AR and RANLIB
7020 * flower/libc-extension.cc: include cassert
7022 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7025 2005-12-11 Graham Percival <gpermus@gmail.com>
7027 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7029 * stepmake/stepmake/python-modules-vars.make: define
7030 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7032 * THANKS: added Johannes Schindelin.
7034 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7036 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7038 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7039 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7041 * lily/parser.yy: reorganize file layout.
7043 * ly/music-functions-init.ly: add tweak music function.
7045 * lily/grob-info.cc (ultimate_music_cause): new function:
7046 recursively lookup causes.
7048 * lily/parser.yy (chord_body_element): allow music functions for
7049 post-events, allow music functions for chord elements.
7051 * lily/font-config-scheme.cc (display_fontset): add cast.
7053 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7054 #'(a b) -> \tag #'a \tag #'b rule.
7056 * python/musicexp.py (Output_printer.dump_version): new function
7058 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7060 * lily/parser.yy (FIXME): remove \tag
7061 (FIXME): remove tag_music() function.
7063 * lily/lily-lexer.cc: remove \tag
7065 * ly/music-functions-init.ly: define music-function "tag"
7067 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7069 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7071 * VERSION (PATCH_LEVEL): release 2.7.22
7073 * input/regression/lyric-hyphen-retain.ly: renew.
7075 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7078 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7079 iso. minimum-length property for rods.
7081 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7082 LyricSpace item to keep lyrics spaced apart.
7084 * ly/engraver-init.ly: remove Separating_line_group_engraver
7086 * Documentation/user/music-glossary.tely: do setfilename before
7089 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7091 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7092 See xref documentation, for example.
7094 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7096 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7097 pending_skip iso. ly_voice[-1]
7098 (main): add if __main__ for debugging.
7100 * python/musicxml.py (Accidental.__init__): new class.
7102 * scripts/musicxml2ly.py (progress): new function
7103 (musicxml_key_to_lily): don't barf on modeless keys.
7104 (create_skip_music): new function.
7105 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7106 (musicxml_note_to_lily_main_event): new function.
7108 * python/musicexp.py (Music.__init__): add comment field.
7109 (NestedMusic.append): new routine.
7110 (SequentialMusic.print_ly): print comment.
7111 (ArpeggioEvent.ly_expression): new class
7112 (BeamEvent.ly_expression): new class
7113 (NoteEvent.__init__): support for cautionary/forced accs.
7115 * lily/lookup.cc (slur): normal order for array loop.
7117 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7120 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7123 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7125 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7127 * scripts/lilypond-book.py: Introduce option
7128 --preserve-line-breaks, for usage with srcltx
7130 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7132 * scm/output-lib.scm (print-circled-text-callback): draw circle
7133 around text using make-circle-markup.
7135 * Documentation/user/*: strip out-www from file names.
7137 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7139 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7140 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7142 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7144 * Documentation/user/GNUmakefile: idem.
7146 * Documentation/user/macros.itexi: strip out-www
7148 * python/rational.py: python 2.3 compat.
7150 * VERSION (PATCH_LEVEL): release 2.7.21
7152 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7153 option formatting, lilypond style.
7155 * python/musicexp.py: grab from Ikebana: a library for composing
7156 ly music expressions.
7157 (Output_printer): class for advanced .ly printing.
7160 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7161 convert to pythonesque structure.
7163 * python/rational.py: PD rational number class.
7165 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7167 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7169 * lily/part-combine-iterator.cc: Minor bugfix
7171 * THANKS: Update bughunters
7173 2005-12-02 Werner Lemberg <wl@gnu.org>
7175 * mf/README: Document process for proper mf2pt1 conversion.
7177 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7180 * mf/feta-harmonica.mf: Removed. Unused.
7182 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7184 * scripts/lilypond-book.py (do_file): fix thinkos.
7186 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7188 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7189 ($(outdir)/parser.cc):
7190 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7192 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7194 * ly/titling-init.ly (tagline): it should be a space between
7195 "Music engraving by LilyPond" and the version number.
7197 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7199 * VERSION (PACKAGE_NAME): release 2.7.20
7201 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7203 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7205 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7207 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7209 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7211 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7213 * kpath-guile/: remove directory
7215 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7216 file. Encapsulate kpathsea using commandline tools.
7218 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7221 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7223 * Documentation/user/advanced-notation.itely (Setting automatic
7224 beam behavior): Correct a few typos. Thanks to David Bobroff.
7226 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7227 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7229 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7231 * scripts/*.py: gmane address for bugs.
7233 2005-11-28 Pal Benko <benkop@freestart.hu>
7235 * make/ly-rules.make: add -f switch to mv
7237 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7239 * lily/bar-line.cc: interpret it
7241 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7243 * configure.in (--disable-documentation): New switch.
7245 * GNUmakefile.in: Use it.
7247 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7249 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7251 * scripts/lilypond-book.py (do_file): search chunks for
7254 * GNUmakefile.in: add copy step in between so we can lose the
7255 out-www directories.
7257 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7259 * lily/pango-font.cc (pango_item_string_stencil): put
7260 geometry.width into glyph-string too.
7262 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7264 * scm/define-music-display-methods.scm (RevertProperty):
7265 (OverrideProperty): Use grob-property-path property, a list of
7266 symbols, instead of grob-property, which used to be a single
7268 (BassFigureEvent): a figure can be a plain number, not necessarily a
7271 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7273 * VERSION: release 2.7.19
7275 * lily/figured-bass-engraver.cc (process_music): check
7276 figuredBassCenterContinuations first.
7278 * scm/translation-functions.scm (format-bass-figure): make double
7281 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7284 * lily/system-start-delimiter-engraver.cc: move from
7285 Nested_system_start_delimiter_engraver, rename
7286 Nested_system_start_delimiter_engraver ->
7287 System_start_delimiter_engraver.
7289 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7290 bracket type from hierarchy.
7292 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7294 * lily/rest.cc (y_offset_callback): read staff-position.
7296 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7297 mark after-line-breaking-callback as internal.
7299 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7301 2005-11-25 Werner Lemberg <wl@gnu.org>
7303 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7305 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7307 * stepmake/bin/add-html-footer.py (do_file): add google
7309 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7310 staff if first_start_ is true.
7312 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7314 * scripts/midi2ly.py (split_track): add __repr__ members.
7315 (track_first_item): only return Item if not None. This fixes a
7316 problem when dumping a track that starts with an empty channel.
7318 * python/midi.c: doc module.
7320 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7322 * Documentation/user/global.itely (Creating MIDI files): Fix
7323 compilation problem.
7325 2005-11-22 Graham Percival <gpermus@gmail.com>
7327 * Documentation/user/basic-notation.itely: clarify dynamic
7330 * Documentation/user/advanced-notation.itely: add unicode
7331 escape control example, whatever that is. :)
7333 * Documentation/user/global.itely: added "removing dynamics
7336 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7338 * VERSION (PATCH_LEVEL): release 2.7.18
7340 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7341 System_start_delimiter_engraver by
7342 Nested_system_start_delimiter_engraver.
7344 * lily/nested-system-start-delimiter-engraver.cc (struct
7345 Bracket_nesting_node): new class.
7346 (struct Bracket_nesting_group): new class
7347 (struct Bracket_nesting_staff): new class.
7348 (process_music): create hierarchy of grobs. This allows separate
7349 tuning of different SSDs.
7351 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7352 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7354 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7356 * lily/side-position-interface.cc (aligned_side): multiply
7359 * lily/script-engraver.cc (make_script_from_event): allow setting
7362 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7364 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7366 * scm/define-grobs.scm (all-grob-descriptions): new grob
7367 NestedSystemStartDelimiter.
7369 * input/regression/system-start-heavy-bar.ly: new file.
7371 * lily/nested-system-start-delimiter-engraver.cc: new file.
7373 * lily/nested-system-start-delimiter.cc: new file.
7375 * input/regression/system-start-nesting.ly: new file.
7377 * scm/define-grobs.scm (all-grob-descriptions): use X side
7378 positioning for positioning braces for nested contexts.
7380 * lily/system-start-delimiter.cc (print): don't divide extent by
7382 (print): use style iso. glyph.
7383 (staff_bracket): translate glyph inside routine already.
7385 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7387 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7390 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7392 * scm/define-context-properties.scm
7393 (all-user-translation-properties): rename figuredBassFormatter
7394 from newFiguredBassFormatter.
7396 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7398 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7400 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7402 * lily/beam.cc (calc_beaming): new function.
7403 (calc_shorten): new function.
7405 * THANKS: add Edward Neeman.
7407 * input/regression/accidental-clef-change.ly: new file.
7409 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7411 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7413 * lily/clef-engraver.cc (inspect_clef_properties): reset
7414 localKeySignature for clef changes.
7416 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7418 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7419 add dummy definition that works in Linux and add information in
7420 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7422 * Documentation/user/changing-defaults.itely (Modifying context
7423 plug-ins): Add index for \with.
7425 * Documentation/user/music-glossary.tely (dal segno): Updated
7426 example to version >=2.6.
7428 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7430 * Documentation/user/instrument-notation.itely (Printing chord
7431 names): Reorder \chordmode and \repeat in one example.
7433 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7435 * VERSION: release 2.7.17
7437 * Documentation/topdocs/NEWS.tely (Top): add note about
7440 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7441 new function. Search region of 3 positions for best tie.
7442 (score_configuration): new function.
7443 (score_aptitude): new function.
7444 (generate_configuration): new function.
7445 (get_configuration): new function.
7446 (Tie_formatting_problem): new function
7448 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7450 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7452 * THANKS: add Eduardo Vieira & Ralph Little
7454 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7457 * lily/include/tie-formatting-problem.hh (class
7458 Tie_formatting_problem): add Tie_details to
7459 Tie_formatting_problem. Update calling conventions.
7461 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7464 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7466 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7468 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7469 scm/define-context-properties.scm: Maintenance bugfix: make
7470 ligature brackets work again by removing obsolete ligature
7471 primitive callback push/pop.
7473 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7474 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7477 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7479 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7480 used and do not call it a path.
7481 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7483 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7485 * lily/include/tie-formatting-problem.hh (class
7486 Tie_formatting_problem): new file.
7488 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7490 * Documentation/misc/ChangeLog-2.3: new file.
7492 * lily/audio-staff.cc (output): degarianize.
7494 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7496 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7497 Unset PYTHONOPTIMIZE. Fixes install if set.
7499 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7501 * python/convertrules.py (conv): add warning about drums.
7503 * make/stepmake.make: include toplevel-version.make after config.make.
7505 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7506 also allow python2.4
7508 * config.make.in (configure-srcdir): remove GXX GCC vars.
7510 * stepmake/aclocal.m4: don't do non-srcdir build with
7511 symlinks. Use inclusion, so the src directory name can be changed.
7513 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7515 * make/mutopia-vars.make:
7516 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7519 2005-11-13 Werner Lemberg <wl@gnu.org>
7521 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7522 but the affected path. This ensures that the (overlapping) outlines
7523 have the same direction, which is a necessary prerequisite for
7524 FontForge's algorithm to remove overlaps.
7527 * mf/feta-haak.mf: Formatting.
7528 (draw_bracket): Slightly modify outline to avoid an unnecessary
7530 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7531 them from the affected paths.
7533 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7535 * mf/README: remove xpm / accordion notes.
7537 * lily/tie-column-format.cc (set_chord_outline): add dots into
7538 skyline extents. This fixes tie formatting if the left head has dots.
7540 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7541 space inside the staff.
7542 (get_configuration): shift another position if necessary in case
7545 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7547 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7548 buildscript-dir iso. $(depth)/buildscripts.
7550 * tex/GNUmakefile (local-uninstall): remove
7551 music-drawing-routines.ps juggling.
7553 * stepmake/stepmake/install-targets.make (local-install-files):
7554 prepend src-dir to install targets.
7556 * lily/system-start-delimiter-engraver.cc
7557 (acknowledge_system_start_delimiter): use
7558 add_offset_callback(). This fixes translation of nested
7561 * lily/grob-closure.cc (add_offset_callback): only encaps in
7562 simple_closure if it's a procedure.
7564 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7567 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7568 remove-empty where pertinent.
7570 2005-11-12 Graham Percival <gpermus@gmail.com>
7572 * Documentation/user/instrument-notation.itely: added
7573 Cameron Horsburgh's multiple stanzas docs. Thanks!
7575 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7578 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7579 make picture in builddir, not srcdir.
7581 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7583 * VERSION: release 2.7.16
7585 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7588 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7590 * Documentation/user/examples.itely (Piano templates): Minor
7591 modification to the Piano centered lyrics example.
7593 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7595 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7598 * Documentation/user/point-and-click.itely: simplify p&c
7599 instruction: don't configure firefox. Put lilypond-invoke-editor
7600 in front of the browser.
7602 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7603 (run-browser): new function.
7605 * lily/parser.yy (Lily_lexer): recognize Book
7607 * lily/book.cc (clone): new function
7609 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7611 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7613 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7614 Maintenance bugfix: reduce number of font related warnings by
7615 updating naming conventions for glyph-name.
7617 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7619 * scm/define-grobs.scm (all-grob-descriptions): add
7620 rhythmic-grob-interface to TabNoteHead.
7622 * scm/layout-beam.scm (check-quant-callbacks): remove
7625 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7627 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7628 alignment of centered divisiones.
7630 * scm/scripts.scm (articulations): Maintenance bugfix:
7631 follow-into-staff -> quantize-position.
7633 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7634 plica head in porrectus deminutus.
7636 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7638 * make/lilypond.fedora.spec.in (Group): add %clean section.
7640 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7641 less then 1/5th of total length.
7642 (print): use gap too. Fixes tupletUp-single-bracket.ly
7644 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7645 events into EventChord. This fixes textspanners on mm rests. Fixes
7648 * lily/side-position-interface.cc (get_axis): read side-axis
7649 (set_axis): set side-axis.
7651 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7652 properties everywhere.
7654 * lily/spacing-spanner.cc (breakable_column_spacing): add
7655 average-spacing-wishes. Take maximum if not set.
7656 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7658 * scm/define-grobs.scm (all-grob-descriptions): add
7659 average-spacing-wishes.
7661 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7662 offset callbacks. This fixes alignment for Fingering objects.
7664 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7665 space for key - timesig combination.
7667 * input/regression/script-stem-tremolo.ly (Module): new file.
7669 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7672 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7673 Fixes: c-tremolo-script.ly.
7675 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7677 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7679 * scm/define-grobs.scm (all-grob-descriptions): remove
7680 self-X-offset. Fixes alignment of octavate-8.
7682 * scripts/lilypond-book.py (datadir): look in
7683 LILYPONDPREFIX/share/lilypond/current/
7685 * GNUmakefile.in: symlink current to <VERSION>.
7687 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7689 * lily/main.cc: eps listed as a backend.
7691 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7693 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7695 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7697 * lily/include/score.hh (class Score): remove texts_ member.
7699 * lily/beam.cc (set_stem_lengths): force direction callback.
7700 (print): read quantized-positions, so we can force
7701 Beam::set_stem_lengths to occur.
7702 (rest_collision_callback): use common X parent.
7704 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7706 * flower/file-path.cc (find): Bugfix: Return name of file found.
7708 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7709 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7710 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7712 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7714 * flower/offset.cc: idem.
7716 * mf/*.mf: update email address.
7718 * lily/font-config-scheme.cc: new file.
7720 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7722 * lily/*: cs.uu.nl -> xs4all.nl
7724 * VERSION (PATCH_LEVEL): release 2.7.15
7726 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7729 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7731 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7733 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7735 * lily/staff-performer.cc (process_music): add audio
7736 elements. This makes MIDI instrument changes work once again.
7738 * lily/main.cc (LY_DEFINE): add gmane address.
7740 * lily/beam.cc: remove calc_positions()
7742 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7743 original_ in private scope.
7744 (class Grob): drop pscore_ pointer, change to output_def pointer.
7745 (class Grob): cleanup class definition.
7747 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7749 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7751 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7752 absolute. Better diagnostics.
7754 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7755 This makes lilypond run from the build directory using argv0
7756 relocation (without any --prefix or LILYPONDPREFIX setting).
7758 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7760 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7762 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7763 with simple-closure.
7765 * lily/self-aligment-interface.cc (set_align_self): new function
7766 (set_center_parent): new function.
7768 * lily/side-position-interface.cc (set_axis): new function.
7770 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7773 * scm/define-grob-properties.scm (all-user-grob-properties):
7774 remove [XY]-offset-callbacks add [YX]-offset
7776 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7778 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7779 entry for time signatures after breathing signs. Bug report by
7782 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7784 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7785 not absolute, make it absolute using PATH.
7787 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7789 * python/midi.c (initmidi): Fix type for mingw.
7791 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7793 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7795 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7798 * stepmake/aclocal.m4: Support python cross compiling.
7800 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7803 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7805 * scm/output-lib.scm (chain-grob-member-functions): replace
7808 * lily/chained-callback.cc (Module): remove file.
7810 * lily/rest-collision.cc (force_shift_callback_rest): change to
7813 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7815 * lily/grob.cc (y_parent_positioning): remove axis argument from
7816 parent_positioning callbacks.
7817 (Grob): junk init code
7818 (get_offset): use generic property callbacks for
7819 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7820 (axis_parent_positioning): new function
7821 (axis_offset_symbol): new function
7822 (chain_offset_callback): new function
7823 (add_offset_callback): new function
7825 * lily/beam.cc (rest_collision_callback): change signature; this
7826 is now a chained callback.
7828 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7829 callback administration.
7831 * lily/simple-closure.cc: new file. Smob type that allows "grob
7834 (ly:make-simple-closure FUNC A B)
7836 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7839 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7842 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7844 * lily/rest.cc (polyphonic_offset_callback): remove.
7846 * lily/script-engraver.cc (try_music): remove bool* argument.
7848 * scm/script.scm (default-script-alist): set quantize-position
7851 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7853 * lily/side-position-interface.cc (aligned_side): move staff
7854 position quantization from
7855 Side_position_interface::quantised_position().
7856 (quantised_position): remove
7858 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7860 * input/regression/beam-quant-standard.ly: reindent, set
7861 debug-beam-quanting to #t.
7863 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7864 10000 if this is a "hard" concave beam.
7866 * lily/beam.cc (calc_least_squares_positions): change from
7867 calc_least_squares_dy
7868 (set_stem_lengths): this is now a chained callback.
7870 * lily/context-property.cc (execute_general_pushpop_property):
7871 bugfix override with procedure should have effect.
7873 * scm/define-grob-properties.scm (all-internal-grob-properties):
7874 remove position-callbacks.
7876 * scm/define-grobs.scm (all-grob-descriptions): use
7877 ly:make-callback-chain for positions property.
7879 * scm/layout-beam.scm (check-quant-callbacks): return list of
7882 * scm/lily.scm (type-p-name-alist): add callback-chain
7884 * lily/lily-guile.cc (type_check_assignment): type check failure
7885 is warning not message.
7887 * lily/grob-property.cc (try_callback): walk callback chain if
7890 * lily/chained-callback.cc: new file. new smob type.
7892 * lily/lily-guile.cc (procedure_arity): new function.
7894 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7896 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7898 2005-10-25 John Mandereau <john.mandereau@free.fr>
7900 * Documentation/user/instrument-notation.itely (Figured bass):
7901 describe new features
7903 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7905 * lily/beam.cc (calc_least_squares_dy): use property callback.
7907 * lily/beam-concave.cc (calc_concaveness): use property callback.
7909 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7911 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7915 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7917 * scm/layout-page-layout.scm (page-headfoot): annotate
7920 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7922 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7923 doesn't take y-space.
7925 * scm/paper.scm (paper-alist): fix A7 dimensions.
7927 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7929 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7930 src-wildcard, remove $(wildcard).
7932 * po/GNUmakefile (PO_FILES):
7933 * ps/GNUmakefile (PS_FILES):
7934 * tex/GNUmakefile (TEX_FILES):
7935 * cygwin/GNUmakefile (POSTINSTALLS):
7936 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7937 some wildcard calls.
7939 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7941 * THANKS: add Thomas Bushnell.
7943 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7945 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7946 (lilypond-main): Redirect to gui-main if 'gui is set.
7948 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7949 for alternative installations kludging s/share/lib/g
7952 * SConstruct (libdir_package_version): Define.
7954 * python/SConscript:
7955 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7958 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7960 * lily/main.cc: clarify --safe.
7962 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7964 * VERSION: release 2.7.14
7966 * Documentation/user/*.itely: remove minimumVerticalExtent.
7968 * scm/define-grobs.scm (all-grob-descriptions): remove
7969 RemoveEmptyVerticalGroup
7971 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7973 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7976 * python/convertrules.py (conv): add rules.
7978 * lily/grob.cc: remove is_empty()
7980 * lily/grob-property.cc: remove add_to_list_property().
7982 * scripts/convert-ly.py (datadir): add prefix switching hack to
7985 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7986 space-function tweak.
7988 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7990 * scm/define-grob-properties.scm (all-user-grob-properties):
7991 remove callback property.
7993 * lily/include/grob.hh (class Grob): remove property_callbacks_
7994 member. Properties of procedure type are assumed to be callbacks.
7996 * lily/ligature-engraver.cc (override_stencil_callback):
7997 rewrite. Use noteHeadLigaturePrimitive as source.
7999 * scm/define-grob-properties.scm (all-internal-grob-properties):
8000 remove ligature-primitive-callback
8002 * lily/include/dimension-cache.hh (class Dimension_cache): make
8003 class, with Grob as friend.
8005 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8006 has_extent_callback()
8008 * scm/translation-functions.scm (format-new-bass-figure): read
8009 figuredBassPlusDirection
8011 * scm/define-context-properties.scm
8012 (all-user-translation-properties): add figuredBassPlusDirection.
8014 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8016 * lily/align-interface.cc (set_ordered): new function.
8018 * lily/grob.cc (flush_extent_cache): rewrite.
8020 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8021 Interval pointer directly.
8023 * lily/main.cc (setup_paths): insert extra / .
8024 (setup_paths): junk cff entry.
8026 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8029 * lily/axis-group-engraver.cc (finalize): remove
8030 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8032 * lily/grob.cc (Grob): don't set extent from ctor.
8033 (extent): use property callbacks.
8035 * lily/axis-group-interface.cc: remove set_axes() function.
8037 * lily/grob-property.cc (del_property): new function.
8039 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8041 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8043 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8045 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8047 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8049 * mf/SConscript: Updates.
8051 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8053 * stepmake/stepmake/*:
8057 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8058 from any directory in build-dir. Cleanups.
8060 * make/srcdir.make.in: Remove.
8062 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8064 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8067 * lily/SConscript: Remove ttftools.
8069 * SConstruct: Resurrect.
8071 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8073 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8076 * lily/paper-book.cc (add_score_title): put Paper_score title into
8079 * scm/translation-functions.scm (format-new-bass-figure): also
8080 allow plus in combination with _
8082 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8084 * VERSION: 2.7.13 released.
8086 * lily/note-collision.cc (check_meshing_chords): don't wipe
8087 stencil, merely set transparent.
8089 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8090 (Top): document #'callbacks.
8091 (Top): document nested \override.
8093 * input/regression/figured-bass.ly: update for slash and pluses.
8095 * input/regression/figured-bass-continuation-forbid.ly (Module):
8098 * scm/translation-functions.scm (format-new-bass-figure): use
8099 slashed-digit if diminished is set.
8100 (format-new-bass-figure): add + if 'augmented is set.
8102 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8104 * input/test/piano-staff-distance.ly: remove file.
8106 * Documentation/user/advanced-notation.itely (Formatting cue
8107 notes): use length-fraction for making stems/beams smaller.
8109 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8112 * lily/new-figured-bass-engraver.cc: new property
8113 centerFiguredBassContinuations
8115 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8118 * lily/context-property.cc (execute_general_pushpop_property):
8121 * input/regression/override-nest.ly: new file.
8123 * python/convertrules.py (FatalConversionError.subber): conversion
8124 rule for #'callbacks
8126 * input/regression/override-nest.ly: new function.
8128 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8131 * lily/context-property.cc (lookup_nested_property): new function.
8132 (evict_from_alist): new function.
8133 (general_pushpop_property): new function.
8134 (execute_general_pushpop_property): rewrite. Support nested
8137 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8139 * lily/beam.cc: use length-fraction too.
8141 * scm/define-grob-properties.scm (all-user-grob-properties):
8142 remove property flag-width-function
8143 (all-user-grob-properties): remove space-function.
8145 * scm/layout-beam.scm: remove flag-width-function.
8147 * lily/beam.cc: remove flag-width-function
8149 * scm/layout-beam.scm: remove beam dir functions.
8151 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8153 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8154 for easier grace tweaks.
8156 * lily/beam.cc: remove dir-function.
8158 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8160 * lily/grob.cc: remove spacing-procedure.
8162 * lily/note-head.cc (calc_stem_attachment): new function.
8163 (internal_print): use callback to get glyph-name.
8165 * lily/grob-property.cc (get_interfaces): new function.
8167 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8169 * lily/stem.cc (calc_stem_end_position): new function.
8170 (calc_length): new function.
8171 document details for stem.
8172 remove Stem::get_direction()
8174 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8176 * lily/grob-property.cc (set_callback): new function.
8178 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8180 * lily/item-scheme.cc: new file.
8182 * lily/bar-line.cc (before_line_breaking): remove function.
8183 remove bar-size-procedure, break-glyph-function
8185 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8187 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8189 * lily/system-start-delimiter.cc (print): suicide from
8190 here. Remove after_line_breaking_callback.
8192 * lily/script-interface.cc (calc_direction): use callback for direction.
8194 * lily/side-position-interface.cc (aligned_side): don't use
8195 Side_position_interface::get_direction directly. Use callback.
8197 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8199 (get_print_stencil): rename from get_stencil: create stencil with
8200 transparency, color and cause.
8202 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8204 * python/convertrules.py (conv): insert temporary warning rule.
8206 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8208 * lily/grob-property.cc (try_callback): remove marker if applicable.
8210 * lily/grob.cc: elucidate doc about after/before-line-breaking
8212 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8214 * lily/stem.cc (height): idem.
8216 * lily/stem-tremolo.cc: idem.
8218 * lily/slur.cc (height): don't use get_uncached_stencil()
8220 * lily/rest.cc (y_offset_callback): use offset callback
8221 iso. after-line-breaking callback.
8223 * lily/grob.cc: change after/before-line-breaking-callback to
8224 after/before-line-breaking dummy properties.
8226 * lily/include/grob.hh: remove Grob_status.
8228 * scm/define-context-properties.scm
8229 (all-user-translation-properties): remove verticalAlignmentChildCallback
8231 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8232 (calc_direction): use callback
8233 (calc_positions): use callback.
8235 * lily/tie.cc (calc_direction): use callback. Only call parent
8236 positioning for more than one tie.
8238 * lily/tie-column.cc (calc_positioning_done): use callback
8240 * lily/slur-scoring.cc (calc_control_points): use callback
8242 * lily/slur.cc (calc_direction): use callback.
8244 * lily/note-collision.cc (force_shift_callback): remove.
8246 * lily/dot-column.cc (force_shift_callback): remove. Use
8247 other_axis_parent_positioning.
8249 * lily/grob.cc (other_axis_parent_positioning): new function.
8250 (same_axis_parent_positioning): new function
8252 * lily/align-interface.cc (alignment_callback): remove function.
8254 * lily/note-collision.cc (calc_positioning_done): use callback.
8256 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8257 (calc_direction): idem.
8258 remove print function.
8260 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8262 * lily/dot-column.cc (calc_positioning_done): use callback.
8264 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8266 * lily/beam.cc (calc_direction): use pseudo-property for beam
8268 (calc_positions): use callback
8270 * lily/align-interface.cc (calc_positioning_done): use
8271 callback. Fold fixed distance and normal alignment in one function.
8273 * lily/stem.cc (calc_stem_end_position): use callback.
8274 (calc_positioning_done): idem.
8275 (calc_direction): idem.
8276 (calc_stem_end_position): idem
8277 (calc_stem_info): idem.
8279 * lily/grob-property.cc (get_property_data): new function:
8280 (try_callback): new function.
8282 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8285 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8287 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8289 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8293 * lily/include/*.hh (Module): compile fixes.
8295 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8297 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8298 as an argument for char-syntax: use (char-syntax (or nil 0))
8299 instead of (char-syntax nil), thanks to Milan Zamazal.
8301 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8303 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8306 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8309 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8311 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8312 add class_name() method.
8314 * lily/music-scheme.cc: remove ly:music-name.
8316 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8318 * cygwin/postinstall-lilypond.sh: Remove cruft.
8320 * cygwin/postremove-lilypond.sh: Remove.
8322 * cygwin/GNUmakefile (default): Remove postremove rules.
8324 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8326 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8329 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8332 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8333 consider break index for broken spanner.
8335 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8336 characters from string before splitting.
8338 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8340 * scm/framework-ps.scm (output-preview-framework): use
8341 is-book-title to determine whether to chop off the booktitle.
8343 * lily/paper-book.cc (systems): init from book-title-properties
8344 (add_score_title): init score-title-properties.
8346 * ly/paper-defaults.ly: add {score,book}-title-properties.
8348 * scm/document-backend.scm (lookup-interface): error message if
8349 using unknown interface.
8351 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8354 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8356 (make_bracket): new function.
8358 * scm/lily.scm (define-scheme-options): add paper-size option.
8360 * ly/declarations-init.ly (laissezVibrer): get paper size from
8363 * scm/translation-functions.scm: use \fontsize for changing the
8366 * scm/define-grobs.scm (all-grob-descriptions): set
8367 between-length-limit to 1.0
8369 * lily/tie-helper.cc: add between_length_limit_ detail property.
8371 * mf/feta-bolletjes.mf: typos.
8373 * lily/note-head.cc (internal_print): don't shadow idx
8374 parameter. This fixes wrong attachment for do shape heads.
8376 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8378 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8380 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8382 * scm/layout-slur.scm: rename from slur.scm
8384 * scm/layout-page-layout.scm: rename from page-layout.scm
8386 * scm/layout-beam.scm: rename from beam.scm
8388 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8389 bass-figure-interface
8391 * lily/new-figured-bass-engraver.cc (process_music): add
8392 implicitBassFigures property.
8394 * scm/define-markup-commands.scm (pad-x): new markup.
8396 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8397 minimumVerticalExtent on FiguredBass context.
8399 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8400 case the continuation crosses a line break.
8402 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8404 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8405 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8406 absolute file name bug.
8408 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8410 * VERSION (PACKAGE_NAME): release 2.7.12
8412 * input/regression/figured-bass-continuation-center.ly: new file.
8414 * input/regression/beam-outside-beamlets.ly: new file.
8416 * lily/beam.cc (set_beaming): don't clip edges.
8417 (connect_beams): don't clip edges.
8419 * lily/beaming-info.cc (clip_edges): new function.
8421 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8423 * Documentation/user/instrument-notation.itely (Figured bass):
8424 demonstrate extenders, update seealso links.
8426 * scm/titling.scm (marked-up-headfoot): change tagline
8427 handling. tagline = ##f will blank the tagline as well.
8429 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8431 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8433 * lily/new-figured-bass-engraver.cc (struct
8434 New_figured_bass_engraver): add new_music_found_ member.
8436 * lily/lilypond-version.cc (Lilypond_version): deal with
8437 incorrectly formatted version strings.
8439 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8440 New_figured_bass_engraver by default.
8442 * lily/ttf.cc (print_trailer): only define glyph names when
8443 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8445 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8447 * lily/horizontal-bracket.cc (make_bracket): new function.
8449 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8450 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8451 BassFigureLine, BassFigureAlignment
8453 * lily/new-figured-bass-engraver.cc (process_music): new file.
8455 * lily/figured-bass-continuation.cc: new file.
8457 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8460 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8462 * scripts/lilypond-book.py: Bug fix, put the quote around the
8463 actual score for LaTeX documents.
8465 * scm/define-grobs.scm (all-grob-descriptions): Change
8466 collapse-height of the SystemStartBracket grob to 5.0,
8467 so the bracket disappears for single stave score lines (similarly
8468 to SystemStartBraces).
8470 * Documentation/user/advanced-notation.itely (Polymetric
8471 notation): Clarify the use of compressMusic.
8473 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8474 that the grace spacer note in other staves need the same duration
8475 and document the stroke-style property.
8477 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8479 * Documentation/user/global.itely (Vertical spacing): document
8480 alignment-extra-space and fixed-alignment-extra-space.
8482 * Documentation/topdocs/NEWS.tely (Top): add entry.
8484 * input/regression/alignment-vertical-spacing.ly: new file.
8486 * python/convertrules.py (conv): add rule.
8488 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8490 * lily/align-interface.cc (stretch_after_break): new
8491 function. Read fixed-alignment-extra-space property.
8492 (align_elements_to_extents): read alignment-extra-space property.
8494 * lily/lily-guile.cc (robust_scm2dir): new function.
8496 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8497 (annotate-space-left): new function. Annotate space left on page.
8498 (annotate-y-interval): new function.
8499 (paper-system-annotate-last): new function. Annotate bottom-space.
8501 * mf/feta-beugel.mf (y):
8503 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8505 * VERSION (PACKAGE_NAME): release 2.7.11
8507 * scm/lily-library.scm (interval-translate): new function
8508 (interval-center): new function.
8510 * scm/page-layout.scm (paper-system-annotate): new function. Add
8511 arrows for dimensions.
8513 * scm/stencil.scm (dimension-arrows): new function.
8515 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8517 * input/regression/page-spacing.ly: add annotatespacing
8519 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8520 (LY_DEFINE): new function ly:paper-system-set-property!
8522 * Documentation/user/global.itely (Paper size): explain how to add
8525 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8526 correspond to GS's definition.
8528 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8530 (print): only connect to next bracket if the next one is alive.
8531 (print): set padding to 0.0 if the bound is a breakable
8532 column. This makes tupletFullLength brackets reach up to the staff
8533 line if it doesn't connect to the next line.
8535 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8537 * lily/bar-number-engraver.cc: correct docs.
8539 * scm/output-lib.scm (first-bar-number-invisible): rename from
8540 default-bar-number-visibility
8542 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8544 * scm/define-music-properties.scm (all-music-properties): remove
8547 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8549 * po/fi.po: refresh.
8551 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8553 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8555 (disappear): bugfix.
8557 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8559 * lily/include/paper-system.hh (class Paper_system): remove
8560 staff_extents_ member.
8562 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8564 * lily/include/paper-system.hh (class Paper_system): remove
8565 number_ variable. Remove is_title_. Remove break_before_penalty_
8567 * lily/paper-book.cc (systems): use 'number property iso. number_
8570 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8571 remove ly:paper-system-number.
8573 * scm/lily-library.scm (paper-system-title?): new function.
8575 * lily/book.cc (process): bugfix: flip ?: cases.
8577 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8580 * ly/music-functions-init.ly: add outputProperty music function.
8582 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8584 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8586 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8588 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8590 * lily/paper-system.cc (internal_get_property): new function.
8592 * Documentation/user/global.itely (Vertical spacing): refer to
8595 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8598 * input/regression/page-spacing.ly: new file.
8600 * input/regression/page-top-space.ly: new file.
8602 * lily/spacing-spanner.cc: cmath -> math.h
8604 * lily/paper-system.cc (read_left_bound): new function. Read
8605 line-break-system-details from left bound to determine extents.
8607 * Documentation/user/programming-interface.itely (Using LilyPond
8608 syntax inside Scheme): change applyxxx -> applyXxx.
8610 * ly/music-functions-init.ly: add outputProperty music function.
8612 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8614 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8616 * python/convertrules.py (conv): rule
8618 * ly/music-functions-init.ly: applyxxx -> applyXxx
8620 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8623 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8625 * flower/include/real.hh: include <math.h> iso. <cmath>
8627 * flower/include/offset.hh: include real.hh
8629 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8631 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8632 fix example, now that 'interfaces is no longer directly available.
8634 * lily/book.cc (process): don't crash if paper == NULL.
8638 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8640 * scm/define-music-types.scm (music-descriptions): set length and
8641 start-callback for QuoteMusic
8643 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8645 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8646 arguments. Fixes compilation error with gcc 3.3.
8648 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8650 * VERSION: release 2.7.10
8652 * stepmake/stepmake/python-module-rules.make
8653 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8655 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8658 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8660 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8661 -Werror. Otherwise GCC barfs over various optimizations.
8663 * scm/define-grob-properties.scm (all-internal-grob-properties):
8664 add note-head property
8666 * Documentation/user/instrument-notation.itely (Laissez vibrer
8669 * input/regression/laissez-vibrer-ties.ly: new file.
8671 * lily/laissez-vibrer-engraver.cc: new file.
8673 * lily/include/tie-column-format.hh: new file.
8675 * lily/tie-column-format.cc: new file.
8677 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8679 * lily/laissez-vibrer-tie.cc: new file.
8681 * lily/include/laissez-vibrer-tie.hh: new file.
8683 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8685 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8687 * scm/define-grobs.scm (all-grob-descriptions): add
8688 LaissezVibrerTie, LaissezVibrerTieColumn
8690 * lily/tie-column.cc (set_tie_config_directions): new function
8691 (final_shape_adjustment): new function.
8692 (shift_small_ties): new function.
8694 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8696 * lily/include/tie.hh (struct Tie_details): add x_gap_
8697 (struct Tie_configuration): add head_position_
8699 * lily/tie-column.cc (set_chord_outline): new function.
8701 * mf/cmr.enc.in: remove file.
8703 2005-09-11 Graham Percival <gpermus@gmail.com>
8705 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8707 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8709 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8710 reduce aliasing effects.
8712 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8715 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8717 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8719 * flower/include/real.hh: std::fabs too.
8721 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8723 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8725 * lily, flower: Include C++ iso C headers. Import namespace std
8728 * lily/side-position-interface.cc:
8730 * lily/note-head.cc:
8731 * lily/include/includable-lexer.hh:
8732 * flower/include/string-data.icc: Remove using std::*.
8734 * lily, flower: Include C++ iso C headers. Import namespace std
8737 * lily/side-position-interface.cc:
8739 * lily/note-head.cc:
8740 * lily/include/includable-lexer.hh:
8741 * flower/include/string-data.icc: Remove using std::*.
8743 * Documentation/user/instrument-notation.itely (Entering lyrics):
8744 Multiple latin-1->utf-8 conversion fix.
8746 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8748 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8750 * lily/tie.cc (get_configuration): also avoid dots for non-space
8753 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8755 * Documentation/user/instrument-notation.itely: Bugfix.
8757 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8759 * tex/GNUmakefile: don't install texinfo.tex
8761 * tex/ : cleanup: remove unused files.
8763 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8765 * flower/include/real.hh: using std::{isnan,isinf}
8767 * VERSION (PATCH_LEVEL): release 2.7.9
8769 2005-09-05 Graham Percival <gpermus@gmail.com>
8771 * Documentation/user/ instrument-notation.itely,
8772 advanced-notation.itely: minor tweaks.
8774 * input/test/script-chart.ly: add item padding.
8776 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8778 * flower/offset.cc: use math.h iso. <cmath>
8780 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8783 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8784 (widen-left-stencil-edges): new function. Fix alignment problems
8785 with LaTeX includegraphics.
8787 * lily/text-interface.cc (interpret_markup): use abort().
8789 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8791 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8793 * lily/tie.cc (get_configuration): update bezier shape as we
8795 (get_configuration): don't move large ties if we're outside of the
8798 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8800 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8802 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8804 * .cvsignore: Add auto-generated configure files and then some.
8806 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8808 * scm/define-grobs.scm (DynamicLineSpanner): Add
8809 X-extent-callback. Fixes hairpin-slur collision.
8811 2005-08-31 Graham Percival <gpermus@gmail.com>
8813 * Documentation/user/advanced-notation.itely,
8814 basic-notation.itely: minor changes.
8816 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8818 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8819 \linebreak between each .eps file if \betweenLilyPondSystem is
8822 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8823 music): Document the \linebreak
8825 * Documentation/user/lilypond-book.itely,
8826 input/tutorial/lbook-latex-test.tex,
8827 Documentation/user/examples.itely: Remove \usepackage{graphics}
8829 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8831 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8833 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8836 * scripts/lilypond-book.py (PREAMBLE_LY): define
8837 inside-lilypond-book
8838 (modify_preamble): new function. Insert \RequirePackage{graphics}
8839 when no {graphics found in preamble.
8841 2005-08030 Graham Percival <gpermus@gmail.com>
8843 * Documentation/user/basic-notation.itely, global.itely,
8844 tutorial.itely: misc small changes.
8846 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8848 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8851 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8853 * lily/tie-column.cc (new_directions): put Tie down on center
8856 * lily/script-interface.cc (before_line_breaking): use
8857 Grob::programming_error
8859 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8861 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8864 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8866 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8868 2005-08-29 Werner Lemberg <wl@gnu.org>
8870 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8871 the `*.scale.pfa' files to avoid warnings.
8873 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8875 * lily/tempo-performer.cc (process_music): idem.
8877 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8879 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8881 * Documentation/user/advanced-notation.itely (Text markup): not a
8884 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8886 * lily/staff-performer.cc (initialize): add tempo/name to
8889 2005-08-26 Graham Percival <gpermus@gmail.com>
8891 * Documentation/user/advanced.itely: add text-only example.
8893 * Documentation/user/invoking.itely: add index entries for
8896 * Documentation/user/ tutorial.itely, basic-notation.itely:
8897 small fixes suggested by Steve D. Thanks!
8899 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8901 * input/regression/markup-bidi-pango.ly: new file.
8903 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8904 standard. Remove #ifdef. Remove memleak.
8905 (text_stencil): use text_dir to decide how to composite items.
8906 (text_stencil): determine uniform text direction for the entire
8909 * scripts/lilypond-book.py (output_name): remove
8910 latex_filter_cmd. Non-portable to non-Unix systems.
8911 (get_latex_textwidth): use File.write and os.unlink() instead.
8913 * THANKS: add Vicente & Trevor.
8915 * lily/grob.cc (discretionary_processing): look up origin for
8916 programming_error too.
8918 * input/regression/tie-broken.ly: new file.
8920 * lily/tie-column.cc (set_chord_outlines): set outline for line
8923 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8925 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8926 unscaled transform, just translate stencils.
8928 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8931 * scm/define-markup-commands.scm (wordwrap-string): use
8933 (wordwrap-stencils): idem.
8936 (wordwrap-stencils): translate last line to right for
8937 text-direction = LEFT.
8939 * scm/define-grob-properties.scm (all-user-grob-properties): add
8942 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8944 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8945 when copying a Lily_parser object.
8947 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8949 * scm/define-markup-commands.scm (null): add null markup.
8951 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8953 * lily/item.cc: Add documentation of center-invisible
8955 2005-08-24 Graham Percival <gpermus@gmail.com>
8957 * Documentation/user/advanced-notation.itely: add info about
8960 * Documentation/user/programming-interface.itely: fix example
8961 involving raised text.
8963 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8965 * lily/beam.cc (print): fix X start/end points of isolated
8968 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8970 * lily/multi-measure-rest.cc (set_text_rods): new function.
8972 * lily/vertical-align-engraver.cc (process_music): call
8973 Align_interface::set_axis(). This forces #'elements to be ordered,
8974 preventing random vertical reordering of staves.
8976 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8977 add avoid-slur property.
8979 * Documentation/user/basic-notation.itely (Measure repeats): add
8980 countPercentRepeats example.
8982 * Documentation/user/advanced-notation.itely (Other text markup
8983 issues): remove remark about normal-font. We have \normal-text
8985 * input/regression/tie-chord.ly: add note about remaining bugs.
8987 * lily/tie.cc (print): try Tie_column::set_directions () if
8988 control-points not yet defined.
8990 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8992 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8993 extent. This fixes braces falling out of the EPS bbox.
8995 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8998 2005-08-23 Graham Percival <gpermus@gmail.com>
9000 * {various} : change #up->#UP and #down->#DOWN.
9002 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9004 * Documentation/user/advanced-notation.itely: clarify
9005 what objects handles text on a multimeasure rest.
9007 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9009 * VERSION (PATCH_LEVEL): release 2.7.7
9011 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9013 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9015 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9017 * input/regression/*.ly: formatting clean-up. Default layout
9018 before music expression.
9020 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9021 romanze28-2 example.
9023 * scm/ps-to-png.scm: remove dir-re function.
9024 (make-ps-images): generate page names, instead of globbing them.
9025 This brings down LilyPond memory usage for make web by a factor
9028 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9029 don't use glob. With 3000 files, globbing
9030 Documentation/user/out-www/ can take too much time.
9032 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9034 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9036 * input/regression/tie-manual.ly: new file
9038 * input/regression/tie-chord.ly: update.
9040 * flower/include/interval.hh (struct Interval_t):
9042 * lily/tie.cc (distance): new function
9043 (height): new function.
9044 (init): new function
9045 (Tie_details): new struct.
9047 * lily/skyline.cc (skyline_height): new function.
9049 * lily/tie-column.cc (set_chord_outlines): new function.
9050 (new_directions): read tie-configuration
9052 * lily/skyline.cc: fix ASCII art.
9054 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9056 * python/convertrules.py (string_or_scheme): Fix spelling error
9058 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9060 * lily/tie-column.cc (set_directions): set directions only once.
9061 (add_configuration): new function.
9063 * lily/tie.cc (set_control_points): new function
9065 * lily/tie-column.cc (new_directions): new function.
9067 * ly/music-functions-init.ly: set 'pitch property
9068 iso. trill-pitch. This makes \relative work with \pitchedTrill
9070 * lily/tie.cc (get_configuration): new function. Don't generate
9071 control points, rather, generate configuration.
9072 remove head-pair property.
9074 * lily/include/tie.hh (struct Tie_configuration): new struct.
9076 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9078 * Documentation/topdocs/NEWS.tely: clarify.
9080 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9082 * lily/tie.cc: remove minimum-length
9084 * scm/define-grob-properties.scm (all-user-grob-properties):
9085 remove staffline-clearance, y-offset
9087 * input/regression/tie-dots.ly (Module): remove.
9089 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9090 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9092 * input/regression/tie-single.ly: new file.
9094 2005-08-21 Graham Percival <gpermus@gmail.com>
9096 * ly/bagpipe.ly: fix compile problem.
9098 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9100 * lily/midi-item.cc (name): new method.
9102 * lily/staff-performer.cc (acknowledge_audio_element): use
9103 signature of baseclass.
9105 * lily/engraver-group.cc (do_announces): move recursion call out
9108 * lily/drum-note-performer.cc (class Drum_note_performer): use
9109 process_music everywhere.
9111 * ly/performer-init.ly: add default children everywhere.
9113 * lily/paper-book.cc (output): call paper-book-write-midis
9114 directly: always write MIDI, even if no \layout {} block.
9116 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9118 * VERSION (PACKAGE_NAME): release 2.7.6
9120 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9121 about not being able to handle repeat.
9123 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9125 * Documentation/user/examples.itely (Piano templates):
9126 * lily/include/performer-group.hh: Remove last traces of
9127 Performer_group_performer. Fixes make web.
9129 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9131 * Documentation/user/examples.itely (Piano templates): change
9132 Engraver_group_engraver -> Engraver_group
9134 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9135 scm_stand_in_procs is not weak_any.
9137 * lily/volta-bracket.cc (print): don't use strcmp().
9139 * lily/volta-engraver.cc (process_music): use
9140 Text_interface::is_markup() for setting the 'text property of the
9143 * input/mutopia/claop.py (accents): update syntax to 2.6
9145 * scm/define-context-properties.scm
9146 (all-user-translation-properties): add countPercentRepeats.
9148 * Documentation/user/basic-notation.itely (Measure repeats): add
9149 isolated percent example.
9151 2005-08-18 Graham Percival <gpermus@gmail.com>
9153 * input/ {various}: change direction #1, #-1 to
9154 #up/#down or \fooUp, \fooDown.
9156 * Documentation/user/music-glossary.tely: #-1 to #down.
9158 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9159 to #up, #-1 to #down.
9161 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9163 * lily/include/engraver-group.hh: rename.
9165 * lily/include/performer-group.hh: rename.
9167 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9169 * input/test/script-abbreviations.ly: Removed some old LaTeX
9172 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9174 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9175 Remove functions. Remove if 1: constructs, reindent.
9177 * scripts/convert-ly.py (add_version): Add functions from
9180 * scm/script.scm (default-script-alist):
9181 s/priority/script-priority. Fixes script stacking. Backportme.
9182 (Fermata): Very low priority.
9184 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9186 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9188 * input/regression/slur-script.ly: remove padding tweaks. Add
9191 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9192 time sigs and related stuff.
9194 * scm/define-grob-properties.scm (all-user-grob-properties): add