1 2006-11-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * buildscripts/git-update-changelog.py:
4 sort commits, and use .git-commits-done file.
8 dist emacs patches too.
10 2006-11-02 Han-Wen Nienhuys <hanwen@lilypond.org>
15 * lily/context-def.cc:
16 * lily/include/parse-scm.hh:
17 * lily/include/smobs.hh:
20 * lily/program-option.cc:
22 implement and use ASSERT_LIVE_IS_ALLOWED()
24 * ly/music-functions-init.ly:
26 set-part-combine fix for autochange.
28 * lily/include/lily-lexer.hh:
29 * lily/include/lily-parser.hh:
31 * lily/lily-parser-scheme.cc:
32 * lily/lily-parser.cc:
33 clear lexer scopes after parsing file. Plugs pseudo memory leak
35 * ly/declarations-init.ly:
36 * ly/music-functions-init.ly:
37 * scm/part-combiner.scm:
38 Remove set-part-combine-listener. This plugs a memory leak.
44 don't delete .scale.pfa; the FF script may not have read themyet. Fixes brace OTF bug
49 * lily/part-combine-iterator.cc:
50 don't allocate part combine events statically. Plugs small leak.
52 * lily/lily-parser-scheme.cc:
53 plug memleak in case of failed files.
55 * lily/include/source.hh:
60 hi-bit ascii is also counted as alpha chars. This allows unicodeidentifiers, and fixes premature stop at accented char. (#134)
62 * lily/include/program-option.hh:
63 * lily/program-option.cc:
64 get_program_option() function
67 change naming: print-page-number becomescreate-page-number-stencil. This avoids nameclash withprint-page-number boolean, and fixes page number printing.
69 * lily/include/translator.hh:
70 * lily/include/translator.icc:
74 * lily/figured-bass-engraver.cc:
75 don't use ASSIGN_EVENT_ONCE for Figured_bass_engraver. Fixes #128.
77 * stepmake/stepmake/compile-vars.make:
78 don't do -fPIC for mingw. Suppresses warning about unnecessary -fPIC
80 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
86 trim warning messages.
91 * input/regression/utf-8.ly:
92 document utf-8 meaning of phrases.
94 * scm/define-markup-commands.scm:
95 make \caps markup default to smallCaps
99 use glyph indexing for glyph name .notdef
101 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
103 * input/regression/utf-8.ly: Fix doc to match order of language
106 2006-11-01 Joe Neeman <joeneeman@gmail.com>
108 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
109 page and line forces.
111 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
113 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
115 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
117 * Documentation/user/GNUmakefile:
118 don't use ImageMagick, use GS directly.
121 otf depends on otf-g?table. Fixes race condition in -j2 build.
122 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
128 remove .deb/.rpm downloading.
130 * buildscripts/git-update-changelog.py:
131 bugfixes for git-update-changelog.py
133 * Documentation/user/GNUmakefile:
136 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
138 * input/regression/tie-semi-single.ly:
139 use position/direction from single tie case too. This fixes
140 overrides and defaults for single laissez-vibrer and repeat ties.
142 * buildscripts/git-update-changelog.py:
143 only prepend header if one patch was successful.
145 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
147 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
148 stuff. Remove cygwin packaging stuff.
150 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
152 * python/convertrules.py (conv): Part 2 fixes vertical extent.
154 * input/test/vertical-extent.ly: Fix and elaborate on vertical
155 staff extent. (Thanks Mats)
157 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
159 * buildscripts/git-update-changelog.py (main): write .msg and cvs
162 * scm/define-grobs.scm:
163 separation-items have width
169 * Documentation/topdocs/NEWS.tely:
170 * lily/separating-group-spanner.cc:
171 * lily/slur-engraver.cc:
172 * lily/slur-scoring.cc:
173 * scm/define-grobs.scm:
174 * input/regression/slur-clef.ly:
175 add breakableSeparationItem to extra encompass for slurs. This
176 fixes slur/clef slur/key collisions etc. Should fix #49
178 * lily/include/slur-scoring.hh:
179 * lily/slur-scoring.cc:
180 Use X of separation item as slur start. Fixes #120
182 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
184 * buildscripts/git-update-changelog.py (changelog_body): don't
187 * lily/grob.cc: add avoid-slur
189 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
193 move server/emacsclient to elisp/
195 * buildscripts/git-update-changelog.py (Commit.note_del_file):
198 * elisp/server.el.patch:
201 * elisp/emacsclient.patch:
204 * buildscripts/git-update-changelog.py:
211 * buildscripts/git-update-changelog.py:
212 script to update ChangeLog with Git messages.
214 * lily/beam-engraver.cc:
215 * input/regression/rest-pitched-beam.ly:
216 don't set callback if staff-position set. Fixes #126.
218 * lily/bar-number-engraver.cc:
220 * lily/fingering-engraver.cc:
221 * lily/grob-property.cc:
223 * lily/include/grob.hh:
224 * lily/include/lily-guile-macros.hh:
225 * lily/mark-engraver.cc:
226 * lily/melody-engraver.cc:
227 * lily/script-column.cc:
228 * lily/tie-formatting-problem.cc:
230 internal_get_property_data() using ly_symbol2scm()
232 * stepmake/stepmake/generic-targets.make:
233 create .gitignore in outdir.
238 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
240 * input/test/vertical-extent.ly:
241 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
243 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
245 * stepmake/bin/add-html-footer.py (compose): remove setgcos
247 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
249 * GNUmakefile.in (install-help2man): install-help2man target.
251 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
253 * SConstruct (configure): Do not check for /bin/sh.
255 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
257 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
260 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
262 * input/regression/fret-boards.ly: new file.
264 * po/de.po: new po courtesy translation team.
266 * scripts/lilypond-book.py (get_option_parser): add newline to doc
269 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
271 * ly/gregorian-init.ly (neumeDemoLayout): update
272 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
274 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
275 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
277 2006-10-27 Erlend Aasland <erlenda@gmail.com>
279 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
280 Yet another build fix.
282 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
284 * SConstruct (lilypondprefix): use sorted() for list_sort()
287 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
289 * flower/SConscript: Unit test rules.
291 * flower/test-std.cc: Compile fix.
293 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
295 * python/midi.c (pymidi_parse_track): warning fixes.
297 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
298 include dot-column.hh
300 2006-10-26 Graham Percival <gpermus@gmail.com>
302 * Documentation/user/{basic-, global}: minor changes from mailist.
304 2006-10-26 Erlend Aasland <erlenda@gmail.com>
306 * scm/define-grobs.scm: trivial beautification
308 * lily/tie-performer.cc: no need to #include "pqueue.hh"
310 * lily/source-file.cc: put multibyte var inside #if clause
312 * scm/define-grob-interfaces.scm:
313 * scm/define-grob-properties.scm:
314 Build fix (string-fret-finger-combinations)
316 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
319 * Documentation/user/lilypond-book.itely: Build fix.
321 2006-10-26 Joe Neeman <joeneeman@gmail.com>
323 * lily/system.cc (get_paper_system):
324 * lily/paper-book.cc (systems):
325 move most of the backwards compatibility stuff into
328 * Documentation/topdocs/NEWS.tely: add 2 entries for the
331 * Documentation/user/page.itely: remove time-scaled-music
332 bug for the Page_turn_engraver
334 * lily/paper-book.cc (set_system_penalty): backwards
335 compatibility (breakbefore) for the old page breaker
337 2006-10-25 Graham Percival <gpermus@gmail.com>
339 * Diocumentation/user/instrument-notation.itely: added more
340 info about stanzas; thanks Geoff!
342 * Documentation/user/ {basic, advanced}: small fixes from
345 * THANKS: add some bug reporters.
347 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
349 * scm/define-context-properties.scm (all-user-translation-properties):
350 noteToFretFunction: Add.
352 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
353 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
355 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
357 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
360 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
361 Remove bashism in delete.
363 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
365 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
367 * scm/translation-functions.scm (determine-frets-mf): flatten let*
369 * scm/define-context-properties.scm
370 (all-user-translation-properties): add maximumFretStretch property.
372 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
374 * lily/source-file.cc (get_counts): use multibyte variable.
376 * scm/translation-functions.scm (determine-frets-mf): new
377 function: compute fret numbers.
379 * scm/output-lib.scm (string-frets->description) new function.
380 (fret-board::calc-stencil): new function
382 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
384 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
386 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
388 * lily/tab-note-heads-engraver.cc: cleanups.
390 * lily/fretboard-engraver.cc: new file
392 * ly/engraver-init.ly: add FretBoards context
394 2006-10-24 Joe Neeman <joeneeman@gmail.com>
396 * lily/grob.cc (pure_relative_y_coordinate)
397 (pure_height): use the new call_pure_function stuff
399 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
402 * lily/side-position-interface.cc (pure_y_aligned_side): add an
405 * lily/simple-closure.cc (ly_eval_simple_closure): make
406 simple-closure evaluatable from scheme
407 (evaluate_with_simple_closure): make simple-closures pure-
410 * lily/slur.cc (pure_outside_slur_callback): new function
412 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
413 fits in with previous changes that made the page forces much
416 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
417 and pure-Y-extent into this new function.
418 (pure-conversions-alist): add outside-slur-callback
420 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
422 * Documentation/user/advanced-notation.itely (Instrument names):
423 Remove obsolete bug workaround for instrument names on piano
426 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
428 * Documentation/user/lilypond-book.itely (Integrating DocBook and
429 music): patch by Bertalan Fodor for docbook.
431 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
432 of $(LILYPOND). Prevents lilypond run for .txt files.
434 * INSTALL.txt: gitness.
436 * .cvsignore: update to force gitness.
438 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
440 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
441 detect suicide in nested tuplets.
443 2006-10-23 Werner Lemberg <wl@gnu.org>
445 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
446 typo in argument to FT_Get_X11_Font_Format.
448 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
450 * stepmake/stepmake/po-vars.make: more gitness.
452 * flower/polynomial.cc (check_sol): no empty if bodies.
454 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
456 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
458 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
460 * Documentation/user/examples.itely (Transcription of mensural
461 music): Added more comments in .ly source. Suggest to remove
462 Forbid_line_break_engraver to allow line breaking at all bars.
464 * Documentation/user/instrument-notation.itely (Ancient
465 articulations): Updated @refbugs regarding episem.
467 * Documentation/user/instrument-notation.itely (Gregorian square
468 neumes ligatures): Added \augmentum dots. Updated @refbugs
469 regarding \augmentum.
471 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
473 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
476 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
479 * ly/gregorian-init.ly: Added \augmentum macro.
481 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
483 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
485 * lily/pango-font.cc (pango_item_string_stencil): use
486 FT_Get_X11_Font_Format()
488 2006-10-22 John Mandereau <john.mandereau@free.fr>
490 * po/fr.po: update translation.
492 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
494 * VERSION (PATCH_LEVEL): bump version
496 * input/regression/horizontal-bracket-break.ly: new file.
498 * scm/define-grobs.scm (all-grob-descriptions): calc
501 * lily/horizontal-bracket.cc (make_bracket): support
502 connect-to-neighbor. Fix #118
504 * VERSION: release 2.9.26-2
506 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
508 * VERSION (PACKAGE_NAME): release 2.9.26
510 * buildscripts/output-distance.py (test_basic_compare): add
512 (FileLink.multi_img_cell): new function, glob multi-page png
515 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
517 * po/lilypond.pot: update.
519 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
521 * Documentation/user/global.itely (File structure): remove
524 * lily/parser.yy (FIXME): remove ADDQUOTE
526 * Documentation/user/global.itely (Extracting fragments of
527 notation): new node, about clip systems.
529 * Documentation/user/lilypond-book.itely (Many quotes of a large
530 score): ref to clip systems.
532 * Documentation/user/instrument-notation.itely (Entering lyrics):
533 add note about lyric ties and required font.
535 * lily/open-type-font.cc (glyph_list): format errors.
537 * Documentation/user/programming-interface.itely (Scheme
538 procedures as properties): more doco on simple-closure and scheme
540 (Input variables and Scheme): use lilypond[verbatim], document
543 * Documentation/user/page.itely (Displaying spacing): use \book
544 explicitly, so arrows show .
545 (Line breaking): add note about Forbid_line_break_engraver
547 * Documentation/user/tweaks.itely (Common tweaks): also set length
548 to prevent tie squeezing.
549 (Default files): use @var{}
551 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
552 (Generating LilyPond files): add FOMUS.
554 2006-10-20 Joe Neeman <joeneeman@gmail.com>
556 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
557 Y-offset for TextScript and Script
559 * lily/text-engraver.cc (make_item):
560 * lily/script-engraver.cc (make_script_from_event):
561 remove call to Side_position_interface::set_axis since all scripts
562 now have this set by default
565 * lily/prob.cc: use variables
567 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
569 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
570 at typography, rather analyse stream event duration.
572 * Documentation/user/page.itely (Page formatting): set a6 paper
573 for system separator example.
575 * lily/arpeggio.cc (Module): idem.
577 * lily/accidental-placement.cc: add script-priority property.
579 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
581 * lily/ttf.cc (print_trailer): if all else fails: use
582 glyphIndexXXXX as glyph name. Fixes #117.
584 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
585 entry if cmap contains glyph.
586 (get_index_to_charcode_map): remove from Pango_font class, use
587 global filename -> font mapping.
588 (get_glyph_index_name): new function.
589 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
592 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
594 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
597 * scm/define-grob-properties.scm (all-user-grob-properties):
598 remove outdated doc. Fixes #116
600 * lily/completion-note-heads-engraver.cc (process_music): always
601 clone input events; otherwise we may overwrite input 'duration
602 property. Fixes #115.
604 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
607 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
610 * VERSION (PATCH_LEVEL): bump version.
612 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
614 * lily/engraver.cc (internal_make_grob): use variables.
616 * flower/string-convert.cc (dec2double): clean-up warnings.
618 * configure.in (CXXFLAGS): add -Werror.
620 * VERSION (PACKAGE_NAME): release 2.9.25
622 2006-10-18 Joe Neeman <joeneeman@gmail.com>
624 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
625 line even if we precede a forced break.
627 * lily/optimal-page-breaking.cc (try_page_spacing): square line
628 forces too. Make page-spacing weight default to 10 because the
629 changes to vertical springs decreased the page force/line force
630 proportions. Also, take the average of line force and page force
631 instead of just the sum.
633 * lily/constrained-breaking.cc (initialize): make the stiffness
634 of the vertical springs depend on the height of the system. This
635 prevents pages with only a few large systems from getting huge
638 * Documentation/user/page.itely (Page formatting): document the
639 change in default page-spacing-weight
641 * lily/include/constrained-breaking.hh: initialise bottom_padding_
643 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
645 * input/typography-demo.ly (melody): remove superfluous slur.
647 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
648 add piano-pedal-script-interface
650 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
652 * scripts/lilypond-book.py: DocBook support.
654 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
656 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
658 (stop_translation_timestep): set bound to currentMusicalColumn if
659 not set yet. Fixes #102
661 * lily/piano-pedal-bracket.cc: formatting.
663 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
665 * lily/piano-pedal-align-engraver.cc: new class
666 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
669 2006-10-18 Heikki Junes <hjunes@gmail.com>
671 * po/fi.po: Update Finnish translation (before the next release).
673 2006-10-17 Joe Neeman <joeneeman@gmail.com>
675 * lily/system.cc (get_paper_system): reinstate the backwards-
676 compatible page breaking for the old page breaker.
678 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
680 * lily/recording-group-engraver.cc: removed
682 * lily/context.cc, lily/translator-group.cc: Don't touch
683 Context::implementation_ if it's null
685 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
687 * scm/paper.scm: only use left-margin if defined.
689 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
691 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
693 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
694 strokeFingerOrientations
696 * lily/script-column.cc (row_before_line_breaking): also handle
697 accidentals and arpeggios in horizontal script stacking.
699 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
702 * input/regression/script-stack-horizontal.ly: trim.
704 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
706 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
709 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
710 'text if string argument.
712 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
714 * scm/define-context-properties.scm
715 (all-user-translation-properties): change to strokeFingerOrientations
717 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
719 * lily/parser.yy: remove debug output
721 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
723 * ly/paper-defaults.ly: set left/right margin.
725 * scm/paper.scm (set-paper-dimensions): use left-margin and
726 right-margin for computing linewidth.
728 * Documentation/topdocs/NEWS.tely (Top): idem.
730 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
733 * scm/define-markup-commands.scm (tied-lyric): increase negative
734 space: space syllables tighter.
736 * VERSION (PATCH_LEVEL): bump version.
738 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
741 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
743 * COPYING: further clarification
745 * VERSION: release 2.9.24
747 * input/regression/script-stack-horizontal.ly: add version.
749 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
751 * input/regression/lyric-tie.ly (texidoc): use different words.
753 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
755 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
757 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
758 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
760 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
762 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
764 * Doxyfile: remove file.
766 * scm/define-grob-interfaces.scm (string-finger-interface): add
767 string-finger-interface
769 * lily/general-scheme.cc (LY_DEFINE): move
770 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
772 * Documentation/topdocs/NEWS.tely (Top): add note for
773 string-finger feature.
775 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
778 * scm/output-lib.scm (string-finger::calc-text): read 'digit
781 * input/regression/script-stack-horizontal.ly: new file.
783 * ly/engraver-init.ly: add Script_row_engraver.
785 * lily/script-column.cc (order_grobs): refactor: separate axis
787 (row_before_line_breaking): new function.
789 * lily/script-row-engraver.cc (Script_row_engraver): new file.
791 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
793 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
795 * Documentation/user/instrument-notation.itely: Cleanup: Remove
796 annoying skip notes from mensural ligature example. Update
797 @refbugs for ligatures and mensural ligatures.
799 * lily/coherent-ligature-engraver.cc,
800 lily/include/coherent-ligature-engraver.hh,
801 lily/mensural-ligature-engraver.cc,
802 lily/vaticana-ligature-engraver.cc: Revise code for item
803 reparentizing. There should now be less programming_error
806 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
808 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
809 Maintenance bugfix: Don't create empty Stencil (), but empty box
810 instead. This fix should eliminate some programming_error
813 * ly/engraver-init.ly (MensuralStaff): Set default accidental
816 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
817 \layout block _before_ score.
819 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
821 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
823 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
825 2006-10-13 Erlend Aasland <erlenda@gmail.com>
827 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
829 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
831 * VERSION (PATCH_LEVEL): bump version.
833 * COPYING: clarify exception note.
835 * lily/main.cc: remove remark about "COPYING".
837 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
838 system-count starts at 0 for each clip-region. Change name to
839 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
840 layout block, per score.
842 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
844 * lily/input-smob.cc: add equal_p for Input
846 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
849 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
851 * lily/prob.cc: Add equal_p predicate for Prob
853 * lily/translator.cc: small cleanup
855 * scm/document-music.cc: use data from translator listener
856 registration to generate documentation for event classes
858 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
860 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
862 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
864 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
866 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
868 * Documentation/topdocs/INSTALL.texi: Thinko.
870 * .cvsignore: Update.
872 * lexer-gcc-3.1.sh: Remove.
874 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
875 Update anonymous cvs access. Remove comment about gcc 3.0.4.
877 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
879 * VERSION: release 2.9.23
881 * lily/paper-column-engraver.cc (stop_translation_timestep): also
884 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
886 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
888 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
890 * input/regression/clip-systems.ly (Notes): new file.
892 * scm/lily.scm (define-scheme-options): add clip-systems option.
894 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
896 (dump-stencil-as-EPS): move bbox calculation from previous
898 (output-framework): use -dclip-systems
900 * scm/lily-library.scm (filtered-map): new function
902 * scm/framework-ps.scm (clip-system-EPS): new function.
903 (clip-system-EPSes): new function.
905 * lily/paper-column.cc: add rhythmic-location to interface
907 * scm/define-grob-properties.scm (all-user-grob-properties): add
908 rhythmic-location property.
910 * scm/clip-region.scm: new file: rhythmic-location data type and
911 system-clipped-x-extent function.
913 * ly/init.ly: use (scm clip-region)
915 * lily/paper-column-engraver.cc (stop_translation_timestep): set
916 rhythmic-location for paper column grobs.
918 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
920 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
922 * ly/engraver-init.ly: Remove obsolete comment on
925 * Documentation/user/instrument-notation.itely: Tune Ancient
926 Articulations figure, such that the episem actually shows.
928 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
929 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
931 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
934 2006-10-12 Graham Percival <gpermus@gmail.com>
936 * Documentation/user/ {some}: minor edits that were lost somehow.
938 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
940 * VERSION (PACKAGE_NAME): bump version.
942 * input/regression/lyric-tie.ly (texidoc): new file.
944 * Documentation/topdocs/NEWS.tely (Top): add new feature.
946 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
948 * scm/define-markup-commands.scm (tied-lyric): new function: split
949 string along ~ and reattach with U+203F (tie character) and
952 * scm/output-lib.scm (lyric-text::calc-text): new function.
954 * lily/lyric-engraver.cc (process_music): don't set 'text.
956 * scm/output-lib.scm (string-finger::calc-text): new function
957 (lyric-text::print): new function.
959 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
960 generic for fingering & string number. Use for string-finger.
962 * scm/define-music-types.scm (music-descriptions): add
965 * lily/fingering-engraver.cc (listen_string_finger): new function
967 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
969 * scm/define-context-properties.scm
970 (all-user-translation-properties): add stringFingerOrientations
972 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
974 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
975 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
977 * lily/dots.cc: Added style property for dots.
979 * mf/parmesan-heads.mf: Fix typo in comment.
981 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
982 adding longa head to feta font and removing obsolete default
985 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
987 * scm/output-lib.scm (fingering::calc-text): use origin
988 event-property, not music-property.
990 * lily/lilypond.rc.in: spell my name correctly.
992 2006-10-10 Joe Neeman <joeneeman@gmail.com>
994 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
995 already have a non-empty extent. Fixes estimation for Hara-kiri
998 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
1000 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1003 * lily/ligature-engraver.cc: Remove unused #include.
1005 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1006 Bugfix: remove method check_for_prefix_loss(Item *) from global
1007 namespace to avoid namespace pollution.
1009 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1011 * VERSION: release 2.9.22
1013 * ly/generate-documentation.ly: update option name.
1015 * lily/dynamic-text-spanner.cc (print): revert fix.
1017 * scm/define-grob-interfaces.scm
1018 (trill-pitch-accidental-interface):
1019 add trill-pitch-accidental-interface
1021 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1022 dereference if it's really a duration.
1024 * lily/figured-bass-engraver.cc (process_music): clear spanner if
1025 useBassFigureExtenders is not set.
1026 (listen_bass_figure): record as new event if
1027 useBassFigureExtenders not set. Fixes #103.
1029 * scm/stencil.scm (circle-stencil): don't center stencil argument,
1030 instead: move circle. Fixes #107.
1032 * scm/define-grobs.scm (all-grob-descriptions): set
1033 allow-loose-spacing for PaperColumn and
1034 NonMusicalPaperColumn. Kludge for #110.
1036 * lily/spaceable-grob.cc: add allow-loose-spacing property.
1038 * lily/spacing-determine-loose-columns.cc (is_loose_column):
1039 allow-loose-spacing property.
1041 * scm/define-markup-commands.scm (postscript): gsave & grestore
1042 around embedded PS. Do setlinewidth too. Fixes #109.
1044 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
1046 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1047 code. This patch fixes ligature brackets that were not at all
1050 2006-10-08 Graham Percival <gpermus@gmail.com>
1052 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1054 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1056 * scm/define-context-properties.scm: clarified docs (bug 91).
1058 * Documentation/user/basic-notation.itely: document volta brackets
1059 not aligning (bug 63).
1061 * Documentation/user/ global.itely invoking.itely: ignore or
1062 add warnings about texstr.
1064 2006-10-08 John Mandereau <john.mandereau@free.fr>
1066 * po/fr.po: update translation.
1068 * po/: update msgids.
1070 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
1072 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1074 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
1076 * Documentation/user/page.itely (Two-pass vertical spacing): add
1077 documentation for two-pass spacing technique.
1079 2006-10-06 Graham Percival <gpermus@gmail.com>
1081 * Documentation/user/convert-ly.txt: new file; new
1082 storage place for this file (moved from bugs/ CVS).
1084 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
1086 * lily/note-head.cc: Fixed programming_error message.
1088 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
1090 * scm/define-grobs.scm (pure-conversion): move pure-callback
1093 * scm/script.scm (default-script-alist): set avoid-slur for turn,
1094 marcato, stopped, thumb.
1096 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
1098 * lily/completion-note-heads-engraver.cc (process_music): don't
1099 skimp on memory usage.
1101 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1104 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1105 parenthesis item. This fixes premature Y-extent triggering. Fixes
1108 * VERSION (PATCH_LEVEL): bump version.
1110 2006-10-04 Graham Percival <gpermus@gmail.com>
1112 * Documentation/user/advanced-notation.itely: added
1113 info about instrument names for piano or other contexts,
1116 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1118 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1119 solfa_base_notewidth as unit for non-DO-notes too.
1121 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1123 * VERSION: release 2.9.21
1125 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1128 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1130 * python/lilylib.py (progress): Minor fix.
1132 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1134 * lily/note-name-engraver.cc: doc engraver.
1136 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1138 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1140 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1143 * lily/stem-engraver.cc (make_stem): don't set duration-log
1145 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1146 write snippet-names binary.
1148 * python/lilylib.py (system): use os.system for mingw32
1150 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1153 * scm/backend-library.scm: update email address.
1155 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1158 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1161 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1162 handle dot creation separately.
1164 * lily/tab-note-heads-engraver.cc (process_music): idem.
1166 * lily/drum-note-engraver.cc (process_music): idem.
1168 * lily/note-heads-engraver.cc (process_music): idem.
1170 * lily/rest-engraver.cc: don't set duration-log.
1172 * scm/output-lib.scm (string-number::calc-text): new function.
1173 (note-head::calc-duration-log): new function.
1175 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1177 * scm/output-lib.scm (fingering::calc-text): new function.
1179 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1181 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1182 and include-eps-font -> include-eps-fonts
1184 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1186 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1188 * lily/timing-translator.cc: list properties.
1189 (start_translation_timestep): update internalBarNumber too.
1191 * scm/define-context-properties.scm
1192 (all-user-translation-properties): add internalBarNumber.
1194 * input/regression/spacing-no-note.ly: new file.
1196 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1198 * lily/book.cc: #include cleanup.
1200 * lily/include/lily-guile-macros.hh: add assert to
1201 scm_or_str2symbol(SCM).
1203 * VERSION (PATCH_LEVEL): bump version.
1205 * lily/spacing-spanner.cc (musical_column_spacing): handle
1206 musical->nonmusical spacing case, where there is no spacing
1207 wish. Fixes issue #61.
1209 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1210 (pango_item_string_stencil): use logical rect horizontally (to
1211 preserve spaces), ink_rect vertically (for time signatures).
1213 * lily/font-metric.cc (word_stencil): new interface function
1215 * input/regression/utf-8-mixed-text.ly: new file.
1217 * lily/percent-repeat-engraver.cc (listen_percent): remove
1220 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1221 non-dynamic scripts. Fixes #30.
1223 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1225 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1227 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1228 SCM_UNDEFINED for non-existent data.
1230 * lily/side-position-interface.cc (general_side_position): allow
1231 optional current_offset argument for chaining, so combinations of side-position
1232 and outside slur callback don't add up. Fixes issue #92.
1234 * lily/pango-font.cc (pango_item_string_stencil): use
1235 logical_rect. This prevents spaces after words from disappearing,
1238 * VERSION: release 2.9.20
1240 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1242 * scm/define-grob-properties.scm (all-user-grob-properties):
1243 mention stencil as user settable.
1245 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1247 * Documentation/user/page.itely (Page formatting):
1248 document auto-first-page-number
1250 * lily/page-breaking.cc (find_chunks_and_breaks):
1251 * lily/paper-score.cc (calc_breaking): Follow changes to the
1252 Constrained_breaking interface
1254 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1255 here backwards, as an optimisation
1256 (initialize): new function; move most of the code in resize () here
1257 (combine_demerits): cache ragged_right_
1258 (Constrained_breaking): constructor now takes the Paper_score
1260 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1262 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1263 avoid parser lookahead for 0-ary functions.
1265 * lily/translator.cc: Extract event classes from
1266 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1268 2006-10-02 Heikki Junes <hjunes@gmail.com>
1270 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1273 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1275 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1276 function. Call the page breaking function selected in the
1277 `page-breaking' \paper variable, then the post processing function
1278 chosen using the `page-post-process' \paper variable.
1279 (line-height): new function. Return the height of a system.
1280 (line-minimum-position-on-page): new function. Return the position
1281 of a system on page (using the previous line position), only
1282 considering between system padding.
1283 (stretchable-line?): new function. Says whether a line can be
1284 stretched (ie. is not a title nor a single staff system).
1285 (page-maximum-space-left): new function. Computes space left on a
1286 page, when all systems are separated by their padding.
1288 * lily/page-breaking.cc (breaking::make_pages): Move page post
1289 processing function call to page breaking wrapper (common to all
1292 * lily/paper-book.cc (book::pages): call the page breaking
1293 wrapper, instead of the page breaker directly
1295 * ly/paper-defaults.ly: Add \paper variables for page breaking
1296 wrapper and page post processing function. Make
1297 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1298 `system-maximum-stretch-procedure' variable for holding a function
1299 computing the maximum stretch a system allows.
1301 * scm/layout-page-dump.scm (write-page-breaks): computes the
1302 stretch to apply to systems on a page to minimize left
1303 space. Dump this stretch length.
1305 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1306 the system-stretch property of the tweak data to stretch the
1308 (includePageLayoutFile): Void function which includes the
1309 generated page-layout file if it exists and if the page layout
1310 dumping is not asked.
1311 (scoreTweak): if the score tweak named by the argument exists,
1314 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1316 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1317 handle correctly the case where there are multiple \noPageBreaks
1320 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1322 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1324 * abc2ly.py fix so that entering " -- " will translate to a -- in
1325 the lilypond instead of a " - - "
1327 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1329 * lily/align-interface.cc: fix typo
1331 * lily/dynamic-text-spanner.cc (print): Add a special case for
1332 trill spanner right sides.
1334 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1336 * lily/align-interface.cc (get_extents_aligned_translates): add
1337 support for padding variable.
1339 * lily/break-align-interface.cc (self_align_callback): oops: use
1340 loop variable in guard.
1342 * input/regression/repeat-percent-grace.ly: new file.
1344 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1345 remember first currentCommandColumn of a grace run. Fixes issue 70.
1347 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1348 move class definition to CC file.
1350 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1352 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1353 measure-long repeats.
1355 * flower/include/international.hh: include stdarg.h
1357 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1359 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1360 put_systems_on_pages to return an empty result, we need to assign
1361 demerits properly in that case.
1362 (put_systems_on_pages): Make the number of pages depend on the
1363 evenness of page_number. Add auto-first-page-number.
1364 (calc_subproblem): ensure that the page-number is even for the
1365 left-hand page. Warn if the first page-turn doesn't fit onto the
1366 first (right-hand) page.
1368 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1369 (min_page_count): make this publicly accessible
1370 (min_page_count): fix a bug when there are forced page breaks that
1371 was introduced when I made this loop run backwards
1372 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1373 replace space_systems_on_min_pages with these two. The logic in
1374 space_systems_on_min_pages was getting too convoluted and is better
1375 contained in page-turn-page-breaking.
1377 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1379 (breakable_column): typo
1381 * lily/source-file.cc (get_line): fix off-by-one error
1382 and clean up some of the logic
1384 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1386 * lily/page-breaking.cc (make_pages): honour the first-page-number
1389 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1391 * VERSION (PACKAGE_NAME): bump version.
1393 2006-09-26 Pal Benko <benko.pal@gmail.com>
1395 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1396 (the latter is the same as petrucci-f which is kept for compatibility)
1398 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1400 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1402 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1404 * lily/global-context.cc (run_iterator_on_me): break out of loop
1405 if moment doesn't increase.
1407 * scm/define-grob-properties.scm (all-user-grob-properties): add
1410 * lily/accidental.cc (after_line_breaking): read forced property.
1412 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1415 * input/regression/accidental-forced-tie.ly: new file.
1417 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1419 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1421 * lily/figured-bass-engraver.cc: only listen to rest events if
1422 ignoreFiguredBassRest is not set.
1424 * scm/define-context-properties.scm
1425 (all-user-translation-properties): add ignoreFiguredBassRest property
1427 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1429 * lily/paper-book.cc (get_system_specs):
1430 (set_system_penalty): fix breakbefore.
1431 We used to set a penalty on the system after the break, now we
1432 set a permission on the system before the break
1434 * lily/grob-property.cc: add scm debugging hooks into
1435 property modification
1437 * lily/context-property.cc:
1439 rename make_foo_from_properties to internal_make_foo and
1440 move it from context-property.cc to a member function of
1443 * lily/include/lily-guile-macros.hh:
1444 overload ly_symbol2scm macro so that there is no more need
1447 * lily/volta-repeat-iterator.cc:
1448 * lily/tweak-engraver.cc:
1449 * lily/tuplet-bracket.cc:
1450 * lily/span-bar-engraver.cc:
1451 * lily/script-engraver.cc:
1452 * lily/prob-scheme.cc:
1453 * lily/pointer-group-interface.cc:
1455 * lily/grob-scheme.cc:
1456 * lily/grob-property.cc:
1458 * lily/context-property.cc:
1459 * lily/break-substitution.cc:
1460 * lily/break-align-engraver.cc:
1461 * lily/axis-group-interface.cc:
1462 * lily/align-interface.cc:
1463 remove calls to internal_FOO
1465 * lily/system-start-delimiter-engraver.cc:
1466 * lily/parenthesis-engraver.cc:
1467 * lily/accidental-engraver.cc:
1468 remove calls to make_foo_from_properties
1470 2006-09-23 Graham Percival <gpermus@gmail.com>
1472 * Documentation/user/programming-iterfaces.itely: fix
1473 def-music-function -> define-music... leftover.
1475 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1477 * lily/page-spacing.cc (min_page_count): by running the loop
1478 backwards, we can calculate ragged_last properly.
1480 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1482 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1483 printfirst-page-number -> print-first-page-number
1485 * python/convertrules.py: corresponding rule.
1487 * Documentation/user/page.itely (Page formatting): Document the
1488 default values of all page layout parameters.
1490 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1492 * lily/lexer.ll: remove limitation on music function arity. New
1493 mode extratoken, which inserts extra EXPECT_* tokens after
1494 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1496 * lily/parser.yy: Change grammar for music function accordingly.
1498 * lily/include/lily-parser.hh: New method get_state, new member
1499 hidden_state. Works around a problem when parser fetches
1500 MUSIC_FUNCTION token but not the following EXPECT_* token.
1502 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1505 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1506 references to Music; use ASSIGN_EVENT_ONCE everywhere
1508 * lily/grob-info.cc: junk *music_cause
1510 * lily/music.cc: copy eventified articulations to stream event
1512 * lily/part-combine-iterator.cc: Cleanup using enums
1514 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1517 * lily/include/engraver.hh: Junk music.hh include
1519 * lily/stream-event.cc: Changed constructors
1521 2006-09-21 Graham Percival <gpermus@gmail.com>
1523 * Documentation/user/tweaks.itely (Fitting music onto fewer
1524 pages): change settings to avoid warning messages.
1526 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1528 * Documentation/user/tweaks.itely (Fitting music onto fewer
1529 pages): Add between-system-space setting.
1531 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1533 * lily/accidental-placement.cc (calc_positioning_done): don't
1534 trigger Y-extent calculation too early. Use pure_height instead.
1536 * lily/scale.cc (LY_DEFINE): new file.
1538 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1540 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1541 that happen at the start of a score: having a zero-length
1542 chunk was messing up min_system_count calculations.
1544 * lily/source-file.cc (get_line): lower_bound, not
1545 binary_search. Fixes problem where point-and-click would
1546 always point to the first line.
1548 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1550 * lily/accidental-placement.cc (calc_positioning_done): also put
1551 stems into accidental support.
1553 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1556 * scm/script.scm (default-script-alist): avoid-slur and
1557 slur-padding for portato script.
1559 * lily/stem-tremolo.cc (translated_stencil): new function.
1560 (height): use new function. Fixes tremolos on whole notes.
1562 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1565 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1567 * scripts/abc2ly.py (try_parse_comment): idem.
1569 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1570 bar_string iso. string.find()
1574 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1577 2006-09-18 Graham Percival <gpermus@gmail.com>
1579 * Documentation/user/basic-notation.itely: add bug
1580 warning about ties and octavation/clef.
1582 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1584 * VERSION (PACKAGE_NAME): release 2.9.18
1586 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1588 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1589 figure out midi file names right here.
1591 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1593 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1595 * scm/backend-library.scm: option naming: gs-font-load*s*
1597 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1600 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1602 * scm/define-music-types.scm (music-descriptions): remove
1603 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1604 Music::to_event doesn't complain.
1606 * lily/accidental-placement.cc (ape_compare):
1607 * lily/semi-tie.cc (compare):
1608 * lily/note-column.cc (shift_compare): replace by XXX_less
1610 * lily/tie-formatting-problem.cc (set_chord_outline):
1611 * lily/tie-column.cc (calc_positioning_done):
1612 * lily/system.cc (post_processing)
1614 * lily/stem.cc (note_head_positions)
1615 (calc_positioning_done):
1616 * lily/spanner.cc (do_break_processing)
1617 (find_broken_piece):
1618 * lily/span-bar.cc (print):
1619 * lily/semi-tie-column.cc (calc_positioning_done):
1620 * lily/rest-collision.cc (calc_positioning_done):
1621 * lily/program-option.cc (get_help_string):
1622 * lily/note-collision.cc (get_clash_groups):
1623 * lily/new-fingering-engraver.cc (position_scripts):
1624 * lily/keyword.cc (Keyword_table):
1625 * lily/hara-kiri-group-spanner.cc (request_suicide):
1626 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1627 * lily/accidental-placement.cc (calc_positioning_done):
1629 * lily/beam.cc (get_beam_segments):
1630 * lily/grob-array.cc (remove_duplicates):
1633 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1634 ragged-last-bottom = ##f (test the new page breaker)
1636 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1638 * scm/define-context-properties.scm
1639 (all-internal-translation-properties): remove properties that
1640 were used to communicate page-turn stuff to the paper-column
1643 * lily/lily-guile.cc (robust_scm2string): new function
1645 * lily/paper-column-engraver.cc: Clean up page turn stuff
1647 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1648 instead of cluttering up paper-column-engraver.cc
1650 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1652 * scm/layout-page-dump.scm (scm): export utility function names,
1653 to allow user writing cutsom dumping functions.
1655 * scm/layout-page-layout.scm: export utility function names to
1656 enable custom page breaking function writing. Tabify.
1657 (line-next-space): use ?-suffix only for predicates
1658 (page-maximum-space-to-fill): new function. Return the space
1659 between first and bottom system of a page, to give to
1661 (space-systems): use a space-to-fill argument (for instance as
1662 computed by page-maximum-space-to-fill) instead of computing
1663 internaly this space with the page height. That way, the caller
1664 can adjust the space to use.
1665 (make-page-from-systems, walk-paths): compute space to fill before
1666 calling space-systems.
1668 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1670 * scm/script.scm (default-script-alist): set paddings for every
1671 type here, increase for portato mark.
1673 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1676 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1678 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1679 use spanner::set-spacing-rods
1681 * lily/note-column.cc: reformat.
1683 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1684 step positioning for note/rest combinations.
1686 * input/regression/rest-note-collision.ly: new file.
1688 * scm/define-grobs.scm (all-grob-descriptions): add
1691 * flower/include/std-vector.hh: switch off again.
1693 * VERSION (PATCH_LEVEL): bump to 2.9.18
1695 * flower/include/std-string.hh: idem.
1697 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1699 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1701 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1704 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1706 * Documentation/user/page.itely: update page breaking documentation
1708 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1710 * lily/note-collision.cc (calc_positioning_done): only access
1711 first head if available.
1713 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1715 * scm/framework-ps.scm (output-preview-framework): use new name.
1717 * lily/program-option.cc (internal_set_option): use new names.
1719 * Documentation/user/SConscript (lilypond_book_flags): update -d
1722 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1723 output into other programs): new variable names.
1725 * scm/lily.scm (define-scheme-options): uniformize var names.
1727 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1728 tuplets_ is non-empty before popping.
1730 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1732 * lily/spanner.cc (find_broken_piece):
1733 * lily/spacing-spanner.cc (get_columns):
1734 * lily/source-file.cc (get_line):
1735 * lily/simple-spacer.cc (get_column_description):
1736 * lily/keyword.cc (lookup):
1737 use the new binary search.
1739 * flower/include/std-vector.hh: replace binary_search with
1740 a more STL-like version
1742 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1744 * lily/tie-performer.cc: remove unused last_event_ property.
1745 (class Tie_performer): add now_tied_heads_ property for
1746 partially-tied heads.
1747 (acknowledge_audio_element): when adding an Audio_note, put the
1748 note in now_tied_heads_ if the audio note is partially tied.
1749 (stop_translation_timestep): always include entries in
1750 now_tied_heads_ in heads_to_tie_.
1752 * lily/drum-note-performer.cc (process_music): look for tie-events
1753 in the articulations; pass to Audio_note constructor.
1755 * lily/note-performer.cc (process_music): look for tie-events in
1756 the articulations; pass to Audio_note constructor.
1758 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1761 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1762 include initializer in constructor.
1764 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1766 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1767 unless they are breakable. This fixes discrepancies between the forces
1768 calculated here and the forces calculated in get_line_configuration.
1770 * lily/grob.cc (pure_relative_y_coordinate): fix some
1771 mis-estimation that was happening with piano staves.
1773 * lily/constrained-breaking.cc (resize): don't choke if we get a
1774 measure that won't fit on a line.
1775 (combine_demerits): don't consider uniformity when ragged
1777 * lily/page-spacing.cc (solve): why the f* were there two of these?
1778 (calc_subproblem): properly handle the case where a system is taller
1781 * lily/system.cc (get_paper_system): ensure that all the permissions
1782 and penalties are passed to the paper systems.
1784 * lily/page-breaking.cc (create_system_list): support system-count.
1786 * scm/define-grobs.scm (pure-print-callbacks): add
1787 ly:script-interface::print
1789 * lily/page-spacing.cc (min_page_count): fix calculation of min
1790 pages if we are ragged and there are non-zero springs.
1792 * scm/layout-page-layout.scm: if the pure-height estimates are under
1793 the real height, allow space-systems to ignore padding if it is
1794 needed in order to fit the systems on one page
1796 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1798 (solve): fix performance problem. Make sure we always get at least
1801 * lily/page-breaking.cc (make_pages): include write-page-breaks
1804 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1806 * scm/define-grobs.scm: add the new slur-callback
1807 fix pure-relevant to not exclude grobs whose extent is already
1810 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1813 * lily/slur.cc (pure_height): new callback to estimate the height
1816 2006-09-02 Graham Percival <gpermus@gmail.com>
1818 * Documentation/user/invoking.itely: small update on
1819 MacOS X notes; thanks Trevor!
1821 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1823 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1825 * lily/lexer.ll: accept EOF in all states.
1827 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1829 * lily/source-file.cc (Source_file): always 0-terminate character
1830 array, to prevent Flex from barfing.
1832 * lily/global-context.cc (get_output): robustness: don't crash if
1833 no Score context found.
1835 * lily/include/book.hh (class Book): idem.
1837 * lily/include/context-def.hh (struct Context_def): idem.
1839 * lily/include/score.hh (class Score): don't derive from Input.
1841 * lily/book.cc (Book): add a copy ctor.
1843 * buildscripts/output-distance.py (FileLink.calc_distance): count
1844 orphans in distance too.
1846 * python/midi.c (midi_parse_track): robustness: don't read past
1849 * ly/performer-init.ly: add Control_track_performer, move
1850 Tempo_performer and Time_signature_performer to Score.
1852 * lily/score-performer.cc (acknowledge_audio_elements): override
1853 from base class: add to audio-columns
1855 * lily/control-track-performer.cc (add_text): new file: generate
1858 * lily/performance.cc: move output_header_track to
1859 Control_track_performer ()
1861 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1863 * lily/include/midi-item.hh (class Midi_channel_item): insert
1864 class into hierarchy, for items that can have a channel setting. Dehungarify.
1866 * lily/include/performer.hh (class Performer): remove
1867 play_element(); move functionality into announce/acknowledge.
1869 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1871 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1872 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1874 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1876 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1879 * lily/all-font-metrics.cc: remove TFM support.
1881 * lily/include/tfm.hh: remove TFM support, TFM reader.
1883 * lily/include/binary-source-file.hh: remove Binary_source_file.
1885 2006-08-27 Graham Percival <gpermus@gmail.com>
1887 * Documentation/topdocs/NEWS.itely: add @c marker for
1888 stuff I've processed.
1890 * Documentation/user/ various: info from NEWS.
1892 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1894 * lily/paper-column-engraver.cc (finalize): Oops, this change
1895 should have gone in on 2006-08-23
1897 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1899 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1900 quotes to quote arguments. Fixes Windows problem.
1902 * python/lilylib.py (progress): idem
1904 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1906 * scripts/musicxml2ly.py: fix for importing
1907 minor key signatures from MusicXML. (Phillip Kirlin)
1909 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1911 * python/musicxml.py:
1912 (Attributes.get_key_signature): now correctly retrieves mode from
1915 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1917 * lily/parser.yy (output_def_body): take ownership of identifier
1920 * Documentation/user/advanced-notation.itely (Metronome marks):
1921 update use of \tempo in \midi.
1923 * VERSION: release 2.9.16
1925 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1927 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1930 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1932 * input/regression/tie-chord-partial.ly: clarify example.
1934 * scm/define-music-properties.scm (all-music-properties): remove
1937 * ly/music-functions-init.ly: remove \untied.
1939 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1940 stream events and music events.
1941 (stop_translation_timestep): search acknowledged heads for
1944 * input/regression/tie-chord-partial.ly: new file.
1946 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1947 for \char markup command.
1949 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1951 * scm/define-music-types.scm (music-descriptions): consistency:
1952 Use solo-{one,two}-event iso. solo-[12]-event.
1954 * lily/part-combine-engraver.cc (process_music):
1955 Use solo-{one,two}-event iso. solo-[12]-event.
1957 * ly/declarations-init.ly (partCombineListener): add Timing as
1960 * flower/std-string.cc (string_copy): use copy ()
1962 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1964 2006-08-24 Graham Percival <gpermus@gmail.com>
1966 * Documentation/user/changing-defaults.itely, global.itely,
1967 lilypond-book.itely, page.itely: minor changes from mailist.
1969 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1971 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1974 * scm/define-context-properties.scm
1975 (translator-property-description): robustness: detect type errors
1976 in property definitions.
1978 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1979 after getting it from SCM.
1981 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1984 * lily/include/performer.hh (class Performer): strip get_tempo()
1987 * lily/midi-def.cc: strip file.
1989 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1991 * lily/include/context-def.hh (struct Context_def): use
1992 VIRTUAL_COPY_CONSTRUCTOR().
1994 * lily/source-file.cc: smobification.
1996 * lily/include/source-file.hh (class Source_file): smobify
1997 Source_file. Trim redundant members.
1999 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2000 clones after creation. This plugs a huge memory leak.
2002 * python/convertrules.py (FatalConversionError.sub_tempo):
2003 complete rule for \midi{ \tempo }
2005 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2007 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2009 2006-08-23 Joe Neeman <joeneeman@gmail.com>
2011 * input/regression/optimal-page-breaking-hstretch.ly: test for
2012 ragged-last-bottom also
2014 * lily/paper-column-engraver.cc (finalize): make the end of a score
2015 breakable by default. This is to balance out a change in behaviour
2016 of the page-turn-breaker which no longer makes the end of a score
2019 * lily/paper-book.cc (pages): set the systems_ once the pages are
2022 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2023 Page_breaking interface.
2025 * lily/page-breaking.cc (class Page_breaking): make the interface
2026 more consistent and provide abstractions for dealing with
2029 * lily/optimal-page-breaking.cc (solve): use a more straightforward
2030 algorithm. Use the new interface to Page_breaking.
2032 * lily/page-spacing.cc: better support for ragged-bottom and
2035 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
2037 * python/convertrules.py (conv): warning on \tempo{}
2039 * ly/performer-init.ly: set tempoWholesPerMinute.
2041 * ly/midi-init.ly: remove \midi
2043 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2046 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2047 tempoUnitDuration for determining what to print.
2049 * lily/lyric-extender.cc: typo.
2051 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2053 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2056 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2058 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2059 eps-pad-boxes is set.
2061 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2063 * THANKS: update sponsors.
2065 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2067 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2069 * input/regression/tie-chord-untied.ly: new file.
2071 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2073 * scm/define-music-properties.scm (all-music-properties): add
2076 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2078 (headertext_nopics): sanitize no-examples text.
2080 * scm/page.scm (make-page-stencil): don't rely on extents of
2081 page-stencil. This fixes spurious space around .EPS files produced
2082 with the EPS backend.
2084 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2086 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2088 * lily/hara-kiri-engraver.cc (process_music): remember
2089 keepAliveInterfaces after processing \set
2091 * lily/lyric-extender.cc (print): support left/right-padding for
2094 * scm/documentation-generate.scm (string-append): revert lilypond/
2097 2006-08-20 Graham Percival <gpermus@gmail.com>
2099 * Documentation/user/lilypond.tely: clarification to
2100 license presentation (not to actual license).
2102 * Documentation/user/basic-notation.itely,
2103 instrument-notation.itely: minor changes.
2105 * input/ {regression, test}/+.ly: clarification to
2106 text (you can click on examples). Thanks, Mats!
2108 * input/manual/bar-lines.ly: adds ||: repeats.
2110 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2112 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2114 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2116 * Documentation/user/lilypond.tely: strip lilypond/ from info
2117 links, rename to category LilyPond
2119 * lily/pango-font.cc (description_string): new function.
2121 * VERSION: release 2.9.15
2123 * lily/spacing-engraver.cc (stop_translation_timestep): use
2124 Dscho's fix for spacing spanner.
2126 * scm/define-music-types.scm (music-descriptions): use
2127 apply-output-event for ApplyOutputEvent
2129 * lily/output-property-engraver.cc (listen_apply_output): rename
2130 from listen_layout_instruction.
2132 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2135 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2137 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2138 commandline args with contains, split by \n.
2140 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2141 write snippet-names file, call with -dread-file-list. Fixes
2142 command limitations on 64-bit systems.
2144 * input/regression/stencil-color-rotation.ly: new file.
2146 * lily/include/translator.hh (struct Acknowledge_information):
2147 revert: don't use Protected_scm in global objects, as GUILE can't
2148 handle gc_unprotect from automated destructors on MacOS X.
2150 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2151 color, not the original stencil. Fixes combinations of
2152 color/transparency/rotation.
2154 * scripts/lilypond-book.py (main): add --formats=eps for
2157 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2158 crash if spacing_ is nonexistent.
2160 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2162 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2163 \catcode`\@=12 in the LaTeX output.
2165 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2167 * scm/define-music-types.scm (music-descriptions):
2168 use sustain-event iso. sustain-pedal-event.
2170 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2172 * scripts/convert-ly.py: honour the -n command-line switch
2174 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2176 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2177 break specification.
2179 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2181 * Documentation/user: convert-ly the user manual
2183 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2185 * stepmake/aclocal.m4: version check patch (thanks MWD)
2187 * ly/music-functions-init.ly: robustness. Don't crash if
2188 currentBarNumber is not a number.
2190 * VERSION (PATCH_LEVEL): bump.
2192 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2194 * stepmake/aclocal.m4: better version check; handle fooX.Y
2197 * ly/performer-init.ly: instrument name fixup.
2199 * input/manual/chord-names-jazz.ly (banterProperties):
2200 instrumentName update
2202 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2204 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2206 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2207 function. Use hash tables to check membership.
2209 * lily/general-scheme.cc (LY_DEFINE): new function.
2211 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2213 * lily/include/translator.hh (struct Acknowledge_information): add
2216 * ly/music-functions-init.ly: change name to BreathingEvent
2218 * input/regression/*.ly: apply it.
2220 * python/convertrules.py (conv): better instrumentName conversion
2223 * scm/define-music-types.scm (music-descriptions): add
2224 line-break-event to LineBreakEvent music
2226 * lily/music.cc (to_event): don't crash if music type not set.
2228 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2231 * lily/spacing-engraver.cc (stop_translation_timestep): set
2232 spacing for proportional notation too.
2234 * scm/translation-functions.scm (format-bass-figure): inspect
2237 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2239 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2241 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2243 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2245 * scm/layout-page-layout.scm (make-page-from-systems): new function
2246 (optimal-page-breaks): use the new page-breaking calling convention
2248 * scm/define-context-properties.scm (all-user-translation-properties):
2251 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2252 revokePageTurns functionality. If there is a special barline within
2253 the breakable region, break there instead of at the end of the region.
2255 * lily/paper-book.cc (pages): use the new page-breaking calling
2258 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2260 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2262 * scripts/lilypond-book.py: insert \sourcefileline command in
2263 output, so lilypond error messages refer to the spot in the
2264 original .lytex / .itely sourcefile.
2266 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2268 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2269 space to next column for distance to fixed col.
2271 * VERSION (PACKAGE_NAME): release 2.9.14
2273 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2276 * lily/accidental-engraver.cc (process_acknowledged): don't create
2277 accidental for trill span event. This fixes spurious accidentals
2280 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2282 * scm/define-grob-properties.scm (all-user-grob-properties):
2283 Clarify documentation of side-axis and direction. Thanks to Paul
2284 for the inspiration.
2286 * lily/bar-line.cc: Add documentation for "||:" also in the
2287 interface documentation.
2289 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2291 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2293 * lily/paper-column.cc (set_system): new function.
2295 * lily/spacing-engraver.cc (stop_translation_timestep): store
2296 SpacingSpanner refs in Paper_column.
2298 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2299 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2301 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2303 * lily/beam-engraver.cc (listen_beam): add method for
2304 Grace_beam_engraver too.
2306 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2308 * python/convertrules.py: Fix indentation bug that broke
2309 conversion of files older than 1.3.117.
2310 Fix escape error in the description for 2.9.6.
2312 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2314 * lily/*-engraver.cc: convert all try_music functions to listen_*
2317 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2318 enums to represent pedal types, and calculate more data statically.
2320 * scm/part-combiner.scm (recording-group-emulate): create a
2321 softcoded substitute for recording-group-engraver.cc.
2323 * lily/music.cc: make a common transpose function for events and
2326 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2327 ManualMelismaEvent, and obsoletes Melisma_translator.
2329 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2331 * input/test/instrument-name-align.ly: update version.
2333 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2335 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2336 Doc the --pdf flag to lilypond-book.
2338 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2340 * Documentation/topdocs/NEWS.tely (Top): add description.
2342 * input/regression/tuplet-full-length-note.ly: add file.
2344 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2345 always store axis group.
2347 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2349 * input/regression/instrument-switch.ly: new file.
2351 * lily/instrument-switch-engraver.cc (process_music): new file.
2353 * ly/engraver-init.ly: add Instrument_switch_engraver
2355 * ly/music-functions-init.ly: \instrumentSwitch
2357 * scm/define-context-properties.scm
2358 (all-user-translation-properties): add instrumentCueName
2360 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2362 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2364 * ly/music-functions-init.ly: music function \transposition.
2366 * lily/parser.yy (command_element): softcode \transposition.
2368 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2369 (process_music): oops.
2371 * lily/instrument-name-engraver.cc (start_spanner): new
2372 function. Create spanner when property changes.
2373 (stop_spanner): new function.
2375 * python/convertrules.py (conv): add rule.
2377 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2378 shortInstrumentName iso. instr.
2380 * scm/output-ps.scm (dashed-line): add phase argument to
2383 * lily/bar-line.cc (dashed_bar_line): new function.
2384 (compound_barline): support \bar "dashed".
2386 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2387 --output=DIR to DIR/BASE if it is a dir.
2389 * flower/file-name.cc (file_part): new function
2390 (dir_part): new function
2392 * lily/lily-parser-scheme.cc (LY_DEFINE):
2394 * DEDICATION: update
2396 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2398 * lily/instrument-name-engraver.cc: formatting.
2400 * python/convertrules.py (conv): bugfix for \epsfile.
2402 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2406 * lily/gourlay-breaking.cc: Oops, these should have been included
2409 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2411 * scripts/*.py (program_name): cleanup relocation snippets.
2413 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2415 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2417 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2418 page-breakable by default
2420 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2421 correctly calculated for a single-system page
2423 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2424 bigger than the second number
2426 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2427 acknowledge that we aren't satisfying constraints)
2429 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2432 * lily/grob.cc (pure_height): add minimum-Y-extent
2434 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2437 * lily/constrained-breaking.cc: convert code to use new Matrix class
2438 (get_best_solution): new function
2440 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2441 is a page with no systems
2443 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2445 * VERSION (PACKAGE_NAME): release 2.9.13
2447 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2450 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2452 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2454 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2457 * scm/define-grob-properties.scm (all-user-grob-properties):
2458 remove grace-space-factor.
2460 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2461 grace-spacing-interface
2462 (spacing-options-interface): add.
2464 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2466 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2468 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2469 GraceSpacing object.
2471 * lily/note-spacing.cc: fix prop list formatting
2473 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2474 beaming for grace notes too.
2476 * input/regression/spacing-grace.ly: update.
2478 * lily/grace-spacing-engraver.cc: new file.
2480 * lily/spacing-spanner.cc: add strict-grace-spacing.
2482 2006-07-20 Graham Percival <gpermus@gmail.com>
2484 * lily/parser.yy: compile fix.
2486 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2488 * scm/define-grobs.scm (all-grob-descriptions): typo.
2490 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2491 .eps extension from includegraphics.
2493 * scripts/lilypond-book.py (main): add support for --pdf.
2495 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2496 callback to compute common shortest duration.
2497 (set_springs): typo.
2499 * scm/define-grob-properties.scm (all-user-grob-properties): add
2500 strict-grace-spacing.
2502 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2503 support float_grace_columns_.
2505 * lily/spacing-options.cc (init_from_grob): new file.
2507 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2509 * input/regression/spacing-loose-grace.ly: new file.
2511 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2513 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2514 tupletFullLengthNote too. Choose right bound depending on value.
2516 * input/regression/tuplet-full-length-note.ly: new file.
2518 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2520 * lily/*-performer.cc: Converted try_music to listen_*
2522 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2523 as a stream-event internally. Introduce event_cause (), deprecate
2526 * scm/define-music-types.scm: Removed BusyPlayingEvent
2528 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2530 * Documentation/user/advanced-notation.itely (Font selection):
2531 Document how to get a list of available fonts using 'lilypond
2532 -dshow-available-fonts blabla'.
2534 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2536 * GNUmakefile.in: filter lily-XXX.pdf files.
2538 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2540 * scm/define-grob-properties.scm (all-internal-grob-properties):
2541 remove delta-pitch. Use delta-position everywhere.
2543 * scm/output-lib.scm (fall::print): use new order.
2545 * scm/output-ps.scm (path): reorder arguments.
2547 * scm/output-svg.scm (path): support for path primitive.
2549 * input/regression/bend-after.ly: new file.
2551 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2552 recipe for eps -> pdf conversion.
2554 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2556 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2559 2006-07-19 Graham Percival <gpermus@gmail.com>
2561 * input/manual/screech-boink.ly: moved to here.
2563 * input/screech-boink.ly: deleted.
2565 * scm/define-grob-properties.scm: clarify doc string.
2567 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2569 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2571 * scm/output-ps.scm (path): define path.
2573 * scm/define-stencil-commands.scm
2574 (ly:register-stencil-expression): add path.
2576 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2578 * ly/engraver-init.ly: add Fall_engraver
2580 * lily/parser.yy (music_function_event): allow musicfunction
2581 without music arg as music_function_event.
2583 * lily/grob-scheme.cc (LY_DEFINE):
2584 ly:grob-robust-relative-extent. New function.
2586 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2588 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2590 * scm/output-lib.scm (fall::print): new function
2592 * lily/fall-engraver.cc (stop_fall): new file.
2594 * ly/music-functions-init.ly: alphabetise.
2596 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2599 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2601 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2603 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2606 * lily/translator-group.cc (connect_to_context): non const error message.
2608 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2610 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2613 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2615 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2617 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2620 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2622 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2624 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2626 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2628 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2630 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2632 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2634 * scm/layout-page-layout.scm: Define module, tidy code, use more
2635 functions iso. a single big one.
2637 * scm/layout-page-dump.scm: move page dump functions used in two
2638 pass spacing to this file. Define module.
2640 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2643 * ly/paper-defaults.ly: use module layout-page-layout.
2645 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2647 * lily/music.cc: Revised MusicEvent event class. It now contains
2648 event data directly instead of encapsulating it in music. The
2649 previously used class is renamed to OldMusicEvent.
2651 * lily/stream-event.cc: Stream events are now probs.
2653 * lily/translator-group.cc, lily/translator.cc: Translators can
2654 now listen directly to stream events, by using macros
2655 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2657 * lily/arpeggio-engraver.cc: Converted to use new event system
2659 * THANKS: Corrected spelling mistake.
2661 2006-07-12 Graham Percival <gpermus@gmail.com>
2663 * Documentation/user/SConscript, make/lilypond-vars.make,
2664 input/GNUmakefile: doc build looks in input/manual instead
2667 * input/manual/ GNUmakefile, SConscript: build files for
2670 * input/test/ various: some files moved to input/manual/
2672 * Documentation/user/basic-notation.itely: small updates;
2673 thanks Kieren and Charles!
2675 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2677 * VERSION (PACKAGE_NAME): release 2.9.11
2679 * Documentation/topdocs/NEWS.tely (Top): update prop value
2681 * Documentation/user/basic-notation.itely (Tuplets): new property
2684 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2686 * python/convertrules.py (conv): tweaks.
2688 * VERSION (PATCH_LEVEL): bump version.
2690 * python/convertrules.py (conv): add rule for
2691 tupletNumberFormatFunction.
2693 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2694 tupletNumberFormatFunction.
2696 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2697 text through 'text callback.
2699 * lily/time-scaled-music-iterator.cc (construct_children): copy
2700 tweaks generated events.
2702 * scm/define-context-properties.scm
2703 (all-user-translation-properties): remove tupletNumberFormatFunction
2705 * lily/tuplet-engraver.cc (process_music): don't read
2706 tupletNumberFormatFunction
2708 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2711 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2713 * lily/global-context-scheme.cc: Separated ly:run-translator into
2716 * lily/score-engraver.cc, lily/score-performer.cc,
2717 scm/define-context-properties.scm: Make paper/midi output
2718 accessable as a context property.
2720 * lily/score-translator.cc, lily/score-context.cc: Removed.
2722 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2724 * scm/ps-to-png.scm (Module):
2725 * scm/framework-tex.scm (Module):
2726 * scm/framework-ps.scm (Module):
2727 * scm/backend-library.scm (Module):
2728 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2729 "dDEVICEHEIGHTPOINTS".
2731 2006-07-04 Graham Percival <gpermus@gmail.com>
2733 * Documentation/user/ various: general improvements to
2734 "working with lilypond files" section.
2736 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2738 * lily/sequential-iterator.cc: Change the default get_music_list
2739 to read elements-callback music property
2741 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2742 processing of multimeasure rests. Softcoded
2743 sequential-music-iterator.
2745 * lily/sequential-music-iterator.cc: Removed.
2747 2006-06-28 Graham Percival <gpermus@gmail.com>
2749 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2751 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2753 * lily/parser.yy: Wrap non-post-events in EventChords before
2754 assigning them to identifiers.
2756 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2758 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2759 gives correct vertical placement of \bar ":" in all staff
2760 sizes. Thanks Martial!
2762 2006-06-26 Graham Percival <gpermus@gmail.com>
2764 * Documentation/user/invoking.itely : minor update from mailist.
2766 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2768 * lily/ various: Introduce stream events of types Prepare,
2769 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2770 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2772 * lily/global-context*.cc: Time is now -inf before iteration
2775 * lily/include/context.hh: Removed unique_, init_
2777 * Documentation/topdocs/NEWS: Make the feathered beam example
2778 avoid triggering a bug.
2780 2006-06-24 Graham Percival <gpermus@gmail.com>
2782 * Documentation/user/ various: small additions from mailist.
2784 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2786 * ly/performer-init.ly: Add some missing links in the context
2787 hierarchy for MIDI output. There are probably some more missing!
2789 2006-06-21 Graham Percival <gpermus@gmail.com>
2791 * Documentation/user/ various: minor spelling fixes;
2792 thanks Dave Luttinen!
2794 * Documentation/user/ various: small clarifications;
2795 thanks Anthony Youngman!
2797 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2799 * po/fr.po: add \n appropriately.
2801 * lily/lexer.ll: remove ? from version-seen?
2803 2006-06-19 John Mandereau <john.mandereau@free.fr>
2805 * po/fr.po; update translation, by Jean-Charles Malahieude and
2808 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2810 * THANKS: add Markus Schneider.
2812 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2813 Staff_symbol_engraver
2815 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2816 replace staff_engraver
2818 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2821 * lily/staff-collecting-engraver.cc
2822 (acknowledge_end_staff_symbol): new function
2824 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2826 * lily/staff-collecting-engraver.cc
2827 (acknowledge_end_staff_symbol): new function.
2829 * lily/main.cc: switch on relocation by default.
2831 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2833 * lily/spacing-spanner.cc (musical_column_spacing): set
2834 compound_fixed_note_space to 0.0. Document why.
2836 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2837 range of inverse_hooke_
2838 (Simple_spacer): init completely.
2840 (get_line_configuration): don't use cols.resize(); it introduces
2843 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2845 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2847 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2848 try. Divide by beatlength.
2850 * input/regression/beaming-ternary-metrum.ly: update doc.
2851 add beatLength hack.
2853 * scm/music-functions.scm (make-time-signature-set): add
2854 standard-beat-grouping.
2856 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2858 * input/regression/tie-whole.ly: new file.
2860 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2861 cross center of note head in case of invisible stem.
2863 2006-06-16 Graham Percival <gpermus@gmail.com>
2865 * Documentation/user/ various: small fixes from mailist.
2867 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2869 * lily/breathing-sign.cc (offset_callback): idem.
2871 * lily/align-interface.cc (align_to_fixed_distance): remove
2874 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2877 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2879 * VERSION (PACKAGE_NAME): release 2.9.9
2881 * ly/lilypond-book-preamble.ly: add \version
2883 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2885 * scripts/lilypond-book.py (PREAMBLE_LY): include
2886 lilypond-book-preamble.ly
2888 * lily/stem.cc (get_beaming): return max of 0 and
2889 scm_ilength. Fixes slurring from/to beams.
2891 * ly/lilypond-book-preamble.ly: new file.
2893 * lily/slur.cc: add inspect-index feature.
2895 2006-06-13 Graham Percival <gpermus@gmail.com>
2897 * Documentation/user/tutorial.itely: trivial fix.
2899 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2901 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2902 all non-event music in the parser via MAKE_SYNTAX.
2904 * lily/parser-scheme.cc: Add ly:parser-error function
2906 * scm/paper.scm: fix typo
2908 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2912 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2915 * buildscripts/output-distance.py (test_compare_signatures):
2917 (read_signature_file): use new signature format.
2919 * scm/stencil.scm (write-system-signature): simpler signature
2922 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2925 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2926 stem_end_position, but estimate instead.
2928 * lily/tuplet-bracket.cc (calc_positions): look at
2929 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2930 brackets narrower than beams.
2932 * lily/lexer.ll: set version-seen? even if version is
2935 * lily/rest.cc (y_offset_callback): bugfix: decide position
2936 override based on scm_is_number(). Fixes \rest on center staff
2939 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2940 patterns for 16th triplets.
2942 2006-06-10 Graham Percival <gpermus@gmail.com>
2944 * Documentation/user/ page.itely, global.itely: editing
2947 * Documentation/user/ various: findex -> funindex.
2949 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2951 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2952 insert extra tuplet events.
2954 2006-06-10 Graham Percival <gpermus@gmail.com>
2956 * Documentation/user/programming-interfaces.itely: add
2959 * python/convertrules.py: add annotatefoo -> annotate-foo
2962 * Documentation/user/global.itely: start editing.
2964 * Documentation/user/page.itely: major editing, new spacing
2967 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2969 * scm/define-markup-commands.scm (wordwrap-markups): use
2970 output-def 'line-width if undefined.
2972 * HACKING: trim outdated info.
2974 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2976 * scm/define-grobs.scm (all-grob-descriptions): Add
2977 line-spanner-interface to all grobs that already have
2978 text-spanner-interface or dynamic-text-spanner-interface
2980 * scm/page.scm: Rename annotate{headers,systems,page}->
2983 * input/regression/page-spacing.ly,
2984 input/regression/page-layout-manual-position.ly: idem
2986 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2988 * lily/line-spanner.cc: cleanup property list.
2990 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2991 generator expressions (2.3 compat).
2993 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2995 * lily/vertical-align-engraver.cc: Make sure that the
2996 align{Above,Below}Context properties are included in the automatic
2999 2006-06-08 Joe Neeman <joeneeman@gmail.com>
3001 * scm/paper-system.scm (paper-system-annotate): also annotate the
3002 estimated pure-Y-extent
3004 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3006 * lily/system.cc (break_into_pieces): set the estimated height
3007 of each child system
3009 * lily/stem.cc (pure_height): new pure-Y-extent callback
3011 * lily/staff-symbol-referencer.cc (callback): don't destroy
3012 the staff-position property
3014 * lily/hara-kiri-group-spanner.cc (request_suicide): split
3015 consider_suicide into two functions
3017 * lily/constrained-breaking.cc (resize): use the new pure
3018 callbacks to estimate the height of a system
3020 * lily/axis-group-interface.cc (pure_group_height): new
3021 side-effect-free VerticalAxisGroup height-callback
3023 * lily/align-interface.cc (get_extents_aligned_translates):
3024 split align_elements_to_extents into two functions
3025 (get_pure_child_y_translation): new function
3027 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3029 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3031 * lily/paper-score.cc: cache break_indices and columns
3033 * lily/side-position-interface.cc: new pure-Y-extent callbacks
3035 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3037 * lily/font-config.cc (init_fontconfig): do the init if
3038 cache_file, but don't look at cache_file.
3040 * input/regression/quote-tie.ly: new file.
3042 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3043 to Head_event_tuple, so we deal gracefully with ties on
3046 * lily/pango-font.cc (pango_item_string_stencil): type correctness
3049 2006-06-08 Graham Percival <gpermus@gmail.com>
3051 * input/test/ smart-transpose.ly, reverse-music.ly:
3052 \applyMusic to music functions update, thanks Michael!
3054 2006-06-07 Graham Percival <gpermus@gmail.com>
3056 * input/test/ add-staccato.ly, add-text-script.ly,
3057 unfold-all-repeats.ly, music-box.ly: \applyMusic to
3058 music functions update, thanks to Michael Meixner.
3060 * Documentation/user/music-glossary.tely: small fix
3063 * Documentation/user/ various: minor additions from mailist.
3065 * Documentation/user/lilypond.tely, basic-notation.itely:
3066 small test of @funindex. (works here)
3068 * input/test/font-table.ly: reduce size to partially
3069 de-ugly version in manual.
3071 * Documentation/user/page.itely: new file (split former
3072 "global issues" into "page settings" and "non-musical
3075 * Documentation/user/ various: fix @ref{}s to match
3076 new chapter names (above).
3078 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
3080 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3082 2006-06-06 Graham Percival <gpermus@gmail.com>
3084 * Documentation/user/advanced-notation.itely: add example
3085 for segno/coda on barline.
3087 * tex/texinfo.tex: merge from upstream.
3089 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
3091 * scripts/lilypond-book.py (process_snippets): Argument fix.
3094 * buildscripts/builder.py:
3097 * Documentation/user/SConscript: More SCons fixes.
3099 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3101 * lily/font-config.cc (init_fontconfig): Only initialize if
3102 global cache_file is found.
3104 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3106 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3109 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3111 * VERSION (PACKAGE_NAME): release 2.9.8
3113 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3114 function. Delay ledger modifying ledgered grobs to
3115 stop_translation_timestep(), to ensure that we're ledgering
3116 according to the new spanner.
3117 (acknowledge_staff_symbol): don't check for non-NULL
3118 staff_sym->get_bound()
3120 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3123 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3126 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3127 directly from srcdir/stepmake/aclocal.m4
3129 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3132 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3134 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3136 * lily/simple-spacer.cc (get_line_configuration): add
3137 keep-inside-line rods
3138 (struct Column_desc): add constructor
3139 (struct Rod_desc): add constructor
3140 (get_line_forces): check for forced page breaks here too
3142 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3143 support/elements cycles between InstrumentNames and AxisGroups
3145 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3147 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3149 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3150 make-txt-files target.
3152 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3153 make-txt-files target.
3155 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3157 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3160 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3162 * Documentation/user/instrument-notation.itely,
3163 input/regression/breathing-sign-ancient.ly,
3164 input/test/divisiones.ly: Removed redundant property settings for
3167 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3168 fix lyrics alignment problems. They are implemented now as scheme
3169 functions that add the appropriate unicode char to the first lyric
3170 event rather than adding a separate lyric event. Minor edit of
3173 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3175 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3176 pollute src dir with built .txt files, but install directly from
3177 Documentation/topdocs/out/
3179 * buildscripts/output-distance.py
3180 (ComparisonData.create_html_result_page): put version/directories
3183 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3186 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3187 Patch by Karl Hammar
3189 * buildscripts/readlink.py: add file.
3190 Patch by Karl Hammar
3192 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3194 * lily/tuplet-number.cc (print): prevent stencil from being
3197 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3199 * scm/stencil.scm (write-system-signature): explicitly
3200 -well, superfluously- close output port.
3202 * buildscripts/output-distance.py (main): oops. Add extra argument.
3204 2006-06-05 Graham Percival <gpermus@gmail.com>
3206 * Documentation/user/music-glossary.tely: clarified example
3207 from Francisco Vila, thanks!
3209 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3211 * input/regression/spacing-section.ly: new file.
3213 * lily/input.cc (programming_error): new function.
3215 * lily/spacing-engraver.cc (try_music): new function. Accept
3216 spacing-section-event
3218 * lily/spacing-spanner.cc (set_springs): take slices of all
3219 columns for spacing.
3221 * lily/include/paper-column.hh (class Paper_column): add
3222 Paper_column::compare.
3224 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3226 * scm/define-music-types.scm (music-descriptions): add
3229 * lily/music-iterator.cc (report_event): use programming_error for
3230 sending non-event error.
3232 * lily/input.cc (programming_error): new function
3234 * buildscripts/output-distance.py (main): use compare-XXX for
3236 (main): --threshold option, default at 0.30
3238 * output-distance.py (main): add --threshold option.
3240 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3242 * scm/paper-system.scm (paper-system-annotate): fix problem when
3243 annotating an empty system
3245 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3247 * GNUmakefile.in: reinstate old web tar/copying.
3249 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3251 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3252 nothing changes. (Erik S)
3254 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3257 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3259 * scm/define-markup-commands.scm (whiteout): do not force
3260 foreground color of argument markup to black.
3262 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3263 the left of the arrow, instead of below the arrow name, so that,
3264 when two little arrows are vertically stacked, their dimensions
3265 and name should not overlap. Add a color key parameter.
3267 * scm/paper-system.scm (paper-system-annotate): Annotate
3268 next-space+next-padding instead of next-space. Annotate space
3269 between next-padding and next-space+padding, respectively, and
3270 following system extent and refpoint-Y-extent. Use colors.
3272 * scm/page.scm (annotate-page): translate annotations slightly to
3275 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3277 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3278 fix for x-staff slurs. Thanks Joe!
3280 * buildscripts/output-distance.py
3281 (SystemLink.output_expression_change_count): keep track of changed
3282 details, and dump in details html page.
3284 * input/regression/figured-bass-staff.ly: add note about setting
3285 properties in Staff context.
3287 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3288 add slurs and ties to support too.
3290 * buildscripts/output-distance.py (main): set dest_dir
3291 argument. Add --max-count option.
3293 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3295 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3296 shortcuts for special unicode chars that are useful in chant
3297 notation. Revised exisiting and added new comments.
3299 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3301 * make/mutopia-rules.make: remove duplicate recipe.
3303 2006-06-02 Werner Lemberg <wl@gnu.org>
3305 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3306 Add support for U+0132 (IJ) and U+0133 (ij).
3308 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3310 * buildscripts/output-distance.py (FileLink): new class. collect
3311 info systems from one .ly file.
3312 (FileLink.link_files_for_html): further tweaks.
3314 2006-06-02 Graham Percival <gpermus@gmail.com>
3316 * tex/texinfo.tex: partial fix for @funindex.
3318 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3321 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3323 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3325 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3326 @example too. Backportme.
3328 2006-06-02 Graham Percival <gpermus@gmail.com>
3330 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3331 from Werner Lemberg.
3333 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3335 * Documentation/user/music-glossary.tely: additional spanish
3336 updates and a lyrics fix in an example.
3338 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3340 * scm/define-grob-properties.scm: Previous patch contained
3341 spurious line from another patch not yet committed. Fixed.
3343 * scm/define-grob-properties.scm: Add missing doc strings for
3346 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3348 * buildscripts/output-distance.py
3349 (ComparisonData.write_text_result_page): separate the scores, sort
3352 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3355 * buildscripts/output-distance.py (me_path): use argv[0] for
3357 (ComparisonData.img_cell): use colored borders.
3359 * scm/stencil.scm (write-system-signature): escape newlines too.
3360 (write-system-signature): use (1,-1) interval for empty interval
3362 2006-01-01 Graham Percival <gpermus@gmail.com>
3364 * Documentation/user/music-glossary.tely: Spanish updates
3365 from Francisco Vila.
3367 * Documentation/user/lilypond-book.itely: addition from
3370 * Documentation/user/ various: edits, small additions
3373 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3375 * GNUmakefile.in (tree-lib-prefix-current):
3376 (tree-share-prefix-current): Use version number in tree, add
3379 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3381 * GNUmakefile.in: write VERSION, again.
3383 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3384 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3386 * stepmake/aclocal.m4: robuster version detection.
3388 * buildscripts/output-distance.py
3389 (ComparisonData.create_html_result_page): copy only if file
3390 exists, fixup src paths.
3392 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3394 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3396 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3397 Another datarootdir reto.
3399 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3400 available. This should be moved to postinstall-lilypond-doc.
3402 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3404 * GNUmakefile.in: simplify local-WWW-post.
3405 remove -type l from find.
3407 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3408 fixes. Don't follow symlinks.
3409 (ComparisonData.create_html_result_page): remove previous results.
3410 insert ../python in path.
3412 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3414 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3416 * config.make.in (datadir): Add datarootdir to silence autoconf.
3418 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3420 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3422 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3424 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3425 slash beams too wide.
3427 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3429 * VERSION: release 2.9.7
3431 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3433 * lily/relocate.cc (read_relocation_dir): Do not blindly
3436 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3438 * lily/parser.yy: replace THIS by PARSER
3440 * Documentation/index.html.in: add link to test-results.html page.
3442 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3444 * scm/translation-functions.scm (format-bass-figure): translate
3445 digits over 10 to the left
3447 * scm/define-markup-commands.scm (translate-scaled): new markup.
3449 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3452 * ly/engraver-init.ly: add Figured_bass_engraver
3454 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3456 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3458 * lily/score-engraver.cc (announce_grob): only note START announces.
3460 * lily/include/engraver-group.hh (Translator_group):
3461 acknowledge_hash_table_ is now drul.
3463 * lily/engraver.cc (announce_end_grob): new method.
3465 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3467 * lily/translator-dispatch-list.cc (create): take start_end argument.
3469 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3470 acknowledge_static_array_ to drul
3472 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3474 * scm/define-grob-interfaces.scm
3475 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3477 * scm/define-grobs.scm (all-grob-descriptions): add
3478 BassFigureAlignmentPositioning
3480 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3481 number stays up to date. Backportme.
3483 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3485 * Documentation/user/basic-notation.itely (Bar lines): Document
3488 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3490 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3492 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3493 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3496 * Resurrect `scons lily' build.
3498 * SConstruct (symlink_tree): Bugfix: link
3499 music-drawing-routines.ps to file iso directory.
3501 * lily/SConscript: Remove kpath-guile from LIBS.
3503 * SConstruct (libdir_package_version): Typo.
3504 (configure): Comment-out fontforge for lack of fontforge.pc .
3505 Also add libdir* to environment.
3507 2006-05-30 Graham Percival <gpermus@gmail.com>
3509 * Documentation/user/ various: minor additions from mailist and
3512 2006-05-30 Paco <fravd@ya.com>
3514 * Documentation/user/music-glossary.tely: numerous corrections and
3515 some new translations.
3517 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3521 * buildscripts/output-distance.py
3522 (ComparisonData.create_html_result_page): new routine: summarise
3523 results in HTML page with images.
3524 (ComparisonData.create_text_result_page): create summary text files too.
3526 * GNUmakefile.in (web-ext): package .signature files too. They
3529 * scm/stencil.scm (write-system-signature): typo.
3531 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3533 * scm/stencil.scm (write-system-signature): better escaping.
3534 only write signature for music systems, not for markup systems.
3536 * scm/framework-ps.scm (output-framework): dump-signatures support
3539 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3541 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3542 for -dno-point-and-click
3544 * lily/grob.cc (get_print_stencil): don't read
3545 point_and_click_global to determine whether to set grob-cause.
3547 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3549 * buildscripts/output-distance.py (main): new function.
3550 (ComparisonData): new class.
3552 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3553 careful with generating new LedgerLineSpanners.
3555 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3557 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3558 context. This fixes double ledger lines in output.
3560 * lily/system.cc (get_paper_system): remove 3 layer limit.
3562 * buildscripts/output-distance.py (SystemLink.distance): new
3563 file. Compare signatures.
3565 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3567 * lily/grob-array.cc (remove_duplicates): rename from
3568 uniq(). Sort before calling uniq() so it actually works.
3570 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3572 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3573 \version from lilypond file snippet.
3574 (Lilypond_file_snippet.ly): oops. typo.
3575 (find_toplevel_snippets): urgh. again.
3577 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3578 prevent duplicated broken items in output.
3580 * scm/framework-eps.scm (output-classic-framework): only dump if
3581 dump-signatures is set.
3583 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3585 * scm/stencil.scm (write-system-signature): new routine: write
3586 python parseable signature of a separate paper system.
3589 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3591 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3595 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3597 * translator-group.cc: send music events to engravers in
3598 non-bottom contexts.
3600 * tuplet-engraver.cc: process tuplet brackets in correct order.
3602 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3604 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3605 arg 2 might point us to a new binary (patch by Karl Hammar)
3607 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3609 * VERSION (PACKAGE_NAME): release 2.9.6
3611 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3613 * Documentation/user/*.itely: 2nd
3614 attempt: replace funindex -> findex globally.
3616 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3618 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3619 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3621 * scm/define-music-display-methods.scm: display methods for
3622 breaks. Fix \applyOutput.
3624 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3626 * Documentation/user/macros.itexi: comment out funindex expansion.
3628 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3631 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3632 Karl Hammar. Backportme.
3634 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3636 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3638 * Documentation/user/programming-interface.itely (Running a
3639 function on all layout objects): idem.
3641 * Documentation/user/introduction.itely (Automated engraving):
3642 update \applyOutput syntax
3644 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3645 remove debugging hook.
3647 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3650 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3652 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3653 TEXI2DVI_FLAGS to texi2dvi invocation.
3655 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3657 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3658 works. More work is done by iterator now, and engraver has been
3659 very much simplified.
3661 * lily/translator-group.cc: try_music is now invoked through a
3664 * lily/*-iterator.cc: Massive cleanups. Junked
3665 try_music_in_children globally. Renamed try_music to report_event,
3666 and made that method descend to a bottom context automatically.
3668 * lily/event-iterator.cc: New file.
3670 * lily/output-property-iterator.cc,
3671 lily/old-lyric-combine-music-iterator.cc: Removed.
3673 * python/convert-rules.py: Modified the syntax for \applyOutput.
3675 2006-05-23 Graham Percival <gpermus@gmail.com>
3677 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3680 * Documentation/user/ various: stuff that might have helped
3681 to fix the pdf creation, plus some minor doc additions.
3683 * Documentation/user/changing-defaults.itely: remove @b from
3684 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3686 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3688 * lily/beaming-pattern.cc (beamify): deal with negative start
3689 moments for beaming patterns.
3691 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3693 * lily/beaming-info.cc (beamify): new function: read beatLength
3694 and beatGrouping from context.
3696 * input/regression/beam-beat-grouping.ly (Module): new file.
3698 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3700 * lily/beam.cc (get_beam_segments): generate events for
3701 max_connect_ case too.
3702 (get_beam_segments): read Stem::max-beam-connect.
3704 * input/regression/beam-single-stem.ly: new file.
3706 * lily/stem.cc (set_beaming): use #f as signaling value for
3709 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3711 * lily/beam.cc (set_beaming): read clip-edges property.
3712 (calc_direction): don't suicide for single stem.
3714 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3715 argument, remove 1<<15 hack. Remove clip_edges()
3717 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3719 2006-05-21 Graham Percival <gpermus@gmail.com>
3721 * Documentation/user/basic-notation.itely: reorg.
3723 * Documentation/user/ various: minor fixes.
3725 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3727 * lily/stencil-expression.cc (register_stencil_head): opps, append
3728 to cdr of static SCM object.
3730 2006-05-19 Graham Percival <gpermus@gmail.com>
3732 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3733 update framework for command index. DOC WRITERS: use @funindex
3734 instead of @cindex @code{}.
3736 * Documentation/user/ various: replace @cindex @code{} => @funindex
3738 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3740 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3741 case positions is set manually.
3743 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3745 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3748 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3750 * Documentation/user/changing-defaults.itely (Contexts explained):
3751 use absolute dimension for @image.
3753 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3754 out image for illustration too.
3755 ($(outdir)/%.png): add more png <-> eps rules.
3757 2006-05-17 Graham Percival <gpermus@gmail.com>
3759 * Documentation/user/ various: remove trailing whitespace, cosmetic
3760 change to reduce changes produced by diff.
3762 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3764 * lily/main.cc (do_chroot_jail): correctness tweak.
3766 * python/lilylib.py (system): import subprocess in system () only.
3768 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3770 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3771 variable. Backportme.
3773 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3775 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3777 2006-05-17 Werner Lemberg <wl@gnu.org>
3779 * lily/lexer.ll (init_signature_has_table): Add
3780 `scm-scm-music-music'.
3782 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3783 (Generic_prefix_music_scm): Add rule for it.
3785 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3786 `quoted-transposition' property.
3788 * ly/music-functions-init.ly (transposedCueDuring): New function.
3790 * scm/define-music-properties.scm (all-music-properties): Updated.
3792 * Documenation/topdocs/NEWS.itely: Document it.
3794 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3796 * python/lilylib.py (system): move import subprocess to system()
3799 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3801 * VERSION (PATCH_LEVEL): release 2.9.5
3803 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3806 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3808 2006-05-16 Graham Percival <gpermus@gmail.com>
3810 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3812 * Documentation/user/ various: minor fixes.
3814 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3816 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3818 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3820 * Documentation/user/advanced-notation.itely (Instrument names):
3821 Modified obsolete instruction on how to move instrument names away
3822 from the staves. Hmm, at second thought the bug probably has been
3823 solved, so the full bug description should probably be removed.
3825 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3827 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3828 currentCommandColumn.
3830 * lily/hairpin.cc (print): also add padding for non-neighbor
3833 * scm/define-context-properties.scm
3834 (all-user-translation-properties): add hairpinToBarline
3836 * input/regression/hairpin-to-barline.ly: new file.
3838 * lily/context.cc (internal_send_stream_event): thinko fix.
3840 * lily/tie.cc (set_default_control_points): robustness fix.
3842 * python/musicxml.py (Part.interpret): don't complain about
3843 incomplete measures.
3845 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3846 new music if last_event_chord() returned None.
3848 * python/musicxml.py (Part.interpret): skip back over chord notes.
3850 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3852 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3853 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3854 lily/slash-repeat-engraver.cc,
3855 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3856 iterator sends PercentEvents
3858 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3859 rework tuplets: send start/stop events to engraver
3861 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3862 dispatchers event-source and events-below to Context
3864 2006-05-15 Graham Percival <gpermus@gmail.com>
3866 * Documentation/user/README.txt: update info for doc writers.
3868 * Documentation/user/programming-interface.itely: integrate
3869 Nicolas' fixes for chapter rewrite.
3871 * Documentation/user/ various: minor fixes.
3873 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3875 * lily/clef-engraver.cc: cleanup.
3877 * Documentation/user/GNUmakefile: dist context-example.eps too.
3879 * lily/key-engraver.cc (create_key): use
3880 explicitKeySignatureVisibility for cancellation too.
3882 * lily/font-config.cc (init_fontconfig): don't close file if
3885 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3887 * Documentation/topdocs/NEWS.tely: niente and rotation news
3889 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3891 * lily/include/stencil.hh
3892 * lily/stencil.cc (rotate): new function. Makes it possible
3893 to rotate a stencil around a given offset.
3895 * lily/grob.cc (get_print_stencil): add rotation support
3897 * lily/stencil-interpret.cc (interpret_stencil_expression):
3898 add rotation support
3900 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3902 * scm/define-grob-properties.scm: add 'rotation property
3904 * scm/define-markup-commands.scm: add rotate markup command
3906 * scm/output-ps.scm: add rotation support in PostScript backend
3908 * scm/output-svg.scm: add rotation support in SVG backend
3910 2006-05-13 Graham Percival <gpermus@gmail.com>
3912 * Documentation/user/music-glossary.itely: French correction.
3914 * Documentation/user/programming-interface.itely: major
3915 new docs, some reorg, some info from Nicolas.
3917 * Documentation/user/ various: small fixes.
3919 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3921 * Documentation/user/programming-interface.itely (Markup
3922 programmer interface): Remove duplicate text.
3924 2006-05-12 Graham Percival <gpermus@gmail.com>
3926 * Documentation/user/context-example.eps: new file.
3928 * Documentation/user/changing-defaults.itely: set up file to
3931 * Documentation/user/programming-interface.itely: changes
3934 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3936 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3938 2006-05-11 Graham Percival <gpermus@gmail.com>
3940 * Documentation/user/programming-interface.itely: first round of
3941 editing and merging emails from Nicolas.
3943 * Documentation/user/scheme-tutorial: minor edit.
3945 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3947 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3949 (Xml_node.message): use it.
3951 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3952 oops. Add duration argument.
3954 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3956 * lily/paper-column-engraver.cc (make_columns):
3957 * scm/define-grobs.scm: Revert my previous change and set the default
3958 in define-grobs.scm instead.
3960 2006-05-09 Graham Percival <gpermus@gmail.com>
3962 * Documentation/user/changing-defaults.itely: general editing,
3963 info about \set and \override.
3965 * Documentation/user/tweaking.itely, advanced-notation.itely:
3966 fixes from Dave Luttinen, thanks!
3968 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3970 * lily/paper-column-engraver.cc (make_columns): By default, a column
3971 needs to be breakable.
3973 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3975 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3977 (musicxml_time_to_lily): idem
3978 (musicxml_key_to_lily): idem
3979 (instrument_drumtype_dict): dict for supported drumtypes.
3980 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3981 moments and pending mm rests
3982 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3983 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3984 (musicxml_voice_to_lily_voice): add mode change.
3985 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3986 speed and less memory usage (factor 5 to 10).
3987 (convert): write -defs.ly and driver file separately so people
3988 can script their own part extraction.
3990 * python/musicxml.py (minidom_demarshal_node): new function:
3991 separate minidom handling.
3992 (lxml_demarshal_node): new function: support lxml.etree too.
3993 (Xml_node.message): new function: verbose error message, with XML
3994 path to offending node.
3995 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3996 (Part_list.generate_id_instrument_dict): new method: collect
3997 instrument names, to be able to set drum_type.
3998 (Part.interpret): handle underfull measures
3999 (Part.interpret): assign instrument names.
4001 * python/musicexp.py (Output_printer.close): new method
4002 (MusicWrapper.print_ly): new class: support other modes,
4004 (BarCheck.print_ly): new class. Support bar checks, with comments
4005 and fancy barchecks.
4006 (NoteEvent.__init__): also set drum_type for drum notes.
4007 (MultiMeasureRest.lisp_expression): dump mm rests.
4009 * lily/paper-column-engraver.cc (stop_translation_timestep): set
4010 line-break-permission if forbidBreak is not set.
4012 2006-05-09 Joe Neeman <joeneeman@gmail.com>
4014 * scm/define-context-properties.scm:
4015 * scm/define-grob-properties.scm:
4016 * scm/define-grobs.scm:
4017 * scm/define-music-display-methods.scm:
4018 * scm/define-music-properties.scm:
4019 * scm/define-music-types.scm:
4020 * scm/music-functions.scm:
4021 * ly/declarations-init.ly:
4022 * lily/include/constrained-breaking.hh:
4024 * lily/spaceable-grob.cc:
4025 * lily/simple-spacer.cc:
4026 * lily/paper-score.cc:
4027 * lily/paper-column.cc:
4028 * lily/paper-column-engraver.cc:
4030 * lily/gourlay-breaking.cc:
4031 * lily/constrained-breaking.cc:
4032 * python/convertrules.py:
4033 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4034 "page-break-penalty" and "line-break-permission".
4035 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4036 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4038 * lily/bar-engraver.cc:
4039 * lily/beam-engraver.cc:
4040 * lily/forbid-break-engraver.cc:
4041 * lily/ligature-engraver.cc:
4042 * lily/paper-column-engraver.cc:
4043 * lily/percent-repeat-engraver.cc:
4044 * lily/score-engraver.cc:
4045 * lily/score-engraver.hh:
4046 * lily/paper-column-engraver.hh:
4047 Inter-engraver communication regarding line breaks is done through context
4048 properties (Score.forbidBreak) instead of function calls.
4050 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
4052 * VERSION (PACKAGE_NAME): release 2.9.4
4054 2006-05-08 Graham Percival <gpermus@gmail.com>
4056 * Documentation/user/working.itely: proofreading from Dave
4059 * Doucmentation/user/README.txt: updated with manual style info.
4061 * Documentation/user/ various: trim linewidth to 78 chars.
4063 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4065 * scm/define-grob-properties.scm (all-internal-grob-properties):
4066 remove chord-tremolo property.
4068 * lily/beam.cc (get_beam_segments): don't use stem position as
4069 base for broken ends.
4071 2006-05-06 Graham Percival <gpermus@gmail.com>
4073 * Documentation/user/putting.itely: proofreading from Dave
4076 * Documentation/user/ various: more reorg and clarifications.
4078 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4080 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4082 * ly/music-functions-init.ly: new function featherDurations
4084 * lily/beam.cc: read grow-direction for feathered beaming.
4086 * Documentation/topdocs/NEWS.tely (Top): typo.
4088 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4090 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4093 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
4094 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4095 used by music streams.
4097 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4098 lily/stream-event.cc, lily/stream-event-scheme.cc,
4099 lily/listener.cc, lily/scheme-listener.cc,
4100 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4101 lily/include/stream-event.hh, lily/include/listener.hh,
4102 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4103 Created data structures for music streams.
4105 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4107 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4108 construction of a beam.
4111 * flower/include/std-vector.hh (default_compare): use only one comparison.
4113 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4114 (note-by-number): further attachment fixes.
4116 * scm/lily-library.scm (ordered-cons): new function.
4117 (interval-index): new function
4119 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4121 * lily/note-head.cc (get_stem_attachment): new function.
4123 * scm/define-markup-commands.scm (note-by-number): read 'style
4126 * input/regression/markup-note.ly: show note-head style option.
4128 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4131 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4133 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4135 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4137 * lily/include/constrained-breaking.hh: GCC 4 fix.
4139 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4141 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4142 Replace it with functions get_line_forces and get_line_configuration.
4143 (class Simple_spacer): Make data private.
4144 Rewrite compression algorithm to be faster and simpler.
4146 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4147 * lily/gourlay-breaking.cc (solve):
4148 * lily/constrained_breaking.cc (space_line):
4149 Change it to the new simple-spacer code.
4151 * lily/paper-score.cc (get_paper_systems):
4154 Delay breaking the systems until they are requested.
4155 (find_break_indices):
4156 Use vsize for indices.
4158 Move the "Calculating line breaks" message here.
4160 * lily/system.cc (pre_processing):
4161 Move the "Calculating line breaks" message away from here.
4162 (break_into_pieces):
4163 Allow multiple calls to this function in sequence (with touching-but-
4164 not-overlapping breakpoints).
4166 * lily/constrained-breaking.cc:
4167 Replace most of the get_XXXX functions with get_line_details.
4168 Only calculate the force for each line. Calculate configurations only
4169 for the lines we will actually use.
4170 Replace cols_ with lines_.
4172 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4174 * mf/GNUmakefile (depth): remove FC_FIND.
4176 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4178 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4180 * scm/framework-ps.scm (write-preamble): new function.
4181 (write-preamble): load mac fonts via fondu, even if gs-font-load
4184 2006-05-03 Werner Lemberg <wl@gnu.org>
4186 * mf/GNUmakefile (FC_FIND): Fix typo.
4188 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4190 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4192 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4194 * stepmake/aclocal.m4: run python-config for crosscompiling
4197 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4198 -f png for HTML, TEXINFO formats.
4200 * input/tutorial/lbook-html-test.html: new file.
4202 * lily/include/tie-formatting-problem.hh (class
4203 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4204 [column, direction]. This fixes laissez vibrer ties.
4206 * flower/include/tuple.hh (struct Tuple2): new file.
4208 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4209 $(FCMATCH), only if $(NCSB_DIR) not set.
4211 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4213 * config.make.in (DOCUMENTATION): set FCMATCH.
4215 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4217 2006-05-03 Graham Percival <gpermus@gmail.com>
4219 * Documentation/user/ various: final round of reorg.
4221 * Documentation/user/instrument-notation.itely: some more
4222 fixes from Eduardo, thanks!
4224 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4226 * VERSION (PACKAGE_NAME): release 2.9.3
4228 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4230 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4232 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4234 * scm/define-grob-properties.scm (all-user-grob-properties):
4235 Correct typo, thanks to Eduardo.
4237 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4239 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4241 * buildscripts/lilypond-words.py (F): indent fix.
4243 * input/regression/tie-arpeggio-collision.ly: new file.
4245 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4246 function: store outlines per column rank.
4248 * lily/include/tie-configuration.hh (class Tie_configuration): add
4249 column_ranks_ to specification and configuration, to distinguish
4250 between ties for different heads in arpegiated chords.
4252 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4254 * *.py: more 4 space indents.
4256 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4258 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4260 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4262 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4264 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4266 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4268 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4270 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4272 * python/convertrules.py (conv): indent 4 for python files.
4274 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4276 * Documentation/user/changing-defaults.itely (Creating contexts):
4277 Clarify \new semantics.
4279 2006-04-28 Graham Percival <gpermus@gmail.com>
4281 * Documentation/user/ various: major new sections in the
4282 Learning manual, slight reorg elsewhere.
4284 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4286 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4288 * scm/framework-ps.scm (output-framework): remove PageMedia
4290 2006-04-27 Graham Percival <gpermus@gmail.com>
4292 * Documentation/user/ tweaks.itely, working.itely: new
4293 files, being more advanced "learning manual" chapters.
4295 * Documentation/user/ tutorial, putting, lilypond: reorg.
4297 2006-04-26 Graham Percival <gpermus@gmail.com>
4299 * input/regression/lyric-combine-polyphonic.ly: fixed test
4300 (no more "can't find context `one'" error).
4302 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4304 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4306 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4308 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4310 * lily/relocate.cc (read_relocation_dir): new function.
4312 2006-04-26 Graham Percival <gpermus@gmail.com>
4314 * Documentation/user/instrument-notation.itely: a few more fixes
4315 from Eduardo, thanks!
4317 * Documentation/user/README.txt: new file; contains info on
4318 style that used to be in lilypond.tely.
4320 * Documentation/user/ various: first round of doc reorg.
4322 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4323 graphic; this probably causes problems on some pdf
4324 viewers, notably Adobe Acrobat.
4326 2006-04-24 Graham Percival <gpermus@gmail.com>
4328 * Documentation/user/instrument-notation.itely: many alterations
4329 to Vocal music, from Eduardo Viera.
4331 2006-04-23 Graham Percival <gpermus@gmail.com>
4333 * Documentation/user/instrument-notation.itely: fix \new
4334 instead of \context problem.
4336 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4338 * lily/relocate.cc (expand_environment_variables): new function.
4340 (read_relocation_file): id.
4342 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4344 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4346 * ly/engraver-init.ly: remove old comments from TabVoice
4348 2006-04-20 Graham Percival <gpermus@gmail.com>
4350 * Documentation/user/instrument-notation.itely: added Erlend's
4351 latest doc patch, thanks!
4353 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4355 * lily/include/slur.hh:
4357 * lily/phrasing-slur-engraver.cc:
4358 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4359 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4360 Slur_engraver:: and putting it in
4361 Slur::auxiliary_acknowledge_extra_object ().
4363 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4365 * lily/note-collision.cc: fix a comment
4367 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4369 * stepmake/bin/add-html-footer.py: fix footer position in
4370 generated html files: before </body> and </html> tags.
4372 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4374 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4375 Earlier successive `make' commands finally compiled ok.
4377 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4379 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4381 * lily/include/stem-tremolo.hh:
4382 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4386 * lily/include/lookup.hh: add rotated_box ()
4388 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4390 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4391 been generated. Fixes "can't get `--help'" bug after make clean.
4393 * THANKS: alphabetize contributors.
4395 2006-04-17 Graham Percival <gpermus@gmail.com>
4397 * Documentation/user/instrument-notation.itely: added Erlend's
4398 tabs and banjo doc patch. Thanks!
4400 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4402 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4404 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4406 * scm/output-lib.scm: add some more predefined string tunings.
4408 * Documentation/user/instrument-notation.itely: and doc them.
4410 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4412 * ly/engraver.ly: Remove obsolete comments.
4414 * ly/gregorian-init.ly: Define default layout block.
4416 * input/puer-fragment.ly: Updated and extended.
4418 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4420 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4421 pdf conversion behaviour.
4423 * flower/file-name.cc (dir_name)
4424 (get_working_directory): Move from relocate.cc.
4426 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4428 * lily/relocate.cc: Encapsulate sys/stat.h in
4431 2006-04-14 Graham Percival <gpermus@gmail.com>
4433 * Documentation/user/ various: small updates from Cameron
4434 and Juergen, thanks!
4436 * Documentation/user/ various: small updates of my own.
4438 * THANKS: 2.7 -> 2.8.
4440 2006-04-11 Graham Percival <gpermus@gmail.com>
4442 * scm/define-context-properties.scm: typo.
4444 * Documentation/user/ : many more small updates.
4446 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4448 * scm/define-music-types.scm: disposed "docme".
4450 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4452 * lily/hairpin.cc: make niente circles a bit smaller.
4454 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4456 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4457 get-pfa and get-*-fonts targets.
4459 2006-04-10 Graham Percival <gpermus@gmail.com>
4461 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4462 music-glossary, programming-interface: more minor fixes
4465 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4467 * scm/define-context-properties.scm: another old \property update.
4468 This time tested for compiling!
4470 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4472 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4474 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4476 * scm/define-context-properties.scm (all-user-translation-properties):
4477 * Documentation/user/global.itely (Page formatting): Compile fix.
4479 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4481 * Documentation/user/advanced-notation.itely (Polymetric
4482 notation): Update the example to use the "+" symbol and add link
4483 to input/test/compound-time.ly.
4485 2006-04-08 Graham Percival <gpermus@gmail.com>
4487 * scm/define-grob-properties.scm: clarify docs for #'direction.
4489 * scm/define-context-properties.scm: update old \property override.
4491 * Documentation/user/ advanced-notation, global, lilypond-book:
4492 more minor doc updates.
4494 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4496 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4498 * scm/backend-library.scm (search-gs): oops.
4500 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4502 * scripts/lilypond-book.py (output): use base, not filename for href.
4504 * scm/backend-library.scm: only look for gs.
4506 * scripts/lilypond-book.py (output): fix printfilename.
4508 * lily/parser.yy (music_function_musicless_prefix): fold together
4509 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4511 * lily/slur.cc (print): only set font-size if not set yet.
4513 * lily/slur-configuration.cc (add_score): improved layout of debug
4516 2006-04-05 David Feuer <David.Feuer@gmail.com>
4518 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4519 (draw_circle): Hopefully fixed regression.
4520 Improved documentation for several procedures.
4522 2006-03-04 Werner Lemberg <wl@gnu.org>
4524 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4526 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4528 * scripts/musicxml2ly.py (bindir): add dynamic
4531 2006-04-04 Graham Percival <gpermus@gmail.com>
4533 * Documentation/user/ basic-notation, advanced-notation, putting,
4534 instrument-notation, invoking, lilypond, THANKS: another ream of small
4535 fixes from the Doc Helpers.
4537 2006-04-03 David Feuer <David.Feuer@gmail.com>
4539 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4541 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4543 * Cleaned up interfaces between PostScript and Scheme, and moved
4544 computations from PostScript to Scheme:
4546 * music-drawing-routines.ps
4547 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4548 with stroke_and_fill throughout.
4549 (euclidean_length, print_letter, draw_box): Deleted unused
4550 procedures. If someone needs draw_box, implement it using
4551 draw_round_box; don't duplicate code.
4552 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4553 Refactored/cleaned up interfaces.
4556 * output-ps.scm: reordered arguments to PostScript functions to
4557 match new interfaces
4558 (glyph-string): Rewrote glyph-string.
4559 (grob-cause): Replaced string-append with format.
4560 (repeat-slash): Rewrote to do computation here.
4561 (round-filled-box): Rewrote to do computation here.
4563 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4565 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4567 * stepmake/stepmake/toplevel- targets.make: print help info about
4570 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4572 * input/regression/hairpin-circled.ly: new file
4574 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4576 * lily/hairpin.cc (print): add support for circled tip
4578 * scm/define-grob-properties.scm: add circled-tip parameter
4580 * scm/define-grobs.scm: init circled-tip to false
4582 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4584 * scm/music-functions.scm (quote-substitute): set
4587 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4589 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4592 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4594 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4596 2006-03-31 David Feuer <david.feuer@gmail.com>
4598 * scm/framework-ps.scm:
4600 * scm/output-ps.scm: glyph-string now produces smaller, more
4601 readable, and probably faster PostScript. Several findfont
4602 scalefont setfont instances changed to selectfont
4603 Hacked-up string-appends changed to formats.
4605 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4607 2006-03-30 Graham Percival <gpermus@gmail.com>
4609 * scm/lily-library.scm: make "no version" warning message more polite.
4611 * lily/music.cc: add double quotes to failed octave check.
4613 * Documentation/user/ advanced-notation, changing-defaults,
4614 instrument-notation, invoking, music-glossary: whole bunch of minor
4617 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4619 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4620 $(buildscriptdir) iso. depth.
4622 * VERSION (PACKAGE_NAME): release 2.9.1
4624 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4626 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4628 * VERSION (PATCH_LEVEL): bump version number.
4630 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4633 * lily/pango-font.cc (pango_item_string_stencil): use
4636 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4637 $(outdir)/emmentaler-%.svg): remove canary.
4639 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4640 glyphnames if we have a ttf font.
4642 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4644 * Documentation/user/advanced-notation.itely (Font selection):
4645 Corrected reference to the font-family-override.ly example.
4647 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4649 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4650 stem-tremolo object in the stem (or else the stem might not be
4653 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4655 * lily/ttf.cc (print_trailer): only print existing glyphs.
4657 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4659 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4660 position the tremolo based on the position of the notehead.
4662 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4663 notes and update the texidoc line with the new positioning rules.
4665 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4667 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4669 * scripts/lilypond-book.py (Module): set default for linewidth if
4672 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4674 * VERSION (PACKAGE_NAME): release 2.9.0.
4676 * input/regression/stem-tremolo-position.ly: new file.
4678 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4680 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4682 * lily/stem-tremolo.cc (print): position
4683 the tremolo depending only on the end of the stem
4684 and not on the notehead
4685 (raw_stencil): center, on the middle staff line, the
4686 flag that is closest to the end of the stem (previously
4688 (calc_width): add this callback to shorten a tremolo when
4689 it is beamed or it is stemup with a flag
4690 (style): add this callback to make a tremolo rectangular when
4691 it is beamed or it is stemup with a flag
4692 (rotated_box): this is like Lookup::beam but makes a rotated
4693 rectangle instead of a parallelogram
4695 * lily/stem.cc (calc_stem_info): make sure the stem
4696 is long enough to fit the tremolo
4697 (calc-length): reduce the length of tremolo stems since the
4698 tremolo code is now capable of better positioning
4700 * scm/define-grobs.scm: make calc_width the default beam-width
4701 callback for stem-tremolo and add the style callback
4703 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4705 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4708 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4710 * lily/ttf.cc (make_index_to_charcode_map): restore old
4713 2006-03-28 Werner Lemberg <wl@gnu.org>
4715 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4717 2006-03-28 Graham Percival <gpermus@gmail.com>
4719 * THANKS: update for 2.9, add section for Documentation helpers.
4721 * Documentation/topdocs/NEWS.tely: compile fix.
4723 * Documentation/user/ basic-notation, global, advanced-notation,
4724 examples.itely: minor fixes from mailist.
4726 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4728 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4731 * lily/ttf.cc (print_trailer): use it.
4733 * lily/pango-font.cc (get_unicode_name): new function.
4735 * lily/ttf.cc (make_index_to_charcode_map): move function from
4737 (print_trailer): substitute uniXXXX name if applicable.
4739 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4740 (pango_item_string_stencil): use it to generate uniXXXX names.
4742 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4743 note heads, for uniform widths in shape note output.
4744 (overdone_heads): hmm. remove them again.
4746 * scripts/lilypond-book.py (output): add links to filenames.
4748 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4750 * lily/note-collision.cc (get_clash_groups): only consider when
4751 Note_column::dir <> CENTER.
4753 * scripts/lilypond-book.py (get_option_parser): init output_name
4756 2006-03-24 Graham Percival <gpermus@gmail.com>
4758 * Documentation/topdocs/NEWS.tely: add @end itemize
4760 * Documentation/user/ global, advanced-notation: minor
4763 2006-03-23 Graham Percival <gpermus@gmail.com>
4765 * Documentation/user/ lilypond.tely, music-glossary,
4766 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4768 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4770 * mf/GNUmakefile: don't install .enc files.
4772 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4774 * VERSION (PATCH_LEVEL): bump to 2.9.0
4776 2006-03-22 Graham Percival <gpermus@gmail.com>
4778 * Documentation/user/advanced-notation.itely: minor fixes
4781 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4783 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4785 * branch lilypond_2_8
4787 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4789 * scripts/lilypond-book.py (samefile): new function, for windoze
4792 2006-03-21 Graham Percival <gpermus@gmail.com>
4794 * ly/engraver-init.ly: add info about StaffGroup.
4796 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4798 * input/regression/stem-direction-context.ly: idem.
4800 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4804 * input/regression/page-layout-twopass.ly: comment out \markup so
4807 * lily/instrument-name-engraver.cc (finalize): add to instrument
4808 name global System. This also fixes chopped instrument names, but
4809 doesn't crash when there are slurs/beams.
4811 * lily/slur-configuration.cc (add_score): disallow negative slur
4814 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4816 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4818 * lily/instrument-name-engraver.cc (process_music): kludge: add
4819 InstrumentName spanner to axis group of left bound. Fixes chopped
4820 off instrument names in EPS images.
4822 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4824 * scripts/abc2ly.py (option_parser): update to 2.7.40
4826 2006-03-20 Graham Percival <gpermus@gmail.com>
4828 * THANKS: move small doc contributors to SUGGESTIONS.
4830 * Documentation/user/ basic-notation, advanced-notation,
4831 global: small changes from mailist.
4833 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4835 * Documentation/user/advanced-notation.itely (Text marks): update
4836 for new rehearsalMarkAlignSymbol convention.
4838 * VERSION (PATCH_LEVEL): bump version.
4840 * input/test/instrument-name-align.ly: new file.
4842 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4844 * input/test/instrument-name-align.ly: new file. Document how to
4845 align instrument names.
4847 * lily/mark-engraver.cc: remove properties.
4849 * scm/define-context-properties.scm
4850 (all-user-translation-properties): remove align symbol properties
4851 for barnumber/reh. mark.
4853 * lily/break-align-interface.cc (self_align_callback): new
4854 interface, new function. Look at complete alignment. This handles
4855 tunable break alignments in case break-align-symbols are missing.
4857 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4859 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4861 * python/convertrules.py (conv): mark/bar number alignment rule.
4863 * lily/break-align-interface.cc (calc_positioning_done): also
4864 store offset from last visible break-alignment to its
4865 neighbor. This makes alignment on non-visible objects more reliable.
4867 * po/lilypond.pot (Module): ran po-replace.
4869 * input/regression/tie-single-manual.ly (Module): new file.
4871 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4872 look at has_manual_position_.
4873 (from_ties): set has_manual_position_ if tie has staff-position set.
4875 * lily/tuplet-bracket.cc (calc_positions): idem.
4877 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4880 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4882 * scm/define-markup-commands.scm (smallCaps): new markup command
4883 for turning a text to small caps using smaller font size and upper
4886 2006-03-17 Graham Percival <gpermus@gmail.com>
4888 * Documentation/user/ examples, instrument-notation,
4889 advnaced-notation: minor fixes from mailist.
4891 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4893 * Documentation/user/tutorial.itely (First steps): change example
4896 2006-03-17 Graham Percival <gpermus@gmail.com>
4898 * Documentation/user/ examples, advanced: minor changes from mailist.
4900 * THANKS: add Geoff Horton, for documentation stuff.
4902 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4904 * python/lilylib.py (system): revert have_select kludge.
4906 * Documentation/user/tutorial.itely (Commenting input files):
4907 update version numbers in doc.
4909 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4910 bound-padding to multi-measure-interface
4912 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4914 * input/test/engraver-example.ily: update version number.
4916 * VERSION (PACKAGE_NAME): release 2.7.39
4918 * lily/note-spacing.cc (get_spacing): heighten threshold where
4919 accidentals/arpeggios influence previous spacing fully.
4921 * lily/rest.cc (y_offset_callback): only use direction if
4922 staff-position wasn't set before.
4924 * lily/bar-number-engraver.cc: add support for
4925 barNumberAlignSymbol.
4926 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4928 * lily/pointer-group-interface.cc (set_ordered): new function.
4929 (add_unordered_grob): new function.
4931 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4932 to ordered, unless the opposite has been proved. This fixes
4933 random reordering of large object groups across linebreaks,
4936 * lily/main.cc (do_chroot_jail): printf format fix.
4938 * lily/tie-formatting-problem.cc (generate_configuration):
4939 multiply y-shift for dot with direction.
4941 * scm/define-markup-commands.scm (note-by-number): put (magstep
4942 size) in y-attach too.
4944 * Documentation/topdocs/NEWS.tely (Top): show override.
4946 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4947 direction for stems.
4949 2006-03-15 Graham Percival <gpermus@gmail.com>
4951 * Documentation/user/ changing-defaults, global: minor
4954 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4956 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4958 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4959 breakable items after uniformly stretched notes.
4961 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4962 outline with outer edge of note heads. This prevents infinity
4963 problems with tied whole notes.
4965 * scripts/lilypond-book.py (do_file): use os.popen
4967 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4969 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4971 * Documentation/user/invoking.itely: Add ragged-right to bug report
4974 2006-03-14 Graham Percival <gpermus@gmail.com>
4976 * Documentation/user/global.itely: small fix from mailist.
4978 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4980 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4981 file descriptor returned by tempfile.mkstemp() when writing
4982 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4985 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4987 * po/fi.po: newline bugfix.
4989 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4991 * scm/paper.scm (paper-alist): Rounding fixes.
4993 2006-03-13 Graham Percival <gpermus@gmail.com>
4995 * Documentation/user/ changing-defaults, instrument-notation,
4996 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4998 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
5002 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5004 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5007 * python/lilylib.py (print_environment): move ps_page_count to
5010 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5012 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5014 * scm/framework-ps.scm (embed-document): new function. Use to
5017 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5019 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
5021 * Documentation/user/instrument-notation.itely (Setting simple
5022 songs): Added \book{...} around the full example, so the separate
5023 markups are included in the printed example.
5025 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5027 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5030 * python/lilylib.py (system): rewrite system() using
5031 subprocess. Remove >& redirection trickery.
5033 2006-03-11 Graham Percival <gpermus@gmail.com>
5035 * Documentation/user/ changing-defaults, global, scheme-tutorial,
5036 notation-appendices.itely: minor fixes from mailist.
5038 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5040 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5041 unsplit man also needs images.
5043 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5045 * VERSION (PACKAGE_NAME): 2.7.38 released.
5047 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5049 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5052 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
5054 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5055 respects the Score.skipTypesetting property.
5057 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5059 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5060 Prolog. No %%EOF after CFF file.
5062 2006-03-08 Joe Neeman <joeneeman@gmail.com>
5064 * lily/constrained-breaking.cc (get_max_systems): used to return a
5066 (combine_demerits): use pointers to reduce copying data
5067 (calc_subproblem): idem
5068 (get_page_penalty): add page turn penalties
5070 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
5072 * Documentation/user/invoking.itely (Invoking lilypond): better
5073 explanation of -e usage.
5075 * lily/main.cc (main_with_guile): don't append to
5076 init_scheme_code_string
5078 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5080 * Documentation/user/invoking.itely: add note about MacOS X scripts.
5082 * scripts/convert-ly.py (do_options): don't print help for
5085 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5086 @code and @example. Update from texinfo.tex from CVS.
5088 2006-03-08 Graham Percival <gpermus@gmail.com>
5090 * Documentation/user/scheme-tutorial.itely: clarifies distances
5091 measured in staff-spaces.
5093 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5095 * lily/slur.cc (outside_slur_callback): only calculate offsets if
5096 consider[k] is true.
5098 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5100 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5101 consider columns that have originals. Unifies spacing for mm
5102 rests around line breaks.
5104 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5105 (set_text_rods): idem.
5106 (calculate_spacing_rods): new function: share code between
5107 set_text_rods and set_spacing_rods.
5108 (set_text_rods): take extents of bounds into account.
5110 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5112 * Documentation/user/basic-notation.itely (Writing music in
5113 parallel): don't use relative.
5115 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5117 * ly/music-functions-init.ly (Module): add shiftDurations
5119 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5121 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5123 * ly/engraver-init.ly: init vocalName to nil.
5125 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5127 * scm/music-functions.scm (music->make-music): bugfix,
5128 KeyChangeEvents are now handled correctly.
5130 * scripts/lilypond-book.py: Add --debug option.
5132 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5134 * python/lilylib.py: add tempfile.
5136 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5138 * VERSION (PACKAGE_NAME): release 2.7.37
5140 * python/lilylib.py (ps_page_count): remove make_ps_images().
5141 (ps_page_count): remove mkdir_p
5142 (system): remove cleanup_temp.
5143 (exit): remove lilypond_version_(check)
5144 (error_log): remove pseudo_filter_p
5149 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5152 * lily/accidental-engraver.cc (make_standard_accidental): only add
5153 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5155 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5156 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5157 Make incompatibilities.
5159 * scm/output-ps.scm (grob-cause): replace backslashes by /
5160 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5162 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5164 * cygwin/GNUmakefile: Install fixes.
5166 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5168 * lily/note-head.cc (head::get_balltype): Compile fix.
5170 * flower/file-name.cc (dos_to_posix): Flower string fix.
5172 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5174 * python/lilylib.py: pychecker cleanups.
5176 * scripts/lilypond-book.py
5177 (Lilypond_snippet.output_print_filename): pychecker cleanups
5179 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5181 * python/lilylib.py (underscore): remove identify() , warranty()
5183 * ps/music-drawing-routines.ps: change Border routine for GSView
5186 * lily/stem.cc (height): use quantize-positions. This triggers
5187 set_stem_lengths, so scripts on beamed stems are handled correctly.
5189 * lily/side-position-interface.cc (aligned_side): check if edges
5190 of script are inside staff. Fixes accent of edge of the staff.
5192 * input/regression/staccato-pos.ly: more examples.
5194 * stepmake/aclocal.m4 (depth): fix bashism.
5196 * lily/lyric-combine-music-iterator.cc: move from
5197 new-lyric-combine-iterator.cc
5198 (process): add pending_grace_lyric_ member to delay lyrics on
5201 * lily/system-start-text.cc (print): suicide if we don't have any
5202 elements. Fixes hara kiri'd instrument names.
5204 * scripts/mup2ly.py (Module): remove.
5206 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5208 * Documentation/user/global.itely (A single music expression):
5209 close @lilypond properly
5211 * lily/volta-bracket.cc (modify_edge_height): change from
5212 after_line_breaking_callback. Suicide last bracket if appropriate.
5214 * python/lilylib.py: strip getopt support
5216 * scripts/etf2ly.py (do_options): use optparse
5218 * scripts/midi2ly.py: optparse, strip lilylib copy.
5220 * scripts/abc2ly.py (voices): use optparse.
5222 * stepmake/stepmake/generic-vars.make: new function absdir.
5224 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5226 * scripts/lilypond-book.py (find_file): use global_options for
5229 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5232 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5234 * python/lilylib.py (get_global_option): ughness for extracting
5235 global options from lilylib.
5236 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5238 * scripts/lilypond-book.py (get_option_parser): use optparse for
5239 option handling. Put options in global_options variable.
5241 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5243 * Documentation/index.html.in: clarify.
5245 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5247 * scm/layout-page-layout.scm (write-page-breaks): add a
5248 music-system-heights property to the page layout output.
5250 * scm/page.scm (make-page-stencil): take footer into account when
5251 computing the 'space-left page property
5252 (annotate-space-left): take footer into account when annonating
5255 2006-02-28 Graham Percival <gpermus@gmail.com>
5257 * Documentation/user/ advanced-notation, global: more (final)
5258 docs for music expressions, removed special fermatas.
5260 2006-02-27 Graham Percival <gpermus@gmail.com>
5262 * Documentation/user/ basic-notation, global: minor changes
5265 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5267 * scm/framework-ps.scm:
5268 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5269 layer for inf? and nan? from framework-ps to lily-library.
5271 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5273 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5274 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5276 * buildscripts/substitute-encoding.py (Module): remove file.
5278 * mf/GNUmakefile: more PFA strippage.
5280 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5282 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5285 * scm/framework-ps.scm: remove font name munging.
5287 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5289 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5291 * scm/markup.scm (define-markup-command): change
5292 def-markup-command to define-markup-command
5294 * scm/music-functions.scm (define-music-function): change
5295 def-music-function to define-music-function.
5297 * python/convertrules.py (conv): rules for def-music-function
5298 and def-markup-commands
5300 * Documentation/user/programming-interface.itely,
5301 input/no-notation/display-lily-tests.ly,
5302 input/regression/lily-in-scheme.ly,
5303 input/regression/markup-user.ly,
5304 input/regression/music-function.ly, input/regression/tie-chord.ly,
5305 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5306 ly/gregorian-init.ly: use new macro names (define-music-function,
5307 define-markup-command).
5309 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5311 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5312 (output): add comments to lp-book latex output.
5314 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5317 2006-02-23 Graham Percival <gpermus@gmail.com>
5319 * Documentation/user/ tutorial, global: minor changes.
5321 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5323 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5324 blocks (for make 3.80)
5326 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5327 \notemode so that user should not have to explicitely type it.
5329 * scm/define-music-display-methods.scm: various
5330 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5333 * input/no-notation/display-lily-tests.ly: new tests for
5334 \applyOutput and \applyContext
5336 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5338 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5339 changed it slightly so that the number of systems returned by
5340 solve () will be the same as the last value passed to resize
5341 (). I've also added more documentation, removed casts, fixed style
5342 problems and put in some recovery if constraints aren't satisfied."
5344 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5346 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5347 for emacs < 22 compatibility.
5348 (count-rexp): Use it.
5349 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5350 substring juggling (Milan Zamazal).
5352 2006-02-23 Graham Percival <gpermus@gmail.com>
5354 * Documentation/user/ basic-notation, advanced-notation,
5355 global.itely, invoking.itely, tutorial,itely:
5356 minor fixes from mailist.
5358 * scm/define-markup-commands.scm: improve docs of \filled-box.
5360 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5362 * Documentation/index.html.in: changes concern the previous release.
5364 * input/regression/+.ly: cultivate typographical terminology.
5366 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5368 * scm/define-grob-interfaces.scm (parentheses-interface): add
5369 padding to parentheses-interface.
5371 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5372 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5374 * VERSION (PATCH_LEVEL): release 2.7.36
5376 * lily/slur.cc: add avoid-slur (ugh.)
5378 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5379 intersection gets smaller. This fixes slurs over extreme points.
5381 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5382 stems with neutral-direction set.
5384 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5386 * lily/open-type-font.cc (load_table): format error.
5388 * lily/change-iterator.cc (process): format fix.
5390 * flower/include/international.hh (_f): idem.
5392 * flower/include/std-string.hh: add format printf attribute.
5394 * scm/define-grobs.scm (all-grob-descriptions): height of all
5395 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5397 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5400 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5402 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5404 * input/regression/: upgraded syntax for some files.
5406 * THANKS: Add bughunters.
5408 2006-02-22 Graham Percival <gpermus@gmail.com>
5410 * Documentation/user/ invoking.itely, advanced-notation.itely,
5411 global.itely: long-awaited "let's make chapter 10 not suck"
5412 update. Rearrange chapter 10; now called "global issues",
5413 addresses file structure, etc. Some info from other files
5414 moved into global.itely.
5416 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5418 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5419 catch trill-span-event notes.
5421 * Documentation/user/examples.itely (Ancient notation templates): typo.
5424 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5426 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5428 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5430 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5432 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5433 froum Laissez_vibrer_engraver.
5435 * ly/declarations-init.ly (repeatTie): add \repeatTie
5437 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5439 * scm/define-grob-properties.scm (all-user-grob-properties): add
5440 head-direction property.
5442 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5443 from_lv_ties. Take head direction argument.
5445 * lily/semi-tie-column.cc: rename from
5446 laissez-vibrer-tie-column.cc. Rename class too.
5448 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5451 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5453 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5455 (find_breaks): idem.
5457 2006-02-21 Graham Percival <gpermus@gmail.com>
5459 * Documentation/user/advanced-notation.itely: fixed make-moment]
5462 * Documentation/user/basic-notation.itely: more clarification to
5465 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5467 * lily/include/constrained-breaking.hh (class
5468 Constrained_breaking): new file.
5470 * lily/constrained-breaking.cc (resize): new file.
5472 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5474 * Documentation/user/advanced-notation.itely (Clusters): insert
5477 * lily/tie-column.cc (calc_positioning_done): support for
5480 * lily/tie-formatting-problem.cc
5481 (generate_extremal_tie_variations): factor out.
5482 (score_ties_configuration): annotate all tie
5483 (print_ties_configuration): new routine.
5484 (generate_configuration): nudge extremal ties outside of the head
5486 (score_ties_configuration): oops. convert to staff-space before
5487 determining position symmetry.
5489 2006-02-20 Graham Percival <gpermus@gmail.com>
5491 * Documentation/user/*-notation.itely: misc minor editing,
5492 shifting doc sections around.
5494 * Documentation/user/*-notation-itely, global.itely,
5495 changing-defaults.itely: added new stuff from NEWS.
5497 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5501 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5503 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5504 lilypond --verbose for lp-book.
5506 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5507 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5509 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5510 $(buildscript-dir) iso. absolute depth.
5512 * buildscripts/genicon.py (dir): thinko.
5514 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5516 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5518 * scm/output-lib.scm: swap darkcyan/darkyellow
5520 * THANKS: Add bughunters.
5522 2006-02-19 Graham Percival <gpermus@gmail.com>
5524 * Documentation/user/programming-interfaces.itely: fixed example.
5526 * Documentation/user/instrument-notation.itely: fix @{ @}.
5528 * scm/script.scm: add avoid-slur for \open.
5530 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5532 * lily/tie-formatting-problem.cc (score_configuration): use
5533 sliding score for min-length.
5535 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5536 spaghetti for icons.
5538 * buildscripts/genicon.py (program_name): new file.
5540 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5542 (generate_configuration): for small ties, also look for collisions
5543 at Y + DIR*h + DELTA_Y.
5544 (get_variations): consider variation for dot positions too.
5546 * lily/side-position-interface.cc (aligned_side): take abs for
5547 quantized rounded position. Fixes tenuto below staff.
5549 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5550 markers when necessary.
5552 * lily/program-option.cc (internal_set_option): add
5553 strict_infinity_checking option.
5555 * scm/output-lib.scm (cyan): swap yellow and cyan.
5557 2006-02-19 Graham Percival <gpermus@gmail.com>
5559 * darwin.patch: trivial linenumber update.
5561 * Documentation/user/ {various}: `\context foo = named' changed
5562 to `\new foo = "name"' in docs.
5564 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5566 * scm/stencil.scm (annotate-y-interval): use it.
5568 * scm/lily-library.scm (interval-sane?): new function.
5570 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5573 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5576 * flower/include/std-vector.hh (iterof): add iterof macro.
5578 * lily/enclosing-bracket.cc (width): new function.
5580 * lily/align-interface.cc (align_elements_to_extents): reinstate
5583 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5585 * Documentation/index.html.in: fix spelling: thankyous.
5587 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5589 * lily/lyric-hyphen.cc: typo.
5591 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5593 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5594 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5597 * VERSION: release 2.7.35
5599 * lily/beam.cc (get_default_dir): oops. Take abs () for
5601 (get_default_dir): use extreme position criterion only in absence
5602 of forced stem directions.
5604 * VERSION (PATCH_LEVEL): bump VERSION.
5606 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5607 dependencies. Necessary for -jX builds.
5609 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5611 * lily/relocate.cc (setup_paths): Yet another const fix.
5613 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5615 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5617 * lily/relocate.cc (setup_paths): oops.
5619 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5621 * Documentation/index.html.in: order links: html before PDF.
5623 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5625 * lily/tie-column-format.cc (Module): remove.
5627 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5629 * lily/text-spanner.cc (print): idem.
5631 * lily/dynamic-text-spanner.cc (print): only print line if longer
5634 * lily/auto-change-iterator.cc (change_to): formatting.
5636 * lily/beam.cc (get_default_dir): take extreme note head as input
5639 * lily/tie.cc (get_default_dir): only look directions for visible
5642 * lily/side-position-interface.cc (aligned_side): oops. Don't
5643 mutiply with direction. This fixes quantized (staccato, tenuto)
5644 scripts below notes.
5646 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5647 direction. Fixes c-lyrics-center-align.ly
5649 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5651 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5654 * lily/std-string.cc:
5655 * lily/include/std-vector.hh (split_string): Move and rename from
5656 lily/include/misc.hh, lily/misc.cc. Update callers.
5658 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5660 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5662 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5664 * flower/test-file.cc: New file.
5666 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5669 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5671 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5673 * flower/include/file-storage.hh: remove file.
5675 * lily/include/midi-item.hh (class Midi_track): idem.
5677 * lily/include/source.hh (class Sources): idem.
5679 * lily/include/performance.hh (class Performance): use vector
5682 * flower/include/cons.hh (class Cons): remove file.
5684 * flower/include/flower-proto.hh: remove template cruft.
5686 * lily/include/font-metric.hh: use size_t not vsize for indices.
5688 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5691 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5693 * lily/include/paper-book.hh (class Paper_book):
5694 make get_system_specs() public.
5696 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5697 the force=10000 case if we don't have a current-best.
5699 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5702 * flower/include/flower-proto.hh: remove outdated templates.
5704 * scm/page.scm: use annotate-spacing
5706 2006-02-15 Graham Percival <gpermus@gmail.com>
5708 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5710 * THANKS: moved Erlend Aasland to contributors.
5712 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5714 * config.hh.in: remove HAVE_PANGO_16
5716 * lily/tuplet-bracket.cc (calc_positions): multiply with
5717 staff-space for beam case. This fixes tuplets+beams on scaled
5720 * config.hh.in: remove all Kpathsea related defines.
5722 * lily/dot-column.cc (side_position): reach stem via dots->
5723 head->stem. Inspect all stems for dot collisions.
5725 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5728 * lily/bar-number-engraver.cc (process_music): document function
5731 * lily/score.cc (default_rendering): add pscore, not systems
5734 * lily/paper-book.cc (get_system_specs): separate generation of
5737 * flower/include/std-vector.hh: don't include config.hh
5739 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5741 * flower/include/std-vector.hh: Better wrapper compatibility with
5744 * flower/include/flower-proto.hh: Remove cheap forward declaration
5747 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5749 2006-02-14 Graham Percival <gpermus@gmail.com>
5751 * Documentation/user/invoking.itely: add warning about command line.
5753 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5755 * lily/include/lily-proto.hh: add Prob, rm Page.
5757 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5759 * VERSION: release 2.7.34
5761 * lily/relocate.cc (framework_relocation): show canary if
5762 GHOSTSCRIPT_VERSION undefined.
5764 * GNUmakefile.in: remove $(VERSION) symlink.
5766 * lily/relocate.cc (setup_paths): add +
5768 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5770 * Documentation/index.html.in: specify sizes for all big HTML pages.
5772 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5774 * config.hh.in: remove @FRAMEWORKDIR@
5776 * lily/system-start-text.cc (get_stencil): new file: separate out
5777 system-start-delimiter text support.
5779 * input/**ly: replace \context with \new where appropriate.
5783 * lily/slur-scoring.cc (get_base_attachments): use
5784 robust_relative_extent. This fixes problems with empty paper-columns.
5786 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5788 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5790 * scm/define-music-properties.scm (all-music-properties):
5791 create-new property.
5793 * lily/context-specced-music-iterator.cc (construct_children):
5794 inspect 'create-new property iso. magical $uniqueContextId context
5797 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5799 * lily/context-key-manager.cc (Module): new file. Encapsulate
5800 object key generation.
5802 * lily/include/context-key-manager.hh (Module): new file.
5804 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5806 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5809 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5811 (reloc_b): excise --enable-framework-dir
5813 * lily/relocate.cc (framework_relocation): use getenv
5814 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5816 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5818 * flower/include/std-string.hh:
5819 * flower/include/std-vector.hh: Finish std:: conversion; move
5820 flower extensions from std:: namespace. Update users.
5822 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5823 their expansion to vector<*>. Update users.
5825 2006-02-10 Graham Percival <gpermus@gmail.com>
5827 * Documentation/user/invoking.itely: add example to File structure.
5829 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5830 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5832 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5834 * ly/paper-defaults.ly: typo.
5836 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5837 set_parent() for parentheses. This will make it show up in bbox
5840 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5841 ly:grob-common* functions.
5843 * lily/grob-scheme.cc (LY_DEFINE):
5844 ly:grob-common-refpoint-of-array: new function
5845 ly:grob-common-refpoint: new function
5846 ly:grob-relative-coordinate: new function
5848 * lily/instrument-name-engraver.cc (process_music): use
5849 Text_interface::is_markup(). This fixes \markup on instrument names.
5851 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5854 * lily/slur.cc (print): idem.
5856 * lily/tie.cc: add line-thickness for ties.
5858 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5860 * scm/output-svg.scm: Document diversion from GNU coding standards
5861 as a workaround for a bug in Microsoft Internet Explorer.
5863 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5865 * lily/instrument-name-engraver.cc (process_music): use
5866 is_markup() iso. is_string()
5868 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5870 * lily/percent-repeat-engraver.cc (process_music): only look at
5871 main_part_ for % repeats.
5873 * lily/stem-tremolo.cc (get_beam_translation): new function.
5874 (calc_slope): new function.
5875 (height): don't use real slope.
5877 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5879 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5880 new connect-to-neighbor, control-points and staff-padding
5881 properties to make ligature brackets showing up again.
5883 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5885 * VERSION: release 2.7.33
5887 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5890 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5891 remove applyOutput example.
5892 (Objects connected to the input): document \tweak, \parenthesize
5894 * lily/relocate.cc (prefix_relocation): allow "current"
5895 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5896 changing VERSION in a lily tree less painful.
5898 * input/regression/parenthesize.ly: new file.
5900 * scm/output-lib.scm (parenthesize-element): new function.
5902 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5904 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5906 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5907 cause: accidentals are caused by note heads, not note events.
5909 2006-02-08 Graham Percival <gpermus@gmail.com>
5911 * darwin.patch: small patch from Erlend, thanks!
5913 * Documentation/user/basic-notation.itely: add stem-neutral example.
5915 * Documentation/user/putting.itely: clarifications.
5917 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5919 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5920 note, add more guidelines to what should go into NEWS.
5922 * input/sakura-sakura.ly: document how to override font.
5924 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5926 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5928 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5930 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5932 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5933 convertrules. Add explicit grouping, needed for python2.2.
5935 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5937 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5939 2006-02-07 Graham Percival <gpermus@gmail.com>
5941 * Documentation/user/global.itely: fix line-width in (text) docs.
5943 * Documentation/user/lilypond-book.itely: same.
5945 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5947 * VERSION (PACKAGE_NAME): release 2.7.32
5949 * Documentation/topdocs/NEWS.tely (Top): document new variable
5952 * flower/include/array.icc (Message): remove file.
5954 * flower/include/std-vector.hh: make sure vsize and VPOS are
5955 defined for binary_search_bounds().
5957 * flower/std-string.cc (std): add to_string(long unsigned).
5959 * configure.in (gui_b): excise std_string option.
5960 (gui_b): excise std_vector option.
5962 * flower/string.cc (Module): excise flower array & string
5964 * flower/include/std-string.hh: excise flower string.
5966 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5968 * python/convertrules.py (lilypond_version_re_str): require
5969 only numbers and dots in \version string.
5971 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5973 * lily/system-start-delimiter.cc (print): allow style = text too.
5975 * lily/system-start-delimiter-engraver.cc
5976 (acknowledge_system_start_text): new function, also add add to
5977 support of system-start-text (instrument names). This fixes
5978 instrument names on piano staves.
5980 * lily/instrument-name-engraver.cc: rewrite. Use
5981 system-start-delimiter approach. This save memory and cpu.
5983 * scm/define-grobs.scm (all-grob-descriptions): remove
5984 instrument-name from break-alignment.
5986 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5988 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5990 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5993 * configure.in (std_vector): On by default.
5995 * lily/include/font-metric.hh:
5996 * lily/include/tfm-reader.hh:
5997 * lily/include/spanner.hh: Use unsigned for indices and sizes.
6000 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6002 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6004 * VERSION (PACKAGE_NAME): 2.7.31
6006 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6007 EPS edge at 0, but take minimum with left-overshoot. This fixes
6008 cut off system start delims.
6010 * lily/instrument-name-engraver.cc (stop_translation_timestep):
6011 hack: add to axis group if not added yet. This fixes hara kiri'd
6014 * lily/hara-kiri-group-spanner.cc
6015 (force_hara_kiri_in_y_parent_callback): fix signatures.
6017 * lily/hairpin.cc (print): check next hairpin to see whether or
6018 not to be continuing.
6020 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
6022 * Remove trailing whitespace from makefiles.
6024 * flower/include/std-vector.hh: Add binary_search_bounds workaround
6027 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
6029 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6031 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6033 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6035 * configure.in: Use it.
6037 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6039 * scm/music-functions.scm (pitch-of-note): new function.
6041 * ly/music-functions-init.ly: add \octave and \addquote
6043 * lily/parser.yy (music_function_chord_body): softcode \octave.
6044 (lilypond_header): softcode \addquote
6046 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6048 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6049 array.hh, parray.hh at all. Getting ready to flip the
6052 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6054 * lily/source-file.cc (file::get_line): Help binary_search_bounds
6057 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6059 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
6061 * flower/include/array.hh: typo.
6063 2006-02-02 Graham Percival <gpermus@gmail.com>
6065 * Documentation/user/advanced-notation.itely: doc "\#" in text.
6067 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
6069 * flower/include/pqueue.hh: Derive from std::vector.
6071 * flower/include/parray.hh: Conform to std::vector interface.
6074 2006-02-02 Graham Percival <gpermus@gmail.com>
6076 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6078 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6080 * flower/file-path.cc (is_file): remove if 0 section.
6082 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6083 selecting afii61352.
6085 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6087 * flower/include/std-vector.hh (boundary): Oops, reverse.
6089 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6090 remove superfluous `d'.
6092 * flower/include/std-vector.hh (boundary, top): Detach from class.
6093 Remove empty vector shell.
6095 * flower/include/array.hh (reverse, swap): Detach from class.
6098 * flower/include/std-vector.hh
6099 * flower/include/array.hh (concat): Globally change to insert ().
6101 * flower/include/std-vector.hh
6102 * flower/include/parray.hh
6103 * flower/include/array.hh (elem, elem_ref): Globally replace by
6106 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6108 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6110 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6111 anticipate on identifier substitutions.
6113 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6115 * flower/include/std-vector.hh (insert): Remove, replace by
6116 std::vector interface. Update callers.
6118 * flower/include/array.icc (insert): Change signature to
6119 match std::vector interface.
6121 * flower/include/array.icc (vector_sort): Bugfix.
6123 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6125 * lily/parser.yy (output_def_head_with_mode_switch): new
6126 production. Result: dashes and underscores may be used in the
6129 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6131 * python/convertrules.py (conv): oops. One slash too much.
6133 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6135 * flower/include/std-vector.hh (sort): Remove, replace by
6136 ::vector_sort. Update callers.
6138 * flower/include/std-vector.hh (slice): Remove. Update callers.
6141 * flower/test-std.cc (vector_sort): New test.
6143 2006-02-01 Graham Percival <gpermus@gmail.com>
6145 * Documentation/user/putting.itely: fixes from Erik.
6147 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6149 * flower/test-std.cc: Add simple unit test for vector migration.
6151 * stepmake/stepmake/test*: Unit test support.
6153 * flower/include/std-vector.hh (del): Remove. Use erase (),
6156 * flower/include/array.hh (begin, end): Add.
6159 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6161 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6162 std::string not String.
6164 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6167 * lily/prob.cc (Prob): copy type_ too.
6169 * lily/lily-guile.cc (mangle_cxx_identifier): new
6170 function. Class_bla::foo_bar_[px] ->
6171 ly:class-bla::foo-bar[?!]. Changes throughout
6173 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6175 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6177 * lily/beam.cc (calc_direction): take dir from visible stem in
6180 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6182 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6183 Fix -1, >=0 boundary checks for unsigned vsize.
6185 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6186 loop for unsigned vsize.
6188 * configure.in (--enable-std-vector): New option.
6189 (--enable-std-string): On by default.
6191 * flower/include/std-vector.hh: New file. Enable switch to
6192 std::vector, update client code.
6194 2006-01-30 Graham Percival <gpermus@gmail.com>
6196 * scm/document-translation.scm: clarify "this context is also
6197 known as". Thanks, Werner!
6199 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6201 * Documentation/user/invoking.itely: small fix from Don.
6203 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6205 * scm/lily.scm (define-scheme-options): rename option
6206 preview-include-book-title to book-title-preview
6207 (define-scheme-options): move force-eps-font-include (from paper
6208 block) to eps-font-include -d option.
6210 * VERSION (PATCH_LEVEL): release 2.7.30
6212 * input/bach-schenker.ly (staffPiano): new file.
6214 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6216 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6219 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6221 * ps/lilyponddefs.ps: remove start-system, stop-system,
6222 start-page fluff. This saves putting { } code on the stack, fixing
6223 stack overflows when including EPS files.
6225 2006-01-29 Graham Percival <gpermus@gmail.com>
6227 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6229 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6231 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6233 2006-01-28 Graham Percival <gpermus@gmail.com>
6235 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6237 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6239 * input/mutopia/claop.py: Update.
6241 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6243 * input/regression/completion-heads.ly (texidoc): fix.
6245 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6247 * lily/tie-formatting-problem.cc
6248 (set_ties_config_standard_directions): use abs iso fabs for ints.
6250 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6252 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6253 little less than noteheight, to prevent overlaps in chords.
6255 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6256 head, and fudge stem-attachment.
6258 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6260 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6262 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6264 * lily/main.cc (main): Debugging aid: catch exceptions.
6266 * flower/std-string.cc (to_string): Robustification. Fixes midi
6267 output with std::string.
6269 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6271 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6273 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6275 * Fix -DSTRING_UTILS_INLINED.
6277 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6279 * VERSION (PATCH_LEVEL): release 2.7.29
6281 * lily/relocate.cc (setup_paths): mingw uses std string too.
6283 * lily/*.cc: various fixes for substr(ARG).
6285 * lily/sustain-pedal.cc (print):
6287 * flower/file-name.cc (slashify): use std strings.
6289 * flower/string-convert.cc: remove publib.h
6291 * scm/define-markup-commands.scm (verbatim-file): new markup
6292 command \verbatim-file
6294 * Documentation/topdocs/NEWS.tely: fixup URLs
6296 * input/regression/alignment-vertical-manual-setting.ly (Module):
6299 * lily/align-interface.cc (align_elements_to_extents): overwrite
6300 translations with numbers in alignment-offsets from left bound
6302 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6303 (page-translate-systems): new function: take into account Y-offset.
6305 * Documentation/topdocs/NEWS.tely (Top): document new features.
6307 * input/regression/page-layout-manual-position.ly (Module): new
6310 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6312 * flower/file-path.cc (path::parse_path): Oops.
6314 * Finish std::string interface. For now, use std:: marker
6315 throughout for easy s/r.
6317 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6319 * Documentation/user/putting.itely (Score is a single musical
6321 (Score is a single musical expression): more typos.
6323 * scm/page.scm (annotate-space-left): thinko.
6324 (annotate-page): more thinkos.
6326 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6328 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6329 for different \score blocks separately.
6330 (post-process-pages): put write-page-layout into paper block.
6332 * lily/output-def.cc (get_parser): new file.
6334 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6337 * lily/include/output-def.hh (class Output_def): add parser_ member.
6339 * input/regression/page-layout-twopass.ly (Module): new file.
6341 * scm/lily.scm: remove cpp hack.
6343 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6345 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6347 * GNUmakefile.in (c-clean): New target.
6349 * flower/include/std-string.hh: String/std::string compatibility:
6350 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6353 * flower/rational.cc:
6354 * flower/include/rational.hh:
6357 * flower/include/offset.hh:
6359 * flower/interval.cc:
6360 * flower/include/interval.hh:
6362 * flower/string-convert.cc:
6363 * flower/include/string-convert.hh: Use std::string [interface].
6366 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6368 * Documentation/index.html.in: clean up.
6370 2006-01-25 Graham Percival <gpermus@gmail.com>
6372 * Documentation/user/putting.itely: another new untested doc section.
6374 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6376 * scm/layout-page-layout.scm (write-page-breaks): write
6377 \spacingTweaks #ALIST. Handle grace timing.
6379 * scm/: more imports.
6381 * scm/page.scm (make-page): add footer/header.
6382 (annotate-space-left): revise: only take page argument.
6383 (layout->page-init): new function.
6385 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6386 version of the system/spacing/linebreak hack writing to the output
6388 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6391 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6394 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6396 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6398 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6400 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6401 handling to page.scm
6403 * lily/prob-scheme.cc (LY_DEFINE): new file.
6404 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6406 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6409 * lily/music.cc (derived_mark): derive Music from Prob.
6411 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6413 * lily/prob.cc (Module): Implement Prob (Property Object), object
6414 with shared and r/w property alists.
6416 * lily/include/prob.hh (Module): new file. Declare Prob.
6418 * flower/string.cc: remove is_empty().
6420 * flower/include/string.hh (class String): remove String:: qualifier.
6422 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6423 substitute appropriate functions.
6425 * flower/include/string.hh (class String): remove to_str0 and
6426 is_empty(). S&R everywhere.
6428 2006-01-23 Graham Percival <gpermus@gmail.com>
6430 * Documentation/user/basic-notation.itely: add hairpin
6431 after-linebreak tweak to commonprop.
6433 * Documentation/user/putting.itely: added two new sections.
6435 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6437 * flower/international.cc:
6438 * flower/include/international.hh:
6440 * flower/getopt-long.cc:
6441 * flower/include/getopt-long.hh: Use std::string [interface].
6444 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6446 * stepmake/stepmake/executable-rules.make: Add dependency on
6449 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6451 * flower/file-path.cc:
6452 * flower/include/file-path.hh: Use std::string [interface].
6455 * flower/direction.cc:
6456 * flower/axis.cc: Unused. Remove.
6458 * configure.in (--enable-std-string): New option.
6460 * flower/std-string.cc:
6461 * flower/include/std-string.hh: New file.
6463 * flower/file-name.cc[STD_STRING]:
6464 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6466 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6468 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6470 * scm/define-markup-commands.scm (with-dimensions):
6471 with-dimensions markup command.
6473 * input/test/font-table.ly: use it.
6475 * lily/open-type-font.cc (glyph_list): new function.
6477 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6479 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6481 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6483 * ly/music-functions-init.ly (parallelMusic): new music function
6484 for parallel music entry.
6486 * scm/define-music-properties.scm (all-music-properties): new
6487 'void music property
6489 * scm/music-functions.scm (ly:music-message): make public, to be
6490 used in music function definitions
6492 * scm/lily-library.scm (collect-music-for-book): discard music
6493 when the 'void property is set.
6495 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6497 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6499 * mf/GNUmakefile: idem.
6501 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6503 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6505 * Documentation/user/notation-appendices.itely (The Feta font):
6508 * input/test/font-table.ly: new file. Generate font table within lily.
6510 * Documentation/user/notation-appendices.itely (The Feta font):
6511 use new font-table.ly file.
6513 * stepmake/stepmake/install-out-targets.make
6514 (local-install-outfiles): only create directory if
6515 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6517 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6519 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6521 * VERSION (PACKAGE_NAME): release 2.7.28
6523 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6524 the right font from a Mac dfont.
6525 (write-preamble): don't forget directory, only look at files.
6527 This fixes problems with TTF files in dfonts that don't match
6528 their PostScript names.
6530 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6531 PS name from TTF font.
6533 * input/regression/tie-manual.ly: document new feature.
6535 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6537 * VERSION (MY_PATCH_LEVEL): bump to .28
6539 * Documentation/user/basic-notation.itely (Ties): add tie examples
6542 * lily/tie-formatting-problem.cc (score_ties_configuration):
6543 symmetry penalties for outer ties.
6545 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6547 * lily/tie-formatting-problem.cc (generate_configuration)
6548 (set_manual_tie_configuration): skip non-pair manual
6549 tie-configuration, so you can set individual ties as
6551 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6553 * input/regression/tie-chord.ly: use generateTiePattern to
6556 * lily/tie-formatting-problem.cc (peak_around): new function.
6557 (score_configuration): use sliding criterion for staff line collisions.
6558 (score_configuration): idem for dot collisions.
6559 (generate_configuration): use separate stem_gap for gap to stem.
6561 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6562 separate penalty factors for x and y distance.
6563 (struct Tie_details): separate penalties for tip and center line collisions.
6565 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6567 * lily/tie-formatting-problem.cc (generate_configuration): make
6568 large ties avoid stafflines in the horizontal section.
6569 (score_configuration): use softcoded penalties
6570 (score_aptitude): idem.
6572 * lily/tie-helper.cc (from_grob): softcode tie details
6574 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6576 * lily/staff-symbol-referencer.cc (on_line): rename from
6579 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6581 * ly/music-functions-init.ly: remove duplicate tag.
6583 * lily/include/*.hh: GCC 4.1 fixes.
6585 006-01-16 Erlend Aasland <erlenda@gmail.com>
6587 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6589 * scm/define-music-types.scm: fix bug in desc. string
6590 for OverrideProperty
6592 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6594 * scripts/lilypond-book.py: bugfix
6596 * scm/define-music-types.scm: fix typos.
6598 2006-01-14 Graham Percival <gpermus@gmail.com>
6600 * Documentation/user/ basic-notation.itely, global.itely,
6601 advanced-notation.itely, instrument-notation.itely: small
6602 additions (bugs and commonly tweaked properties).
6604 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6606 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6607 detection of mingw build.
6608 (MINGW_BUILD): opps.
6610 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6612 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6615 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6617 * scm/music-functions.scm (skip->rest): add skip->rest
6619 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6621 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6624 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6625 config dirs. Aids debugging.
6626 (display_config): also display config files.
6628 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6630 * VERSION: release 2.7.27
6632 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6633 for determining bar size.
6635 * lily/staff-symbol.cc (print): place lines at distance line-positions
6637 * scm/define-grob-properties.scm (all-user-grob-properties): add
6640 * lily/staff-symbol.cc (height): new function.
6642 * input/regression/staff-line-positions.ly: new file.
6644 2006-01-06 Graham Percival <gpermus@gmail.com>
6646 * input/test/add-staccato.ly: remove reference to old file.
6648 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6650 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6651 lilypond binary too.
6653 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6655 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6657 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6659 * scripts/midi2ly.py: Bugfix: Declare datadir.
6661 * make/ly-rules.make:
6662 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6663 that seems to be gone). Fixes make web.
6665 * The grand 2005-2006 replace.
6667 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6669 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6671 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6672 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6673 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6674 like -dgs-font-load.
6676 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6677 remove absolute path to lilypond binary.
6679 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6681 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6683 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6685 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6687 * mf/GNUmakefile: remove broken dvips map symlink.
6689 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6692 * configure.in: Cosmetic fixes.
6694 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6696 * Documentation/user/music-glossary.tely (Pitch names): Added
6697 Spanish pitch names and durations, thanks to Ernesto Gancedo
6699 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6701 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6702 init. Fixes verbose printing of .scm files.
6704 * stepmake/aclocal.m4: add spaces before - options.
6706 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6708 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6709 of path search in local block variable.
6711 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6713 * configure.in (NCSB_DIR): --enable-ncsb-dir
6714 (LINK_GXX_STATICALLY): denko.
6716 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6718 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6719 use locate to find c059033l.pfb.
6721 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6723 * lily/tie-formatting-problem.cc
6724 (problem::generate_base_chord_configuration): Use my_round (was
6727 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6728 do not invoke mbrtowc.
6730 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6732 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6734 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6736 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6738 * Documentation/user/invoking.itely (svg): revise.
6740 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6742 * lily/lexer.ll: use sourcefilename iso. renameinput.
6744 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6746 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6747 <PostScriptName>.ttf instead of c059XXXttf.
6749 * lily/program-option.cc (LY_DEFINE): special support for
6750 --verbose, so it works before option init too.
6752 * mf/GNUmakefile (local-install): oops.
6754 * lily/lyric-hyphen.cc (print): oops.
6756 * buildscripts/pfx2ttf.fontforge: new file.
6758 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6759 ($(outdir)/%.ttf): new rule.
6761 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6764 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6767 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6769 * VERSION: release 2.7.26
6771 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6773 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6775 * lily/font-config.cc (init_fontconfig): verbosity.
6777 * THANKS: add Muziekacademie Lede.
6779 * scripts/musicxml2ly.py (print_voice_definitions): new function
6780 (print_score_setup): new function
6781 (convert): read part definition to output staves properly.
6783 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6786 * python/musicexp.py (Output_printer.__init__): use _ in data
6788 (Output_printer.unformatted_output): new function: no formatting,
6790 (Duration.get_length): remove isinstance() checks for
6791 Output_printer everywhere.
6793 * input/regression/lyrics-bar.ly (texidoc): add
6794 Separating_line_group_engraver.
6796 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6798 * lily/relocate.cc (framework_relocation): New function,
6799 factored from set_relocation ().
6800 (prefix_relocation): Rename from set_relocation ().
6801 (setup_paths): Use it.
6803 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6805 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6806 numbers. Patch by Erlend Aasland.
6808 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6810 * lily/font-config.cc (init_fontconfig): print warning if cache
6811 file is not existant.
6813 * lily/main.cc: don't use #ifdef but #if
6815 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6817 * lily/grob-property.cc (internal_set_property): don't abort on
6818 calculation-in-progress.
6820 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6822 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6823 connect-to-neighbor property not connect-to-other
6825 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6826 (LY_DEFINE): oops. don't forget protection.
6828 * flower/parse-afm.cc (Module): strip AFM handling completely.
6830 * lily/stencil-expression.cc: idem.
6832 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6834 * lily/function-documentation.cc (ly_add_function_documentation):
6835 use static member iso. Protected_scm
6837 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6839 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6841 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6843 * lily/relocate.cc (set_env_dir): New function.
6844 (set_relocation): Use it to fix setting PANGO_PREFIX.
6846 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6848 * input/regression/stem-direction-context.ly: remove rest.
6850 * lily/melody-engraver.cc (process_music): restart for bar lines.
6851 (acknowledge_slur): restart for slurs.
6853 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6855 * Documentation/user/invoking.itely: describe how to view SVG
6856 output using Inkscape which replace embedded fonts with OTF fonts.
6858 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6860 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6862 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6864 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6867 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6869 * VERSION (PACKAGE_NAME): release 2.7.25
6871 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6873 * input/regression/stem-direction-context.ly: new file.
6875 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6877 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6880 * ly/engraver-init.ly: add Melody_engraver
6882 * lily/beam.cc (calc_direction): use default-direction
6883 iso. get_default_direction()
6885 * scm/define-grob-properties.scm (all-user-grob-properties): add
6886 default-direction property.
6888 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6890 * lily/stem.cc (calc_default_direction): remove
6891 Stem::get_default_direction, use default-direction with callback
6894 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6896 * lily/melody-engraver.cc: new file. Acknowledge stems for
6897 interpolated stem directions.
6899 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6901 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6903 * lily/slur-configuration.cc (fit_factor): more robust check for
6904 point in curve X-extent.
6906 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6907 (outside_slur_callback): check for 'outside avoidance.
6909 * lily/slur-configuration.cc (score_extra_encompass): don't use
6910 bound->column() == avoid->column() for checking extents, as this
6911 doesn't work for accidentals.
6913 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6914 DynamicText hardcoding.
6916 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6917 crash if bound stem is NULL
6919 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6922 2005-12-22 Graham Percival <gpermus@gmail.com>
6924 * scm/define-markup-commands.scm: typo. @code{\raise}
6927 * darwin.patch: now used again, includes a
6928 required patch from fink.
6930 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6932 * po/TODO: mention gtranslator along with kbabel.
6933 * po/fi.po: update translations.
6935 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6937 * lily/relocate.cc (setup_paths): Bugfix.
6939 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6941 * lily/slur-configuration.cc (score_extra_encompass): don't use
6942 "avoid" choice for avoid-slur.
6944 * stepmake/bin/install.py (dest): don't create existing dir.
6946 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6948 * stepmake/bin/install.py: Remove file before copying.
6951 * stepmake/aclocal.m4: Do not substitute INSTALL.
6953 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6955 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6956 depend on link-tree.
6958 * lily/relocate.cc (setup_paths): only check path for non-absolute
6959 dir without directory part.
6961 * flower/file-name.cc (is_absolute): new method.
6962 (is_absolute): check root_ too.
6964 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6966 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6967 relocation code. Oops, don't comment out too much.
6969 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6972 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6975 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6977 * .cvsignore: Add install-sh.
6979 * autogen.sh (srcdir): Typo.
6981 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6983 * autogen.sh (srcdir): urg. Touch install-sh.
6985 * stepmake/bin/install-sh (Module): remove.
6987 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6989 * lily/include/relocate.hh: new file.
6991 * lily/relocate.cc: new file. Contain relocation logic.
6993 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6994 (main): read LILYPOND_VERBOSE as the first thing.
6996 * stepmake/aclocal.m4: remove INSTALL variable.
6998 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6999 separate target for making font symlinks.
7000 (documentation-dir): use $(if $(findstring )) for switching off
7003 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7004 something if DOCUMENTATION is no.
7006 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7008 * VERSION: release 2.7.24
7010 * lily/script-column-engraver.cc (stop_translation_timestep):
7011 delay adding to script-column.
7013 * lily/tuplet-bracket.cc (print): suicide if no control-points.
7015 * python/convertrules.py (conv): rule for number-visibility
7017 * lily/slur-configuration.cc (score_extra_encompass): different
7018 distance measure for avoid and inside avoidance.
7019 (score_extra_encompass): use 1/(distance+eps) as penalty.
7021 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7022 encompass objects for generating slur curves.
7024 * lily/slur.cc: use details iso. slur-details property.
7026 * input/regression/slur-tuplet.ly: new file.
7028 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
7030 * flower/include/offset.hh (class Offset): new operator /=
7032 * lily/tuplet-number.cc (print): new file, new interface.
7034 * scm/define-grob-properties.scm (all-user-grob-properties):
7035 remove number-visibility property.
7037 * lily/tuplet-bracket.cc (calc_control_points): new function
7038 (calc_connect_to_neighbors): new function.
7039 (print): remove text handling for tuplet numberdef.
7041 * lily/tuplet-engraver.cc (struct Tuplet_description): create
7044 * lily/lily-guile.cc (robust_scm2booldrul): new function
7046 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7048 * lily/tuplet-bracket.cc (calc_position_and_height): use
7049 staff-padding to control whether tuplet brackets are over staves.
7051 * lily/grob.cc (suicide): clear dim_caches_.
7053 * lily/dimension-cache.cc (clear): new function.
7055 * lily/grob.cc (extent): swap order of min-extent and extent
7056 calculations. This fixes hara kiri staves.
7058 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
7060 * lily/main.cc: Nitpick: relocation is not based on path, but on
7061 directory (location).
7063 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7065 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7067 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7069 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7071 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7073 * stepmake/stepmake/generic-vars.make (Module): idem.
7075 * stepmake/stepmake/executable-targets.make (default): use it.
7077 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7079 * make/GNUmakefile: don't install make rules.
7081 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7083 (prepend_env_path): more verbosity.
7085 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7087 * GNUmakefile.in: add dir argument for find command.
7089 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7090 fixes weird line numbers for point & click.
7092 * lily/source-file.cc (get_counts): init line/column/char counts.
7094 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7096 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7098 2005-12-16 Graham Percival <gpermus@gmail.com>
7100 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7101 minor fixes from Fredric. Thanks!
7103 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7105 * ly/music-functions-init.ly: add \bar and \clef music function
7107 * lily/lily-lexer.cc: idem.
7109 * lily/parser.yy (FIXME): remove BAR and CLEF.
7111 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7113 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7115 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7116 function arguments too
7118 * lily/main.cc (set_relocation): new function.
7120 * scripts/musicxml2ly.py (convert): add \version
7122 * lily/tie.cc: remove get_default_attachments()
7124 * VERSION (PACKAGE_NAME): release 2.7.23
7126 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7127 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7129 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7131 * lily/tie-formatting-problem.cc (score_ties): new function
7132 (get_variations): new function. Try flipping dirs for collisions.
7133 (generate_optimal_chord_configuration): new function. 1-opt search
7134 for better configuration.
7136 * lily/tie-configuration.cc: new file.
7138 * lily/tie.cc: junk Tie::get_configuration()
7140 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7141 (score_ties_configuration): new function.
7142 (generate_ties_configuration): new function.
7143 (generate_base_chord_configuration): new function.
7144 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7145 (set_manual_tie_configuration): Move body from tie-column-format.cc
7147 * input/regression/tie-dot.ly: new file.
7149 * lily/tie-formatting-problem.cc (score_configuration): score
7152 * lily/tie-helper.cc (get_transformed_bezier): new function
7154 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7156 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7157 -undefined suppress iso. -framework Python
7159 * scm/define-grobs.scm (all-grob-descriptions): set
7160 springs-and-rods (thanks Joe Neeman!)
7162 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7164 * input/no-notation/display-lily-tests.ly (test):
7165 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7166 changed from \tag #'(a b) to \tag #'a \tag #'b
7168 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7170 * Documentation/topdocs/NEWS.tely: strip out-www.
7172 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7174 * config.make.in (AR): add AR and RANLIB
7176 * flower/libc-extension.cc: include cassert
7178 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7181 2005-12-11 Graham Percival <gpermus@gmail.com>
7183 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7185 * stepmake/stepmake/python-modules-vars.make: define
7186 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7188 * THANKS: added Johannes Schindelin.
7190 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7192 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7194 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7195 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7197 * lily/parser.yy: reorganize file layout.
7199 * ly/music-functions-init.ly: add tweak music function.
7201 * lily/grob-info.cc (ultimate_music_cause): new function:
7202 recursively lookup causes.
7204 * lily/parser.yy (chord_body_element): allow music functions for
7205 post-events, allow music functions for chord elements.
7207 * lily/font-config-scheme.cc (display_fontset): add cast.
7209 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7210 #'(a b) -> \tag #'a \tag #'b rule.
7212 * python/musicexp.py (Output_printer.dump_version): new function
7214 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7216 * lily/parser.yy (FIXME): remove \tag
7217 (FIXME): remove tag_music() function.
7219 * lily/lily-lexer.cc: remove \tag
7221 * ly/music-functions-init.ly: define music-function "tag"
7223 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7225 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7227 * VERSION (PATCH_LEVEL): release 2.7.22
7229 * input/regression/lyric-hyphen-retain.ly: renew.
7231 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7234 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7235 iso. minimum-length property for rods.
7237 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7238 LyricSpace item to keep lyrics spaced apart.
7240 * ly/engraver-init.ly: remove Separating_line_group_engraver
7242 * Documentation/user/music-glossary.tely: do setfilename before
7245 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7247 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7248 See xref documentation, for example.
7250 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7252 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7253 pending_skip iso. ly_voice[-1]
7254 (main): add if __main__ for debugging.
7256 * python/musicxml.py (Accidental.__init__): new class.
7258 * scripts/musicxml2ly.py (progress): new function
7259 (musicxml_key_to_lily): don't barf on modeless keys.
7260 (create_skip_music): new function.
7261 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7262 (musicxml_note_to_lily_main_event): new function.
7264 * python/musicexp.py (Music.__init__): add comment field.
7265 (NestedMusic.append): new routine.
7266 (SequentialMusic.print_ly): print comment.
7267 (ArpeggioEvent.ly_expression): new class
7268 (BeamEvent.ly_expression): new class
7269 (NoteEvent.__init__): support for cautionary/forced accs.
7271 * lily/lookup.cc (slur): normal order for array loop.
7273 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7276 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7279 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7281 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7283 * scripts/lilypond-book.py: Introduce option
7284 --preserve-line-breaks, for usage with srcltx
7286 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7288 * scm/output-lib.scm (print-circled-text-callback): draw circle
7289 around text using make-circle-markup.
7291 * Documentation/user/*: strip out-www from file names.
7293 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7295 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7296 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7298 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7300 * Documentation/user/GNUmakefile: idem.
7302 * Documentation/user/macros.itexi: strip out-www
7304 * python/rational.py: python 2.3 compat.
7306 * VERSION (PATCH_LEVEL): release 2.7.21
7308 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7309 option formatting, lilypond style.
7311 * python/musicexp.py: grab from Ikebana: a library for composing
7312 ly music expressions.
7313 (Output_printer): class for advanced .ly printing.
7316 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7317 convert to pythonesque structure.
7319 * python/rational.py: PD rational number class.
7321 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7323 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7325 * lily/part-combine-iterator.cc: Minor bugfix
7327 * THANKS: Update bughunters
7329 2005-12-02 Werner Lemberg <wl@gnu.org>
7331 * mf/README: Document process for proper mf2pt1 conversion.
7333 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7336 * mf/feta-harmonica.mf: Removed. Unused.
7338 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7340 * scripts/lilypond-book.py (do_file): fix thinkos.
7342 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7344 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7345 ($(outdir)/parser.cc):
7346 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7348 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7350 * ly/titling-init.ly (tagline): it should be a space between
7351 "Music engraving by LilyPond" and the version number.
7353 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7355 * VERSION (PACKAGE_NAME): release 2.7.20
7357 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7359 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7361 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7363 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7365 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7367 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7369 * kpath-guile/: remove directory
7371 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7372 file. Encapsulate kpathsea using commandline tools.
7374 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7377 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7379 * Documentation/user/advanced-notation.itely (Setting automatic
7380 beam behavior): Correct a few typos. Thanks to David Bobroff.
7382 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7383 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7385 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7387 * scripts/*.py: gmane address for bugs.
7389 2005-11-28 Pal Benko <benkop@freestart.hu>
7391 * make/ly-rules.make: add -f switch to mv
7393 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7395 * lily/bar-line.cc: interpret it
7397 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7399 * configure.in (--disable-documentation): New switch.
7401 * GNUmakefile.in: Use it.
7403 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7405 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7407 * scripts/lilypond-book.py (do_file): search chunks for
7410 * GNUmakefile.in: add copy step in between so we can lose the
7411 out-www directories.
7413 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7415 * lily/pango-font.cc (pango_item_string_stencil): put
7416 geometry.width into glyph-string too.
7418 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7420 * scm/define-music-display-methods.scm (RevertProperty):
7421 (OverrideProperty): Use grob-property-path property, a list of
7422 symbols, instead of grob-property, which used to be a single
7424 (BassFigureEvent): a figure can be a plain number, not necessarily a
7427 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7429 * VERSION: release 2.7.19
7431 * lily/figured-bass-engraver.cc (process_music): check
7432 figuredBassCenterContinuations first.
7434 * scm/translation-functions.scm (format-bass-figure): make double
7437 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7440 * lily/system-start-delimiter-engraver.cc: move from
7441 Nested_system_start_delimiter_engraver, rename
7442 Nested_system_start_delimiter_engraver ->
7443 System_start_delimiter_engraver.
7445 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7446 bracket type from hierarchy.
7448 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7450 * lily/rest.cc (y_offset_callback): read staff-position.
7452 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7453 mark after-line-breaking-callback as internal.
7455 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7457 2005-11-25 Werner Lemberg <wl@gnu.org>
7459 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7461 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7463 * stepmake/bin/add-html-footer.py (do_file): add google
7465 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7466 staff if first_start_ is true.
7468 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7470 * scripts/midi2ly.py (split_track): add __repr__ members.
7471 (track_first_item): only return Item if not None. This fixes a
7472 problem when dumping a track that starts with an empty channel.
7474 * python/midi.c: doc module.
7476 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7478 * Documentation/user/global.itely (Creating MIDI files): Fix
7479 compilation problem.
7481 2005-11-22 Graham Percival <gpermus@gmail.com>
7483 * Documentation/user/basic-notation.itely: clarify dynamic
7486 * Documentation/user/advanced-notation.itely: add unicode
7487 escape control example, whatever that is. :)
7489 * Documentation/user/global.itely: added "removing dynamics
7492 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7494 * VERSION (PATCH_LEVEL): release 2.7.18
7496 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7497 System_start_delimiter_engraver by
7498 Nested_system_start_delimiter_engraver.
7500 * lily/nested-system-start-delimiter-engraver.cc (struct
7501 Bracket_nesting_node): new class.
7502 (struct Bracket_nesting_group): new class
7503 (struct Bracket_nesting_staff): new class.
7504 (process_music): create hierarchy of grobs. This allows separate
7505 tuning of different SSDs.
7507 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7508 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7510 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7512 * lily/side-position-interface.cc (aligned_side): multiply
7515 * lily/script-engraver.cc (make_script_from_event): allow setting
7518 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7520 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7522 * scm/define-grobs.scm (all-grob-descriptions): new grob
7523 NestedSystemStartDelimiter.
7525 * input/regression/system-start-heavy-bar.ly: new file.
7527 * lily/nested-system-start-delimiter-engraver.cc: new file.
7529 * lily/nested-system-start-delimiter.cc: new file.
7531 * input/regression/system-start-nesting.ly: new file.
7533 * scm/define-grobs.scm (all-grob-descriptions): use X side
7534 positioning for positioning braces for nested contexts.
7536 * lily/system-start-delimiter.cc (print): don't divide extent by
7538 (print): use style iso. glyph.
7539 (staff_bracket): translate glyph inside routine already.
7541 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7543 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7546 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7548 * scm/define-context-properties.scm
7549 (all-user-translation-properties): rename figuredBassFormatter
7550 from newFiguredBassFormatter.
7552 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7554 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7556 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7558 * lily/beam.cc (calc_beaming): new function.
7559 (calc_shorten): new function.
7561 * THANKS: add Edward Neeman.
7563 * input/regression/accidental-clef-change.ly: new file.
7565 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7567 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7569 * lily/clef-engraver.cc (inspect_clef_properties): reset
7570 localKeySignature for clef changes.
7572 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7574 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7575 add dummy definition that works in Linux and add information in
7576 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7578 * Documentation/user/changing-defaults.itely (Modifying context
7579 plug-ins): Add index for \with.
7581 * Documentation/user/music-glossary.tely (dal segno): Updated
7582 example to version >=2.6.
7584 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7586 * Documentation/user/instrument-notation.itely (Printing chord
7587 names): Reorder \chordmode and \repeat in one example.
7589 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7591 * VERSION: release 2.7.17
7593 * Documentation/topdocs/NEWS.tely (Top): add note about
7596 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7597 new function. Search region of 3 positions for best tie.
7598 (score_configuration): new function.
7599 (score_aptitude): new function.
7600 (generate_configuration): new function.
7601 (get_configuration): new function.
7602 (Tie_formatting_problem): new function
7604 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7606 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7608 * THANKS: add Eduardo Vieira & Ralph Little
7610 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7613 * lily/include/tie-formatting-problem.hh (class
7614 Tie_formatting_problem): add Tie_details to
7615 Tie_formatting_problem. Update calling conventions.
7617 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7620 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7622 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7624 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7625 scm/define-context-properties.scm: Maintenance bugfix: make
7626 ligature brackets work again by removing obsolete ligature
7627 primitive callback push/pop.
7629 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7630 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7633 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7635 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7636 used and do not call it a path.
7637 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7639 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7641 * lily/include/tie-formatting-problem.hh (class
7642 Tie_formatting_problem): new file.
7644 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7646 * Documentation/misc/ChangeLog-2.3: new file.
7648 * lily/audio-staff.cc (output): degarianize.
7650 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7652 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7653 Unset PYTHONOPTIMIZE. Fixes install if set.
7655 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7657 * python/convertrules.py (conv): add warning about drums.
7659 * make/stepmake.make: include toplevel-version.make after config.make.
7661 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7662 also allow python2.4
7664 * config.make.in (configure-srcdir): remove GXX GCC vars.
7666 * stepmake/aclocal.m4: don't do non-srcdir build with
7667 symlinks. Use inclusion, so the src directory name can be changed.
7669 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7671 * make/mutopia-vars.make:
7672 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7675 2005-11-13 Werner Lemberg <wl@gnu.org>
7677 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7678 but the affected path. This ensures that the (overlapping) outlines
7679 have the same direction, which is a necessary prerequisite for
7680 FontForge's algorithm to remove overlaps.
7683 * mf/feta-haak.mf: Formatting.
7684 (draw_bracket): Slightly modify outline to avoid an unnecessary
7686 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7687 them from the affected paths.
7689 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7691 * mf/README: remove xpm / accordion notes.
7693 * lily/tie-column-format.cc (set_chord_outline): add dots into
7694 skyline extents. This fixes tie formatting if the left head has dots.
7696 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7697 space inside the staff.
7698 (get_configuration): shift another position if necessary in case
7701 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7703 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7704 buildscript-dir iso. $(depth)/buildscripts.
7706 * tex/GNUmakefile (local-uninstall): remove
7707 music-drawing-routines.ps juggling.
7709 * stepmake/stepmake/install-targets.make (local-install-files):
7710 prepend src-dir to install targets.
7712 * lily/system-start-delimiter-engraver.cc
7713 (acknowledge_system_start_delimiter): use
7714 add_offset_callback(). This fixes translation of nested
7717 * lily/grob-closure.cc (add_offset_callback): only encaps in
7718 simple_closure if it's a procedure.
7720 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7723 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7724 remove-empty where pertinent.
7726 2005-11-12 Graham Percival <gpermus@gmail.com>
7728 * Documentation/user/instrument-notation.itely: added
7729 Cameron Horsburgh's multiple stanzas docs. Thanks!
7731 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7734 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7735 make picture in builddir, not srcdir.
7737 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7739 * VERSION: release 2.7.16
7741 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7744 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7746 * Documentation/user/examples.itely (Piano templates): Minor
7747 modification to the Piano centered lyrics example.
7749 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7751 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7754 * Documentation/user/point-and-click.itely: simplify p&c
7755 instruction: don't configure firefox. Put lilypond-invoke-editor
7756 in front of the browser.
7758 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7759 (run-browser): new function.
7761 * lily/parser.yy (Lily_lexer): recognize Book
7763 * lily/book.cc (clone): new function
7765 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7767 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7769 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7770 Maintenance bugfix: reduce number of font related warnings by
7771 updating naming conventions for glyph-name.
7773 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7775 * scm/define-grobs.scm (all-grob-descriptions): add
7776 rhythmic-grob-interface to TabNoteHead.
7778 * scm/layout-beam.scm (check-quant-callbacks): remove
7781 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7783 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7784 alignment of centered divisiones.
7786 * scm/scripts.scm (articulations): Maintenance bugfix:
7787 follow-into-staff -> quantize-position.
7789 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7790 plica head in porrectus deminutus.
7792 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7794 * make/lilypond.fedora.spec.in (Group): add %clean section.
7796 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7797 less then 1/5th of total length.
7798 (print): use gap too. Fixes tupletUp-single-bracket.ly
7800 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7801 events into EventChord. This fixes textspanners on mm rests. Fixes
7804 * lily/side-position-interface.cc (get_axis): read side-axis
7805 (set_axis): set side-axis.
7807 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7808 properties everywhere.
7810 * lily/spacing-spanner.cc (breakable_column_spacing): add
7811 average-spacing-wishes. Take maximum if not set.
7812 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7814 * scm/define-grobs.scm (all-grob-descriptions): add
7815 average-spacing-wishes.
7817 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7818 offset callbacks. This fixes alignment for Fingering objects.
7820 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7821 space for key - timesig combination.
7823 * input/regression/script-stem-tremolo.ly (Module): new file.
7825 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7828 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7829 Fixes: c-tremolo-script.ly.
7831 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7833 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7835 * scm/define-grobs.scm (all-grob-descriptions): remove
7836 self-X-offset. Fixes alignment of octavate-8.
7838 * scripts/lilypond-book.py (datadir): look in
7839 LILYPONDPREFIX/share/lilypond/current/
7841 * GNUmakefile.in: symlink current to <VERSION>.
7843 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7845 * lily/main.cc: eps listed as a backend.
7847 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7849 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7851 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7853 * lily/include/score.hh (class Score): remove texts_ member.
7855 * lily/beam.cc (set_stem_lengths): force direction callback.
7856 (print): read quantized-positions, so we can force
7857 Beam::set_stem_lengths to occur.
7858 (rest_collision_callback): use common X parent.
7860 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7862 * flower/file-path.cc (find): Bugfix: Return name of file found.
7864 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7865 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7866 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7868 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7870 * flower/offset.cc: idem.
7872 * mf/*.mf: update email address.
7874 * lily/font-config-scheme.cc: new file.
7876 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7878 * lily/*: cs.uu.nl -> xs4all.nl
7880 * VERSION (PATCH_LEVEL): release 2.7.15
7882 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7885 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7887 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7889 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7891 * lily/staff-performer.cc (process_music): add audio
7892 elements. This makes MIDI instrument changes work once again.
7894 * lily/main.cc (LY_DEFINE): add gmane address.
7896 * lily/beam.cc: remove calc_positions()
7898 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7899 original_ in private scope.
7900 (class Grob): drop pscore_ pointer, change to output_def pointer.
7901 (class Grob): cleanup class definition.
7903 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7905 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7907 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7908 absolute. Better diagnostics.
7910 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7911 This makes lilypond run from the build directory using argv0
7912 relocation (without any --prefix or LILYPONDPREFIX setting).
7914 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7916 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7918 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7919 with simple-closure.
7921 * lily/self-aligment-interface.cc (set_align_self): new function
7922 (set_center_parent): new function.
7924 * lily/side-position-interface.cc (set_axis): new function.
7926 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7929 * scm/define-grob-properties.scm (all-user-grob-properties):
7930 remove [XY]-offset-callbacks add [YX]-offset
7932 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7934 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7935 entry for time signatures after breathing signs. Bug report by
7938 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7940 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7941 not absolute, make it absolute using PATH.
7943 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7945 * python/midi.c (initmidi): Fix type for mingw.
7947 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7949 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7951 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7954 * stepmake/aclocal.m4: Support python cross compiling.
7956 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7959 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7961 * scm/output-lib.scm (chain-grob-member-functions): replace
7964 * lily/chained-callback.cc (Module): remove file.
7966 * lily/rest-collision.cc (force_shift_callback_rest): change to
7969 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7971 * lily/grob.cc (y_parent_positioning): remove axis argument from
7972 parent_positioning callbacks.
7973 (Grob): junk init code
7974 (get_offset): use generic property callbacks for
7975 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7976 (axis_parent_positioning): new function
7977 (axis_offset_symbol): new function
7978 (chain_offset_callback): new function
7979 (add_offset_callback): new function
7981 * lily/beam.cc (rest_collision_callback): change signature; this
7982 is now a chained callback.
7984 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7985 callback administration.
7987 * lily/simple-closure.cc: new file. Smob type that allows "grob
7990 (ly:make-simple-closure FUNC A B)
7992 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7995 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7998 * lily/slur.cc (outside_slur_callback): take 2 arguments.
8000 * lily/rest.cc (polyphonic_offset_callback): remove.
8002 * lily/script-engraver.cc (try_music): remove bool* argument.
8004 * scm/script.scm (default-script-alist): set quantize-position
8007 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
8009 * lily/side-position-interface.cc (aligned_side): move staff
8010 position quantization from
8011 Side_position_interface::quantised_position().
8012 (quantised_position): remove
8014 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8016 * input/regression/beam-quant-standard.ly: reindent, set
8017 debug-beam-quanting to #t.
8019 * lily/beam-concave.cc (calc_concaveness): set concaveness to
8020 10000 if this is a "hard" concave beam.
8022 * lily/beam.cc (calc_least_squares_positions): change from
8023 calc_least_squares_dy
8024 (set_stem_lengths): this is now a chained callback.
8026 * lily/context-property.cc (execute_general_pushpop_property):
8027 bugfix override with procedure should have effect.
8029 * scm/define-grob-properties.scm (all-internal-grob-properties):
8030 remove position-callbacks.
8032 * scm/define-grobs.scm (all-grob-descriptions): use
8033 ly:make-callback-chain for positions property.
8035 * scm/layout-beam.scm (check-quant-callbacks): return list of
8038 * scm/lily.scm (type-p-name-alist): add callback-chain
8040 * lily/lily-guile.cc (type_check_assignment): type check failure
8041 is warning not message.
8043 * lily/grob-property.cc (try_callback): walk callback chain if
8046 * lily/chained-callback.cc: new file. new smob type.
8048 * lily/lily-guile.cc (procedure_arity): new function.
8050 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8052 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8054 2005-10-25 John Mandereau <john.mandereau@free.fr>
8056 * Documentation/user/instrument-notation.itely (Figured bass):
8057 describe new features
8059 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8061 * lily/beam.cc (calc_least_squares_dy): use property callback.
8063 * lily/beam-concave.cc (calc_concaveness): use property callback.
8065 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
8067 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
8071 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8073 * scm/layout-page-layout.scm (page-headfoot): annotate
8076 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
8078 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8079 doesn't take y-space.
8081 * scm/paper.scm (paper-alist): fix A7 dimensions.
8083 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
8085 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8086 src-wildcard, remove $(wildcard).
8088 * po/GNUmakefile (PO_FILES):
8089 * ps/GNUmakefile (PS_FILES):
8090 * tex/GNUmakefile (TEX_FILES):
8091 * cygwin/GNUmakefile (POSTINSTALLS):
8092 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8093 some wildcard calls.
8095 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8097 * THANKS: add Thomas Bushnell.
8099 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8101 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8102 (lilypond-main): Redirect to gui-main if 'gui is set.
8104 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8105 for alternative installations kludging s/share/lib/g
8108 * SConstruct (libdir_package_version): Define.
8110 * python/SConscript:
8111 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8114 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8116 * lily/main.cc: clarify --safe.
8118 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8120 * VERSION: release 2.7.14
8122 * Documentation/user/*.itely: remove minimumVerticalExtent.
8124 * scm/define-grobs.scm (all-grob-descriptions): remove
8125 RemoveEmptyVerticalGroup
8127 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8129 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8132 * python/convertrules.py (conv): add rules.
8134 * lily/grob.cc: remove is_empty()
8136 * lily/grob-property.cc: remove add_to_list_property().
8138 * scripts/convert-ly.py (datadir): add prefix switching hack to
8141 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8142 space-function tweak.
8144 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8146 * scm/define-grob-properties.scm (all-user-grob-properties):
8147 remove callback property.
8149 * lily/include/grob.hh (class Grob): remove property_callbacks_
8150 member. Properties of procedure type are assumed to be callbacks.
8152 * lily/ligature-engraver.cc (override_stencil_callback):
8153 rewrite. Use noteHeadLigaturePrimitive as source.
8155 * scm/define-grob-properties.scm (all-internal-grob-properties):
8156 remove ligature-primitive-callback
8158 * lily/include/dimension-cache.hh (class Dimension_cache): make
8159 class, with Grob as friend.
8161 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8162 has_extent_callback()
8164 * scm/translation-functions.scm (format-new-bass-figure): read
8165 figuredBassPlusDirection
8167 * scm/define-context-properties.scm
8168 (all-user-translation-properties): add figuredBassPlusDirection.
8170 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8172 * lily/align-interface.cc (set_ordered): new function.
8174 * lily/grob.cc (flush_extent_cache): rewrite.
8176 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8177 Interval pointer directly.
8179 * lily/main.cc (setup_paths): insert extra / .
8180 (setup_paths): junk cff entry.
8182 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8185 * lily/axis-group-engraver.cc (finalize): remove
8186 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8188 * lily/grob.cc (Grob): don't set extent from ctor.
8189 (extent): use property callbacks.
8191 * lily/axis-group-interface.cc: remove set_axes() function.
8193 * lily/grob-property.cc (del_property): new function.
8195 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8197 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8199 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8201 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8203 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8205 * mf/SConscript: Updates.
8207 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8209 * stepmake/stepmake/*:
8213 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8214 from any directory in build-dir. Cleanups.
8216 * make/srcdir.make.in: Remove.
8218 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8220 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8223 * lily/SConscript: Remove ttftools.
8225 * SConstruct: Resurrect.
8227 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8229 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8232 * lily/paper-book.cc (add_score_title): put Paper_score title into
8235 * scm/translation-functions.scm (format-new-bass-figure): also
8236 allow plus in combination with _
8238 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8240 * VERSION: 2.7.13 released.
8242 * lily/note-collision.cc (check_meshing_chords): don't wipe
8243 stencil, merely set transparent.
8245 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8246 (Top): document #'callbacks.
8247 (Top): document nested \override.
8249 * input/regression/figured-bass.ly: update for slash and pluses.
8251 * input/regression/figured-bass-continuation-forbid.ly (Module):
8254 * scm/translation-functions.scm (format-new-bass-figure): use
8255 slashed-digit if diminished is set.
8256 (format-new-bass-figure): add + if 'augmented is set.
8258 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8260 * input/test/piano-staff-distance.ly: remove file.
8262 * Documentation/user/advanced-notation.itely (Formatting cue
8263 notes): use length-fraction for making stems/beams smaller.
8265 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8268 * lily/new-figured-bass-engraver.cc: new property
8269 centerFiguredBassContinuations
8271 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8274 * lily/context-property.cc (execute_general_pushpop_property):
8277 * input/regression/override-nest.ly: new file.
8279 * python/convertrules.py (FatalConversionError.subber): conversion
8280 rule for #'callbacks
8282 * input/regression/override-nest.ly: new function.
8284 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8287 * lily/context-property.cc (lookup_nested_property): new function.
8288 (evict_from_alist): new function.
8289 (general_pushpop_property): new function.
8290 (execute_general_pushpop_property): rewrite. Support nested
8293 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8295 * lily/beam.cc: use length-fraction too.
8297 * scm/define-grob-properties.scm (all-user-grob-properties):
8298 remove property flag-width-function
8299 (all-user-grob-properties): remove space-function.
8301 * scm/layout-beam.scm: remove flag-width-function.
8303 * lily/beam.cc: remove flag-width-function
8305 * scm/layout-beam.scm: remove beam dir functions.
8307 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8309 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8310 for easier grace tweaks.
8312 * lily/beam.cc: remove dir-function.
8314 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8316 * lily/grob.cc: remove spacing-procedure.
8318 * lily/note-head.cc (calc_stem_attachment): new function.
8319 (internal_print): use callback to get glyph-name.
8321 * lily/grob-property.cc (get_interfaces): new function.
8323 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8325 * lily/stem.cc (calc_stem_end_position): new function.
8326 (calc_length): new function.
8327 document details for stem.
8328 remove Stem::get_direction()
8330 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8332 * lily/grob-property.cc (set_callback): new function.
8334 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8336 * lily/item-scheme.cc: new file.
8338 * lily/bar-line.cc (before_line_breaking): remove function.
8339 remove bar-size-procedure, break-glyph-function
8341 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8343 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8345 * lily/system-start-delimiter.cc (print): suicide from
8346 here. Remove after_line_breaking_callback.
8348 * lily/script-interface.cc (calc_direction): use callback for direction.
8350 * lily/side-position-interface.cc (aligned_side): don't use
8351 Side_position_interface::get_direction directly. Use callback.
8353 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8355 (get_print_stencil): rename from get_stencil: create stencil with
8356 transparency, color and cause.
8358 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8360 * python/convertrules.py (conv): insert temporary warning rule.
8362 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8364 * lily/grob-property.cc (try_callback): remove marker if applicable.
8366 * lily/grob.cc: elucidate doc about after/before-line-breaking
8368 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8370 * lily/stem.cc (height): idem.
8372 * lily/stem-tremolo.cc: idem.
8374 * lily/slur.cc (height): don't use get_uncached_stencil()
8376 * lily/rest.cc (y_offset_callback): use offset callback
8377 iso. after-line-breaking callback.
8379 * lily/grob.cc: change after/before-line-breaking-callback to
8380 after/before-line-breaking dummy properties.
8382 * lily/include/grob.hh: remove Grob_status.
8384 * scm/define-context-properties.scm
8385 (all-user-translation-properties): remove verticalAlignmentChildCallback
8387 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8388 (calc_direction): use callback
8389 (calc_positions): use callback.
8391 * lily/tie.cc (calc_direction): use callback. Only call parent
8392 positioning for more than one tie.
8394 * lily/tie-column.cc (calc_positioning_done): use callback
8396 * lily/slur-scoring.cc (calc_control_points): use callback
8398 * lily/slur.cc (calc_direction): use callback.
8400 * lily/note-collision.cc (force_shift_callback): remove.
8402 * lily/dot-column.cc (force_shift_callback): remove. Use
8403 other_axis_parent_positioning.
8405 * lily/grob.cc (other_axis_parent_positioning): new function.
8406 (same_axis_parent_positioning): new function
8408 * lily/align-interface.cc (alignment_callback): remove function.
8410 * lily/note-collision.cc (calc_positioning_done): use callback.
8412 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8413 (calc_direction): idem.
8414 remove print function.
8416 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8418 * lily/dot-column.cc (calc_positioning_done): use callback.
8420 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8422 * lily/beam.cc (calc_direction): use pseudo-property for beam
8424 (calc_positions): use callback
8426 * lily/align-interface.cc (calc_positioning_done): use
8427 callback. Fold fixed distance and normal alignment in one function.
8429 * lily/stem.cc (calc_stem_end_position): use callback.
8430 (calc_positioning_done): idem.
8431 (calc_direction): idem.
8432 (calc_stem_end_position): idem
8433 (calc_stem_info): idem.
8435 * lily/grob-property.cc (get_property_data): new function:
8436 (try_callback): new function.
8438 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8441 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8443 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8445 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8449 * lily/include/*.hh (Module): compile fixes.
8451 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8453 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8454 as an argument for char-syntax: use (char-syntax (or nil 0))
8455 instead of (char-syntax nil), thanks to Milan Zamazal.
8457 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8459 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8462 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8465 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8467 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8468 add class_name() method.
8470 * lily/music-scheme.cc: remove ly:music-name.
8472 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8474 * cygwin/postinstall-lilypond.sh: Remove cruft.
8476 * cygwin/postremove-lilypond.sh: Remove.
8478 * cygwin/GNUmakefile (default): Remove postremove rules.
8480 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8482 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8485 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8488 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8489 consider break index for broken spanner.
8491 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8492 characters from string before splitting.
8494 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8496 * scm/framework-ps.scm (output-preview-framework): use
8497 is-book-title to determine whether to chop off the booktitle.
8499 * lily/paper-book.cc (systems): init from book-title-properties
8500 (add_score_title): init score-title-properties.
8502 * ly/paper-defaults.ly: add {score,book}-title-properties.
8504 * scm/document-backend.scm (lookup-interface): error message if
8505 using unknown interface.
8507 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8510 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8512 (make_bracket): new function.
8514 * scm/lily.scm (define-scheme-options): add paper-size option.
8516 * ly/declarations-init.ly (laissezVibrer): get paper size from
8519 * scm/translation-functions.scm: use \fontsize for changing the
8522 * scm/define-grobs.scm (all-grob-descriptions): set
8523 between-length-limit to 1.0
8525 * lily/tie-helper.cc: add between_length_limit_ detail property.
8527 * mf/feta-bolletjes.mf: typos.
8529 * lily/note-head.cc (internal_print): don't shadow idx
8530 parameter. This fixes wrong attachment for do shape heads.
8532 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8534 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8536 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8538 * scm/layout-slur.scm: rename from slur.scm
8540 * scm/layout-page-layout.scm: rename from page-layout.scm
8542 * scm/layout-beam.scm: rename from beam.scm
8544 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8545 bass-figure-interface
8547 * lily/new-figured-bass-engraver.cc (process_music): add
8548 implicitBassFigures property.
8550 * scm/define-markup-commands.scm (pad-x): new markup.
8552 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8553 minimumVerticalExtent on FiguredBass context.
8555 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8556 case the continuation crosses a line break.
8558 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8560 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8561 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8562 absolute file name bug.
8564 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8566 * VERSION (PACKAGE_NAME): release 2.7.12
8568 * input/regression/figured-bass-continuation-center.ly: new file.
8570 * input/regression/beam-outside-beamlets.ly: new file.
8572 * lily/beam.cc (set_beaming): don't clip edges.
8573 (connect_beams): don't clip edges.
8575 * lily/beaming-info.cc (clip_edges): new function.
8577 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8579 * Documentation/user/instrument-notation.itely (Figured bass):
8580 demonstrate extenders, update seealso links.
8582 * scm/titling.scm (marked-up-headfoot): change tagline
8583 handling. tagline = ##f will blank the tagline as well.
8585 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8587 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8589 * lily/new-figured-bass-engraver.cc (struct
8590 New_figured_bass_engraver): add new_music_found_ member.
8592 * lily/lilypond-version.cc (Lilypond_version): deal with
8593 incorrectly formatted version strings.
8595 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8596 New_figured_bass_engraver by default.
8598 * lily/ttf.cc (print_trailer): only define glyph names when
8599 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8601 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8603 * lily/horizontal-bracket.cc (make_bracket): new function.
8605 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8606 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8607 BassFigureLine, BassFigureAlignment
8609 * lily/new-figured-bass-engraver.cc (process_music): new file.
8611 * lily/figured-bass-continuation.cc: new file.
8613 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8616 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8618 * scripts/lilypond-book.py: Bug fix, put the quote around the
8619 actual score for LaTeX documents.
8621 * scm/define-grobs.scm (all-grob-descriptions): Change
8622 collapse-height of the SystemStartBracket grob to 5.0,
8623 so the bracket disappears for single stave score lines (similarly
8624 to SystemStartBraces).
8626 * Documentation/user/advanced-notation.itely (Polymetric
8627 notation): Clarify the use of compressMusic.
8629 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8630 that the grace spacer note in other staves need the same duration
8631 and document the stroke-style property.
8633 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8635 * Documentation/user/global.itely (Vertical spacing): document
8636 alignment-extra-space and fixed-alignment-extra-space.
8638 * Documentation/topdocs/NEWS.tely (Top): add entry.
8640 * input/regression/alignment-vertical-spacing.ly: new file.
8642 * python/convertrules.py (conv): add rule.
8644 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8646 * lily/align-interface.cc (stretch_after_break): new
8647 function. Read fixed-alignment-extra-space property.
8648 (align_elements_to_extents): read alignment-extra-space property.
8650 * lily/lily-guile.cc (robust_scm2dir): new function.
8652 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8653 (annotate-space-left): new function. Annotate space left on page.
8654 (annotate-y-interval): new function.
8655 (paper-system-annotate-last): new function. Annotate bottom-space.
8657 * mf/feta-beugel.mf (y):
8659 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8661 * VERSION (PACKAGE_NAME): release 2.7.11
8663 * scm/lily-library.scm (interval-translate): new function
8664 (interval-center): new function.
8666 * scm/page-layout.scm (paper-system-annotate): new function. Add
8667 arrows for dimensions.
8669 * scm/stencil.scm (dimension-arrows): new function.
8671 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8673 * input/regression/page-spacing.ly: add annotatespacing
8675 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8676 (LY_DEFINE): new function ly:paper-system-set-property!
8678 * Documentation/user/global.itely (Paper size): explain how to add
8681 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8682 correspond to GS's definition.
8684 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8686 (print): only connect to next bracket if the next one is alive.
8687 (print): set padding to 0.0 if the bound is a breakable
8688 column. This makes tupletFullLength brackets reach up to the staff
8689 line if it doesn't connect to the next line.
8691 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8693 * lily/bar-number-engraver.cc: correct docs.
8695 * scm/output-lib.scm (first-bar-number-invisible): rename from
8696 default-bar-number-visibility
8698 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8700 * scm/define-music-properties.scm (all-music-properties): remove
8703 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8705 * po/fi.po: refresh.
8707 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8709 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8711 (disappear): bugfix.
8713 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8715 * lily/include/paper-system.hh (class Paper_system): remove
8716 staff_extents_ member.
8718 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8720 * lily/include/paper-system.hh (class Paper_system): remove
8721 number_ variable. Remove is_title_. Remove break_before_penalty_
8723 * lily/paper-book.cc (systems): use 'number property iso. number_
8726 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8727 remove ly:paper-system-number.
8729 * scm/lily-library.scm (paper-system-title?): new function.
8731 * lily/book.cc (process): bugfix: flip ?: cases.
8733 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8736 * ly/music-functions-init.ly: add outputProperty music function.
8738 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8740 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8742 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8744 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8746 * lily/paper-system.cc (internal_get_property): new function.
8748 * Documentation/user/global.itely (Vertical spacing): refer to
8751 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8754 * input/regression/page-spacing.ly: new file.
8756 * input/regression/page-top-space.ly: new file.
8758 * lily/spacing-spanner.cc: cmath -> math.h
8760 * lily/paper-system.cc (read_left_bound): new function. Read
8761 line-break-system-details from left bound to determine extents.
8763 * Documentation/user/programming-interface.itely (Using LilyPond
8764 syntax inside Scheme): change applyxxx -> applyXxx.
8766 * ly/music-functions-init.ly: add outputProperty music function.
8768 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8770 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8772 * python/convertrules.py (conv): rule
8774 * ly/music-functions-init.ly: applyxxx -> applyXxx
8776 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8779 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8781 * flower/include/real.hh: include <math.h> iso. <cmath>
8783 * flower/include/offset.hh: include real.hh
8785 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8787 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8788 fix example, now that 'interfaces is no longer directly available.
8790 * lily/book.cc (process): don't crash if paper == NULL.
8794 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8796 * scm/define-music-types.scm (music-descriptions): set length and
8797 start-callback for QuoteMusic
8799 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8801 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8802 arguments. Fixes compilation error with gcc 3.3.
8804 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8806 * VERSION: release 2.7.10
8808 * stepmake/stepmake/python-module-rules.make
8809 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8811 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8814 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8816 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8817 -Werror. Otherwise GCC barfs over various optimizations.
8819 * scm/define-grob-properties.scm (all-internal-grob-properties):
8820 add note-head property
8822 * Documentation/user/instrument-notation.itely (Laissez vibrer
8825 * input/regression/laissez-vibrer-ties.ly: new file.
8827 * lily/laissez-vibrer-engraver.cc: new file.
8829 * lily/include/tie-column-format.hh: new file.
8831 * lily/tie-column-format.cc: new file.
8833 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8835 * lily/laissez-vibrer-tie.cc: new file.
8837 * lily/include/laissez-vibrer-tie.hh: new file.
8839 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8841 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8843 * scm/define-grobs.scm (all-grob-descriptions): add
8844 LaissezVibrerTie, LaissezVibrerTieColumn
8846 * lily/tie-column.cc (set_tie_config_directions): new function
8847 (final_shape_adjustment): new function.
8848 (shift_small_ties): new function.
8850 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8852 * lily/include/tie.hh (struct Tie_details): add x_gap_
8853 (struct Tie_configuration): add head_position_
8855 * lily/tie-column.cc (set_chord_outline): new function.
8857 * mf/cmr.enc.in: remove file.
8859 2005-09-11 Graham Percival <gpermus@gmail.com>
8861 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8863 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8865 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8866 reduce aliasing effects.
8868 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8871 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8873 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8875 * flower/include/real.hh: std::fabs too.
8877 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8879 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8881 * lily, flower: Include C++ iso C headers. Import namespace std
8884 * lily/side-position-interface.cc:
8886 * lily/note-head.cc:
8887 * lily/include/includable-lexer.hh:
8888 * flower/include/string-data.icc: Remove using std::*.
8890 * lily, flower: Include C++ iso C headers. Import namespace std
8893 * lily/side-position-interface.cc:
8895 * lily/note-head.cc:
8896 * lily/include/includable-lexer.hh:
8897 * flower/include/string-data.icc: Remove using std::*.
8899 * Documentation/user/instrument-notation.itely (Entering lyrics):
8900 Multiple latin-1->utf-8 conversion fix.
8902 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8904 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8906 * lily/tie.cc (get_configuration): also avoid dots for non-space
8909 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8911 * Documentation/user/instrument-notation.itely: Bugfix.
8913 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8915 * tex/GNUmakefile: don't install texinfo.tex
8917 * tex/ : cleanup: remove unused files.
8919 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8921 * flower/include/real.hh: using std::{isnan,isinf}
8923 * VERSION (PATCH_LEVEL): release 2.7.9
8925 2005-09-05 Graham Percival <gpermus@gmail.com>
8927 * Documentation/user/ instrument-notation.itely,
8928 advanced-notation.itely: minor tweaks.
8930 * input/test/script-chart.ly: add item padding.
8932 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8934 * flower/offset.cc: use math.h iso. <cmath>
8936 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8939 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8940 (widen-left-stencil-edges): new function. Fix alignment problems
8941 with LaTeX includegraphics.
8943 * lily/text-interface.cc (interpret_markup): use abort().
8945 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8947 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8949 * lily/tie.cc (get_configuration): update bezier shape as we
8951 (get_configuration): don't move large ties if we're outside of the
8954 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8956 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8958 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8960 * .cvsignore: Add auto-generated configure files and then some.
8962 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8964 * scm/define-grobs.scm (DynamicLineSpanner): Add
8965 X-extent-callback. Fixes hairpin-slur collision.
8967 2005-08-31 Graham Percival <gpermus@gmail.com>
8969 * Documentation/user/advanced-notation.itely,
8970 basic-notation.itely: minor changes.
8972 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8974 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8975 \linebreak between each .eps file if \betweenLilyPondSystem is
8978 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8979 music): Document the \linebreak
8981 * Documentation/user/lilypond-book.itely,
8982 input/tutorial/lbook-latex-test.tex,
8983 Documentation/user/examples.itely: Remove \usepackage{graphics}
8985 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8987 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8989 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8992 * scripts/lilypond-book.py (PREAMBLE_LY): define
8993 inside-lilypond-book
8994 (modify_preamble): new function. Insert \RequirePackage{graphics}
8995 when no {graphics found in preamble.
8997 2005-08030 Graham Percival <gpermus@gmail.com>
8999 * Documentation/user/basic-notation.itely, global.itely,
9000 tutorial.itely: misc small changes.
9002 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
9004 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9007 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
9009 * lily/tie-column.cc (new_directions): put Tie down on center
9012 * lily/script-interface.cc (before_line_breaking): use
9013 Grob::programming_error
9015 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9017 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9020 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9022 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9024 2005-08-29 Werner Lemberg <wl@gnu.org>
9026 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9027 the `*.scale.pfa' files to avoid warnings.
9029 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
9031 * lily/tempo-performer.cc (process_music): idem.
9033 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9035 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
9037 * Documentation/user/advanced-notation.itely (Text markup): not a
9040 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9042 * lily/staff-performer.cc (initialize): add tempo/name to
9045 2005-08-26 Graham Percival <gpermus@gmail.com>
9047 * Documentation/user/advanced.itely: add text-only example.
9049 * Documentation/user/invoking.itely: add index entries for
9052 * Documentation/user/ tutorial.itely, basic-notation.itely:
9053 small fixes suggested by Steve D. Thanks!
9055 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
9057 * input/regression/markup-bidi-pango.ly: new file.
9059 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9060 standard. Remove #ifdef. Remove memleak.
9061 (text_stencil): use text_dir to decide how to composite items.
9062 (text_stencil): determine uniform text direction for the entire
9065 * scripts/lilypond-book.py (output_name): remove
9066 latex_filter_cmd. Non-portable to non-Unix systems.
9067 (get_latex_textwidth): use File.write and os.unlink() instead.
9069 * THANKS: add Vicente & Trevor.
9071 * lily/grob.cc (discretionary_processing): look up origin for
9072 programming_error too.
9074 * input/regression/tie-broken.ly: new file.
9076 * lily/tie-column.cc (set_chord_outlines): set outline for line
9079 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9081 * lily/pango-font.cc (text_stencil): don't translate glyphs in
9082 unscaled transform, just translate stencils.
9084 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
9087 * scm/define-markup-commands.scm (wordwrap-string): use
9089 (wordwrap-stencils): idem.
9092 (wordwrap-stencils): translate last line to right for
9093 text-direction = LEFT.
9095 * scm/define-grob-properties.scm (all-user-grob-properties): add
9098 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9100 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9101 when copying a Lily_parser object.
9103 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9105 * scm/define-markup-commands.scm (null): add null markup.
9107 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9109 * lily/item.cc: Add documentation of center-invisible
9111 2005-08-24 Graham Percival <gpermus@gmail.com>
9113 * Documentation/user/advanced-notation.itely: add info about
9116 * Documentation/user/programming-interface.itely: fix example
9117 involving raised text.
9119 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9121 * lily/beam.cc (print): fix X start/end points of isolated
9124 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9126 * lily/multi-measure-rest.cc (set_text_rods): new function.
9128 * lily/vertical-align-engraver.cc (process_music): call
9129 Align_interface::set_axis(). This forces #'elements to be ordered,
9130 preventing random vertical reordering of staves.
9132 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9133 add avoid-slur property.
9135 * Documentation/user/basic-notation.itely (Measure repeats): add
9136 countPercentRepeats example.
9138 * Documentation/user/advanced-notation.itely (Other text markup
9139 issues): remove remark about normal-font. We have \normal-text
9141 * input/regression/tie-chord.ly: add note about remaining bugs.
9143 * lily/tie.cc (print): try Tie_column::set_directions () if
9144 control-points not yet defined.
9146 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9148 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9149 extent. This fixes braces falling out of the EPS bbox.
9151 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9154 2005-08-23 Graham Percival <gpermus@gmail.com>
9156 * {various} : change #up->#UP and #down->#DOWN.
9158 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9160 * Documentation/user/advanced-notation.itely: clarify
9161 what objects handles text on a multimeasure rest.
9163 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9165 * VERSION (PATCH_LEVEL): release 2.7.7
9167 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9169 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9171 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9173 * input/regression/*.ly: formatting clean-up. Default layout
9174 before music expression.
9176 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9177 romanze28-2 example.
9179 * scm/ps-to-png.scm: remove dir-re function.
9180 (make-ps-images): generate page names, instead of globbing them.
9181 This brings down LilyPond memory usage for make web by a factor
9184 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9185 don't use glob. With 3000 files, globbing
9186 Documentation/user/out-www/ can take too much time.
9188 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9190 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9192 * input/regression/tie-manual.ly: new file
9194 * input/regression/tie-chord.ly: update.
9196 * flower/include/interval.hh (struct Interval_t):
9198 * lily/tie.cc (distance): new function
9199 (height): new function.
9200 (init): new function
9201 (Tie_details): new struct.
9203 * lily/skyline.cc (skyline_height): new function.
9205 * lily/tie-column.cc (set_chord_outlines): new function.
9206 (new_directions): read tie-configuration
9208 * lily/skyline.cc: fix ASCII art.
9210 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9212 * python/convertrules.py (string_or_scheme): Fix spelling error
9214 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9216 * lily/tie-column.cc (set_directions): set directions only once.
9217 (add_configuration): new function.
9219 * lily/tie.cc (set_control_points): new function
9221 * lily/tie-column.cc (new_directions): new function.
9223 * ly/music-functions-init.ly: set 'pitch property
9224 iso. trill-pitch. This makes \relative work with \pitchedTrill
9226 * lily/tie.cc (get_configuration): new function. Don't generate
9227 control points, rather, generate configuration.
9228 remove head-pair property.
9230 * lily/include/tie.hh (struct Tie_configuration): new struct.
9232 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9234 * Documentation/topdocs/NEWS.tely: clarify.
9236 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9238 * lily/tie.cc: remove minimum-length
9240 * scm/define-grob-properties.scm (all-user-grob-properties):
9241 remove staffline-clearance, y-offset
9243 * input/regression/tie-dots.ly (Module): remove.
9245 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9246 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9248 * input/regression/tie-single.ly: new file.
9250 2005-08-21 Graham Percival <gpermus@gmail.com>
9252 * ly/bagpipe.ly: fix compile problem.
9254 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9256 * lily/midi-item.cc (name): new method.
9258 * lily/staff-performer.cc (acknowledge_audio_element): use
9259 signature of baseclass.
9261 * lily/engraver-group.cc (do_announces): move recursion call out
9264 * lily/drum-note-performer.cc (class Drum_note_performer): use
9265 process_music everywhere.
9267 * ly/performer-init.ly: add default children everywhere.
9269 * lily/paper-book.cc (output): call paper-book-write-midis
9270 directly: always write MIDI, even if no \layout {} block.
9272 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9274 * VERSION (PACKAGE_NAME): release 2.7.6
9276 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9277 about not being able to handle repeat.
9279 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9281 * Documentation/user/examples.itely (Piano templates):
9282 * lily/include/performer-group.hh: Remove last traces of
9283 Performer_group_performer. Fixes make web.
9285 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9287 * Documentation/user/examples.itely (Piano templates): change
9288 Engraver_group_engraver -> Engraver_group
9290 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9291 scm_stand_in_procs is not weak_any.
9293 * lily/volta-bracket.cc (print): don't use strcmp().
9295 * lily/volta-engraver.cc (process_music): use
9296 Text_interface::is_markup() for setting the 'text property of the
9299 * input/mutopia/claop.py (accents): update syntax to 2.6
9301 * scm/define-context-properties.scm
9302 (all-user-translation-properties): add countPercentRepeats.
9304 * Documentation/user/basic-notation.itely (Measure repeats): add
9305 isolated percent example.
9307 2005-08-18 Graham Percival <gpermus@gmail.com>
9309 * input/ {various}: change direction #1, #-1 to
9310 #up/#down or \fooUp, \fooDown.
9312 * Documentation/user/music-glossary.tely: #-1 to #down.
9314 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9315 to #up, #-1 to #down.
9317 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9319 * lily/include/engraver-group.hh: rename.
9321 * lily/include/performer-group.hh: rename.
9323 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9325 * input/test/script-abbreviations.ly: Removed some old LaTeX
9328 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9330 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9331 Remove functions. Remove if 1: constructs, reindent.
9333 * scripts/convert-ly.py (add_version): Add functions from
9336 * scm/script.scm (default-script-alist):
9337 s/priority/script-priority. Fixes script stacking. Backportme.
9338 (Fermata): Very low priority.
9340 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9342 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9344 * input/regression/slur-script.ly: remove padding tweaks. Add
9347 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9348 time sigs and related stuff.
9350 * scm/define-grob-properties.scm (all-user-grob-properties): add