1 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * input/regression/tie-semi-single.ly:
4 use position/direction from single tie case too. This fixes overridesand defaults for single laissez-vibrer and repeat ties.
6 * buildscripts/git-update-changelog.py:
7 only prepend header if one patch was successful.
9 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
11 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
12 stuff. Remove cygwin packaging stuff.
14 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
16 * python/convertrules.py (conv): Part 2 fixes vertical extent.
18 * input/test/vertical-extent.ly: Fix and elaborate on vertical
19 staff extent. (Thanks Mats)
21 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
23 * buildscripts/git-update-changelog.py (main): write .msg and cvs
26 * scm/define-grobs.scm:
27 separation-items have width
33 * Documentation/topdocs/NEWS.tely:
34 * lily/separating-group-spanner.cc:
35 * lily/slur-engraver.cc:
36 * lily/slur-scoring.cc:
37 * scm/define-grobs.scm:
38 * input/regression/slur-clef.ly:
39 add breakableSeparationItem to extra encompass for slurs. This
40 fixes slur/clef slur/key collisions etc. Should fix #49
42 * lily/include/slur-scoring.hh:
43 * lily/slur-scoring.cc:
44 Use X of separation item as slur start. Fixes #120
46 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
48 * buildscripts/git-update-changelog.py (changelog_body): don't
51 * lily/grob.cc: add avoid-slur
53 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
57 move server/emacsclient to elisp/
59 * buildscripts/git-update-changelog.py (Commit.note_del_file):
62 * elisp/server.el.patch:
65 * elisp/emacsclient.patch:
68 * buildscripts/git-update-changelog.py:
75 * buildscripts/git-update-changelog.py:
76 script to update ChangeLog with Git messages.
78 * lily/beam-engraver.cc:
79 * input/regression/rest-pitched-beam.ly:
80 don't set callback if staff-position set. Fixes #126.
82 * lily/bar-number-engraver.cc:
84 * lily/fingering-engraver.cc:
85 * lily/grob-property.cc:
87 * lily/include/grob.hh:
88 * lily/include/lily-guile-macros.hh:
89 * lily/mark-engraver.cc:
90 * lily/melody-engraver.cc:
91 * lily/script-column.cc:
92 * lily/tie-formatting-problem.cc:
94 internal_get_property_data() using ly_symbol2scm()
96 * stepmake/stepmake/generic-targets.make:
97 create .gitignore in outdir.
102 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
104 * input/test/vertical-extent.ly:
105 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
107 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
109 * stepmake/bin/add-html-footer.py (compose): remove setgcos
111 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
113 * GNUmakefile.in (install-help2man): install-help2man target.
115 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
117 * SConstruct (configure): Do not check for /bin/sh.
119 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
121 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
124 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
126 * input/regression/fret-boards.ly: new file.
128 * po/de.po: new po courtesy translation team.
130 * scripts/lilypond-book.py (get_option_parser): add newline to doc
133 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
135 * ly/gregorian-init.ly (neumeDemoLayout): update
136 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
138 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
139 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
141 2006-10-27 Erlend Aasland <erlenda@gmail.com>
143 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
144 Yet another build fix.
146 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
148 * SConstruct (lilypondprefix): use sorted() for list_sort()
151 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
153 * flower/SConscript: Unit test rules.
155 * flower/test-std.cc: Compile fix.
157 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
159 * python/midi.c (pymidi_parse_track): warning fixes.
161 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
162 include dot-column.hh
164 2006-10-26 Graham Percival <gpermus@gmail.com>
166 * Documentation/user/{basic-, global}: minor changes from mailist.
168 2006-10-26 Erlend Aasland <erlenda@gmail.com>
170 * scm/define-grobs.scm: trivial beautification
172 * lily/tie-performer.cc: no need to #include "pqueue.hh"
174 * lily/source-file.cc: put multibyte var inside #if clause
176 * scm/define-grob-interfaces.scm:
177 * scm/define-grob-properties.scm:
178 Build fix (string-fret-finger-combinations)
180 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
183 * Documentation/user/lilypond-book.itely: Build fix.
185 2006-10-26 Joe Neeman <joeneeman@gmail.com>
187 * lily/system.cc (get_paper_system):
188 * lily/paper-book.cc (systems):
189 move most of the backwards compatibility stuff into
192 * Documentation/topdocs/NEWS.tely: add 2 entries for the
195 * Documentation/user/page.itely: remove time-scaled-music
196 bug for the Page_turn_engraver
198 * lily/paper-book.cc (set_system_penalty): backwards
199 compatibility (breakbefore) for the old page breaker
201 2006-10-25 Graham Percival <gpermus@gmail.com>
203 * Diocumentation/user/instrument-notation.itely: added more
204 info about stanzas; thanks Geoff!
206 * Documentation/user/ {basic, advanced}: small fixes from
209 * THANKS: add some bug reporters.
211 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
213 * scm/define-context-properties.scm (all-user-translation-properties):
214 noteToFretFunction: Add.
216 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
217 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
219 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
221 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
224 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
225 Remove bashism in delete.
227 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
229 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
231 * scm/translation-functions.scm (determine-frets-mf): flatten let*
233 * scm/define-context-properties.scm
234 (all-user-translation-properties): add maximumFretStretch property.
236 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
238 * lily/source-file.cc (get_counts): use multibyte variable.
240 * scm/translation-functions.scm (determine-frets-mf): new
241 function: compute fret numbers.
243 * scm/output-lib.scm (string-frets->description) new function.
244 (fret-board::calc-stencil): new function
246 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
248 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
250 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
252 * lily/tab-note-heads-engraver.cc: cleanups.
254 * lily/fretboard-engraver.cc: new file
256 * ly/engraver-init.ly: add FretBoards context
258 2006-10-24 Joe Neeman <joeneeman@gmail.com>
260 * lily/grob.cc (pure_relative_y_coordinate)
261 (pure_height): use the new call_pure_function stuff
263 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
266 * lily/side-position-interface.cc (pure_y_aligned_side): add an
269 * lily/simple-closure.cc (ly_eval_simple_closure): make
270 simple-closure evaluatable from scheme
271 (evaluate_with_simple_closure): make simple-closures pure-
274 * lily/slur.cc (pure_outside_slur_callback): new function
276 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
277 fits in with previous changes that made the page forces much
280 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
281 and pure-Y-extent into this new function.
282 (pure-conversions-alist): add outside-slur-callback
284 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
286 * Documentation/user/advanced-notation.itely (Instrument names):
287 Remove obsolete bug workaround for instrument names on piano
290 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
292 * Documentation/user/lilypond-book.itely (Integrating DocBook and
293 music): patch by Bertalan Fodor for docbook.
295 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
296 of $(LILYPOND). Prevents lilypond run for .txt files.
298 * INSTALL.txt: gitness.
300 * .cvsignore: update to force gitness.
302 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
304 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
305 detect suicide in nested tuplets.
307 2006-10-23 Werner Lemberg <wl@gnu.org>
309 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
310 typo in argument to FT_Get_X11_Font_Format.
312 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
314 * stepmake/stepmake/po-vars.make: more gitness.
316 * flower/polynomial.cc (check_sol): no empty if bodies.
318 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
320 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
322 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
324 * Documentation/user/examples.itely (Transcription of mensural
325 music): Added more comments in .ly source. Suggest to remove
326 Forbid_line_break_engraver to allow line breaking at all bars.
328 * Documentation/user/instrument-notation.itely (Ancient
329 articulations): Updated @refbugs regarding episem.
331 * Documentation/user/instrument-notation.itely (Gregorian square
332 neumes ligatures): Added \augmentum dots. Updated @refbugs
333 regarding \augmentum.
335 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
337 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
340 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
343 * ly/gregorian-init.ly: Added \augmentum macro.
345 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
347 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
349 * lily/pango-font.cc (pango_item_string_stencil): use
350 FT_Get_X11_Font_Format()
352 2006-10-22 John Mandereau <john.mandereau@free.fr>
354 * po/fr.po: update translation.
356 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
358 * VERSION (PATCH_LEVEL): bump version
360 * input/regression/horizontal-bracket-break.ly: new file.
362 * scm/define-grobs.scm (all-grob-descriptions): calc
365 * lily/horizontal-bracket.cc (make_bracket): support
366 connect-to-neighbor. Fix #118
368 * VERSION: release 2.9.26-2
370 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
372 * VERSION (PACKAGE_NAME): release 2.9.26
374 * buildscripts/output-distance.py (test_basic_compare): add
376 (FileLink.multi_img_cell): new function, glob multi-page png
379 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
381 * po/lilypond.pot: update.
383 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
385 * Documentation/user/global.itely (File structure): remove
388 * lily/parser.yy (FIXME): remove ADDQUOTE
390 * Documentation/user/global.itely (Extracting fragments of
391 notation): new node, about clip systems.
393 * Documentation/user/lilypond-book.itely (Many quotes of a large
394 score): ref to clip systems.
396 * Documentation/user/instrument-notation.itely (Entering lyrics):
397 add note about lyric ties and required font.
399 * lily/open-type-font.cc (glyph_list): format errors.
401 * Documentation/user/programming-interface.itely (Scheme
402 procedures as properties): more doco on simple-closure and scheme
404 (Input variables and Scheme): use lilypond[verbatim], document
407 * Documentation/user/page.itely (Displaying spacing): use \book
408 explicitly, so arrows show .
409 (Line breaking): add note about Forbid_line_break_engraver
411 * Documentation/user/tweaks.itely (Common tweaks): also set length
412 to prevent tie squeezing.
413 (Default files): use @var{}
415 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
416 (Generating LilyPond files): add FOMUS.
418 2006-10-20 Joe Neeman <joeneeman@gmail.com>
420 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
421 Y-offset for TextScript and Script
423 * lily/text-engraver.cc (make_item):
424 * lily/script-engraver.cc (make_script_from_event):
425 remove call to Side_position_interface::set_axis since all scripts
426 now have this set by default
429 * lily/prob.cc: use variables
431 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
433 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
434 at typography, rather analyse stream event duration.
436 * Documentation/user/page.itely (Page formatting): set a6 paper
437 for system separator example.
439 * lily/arpeggio.cc (Module): idem.
441 * lily/accidental-placement.cc: add script-priority property.
443 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
445 * lily/ttf.cc (print_trailer): if all else fails: use
446 glyphIndexXXXX as glyph name. Fixes #117.
448 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
449 entry if cmap contains glyph.
450 (get_index_to_charcode_map): remove from Pango_font class, use
451 global filename -> font mapping.
452 (get_glyph_index_name): new function.
453 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
456 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
458 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
461 * scm/define-grob-properties.scm (all-user-grob-properties):
462 remove outdated doc. Fixes #116
464 * lily/completion-note-heads-engraver.cc (process_music): always
465 clone input events; otherwise we may overwrite input 'duration
466 property. Fixes #115.
468 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
471 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
474 * VERSION (PATCH_LEVEL): bump version.
476 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
478 * lily/engraver.cc (internal_make_grob): use variables.
480 * flower/string-convert.cc (dec2double): clean-up warnings.
482 * configure.in (CXXFLAGS): add -Werror.
484 * VERSION (PACKAGE_NAME): release 2.9.25
486 2006-10-18 Joe Neeman <joeneeman@gmail.com>
488 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
489 line even if we precede a forced break.
491 * lily/optimal-page-breaking.cc (try_page_spacing): square line
492 forces too. Make page-spacing weight default to 10 because the
493 changes to vertical springs decreased the page force/line force
494 proportions. Also, take the average of line force and page force
495 instead of just the sum.
497 * lily/constrained-breaking.cc (initialize): make the stiffness
498 of the vertical springs depend on the height of the system. This
499 prevents pages with only a few large systems from getting huge
502 * Documentation/user/page.itely (Page formatting): document the
503 change in default page-spacing-weight
505 * lily/include/constrained-breaking.hh: initialise bottom_padding_
507 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
509 * input/typography-demo.ly (melody): remove superfluous slur.
511 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
512 add piano-pedal-script-interface
514 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
516 * scripts/lilypond-book.py: DocBook support.
518 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
520 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
522 (stop_translation_timestep): set bound to currentMusicalColumn if
523 not set yet. Fixes #102
525 * lily/piano-pedal-bracket.cc: formatting.
527 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
529 * lily/piano-pedal-align-engraver.cc: new class
530 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
533 2006-10-18 Heikki Junes <hjunes@gmail.com>
535 * po/fi.po: Update Finnish translation (before the next release).
537 2006-10-17 Joe Neeman <joeneeman@gmail.com>
539 * lily/system.cc (get_paper_system): reinstate the backwards-
540 compatible page breaking for the old page breaker.
542 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
544 * lily/recording-group-engraver.cc: removed
546 * lily/context.cc, lily/translator-group.cc: Don't touch
547 Context::implementation_ if it's null
549 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
551 * scm/paper.scm: only use left-margin if defined.
553 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
555 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
557 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
558 strokeFingerOrientations
560 * lily/script-column.cc (row_before_line_breaking): also handle
561 accidentals and arpeggios in horizontal script stacking.
563 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
566 * input/regression/script-stack-horizontal.ly: trim.
568 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
570 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
573 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
574 'text if string argument.
576 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
578 * scm/define-context-properties.scm
579 (all-user-translation-properties): change to strokeFingerOrientations
581 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
583 * lily/parser.yy: remove debug output
585 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
587 * ly/paper-defaults.ly: set left/right margin.
589 * scm/paper.scm (set-paper-dimensions): use left-margin and
590 right-margin for computing linewidth.
592 * Documentation/topdocs/NEWS.tely (Top): idem.
594 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
597 * scm/define-markup-commands.scm (tied-lyric): increase negative
598 space: space syllables tighter.
600 * VERSION (PATCH_LEVEL): bump version.
602 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
605 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
607 * COPYING: further clarification
609 * VERSION: release 2.9.24
611 * input/regression/script-stack-horizontal.ly: add version.
613 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
615 * input/regression/lyric-tie.ly (texidoc): use different words.
617 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
619 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
621 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
622 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
624 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
626 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
628 * Doxyfile: remove file.
630 * scm/define-grob-interfaces.scm (string-finger-interface): add
631 string-finger-interface
633 * lily/general-scheme.cc (LY_DEFINE): move
634 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
636 * Documentation/topdocs/NEWS.tely (Top): add note for
637 string-finger feature.
639 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
642 * scm/output-lib.scm (string-finger::calc-text): read 'digit
645 * input/regression/script-stack-horizontal.ly: new file.
647 * ly/engraver-init.ly: add Script_row_engraver.
649 * lily/script-column.cc (order_grobs): refactor: separate axis
651 (row_before_line_breaking): new function.
653 * lily/script-row-engraver.cc (Script_row_engraver): new file.
655 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
657 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
659 * Documentation/user/instrument-notation.itely: Cleanup: Remove
660 annoying skip notes from mensural ligature example. Update
661 @refbugs for ligatures and mensural ligatures.
663 * lily/coherent-ligature-engraver.cc,
664 lily/include/coherent-ligature-engraver.hh,
665 lily/mensural-ligature-engraver.cc,
666 lily/vaticana-ligature-engraver.cc: Revise code for item
667 reparentizing. There should now be less programming_error
670 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
672 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
673 Maintenance bugfix: Don't create empty Stencil (), but empty box
674 instead. This fix should eliminate some programming_error
677 * ly/engraver-init.ly (MensuralStaff): Set default accidental
680 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
681 \layout block _before_ score.
683 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
685 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
687 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
689 2006-10-13 Erlend Aasland <erlenda@gmail.com>
691 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
693 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
695 * VERSION (PATCH_LEVEL): bump version.
697 * COPYING: clarify exception note.
699 * lily/main.cc: remove remark about "COPYING".
701 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
702 system-count starts at 0 for each clip-region. Change name to
703 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
704 layout block, per score.
706 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
708 * lily/input-smob.cc: add equal_p for Input
710 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
713 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
715 * lily/prob.cc: Add equal_p predicate for Prob
717 * lily/translator.cc: small cleanup
719 * scm/document-music.cc: use data from translator listener
720 registration to generate documentation for event classes
722 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
724 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
726 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
728 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
730 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
732 * Documentation/topdocs/INSTALL.texi: Thinko.
734 * .cvsignore: Update.
736 * lexer-gcc-3.1.sh: Remove.
738 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
739 Update anonymous cvs access. Remove comment about gcc 3.0.4.
741 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
743 * VERSION: release 2.9.23
745 * lily/paper-column-engraver.cc (stop_translation_timestep): also
748 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
750 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
752 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
754 * input/regression/clip-systems.ly (Notes): new file.
756 * scm/lily.scm (define-scheme-options): add clip-systems option.
758 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
760 (dump-stencil-as-EPS): move bbox calculation from previous
762 (output-framework): use -dclip-systems
764 * scm/lily-library.scm (filtered-map): new function
766 * scm/framework-ps.scm (clip-system-EPS): new function.
767 (clip-system-EPSes): new function.
769 * lily/paper-column.cc: add rhythmic-location to interface
771 * scm/define-grob-properties.scm (all-user-grob-properties): add
772 rhythmic-location property.
774 * scm/clip-region.scm: new file: rhythmic-location data type and
775 system-clipped-x-extent function.
777 * ly/init.ly: use (scm clip-region)
779 * lily/paper-column-engraver.cc (stop_translation_timestep): set
780 rhythmic-location for paper column grobs.
782 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
784 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
786 * ly/engraver-init.ly: Remove obsolete comment on
789 * Documentation/user/instrument-notation.itely: Tune Ancient
790 Articulations figure, such that the episem actually shows.
792 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
793 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
795 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
798 2006-10-12 Graham Percival <gpermus@gmail.com>
800 * Documentation/user/ {some}: minor edits that were lost somehow.
802 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
804 * VERSION (PACKAGE_NAME): bump version.
806 * input/regression/lyric-tie.ly (texidoc): new file.
808 * Documentation/topdocs/NEWS.tely (Top): add new feature.
810 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
812 * scm/define-markup-commands.scm (tied-lyric): new function: split
813 string along ~ and reattach with U+203F (tie character) and
816 * scm/output-lib.scm (lyric-text::calc-text): new function.
818 * lily/lyric-engraver.cc (process_music): don't set 'text.
820 * scm/output-lib.scm (string-finger::calc-text): new function
821 (lyric-text::print): new function.
823 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
824 generic for fingering & string number. Use for string-finger.
826 * scm/define-music-types.scm (music-descriptions): add
829 * lily/fingering-engraver.cc (listen_string_finger): new function
831 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
833 * scm/define-context-properties.scm
834 (all-user-translation-properties): add stringFingerOrientations
836 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
838 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
839 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
841 * lily/dots.cc: Added style property for dots.
843 * mf/parmesan-heads.mf: Fix typo in comment.
845 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
846 adding longa head to feta font and removing obsolete default
849 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
851 * scm/output-lib.scm (fingering::calc-text): use origin
852 event-property, not music-property.
854 * lily/lilypond.rc.in: spell my name correctly.
856 2006-10-10 Joe Neeman <joeneeman@gmail.com>
858 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
859 already have a non-empty extent. Fixes estimation for Hara-kiri
862 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
864 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
867 * lily/ligature-engraver.cc: Remove unused #include.
869 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
870 Bugfix: remove method check_for_prefix_loss(Item *) from global
871 namespace to avoid namespace pollution.
873 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
875 * VERSION: release 2.9.22
877 * ly/generate-documentation.ly: update option name.
879 * lily/dynamic-text-spanner.cc (print): revert fix.
881 * scm/define-grob-interfaces.scm
882 (trill-pitch-accidental-interface):
883 add trill-pitch-accidental-interface
885 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
886 dereference if it's really a duration.
888 * lily/figured-bass-engraver.cc (process_music): clear spanner if
889 useBassFigureExtenders is not set.
890 (listen_bass_figure): record as new event if
891 useBassFigureExtenders not set. Fixes #103.
893 * scm/stencil.scm (circle-stencil): don't center stencil argument,
894 instead: move circle. Fixes #107.
896 * scm/define-grobs.scm (all-grob-descriptions): set
897 allow-loose-spacing for PaperColumn and
898 NonMusicalPaperColumn. Kludge for #110.
900 * lily/spaceable-grob.cc: add allow-loose-spacing property.
902 * lily/spacing-determine-loose-columns.cc (is_loose_column):
903 allow-loose-spacing property.
905 * scm/define-markup-commands.scm (postscript): gsave & grestore
906 around embedded PS. Do setlinewidth too. Fixes #109.
908 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
910 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
911 code. This patch fixes ligature brackets that were not at all
914 2006-10-08 Graham Percival <gpermus@gmail.com>
916 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
918 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
920 * scm/define-context-properties.scm: clarified docs (bug 91).
922 * Documentation/user/basic-notation.itely: document volta brackets
923 not aligning (bug 63).
925 * Documentation/user/ global.itely invoking.itely: ignore or
926 add warnings about texstr.
928 2006-10-08 John Mandereau <john.mandereau@free.fr>
930 * po/fr.po: update translation.
932 * po/: update msgids.
934 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
936 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
938 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
940 * Documentation/user/page.itely (Two-pass vertical spacing): add
941 documentation for two-pass spacing technique.
943 2006-10-06 Graham Percival <gpermus@gmail.com>
945 * Documentation/user/convert-ly.txt: new file; new
946 storage place for this file (moved from bugs/ CVS).
948 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
950 * lily/note-head.cc: Fixed programming_error message.
952 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
954 * scm/define-grobs.scm (pure-conversion): move pure-callback
957 * scm/script.scm (default-script-alist): set avoid-slur for turn,
958 marcato, stopped, thumb.
960 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
962 * lily/completion-note-heads-engraver.cc (process_music): don't
963 skimp on memory usage.
965 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
968 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
969 parenthesis item. This fixes premature Y-extent triggering. Fixes
972 * VERSION (PATCH_LEVEL): bump version.
974 2006-10-04 Graham Percival <gpermus@gmail.com>
976 * Documentation/user/advanced-notation.itely: added
977 info about instrument names for piano or other contexts,
980 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
982 * mf/feta-bolletjes.mf (solfa_quarter_width): use
983 solfa_base_notewidth as unit for non-DO-notes too.
985 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
987 * VERSION: release 2.9.21
989 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
992 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
994 * python/lilylib.py (progress): Minor fix.
996 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
998 * lily/note-name-engraver.cc: doc engraver.
1000 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1002 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1004 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1007 * lily/stem-engraver.cc (make_stem): don't set duration-log
1009 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1010 write snippet-names binary.
1012 * python/lilylib.py (system): use os.system for mingw32
1014 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1017 * scm/backend-library.scm: update email address.
1019 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1022 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1025 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1026 handle dot creation separately.
1028 * lily/tab-note-heads-engraver.cc (process_music): idem.
1030 * lily/drum-note-engraver.cc (process_music): idem.
1032 * lily/note-heads-engraver.cc (process_music): idem.
1034 * lily/rest-engraver.cc: don't set duration-log.
1036 * scm/output-lib.scm (string-number::calc-text): new function.
1037 (note-head::calc-duration-log): new function.
1039 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1041 * scm/output-lib.scm (fingering::calc-text): new function.
1043 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1045 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1046 and include-eps-font -> include-eps-fonts
1048 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1050 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1052 * lily/timing-translator.cc: list properties.
1053 (start_translation_timestep): update internalBarNumber too.
1055 * scm/define-context-properties.scm
1056 (all-user-translation-properties): add internalBarNumber.
1058 * input/regression/spacing-no-note.ly: new file.
1060 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1062 * lily/book.cc: #include cleanup.
1064 * lily/include/lily-guile-macros.hh: add assert to
1065 scm_or_str2symbol(SCM).
1067 * VERSION (PATCH_LEVEL): bump version.
1069 * lily/spacing-spanner.cc (musical_column_spacing): handle
1070 musical->nonmusical spacing case, where there is no spacing
1071 wish. Fixes issue #61.
1073 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1074 (pango_item_string_stencil): use logical rect horizontally (to
1075 preserve spaces), ink_rect vertically (for time signatures).
1077 * lily/font-metric.cc (word_stencil): new interface function
1079 * input/regression/utf-8-mixed-text.ly: new file.
1081 * lily/percent-repeat-engraver.cc (listen_percent): remove
1084 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1085 non-dynamic scripts. Fixes #30.
1087 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1089 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1091 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1092 SCM_UNDEFINED for non-existent data.
1094 * lily/side-position-interface.cc (general_side_position): allow
1095 optional current_offset argument for chaining, so combinations of side-position
1096 and outside slur callback don't add up. Fixes issue #92.
1098 * lily/pango-font.cc (pango_item_string_stencil): use
1099 logical_rect. This prevents spaces after words from disappearing,
1102 * VERSION: release 2.9.20
1104 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1106 * scm/define-grob-properties.scm (all-user-grob-properties):
1107 mention stencil as user settable.
1109 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1111 * Documentation/user/page.itely (Page formatting):
1112 document auto-first-page-number
1114 * lily/page-breaking.cc (find_chunks_and_breaks):
1115 * lily/paper-score.cc (calc_breaking): Follow changes to the
1116 Constrained_breaking interface
1118 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1119 here backwards, as an optimisation
1120 (initialize): new function; move most of the code in resize () here
1121 (combine_demerits): cache ragged_right_
1122 (Constrained_breaking): constructor now takes the Paper_score
1124 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1126 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1127 avoid parser lookahead for 0-ary functions.
1129 * lily/translator.cc: Extract event classes from
1130 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1132 2006-10-02 Heikki Junes <hjunes@gmail.com>
1134 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1137 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1139 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1140 function. Call the page breaking function selected in the
1141 `page-breaking' \paper variable, then the post processing function
1142 chosen using the `page-post-process' \paper variable.
1143 (line-height): new function. Return the height of a system.
1144 (line-minimum-position-on-page): new function. Return the position
1145 of a system on page (using the previous line position), only
1146 considering between system padding.
1147 (stretchable-line?): new function. Says whether a line can be
1148 stretched (ie. is not a title nor a single staff system).
1149 (page-maximum-space-left): new function. Computes space left on a
1150 page, when all systems are separated by their padding.
1152 * lily/page-breaking.cc (breaking::make_pages): Move page post
1153 processing function call to page breaking wrapper (common to all
1156 * lily/paper-book.cc (book::pages): call the page breaking
1157 wrapper, instead of the page breaker directly
1159 * ly/paper-defaults.ly: Add \paper variables for page breaking
1160 wrapper and page post processing function. Make
1161 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1162 `system-maximum-stretch-procedure' variable for holding a function
1163 computing the maximum stretch a system allows.
1165 * scm/layout-page-dump.scm (write-page-breaks): computes the
1166 stretch to apply to systems on a page to minimize left
1167 space. Dump this stretch length.
1169 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1170 the system-stretch property of the tweak data to stretch the
1172 (includePageLayoutFile): Void function which includes the
1173 generated page-layout file if it exists and if the page layout
1174 dumping is not asked.
1175 (scoreTweak): if the score tweak named by the argument exists,
1178 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1180 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1181 handle correctly the case where there are multiple \noPageBreaks
1184 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1186 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1188 * abc2ly.py fix so that entering " -- " will translate to a -- in
1189 the lilypond instead of a " - - "
1191 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1193 * lily/align-interface.cc: fix typo
1195 * lily/dynamic-text-spanner.cc (print): Add a special case for
1196 trill spanner right sides.
1198 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1200 * lily/align-interface.cc (get_extents_aligned_translates): add
1201 support for padding variable.
1203 * lily/break-align-interface.cc (self_align_callback): oops: use
1204 loop variable in guard.
1206 * input/regression/repeat-percent-grace.ly: new file.
1208 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1209 remember first currentCommandColumn of a grace run. Fixes issue 70.
1211 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1212 move class definition to CC file.
1214 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1216 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1217 measure-long repeats.
1219 * flower/include/international.hh: include stdarg.h
1221 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1223 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1224 put_systems_on_pages to return an empty result, we need to assign
1225 demerits properly in that case.
1226 (put_systems_on_pages): Make the number of pages depend on the
1227 evenness of page_number. Add auto-first-page-number.
1228 (calc_subproblem): ensure that the page-number is even for the
1229 left-hand page. Warn if the first page-turn doesn't fit onto the
1230 first (right-hand) page.
1232 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1233 (min_page_count): make this publicly accessible
1234 (min_page_count): fix a bug when there are forced page breaks that
1235 was introduced when I made this loop run backwards
1236 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1237 replace space_systems_on_min_pages with these two. The logic in
1238 space_systems_on_min_pages was getting too convoluted and is better
1239 contained in page-turn-page-breaking.
1241 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1243 (breakable_column): typo
1245 * lily/source-file.cc (get_line): fix off-by-one error
1246 and clean up some of the logic
1248 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1250 * lily/page-breaking.cc (make_pages): honour the first-page-number
1253 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1255 * VERSION (PACKAGE_NAME): bump version.
1257 2006-09-26 Pal Benko <benko.pal@gmail.com>
1259 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1260 (the latter is the same as petrucci-f which is kept for compatibility)
1262 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1264 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1266 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1268 * lily/global-context.cc (run_iterator_on_me): break out of loop
1269 if moment doesn't increase.
1271 * scm/define-grob-properties.scm (all-user-grob-properties): add
1274 * lily/accidental.cc (after_line_breaking): read forced property.
1276 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1279 * input/regression/accidental-forced-tie.ly: new file.
1281 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1283 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1285 * lily/figured-bass-engraver.cc: only listen to rest events if
1286 ignoreFiguredBassRest is not set.
1288 * scm/define-context-properties.scm
1289 (all-user-translation-properties): add ignoreFiguredBassRest property
1291 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1293 * lily/paper-book.cc (get_system_specs):
1294 (set_system_penalty): fix breakbefore.
1295 We used to set a penalty on the system after the break, now we
1296 set a permission on the system before the break
1298 * lily/grob-property.cc: add scm debugging hooks into
1299 property modification
1301 * lily/context-property.cc:
1303 rename make_foo_from_properties to internal_make_foo and
1304 move it from context-property.cc to a member function of
1307 * lily/include/lily-guile-macros.hh:
1308 overload ly_symbol2scm macro so that there is no more need
1311 * lily/volta-repeat-iterator.cc:
1312 * lily/tweak-engraver.cc:
1313 * lily/tuplet-bracket.cc:
1314 * lily/span-bar-engraver.cc:
1315 * lily/script-engraver.cc:
1316 * lily/prob-scheme.cc:
1317 * lily/pointer-group-interface.cc:
1319 * lily/grob-scheme.cc:
1320 * lily/grob-property.cc:
1322 * lily/context-property.cc:
1323 * lily/break-substitution.cc:
1324 * lily/break-align-engraver.cc:
1325 * lily/axis-group-interface.cc:
1326 * lily/align-interface.cc:
1327 remove calls to internal_FOO
1329 * lily/system-start-delimiter-engraver.cc:
1330 * lily/parenthesis-engraver.cc:
1331 * lily/accidental-engraver.cc:
1332 remove calls to make_foo_from_properties
1334 2006-09-23 Graham Percival <gpermus@gmail.com>
1336 * Documentation/user/programming-iterfaces.itely: fix
1337 def-music-function -> define-music... leftover.
1339 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1341 * lily/page-spacing.cc (min_page_count): by running the loop
1342 backwards, we can calculate ragged_last properly.
1344 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1346 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1347 printfirst-page-number -> print-first-page-number
1349 * python/convertrules.py: corresponding rule.
1351 * Documentation/user/page.itely (Page formatting): Document the
1352 default values of all page layout parameters.
1354 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1356 * lily/lexer.ll: remove limitation on music function arity. New
1357 mode extratoken, which inserts extra EXPECT_* tokens after
1358 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1360 * lily/parser.yy: Change grammar for music function accordingly.
1362 * lily/include/lily-parser.hh: New method get_state, new member
1363 hidden_state. Works around a problem when parser fetches
1364 MUSIC_FUNCTION token but not the following EXPECT_* token.
1366 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1369 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1370 references to Music; use ASSIGN_EVENT_ONCE everywhere
1372 * lily/grob-info.cc: junk *music_cause
1374 * lily/music.cc: copy eventified articulations to stream event
1376 * lily/part-combine-iterator.cc: Cleanup using enums
1378 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1381 * lily/include/engraver.hh: Junk music.hh include
1383 * lily/stream-event.cc: Changed constructors
1385 2006-09-21 Graham Percival <gpermus@gmail.com>
1387 * Documentation/user/tweaks.itely (Fitting music onto fewer
1388 pages): change settings to avoid warning messages.
1390 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1392 * Documentation/user/tweaks.itely (Fitting music onto fewer
1393 pages): Add between-system-space setting.
1395 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1397 * lily/accidental-placement.cc (calc_positioning_done): don't
1398 trigger Y-extent calculation too early. Use pure_height instead.
1400 * lily/scale.cc (LY_DEFINE): new file.
1402 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1404 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1405 that happen at the start of a score: having a zero-length
1406 chunk was messing up min_system_count calculations.
1408 * lily/source-file.cc (get_line): lower_bound, not
1409 binary_search. Fixes problem where point-and-click would
1410 always point to the first line.
1412 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1414 * lily/accidental-placement.cc (calc_positioning_done): also put
1415 stems into accidental support.
1417 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1420 * scm/script.scm (default-script-alist): avoid-slur and
1421 slur-padding for portato script.
1423 * lily/stem-tremolo.cc (translated_stencil): new function.
1424 (height): use new function. Fixes tremolos on whole notes.
1426 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1429 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1431 * scripts/abc2ly.py (try_parse_comment): idem.
1433 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1434 bar_string iso. string.find()
1438 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1441 2006-09-18 Graham Percival <gpermus@gmail.com>
1443 * Documentation/user/basic-notation.itely: add bug
1444 warning about ties and octavation/clef.
1446 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1448 * VERSION (PACKAGE_NAME): release 2.9.18
1450 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1452 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1453 figure out midi file names right here.
1455 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1457 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1459 * scm/backend-library.scm: option naming: gs-font-load*s*
1461 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1464 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1466 * scm/define-music-types.scm (music-descriptions): remove
1467 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1468 Music::to_event doesn't complain.
1470 * lily/accidental-placement.cc (ape_compare):
1471 * lily/semi-tie.cc (compare):
1472 * lily/note-column.cc (shift_compare): replace by XXX_less
1474 * lily/tie-formatting-problem.cc (set_chord_outline):
1475 * lily/tie-column.cc (calc_positioning_done):
1476 * lily/system.cc (post_processing)
1478 * lily/stem.cc (note_head_positions)
1479 (calc_positioning_done):
1480 * lily/spanner.cc (do_break_processing)
1481 (find_broken_piece):
1482 * lily/span-bar.cc (print):
1483 * lily/semi-tie-column.cc (calc_positioning_done):
1484 * lily/rest-collision.cc (calc_positioning_done):
1485 * lily/program-option.cc (get_help_string):
1486 * lily/note-collision.cc (get_clash_groups):
1487 * lily/new-fingering-engraver.cc (position_scripts):
1488 * lily/keyword.cc (Keyword_table):
1489 * lily/hara-kiri-group-spanner.cc (request_suicide):
1490 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1491 * lily/accidental-placement.cc (calc_positioning_done):
1493 * lily/beam.cc (get_beam_segments):
1494 * lily/grob-array.cc (remove_duplicates):
1497 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1498 ragged-last-bottom = ##f (test the new page breaker)
1500 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1502 * scm/define-context-properties.scm
1503 (all-internal-translation-properties): remove properties that
1504 were used to communicate page-turn stuff to the paper-column
1507 * lily/lily-guile.cc (robust_scm2string): new function
1509 * lily/paper-column-engraver.cc: Clean up page turn stuff
1511 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1512 instead of cluttering up paper-column-engraver.cc
1514 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1516 * scm/layout-page-dump.scm (scm): export utility function names,
1517 to allow user writing cutsom dumping functions.
1519 * scm/layout-page-layout.scm: export utility function names to
1520 enable custom page breaking function writing. Tabify.
1521 (line-next-space): use ?-suffix only for predicates
1522 (page-maximum-space-to-fill): new function. Return the space
1523 between first and bottom system of a page, to give to
1525 (space-systems): use a space-to-fill argument (for instance as
1526 computed by page-maximum-space-to-fill) instead of computing
1527 internaly this space with the page height. That way, the caller
1528 can adjust the space to use.
1529 (make-page-from-systems, walk-paths): compute space to fill before
1530 calling space-systems.
1532 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1534 * scm/script.scm (default-script-alist): set paddings for every
1535 type here, increase for portato mark.
1537 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1540 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1542 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1543 use spanner::set-spacing-rods
1545 * lily/note-column.cc: reformat.
1547 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1548 step positioning for note/rest combinations.
1550 * input/regression/rest-note-collision.ly: new file.
1552 * scm/define-grobs.scm (all-grob-descriptions): add
1555 * flower/include/std-vector.hh: switch off again.
1557 * VERSION (PATCH_LEVEL): bump to 2.9.18
1559 * flower/include/std-string.hh: idem.
1561 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1563 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1565 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1568 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1570 * Documentation/user/page.itely: update page breaking documentation
1572 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1574 * lily/note-collision.cc (calc_positioning_done): only access
1575 first head if available.
1577 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1579 * scm/framework-ps.scm (output-preview-framework): use new name.
1581 * lily/program-option.cc (internal_set_option): use new names.
1583 * Documentation/user/SConscript (lilypond_book_flags): update -d
1586 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1587 output into other programs): new variable names.
1589 * scm/lily.scm (define-scheme-options): uniformize var names.
1591 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1592 tuplets_ is non-empty before popping.
1594 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1596 * lily/spanner.cc (find_broken_piece):
1597 * lily/spacing-spanner.cc (get_columns):
1598 * lily/source-file.cc (get_line):
1599 * lily/simple-spacer.cc (get_column_description):
1600 * lily/keyword.cc (lookup):
1601 use the new binary search.
1603 * flower/include/std-vector.hh: replace binary_search with
1604 a more STL-like version
1606 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1608 * lily/tie-performer.cc: remove unused last_event_ property.
1609 (class Tie_performer): add now_tied_heads_ property for
1610 partially-tied heads.
1611 (acknowledge_audio_element): when adding an Audio_note, put the
1612 note in now_tied_heads_ if the audio note is partially tied.
1613 (stop_translation_timestep): always include entries in
1614 now_tied_heads_ in heads_to_tie_.
1616 * lily/drum-note-performer.cc (process_music): look for tie-events
1617 in the articulations; pass to Audio_note constructor.
1619 * lily/note-performer.cc (process_music): look for tie-events in
1620 the articulations; pass to Audio_note constructor.
1622 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1625 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1626 include initializer in constructor.
1628 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1630 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1631 unless they are breakable. This fixes discrepancies between the forces
1632 calculated here and the forces calculated in get_line_configuration.
1634 * lily/grob.cc (pure_relative_y_coordinate): fix some
1635 mis-estimation that was happening with piano staves.
1637 * lily/constrained-breaking.cc (resize): don't choke if we get a
1638 measure that won't fit on a line.
1639 (combine_demerits): don't consider uniformity when ragged
1641 * lily/page-spacing.cc (solve): why the f* were there two of these?
1642 (calc_subproblem): properly handle the case where a system is taller
1645 * lily/system.cc (get_paper_system): ensure that all the permissions
1646 and penalties are passed to the paper systems.
1648 * lily/page-breaking.cc (create_system_list): support system-count.
1650 * scm/define-grobs.scm (pure-print-callbacks): add
1651 ly:script-interface::print
1653 * lily/page-spacing.cc (min_page_count): fix calculation of min
1654 pages if we are ragged and there are non-zero springs.
1656 * scm/layout-page-layout.scm: if the pure-height estimates are under
1657 the real height, allow space-systems to ignore padding if it is
1658 needed in order to fit the systems on one page
1660 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1662 (solve): fix performance problem. Make sure we always get at least
1665 * lily/page-breaking.cc (make_pages): include write-page-breaks
1668 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1670 * scm/define-grobs.scm: add the new slur-callback
1671 fix pure-relevant to not exclude grobs whose extent is already
1674 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1677 * lily/slur.cc (pure_height): new callback to estimate the height
1680 2006-09-02 Graham Percival <gpermus@gmail.com>
1682 * Documentation/user/invoking.itely: small update on
1683 MacOS X notes; thanks Trevor!
1685 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1687 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1689 * lily/lexer.ll: accept EOF in all states.
1691 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1693 * lily/source-file.cc (Source_file): always 0-terminate character
1694 array, to prevent Flex from barfing.
1696 * lily/global-context.cc (get_output): robustness: don't crash if
1697 no Score context found.
1699 * lily/include/book.hh (class Book): idem.
1701 * lily/include/context-def.hh (struct Context_def): idem.
1703 * lily/include/score.hh (class Score): don't derive from Input.
1705 * lily/book.cc (Book): add a copy ctor.
1707 * buildscripts/output-distance.py (FileLink.calc_distance): count
1708 orphans in distance too.
1710 * python/midi.c (midi_parse_track): robustness: don't read past
1713 * ly/performer-init.ly: add Control_track_performer, move
1714 Tempo_performer and Time_signature_performer to Score.
1716 * lily/score-performer.cc (acknowledge_audio_elements): override
1717 from base class: add to audio-columns
1719 * lily/control-track-performer.cc (add_text): new file: generate
1722 * lily/performance.cc: move output_header_track to
1723 Control_track_performer ()
1725 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1727 * lily/include/midi-item.hh (class Midi_channel_item): insert
1728 class into hierarchy, for items that can have a channel setting. Dehungarify.
1730 * lily/include/performer.hh (class Performer): remove
1731 play_element(); move functionality into announce/acknowledge.
1733 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1735 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1736 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1738 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1740 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1743 * lily/all-font-metrics.cc: remove TFM support.
1745 * lily/include/tfm.hh: remove TFM support, TFM reader.
1747 * lily/include/binary-source-file.hh: remove Binary_source_file.
1749 2006-08-27 Graham Percival <gpermus@gmail.com>
1751 * Documentation/topdocs/NEWS.itely: add @c marker for
1752 stuff I've processed.
1754 * Documentation/user/ various: info from NEWS.
1756 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1758 * lily/paper-column-engraver.cc (finalize): Oops, this change
1759 should have gone in on 2006-08-23
1761 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1763 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1764 quotes to quote arguments. Fixes Windows problem.
1766 * python/lilylib.py (progress): idem
1768 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1770 * scripts/musicxml2ly.py: fix for importing
1771 minor key signatures from MusicXML. (Phillip Kirlin)
1773 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1775 * python/musicxml.py:
1776 (Attributes.get_key_signature): now correctly retrieves mode from
1779 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1781 * lily/parser.yy (output_def_body): take ownership of identifier
1784 * Documentation/user/advanced-notation.itely (Metronome marks):
1785 update use of \tempo in \midi.
1787 * VERSION: release 2.9.16
1789 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1791 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1794 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1796 * input/regression/tie-chord-partial.ly: clarify example.
1798 * scm/define-music-properties.scm (all-music-properties): remove
1801 * ly/music-functions-init.ly: remove \untied.
1803 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1804 stream events and music events.
1805 (stop_translation_timestep): search acknowledged heads for
1808 * input/regression/tie-chord-partial.ly: new file.
1810 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1811 for \char markup command.
1813 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1815 * scm/define-music-types.scm (music-descriptions): consistency:
1816 Use solo-{one,two}-event iso. solo-[12]-event.
1818 * lily/part-combine-engraver.cc (process_music):
1819 Use solo-{one,two}-event iso. solo-[12]-event.
1821 * ly/declarations-init.ly (partCombineListener): add Timing as
1824 * flower/std-string.cc (string_copy): use copy ()
1826 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1828 2006-08-24 Graham Percival <gpermus@gmail.com>
1830 * Documentation/user/changing-defaults.itely, global.itely,
1831 lilypond-book.itely, page.itely: minor changes from mailist.
1833 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1835 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1838 * scm/define-context-properties.scm
1839 (translator-property-description): robustness: detect type errors
1840 in property definitions.
1842 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1843 after getting it from SCM.
1845 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1848 * lily/include/performer.hh (class Performer): strip get_tempo()
1851 * lily/midi-def.cc: strip file.
1853 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1855 * lily/include/context-def.hh (struct Context_def): use
1856 VIRTUAL_COPY_CONSTRUCTOR().
1858 * lily/source-file.cc: smobification.
1860 * lily/include/source-file.hh (class Source_file): smobify
1861 Source_file. Trim redundant members.
1863 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1864 clones after creation. This plugs a huge memory leak.
1866 * python/convertrules.py (FatalConversionError.sub_tempo):
1867 complete rule for \midi{ \tempo }
1869 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1871 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1873 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1875 * input/regression/optimal-page-breaking-hstretch.ly: test for
1876 ragged-last-bottom also
1878 * lily/paper-column-engraver.cc (finalize): make the end of a score
1879 breakable by default. This is to balance out a change in behaviour
1880 of the page-turn-breaker which no longer makes the end of a score
1883 * lily/paper-book.cc (pages): set the systems_ once the pages are
1886 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1887 Page_breaking interface.
1889 * lily/page-breaking.cc (class Page_breaking): make the interface
1890 more consistent and provide abstractions for dealing with
1893 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1894 algorithm. Use the new interface to Page_breaking.
1896 * lily/page-spacing.cc: better support for ragged-bottom and
1899 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1901 * python/convertrules.py (conv): warning on \tempo{}
1903 * ly/performer-init.ly: set tempoWholesPerMinute.
1905 * ly/midi-init.ly: remove \midi
1907 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1910 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1911 tempoUnitDuration for determining what to print.
1913 * lily/lyric-extender.cc: typo.
1915 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1917 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1920 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1922 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1923 eps-pad-boxes is set.
1925 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1927 * THANKS: update sponsors.
1929 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1931 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1933 * input/regression/tie-chord-untied.ly: new file.
1935 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1937 * scm/define-music-properties.scm (all-music-properties): add
1940 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1942 (headertext_nopics): sanitize no-examples text.
1944 * scm/page.scm (make-page-stencil): don't rely on extents of
1945 page-stencil. This fixes spurious space around .EPS files produced
1946 with the EPS backend.
1948 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1950 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1952 * lily/hara-kiri-engraver.cc (process_music): remember
1953 keepAliveInterfaces after processing \set
1955 * lily/lyric-extender.cc (print): support left/right-padding for
1958 * scm/documentation-generate.scm (string-append): revert lilypond/
1961 2006-08-20 Graham Percival <gpermus@gmail.com>
1963 * Documentation/user/lilypond.tely: clarification to
1964 license presentation (not to actual license).
1966 * Documentation/user/basic-notation.itely,
1967 instrument-notation.itely: minor changes.
1969 * input/ {regression, test}/+.ly: clarification to
1970 text (you can click on examples). Thanks, Mats!
1972 * input/manual/bar-lines.ly: adds ||: repeats.
1974 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1976 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1978 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1980 * Documentation/user/lilypond.tely: strip lilypond/ from info
1981 links, rename to category LilyPond
1983 * lily/pango-font.cc (description_string): new function.
1985 * VERSION: release 2.9.15
1987 * lily/spacing-engraver.cc (stop_translation_timestep): use
1988 Dscho's fix for spacing spanner.
1990 * scm/define-music-types.scm (music-descriptions): use
1991 apply-output-event for ApplyOutputEvent
1993 * lily/output-property-engraver.cc (listen_apply_output): rename
1994 from listen_layout_instruction.
1996 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1999 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2001 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2002 commandline args with contains, split by \n.
2004 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2005 write snippet-names file, call with -dread-file-list. Fixes
2006 command limitations on 64-bit systems.
2008 * input/regression/stencil-color-rotation.ly: new file.
2010 * lily/include/translator.hh (struct Acknowledge_information):
2011 revert: don't use Protected_scm in global objects, as GUILE can't
2012 handle gc_unprotect from automated destructors on MacOS X.
2014 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2015 color, not the original stencil. Fixes combinations of
2016 color/transparency/rotation.
2018 * scripts/lilypond-book.py (main): add --formats=eps for
2021 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2022 crash if spacing_ is nonexistent.
2024 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2026 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2027 \catcode`\@=12 in the LaTeX output.
2029 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2031 * scm/define-music-types.scm (music-descriptions):
2032 use sustain-event iso. sustain-pedal-event.
2034 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2036 * scripts/convert-ly.py: honour the -n command-line switch
2038 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2040 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2041 break specification.
2043 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2045 * Documentation/user: convert-ly the user manual
2047 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2049 * stepmake/aclocal.m4: version check patch (thanks MWD)
2051 * ly/music-functions-init.ly: robustness. Don't crash if
2052 currentBarNumber is not a number.
2054 * VERSION (PATCH_LEVEL): bump.
2056 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2058 * stepmake/aclocal.m4: better version check; handle fooX.Y
2061 * ly/performer-init.ly: instrument name fixup.
2063 * input/manual/chord-names-jazz.ly (banterProperties):
2064 instrumentName update
2066 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2068 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2070 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2071 function. Use hash tables to check membership.
2073 * lily/general-scheme.cc (LY_DEFINE): new function.
2075 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2077 * lily/include/translator.hh (struct Acknowledge_information): add
2080 * ly/music-functions-init.ly: change name to BreathingEvent
2082 * input/regression/*.ly: apply it.
2084 * python/convertrules.py (conv): better instrumentName conversion
2087 * scm/define-music-types.scm (music-descriptions): add
2088 line-break-event to LineBreakEvent music
2090 * lily/music.cc (to_event): don't crash if music type not set.
2092 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2095 * lily/spacing-engraver.cc (stop_translation_timestep): set
2096 spacing for proportional notation too.
2098 * scm/translation-functions.scm (format-bass-figure): inspect
2101 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2103 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2105 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2107 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2109 * scm/layout-page-layout.scm (make-page-from-systems): new function
2110 (optimal-page-breaks): use the new page-breaking calling convention
2112 * scm/define-context-properties.scm (all-user-translation-properties):
2115 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2116 revokePageTurns functionality. If there is a special barline within
2117 the breakable region, break there instead of at the end of the region.
2119 * lily/paper-book.cc (pages): use the new page-breaking calling
2122 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2124 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2126 * scripts/lilypond-book.py: insert \sourcefileline command in
2127 output, so lilypond error messages refer to the spot in the
2128 original .lytex / .itely sourcefile.
2130 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2132 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2133 space to next column for distance to fixed col.
2135 * VERSION (PACKAGE_NAME): release 2.9.14
2137 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2140 * lily/accidental-engraver.cc (process_acknowledged): don't create
2141 accidental for trill span event. This fixes spurious accidentals
2144 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2146 * scm/define-grob-properties.scm (all-user-grob-properties):
2147 Clarify documentation of side-axis and direction. Thanks to Paul
2148 for the inspiration.
2150 * lily/bar-line.cc: Add documentation for "||:" also in the
2151 interface documentation.
2153 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2155 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2157 * lily/paper-column.cc (set_system): new function.
2159 * lily/spacing-engraver.cc (stop_translation_timestep): store
2160 SpacingSpanner refs in Paper_column.
2162 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2163 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2165 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2167 * lily/beam-engraver.cc (listen_beam): add method for
2168 Grace_beam_engraver too.
2170 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2172 * python/convertrules.py: Fix indentation bug that broke
2173 conversion of files older than 1.3.117.
2174 Fix escape error in the description for 2.9.6.
2176 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2178 * lily/*-engraver.cc: convert all try_music functions to listen_*
2181 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2182 enums to represent pedal types, and calculate more data statically.
2184 * scm/part-combiner.scm (recording-group-emulate): create a
2185 softcoded substitute for recording-group-engraver.cc.
2187 * lily/music.cc: make a common transpose function for events and
2190 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2191 ManualMelismaEvent, and obsoletes Melisma_translator.
2193 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2195 * input/test/instrument-name-align.ly: update version.
2197 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2199 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2200 Doc the --pdf flag to lilypond-book.
2202 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2204 * Documentation/topdocs/NEWS.tely (Top): add description.
2206 * input/regression/tuplet-full-length-note.ly: add file.
2208 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2209 always store axis group.
2211 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2213 * input/regression/instrument-switch.ly: new file.
2215 * lily/instrument-switch-engraver.cc (process_music): new file.
2217 * ly/engraver-init.ly: add Instrument_switch_engraver
2219 * ly/music-functions-init.ly: \instrumentSwitch
2221 * scm/define-context-properties.scm
2222 (all-user-translation-properties): add instrumentCueName
2224 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2226 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2228 * ly/music-functions-init.ly: music function \transposition.
2230 * lily/parser.yy (command_element): softcode \transposition.
2232 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2233 (process_music): oops.
2235 * lily/instrument-name-engraver.cc (start_spanner): new
2236 function. Create spanner when property changes.
2237 (stop_spanner): new function.
2239 * python/convertrules.py (conv): add rule.
2241 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2242 shortInstrumentName iso. instr.
2244 * scm/output-ps.scm (dashed-line): add phase argument to
2247 * lily/bar-line.cc (dashed_bar_line): new function.
2248 (compound_barline): support \bar "dashed".
2250 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2251 --output=DIR to DIR/BASE if it is a dir.
2253 * flower/file-name.cc (file_part): new function
2254 (dir_part): new function
2256 * lily/lily-parser-scheme.cc (LY_DEFINE):
2258 * DEDICATION: update
2260 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2262 * lily/instrument-name-engraver.cc: formatting.
2264 * python/convertrules.py (conv): bugfix for \epsfile.
2266 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2270 * lily/gourlay-breaking.cc: Oops, these should have been included
2273 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2275 * scripts/*.py (program_name): cleanup relocation snippets.
2277 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2279 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2281 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2282 page-breakable by default
2284 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2285 correctly calculated for a single-system page
2287 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2288 bigger than the second number
2290 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2291 acknowledge that we aren't satisfying constraints)
2293 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2296 * lily/grob.cc (pure_height): add minimum-Y-extent
2298 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2301 * lily/constrained-breaking.cc: convert code to use new Matrix class
2302 (get_best_solution): new function
2304 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2305 is a page with no systems
2307 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2309 * VERSION (PACKAGE_NAME): release 2.9.13
2311 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2314 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2316 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2318 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2321 * scm/define-grob-properties.scm (all-user-grob-properties):
2322 remove grace-space-factor.
2324 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2325 grace-spacing-interface
2326 (spacing-options-interface): add.
2328 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2330 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2332 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2333 GraceSpacing object.
2335 * lily/note-spacing.cc: fix prop list formatting
2337 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2338 beaming for grace notes too.
2340 * input/regression/spacing-grace.ly: update.
2342 * lily/grace-spacing-engraver.cc: new file.
2344 * lily/spacing-spanner.cc: add strict-grace-spacing.
2346 2006-07-20 Graham Percival <gpermus@gmail.com>
2348 * lily/parser.yy: compile fix.
2350 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2352 * scm/define-grobs.scm (all-grob-descriptions): typo.
2354 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2355 .eps extension from includegraphics.
2357 * scripts/lilypond-book.py (main): add support for --pdf.
2359 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2360 callback to compute common shortest duration.
2361 (set_springs): typo.
2363 * scm/define-grob-properties.scm (all-user-grob-properties): add
2364 strict-grace-spacing.
2366 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2367 support float_grace_columns_.
2369 * lily/spacing-options.cc (init_from_grob): new file.
2371 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2373 * input/regression/spacing-loose-grace.ly: new file.
2375 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2377 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2378 tupletFullLengthNote too. Choose right bound depending on value.
2380 * input/regression/tuplet-full-length-note.ly: new file.
2382 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2384 * lily/*-performer.cc: Converted try_music to listen_*
2386 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2387 as a stream-event internally. Introduce event_cause (), deprecate
2390 * scm/define-music-types.scm: Removed BusyPlayingEvent
2392 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2394 * Documentation/user/advanced-notation.itely (Font selection):
2395 Document how to get a list of available fonts using 'lilypond
2396 -dshow-available-fonts blabla'.
2398 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2400 * GNUmakefile.in: filter lily-XXX.pdf files.
2402 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2404 * scm/define-grob-properties.scm (all-internal-grob-properties):
2405 remove delta-pitch. Use delta-position everywhere.
2407 * scm/output-lib.scm (fall::print): use new order.
2409 * scm/output-ps.scm (path): reorder arguments.
2411 * scm/output-svg.scm (path): support for path primitive.
2413 * input/regression/bend-after.ly: new file.
2415 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2416 recipe for eps -> pdf conversion.
2418 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2420 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2423 2006-07-19 Graham Percival <gpermus@gmail.com>
2425 * input/manual/screech-boink.ly: moved to here.
2427 * input/screech-boink.ly: deleted.
2429 * scm/define-grob-properties.scm: clarify doc string.
2431 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2433 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2435 * scm/output-ps.scm (path): define path.
2437 * scm/define-stencil-commands.scm
2438 (ly:register-stencil-expression): add path.
2440 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2442 * ly/engraver-init.ly: add Fall_engraver
2444 * lily/parser.yy (music_function_event): allow musicfunction
2445 without music arg as music_function_event.
2447 * lily/grob-scheme.cc (LY_DEFINE):
2448 ly:grob-robust-relative-extent. New function.
2450 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2452 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2454 * scm/output-lib.scm (fall::print): new function
2456 * lily/fall-engraver.cc (stop_fall): new file.
2458 * ly/music-functions-init.ly: alphabetise.
2460 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2463 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2465 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2467 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2470 * lily/translator-group.cc (connect_to_context): non const error message.
2472 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2474 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2477 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2479 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2481 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2484 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2486 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2488 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2490 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2492 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2494 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2496 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2498 * scm/layout-page-layout.scm: Define module, tidy code, use more
2499 functions iso. a single big one.
2501 * scm/layout-page-dump.scm: move page dump functions used in two
2502 pass spacing to this file. Define module.
2504 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2507 * ly/paper-defaults.ly: use module layout-page-layout.
2509 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2511 * lily/music.cc: Revised MusicEvent event class. It now contains
2512 event data directly instead of encapsulating it in music. The
2513 previously used class is renamed to OldMusicEvent.
2515 * lily/stream-event.cc: Stream events are now probs.
2517 * lily/translator-group.cc, lily/translator.cc: Translators can
2518 now listen directly to stream events, by using macros
2519 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2521 * lily/arpeggio-engraver.cc: Converted to use new event system
2523 * THANKS: Corrected spelling mistake.
2525 2006-07-12 Graham Percival <gpermus@gmail.com>
2527 * Documentation/user/SConscript, make/lilypond-vars.make,
2528 input/GNUmakefile: doc build looks in input/manual instead
2531 * input/manual/ GNUmakefile, SConscript: build files for
2534 * input/test/ various: some files moved to input/manual/
2536 * Documentation/user/basic-notation.itely: small updates;
2537 thanks Kieren and Charles!
2539 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2541 * VERSION (PACKAGE_NAME): release 2.9.11
2543 * Documentation/topdocs/NEWS.tely (Top): update prop value
2545 * Documentation/user/basic-notation.itely (Tuplets): new property
2548 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2550 * python/convertrules.py (conv): tweaks.
2552 * VERSION (PATCH_LEVEL): bump version.
2554 * python/convertrules.py (conv): add rule for
2555 tupletNumberFormatFunction.
2557 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2558 tupletNumberFormatFunction.
2560 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2561 text through 'text callback.
2563 * lily/time-scaled-music-iterator.cc (construct_children): copy
2564 tweaks generated events.
2566 * scm/define-context-properties.scm
2567 (all-user-translation-properties): remove tupletNumberFormatFunction
2569 * lily/tuplet-engraver.cc (process_music): don't read
2570 tupletNumberFormatFunction
2572 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2575 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2577 * lily/global-context-scheme.cc: Separated ly:run-translator into
2580 * lily/score-engraver.cc, lily/score-performer.cc,
2581 scm/define-context-properties.scm: Make paper/midi output
2582 accessable as a context property.
2584 * lily/score-translator.cc, lily/score-context.cc: Removed.
2586 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2588 * scm/ps-to-png.scm (Module):
2589 * scm/framework-tex.scm (Module):
2590 * scm/framework-ps.scm (Module):
2591 * scm/backend-library.scm (Module):
2592 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2593 "dDEVICEHEIGHTPOINTS".
2595 2006-07-04 Graham Percival <gpermus@gmail.com>
2597 * Documentation/user/ various: general improvements to
2598 "working with lilypond files" section.
2600 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2602 * lily/sequential-iterator.cc: Change the default get_music_list
2603 to read elements-callback music property
2605 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2606 processing of multimeasure rests. Softcoded
2607 sequential-music-iterator.
2609 * lily/sequential-music-iterator.cc: Removed.
2611 2006-06-28 Graham Percival <gpermus@gmail.com>
2613 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2615 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2617 * lily/parser.yy: Wrap non-post-events in EventChords before
2618 assigning them to identifiers.
2620 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2622 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2623 gives correct vertical placement of \bar ":" in all staff
2624 sizes. Thanks Martial!
2626 2006-06-26 Graham Percival <gpermus@gmail.com>
2628 * Documentation/user/invoking.itely : minor update from mailist.
2630 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2632 * lily/ various: Introduce stream events of types Prepare,
2633 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2634 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2636 * lily/global-context*.cc: Time is now -inf before iteration
2639 * lily/include/context.hh: Removed unique_, init_
2641 * Documentation/topdocs/NEWS: Make the feathered beam example
2642 avoid triggering a bug.
2644 2006-06-24 Graham Percival <gpermus@gmail.com>
2646 * Documentation/user/ various: small additions from mailist.
2648 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2650 * ly/performer-init.ly: Add some missing links in the context
2651 hierarchy for MIDI output. There are probably some more missing!
2653 2006-06-21 Graham Percival <gpermus@gmail.com>
2655 * Documentation/user/ various: minor spelling fixes;
2656 thanks Dave Luttinen!
2658 * Documentation/user/ various: small clarifications;
2659 thanks Anthony Youngman!
2661 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2663 * po/fr.po: add \n appropriately.
2665 * lily/lexer.ll: remove ? from version-seen?
2667 2006-06-19 John Mandereau <john.mandereau@free.fr>
2669 * po/fr.po; update translation, by Jean-Charles Malahieude and
2672 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2674 * THANKS: add Markus Schneider.
2676 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2677 Staff_symbol_engraver
2679 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2680 replace staff_engraver
2682 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2685 * lily/staff-collecting-engraver.cc
2686 (acknowledge_end_staff_symbol): new function
2688 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2690 * lily/staff-collecting-engraver.cc
2691 (acknowledge_end_staff_symbol): new function.
2693 * lily/main.cc: switch on relocation by default.
2695 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2697 * lily/spacing-spanner.cc (musical_column_spacing): set
2698 compound_fixed_note_space to 0.0. Document why.
2700 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2701 range of inverse_hooke_
2702 (Simple_spacer): init completely.
2704 (get_line_configuration): don't use cols.resize(); it introduces
2707 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2709 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2711 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2712 try. Divide by beatlength.
2714 * input/regression/beaming-ternary-metrum.ly: update doc.
2715 add beatLength hack.
2717 * scm/music-functions.scm (make-time-signature-set): add
2718 standard-beat-grouping.
2720 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2722 * input/regression/tie-whole.ly: new file.
2724 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2725 cross center of note head in case of invisible stem.
2727 2006-06-16 Graham Percival <gpermus@gmail.com>
2729 * Documentation/user/ various: small fixes from mailist.
2731 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2733 * lily/breathing-sign.cc (offset_callback): idem.
2735 * lily/align-interface.cc (align_to_fixed_distance): remove
2738 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2741 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2743 * VERSION (PACKAGE_NAME): release 2.9.9
2745 * ly/lilypond-book-preamble.ly: add \version
2747 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2749 * scripts/lilypond-book.py (PREAMBLE_LY): include
2750 lilypond-book-preamble.ly
2752 * lily/stem.cc (get_beaming): return max of 0 and
2753 scm_ilength. Fixes slurring from/to beams.
2755 * ly/lilypond-book-preamble.ly: new file.
2757 * lily/slur.cc: add inspect-index feature.
2759 2006-06-13 Graham Percival <gpermus@gmail.com>
2761 * Documentation/user/tutorial.itely: trivial fix.
2763 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2765 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2766 all non-event music in the parser via MAKE_SYNTAX.
2768 * lily/parser-scheme.cc: Add ly:parser-error function
2770 * scm/paper.scm: fix typo
2772 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2776 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2779 * buildscripts/output-distance.py (test_compare_signatures):
2781 (read_signature_file): use new signature format.
2783 * scm/stencil.scm (write-system-signature): simpler signature
2786 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2789 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2790 stem_end_position, but estimate instead.
2792 * lily/tuplet-bracket.cc (calc_positions): look at
2793 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2794 brackets narrower than beams.
2796 * lily/lexer.ll: set version-seen? even if version is
2799 * lily/rest.cc (y_offset_callback): bugfix: decide position
2800 override based on scm_is_number(). Fixes \rest on center staff
2803 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2804 patterns for 16th triplets.
2806 2006-06-10 Graham Percival <gpermus@gmail.com>
2808 * Documentation/user/ page.itely, global.itely: editing
2811 * Documentation/user/ various: findex -> funindex.
2813 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2815 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2816 insert extra tuplet events.
2818 2006-06-10 Graham Percival <gpermus@gmail.com>
2820 * Documentation/user/programming-interfaces.itely: add
2823 * python/convertrules.py: add annotatefoo -> annotate-foo
2826 * Documentation/user/global.itely: start editing.
2828 * Documentation/user/page.itely: major editing, new spacing
2831 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2833 * scm/define-markup-commands.scm (wordwrap-markups): use
2834 output-def 'line-width if undefined.
2836 * HACKING: trim outdated info.
2838 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2840 * scm/define-grobs.scm (all-grob-descriptions): Add
2841 line-spanner-interface to all grobs that already have
2842 text-spanner-interface or dynamic-text-spanner-interface
2844 * scm/page.scm: Rename annotate{headers,systems,page}->
2847 * input/regression/page-spacing.ly,
2848 input/regression/page-layout-manual-position.ly: idem
2850 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2852 * lily/line-spanner.cc: cleanup property list.
2854 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2855 generator expressions (2.3 compat).
2857 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2859 * lily/vertical-align-engraver.cc: Make sure that the
2860 align{Above,Below}Context properties are included in the automatic
2863 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2865 * scm/paper-system.scm (paper-system-annotate): also annotate the
2866 estimated pure-Y-extent
2868 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2870 * lily/system.cc (break_into_pieces): set the estimated height
2871 of each child system
2873 * lily/stem.cc (pure_height): new pure-Y-extent callback
2875 * lily/staff-symbol-referencer.cc (callback): don't destroy
2876 the staff-position property
2878 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2879 consider_suicide into two functions
2881 * lily/constrained-breaking.cc (resize): use the new pure
2882 callbacks to estimate the height of a system
2884 * lily/axis-group-interface.cc (pure_group_height): new
2885 side-effect-free VerticalAxisGroup height-callback
2887 * lily/align-interface.cc (get_extents_aligned_translates):
2888 split align_elements_to_extents into two functions
2889 (get_pure_child_y_translation): new function
2891 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2893 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2895 * lily/paper-score.cc: cache break_indices and columns
2897 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2899 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2901 * lily/font-config.cc (init_fontconfig): do the init if
2902 cache_file, but don't look at cache_file.
2904 * input/regression/quote-tie.ly: new file.
2906 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2907 to Head_event_tuple, so we deal gracefully with ties on
2910 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2913 2006-06-08 Graham Percival <gpermus@gmail.com>
2915 * input/test/ smart-transpose.ly, reverse-music.ly:
2916 \applyMusic to music functions update, thanks Michael!
2918 2006-06-07 Graham Percival <gpermus@gmail.com>
2920 * input/test/ add-staccato.ly, add-text-script.ly,
2921 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2922 music functions update, thanks to Michael Meixner.
2924 * Documentation/user/music-glossary.tely: small fix
2927 * Documentation/user/ various: minor additions from mailist.
2929 * Documentation/user/lilypond.tely, basic-notation.itely:
2930 small test of @funindex. (works here)
2932 * input/test/font-table.ly: reduce size to partially
2933 de-ugly version in manual.
2935 * Documentation/user/page.itely: new file (split former
2936 "global issues" into "page settings" and "non-musical
2939 * Documentation/user/ various: fix @ref{}s to match
2940 new chapter names (above).
2942 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2944 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2946 2006-06-06 Graham Percival <gpermus@gmail.com>
2948 * Documentation/user/advanced-notation.itely: add example
2949 for segno/coda on barline.
2951 * tex/texinfo.tex: merge from upstream.
2953 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2955 * scripts/lilypond-book.py (process_snippets): Argument fix.
2958 * buildscripts/builder.py:
2961 * Documentation/user/SConscript: More SCons fixes.
2963 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2965 * lily/font-config.cc (init_fontconfig): Only initialize if
2966 global cache_file is found.
2968 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2970 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2973 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2975 * VERSION (PACKAGE_NAME): release 2.9.8
2977 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2978 function. Delay ledger modifying ledgered grobs to
2979 stop_translation_timestep(), to ensure that we're ledgering
2980 according to the new spanner.
2981 (acknowledge_staff_symbol): don't check for non-NULL
2982 staff_sym->get_bound()
2984 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2987 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2990 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2991 directly from srcdir/stepmake/aclocal.m4
2993 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2996 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2998 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3000 * lily/simple-spacer.cc (get_line_configuration): add
3001 keep-inside-line rods
3002 (struct Column_desc): add constructor
3003 (struct Rod_desc): add constructor
3004 (get_line_forces): check for forced page breaks here too
3006 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3007 support/elements cycles between InstrumentNames and AxisGroups
3009 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3011 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3013 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3014 make-txt-files target.
3016 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3017 make-txt-files target.
3019 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3021 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3024 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3026 * Documentation/user/instrument-notation.itely,
3027 input/regression/breathing-sign-ancient.ly,
3028 input/test/divisiones.ly: Removed redundant property settings for
3031 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3032 fix lyrics alignment problems. They are implemented now as scheme
3033 functions that add the appropriate unicode char to the first lyric
3034 event rather than adding a separate lyric event. Minor edit of
3037 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3039 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3040 pollute src dir with built .txt files, but install directly from
3041 Documentation/topdocs/out/
3043 * buildscripts/output-distance.py
3044 (ComparisonData.create_html_result_page): put version/directories
3047 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3050 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3051 Patch by Karl Hammar
3053 * buildscripts/readlink.py: add file.
3054 Patch by Karl Hammar
3056 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3058 * lily/tuplet-number.cc (print): prevent stencil from being
3061 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3063 * scm/stencil.scm (write-system-signature): explicitly
3064 -well, superfluously- close output port.
3066 * buildscripts/output-distance.py (main): oops. Add extra argument.
3068 2006-06-05 Graham Percival <gpermus@gmail.com>
3070 * Documentation/user/music-glossary.tely: clarified example
3071 from Francisco Vila, thanks!
3073 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3075 * input/regression/spacing-section.ly: new file.
3077 * lily/input.cc (programming_error): new function.
3079 * lily/spacing-engraver.cc (try_music): new function. Accept
3080 spacing-section-event
3082 * lily/spacing-spanner.cc (set_springs): take slices of all
3083 columns for spacing.
3085 * lily/include/paper-column.hh (class Paper_column): add
3086 Paper_column::compare.
3088 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3090 * scm/define-music-types.scm (music-descriptions): add
3093 * lily/music-iterator.cc (report_event): use programming_error for
3094 sending non-event error.
3096 * lily/input.cc (programming_error): new function
3098 * buildscripts/output-distance.py (main): use compare-XXX for
3100 (main): --threshold option, default at 0.30
3102 * output-distance.py (main): add --threshold option.
3104 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3106 * scm/paper-system.scm (paper-system-annotate): fix problem when
3107 annotating an empty system
3109 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3111 * GNUmakefile.in: reinstate old web tar/copying.
3113 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3115 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3116 nothing changes. (Erik S)
3118 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3121 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3123 * scm/define-markup-commands.scm (whiteout): do not force
3124 foreground color of argument markup to black.
3126 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3127 the left of the arrow, instead of below the arrow name, so that,
3128 when two little arrows are vertically stacked, their dimensions
3129 and name should not overlap. Add a color key parameter.
3131 * scm/paper-system.scm (paper-system-annotate): Annotate
3132 next-space+next-padding instead of next-space. Annotate space
3133 between next-padding and next-space+padding, respectively, and
3134 following system extent and refpoint-Y-extent. Use colors.
3136 * scm/page.scm (annotate-page): translate annotations slightly to
3139 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3141 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3142 fix for x-staff slurs. Thanks Joe!
3144 * buildscripts/output-distance.py
3145 (SystemLink.output_expression_change_count): keep track of changed
3146 details, and dump in details html page.
3148 * input/regression/figured-bass-staff.ly: add note about setting
3149 properties in Staff context.
3151 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3152 add slurs and ties to support too.
3154 * buildscripts/output-distance.py (main): set dest_dir
3155 argument. Add --max-count option.
3157 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3159 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3160 shortcuts for special unicode chars that are useful in chant
3161 notation. Revised exisiting and added new comments.
3163 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3165 * make/mutopia-rules.make: remove duplicate recipe.
3167 2006-06-02 Werner Lemberg <wl@gnu.org>
3169 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3170 Add support for U+0132 (IJ) and U+0133 (ij).
3172 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3174 * buildscripts/output-distance.py (FileLink): new class. collect
3175 info systems from one .ly file.
3176 (FileLink.link_files_for_html): further tweaks.
3178 2006-06-02 Graham Percival <gpermus@gmail.com>
3180 * tex/texinfo.tex: partial fix for @funindex.
3182 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3185 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3187 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3189 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3190 @example too. Backportme.
3192 2006-06-02 Graham Percival <gpermus@gmail.com>
3194 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3195 from Werner Lemberg.
3197 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3199 * Documentation/user/music-glossary.tely: additional spanish
3200 updates and a lyrics fix in an example.
3202 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3204 * scm/define-grob-properties.scm: Previous patch contained
3205 spurious line from another patch not yet committed. Fixed.
3207 * scm/define-grob-properties.scm: Add missing doc strings for
3210 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3212 * buildscripts/output-distance.py
3213 (ComparisonData.write_text_result_page): separate the scores, sort
3216 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3219 * buildscripts/output-distance.py (me_path): use argv[0] for
3221 (ComparisonData.img_cell): use colored borders.
3223 * scm/stencil.scm (write-system-signature): escape newlines too.
3224 (write-system-signature): use (1,-1) interval for empty interval
3226 2006-01-01 Graham Percival <gpermus@gmail.com>
3228 * Documentation/user/music-glossary.tely: Spanish updates
3229 from Francisco Vila.
3231 * Documentation/user/lilypond-book.itely: addition from
3234 * Documentation/user/ various: edits, small additions
3237 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3239 * GNUmakefile.in (tree-lib-prefix-current):
3240 (tree-share-prefix-current): Use version number in tree, add
3243 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3245 * GNUmakefile.in: write VERSION, again.
3247 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3248 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3250 * stepmake/aclocal.m4: robuster version detection.
3252 * buildscripts/output-distance.py
3253 (ComparisonData.create_html_result_page): copy only if file
3254 exists, fixup src paths.
3256 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3258 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3260 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3261 Another datarootdir reto.
3263 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3264 available. This should be moved to postinstall-lilypond-doc.
3266 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3268 * GNUmakefile.in: simplify local-WWW-post.
3269 remove -type l from find.
3271 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3272 fixes. Don't follow symlinks.
3273 (ComparisonData.create_html_result_page): remove previous results.
3274 insert ../python in path.
3276 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3278 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3280 * config.make.in (datadir): Add datarootdir to silence autoconf.
3282 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3284 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3286 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3288 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3289 slash beams too wide.
3291 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3293 * VERSION: release 2.9.7
3295 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3297 * lily/relocate.cc (read_relocation_dir): Do not blindly
3300 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3302 * lily/parser.yy: replace THIS by PARSER
3304 * Documentation/index.html.in: add link to test-results.html page.
3306 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3308 * scm/translation-functions.scm (format-bass-figure): translate
3309 digits over 10 to the left
3311 * scm/define-markup-commands.scm (translate-scaled): new markup.
3313 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3316 * ly/engraver-init.ly: add Figured_bass_engraver
3318 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3320 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3322 * lily/score-engraver.cc (announce_grob): only note START announces.
3324 * lily/include/engraver-group.hh (Translator_group):
3325 acknowledge_hash_table_ is now drul.
3327 * lily/engraver.cc (announce_end_grob): new method.
3329 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3331 * lily/translator-dispatch-list.cc (create): take start_end argument.
3333 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3334 acknowledge_static_array_ to drul
3336 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3338 * scm/define-grob-interfaces.scm
3339 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3341 * scm/define-grobs.scm (all-grob-descriptions): add
3342 BassFigureAlignmentPositioning
3344 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3345 number stays up to date. Backportme.
3347 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3349 * Documentation/user/basic-notation.itely (Bar lines): Document
3352 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3354 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3356 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3357 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3360 * Resurrect `scons lily' build.
3362 * SConstruct (symlink_tree): Bugfix: link
3363 music-drawing-routines.ps to file iso directory.
3365 * lily/SConscript: Remove kpath-guile from LIBS.
3367 * SConstruct (libdir_package_version): Typo.
3368 (configure): Comment-out fontforge for lack of fontforge.pc .
3369 Also add libdir* to environment.
3371 2006-05-30 Graham Percival <gpermus@gmail.com>
3373 * Documentation/user/ various: minor additions from mailist and
3376 2006-05-30 Paco <fravd@ya.com>
3378 * Documentation/user/music-glossary.tely: numerous corrections and
3379 some new translations.
3381 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3385 * buildscripts/output-distance.py
3386 (ComparisonData.create_html_result_page): new routine: summarise
3387 results in HTML page with images.
3388 (ComparisonData.create_text_result_page): create summary text files too.
3390 * GNUmakefile.in (web-ext): package .signature files too. They
3393 * scm/stencil.scm (write-system-signature): typo.
3395 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3397 * scm/stencil.scm (write-system-signature): better escaping.
3398 only write signature for music systems, not for markup systems.
3400 * scm/framework-ps.scm (output-framework): dump-signatures support
3403 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3405 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3406 for -dno-point-and-click
3408 * lily/grob.cc (get_print_stencil): don't read
3409 point_and_click_global to determine whether to set grob-cause.
3411 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3413 * buildscripts/output-distance.py (main): new function.
3414 (ComparisonData): new class.
3416 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3417 careful with generating new LedgerLineSpanners.
3419 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3421 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3422 context. This fixes double ledger lines in output.
3424 * lily/system.cc (get_paper_system): remove 3 layer limit.
3426 * buildscripts/output-distance.py (SystemLink.distance): new
3427 file. Compare signatures.
3429 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3431 * lily/grob-array.cc (remove_duplicates): rename from
3432 uniq(). Sort before calling uniq() so it actually works.
3434 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3436 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3437 \version from lilypond file snippet.
3438 (Lilypond_file_snippet.ly): oops. typo.
3439 (find_toplevel_snippets): urgh. again.
3441 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3442 prevent duplicated broken items in output.
3444 * scm/framework-eps.scm (output-classic-framework): only dump if
3445 dump-signatures is set.
3447 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3449 * scm/stencil.scm (write-system-signature): new routine: write
3450 python parseable signature of a separate paper system.
3453 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3455 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3459 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3461 * translator-group.cc: send music events to engravers in
3462 non-bottom contexts.
3464 * tuplet-engraver.cc: process tuplet brackets in correct order.
3466 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3468 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3469 arg 2 might point us to a new binary (patch by Karl Hammar)
3471 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3473 * VERSION (PACKAGE_NAME): release 2.9.6
3475 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3477 * Documentation/user/*.itely: 2nd
3478 attempt: replace funindex -> findex globally.
3480 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3482 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3483 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3485 * scm/define-music-display-methods.scm: display methods for
3486 breaks. Fix \applyOutput.
3488 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3490 * Documentation/user/macros.itexi: comment out funindex expansion.
3492 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3495 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3496 Karl Hammar. Backportme.
3498 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3500 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3502 * Documentation/user/programming-interface.itely (Running a
3503 function on all layout objects): idem.
3505 * Documentation/user/introduction.itely (Automated engraving):
3506 update \applyOutput syntax
3508 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3509 remove debugging hook.
3511 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3514 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3516 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3517 TEXI2DVI_FLAGS to texi2dvi invocation.
3519 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3521 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3522 works. More work is done by iterator now, and engraver has been
3523 very much simplified.
3525 * lily/translator-group.cc: try_music is now invoked through a
3528 * lily/*-iterator.cc: Massive cleanups. Junked
3529 try_music_in_children globally. Renamed try_music to report_event,
3530 and made that method descend to a bottom context automatically.
3532 * lily/event-iterator.cc: New file.
3534 * lily/output-property-iterator.cc,
3535 lily/old-lyric-combine-music-iterator.cc: Removed.
3537 * python/convert-rules.py: Modified the syntax for \applyOutput.
3539 2006-05-23 Graham Percival <gpermus@gmail.com>
3541 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3544 * Documentation/user/ various: stuff that might have helped
3545 to fix the pdf creation, plus some minor doc additions.
3547 * Documentation/user/changing-defaults.itely: remove @b from
3548 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3550 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3552 * lily/beaming-pattern.cc (beamify): deal with negative start
3553 moments for beaming patterns.
3555 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3557 * lily/beaming-info.cc (beamify): new function: read beatLength
3558 and beatGrouping from context.
3560 * input/regression/beam-beat-grouping.ly (Module): new file.
3562 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3564 * lily/beam.cc (get_beam_segments): generate events for
3565 max_connect_ case too.
3566 (get_beam_segments): read Stem::max-beam-connect.
3568 * input/regression/beam-single-stem.ly: new file.
3570 * lily/stem.cc (set_beaming): use #f as signaling value for
3573 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3575 * lily/beam.cc (set_beaming): read clip-edges property.
3576 (calc_direction): don't suicide for single stem.
3578 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3579 argument, remove 1<<15 hack. Remove clip_edges()
3581 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3583 2006-05-21 Graham Percival <gpermus@gmail.com>
3585 * Documentation/user/basic-notation.itely: reorg.
3587 * Documentation/user/ various: minor fixes.
3589 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3591 * lily/stencil-expression.cc (register_stencil_head): opps, append
3592 to cdr of static SCM object.
3594 2006-05-19 Graham Percival <gpermus@gmail.com>
3596 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3597 update framework for command index. DOC WRITERS: use @funindex
3598 instead of @cindex @code{}.
3600 * Documentation/user/ various: replace @cindex @code{} => @funindex
3602 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3604 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3605 case positions is set manually.
3607 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3609 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3612 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3614 * Documentation/user/changing-defaults.itely (Contexts explained):
3615 use absolute dimension for @image.
3617 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3618 out image for illustration too.
3619 ($(outdir)/%.png): add more png <-> eps rules.
3621 2006-05-17 Graham Percival <gpermus@gmail.com>
3623 * Documentation/user/ various: remove trailing whitespace, cosmetic
3624 change to reduce changes produced by diff.
3626 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3628 * lily/main.cc (do_chroot_jail): correctness tweak.
3630 * python/lilylib.py (system): import subprocess in system () only.
3632 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3634 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3635 variable. Backportme.
3637 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3639 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3641 2006-05-17 Werner Lemberg <wl@gnu.org>
3643 * lily/lexer.ll (init_signature_has_table): Add
3644 `scm-scm-music-music'.
3646 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3647 (Generic_prefix_music_scm): Add rule for it.
3649 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3650 `quoted-transposition' property.
3652 * ly/music-functions-init.ly (transposedCueDuring): New function.
3654 * scm/define-music-properties.scm (all-music-properties): Updated.
3656 * Documenation/topdocs/NEWS.itely: Document it.
3658 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3660 * python/lilylib.py (system): move import subprocess to system()
3663 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3665 * VERSION (PATCH_LEVEL): release 2.9.5
3667 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3670 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3672 2006-05-16 Graham Percival <gpermus@gmail.com>
3674 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3676 * Documentation/user/ various: minor fixes.
3678 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3680 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3682 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3684 * Documentation/user/advanced-notation.itely (Instrument names):
3685 Modified obsolete instruction on how to move instrument names away
3686 from the staves. Hmm, at second thought the bug probably has been
3687 solved, so the full bug description should probably be removed.
3689 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3691 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3692 currentCommandColumn.
3694 * lily/hairpin.cc (print): also add padding for non-neighbor
3697 * scm/define-context-properties.scm
3698 (all-user-translation-properties): add hairpinToBarline
3700 * input/regression/hairpin-to-barline.ly: new file.
3702 * lily/context.cc (internal_send_stream_event): thinko fix.
3704 * lily/tie.cc (set_default_control_points): robustness fix.
3706 * python/musicxml.py (Part.interpret): don't complain about
3707 incomplete measures.
3709 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3710 new music if last_event_chord() returned None.
3712 * python/musicxml.py (Part.interpret): skip back over chord notes.
3714 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3716 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3717 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3718 lily/slash-repeat-engraver.cc,
3719 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3720 iterator sends PercentEvents
3722 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3723 rework tuplets: send start/stop events to engraver
3725 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3726 dispatchers event-source and events-below to Context
3728 2006-05-15 Graham Percival <gpermus@gmail.com>
3730 * Documentation/user/README.txt: update info for doc writers.
3732 * Documentation/user/programming-interface.itely: integrate
3733 Nicolas' fixes for chapter rewrite.
3735 * Documentation/user/ various: minor fixes.
3737 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3739 * lily/clef-engraver.cc: cleanup.
3741 * Documentation/user/GNUmakefile: dist context-example.eps too.
3743 * lily/key-engraver.cc (create_key): use
3744 explicitKeySignatureVisibility for cancellation too.
3746 * lily/font-config.cc (init_fontconfig): don't close file if
3749 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3751 * Documentation/topdocs/NEWS.tely: niente and rotation news
3753 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3755 * lily/include/stencil.hh
3756 * lily/stencil.cc (rotate): new function. Makes it possible
3757 to rotate a stencil around a given offset.
3759 * lily/grob.cc (get_print_stencil): add rotation support
3761 * lily/stencil-interpret.cc (interpret_stencil_expression):
3762 add rotation support
3764 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3766 * scm/define-grob-properties.scm: add 'rotation property
3768 * scm/define-markup-commands.scm: add rotate markup command
3770 * scm/output-ps.scm: add rotation support in PostScript backend
3772 * scm/output-svg.scm: add rotation support in SVG backend
3774 2006-05-13 Graham Percival <gpermus@gmail.com>
3776 * Documentation/user/music-glossary.itely: French correction.
3778 * Documentation/user/programming-interface.itely: major
3779 new docs, some reorg, some info from Nicolas.
3781 * Documentation/user/ various: small fixes.
3783 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3785 * Documentation/user/programming-interface.itely (Markup
3786 programmer interface): Remove duplicate text.
3788 2006-05-12 Graham Percival <gpermus@gmail.com>
3790 * Documentation/user/context-example.eps: new file.
3792 * Documentation/user/changing-defaults.itely: set up file to
3795 * Documentation/user/programming-interface.itely: changes
3798 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3800 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3802 2006-05-11 Graham Percival <gpermus@gmail.com>
3804 * Documentation/user/programming-interface.itely: first round of
3805 editing and merging emails from Nicolas.
3807 * Documentation/user/scheme-tutorial: minor edit.
3809 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3811 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3813 (Xml_node.message): use it.
3815 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3816 oops. Add duration argument.
3818 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3820 * lily/paper-column-engraver.cc (make_columns):
3821 * scm/define-grobs.scm: Revert my previous change and set the default
3822 in define-grobs.scm instead.
3824 2006-05-09 Graham Percival <gpermus@gmail.com>
3826 * Documentation/user/changing-defaults.itely: general editing,
3827 info about \set and \override.
3829 * Documentation/user/tweaking.itely, advanced-notation.itely:
3830 fixes from Dave Luttinen, thanks!
3832 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3834 * lily/paper-column-engraver.cc (make_columns): By default, a column
3835 needs to be breakable.
3837 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3839 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3841 (musicxml_time_to_lily): idem
3842 (musicxml_key_to_lily): idem
3843 (instrument_drumtype_dict): dict for supported drumtypes.
3844 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3845 moments and pending mm rests
3846 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3847 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3848 (musicxml_voice_to_lily_voice): add mode change.
3849 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3850 speed and less memory usage (factor 5 to 10).
3851 (convert): write -defs.ly and driver file separately so people
3852 can script their own part extraction.
3854 * python/musicxml.py (minidom_demarshal_node): new function:
3855 separate minidom handling.
3856 (lxml_demarshal_node): new function: support lxml.etree too.
3857 (Xml_node.message): new function: verbose error message, with XML
3858 path to offending node.
3859 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3860 (Part_list.generate_id_instrument_dict): new method: collect
3861 instrument names, to be able to set drum_type.
3862 (Part.interpret): handle underfull measures
3863 (Part.interpret): assign instrument names.
3865 * python/musicexp.py (Output_printer.close): new method
3866 (MusicWrapper.print_ly): new class: support other modes,
3868 (BarCheck.print_ly): new class. Support bar checks, with comments
3869 and fancy barchecks.
3870 (NoteEvent.__init__): also set drum_type for drum notes.
3871 (MultiMeasureRest.lisp_expression): dump mm rests.
3873 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3874 line-break-permission if forbidBreak is not set.
3876 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3878 * scm/define-context-properties.scm:
3879 * scm/define-grob-properties.scm:
3880 * scm/define-grobs.scm:
3881 * scm/define-music-display-methods.scm:
3882 * scm/define-music-properties.scm:
3883 * scm/define-music-types.scm:
3884 * scm/music-functions.scm:
3885 * ly/declarations-init.ly:
3886 * lily/include/constrained-breaking.hh:
3888 * lily/spaceable-grob.cc:
3889 * lily/simple-spacer.cc:
3890 * lily/paper-score.cc:
3891 * lily/paper-column.cc:
3892 * lily/paper-column-engraver.cc:
3894 * lily/gourlay-breaking.cc:
3895 * lily/constrained-breaking.cc:
3896 * python/convertrules.py:
3897 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3898 "page-break-penalty" and "line-break-permission".
3899 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3900 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3902 * lily/bar-engraver.cc:
3903 * lily/beam-engraver.cc:
3904 * lily/forbid-break-engraver.cc:
3905 * lily/ligature-engraver.cc:
3906 * lily/paper-column-engraver.cc:
3907 * lily/percent-repeat-engraver.cc:
3908 * lily/score-engraver.cc:
3909 * lily/score-engraver.hh:
3910 * lily/paper-column-engraver.hh:
3911 Inter-engraver communication regarding line breaks is done through context
3912 properties (Score.forbidBreak) instead of function calls.
3914 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3916 * VERSION (PACKAGE_NAME): release 2.9.4
3918 2006-05-08 Graham Percival <gpermus@gmail.com>
3920 * Documentation/user/working.itely: proofreading from Dave
3923 * Doucmentation/user/README.txt: updated with manual style info.
3925 * Documentation/user/ various: trim linewidth to 78 chars.
3927 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3929 * scm/define-grob-properties.scm (all-internal-grob-properties):
3930 remove chord-tremolo property.
3932 * lily/beam.cc (get_beam_segments): don't use stem position as
3933 base for broken ends.
3935 2006-05-06 Graham Percival <gpermus@gmail.com>
3937 * Documentation/user/putting.itely: proofreading from Dave
3940 * Documentation/user/ various: more reorg and clarifications.
3942 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3944 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3946 * ly/music-functions-init.ly: new function featherDurations
3948 * lily/beam.cc: read grow-direction for feathered beaming.
3950 * Documentation/topdocs/NEWS.tely (Top): typo.
3952 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3954 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3957 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3958 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3959 used by music streams.
3961 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3962 lily/stream-event.cc, lily/stream-event-scheme.cc,
3963 lily/listener.cc, lily/scheme-listener.cc,
3964 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3965 lily/include/stream-event.hh, lily/include/listener.hh,
3966 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3967 Created data structures for music streams.
3969 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3971 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3972 construction of a beam.
3975 * flower/include/std-vector.hh (default_compare): use only one comparison.
3977 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3978 (note-by-number): further attachment fixes.
3980 * scm/lily-library.scm (ordered-cons): new function.
3981 (interval-index): new function
3983 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3985 * lily/note-head.cc (get_stem_attachment): new function.
3987 * scm/define-markup-commands.scm (note-by-number): read 'style
3990 * input/regression/markup-note.ly: show note-head style option.
3992 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3995 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3997 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3999 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4001 * lily/include/constrained-breaking.hh: GCC 4 fix.
4003 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4005 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4006 Replace it with functions get_line_forces and get_line_configuration.
4007 (class Simple_spacer): Make data private.
4008 Rewrite compression algorithm to be faster and simpler.
4010 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4011 * lily/gourlay-breaking.cc (solve):
4012 * lily/constrained_breaking.cc (space_line):
4013 Change it to the new simple-spacer code.
4015 * lily/paper-score.cc (get_paper_systems):
4018 Delay breaking the systems until they are requested.
4019 (find_break_indices):
4020 Use vsize for indices.
4022 Move the "Calculating line breaks" message here.
4024 * lily/system.cc (pre_processing):
4025 Move the "Calculating line breaks" message away from here.
4026 (break_into_pieces):
4027 Allow multiple calls to this function in sequence (with touching-but-
4028 not-overlapping breakpoints).
4030 * lily/constrained-breaking.cc:
4031 Replace most of the get_XXXX functions with get_line_details.
4032 Only calculate the force for each line. Calculate configurations only
4033 for the lines we will actually use.
4034 Replace cols_ with lines_.
4036 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4038 * mf/GNUmakefile (depth): remove FC_FIND.
4040 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4042 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4044 * scm/framework-ps.scm (write-preamble): new function.
4045 (write-preamble): load mac fonts via fondu, even if gs-font-load
4048 2006-05-03 Werner Lemberg <wl@gnu.org>
4050 * mf/GNUmakefile (FC_FIND): Fix typo.
4052 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4054 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4056 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4058 * stepmake/aclocal.m4: run python-config for crosscompiling
4061 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4062 -f png for HTML, TEXINFO formats.
4064 * input/tutorial/lbook-html-test.html: new file.
4066 * lily/include/tie-formatting-problem.hh (class
4067 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4068 [column, direction]. This fixes laissez vibrer ties.
4070 * flower/include/tuple.hh (struct Tuple2): new file.
4072 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4073 $(FCMATCH), only if $(NCSB_DIR) not set.
4075 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4077 * config.make.in (DOCUMENTATION): set FCMATCH.
4079 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4081 2006-05-03 Graham Percival <gpermus@gmail.com>
4083 * Documentation/user/ various: final round of reorg.
4085 * Documentation/user/instrument-notation.itely: some more
4086 fixes from Eduardo, thanks!
4088 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4090 * VERSION (PACKAGE_NAME): release 2.9.3
4092 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4094 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4096 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4098 * scm/define-grob-properties.scm (all-user-grob-properties):
4099 Correct typo, thanks to Eduardo.
4101 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4103 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4105 * buildscripts/lilypond-words.py (F): indent fix.
4107 * input/regression/tie-arpeggio-collision.ly: new file.
4109 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4110 function: store outlines per column rank.
4112 * lily/include/tie-configuration.hh (class Tie_configuration): add
4113 column_ranks_ to specification and configuration, to distinguish
4114 between ties for different heads in arpegiated chords.
4116 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4118 * *.py: more 4 space indents.
4120 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4122 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4124 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4126 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4128 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4130 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4132 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4134 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4136 * python/convertrules.py (conv): indent 4 for python files.
4138 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4140 * Documentation/user/changing-defaults.itely (Creating contexts):
4141 Clarify \new semantics.
4143 2006-04-28 Graham Percival <gpermus@gmail.com>
4145 * Documentation/user/ various: major new sections in the
4146 Learning manual, slight reorg elsewhere.
4148 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4150 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4152 * scm/framework-ps.scm (output-framework): remove PageMedia
4154 2006-04-27 Graham Percival <gpermus@gmail.com>
4156 * Documentation/user/ tweaks.itely, working.itely: new
4157 files, being more advanced "learning manual" chapters.
4159 * Documentation/user/ tutorial, putting, lilypond: reorg.
4161 2006-04-26 Graham Percival <gpermus@gmail.com>
4163 * input/regression/lyric-combine-polyphonic.ly: fixed test
4164 (no more "can't find context `one'" error).
4166 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4168 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4170 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4172 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4174 * lily/relocate.cc (read_relocation_dir): new function.
4176 2006-04-26 Graham Percival <gpermus@gmail.com>
4178 * Documentation/user/instrument-notation.itely: a few more fixes
4179 from Eduardo, thanks!
4181 * Documentation/user/README.txt: new file; contains info on
4182 style that used to be in lilypond.tely.
4184 * Documentation/user/ various: first round of doc reorg.
4186 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4187 graphic; this probably causes problems on some pdf
4188 viewers, notably Adobe Acrobat.
4190 2006-04-24 Graham Percival <gpermus@gmail.com>
4192 * Documentation/user/instrument-notation.itely: many alterations
4193 to Vocal music, from Eduardo Viera.
4195 2006-04-23 Graham Percival <gpermus@gmail.com>
4197 * Documentation/user/instrument-notation.itely: fix \new
4198 instead of \context problem.
4200 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4202 * lily/relocate.cc (expand_environment_variables): new function.
4204 (read_relocation_file): id.
4206 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4208 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4210 * ly/engraver-init.ly: remove old comments from TabVoice
4212 2006-04-20 Graham Percival <gpermus@gmail.com>
4214 * Documentation/user/instrument-notation.itely: added Erlend's
4215 latest doc patch, thanks!
4217 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4219 * lily/include/slur.hh:
4221 * lily/phrasing-slur-engraver.cc:
4222 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4223 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4224 Slur_engraver:: and putting it in
4225 Slur::auxiliary_acknowledge_extra_object ().
4227 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4229 * lily/note-collision.cc: fix a comment
4231 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4233 * stepmake/bin/add-html-footer.py: fix footer position in
4234 generated html files: before </body> and </html> tags.
4236 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4238 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4239 Earlier successive `make' commands finally compiled ok.
4241 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4243 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4245 * lily/include/stem-tremolo.hh:
4246 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4250 * lily/include/lookup.hh: add rotated_box ()
4252 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4254 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4255 been generated. Fixes "can't get `--help'" bug after make clean.
4257 * THANKS: alphabetize contributors.
4259 2006-04-17 Graham Percival <gpermus@gmail.com>
4261 * Documentation/user/instrument-notation.itely: added Erlend's
4262 tabs and banjo doc patch. Thanks!
4264 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4266 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4268 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4270 * scm/output-lib.scm: add some more predefined string tunings.
4272 * Documentation/user/instrument-notation.itely: and doc them.
4274 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4276 * ly/engraver.ly: Remove obsolete comments.
4278 * ly/gregorian-init.ly: Define default layout block.
4280 * input/puer-fragment.ly: Updated and extended.
4282 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4284 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4285 pdf conversion behaviour.
4287 * flower/file-name.cc (dir_name)
4288 (get_working_directory): Move from relocate.cc.
4290 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4292 * lily/relocate.cc: Encapsulate sys/stat.h in
4295 2006-04-14 Graham Percival <gpermus@gmail.com>
4297 * Documentation/user/ various: small updates from Cameron
4298 and Juergen, thanks!
4300 * Documentation/user/ various: small updates of my own.
4302 * THANKS: 2.7 -> 2.8.
4304 2006-04-11 Graham Percival <gpermus@gmail.com>
4306 * scm/define-context-properties.scm: typo.
4308 * Documentation/user/ : many more small updates.
4310 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4312 * scm/define-music-types.scm: disposed "docme".
4314 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4316 * lily/hairpin.cc: make niente circles a bit smaller.
4318 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4320 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4321 get-pfa and get-*-fonts targets.
4323 2006-04-10 Graham Percival <gpermus@gmail.com>
4325 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4326 music-glossary, programming-interface: more minor fixes
4329 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4331 * scm/define-context-properties.scm: another old \property update.
4332 This time tested for compiling!
4334 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4336 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4338 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4340 * scm/define-context-properties.scm (all-user-translation-properties):
4341 * Documentation/user/global.itely (Page formatting): Compile fix.
4343 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4345 * Documentation/user/advanced-notation.itely (Polymetric
4346 notation): Update the example to use the "+" symbol and add link
4347 to input/test/compound-time.ly.
4349 2006-04-08 Graham Percival <gpermus@gmail.com>
4351 * scm/define-grob-properties.scm: clarify docs for #'direction.
4353 * scm/define-context-properties.scm: update old \property override.
4355 * Documentation/user/ advanced-notation, global, lilypond-book:
4356 more minor doc updates.
4358 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4360 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4362 * scm/backend-library.scm (search-gs): oops.
4364 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4366 * scripts/lilypond-book.py (output): use base, not filename for href.
4368 * scm/backend-library.scm: only look for gs.
4370 * scripts/lilypond-book.py (output): fix printfilename.
4372 * lily/parser.yy (music_function_musicless_prefix): fold together
4373 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4375 * lily/slur.cc (print): only set font-size if not set yet.
4377 * lily/slur-configuration.cc (add_score): improved layout of debug
4380 2006-04-05 David Feuer <David.Feuer@gmail.com>
4382 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4383 (draw_circle): Hopefully fixed regression.
4384 Improved documentation for several procedures.
4386 2006-03-04 Werner Lemberg <wl@gnu.org>
4388 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4390 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4392 * scripts/musicxml2ly.py (bindir): add dynamic
4395 2006-04-04 Graham Percival <gpermus@gmail.com>
4397 * Documentation/user/ basic-notation, advanced-notation, putting,
4398 instrument-notation, invoking, lilypond, THANKS: another ream of small
4399 fixes from the Doc Helpers.
4401 2006-04-03 David Feuer <David.Feuer@gmail.com>
4403 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4405 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4407 * Cleaned up interfaces between PostScript and Scheme, and moved
4408 computations from PostScript to Scheme:
4410 * music-drawing-routines.ps
4411 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4412 with stroke_and_fill throughout.
4413 (euclidean_length, print_letter, draw_box): Deleted unused
4414 procedures. If someone needs draw_box, implement it using
4415 draw_round_box; don't duplicate code.
4416 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4417 Refactored/cleaned up interfaces.
4420 * output-ps.scm: reordered arguments to PostScript functions to
4421 match new interfaces
4422 (glyph-string): Rewrote glyph-string.
4423 (grob-cause): Replaced string-append with format.
4424 (repeat-slash): Rewrote to do computation here.
4425 (round-filled-box): Rewrote to do computation here.
4427 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4429 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4431 * stepmake/stepmake/toplevel- targets.make: print help info about
4434 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4436 * input/regression/hairpin-circled.ly: new file
4438 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4440 * lily/hairpin.cc (print): add support for circled tip
4442 * scm/define-grob-properties.scm: add circled-tip parameter
4444 * scm/define-grobs.scm: init circled-tip to false
4446 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4448 * scm/music-functions.scm (quote-substitute): set
4451 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4453 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4456 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4458 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4460 2006-03-31 David Feuer <david.feuer@gmail.com>
4462 * scm/framework-ps.scm:
4464 * scm/output-ps.scm: glyph-string now produces smaller, more
4465 readable, and probably faster PostScript. Several findfont
4466 scalefont setfont instances changed to selectfont
4467 Hacked-up string-appends changed to formats.
4469 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4471 2006-03-30 Graham Percival <gpermus@gmail.com>
4473 * scm/lily-library.scm: make "no version" warning message more polite.
4475 * lily/music.cc: add double quotes to failed octave check.
4477 * Documentation/user/ advanced-notation, changing-defaults,
4478 instrument-notation, invoking, music-glossary: whole bunch of minor
4481 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4483 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4484 $(buildscriptdir) iso. depth.
4486 * VERSION (PACKAGE_NAME): release 2.9.1
4488 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4490 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4492 * VERSION (PATCH_LEVEL): bump version number.
4494 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4497 * lily/pango-font.cc (pango_item_string_stencil): use
4500 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4501 $(outdir)/emmentaler-%.svg): remove canary.
4503 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4504 glyphnames if we have a ttf font.
4506 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4508 * Documentation/user/advanced-notation.itely (Font selection):
4509 Corrected reference to the font-family-override.ly example.
4511 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4513 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4514 stem-tremolo object in the stem (or else the stem might not be
4517 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4519 * lily/ttf.cc (print_trailer): only print existing glyphs.
4521 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4523 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4524 position the tremolo based on the position of the notehead.
4526 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4527 notes and update the texidoc line with the new positioning rules.
4529 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4531 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4533 * scripts/lilypond-book.py (Module): set default for linewidth if
4536 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4538 * VERSION (PACKAGE_NAME): release 2.9.0.
4540 * input/regression/stem-tremolo-position.ly: new file.
4542 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4544 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4546 * lily/stem-tremolo.cc (print): position
4547 the tremolo depending only on the end of the stem
4548 and not on the notehead
4549 (raw_stencil): center, on the middle staff line, the
4550 flag that is closest to the end of the stem (previously
4552 (calc_width): add this callback to shorten a tremolo when
4553 it is beamed or it is stemup with a flag
4554 (style): add this callback to make a tremolo rectangular when
4555 it is beamed or it is stemup with a flag
4556 (rotated_box): this is like Lookup::beam but makes a rotated
4557 rectangle instead of a parallelogram
4559 * lily/stem.cc (calc_stem_info): make sure the stem
4560 is long enough to fit the tremolo
4561 (calc-length): reduce the length of tremolo stems since the
4562 tremolo code is now capable of better positioning
4564 * scm/define-grobs.scm: make calc_width the default beam-width
4565 callback for stem-tremolo and add the style callback
4567 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4569 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4572 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4574 * lily/ttf.cc (make_index_to_charcode_map): restore old
4577 2006-03-28 Werner Lemberg <wl@gnu.org>
4579 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4581 2006-03-28 Graham Percival <gpermus@gmail.com>
4583 * THANKS: update for 2.9, add section for Documentation helpers.
4585 * Documentation/topdocs/NEWS.tely: compile fix.
4587 * Documentation/user/ basic-notation, global, advanced-notation,
4588 examples.itely: minor fixes from mailist.
4590 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4592 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4595 * lily/ttf.cc (print_trailer): use it.
4597 * lily/pango-font.cc (get_unicode_name): new function.
4599 * lily/ttf.cc (make_index_to_charcode_map): move function from
4601 (print_trailer): substitute uniXXXX name if applicable.
4603 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4604 (pango_item_string_stencil): use it to generate uniXXXX names.
4606 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4607 note heads, for uniform widths in shape note output.
4608 (overdone_heads): hmm. remove them again.
4610 * scripts/lilypond-book.py (output): add links to filenames.
4612 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4614 * lily/note-collision.cc (get_clash_groups): only consider when
4615 Note_column::dir <> CENTER.
4617 * scripts/lilypond-book.py (get_option_parser): init output_name
4620 2006-03-24 Graham Percival <gpermus@gmail.com>
4622 * Documentation/topdocs/NEWS.tely: add @end itemize
4624 * Documentation/user/ global, advanced-notation: minor
4627 2006-03-23 Graham Percival <gpermus@gmail.com>
4629 * Documentation/user/ lilypond.tely, music-glossary,
4630 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4632 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4634 * mf/GNUmakefile: don't install .enc files.
4636 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4638 * VERSION (PATCH_LEVEL): bump to 2.9.0
4640 2006-03-22 Graham Percival <gpermus@gmail.com>
4642 * Documentation/user/advanced-notation.itely: minor fixes
4645 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4647 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4649 * branch lilypond_2_8
4651 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4653 * scripts/lilypond-book.py (samefile): new function, for windoze
4656 2006-03-21 Graham Percival <gpermus@gmail.com>
4658 * ly/engraver-init.ly: add info about StaffGroup.
4660 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4662 * input/regression/stem-direction-context.ly: idem.
4664 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4668 * input/regression/page-layout-twopass.ly: comment out \markup so
4671 * lily/instrument-name-engraver.cc (finalize): add to instrument
4672 name global System. This also fixes chopped instrument names, but
4673 doesn't crash when there are slurs/beams.
4675 * lily/slur-configuration.cc (add_score): disallow negative slur
4678 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4680 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4682 * lily/instrument-name-engraver.cc (process_music): kludge: add
4683 InstrumentName spanner to axis group of left bound. Fixes chopped
4684 off instrument names in EPS images.
4686 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4688 * scripts/abc2ly.py (option_parser): update to 2.7.40
4690 2006-03-20 Graham Percival <gpermus@gmail.com>
4692 * THANKS: move small doc contributors to SUGGESTIONS.
4694 * Documentation/user/ basic-notation, advanced-notation,
4695 global: small changes from mailist.
4697 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4699 * Documentation/user/advanced-notation.itely (Text marks): update
4700 for new rehearsalMarkAlignSymbol convention.
4702 * VERSION (PATCH_LEVEL): bump version.
4704 * input/test/instrument-name-align.ly: new file.
4706 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4708 * input/test/instrument-name-align.ly: new file. Document how to
4709 align instrument names.
4711 * lily/mark-engraver.cc: remove properties.
4713 * scm/define-context-properties.scm
4714 (all-user-translation-properties): remove align symbol properties
4715 for barnumber/reh. mark.
4717 * lily/break-align-interface.cc (self_align_callback): new
4718 interface, new function. Look at complete alignment. This handles
4719 tunable break alignments in case break-align-symbols are missing.
4721 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4723 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4725 * python/convertrules.py (conv): mark/bar number alignment rule.
4727 * lily/break-align-interface.cc (calc_positioning_done): also
4728 store offset from last visible break-alignment to its
4729 neighbor. This makes alignment on non-visible objects more reliable.
4731 * po/lilypond.pot (Module): ran po-replace.
4733 * input/regression/tie-single-manual.ly (Module): new file.
4735 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4736 look at has_manual_position_.
4737 (from_ties): set has_manual_position_ if tie has staff-position set.
4739 * lily/tuplet-bracket.cc (calc_positions): idem.
4741 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4744 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4746 * scm/define-markup-commands.scm (smallCaps): new markup command
4747 for turning a text to small caps using smaller font size and upper
4750 2006-03-17 Graham Percival <gpermus@gmail.com>
4752 * Documentation/user/ examples, instrument-notation,
4753 advnaced-notation: minor fixes from mailist.
4755 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4757 * Documentation/user/tutorial.itely (First steps): change example
4760 2006-03-17 Graham Percival <gpermus@gmail.com>
4762 * Documentation/user/ examples, advanced: minor changes from mailist.
4764 * THANKS: add Geoff Horton, for documentation stuff.
4766 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4768 * python/lilylib.py (system): revert have_select kludge.
4770 * Documentation/user/tutorial.itely (Commenting input files):
4771 update version numbers in doc.
4773 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4774 bound-padding to multi-measure-interface
4776 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4778 * input/test/engraver-example.ily: update version number.
4780 * VERSION (PACKAGE_NAME): release 2.7.39
4782 * lily/note-spacing.cc (get_spacing): heighten threshold where
4783 accidentals/arpeggios influence previous spacing fully.
4785 * lily/rest.cc (y_offset_callback): only use direction if
4786 staff-position wasn't set before.
4788 * lily/bar-number-engraver.cc: add support for
4789 barNumberAlignSymbol.
4790 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4792 * lily/pointer-group-interface.cc (set_ordered): new function.
4793 (add_unordered_grob): new function.
4795 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4796 to ordered, unless the opposite has been proved. This fixes
4797 random reordering of large object groups across linebreaks,
4800 * lily/main.cc (do_chroot_jail): printf format fix.
4802 * lily/tie-formatting-problem.cc (generate_configuration):
4803 multiply y-shift for dot with direction.
4805 * scm/define-markup-commands.scm (note-by-number): put (magstep
4806 size) in y-attach too.
4808 * Documentation/topdocs/NEWS.tely (Top): show override.
4810 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4811 direction for stems.
4813 2006-03-15 Graham Percival <gpermus@gmail.com>
4815 * Documentation/user/ changing-defaults, global: minor
4818 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4820 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4822 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4823 breakable items after uniformly stretched notes.
4825 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4826 outline with outer edge of note heads. This prevents infinity
4827 problems with tied whole notes.
4829 * scripts/lilypond-book.py (do_file): use os.popen
4831 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4833 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4835 * Documentation/user/invoking.itely: Add ragged-right to bug report
4838 2006-03-14 Graham Percival <gpermus@gmail.com>
4840 * Documentation/user/global.itely: small fix from mailist.
4842 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4844 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4845 file descriptor returned by tempfile.mkstemp() when writing
4846 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4849 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4851 * po/fi.po: newline bugfix.
4853 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4855 * scm/paper.scm (paper-alist): Rounding fixes.
4857 2006-03-13 Graham Percival <gpermus@gmail.com>
4859 * Documentation/user/ changing-defaults, instrument-notation,
4860 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4862 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4866 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4868 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4871 * python/lilylib.py (print_environment): move ps_page_count to
4874 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4876 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4878 * scm/framework-ps.scm (embed-document): new function. Use to
4881 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4883 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4885 * Documentation/user/instrument-notation.itely (Setting simple
4886 songs): Added \book{...} around the full example, so the separate
4887 markups are included in the printed example.
4889 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4891 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4894 * python/lilylib.py (system): rewrite system() using
4895 subprocess. Remove >& redirection trickery.
4897 2006-03-11 Graham Percival <gpermus@gmail.com>
4899 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4900 notation-appendices.itely: minor fixes from mailist.
4902 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4904 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4905 unsplit man also needs images.
4907 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4909 * VERSION (PACKAGE_NAME): 2.7.38 released.
4911 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4913 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4916 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4918 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4919 respects the Score.skipTypesetting property.
4921 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4923 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4924 Prolog. No %%EOF after CFF file.
4926 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4928 * lily/constrained-breaking.cc (get_max_systems): used to return a
4930 (combine_demerits): use pointers to reduce copying data
4931 (calc_subproblem): idem
4932 (get_page_penalty): add page turn penalties
4934 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4936 * Documentation/user/invoking.itely (Invoking lilypond): better
4937 explanation of -e usage.
4939 * lily/main.cc (main_with_guile): don't append to
4940 init_scheme_code_string
4942 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4944 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4946 * scripts/convert-ly.py (do_options): don't print help for
4949 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4950 @code and @example. Update from texinfo.tex from CVS.
4952 2006-03-08 Graham Percival <gpermus@gmail.com>
4954 * Documentation/user/scheme-tutorial.itely: clarifies distances
4955 measured in staff-spaces.
4957 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4959 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4960 consider[k] is true.
4962 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4964 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4965 consider columns that have originals. Unifies spacing for mm
4966 rests around line breaks.
4968 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4969 (set_text_rods): idem.
4970 (calculate_spacing_rods): new function: share code between
4971 set_text_rods and set_spacing_rods.
4972 (set_text_rods): take extents of bounds into account.
4974 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4976 * Documentation/user/basic-notation.itely (Writing music in
4977 parallel): don't use relative.
4979 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4981 * ly/music-functions-init.ly (Module): add shiftDurations
4983 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4985 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4987 * ly/engraver-init.ly: init vocalName to nil.
4989 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4991 * scm/music-functions.scm (music->make-music): bugfix,
4992 KeyChangeEvents are now handled correctly.
4994 * scripts/lilypond-book.py: Add --debug option.
4996 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4998 * python/lilylib.py: add tempfile.
5000 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5002 * VERSION (PACKAGE_NAME): release 2.7.37
5004 * python/lilylib.py (ps_page_count): remove make_ps_images().
5005 (ps_page_count): remove mkdir_p
5006 (system): remove cleanup_temp.
5007 (exit): remove lilypond_version_(check)
5008 (error_log): remove pseudo_filter_p
5013 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5016 * lily/accidental-engraver.cc (make_standard_accidental): only add
5017 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5019 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5020 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5021 Make incompatibilities.
5023 * scm/output-ps.scm (grob-cause): replace backslashes by /
5024 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5026 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5028 * cygwin/GNUmakefile: Install fixes.
5030 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5032 * lily/note-head.cc (head::get_balltype): Compile fix.
5034 * flower/file-name.cc (dos_to_posix): Flower string fix.
5036 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5038 * python/lilylib.py: pychecker cleanups.
5040 * scripts/lilypond-book.py
5041 (Lilypond_snippet.output_print_filename): pychecker cleanups
5043 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5045 * python/lilylib.py (underscore): remove identify() , warranty()
5047 * ps/music-drawing-routines.ps: change Border routine for GSView
5050 * lily/stem.cc (height): use quantize-positions. This triggers
5051 set_stem_lengths, so scripts on beamed stems are handled correctly.
5053 * lily/side-position-interface.cc (aligned_side): check if edges
5054 of script are inside staff. Fixes accent of edge of the staff.
5056 * input/regression/staccato-pos.ly: more examples.
5058 * stepmake/aclocal.m4 (depth): fix bashism.
5060 * lily/lyric-combine-music-iterator.cc: move from
5061 new-lyric-combine-iterator.cc
5062 (process): add pending_grace_lyric_ member to delay lyrics on
5065 * lily/system-start-text.cc (print): suicide if we don't have any
5066 elements. Fixes hara kiri'd instrument names.
5068 * scripts/mup2ly.py (Module): remove.
5070 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5072 * Documentation/user/global.itely (A single music expression):
5073 close @lilypond properly
5075 * lily/volta-bracket.cc (modify_edge_height): change from
5076 after_line_breaking_callback. Suicide last bracket if appropriate.
5078 * python/lilylib.py: strip getopt support
5080 * scripts/etf2ly.py (do_options): use optparse
5082 * scripts/midi2ly.py: optparse, strip lilylib copy.
5084 * scripts/abc2ly.py (voices): use optparse.
5086 * stepmake/stepmake/generic-vars.make: new function absdir.
5088 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5090 * scripts/lilypond-book.py (find_file): use global_options for
5093 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5096 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5098 * python/lilylib.py (get_global_option): ughness for extracting
5099 global options from lilylib.
5100 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5102 * scripts/lilypond-book.py (get_option_parser): use optparse for
5103 option handling. Put options in global_options variable.
5105 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5107 * Documentation/index.html.in: clarify.
5109 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5111 * scm/layout-page-layout.scm (write-page-breaks): add a
5112 music-system-heights property to the page layout output.
5114 * scm/page.scm (make-page-stencil): take footer into account when
5115 computing the 'space-left page property
5116 (annotate-space-left): take footer into account when annonating
5119 2006-02-28 Graham Percival <gpermus@gmail.com>
5121 * Documentation/user/ advanced-notation, global: more (final)
5122 docs for music expressions, removed special fermatas.
5124 2006-02-27 Graham Percival <gpermus@gmail.com>
5126 * Documentation/user/ basic-notation, global: minor changes
5129 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5131 * scm/framework-ps.scm:
5132 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5133 layer for inf? and nan? from framework-ps to lily-library.
5135 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5137 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5138 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5140 * buildscripts/substitute-encoding.py (Module): remove file.
5142 * mf/GNUmakefile: more PFA strippage.
5144 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5146 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5149 * scm/framework-ps.scm: remove font name munging.
5151 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5153 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5155 * scm/markup.scm (define-markup-command): change
5156 def-markup-command to define-markup-command
5158 * scm/music-functions.scm (define-music-function): change
5159 def-music-function to define-music-function.
5161 * python/convertrules.py (conv): rules for def-music-function
5162 and def-markup-commands
5164 * Documentation/user/programming-interface.itely,
5165 input/no-notation/display-lily-tests.ly,
5166 input/regression/lily-in-scheme.ly,
5167 input/regression/markup-user.ly,
5168 input/regression/music-function.ly, input/regression/tie-chord.ly,
5169 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5170 ly/gregorian-init.ly: use new macro names (define-music-function,
5171 define-markup-command).
5173 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5175 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5176 (output): add comments to lp-book latex output.
5178 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5181 2006-02-23 Graham Percival <gpermus@gmail.com>
5183 * Documentation/user/ tutorial, global: minor changes.
5185 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5187 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5188 blocks (for make 3.80)
5190 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5191 \notemode so that user should not have to explicitely type it.
5193 * scm/define-music-display-methods.scm: various
5194 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5197 * input/no-notation/display-lily-tests.ly: new tests for
5198 \applyOutput and \applyContext
5200 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5202 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5203 changed it slightly so that the number of systems returned by
5204 solve () will be the same as the last value passed to resize
5205 (). I've also added more documentation, removed casts, fixed style
5206 problems and put in some recovery if constraints aren't satisfied."
5208 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5210 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5211 for emacs < 22 compatibility.
5212 (count-rexp): Use it.
5213 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5214 substring juggling (Milan Zamazal).
5216 2006-02-23 Graham Percival <gpermus@gmail.com>
5218 * Documentation/user/ basic-notation, advanced-notation,
5219 global.itely, invoking.itely, tutorial,itely:
5220 minor fixes from mailist.
5222 * scm/define-markup-commands.scm: improve docs of \filled-box.
5224 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5226 * Documentation/index.html.in: changes concern the previous release.
5228 * input/regression/+.ly: cultivate typographical terminology.
5230 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5232 * scm/define-grob-interfaces.scm (parentheses-interface): add
5233 padding to parentheses-interface.
5235 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5236 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5238 * VERSION (PATCH_LEVEL): release 2.7.36
5240 * lily/slur.cc: add avoid-slur (ugh.)
5242 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5243 intersection gets smaller. This fixes slurs over extreme points.
5245 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5246 stems with neutral-direction set.
5248 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5250 * lily/open-type-font.cc (load_table): format error.
5252 * lily/change-iterator.cc (process): format fix.
5254 * flower/include/international.hh (_f): idem.
5256 * flower/include/std-string.hh: add format printf attribute.
5258 * scm/define-grobs.scm (all-grob-descriptions): height of all
5259 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5261 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5264 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5266 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5268 * input/regression/: upgraded syntax for some files.
5270 * THANKS: Add bughunters.
5272 2006-02-22 Graham Percival <gpermus@gmail.com>
5274 * Documentation/user/ invoking.itely, advanced-notation.itely,
5275 global.itely: long-awaited "let's make chapter 10 not suck"
5276 update. Rearrange chapter 10; now called "global issues",
5277 addresses file structure, etc. Some info from other files
5278 moved into global.itely.
5280 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5282 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5283 catch trill-span-event notes.
5285 * Documentation/user/examples.itely (Ancient notation templates): typo.
5288 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5290 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5292 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5294 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5296 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5297 froum Laissez_vibrer_engraver.
5299 * ly/declarations-init.ly (repeatTie): add \repeatTie
5301 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5303 * scm/define-grob-properties.scm (all-user-grob-properties): add
5304 head-direction property.
5306 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5307 from_lv_ties. Take head direction argument.
5309 * lily/semi-tie-column.cc: rename from
5310 laissez-vibrer-tie-column.cc. Rename class too.
5312 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5315 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5317 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5319 (find_breaks): idem.
5321 2006-02-21 Graham Percival <gpermus@gmail.com>
5323 * Documentation/user/advanced-notation.itely: fixed make-moment]
5326 * Documentation/user/basic-notation.itely: more clarification to
5329 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5331 * lily/include/constrained-breaking.hh (class
5332 Constrained_breaking): new file.
5334 * lily/constrained-breaking.cc (resize): new file.
5336 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5338 * Documentation/user/advanced-notation.itely (Clusters): insert
5341 * lily/tie-column.cc (calc_positioning_done): support for
5344 * lily/tie-formatting-problem.cc
5345 (generate_extremal_tie_variations): factor out.
5346 (score_ties_configuration): annotate all tie
5347 (print_ties_configuration): new routine.
5348 (generate_configuration): nudge extremal ties outside of the head
5350 (score_ties_configuration): oops. convert to staff-space before
5351 determining position symmetry.
5353 2006-02-20 Graham Percival <gpermus@gmail.com>
5355 * Documentation/user/*-notation.itely: misc minor editing,
5356 shifting doc sections around.
5358 * Documentation/user/*-notation-itely, global.itely,
5359 changing-defaults.itely: added new stuff from NEWS.
5361 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5365 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5367 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5368 lilypond --verbose for lp-book.
5370 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5371 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5373 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5374 $(buildscript-dir) iso. absolute depth.
5376 * buildscripts/genicon.py (dir): thinko.
5378 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5380 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5382 * scm/output-lib.scm: swap darkcyan/darkyellow
5384 * THANKS: Add bughunters.
5386 2006-02-19 Graham Percival <gpermus@gmail.com>
5388 * Documentation/user/programming-interfaces.itely: fixed example.
5390 * Documentation/user/instrument-notation.itely: fix @{ @}.
5392 * scm/script.scm: add avoid-slur for \open.
5394 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5396 * lily/tie-formatting-problem.cc (score_configuration): use
5397 sliding score for min-length.
5399 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5400 spaghetti for icons.
5402 * buildscripts/genicon.py (program_name): new file.
5404 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5406 (generate_configuration): for small ties, also look for collisions
5407 at Y + DIR*h + DELTA_Y.
5408 (get_variations): consider variation for dot positions too.
5410 * lily/side-position-interface.cc (aligned_side): take abs for
5411 quantized rounded position. Fixes tenuto below staff.
5413 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5414 markers when necessary.
5416 * lily/program-option.cc (internal_set_option): add
5417 strict_infinity_checking option.
5419 * scm/output-lib.scm (cyan): swap yellow and cyan.
5421 2006-02-19 Graham Percival <gpermus@gmail.com>
5423 * darwin.patch: trivial linenumber update.
5425 * Documentation/user/ {various}: `\context foo = named' changed
5426 to `\new foo = "name"' in docs.
5428 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5430 * scm/stencil.scm (annotate-y-interval): use it.
5432 * scm/lily-library.scm (interval-sane?): new function.
5434 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5437 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5440 * flower/include/std-vector.hh (iterof): add iterof macro.
5442 * lily/enclosing-bracket.cc (width): new function.
5444 * lily/align-interface.cc (align_elements_to_extents): reinstate
5447 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5449 * Documentation/index.html.in: fix spelling: thankyous.
5451 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5453 * lily/lyric-hyphen.cc: typo.
5455 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5457 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5458 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5461 * VERSION: release 2.7.35
5463 * lily/beam.cc (get_default_dir): oops. Take abs () for
5465 (get_default_dir): use extreme position criterion only in absence
5466 of forced stem directions.
5468 * VERSION (PATCH_LEVEL): bump VERSION.
5470 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5471 dependencies. Necessary for -jX builds.
5473 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5475 * lily/relocate.cc (setup_paths): Yet another const fix.
5477 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5479 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5481 * lily/relocate.cc (setup_paths): oops.
5483 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5485 * Documentation/index.html.in: order links: html before PDF.
5487 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5489 * lily/tie-column-format.cc (Module): remove.
5491 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5493 * lily/text-spanner.cc (print): idem.
5495 * lily/dynamic-text-spanner.cc (print): only print line if longer
5498 * lily/auto-change-iterator.cc (change_to): formatting.
5500 * lily/beam.cc (get_default_dir): take extreme note head as input
5503 * lily/tie.cc (get_default_dir): only look directions for visible
5506 * lily/side-position-interface.cc (aligned_side): oops. Don't
5507 mutiply with direction. This fixes quantized (staccato, tenuto)
5508 scripts below notes.
5510 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5511 direction. Fixes c-lyrics-center-align.ly
5513 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5515 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5518 * lily/std-string.cc:
5519 * lily/include/std-vector.hh (split_string): Move and rename from
5520 lily/include/misc.hh, lily/misc.cc. Update callers.
5522 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5524 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5526 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5528 * flower/test-file.cc: New file.
5530 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5533 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5535 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5537 * flower/include/file-storage.hh: remove file.
5539 * lily/include/midi-item.hh (class Midi_track): idem.
5541 * lily/include/source.hh (class Sources): idem.
5543 * lily/include/performance.hh (class Performance): use vector
5546 * flower/include/cons.hh (class Cons): remove file.
5548 * flower/include/flower-proto.hh: remove template cruft.
5550 * lily/include/font-metric.hh: use size_t not vsize for indices.
5552 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5555 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5557 * lily/include/paper-book.hh (class Paper_book):
5558 make get_system_specs() public.
5560 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5561 the force=10000 case if we don't have a current-best.
5563 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5566 * flower/include/flower-proto.hh: remove outdated templates.
5568 * scm/page.scm: use annotate-spacing
5570 2006-02-15 Graham Percival <gpermus@gmail.com>
5572 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5574 * THANKS: moved Erlend Aasland to contributors.
5576 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5578 * config.hh.in: remove HAVE_PANGO_16
5580 * lily/tuplet-bracket.cc (calc_positions): multiply with
5581 staff-space for beam case. This fixes tuplets+beams on scaled
5584 * config.hh.in: remove all Kpathsea related defines.
5586 * lily/dot-column.cc (side_position): reach stem via dots->
5587 head->stem. Inspect all stems for dot collisions.
5589 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5592 * lily/bar-number-engraver.cc (process_music): document function
5595 * lily/score.cc (default_rendering): add pscore, not systems
5598 * lily/paper-book.cc (get_system_specs): separate generation of
5601 * flower/include/std-vector.hh: don't include config.hh
5603 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5605 * flower/include/std-vector.hh: Better wrapper compatibility with
5608 * flower/include/flower-proto.hh: Remove cheap forward declaration
5611 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5613 2006-02-14 Graham Percival <gpermus@gmail.com>
5615 * Documentation/user/invoking.itely: add warning about command line.
5617 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5619 * lily/include/lily-proto.hh: add Prob, rm Page.
5621 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5623 * VERSION: release 2.7.34
5625 * lily/relocate.cc (framework_relocation): show canary if
5626 GHOSTSCRIPT_VERSION undefined.
5628 * GNUmakefile.in: remove $(VERSION) symlink.
5630 * lily/relocate.cc (setup_paths): add +
5632 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5634 * Documentation/index.html.in: specify sizes for all big HTML pages.
5636 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * config.hh.in: remove @FRAMEWORKDIR@
5640 * lily/system-start-text.cc (get_stencil): new file: separate out
5641 system-start-delimiter text support.
5643 * input/**ly: replace \context with \new where appropriate.
5647 * lily/slur-scoring.cc (get_base_attachments): use
5648 robust_relative_extent. This fixes problems with empty paper-columns.
5650 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5652 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5654 * scm/define-music-properties.scm (all-music-properties):
5655 create-new property.
5657 * lily/context-specced-music-iterator.cc (construct_children):
5658 inspect 'create-new property iso. magical $uniqueContextId context
5661 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5663 * lily/context-key-manager.cc (Module): new file. Encapsulate
5664 object key generation.
5666 * lily/include/context-key-manager.hh (Module): new file.
5668 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5670 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5673 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5675 (reloc_b): excise --enable-framework-dir
5677 * lily/relocate.cc (framework_relocation): use getenv
5678 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5680 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5682 * flower/include/std-string.hh:
5683 * flower/include/std-vector.hh: Finish std:: conversion; move
5684 flower extensions from std:: namespace. Update users.
5686 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5687 their expansion to vector<*>. Update users.
5689 2006-02-10 Graham Percival <gpermus@gmail.com>
5691 * Documentation/user/invoking.itely: add example to File structure.
5693 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5694 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5696 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5698 * ly/paper-defaults.ly: typo.
5700 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5701 set_parent() for parentheses. This will make it show up in bbox
5704 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5705 ly:grob-common* functions.
5707 * lily/grob-scheme.cc (LY_DEFINE):
5708 ly:grob-common-refpoint-of-array: new function
5709 ly:grob-common-refpoint: new function
5710 ly:grob-relative-coordinate: new function
5712 * lily/instrument-name-engraver.cc (process_music): use
5713 Text_interface::is_markup(). This fixes \markup on instrument names.
5715 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5718 * lily/slur.cc (print): idem.
5720 * lily/tie.cc: add line-thickness for ties.
5722 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5724 * scm/output-svg.scm: Document diversion from GNU coding standards
5725 as a workaround for a bug in Microsoft Internet Explorer.
5727 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5729 * lily/instrument-name-engraver.cc (process_music): use
5730 is_markup() iso. is_string()
5732 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5734 * lily/percent-repeat-engraver.cc (process_music): only look at
5735 main_part_ for % repeats.
5737 * lily/stem-tremolo.cc (get_beam_translation): new function.
5738 (calc_slope): new function.
5739 (height): don't use real slope.
5741 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5743 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5744 new connect-to-neighbor, control-points and staff-padding
5745 properties to make ligature brackets showing up again.
5747 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5749 * VERSION: release 2.7.33
5751 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5754 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5755 remove applyOutput example.
5756 (Objects connected to the input): document \tweak, \parenthesize
5758 * lily/relocate.cc (prefix_relocation): allow "current"
5759 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5760 changing VERSION in a lily tree less painful.
5762 * input/regression/parenthesize.ly: new file.
5764 * scm/output-lib.scm (parenthesize-element): new function.
5766 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5768 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5770 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5771 cause: accidentals are caused by note heads, not note events.
5773 2006-02-08 Graham Percival <gpermus@gmail.com>
5775 * darwin.patch: small patch from Erlend, thanks!
5777 * Documentation/user/basic-notation.itely: add stem-neutral example.
5779 * Documentation/user/putting.itely: clarifications.
5781 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5783 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5784 note, add more guidelines to what should go into NEWS.
5786 * input/sakura-sakura.ly: document how to override font.
5788 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5790 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5792 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5794 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5796 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5797 convertrules. Add explicit grouping, needed for python2.2.
5799 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5801 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5803 2006-02-07 Graham Percival <gpermus@gmail.com>
5805 * Documentation/user/global.itely: fix line-width in (text) docs.
5807 * Documentation/user/lilypond-book.itely: same.
5809 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5811 * VERSION (PACKAGE_NAME): release 2.7.32
5813 * Documentation/topdocs/NEWS.tely (Top): document new variable
5816 * flower/include/array.icc (Message): remove file.
5818 * flower/include/std-vector.hh: make sure vsize and VPOS are
5819 defined for binary_search_bounds().
5821 * flower/std-string.cc (std): add to_string(long unsigned).
5823 * configure.in (gui_b): excise std_string option.
5824 (gui_b): excise std_vector option.
5826 * flower/string.cc (Module): excise flower array & string
5828 * flower/include/std-string.hh: excise flower string.
5830 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5832 * python/convertrules.py (lilypond_version_re_str): require
5833 only numbers and dots in \version string.
5835 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5837 * lily/system-start-delimiter.cc (print): allow style = text too.
5839 * lily/system-start-delimiter-engraver.cc
5840 (acknowledge_system_start_text): new function, also add add to
5841 support of system-start-text (instrument names). This fixes
5842 instrument names on piano staves.
5844 * lily/instrument-name-engraver.cc: rewrite. Use
5845 system-start-delimiter approach. This save memory and cpu.
5847 * scm/define-grobs.scm (all-grob-descriptions): remove
5848 instrument-name from break-alignment.
5850 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5852 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5854 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5857 * configure.in (std_vector): On by default.
5859 * lily/include/font-metric.hh:
5860 * lily/include/tfm-reader.hh:
5861 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5864 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5866 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5868 * VERSION (PACKAGE_NAME): 2.7.31
5870 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5871 EPS edge at 0, but take minimum with left-overshoot. This fixes
5872 cut off system start delims.
5874 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5875 hack: add to axis group if not added yet. This fixes hara kiri'd
5878 * lily/hara-kiri-group-spanner.cc
5879 (force_hara_kiri_in_y_parent_callback): fix signatures.
5881 * lily/hairpin.cc (print): check next hairpin to see whether or
5882 not to be continuing.
5884 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5886 * Remove trailing whitespace from makefiles.
5888 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5891 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5893 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5895 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5897 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5899 * configure.in: Use it.
5901 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5903 * scm/music-functions.scm (pitch-of-note): new function.
5905 * ly/music-functions-init.ly: add \octave and \addquote
5907 * lily/parser.yy (music_function_chord_body): softcode \octave.
5908 (lilypond_header): softcode \addquote
5910 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5912 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5913 array.hh, parray.hh at all. Getting ready to flip the
5916 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5918 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5921 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5923 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5925 * flower/include/array.hh: typo.
5927 2006-02-02 Graham Percival <gpermus@gmail.com>
5929 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5931 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5933 * flower/include/pqueue.hh: Derive from std::vector.
5935 * flower/include/parray.hh: Conform to std::vector interface.
5938 2006-02-02 Graham Percival <gpermus@gmail.com>
5940 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5942 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5944 * flower/file-path.cc (is_file): remove if 0 section.
5946 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5947 selecting afii61352.
5949 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5951 * flower/include/std-vector.hh (boundary): Oops, reverse.
5953 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5954 remove superfluous `d'.
5956 * flower/include/std-vector.hh (boundary, top): Detach from class.
5957 Remove empty vector shell.
5959 * flower/include/array.hh (reverse, swap): Detach from class.
5962 * flower/include/std-vector.hh
5963 * flower/include/array.hh (concat): Globally change to insert ().
5965 * flower/include/std-vector.hh
5966 * flower/include/parray.hh
5967 * flower/include/array.hh (elem, elem_ref): Globally replace by
5970 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5972 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5974 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5975 anticipate on identifier substitutions.
5977 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5979 * flower/include/std-vector.hh (insert): Remove, replace by
5980 std::vector interface. Update callers.
5982 * flower/include/array.icc (insert): Change signature to
5983 match std::vector interface.
5985 * flower/include/array.icc (vector_sort): Bugfix.
5987 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5989 * lily/parser.yy (output_def_head_with_mode_switch): new
5990 production. Result: dashes and underscores may be used in the
5993 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5995 * python/convertrules.py (conv): oops. One slash too much.
5997 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5999 * flower/include/std-vector.hh (sort): Remove, replace by
6000 ::vector_sort. Update callers.
6002 * flower/include/std-vector.hh (slice): Remove. Update callers.
6005 * flower/test-std.cc (vector_sort): New test.
6007 2006-02-01 Graham Percival <gpermus@gmail.com>
6009 * Documentation/user/putting.itely: fixes from Erik.
6011 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6013 * flower/test-std.cc: Add simple unit test for vector migration.
6015 * stepmake/stepmake/test*: Unit test support.
6017 * flower/include/std-vector.hh (del): Remove. Use erase (),
6020 * flower/include/array.hh (begin, end): Add.
6023 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6025 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6026 std::string not String.
6028 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6031 * lily/prob.cc (Prob): copy type_ too.
6033 * lily/lily-guile.cc (mangle_cxx_identifier): new
6034 function. Class_bla::foo_bar_[px] ->
6035 ly:class-bla::foo-bar[?!]. Changes throughout
6037 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6039 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6041 * lily/beam.cc (calc_direction): take dir from visible stem in
6044 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6046 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6047 Fix -1, >=0 boundary checks for unsigned vsize.
6049 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6050 loop for unsigned vsize.
6052 * configure.in (--enable-std-vector): New option.
6053 (--enable-std-string): On by default.
6055 * flower/include/std-vector.hh: New file. Enable switch to
6056 std::vector, update client code.
6058 2006-01-30 Graham Percival <gpermus@gmail.com>
6060 * scm/document-translation.scm: clarify "this context is also
6061 known as". Thanks, Werner!
6063 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6065 * Documentation/user/invoking.itely: small fix from Don.
6067 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6069 * scm/lily.scm (define-scheme-options): rename option
6070 preview-include-book-title to book-title-preview
6071 (define-scheme-options): move force-eps-font-include (from paper
6072 block) to eps-font-include -d option.
6074 * VERSION (PATCH_LEVEL): release 2.7.30
6076 * input/bach-schenker.ly (staffPiano): new file.
6078 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6080 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6083 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6085 * ps/lilyponddefs.ps: remove start-system, stop-system,
6086 start-page fluff. This saves putting { } code on the stack, fixing
6087 stack overflows when including EPS files.
6089 2006-01-29 Graham Percival <gpermus@gmail.com>
6091 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6093 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6095 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6097 2006-01-28 Graham Percival <gpermus@gmail.com>
6099 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6101 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6103 * input/mutopia/claop.py: Update.
6105 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6107 * input/regression/completion-heads.ly (texidoc): fix.
6109 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6111 * lily/tie-formatting-problem.cc
6112 (set_ties_config_standard_directions): use abs iso fabs for ints.
6114 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6116 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6117 little less than noteheight, to prevent overlaps in chords.
6119 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6120 head, and fudge stem-attachment.
6122 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6124 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6126 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6128 * lily/main.cc (main): Debugging aid: catch exceptions.
6130 * flower/std-string.cc (to_string): Robustification. Fixes midi
6131 output with std::string.
6133 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6135 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6137 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6139 * Fix -DSTRING_UTILS_INLINED.
6141 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6143 * VERSION (PATCH_LEVEL): release 2.7.29
6145 * lily/relocate.cc (setup_paths): mingw uses std string too.
6147 * lily/*.cc: various fixes for substr(ARG).
6149 * lily/sustain-pedal.cc (print):
6151 * flower/file-name.cc (slashify): use std strings.
6153 * flower/string-convert.cc: remove publib.h
6155 * scm/define-markup-commands.scm (verbatim-file): new markup
6156 command \verbatim-file
6158 * Documentation/topdocs/NEWS.tely: fixup URLs
6160 * input/regression/alignment-vertical-manual-setting.ly (Module):
6163 * lily/align-interface.cc (align_elements_to_extents): overwrite
6164 translations with numbers in alignment-offsets from left bound
6166 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6167 (page-translate-systems): new function: take into account Y-offset.
6169 * Documentation/topdocs/NEWS.tely (Top): document new features.
6171 * input/regression/page-layout-manual-position.ly (Module): new
6174 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6176 * flower/file-path.cc (path::parse_path): Oops.
6178 * Finish std::string interface. For now, use std:: marker
6179 throughout for easy s/r.
6181 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6183 * Documentation/user/putting.itely (Score is a single musical
6185 (Score is a single musical expression): more typos.
6187 * scm/page.scm (annotate-space-left): thinko.
6188 (annotate-page): more thinkos.
6190 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6192 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6193 for different \score blocks separately.
6194 (post-process-pages): put write-page-layout into paper block.
6196 * lily/output-def.cc (get_parser): new file.
6198 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6201 * lily/include/output-def.hh (class Output_def): add parser_ member.
6203 * input/regression/page-layout-twopass.ly (Module): new file.
6205 * scm/lily.scm: remove cpp hack.
6207 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6209 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6211 * GNUmakefile.in (c-clean): New target.
6213 * flower/include/std-string.hh: String/std::string compatibility:
6214 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6217 * flower/rational.cc:
6218 * flower/include/rational.hh:
6221 * flower/include/offset.hh:
6223 * flower/interval.cc:
6224 * flower/include/interval.hh:
6226 * flower/string-convert.cc:
6227 * flower/include/string-convert.hh: Use std::string [interface].
6230 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6232 * Documentation/index.html.in: clean up.
6234 2006-01-25 Graham Percival <gpermus@gmail.com>
6236 * Documentation/user/putting.itely: another new untested doc section.
6238 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6240 * scm/layout-page-layout.scm (write-page-breaks): write
6241 \spacingTweaks #ALIST. Handle grace timing.
6243 * scm/: more imports.
6245 * scm/page.scm (make-page): add footer/header.
6246 (annotate-space-left): revise: only take page argument.
6247 (layout->page-init): new function.
6249 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6250 version of the system/spacing/linebreak hack writing to the output
6252 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6255 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6258 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6260 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6262 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6264 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6265 handling to page.scm
6267 * lily/prob-scheme.cc (LY_DEFINE): new file.
6268 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6270 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6273 * lily/music.cc (derived_mark): derive Music from Prob.
6275 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6277 * lily/prob.cc (Module): Implement Prob (Property Object), object
6278 with shared and r/w property alists.
6280 * lily/include/prob.hh (Module): new file. Declare Prob.
6282 * flower/string.cc: remove is_empty().
6284 * flower/include/string.hh (class String): remove String:: qualifier.
6286 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6287 substitute appropriate functions.
6289 * flower/include/string.hh (class String): remove to_str0 and
6290 is_empty(). S&R everywhere.
6292 2006-01-23 Graham Percival <gpermus@gmail.com>
6294 * Documentation/user/basic-notation.itely: add hairpin
6295 after-linebreak tweak to commonprop.
6297 * Documentation/user/putting.itely: added two new sections.
6299 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6301 * flower/international.cc:
6302 * flower/include/international.hh:
6304 * flower/getopt-long.cc:
6305 * flower/include/getopt-long.hh: Use std::string [interface].
6308 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6310 * stepmake/stepmake/executable-rules.make: Add dependency on
6313 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6315 * flower/file-path.cc:
6316 * flower/include/file-path.hh: Use std::string [interface].
6319 * flower/direction.cc:
6320 * flower/axis.cc: Unused. Remove.
6322 * configure.in (--enable-std-string): New option.
6324 * flower/std-string.cc:
6325 * flower/include/std-string.hh: New file.
6327 * flower/file-name.cc[STD_STRING]:
6328 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6330 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6332 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6334 * scm/define-markup-commands.scm (with-dimensions):
6335 with-dimensions markup command.
6337 * input/test/font-table.ly: use it.
6339 * lily/open-type-font.cc (glyph_list): new function.
6341 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6343 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6345 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6347 * ly/music-functions-init.ly (parallelMusic): new music function
6348 for parallel music entry.
6350 * scm/define-music-properties.scm (all-music-properties): new
6351 'void music property
6353 * scm/music-functions.scm (ly:music-message): make public, to be
6354 used in music function definitions
6356 * scm/lily-library.scm (collect-music-for-book): discard music
6357 when the 'void property is set.
6359 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6361 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6363 * mf/GNUmakefile: idem.
6365 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6367 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6369 * Documentation/user/notation-appendices.itely (The Feta font):
6372 * input/test/font-table.ly: new file. Generate font table within lily.
6374 * Documentation/user/notation-appendices.itely (The Feta font):
6375 use new font-table.ly file.
6377 * stepmake/stepmake/install-out-targets.make
6378 (local-install-outfiles): only create directory if
6379 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6381 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6383 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6385 * VERSION (PACKAGE_NAME): release 2.7.28
6387 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6388 the right font from a Mac dfont.
6389 (write-preamble): don't forget directory, only look at files.
6391 This fixes problems with TTF files in dfonts that don't match
6392 their PostScript names.
6394 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6395 PS name from TTF font.
6397 * input/regression/tie-manual.ly: document new feature.
6399 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6401 * VERSION (MY_PATCH_LEVEL): bump to .28
6403 * Documentation/user/basic-notation.itely (Ties): add tie examples
6406 * lily/tie-formatting-problem.cc (score_ties_configuration):
6407 symmetry penalties for outer ties.
6409 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6411 * lily/tie-formatting-problem.cc (generate_configuration)
6412 (set_manual_tie_configuration): skip non-pair manual
6413 tie-configuration, so you can set individual ties as
6415 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6417 * input/regression/tie-chord.ly: use generateTiePattern to
6420 * lily/tie-formatting-problem.cc (peak_around): new function.
6421 (score_configuration): use sliding criterion for staff line collisions.
6422 (score_configuration): idem for dot collisions.
6423 (generate_configuration): use separate stem_gap for gap to stem.
6425 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6426 separate penalty factors for x and y distance.
6427 (struct Tie_details): separate penalties for tip and center line collisions.
6429 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6431 * lily/tie-formatting-problem.cc (generate_configuration): make
6432 large ties avoid stafflines in the horizontal section.
6433 (score_configuration): use softcoded penalties
6434 (score_aptitude): idem.
6436 * lily/tie-helper.cc (from_grob): softcode tie details
6438 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6440 * lily/staff-symbol-referencer.cc (on_line): rename from
6443 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6445 * ly/music-functions-init.ly: remove duplicate tag.
6447 * lily/include/*.hh: GCC 4.1 fixes.
6449 006-01-16 Erlend Aasland <erlenda@gmail.com>
6451 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6453 * scm/define-music-types.scm: fix bug in desc. string
6454 for OverrideProperty
6456 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6458 * scripts/lilypond-book.py: bugfix
6460 * scm/define-music-types.scm: fix typos.
6462 2006-01-14 Graham Percival <gpermus@gmail.com>
6464 * Documentation/user/ basic-notation.itely, global.itely,
6465 advanced-notation.itely, instrument-notation.itely: small
6466 additions (bugs and commonly tweaked properties).
6468 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6470 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6471 detection of mingw build.
6472 (MINGW_BUILD): opps.
6474 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6476 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6479 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6481 * scm/music-functions.scm (skip->rest): add skip->rest
6483 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6485 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6488 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6489 config dirs. Aids debugging.
6490 (display_config): also display config files.
6492 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6494 * VERSION: release 2.7.27
6496 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6497 for determining bar size.
6499 * lily/staff-symbol.cc (print): place lines at distance line-positions
6501 * scm/define-grob-properties.scm (all-user-grob-properties): add
6504 * lily/staff-symbol.cc (height): new function.
6506 * input/regression/staff-line-positions.ly: new file.
6508 2006-01-06 Graham Percival <gpermus@gmail.com>
6510 * input/test/add-staccato.ly: remove reference to old file.
6512 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6514 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6515 lilypond binary too.
6517 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6519 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6521 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6523 * scripts/midi2ly.py: Bugfix: Declare datadir.
6525 * make/ly-rules.make:
6526 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6527 that seems to be gone). Fixes make web.
6529 * The grand 2005-2006 replace.
6531 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6533 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6535 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6536 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6537 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6538 like -dgs-font-load.
6540 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6541 remove absolute path to lilypond binary.
6543 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6545 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6547 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6549 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6551 * mf/GNUmakefile: remove broken dvips map symlink.
6553 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6556 * configure.in: Cosmetic fixes.
6558 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6560 * Documentation/user/music-glossary.tely (Pitch names): Added
6561 Spanish pitch names and durations, thanks to Ernesto Gancedo
6563 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6565 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6566 init. Fixes verbose printing of .scm files.
6568 * stepmake/aclocal.m4: add spaces before - options.
6570 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6572 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6573 of path search in local block variable.
6575 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6577 * configure.in (NCSB_DIR): --enable-ncsb-dir
6578 (LINK_GXX_STATICALLY): denko.
6580 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6582 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6583 use locate to find c059033l.pfb.
6585 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6587 * lily/tie-formatting-problem.cc
6588 (problem::generate_base_chord_configuration): Use my_round (was
6591 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6592 do not invoke mbrtowc.
6594 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6596 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6598 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6600 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6602 * Documentation/user/invoking.itely (svg): revise.
6604 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6606 * lily/lexer.ll: use sourcefilename iso. renameinput.
6608 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6610 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6611 <PostScriptName>.ttf instead of c059XXXttf.
6613 * lily/program-option.cc (LY_DEFINE): special support for
6614 --verbose, so it works before option init too.
6616 * mf/GNUmakefile (local-install): oops.
6618 * lily/lyric-hyphen.cc (print): oops.
6620 * buildscripts/pfx2ttf.fontforge: new file.
6622 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6623 ($(outdir)/%.ttf): new rule.
6625 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6628 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6631 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6633 * VERSION: release 2.7.26
6635 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6637 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6639 * lily/font-config.cc (init_fontconfig): verbosity.
6641 * THANKS: add Muziekacademie Lede.
6643 * scripts/musicxml2ly.py (print_voice_definitions): new function
6644 (print_score_setup): new function
6645 (convert): read part definition to output staves properly.
6647 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6650 * python/musicexp.py (Output_printer.__init__): use _ in data
6652 (Output_printer.unformatted_output): new function: no formatting,
6654 (Duration.get_length): remove isinstance() checks for
6655 Output_printer everywhere.
6657 * input/regression/lyrics-bar.ly (texidoc): add
6658 Separating_line_group_engraver.
6660 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6662 * lily/relocate.cc (framework_relocation): New function,
6663 factored from set_relocation ().
6664 (prefix_relocation): Rename from set_relocation ().
6665 (setup_paths): Use it.
6667 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6669 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6670 numbers. Patch by Erlend Aasland.
6672 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6674 * lily/font-config.cc (init_fontconfig): print warning if cache
6675 file is not existant.
6677 * lily/main.cc: don't use #ifdef but #if
6679 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6681 * lily/grob-property.cc (internal_set_property): don't abort on
6682 calculation-in-progress.
6684 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6686 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6687 connect-to-neighbor property not connect-to-other
6689 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6690 (LY_DEFINE): oops. don't forget protection.
6692 * flower/parse-afm.cc (Module): strip AFM handling completely.
6694 * lily/stencil-expression.cc: idem.
6696 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6698 * lily/function-documentation.cc (ly_add_function_documentation):
6699 use static member iso. Protected_scm
6701 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6703 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6705 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6707 * lily/relocate.cc (set_env_dir): New function.
6708 (set_relocation): Use it to fix setting PANGO_PREFIX.
6710 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6712 * input/regression/stem-direction-context.ly: remove rest.
6714 * lily/melody-engraver.cc (process_music): restart for bar lines.
6715 (acknowledge_slur): restart for slurs.
6717 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6719 * Documentation/user/invoking.itely: describe how to view SVG
6720 output using Inkscape which replace embedded fonts with OTF fonts.
6722 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6724 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6726 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6728 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6731 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6733 * VERSION (PACKAGE_NAME): release 2.7.25
6735 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6737 * input/regression/stem-direction-context.ly: new file.
6739 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6741 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6744 * ly/engraver-init.ly: add Melody_engraver
6746 * lily/beam.cc (calc_direction): use default-direction
6747 iso. get_default_direction()
6749 * scm/define-grob-properties.scm (all-user-grob-properties): add
6750 default-direction property.
6752 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6754 * lily/stem.cc (calc_default_direction): remove
6755 Stem::get_default_direction, use default-direction with callback
6758 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6760 * lily/melody-engraver.cc: new file. Acknowledge stems for
6761 interpolated stem directions.
6763 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6765 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6767 * lily/slur-configuration.cc (fit_factor): more robust check for
6768 point in curve X-extent.
6770 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6771 (outside_slur_callback): check for 'outside avoidance.
6773 * lily/slur-configuration.cc (score_extra_encompass): don't use
6774 bound->column() == avoid->column() for checking extents, as this
6775 doesn't work for accidentals.
6777 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6778 DynamicText hardcoding.
6780 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6781 crash if bound stem is NULL
6783 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6786 2005-12-22 Graham Percival <gpermus@gmail.com>
6788 * scm/define-markup-commands.scm: typo. @code{\raise}
6791 * darwin.patch: now used again, includes a
6792 required patch from fink.
6794 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6796 * po/TODO: mention gtranslator along with kbabel.
6797 * po/fi.po: update translations.
6799 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6801 * lily/relocate.cc (setup_paths): Bugfix.
6803 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6805 * lily/slur-configuration.cc (score_extra_encompass): don't use
6806 "avoid" choice for avoid-slur.
6808 * stepmake/bin/install.py (dest): don't create existing dir.
6810 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6812 * stepmake/bin/install.py: Remove file before copying.
6815 * stepmake/aclocal.m4: Do not substitute INSTALL.
6817 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6819 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6820 depend on link-tree.
6822 * lily/relocate.cc (setup_paths): only check path for non-absolute
6823 dir without directory part.
6825 * flower/file-name.cc (is_absolute): new method.
6826 (is_absolute): check root_ too.
6828 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6830 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6831 relocation code. Oops, don't comment out too much.
6833 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6836 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6839 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6841 * .cvsignore: Add install-sh.
6843 * autogen.sh (srcdir): Typo.
6845 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6847 * autogen.sh (srcdir): urg. Touch install-sh.
6849 * stepmake/bin/install-sh (Module): remove.
6851 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6853 * lily/include/relocate.hh: new file.
6855 * lily/relocate.cc: new file. Contain relocation logic.
6857 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6858 (main): read LILYPOND_VERBOSE as the first thing.
6860 * stepmake/aclocal.m4: remove INSTALL variable.
6862 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6863 separate target for making font symlinks.
6864 (documentation-dir): use $(if $(findstring )) for switching off
6867 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6868 something if DOCUMENTATION is no.
6870 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6872 * VERSION: release 2.7.24
6874 * lily/script-column-engraver.cc (stop_translation_timestep):
6875 delay adding to script-column.
6877 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6879 * python/convertrules.py (conv): rule for number-visibility
6881 * lily/slur-configuration.cc (score_extra_encompass): different
6882 distance measure for avoid and inside avoidance.
6883 (score_extra_encompass): use 1/(distance+eps) as penalty.
6885 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6886 encompass objects for generating slur curves.
6888 * lily/slur.cc: use details iso. slur-details property.
6890 * input/regression/slur-tuplet.ly: new file.
6892 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6894 * flower/include/offset.hh (class Offset): new operator /=
6896 * lily/tuplet-number.cc (print): new file, new interface.
6898 * scm/define-grob-properties.scm (all-user-grob-properties):
6899 remove number-visibility property.
6901 * lily/tuplet-bracket.cc (calc_control_points): new function
6902 (calc_connect_to_neighbors): new function.
6903 (print): remove text handling for tuplet numberdef.
6905 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6908 * lily/lily-guile.cc (robust_scm2booldrul): new function
6910 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6912 * lily/tuplet-bracket.cc (calc_position_and_height): use
6913 staff-padding to control whether tuplet brackets are over staves.
6915 * lily/grob.cc (suicide): clear dim_caches_.
6917 * lily/dimension-cache.cc (clear): new function.
6919 * lily/grob.cc (extent): swap order of min-extent and extent
6920 calculations. This fixes hara kiri staves.
6922 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6924 * lily/main.cc: Nitpick: relocation is not based on path, but on
6925 directory (location).
6927 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6929 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6931 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6933 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6935 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6937 * stepmake/stepmake/generic-vars.make (Module): idem.
6939 * stepmake/stepmake/executable-targets.make (default): use it.
6941 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6943 * make/GNUmakefile: don't install make rules.
6945 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6947 (prepend_env_path): more verbosity.
6949 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6951 * GNUmakefile.in: add dir argument for find command.
6953 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6954 fixes weird line numbers for point & click.
6956 * lily/source-file.cc (get_counts): init line/column/char counts.
6958 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6960 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6962 2005-12-16 Graham Percival <gpermus@gmail.com>
6964 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6965 minor fixes from Fredric. Thanks!
6967 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6969 * ly/music-functions-init.ly: add \bar and \clef music function
6971 * lily/lily-lexer.cc: idem.
6973 * lily/parser.yy (FIXME): remove BAR and CLEF.
6975 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6977 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6979 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6980 function arguments too
6982 * lily/main.cc (set_relocation): new function.
6984 * scripts/musicxml2ly.py (convert): add \version
6986 * lily/tie.cc: remove get_default_attachments()
6988 * VERSION (PACKAGE_NAME): release 2.7.23
6990 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6991 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6993 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6995 * lily/tie-formatting-problem.cc (score_ties): new function
6996 (get_variations): new function. Try flipping dirs for collisions.
6997 (generate_optimal_chord_configuration): new function. 1-opt search
6998 for better configuration.
7000 * lily/tie-configuration.cc: new file.
7002 * lily/tie.cc: junk Tie::get_configuration()
7004 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7005 (score_ties_configuration): new function.
7006 (generate_ties_configuration): new function.
7007 (generate_base_chord_configuration): new function.
7008 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7009 (set_manual_tie_configuration): Move body from tie-column-format.cc
7011 * input/regression/tie-dot.ly: new file.
7013 * lily/tie-formatting-problem.cc (score_configuration): score
7016 * lily/tie-helper.cc (get_transformed_bezier): new function
7018 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7020 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7021 -undefined suppress iso. -framework Python
7023 * scm/define-grobs.scm (all-grob-descriptions): set
7024 springs-and-rods (thanks Joe Neeman!)
7026 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7028 * input/no-notation/display-lily-tests.ly (test):
7029 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7030 changed from \tag #'(a b) to \tag #'a \tag #'b
7032 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7034 * Documentation/topdocs/NEWS.tely: strip out-www.
7036 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7038 * config.make.in (AR): add AR and RANLIB
7040 * flower/libc-extension.cc: include cassert
7042 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7045 2005-12-11 Graham Percival <gpermus@gmail.com>
7047 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7049 * stepmake/stepmake/python-modules-vars.make: define
7050 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7052 * THANKS: added Johannes Schindelin.
7054 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7056 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7058 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7059 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7061 * lily/parser.yy: reorganize file layout.
7063 * ly/music-functions-init.ly: add tweak music function.
7065 * lily/grob-info.cc (ultimate_music_cause): new function:
7066 recursively lookup causes.
7068 * lily/parser.yy (chord_body_element): allow music functions for
7069 post-events, allow music functions for chord elements.
7071 * lily/font-config-scheme.cc (display_fontset): add cast.
7073 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7074 #'(a b) -> \tag #'a \tag #'b rule.
7076 * python/musicexp.py (Output_printer.dump_version): new function
7078 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7080 * lily/parser.yy (FIXME): remove \tag
7081 (FIXME): remove tag_music() function.
7083 * lily/lily-lexer.cc: remove \tag
7085 * ly/music-functions-init.ly: define music-function "tag"
7087 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7089 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7091 * VERSION (PATCH_LEVEL): release 2.7.22
7093 * input/regression/lyric-hyphen-retain.ly: renew.
7095 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7098 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7099 iso. minimum-length property for rods.
7101 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7102 LyricSpace item to keep lyrics spaced apart.
7104 * ly/engraver-init.ly: remove Separating_line_group_engraver
7106 * Documentation/user/music-glossary.tely: do setfilename before
7109 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7111 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7112 See xref documentation, for example.
7114 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7116 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7117 pending_skip iso. ly_voice[-1]
7118 (main): add if __main__ for debugging.
7120 * python/musicxml.py (Accidental.__init__): new class.
7122 * scripts/musicxml2ly.py (progress): new function
7123 (musicxml_key_to_lily): don't barf on modeless keys.
7124 (create_skip_music): new function.
7125 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7126 (musicxml_note_to_lily_main_event): new function.
7128 * python/musicexp.py (Music.__init__): add comment field.
7129 (NestedMusic.append): new routine.
7130 (SequentialMusic.print_ly): print comment.
7131 (ArpeggioEvent.ly_expression): new class
7132 (BeamEvent.ly_expression): new class
7133 (NoteEvent.__init__): support for cautionary/forced accs.
7135 * lily/lookup.cc (slur): normal order for array loop.
7137 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7140 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7143 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7145 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7147 * scripts/lilypond-book.py: Introduce option
7148 --preserve-line-breaks, for usage with srcltx
7150 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7152 * scm/output-lib.scm (print-circled-text-callback): draw circle
7153 around text using make-circle-markup.
7155 * Documentation/user/*: strip out-www from file names.
7157 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7159 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7160 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7162 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7164 * Documentation/user/GNUmakefile: idem.
7166 * Documentation/user/macros.itexi: strip out-www
7168 * python/rational.py: python 2.3 compat.
7170 * VERSION (PATCH_LEVEL): release 2.7.21
7172 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7173 option formatting, lilypond style.
7175 * python/musicexp.py: grab from Ikebana: a library for composing
7176 ly music expressions.
7177 (Output_printer): class for advanced .ly printing.
7180 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7181 convert to pythonesque structure.
7183 * python/rational.py: PD rational number class.
7185 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7187 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7189 * lily/part-combine-iterator.cc: Minor bugfix
7191 * THANKS: Update bughunters
7193 2005-12-02 Werner Lemberg <wl@gnu.org>
7195 * mf/README: Document process for proper mf2pt1 conversion.
7197 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7200 * mf/feta-harmonica.mf: Removed. Unused.
7202 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7204 * scripts/lilypond-book.py (do_file): fix thinkos.
7206 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7208 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7209 ($(outdir)/parser.cc):
7210 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7212 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7214 * ly/titling-init.ly (tagline): it should be a space between
7215 "Music engraving by LilyPond" and the version number.
7217 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7219 * VERSION (PACKAGE_NAME): release 2.7.20
7221 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7223 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7225 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7227 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7229 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7231 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7233 * kpath-guile/: remove directory
7235 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7236 file. Encapsulate kpathsea using commandline tools.
7238 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7241 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7243 * Documentation/user/advanced-notation.itely (Setting automatic
7244 beam behavior): Correct a few typos. Thanks to David Bobroff.
7246 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7247 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7249 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7251 * scripts/*.py: gmane address for bugs.
7253 2005-11-28 Pal Benko <benkop@freestart.hu>
7255 * make/ly-rules.make: add -f switch to mv
7257 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7259 * lily/bar-line.cc: interpret it
7261 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7263 * configure.in (--disable-documentation): New switch.
7265 * GNUmakefile.in: Use it.
7267 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7269 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7271 * scripts/lilypond-book.py (do_file): search chunks for
7274 * GNUmakefile.in: add copy step in between so we can lose the
7275 out-www directories.
7277 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7279 * lily/pango-font.cc (pango_item_string_stencil): put
7280 geometry.width into glyph-string too.
7282 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7284 * scm/define-music-display-methods.scm (RevertProperty):
7285 (OverrideProperty): Use grob-property-path property, a list of
7286 symbols, instead of grob-property, which used to be a single
7288 (BassFigureEvent): a figure can be a plain number, not necessarily a
7291 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7293 * VERSION: release 2.7.19
7295 * lily/figured-bass-engraver.cc (process_music): check
7296 figuredBassCenterContinuations first.
7298 * scm/translation-functions.scm (format-bass-figure): make double
7301 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7304 * lily/system-start-delimiter-engraver.cc: move from
7305 Nested_system_start_delimiter_engraver, rename
7306 Nested_system_start_delimiter_engraver ->
7307 System_start_delimiter_engraver.
7309 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7310 bracket type from hierarchy.
7312 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7314 * lily/rest.cc (y_offset_callback): read staff-position.
7316 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7317 mark after-line-breaking-callback as internal.
7319 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7321 2005-11-25 Werner Lemberg <wl@gnu.org>
7323 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7325 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7327 * stepmake/bin/add-html-footer.py (do_file): add google
7329 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7330 staff if first_start_ is true.
7332 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7334 * scripts/midi2ly.py (split_track): add __repr__ members.
7335 (track_first_item): only return Item if not None. This fixes a
7336 problem when dumping a track that starts with an empty channel.
7338 * python/midi.c: doc module.
7340 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7342 * Documentation/user/global.itely (Creating MIDI files): Fix
7343 compilation problem.
7345 2005-11-22 Graham Percival <gpermus@gmail.com>
7347 * Documentation/user/basic-notation.itely: clarify dynamic
7350 * Documentation/user/advanced-notation.itely: add unicode
7351 escape control example, whatever that is. :)
7353 * Documentation/user/global.itely: added "removing dynamics
7356 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7358 * VERSION (PATCH_LEVEL): release 2.7.18
7360 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7361 System_start_delimiter_engraver by
7362 Nested_system_start_delimiter_engraver.
7364 * lily/nested-system-start-delimiter-engraver.cc (struct
7365 Bracket_nesting_node): new class.
7366 (struct Bracket_nesting_group): new class
7367 (struct Bracket_nesting_staff): new class.
7368 (process_music): create hierarchy of grobs. This allows separate
7369 tuning of different SSDs.
7371 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7372 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7374 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7376 * lily/side-position-interface.cc (aligned_side): multiply
7379 * lily/script-engraver.cc (make_script_from_event): allow setting
7382 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7384 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7386 * scm/define-grobs.scm (all-grob-descriptions): new grob
7387 NestedSystemStartDelimiter.
7389 * input/regression/system-start-heavy-bar.ly: new file.
7391 * lily/nested-system-start-delimiter-engraver.cc: new file.
7393 * lily/nested-system-start-delimiter.cc: new file.
7395 * input/regression/system-start-nesting.ly: new file.
7397 * scm/define-grobs.scm (all-grob-descriptions): use X side
7398 positioning for positioning braces for nested contexts.
7400 * lily/system-start-delimiter.cc (print): don't divide extent by
7402 (print): use style iso. glyph.
7403 (staff_bracket): translate glyph inside routine already.
7405 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7407 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7410 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7412 * scm/define-context-properties.scm
7413 (all-user-translation-properties): rename figuredBassFormatter
7414 from newFiguredBassFormatter.
7416 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7418 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7420 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7422 * lily/beam.cc (calc_beaming): new function.
7423 (calc_shorten): new function.
7425 * THANKS: add Edward Neeman.
7427 * input/regression/accidental-clef-change.ly: new file.
7429 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7431 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7433 * lily/clef-engraver.cc (inspect_clef_properties): reset
7434 localKeySignature for clef changes.
7436 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7438 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7439 add dummy definition that works in Linux and add information in
7440 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7442 * Documentation/user/changing-defaults.itely (Modifying context
7443 plug-ins): Add index for \with.
7445 * Documentation/user/music-glossary.tely (dal segno): Updated
7446 example to version >=2.6.
7448 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7450 * Documentation/user/instrument-notation.itely (Printing chord
7451 names): Reorder \chordmode and \repeat in one example.
7453 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7455 * VERSION: release 2.7.17
7457 * Documentation/topdocs/NEWS.tely (Top): add note about
7460 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7461 new function. Search region of 3 positions for best tie.
7462 (score_configuration): new function.
7463 (score_aptitude): new function.
7464 (generate_configuration): new function.
7465 (get_configuration): new function.
7466 (Tie_formatting_problem): new function
7468 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7470 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7472 * THANKS: add Eduardo Vieira & Ralph Little
7474 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7477 * lily/include/tie-formatting-problem.hh (class
7478 Tie_formatting_problem): add Tie_details to
7479 Tie_formatting_problem. Update calling conventions.
7481 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7484 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7486 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7488 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7489 scm/define-context-properties.scm: Maintenance bugfix: make
7490 ligature brackets work again by removing obsolete ligature
7491 primitive callback push/pop.
7493 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7494 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7497 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7499 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7500 used and do not call it a path.
7501 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7503 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7505 * lily/include/tie-formatting-problem.hh (class
7506 Tie_formatting_problem): new file.
7508 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7510 * Documentation/misc/ChangeLog-2.3: new file.
7512 * lily/audio-staff.cc (output): degarianize.
7514 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7516 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7517 Unset PYTHONOPTIMIZE. Fixes install if set.
7519 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7521 * python/convertrules.py (conv): add warning about drums.
7523 * make/stepmake.make: include toplevel-version.make after config.make.
7525 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7526 also allow python2.4
7528 * config.make.in (configure-srcdir): remove GXX GCC vars.
7530 * stepmake/aclocal.m4: don't do non-srcdir build with
7531 symlinks. Use inclusion, so the src directory name can be changed.
7533 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7535 * make/mutopia-vars.make:
7536 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7539 2005-11-13 Werner Lemberg <wl@gnu.org>
7541 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7542 but the affected path. This ensures that the (overlapping) outlines
7543 have the same direction, which is a necessary prerequisite for
7544 FontForge's algorithm to remove overlaps.
7547 * mf/feta-haak.mf: Formatting.
7548 (draw_bracket): Slightly modify outline to avoid an unnecessary
7550 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7551 them from the affected paths.
7553 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7555 * mf/README: remove xpm / accordion notes.
7557 * lily/tie-column-format.cc (set_chord_outline): add dots into
7558 skyline extents. This fixes tie formatting if the left head has dots.
7560 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7561 space inside the staff.
7562 (get_configuration): shift another position if necessary in case
7565 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7567 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7568 buildscript-dir iso. $(depth)/buildscripts.
7570 * tex/GNUmakefile (local-uninstall): remove
7571 music-drawing-routines.ps juggling.
7573 * stepmake/stepmake/install-targets.make (local-install-files):
7574 prepend src-dir to install targets.
7576 * lily/system-start-delimiter-engraver.cc
7577 (acknowledge_system_start_delimiter): use
7578 add_offset_callback(). This fixes translation of nested
7581 * lily/grob-closure.cc (add_offset_callback): only encaps in
7582 simple_closure if it's a procedure.
7584 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7587 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7588 remove-empty where pertinent.
7590 2005-11-12 Graham Percival <gpermus@gmail.com>
7592 * Documentation/user/instrument-notation.itely: added
7593 Cameron Horsburgh's multiple stanzas docs. Thanks!
7595 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7598 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7599 make picture in builddir, not srcdir.
7601 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7603 * VERSION: release 2.7.16
7605 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7608 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7610 * Documentation/user/examples.itely (Piano templates): Minor
7611 modification to the Piano centered lyrics example.
7613 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7615 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7618 * Documentation/user/point-and-click.itely: simplify p&c
7619 instruction: don't configure firefox. Put lilypond-invoke-editor
7620 in front of the browser.
7622 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7623 (run-browser): new function.
7625 * lily/parser.yy (Lily_lexer): recognize Book
7627 * lily/book.cc (clone): new function
7629 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7631 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7633 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7634 Maintenance bugfix: reduce number of font related warnings by
7635 updating naming conventions for glyph-name.
7637 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7639 * scm/define-grobs.scm (all-grob-descriptions): add
7640 rhythmic-grob-interface to TabNoteHead.
7642 * scm/layout-beam.scm (check-quant-callbacks): remove
7645 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7647 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7648 alignment of centered divisiones.
7650 * scm/scripts.scm (articulations): Maintenance bugfix:
7651 follow-into-staff -> quantize-position.
7653 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7654 plica head in porrectus deminutus.
7656 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7658 * make/lilypond.fedora.spec.in (Group): add %clean section.
7660 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7661 less then 1/5th of total length.
7662 (print): use gap too. Fixes tupletUp-single-bracket.ly
7664 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7665 events into EventChord. This fixes textspanners on mm rests. Fixes
7668 * lily/side-position-interface.cc (get_axis): read side-axis
7669 (set_axis): set side-axis.
7671 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7672 properties everywhere.
7674 * lily/spacing-spanner.cc (breakable_column_spacing): add
7675 average-spacing-wishes. Take maximum if not set.
7676 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7678 * scm/define-grobs.scm (all-grob-descriptions): add
7679 average-spacing-wishes.
7681 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7682 offset callbacks. This fixes alignment for Fingering objects.
7684 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7685 space for key - timesig combination.
7687 * input/regression/script-stem-tremolo.ly (Module): new file.
7689 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7692 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7693 Fixes: c-tremolo-script.ly.
7695 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7697 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7699 * scm/define-grobs.scm (all-grob-descriptions): remove
7700 self-X-offset. Fixes alignment of octavate-8.
7702 * scripts/lilypond-book.py (datadir): look in
7703 LILYPONDPREFIX/share/lilypond/current/
7705 * GNUmakefile.in: symlink current to <VERSION>.
7707 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7709 * lily/main.cc: eps listed as a backend.
7711 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7713 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7715 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7717 * lily/include/score.hh (class Score): remove texts_ member.
7719 * lily/beam.cc (set_stem_lengths): force direction callback.
7720 (print): read quantized-positions, so we can force
7721 Beam::set_stem_lengths to occur.
7722 (rest_collision_callback): use common X parent.
7724 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7726 * flower/file-path.cc (find): Bugfix: Return name of file found.
7728 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7729 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7730 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7732 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7734 * flower/offset.cc: idem.
7736 * mf/*.mf: update email address.
7738 * lily/font-config-scheme.cc: new file.
7740 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7742 * lily/*: cs.uu.nl -> xs4all.nl
7744 * VERSION (PATCH_LEVEL): release 2.7.15
7746 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7749 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7751 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7753 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7755 * lily/staff-performer.cc (process_music): add audio
7756 elements. This makes MIDI instrument changes work once again.
7758 * lily/main.cc (LY_DEFINE): add gmane address.
7760 * lily/beam.cc: remove calc_positions()
7762 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7763 original_ in private scope.
7764 (class Grob): drop pscore_ pointer, change to output_def pointer.
7765 (class Grob): cleanup class definition.
7767 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7769 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7771 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7772 absolute. Better diagnostics.
7774 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7775 This makes lilypond run from the build directory using argv0
7776 relocation (without any --prefix or LILYPONDPREFIX setting).
7778 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7780 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7782 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7783 with simple-closure.
7785 * lily/self-aligment-interface.cc (set_align_self): new function
7786 (set_center_parent): new function.
7788 * lily/side-position-interface.cc (set_axis): new function.
7790 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7793 * scm/define-grob-properties.scm (all-user-grob-properties):
7794 remove [XY]-offset-callbacks add [YX]-offset
7796 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7798 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7799 entry for time signatures after breathing signs. Bug report by
7802 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7804 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7805 not absolute, make it absolute using PATH.
7807 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7809 * python/midi.c (initmidi): Fix type for mingw.
7811 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7813 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7815 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7818 * stepmake/aclocal.m4: Support python cross compiling.
7820 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7823 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7825 * scm/output-lib.scm (chain-grob-member-functions): replace
7828 * lily/chained-callback.cc (Module): remove file.
7830 * lily/rest-collision.cc (force_shift_callback_rest): change to
7833 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7835 * lily/grob.cc (y_parent_positioning): remove axis argument from
7836 parent_positioning callbacks.
7837 (Grob): junk init code
7838 (get_offset): use generic property callbacks for
7839 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7840 (axis_parent_positioning): new function
7841 (axis_offset_symbol): new function
7842 (chain_offset_callback): new function
7843 (add_offset_callback): new function
7845 * lily/beam.cc (rest_collision_callback): change signature; this
7846 is now a chained callback.
7848 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7849 callback administration.
7851 * lily/simple-closure.cc: new file. Smob type that allows "grob
7854 (ly:make-simple-closure FUNC A B)
7856 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7859 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7862 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7864 * lily/rest.cc (polyphonic_offset_callback): remove.
7866 * lily/script-engraver.cc (try_music): remove bool* argument.
7868 * scm/script.scm (default-script-alist): set quantize-position
7871 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7873 * lily/side-position-interface.cc (aligned_side): move staff
7874 position quantization from
7875 Side_position_interface::quantised_position().
7876 (quantised_position): remove
7878 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7880 * input/regression/beam-quant-standard.ly: reindent, set
7881 debug-beam-quanting to #t.
7883 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7884 10000 if this is a "hard" concave beam.
7886 * lily/beam.cc (calc_least_squares_positions): change from
7887 calc_least_squares_dy
7888 (set_stem_lengths): this is now a chained callback.
7890 * lily/context-property.cc (execute_general_pushpop_property):
7891 bugfix override with procedure should have effect.
7893 * scm/define-grob-properties.scm (all-internal-grob-properties):
7894 remove position-callbacks.
7896 * scm/define-grobs.scm (all-grob-descriptions): use
7897 ly:make-callback-chain for positions property.
7899 * scm/layout-beam.scm (check-quant-callbacks): return list of
7902 * scm/lily.scm (type-p-name-alist): add callback-chain
7904 * lily/lily-guile.cc (type_check_assignment): type check failure
7905 is warning not message.
7907 * lily/grob-property.cc (try_callback): walk callback chain if
7910 * lily/chained-callback.cc: new file. new smob type.
7912 * lily/lily-guile.cc (procedure_arity): new function.
7914 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7916 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7918 2005-10-25 John Mandereau <john.mandereau@free.fr>
7920 * Documentation/user/instrument-notation.itely (Figured bass):
7921 describe new features
7923 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7925 * lily/beam.cc (calc_least_squares_dy): use property callback.
7927 * lily/beam-concave.cc (calc_concaveness): use property callback.
7929 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7931 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7935 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7937 * scm/layout-page-layout.scm (page-headfoot): annotate
7940 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7942 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7943 doesn't take y-space.
7945 * scm/paper.scm (paper-alist): fix A7 dimensions.
7947 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7949 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7950 src-wildcard, remove $(wildcard).
7952 * po/GNUmakefile (PO_FILES):
7953 * ps/GNUmakefile (PS_FILES):
7954 * tex/GNUmakefile (TEX_FILES):
7955 * cygwin/GNUmakefile (POSTINSTALLS):
7956 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7957 some wildcard calls.
7959 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7961 * THANKS: add Thomas Bushnell.
7963 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7965 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7966 (lilypond-main): Redirect to gui-main if 'gui is set.
7968 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7969 for alternative installations kludging s/share/lib/g
7972 * SConstruct (libdir_package_version): Define.
7974 * python/SConscript:
7975 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7978 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7980 * lily/main.cc: clarify --safe.
7982 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7984 * VERSION: release 2.7.14
7986 * Documentation/user/*.itely: remove minimumVerticalExtent.
7988 * scm/define-grobs.scm (all-grob-descriptions): remove
7989 RemoveEmptyVerticalGroup
7991 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7993 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7996 * python/convertrules.py (conv): add rules.
7998 * lily/grob.cc: remove is_empty()
8000 * lily/grob-property.cc: remove add_to_list_property().
8002 * scripts/convert-ly.py (datadir): add prefix switching hack to
8005 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8006 space-function tweak.
8008 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8010 * scm/define-grob-properties.scm (all-user-grob-properties):
8011 remove callback property.
8013 * lily/include/grob.hh (class Grob): remove property_callbacks_
8014 member. Properties of procedure type are assumed to be callbacks.
8016 * lily/ligature-engraver.cc (override_stencil_callback):
8017 rewrite. Use noteHeadLigaturePrimitive as source.
8019 * scm/define-grob-properties.scm (all-internal-grob-properties):
8020 remove ligature-primitive-callback
8022 * lily/include/dimension-cache.hh (class Dimension_cache): make
8023 class, with Grob as friend.
8025 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8026 has_extent_callback()
8028 * scm/translation-functions.scm (format-new-bass-figure): read
8029 figuredBassPlusDirection
8031 * scm/define-context-properties.scm
8032 (all-user-translation-properties): add figuredBassPlusDirection.
8034 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8036 * lily/align-interface.cc (set_ordered): new function.
8038 * lily/grob.cc (flush_extent_cache): rewrite.
8040 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8041 Interval pointer directly.
8043 * lily/main.cc (setup_paths): insert extra / .
8044 (setup_paths): junk cff entry.
8046 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8049 * lily/axis-group-engraver.cc (finalize): remove
8050 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8052 * lily/grob.cc (Grob): don't set extent from ctor.
8053 (extent): use property callbacks.
8055 * lily/axis-group-interface.cc: remove set_axes() function.
8057 * lily/grob-property.cc (del_property): new function.
8059 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8061 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8063 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8065 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8067 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8069 * mf/SConscript: Updates.
8071 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8073 * stepmake/stepmake/*:
8077 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8078 from any directory in build-dir. Cleanups.
8080 * make/srcdir.make.in: Remove.
8082 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8084 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8087 * lily/SConscript: Remove ttftools.
8089 * SConstruct: Resurrect.
8091 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8093 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8096 * lily/paper-book.cc (add_score_title): put Paper_score title into
8099 * scm/translation-functions.scm (format-new-bass-figure): also
8100 allow plus in combination with _
8102 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8104 * VERSION: 2.7.13 released.
8106 * lily/note-collision.cc (check_meshing_chords): don't wipe
8107 stencil, merely set transparent.
8109 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8110 (Top): document #'callbacks.
8111 (Top): document nested \override.
8113 * input/regression/figured-bass.ly: update for slash and pluses.
8115 * input/regression/figured-bass-continuation-forbid.ly (Module):
8118 * scm/translation-functions.scm (format-new-bass-figure): use
8119 slashed-digit if diminished is set.
8120 (format-new-bass-figure): add + if 'augmented is set.
8122 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8124 * input/test/piano-staff-distance.ly: remove file.
8126 * Documentation/user/advanced-notation.itely (Formatting cue
8127 notes): use length-fraction for making stems/beams smaller.
8129 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8132 * lily/new-figured-bass-engraver.cc: new property
8133 centerFiguredBassContinuations
8135 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8138 * lily/context-property.cc (execute_general_pushpop_property):
8141 * input/regression/override-nest.ly: new file.
8143 * python/convertrules.py (FatalConversionError.subber): conversion
8144 rule for #'callbacks
8146 * input/regression/override-nest.ly: new function.
8148 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8151 * lily/context-property.cc (lookup_nested_property): new function.
8152 (evict_from_alist): new function.
8153 (general_pushpop_property): new function.
8154 (execute_general_pushpop_property): rewrite. Support nested
8157 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8159 * lily/beam.cc: use length-fraction too.
8161 * scm/define-grob-properties.scm (all-user-grob-properties):
8162 remove property flag-width-function
8163 (all-user-grob-properties): remove space-function.
8165 * scm/layout-beam.scm: remove flag-width-function.
8167 * lily/beam.cc: remove flag-width-function
8169 * scm/layout-beam.scm: remove beam dir functions.
8171 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8173 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8174 for easier grace tweaks.
8176 * lily/beam.cc: remove dir-function.
8178 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8180 * lily/grob.cc: remove spacing-procedure.
8182 * lily/note-head.cc (calc_stem_attachment): new function.
8183 (internal_print): use callback to get glyph-name.
8185 * lily/grob-property.cc (get_interfaces): new function.
8187 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8189 * lily/stem.cc (calc_stem_end_position): new function.
8190 (calc_length): new function.
8191 document details for stem.
8192 remove Stem::get_direction()
8194 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8196 * lily/grob-property.cc (set_callback): new function.
8198 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8200 * lily/item-scheme.cc: new file.
8202 * lily/bar-line.cc (before_line_breaking): remove function.
8203 remove bar-size-procedure, break-glyph-function
8205 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8207 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8209 * lily/system-start-delimiter.cc (print): suicide from
8210 here. Remove after_line_breaking_callback.
8212 * lily/script-interface.cc (calc_direction): use callback for direction.
8214 * lily/side-position-interface.cc (aligned_side): don't use
8215 Side_position_interface::get_direction directly. Use callback.
8217 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8219 (get_print_stencil): rename from get_stencil: create stencil with
8220 transparency, color and cause.
8222 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8224 * python/convertrules.py (conv): insert temporary warning rule.
8226 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8228 * lily/grob-property.cc (try_callback): remove marker if applicable.
8230 * lily/grob.cc: elucidate doc about after/before-line-breaking
8232 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8234 * lily/stem.cc (height): idem.
8236 * lily/stem-tremolo.cc: idem.
8238 * lily/slur.cc (height): don't use get_uncached_stencil()
8240 * lily/rest.cc (y_offset_callback): use offset callback
8241 iso. after-line-breaking callback.
8243 * lily/grob.cc: change after/before-line-breaking-callback to
8244 after/before-line-breaking dummy properties.
8246 * lily/include/grob.hh: remove Grob_status.
8248 * scm/define-context-properties.scm
8249 (all-user-translation-properties): remove verticalAlignmentChildCallback
8251 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8252 (calc_direction): use callback
8253 (calc_positions): use callback.
8255 * lily/tie.cc (calc_direction): use callback. Only call parent
8256 positioning for more than one tie.
8258 * lily/tie-column.cc (calc_positioning_done): use callback
8260 * lily/slur-scoring.cc (calc_control_points): use callback
8262 * lily/slur.cc (calc_direction): use callback.
8264 * lily/note-collision.cc (force_shift_callback): remove.
8266 * lily/dot-column.cc (force_shift_callback): remove. Use
8267 other_axis_parent_positioning.
8269 * lily/grob.cc (other_axis_parent_positioning): new function.
8270 (same_axis_parent_positioning): new function
8272 * lily/align-interface.cc (alignment_callback): remove function.
8274 * lily/note-collision.cc (calc_positioning_done): use callback.
8276 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8277 (calc_direction): idem.
8278 remove print function.
8280 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8282 * lily/dot-column.cc (calc_positioning_done): use callback.
8284 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8286 * lily/beam.cc (calc_direction): use pseudo-property for beam
8288 (calc_positions): use callback
8290 * lily/align-interface.cc (calc_positioning_done): use
8291 callback. Fold fixed distance and normal alignment in one function.
8293 * lily/stem.cc (calc_stem_end_position): use callback.
8294 (calc_positioning_done): idem.
8295 (calc_direction): idem.
8296 (calc_stem_end_position): idem
8297 (calc_stem_info): idem.
8299 * lily/grob-property.cc (get_property_data): new function:
8300 (try_callback): new function.
8302 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8305 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8307 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8309 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8313 * lily/include/*.hh (Module): compile fixes.
8315 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8317 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8318 as an argument for char-syntax: use (char-syntax (or nil 0))
8319 instead of (char-syntax nil), thanks to Milan Zamazal.
8321 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8323 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8326 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8329 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8331 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8332 add class_name() method.
8334 * lily/music-scheme.cc: remove ly:music-name.
8336 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8338 * cygwin/postinstall-lilypond.sh: Remove cruft.
8340 * cygwin/postremove-lilypond.sh: Remove.
8342 * cygwin/GNUmakefile (default): Remove postremove rules.
8344 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8346 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8349 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8352 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8353 consider break index for broken spanner.
8355 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8356 characters from string before splitting.
8358 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8360 * scm/framework-ps.scm (output-preview-framework): use
8361 is-book-title to determine whether to chop off the booktitle.
8363 * lily/paper-book.cc (systems): init from book-title-properties
8364 (add_score_title): init score-title-properties.
8366 * ly/paper-defaults.ly: add {score,book}-title-properties.
8368 * scm/document-backend.scm (lookup-interface): error message if
8369 using unknown interface.
8371 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8374 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8376 (make_bracket): new function.
8378 * scm/lily.scm (define-scheme-options): add paper-size option.
8380 * ly/declarations-init.ly (laissezVibrer): get paper size from
8383 * scm/translation-functions.scm: use \fontsize for changing the
8386 * scm/define-grobs.scm (all-grob-descriptions): set
8387 between-length-limit to 1.0
8389 * lily/tie-helper.cc: add between_length_limit_ detail property.
8391 * mf/feta-bolletjes.mf: typos.
8393 * lily/note-head.cc (internal_print): don't shadow idx
8394 parameter. This fixes wrong attachment for do shape heads.
8396 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8398 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8400 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8402 * scm/layout-slur.scm: rename from slur.scm
8404 * scm/layout-page-layout.scm: rename from page-layout.scm
8406 * scm/layout-beam.scm: rename from beam.scm
8408 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8409 bass-figure-interface
8411 * lily/new-figured-bass-engraver.cc (process_music): add
8412 implicitBassFigures property.
8414 * scm/define-markup-commands.scm (pad-x): new markup.
8416 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8417 minimumVerticalExtent on FiguredBass context.
8419 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8420 case the continuation crosses a line break.
8422 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8424 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8425 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8426 absolute file name bug.
8428 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8430 * VERSION (PACKAGE_NAME): release 2.7.12
8432 * input/regression/figured-bass-continuation-center.ly: new file.
8434 * input/regression/beam-outside-beamlets.ly: new file.
8436 * lily/beam.cc (set_beaming): don't clip edges.
8437 (connect_beams): don't clip edges.
8439 * lily/beaming-info.cc (clip_edges): new function.
8441 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8443 * Documentation/user/instrument-notation.itely (Figured bass):
8444 demonstrate extenders, update seealso links.
8446 * scm/titling.scm (marked-up-headfoot): change tagline
8447 handling. tagline = ##f will blank the tagline as well.
8449 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8451 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8453 * lily/new-figured-bass-engraver.cc (struct
8454 New_figured_bass_engraver): add new_music_found_ member.
8456 * lily/lilypond-version.cc (Lilypond_version): deal with
8457 incorrectly formatted version strings.
8459 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8460 New_figured_bass_engraver by default.
8462 * lily/ttf.cc (print_trailer): only define glyph names when
8463 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8465 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8467 * lily/horizontal-bracket.cc (make_bracket): new function.
8469 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8470 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8471 BassFigureLine, BassFigureAlignment
8473 * lily/new-figured-bass-engraver.cc (process_music): new file.
8475 * lily/figured-bass-continuation.cc: new file.
8477 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8480 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8482 * scripts/lilypond-book.py: Bug fix, put the quote around the
8483 actual score for LaTeX documents.
8485 * scm/define-grobs.scm (all-grob-descriptions): Change
8486 collapse-height of the SystemStartBracket grob to 5.0,
8487 so the bracket disappears for single stave score lines (similarly
8488 to SystemStartBraces).
8490 * Documentation/user/advanced-notation.itely (Polymetric
8491 notation): Clarify the use of compressMusic.
8493 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8494 that the grace spacer note in other staves need the same duration
8495 and document the stroke-style property.
8497 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8499 * Documentation/user/global.itely (Vertical spacing): document
8500 alignment-extra-space and fixed-alignment-extra-space.
8502 * Documentation/topdocs/NEWS.tely (Top): add entry.
8504 * input/regression/alignment-vertical-spacing.ly: new file.
8506 * python/convertrules.py (conv): add rule.
8508 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8510 * lily/align-interface.cc (stretch_after_break): new
8511 function. Read fixed-alignment-extra-space property.
8512 (align_elements_to_extents): read alignment-extra-space property.
8514 * lily/lily-guile.cc (robust_scm2dir): new function.
8516 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8517 (annotate-space-left): new function. Annotate space left on page.
8518 (annotate-y-interval): new function.
8519 (paper-system-annotate-last): new function. Annotate bottom-space.
8521 * mf/feta-beugel.mf (y):
8523 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8525 * VERSION (PACKAGE_NAME): release 2.7.11
8527 * scm/lily-library.scm (interval-translate): new function
8528 (interval-center): new function.
8530 * scm/page-layout.scm (paper-system-annotate): new function. Add
8531 arrows for dimensions.
8533 * scm/stencil.scm (dimension-arrows): new function.
8535 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8537 * input/regression/page-spacing.ly: add annotatespacing
8539 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8540 (LY_DEFINE): new function ly:paper-system-set-property!
8542 * Documentation/user/global.itely (Paper size): explain how to add
8545 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8546 correspond to GS's definition.
8548 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8550 (print): only connect to next bracket if the next one is alive.
8551 (print): set padding to 0.0 if the bound is a breakable
8552 column. This makes tupletFullLength brackets reach up to the staff
8553 line if it doesn't connect to the next line.
8555 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8557 * lily/bar-number-engraver.cc: correct docs.
8559 * scm/output-lib.scm (first-bar-number-invisible): rename from
8560 default-bar-number-visibility
8562 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8564 * scm/define-music-properties.scm (all-music-properties): remove
8567 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8569 * po/fi.po: refresh.
8571 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8573 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8575 (disappear): bugfix.
8577 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8579 * lily/include/paper-system.hh (class Paper_system): remove
8580 staff_extents_ member.
8582 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8584 * lily/include/paper-system.hh (class Paper_system): remove
8585 number_ variable. Remove is_title_. Remove break_before_penalty_
8587 * lily/paper-book.cc (systems): use 'number property iso. number_
8590 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8591 remove ly:paper-system-number.
8593 * scm/lily-library.scm (paper-system-title?): new function.
8595 * lily/book.cc (process): bugfix: flip ?: cases.
8597 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8600 * ly/music-functions-init.ly: add outputProperty music function.
8602 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8604 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8606 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8608 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8610 * lily/paper-system.cc (internal_get_property): new function.
8612 * Documentation/user/global.itely (Vertical spacing): refer to
8615 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8618 * input/regression/page-spacing.ly: new file.
8620 * input/regression/page-top-space.ly: new file.
8622 * lily/spacing-spanner.cc: cmath -> math.h
8624 * lily/paper-system.cc (read_left_bound): new function. Read
8625 line-break-system-details from left bound to determine extents.
8627 * Documentation/user/programming-interface.itely (Using LilyPond
8628 syntax inside Scheme): change applyxxx -> applyXxx.
8630 * ly/music-functions-init.ly: add outputProperty music function.
8632 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8634 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8636 * python/convertrules.py (conv): rule
8638 * ly/music-functions-init.ly: applyxxx -> applyXxx
8640 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8643 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8645 * flower/include/real.hh: include <math.h> iso. <cmath>
8647 * flower/include/offset.hh: include real.hh
8649 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8651 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8652 fix example, now that 'interfaces is no longer directly available.
8654 * lily/book.cc (process): don't crash if paper == NULL.
8658 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8660 * scm/define-music-types.scm (music-descriptions): set length and
8661 start-callback for QuoteMusic
8663 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8665 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8666 arguments. Fixes compilation error with gcc 3.3.
8668 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8670 * VERSION: release 2.7.10
8672 * stepmake/stepmake/python-module-rules.make
8673 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8675 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8678 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8680 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8681 -Werror. Otherwise GCC barfs over various optimizations.
8683 * scm/define-grob-properties.scm (all-internal-grob-properties):
8684 add note-head property
8686 * Documentation/user/instrument-notation.itely (Laissez vibrer
8689 * input/regression/laissez-vibrer-ties.ly: new file.
8691 * lily/laissez-vibrer-engraver.cc: new file.
8693 * lily/include/tie-column-format.hh: new file.
8695 * lily/tie-column-format.cc: new file.
8697 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8699 * lily/laissez-vibrer-tie.cc: new file.
8701 * lily/include/laissez-vibrer-tie.hh: new file.
8703 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8705 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8707 * scm/define-grobs.scm (all-grob-descriptions): add
8708 LaissezVibrerTie, LaissezVibrerTieColumn
8710 * lily/tie-column.cc (set_tie_config_directions): new function
8711 (final_shape_adjustment): new function.
8712 (shift_small_ties): new function.
8714 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8716 * lily/include/tie.hh (struct Tie_details): add x_gap_
8717 (struct Tie_configuration): add head_position_
8719 * lily/tie-column.cc (set_chord_outline): new function.
8721 * mf/cmr.enc.in: remove file.
8723 2005-09-11 Graham Percival <gpermus@gmail.com>
8725 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8727 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8729 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8730 reduce aliasing effects.
8732 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8735 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8737 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8739 * flower/include/real.hh: std::fabs too.
8741 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8743 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8745 * lily, flower: Include C++ iso C headers. Import namespace std
8748 * lily/side-position-interface.cc:
8750 * lily/note-head.cc:
8751 * lily/include/includable-lexer.hh:
8752 * flower/include/string-data.icc: Remove using std::*.
8754 * lily, flower: Include C++ iso C headers. Import namespace std
8757 * lily/side-position-interface.cc:
8759 * lily/note-head.cc:
8760 * lily/include/includable-lexer.hh:
8761 * flower/include/string-data.icc: Remove using std::*.
8763 * Documentation/user/instrument-notation.itely (Entering lyrics):
8764 Multiple latin-1->utf-8 conversion fix.
8766 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8768 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8770 * lily/tie.cc (get_configuration): also avoid dots for non-space
8773 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8775 * Documentation/user/instrument-notation.itely: Bugfix.
8777 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8779 * tex/GNUmakefile: don't install texinfo.tex
8781 * tex/ : cleanup: remove unused files.
8783 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8785 * flower/include/real.hh: using std::{isnan,isinf}
8787 * VERSION (PATCH_LEVEL): release 2.7.9
8789 2005-09-05 Graham Percival <gpermus@gmail.com>
8791 * Documentation/user/ instrument-notation.itely,
8792 advanced-notation.itely: minor tweaks.
8794 * input/test/script-chart.ly: add item padding.
8796 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8798 * flower/offset.cc: use math.h iso. <cmath>
8800 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8803 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8804 (widen-left-stencil-edges): new function. Fix alignment problems
8805 with LaTeX includegraphics.
8807 * lily/text-interface.cc (interpret_markup): use abort().
8809 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8811 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8813 * lily/tie.cc (get_configuration): update bezier shape as we
8815 (get_configuration): don't move large ties if we're outside of the
8818 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8820 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8822 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8824 * .cvsignore: Add auto-generated configure files and then some.
8826 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8828 * scm/define-grobs.scm (DynamicLineSpanner): Add
8829 X-extent-callback. Fixes hairpin-slur collision.
8831 2005-08-31 Graham Percival <gpermus@gmail.com>
8833 * Documentation/user/advanced-notation.itely,
8834 basic-notation.itely: minor changes.
8836 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8838 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8839 \linebreak between each .eps file if \betweenLilyPondSystem is
8842 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8843 music): Document the \linebreak
8845 * Documentation/user/lilypond-book.itely,
8846 input/tutorial/lbook-latex-test.tex,
8847 Documentation/user/examples.itely: Remove \usepackage{graphics}
8849 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8851 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8853 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8856 * scripts/lilypond-book.py (PREAMBLE_LY): define
8857 inside-lilypond-book
8858 (modify_preamble): new function. Insert \RequirePackage{graphics}
8859 when no {graphics found in preamble.
8861 2005-08030 Graham Percival <gpermus@gmail.com>
8863 * Documentation/user/basic-notation.itely, global.itely,
8864 tutorial.itely: misc small changes.
8866 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8868 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8871 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8873 * lily/tie-column.cc (new_directions): put Tie down on center
8876 * lily/script-interface.cc (before_line_breaking): use
8877 Grob::programming_error
8879 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8881 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8884 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8886 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8888 2005-08-29 Werner Lemberg <wl@gnu.org>
8890 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8891 the `*.scale.pfa' files to avoid warnings.
8893 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8895 * lily/tempo-performer.cc (process_music): idem.
8897 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8899 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8901 * Documentation/user/advanced-notation.itely (Text markup): not a
8904 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8906 * lily/staff-performer.cc (initialize): add tempo/name to
8909 2005-08-26 Graham Percival <gpermus@gmail.com>
8911 * Documentation/user/advanced.itely: add text-only example.
8913 * Documentation/user/invoking.itely: add index entries for
8916 * Documentation/user/ tutorial.itely, basic-notation.itely:
8917 small fixes suggested by Steve D. Thanks!
8919 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8921 * input/regression/markup-bidi-pango.ly: new file.
8923 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8924 standard. Remove #ifdef. Remove memleak.
8925 (text_stencil): use text_dir to decide how to composite items.
8926 (text_stencil): determine uniform text direction for the entire
8929 * scripts/lilypond-book.py (output_name): remove
8930 latex_filter_cmd. Non-portable to non-Unix systems.
8931 (get_latex_textwidth): use File.write and os.unlink() instead.
8933 * THANKS: add Vicente & Trevor.
8935 * lily/grob.cc (discretionary_processing): look up origin for
8936 programming_error too.
8938 * input/regression/tie-broken.ly: new file.
8940 * lily/tie-column.cc (set_chord_outlines): set outline for line
8943 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8945 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8946 unscaled transform, just translate stencils.
8948 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8951 * scm/define-markup-commands.scm (wordwrap-string): use
8953 (wordwrap-stencils): idem.
8956 (wordwrap-stencils): translate last line to right for
8957 text-direction = LEFT.
8959 * scm/define-grob-properties.scm (all-user-grob-properties): add
8962 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8964 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8965 when copying a Lily_parser object.
8967 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8969 * scm/define-markup-commands.scm (null): add null markup.
8971 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8973 * lily/item.cc: Add documentation of center-invisible
8975 2005-08-24 Graham Percival <gpermus@gmail.com>
8977 * Documentation/user/advanced-notation.itely: add info about
8980 * Documentation/user/programming-interface.itely: fix example
8981 involving raised text.
8983 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8985 * lily/beam.cc (print): fix X start/end points of isolated
8988 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8990 * lily/multi-measure-rest.cc (set_text_rods): new function.
8992 * lily/vertical-align-engraver.cc (process_music): call
8993 Align_interface::set_axis(). This forces #'elements to be ordered,
8994 preventing random vertical reordering of staves.
8996 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8997 add avoid-slur property.
8999 * Documentation/user/basic-notation.itely (Measure repeats): add
9000 countPercentRepeats example.
9002 * Documentation/user/advanced-notation.itely (Other text markup
9003 issues): remove remark about normal-font. We have \normal-text
9005 * input/regression/tie-chord.ly: add note about remaining bugs.
9007 * lily/tie.cc (print): try Tie_column::set_directions () if
9008 control-points not yet defined.
9010 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9012 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9013 extent. This fixes braces falling out of the EPS bbox.
9015 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9018 2005-08-23 Graham Percival <gpermus@gmail.com>
9020 * {various} : change #up->#UP and #down->#DOWN.
9022 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9024 * Documentation/user/advanced-notation.itely: clarify
9025 what objects handles text on a multimeasure rest.
9027 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9029 * VERSION (PATCH_LEVEL): release 2.7.7
9031 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9033 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9035 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9037 * input/regression/*.ly: formatting clean-up. Default layout
9038 before music expression.
9040 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9041 romanze28-2 example.
9043 * scm/ps-to-png.scm: remove dir-re function.
9044 (make-ps-images): generate page names, instead of globbing them.
9045 This brings down LilyPond memory usage for make web by a factor
9048 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9049 don't use glob. With 3000 files, globbing
9050 Documentation/user/out-www/ can take too much time.
9052 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9054 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9056 * input/regression/tie-manual.ly: new file
9058 * input/regression/tie-chord.ly: update.
9060 * flower/include/interval.hh (struct Interval_t):
9062 * lily/tie.cc (distance): new function
9063 (height): new function.
9064 (init): new function
9065 (Tie_details): new struct.
9067 * lily/skyline.cc (skyline_height): new function.
9069 * lily/tie-column.cc (set_chord_outlines): new function.
9070 (new_directions): read tie-configuration
9072 * lily/skyline.cc: fix ASCII art.
9074 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9076 * python/convertrules.py (string_or_scheme): Fix spelling error
9078 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9080 * lily/tie-column.cc (set_directions): set directions only once.
9081 (add_configuration): new function.
9083 * lily/tie.cc (set_control_points): new function
9085 * lily/tie-column.cc (new_directions): new function.
9087 * ly/music-functions-init.ly: set 'pitch property
9088 iso. trill-pitch. This makes \relative work with \pitchedTrill
9090 * lily/tie.cc (get_configuration): new function. Don't generate
9091 control points, rather, generate configuration.
9092 remove head-pair property.
9094 * lily/include/tie.hh (struct Tie_configuration): new struct.
9096 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9098 * Documentation/topdocs/NEWS.tely: clarify.
9100 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9102 * lily/tie.cc: remove minimum-length
9104 * scm/define-grob-properties.scm (all-user-grob-properties):
9105 remove staffline-clearance, y-offset
9107 * input/regression/tie-dots.ly (Module): remove.
9109 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9110 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9112 * input/regression/tie-single.ly: new file.
9114 2005-08-21 Graham Percival <gpermus@gmail.com>
9116 * ly/bagpipe.ly: fix compile problem.
9118 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9120 * lily/midi-item.cc (name): new method.
9122 * lily/staff-performer.cc (acknowledge_audio_element): use
9123 signature of baseclass.
9125 * lily/engraver-group.cc (do_announces): move recursion call out
9128 * lily/drum-note-performer.cc (class Drum_note_performer): use
9129 process_music everywhere.
9131 * ly/performer-init.ly: add default children everywhere.
9133 * lily/paper-book.cc (output): call paper-book-write-midis
9134 directly: always write MIDI, even if no \layout {} block.
9136 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9138 * VERSION (PACKAGE_NAME): release 2.7.6
9140 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9141 about not being able to handle repeat.
9143 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9145 * Documentation/user/examples.itely (Piano templates):
9146 * lily/include/performer-group.hh: Remove last traces of
9147 Performer_group_performer. Fixes make web.
9149 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9151 * Documentation/user/examples.itely (Piano templates): change
9152 Engraver_group_engraver -> Engraver_group
9154 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9155 scm_stand_in_procs is not weak_any.
9157 * lily/volta-bracket.cc (print): don't use strcmp().
9159 * lily/volta-engraver.cc (process_music): use
9160 Text_interface::is_markup() for setting the 'text property of the
9163 * input/mutopia/claop.py (accents): update syntax to 2.6
9165 * scm/define-context-properties.scm
9166 (all-user-translation-properties): add countPercentRepeats.
9168 * Documentation/user/basic-notation.itely (Measure repeats): add
9169 isolated percent example.
9171 2005-08-18 Graham Percival <gpermus@gmail.com>
9173 * input/ {various}: change direction #1, #-1 to
9174 #up/#down or \fooUp, \fooDown.
9176 * Documentation/user/music-glossary.tely: #-1 to #down.
9178 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9179 to #up, #-1 to #down.
9181 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9183 * lily/include/engraver-group.hh: rename.
9185 * lily/include/performer-group.hh: rename.
9187 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9189 * input/test/script-abbreviations.ly: Removed some old LaTeX
9192 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9194 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9195 Remove functions. Remove if 1: constructs, reindent.
9197 * scripts/convert-ly.py (add_version): Add functions from
9200 * scm/script.scm (default-script-alist):
9201 s/priority/script-priority. Fixes script stacking. Backportme.
9202 (Fermata): Very low priority.
9204 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9206 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9208 * input/regression/slur-script.ly: remove padding tweaks. Add
9211 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9212 time sigs and related stuff.
9214 * scm/define-grob-properties.scm (all-user-grob-properties): add