1 2006-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
3 * input/regression/utf-8.ly: Fix doc to match order of language
6 2006-11-01 Joe Neeman <joeneeman@gmail.com>
8 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
11 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
13 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
15 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
17 * Documentation/user/GNUmakefile:
18 don't use ImageMagick, use GS directly.
21 otf depends on otf-g?table. Fixes race condition in -j2 build.
22 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
28 remove .deb/.rpm downloading.
30 * buildscripts/git-update-changelog.py:
31 bugfixes for git-update-changelog.py
33 * Documentation/user/GNUmakefile:
36 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
38 * input/regression/tie-semi-single.ly:
39 use position/direction from single tie case too. This fixes
40 overrides and defaults for single laissez-vibrer and repeat ties.
42 * buildscripts/git-update-changelog.py:
43 only prepend header if one patch was successful.
45 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
47 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
48 stuff. Remove cygwin packaging stuff.
50 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
52 * python/convertrules.py (conv): Part 2 fixes vertical extent.
54 * input/test/vertical-extent.ly: Fix and elaborate on vertical
55 staff extent. (Thanks Mats)
57 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
59 * buildscripts/git-update-changelog.py (main): write .msg and cvs
62 * scm/define-grobs.scm:
63 separation-items have width
69 * Documentation/topdocs/NEWS.tely:
70 * lily/separating-group-spanner.cc:
71 * lily/slur-engraver.cc:
72 * lily/slur-scoring.cc:
73 * scm/define-grobs.scm:
74 * input/regression/slur-clef.ly:
75 add breakableSeparationItem to extra encompass for slurs. This
76 fixes slur/clef slur/key collisions etc. Should fix #49
78 * lily/include/slur-scoring.hh:
79 * lily/slur-scoring.cc:
80 Use X of separation item as slur start. Fixes #120
82 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
84 * buildscripts/git-update-changelog.py (changelog_body): don't
87 * lily/grob.cc: add avoid-slur
89 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
93 move server/emacsclient to elisp/
95 * buildscripts/git-update-changelog.py (Commit.note_del_file):
98 * elisp/server.el.patch:
101 * elisp/emacsclient.patch:
104 * buildscripts/git-update-changelog.py:
111 * buildscripts/git-update-changelog.py:
112 script to update ChangeLog with Git messages.
114 * lily/beam-engraver.cc:
115 * input/regression/rest-pitched-beam.ly:
116 don't set callback if staff-position set. Fixes #126.
118 * lily/bar-number-engraver.cc:
120 * lily/fingering-engraver.cc:
121 * lily/grob-property.cc:
123 * lily/include/grob.hh:
124 * lily/include/lily-guile-macros.hh:
125 * lily/mark-engraver.cc:
126 * lily/melody-engraver.cc:
127 * lily/script-column.cc:
128 * lily/tie-formatting-problem.cc:
130 internal_get_property_data() using ly_symbol2scm()
132 * stepmake/stepmake/generic-targets.make:
133 create .gitignore in outdir.
138 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
140 * input/test/vertical-extent.ly:
141 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
143 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
145 * stepmake/bin/add-html-footer.py (compose): remove setgcos
147 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
149 * GNUmakefile.in (install-help2man): install-help2man target.
151 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
153 * SConstruct (configure): Do not check for /bin/sh.
155 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
157 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
160 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
162 * input/regression/fret-boards.ly: new file.
164 * po/de.po: new po courtesy translation team.
166 * scripts/lilypond-book.py (get_option_parser): add newline to doc
169 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
171 * ly/gregorian-init.ly (neumeDemoLayout): update
172 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
174 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
175 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
177 2006-10-27 Erlend Aasland <erlenda@gmail.com>
179 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
180 Yet another build fix.
182 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
184 * SConstruct (lilypondprefix): use sorted() for list_sort()
187 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
189 * flower/SConscript: Unit test rules.
191 * flower/test-std.cc: Compile fix.
193 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
195 * python/midi.c (pymidi_parse_track): warning fixes.
197 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
198 include dot-column.hh
200 2006-10-26 Graham Percival <gpermus@gmail.com>
202 * Documentation/user/{basic-, global}: minor changes from mailist.
204 2006-10-26 Erlend Aasland <erlenda@gmail.com>
206 * scm/define-grobs.scm: trivial beautification
208 * lily/tie-performer.cc: no need to #include "pqueue.hh"
210 * lily/source-file.cc: put multibyte var inside #if clause
212 * scm/define-grob-interfaces.scm:
213 * scm/define-grob-properties.scm:
214 Build fix (string-fret-finger-combinations)
216 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
219 * Documentation/user/lilypond-book.itely: Build fix.
221 2006-10-26 Joe Neeman <joeneeman@gmail.com>
223 * lily/system.cc (get_paper_system):
224 * lily/paper-book.cc (systems):
225 move most of the backwards compatibility stuff into
228 * Documentation/topdocs/NEWS.tely: add 2 entries for the
231 * Documentation/user/page.itely: remove time-scaled-music
232 bug for the Page_turn_engraver
234 * lily/paper-book.cc (set_system_penalty): backwards
235 compatibility (breakbefore) for the old page breaker
237 2006-10-25 Graham Percival <gpermus@gmail.com>
239 * Diocumentation/user/instrument-notation.itely: added more
240 info about stanzas; thanks Geoff!
242 * Documentation/user/ {basic, advanced}: small fixes from
245 * THANKS: add some bug reporters.
247 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
249 * scm/define-context-properties.scm (all-user-translation-properties):
250 noteToFretFunction: Add.
252 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
253 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
255 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
257 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
260 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
261 Remove bashism in delete.
263 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
265 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
267 * scm/translation-functions.scm (determine-frets-mf): flatten let*
269 * scm/define-context-properties.scm
270 (all-user-translation-properties): add maximumFretStretch property.
272 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
274 * lily/source-file.cc (get_counts): use multibyte variable.
276 * scm/translation-functions.scm (determine-frets-mf): new
277 function: compute fret numbers.
279 * scm/output-lib.scm (string-frets->description) new function.
280 (fret-board::calc-stencil): new function
282 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
284 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
286 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
288 * lily/tab-note-heads-engraver.cc: cleanups.
290 * lily/fretboard-engraver.cc: new file
292 * ly/engraver-init.ly: add FretBoards context
294 2006-10-24 Joe Neeman <joeneeman@gmail.com>
296 * lily/grob.cc (pure_relative_y_coordinate)
297 (pure_height): use the new call_pure_function stuff
299 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
302 * lily/side-position-interface.cc (pure_y_aligned_side): add an
305 * lily/simple-closure.cc (ly_eval_simple_closure): make
306 simple-closure evaluatable from scheme
307 (evaluate_with_simple_closure): make simple-closures pure-
310 * lily/slur.cc (pure_outside_slur_callback): new function
312 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
313 fits in with previous changes that made the page forces much
316 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
317 and pure-Y-extent into this new function.
318 (pure-conversions-alist): add outside-slur-callback
320 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
322 * Documentation/user/advanced-notation.itely (Instrument names):
323 Remove obsolete bug workaround for instrument names on piano
326 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
328 * Documentation/user/lilypond-book.itely (Integrating DocBook and
329 music): patch by Bertalan Fodor for docbook.
331 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
332 of $(LILYPOND). Prevents lilypond run for .txt files.
334 * INSTALL.txt: gitness.
336 * .cvsignore: update to force gitness.
338 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
340 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
341 detect suicide in nested tuplets.
343 2006-10-23 Werner Lemberg <wl@gnu.org>
345 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
346 typo in argument to FT_Get_X11_Font_Format.
348 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
350 * stepmake/stepmake/po-vars.make: more gitness.
352 * flower/polynomial.cc (check_sol): no empty if bodies.
354 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
356 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
358 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
360 * Documentation/user/examples.itely (Transcription of mensural
361 music): Added more comments in .ly source. Suggest to remove
362 Forbid_line_break_engraver to allow line breaking at all bars.
364 * Documentation/user/instrument-notation.itely (Ancient
365 articulations): Updated @refbugs regarding episem.
367 * Documentation/user/instrument-notation.itely (Gregorian square
368 neumes ligatures): Added \augmentum dots. Updated @refbugs
369 regarding \augmentum.
371 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
373 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
376 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
379 * ly/gregorian-init.ly: Added \augmentum macro.
381 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
383 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
385 * lily/pango-font.cc (pango_item_string_stencil): use
386 FT_Get_X11_Font_Format()
388 2006-10-22 John Mandereau <john.mandereau@free.fr>
390 * po/fr.po: update translation.
392 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
394 * VERSION (PATCH_LEVEL): bump version
396 * input/regression/horizontal-bracket-break.ly: new file.
398 * scm/define-grobs.scm (all-grob-descriptions): calc
401 * lily/horizontal-bracket.cc (make_bracket): support
402 connect-to-neighbor. Fix #118
404 * VERSION: release 2.9.26-2
406 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
408 * VERSION (PACKAGE_NAME): release 2.9.26
410 * buildscripts/output-distance.py (test_basic_compare): add
412 (FileLink.multi_img_cell): new function, glob multi-page png
415 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
417 * po/lilypond.pot: update.
419 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
421 * Documentation/user/global.itely (File structure): remove
424 * lily/parser.yy (FIXME): remove ADDQUOTE
426 * Documentation/user/global.itely (Extracting fragments of
427 notation): new node, about clip systems.
429 * Documentation/user/lilypond-book.itely (Many quotes of a large
430 score): ref to clip systems.
432 * Documentation/user/instrument-notation.itely (Entering lyrics):
433 add note about lyric ties and required font.
435 * lily/open-type-font.cc (glyph_list): format errors.
437 * Documentation/user/programming-interface.itely (Scheme
438 procedures as properties): more doco on simple-closure and scheme
440 (Input variables and Scheme): use lilypond[verbatim], document
443 * Documentation/user/page.itely (Displaying spacing): use \book
444 explicitly, so arrows show .
445 (Line breaking): add note about Forbid_line_break_engraver
447 * Documentation/user/tweaks.itely (Common tweaks): also set length
448 to prevent tie squeezing.
449 (Default files): use @var{}
451 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
452 (Generating LilyPond files): add FOMUS.
454 2006-10-20 Joe Neeman <joeneeman@gmail.com>
456 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
457 Y-offset for TextScript and Script
459 * lily/text-engraver.cc (make_item):
460 * lily/script-engraver.cc (make_script_from_event):
461 remove call to Side_position_interface::set_axis since all scripts
462 now have this set by default
465 * lily/prob.cc: use variables
467 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
469 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
470 at typography, rather analyse stream event duration.
472 * Documentation/user/page.itely (Page formatting): set a6 paper
473 for system separator example.
475 * lily/arpeggio.cc (Module): idem.
477 * lily/accidental-placement.cc: add script-priority property.
479 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
481 * lily/ttf.cc (print_trailer): if all else fails: use
482 glyphIndexXXXX as glyph name. Fixes #117.
484 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
485 entry if cmap contains glyph.
486 (get_index_to_charcode_map): remove from Pango_font class, use
487 global filename -> font mapping.
488 (get_glyph_index_name): new function.
489 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
492 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
494 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
497 * scm/define-grob-properties.scm (all-user-grob-properties):
498 remove outdated doc. Fixes #116
500 * lily/completion-note-heads-engraver.cc (process_music): always
501 clone input events; otherwise we may overwrite input 'duration
502 property. Fixes #115.
504 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
507 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
510 * VERSION (PATCH_LEVEL): bump version.
512 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
514 * lily/engraver.cc (internal_make_grob): use variables.
516 * flower/string-convert.cc (dec2double): clean-up warnings.
518 * configure.in (CXXFLAGS): add -Werror.
520 * VERSION (PACKAGE_NAME): release 2.9.25
522 2006-10-18 Joe Neeman <joeneeman@gmail.com>
524 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
525 line even if we precede a forced break.
527 * lily/optimal-page-breaking.cc (try_page_spacing): square line
528 forces too. Make page-spacing weight default to 10 because the
529 changes to vertical springs decreased the page force/line force
530 proportions. Also, take the average of line force and page force
531 instead of just the sum.
533 * lily/constrained-breaking.cc (initialize): make the stiffness
534 of the vertical springs depend on the height of the system. This
535 prevents pages with only a few large systems from getting huge
538 * Documentation/user/page.itely (Page formatting): document the
539 change in default page-spacing-weight
541 * lily/include/constrained-breaking.hh: initialise bottom_padding_
543 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
545 * input/typography-demo.ly (melody): remove superfluous slur.
547 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
548 add piano-pedal-script-interface
550 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
552 * scripts/lilypond-book.py: DocBook support.
554 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
556 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
558 (stop_translation_timestep): set bound to currentMusicalColumn if
559 not set yet. Fixes #102
561 * lily/piano-pedal-bracket.cc: formatting.
563 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
565 * lily/piano-pedal-align-engraver.cc: new class
566 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
569 2006-10-18 Heikki Junes <hjunes@gmail.com>
571 * po/fi.po: Update Finnish translation (before the next release).
573 2006-10-17 Joe Neeman <joeneeman@gmail.com>
575 * lily/system.cc (get_paper_system): reinstate the backwards-
576 compatible page breaking for the old page breaker.
578 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
580 * lily/recording-group-engraver.cc: removed
582 * lily/context.cc, lily/translator-group.cc: Don't touch
583 Context::implementation_ if it's null
585 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
587 * scm/paper.scm: only use left-margin if defined.
589 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
591 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
593 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
594 strokeFingerOrientations
596 * lily/script-column.cc (row_before_line_breaking): also handle
597 accidentals and arpeggios in horizontal script stacking.
599 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
602 * input/regression/script-stack-horizontal.ly: trim.
604 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
606 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
609 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
610 'text if string argument.
612 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
614 * scm/define-context-properties.scm
615 (all-user-translation-properties): change to strokeFingerOrientations
617 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
619 * lily/parser.yy: remove debug output
621 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
623 * ly/paper-defaults.ly: set left/right margin.
625 * scm/paper.scm (set-paper-dimensions): use left-margin and
626 right-margin for computing linewidth.
628 * Documentation/topdocs/NEWS.tely (Top): idem.
630 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
633 * scm/define-markup-commands.scm (tied-lyric): increase negative
634 space: space syllables tighter.
636 * VERSION (PATCH_LEVEL): bump version.
638 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
641 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
643 * COPYING: further clarification
645 * VERSION: release 2.9.24
647 * input/regression/script-stack-horizontal.ly: add version.
649 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
651 * input/regression/lyric-tie.ly (texidoc): use different words.
653 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
655 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
657 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
658 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
660 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
662 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
664 * Doxyfile: remove file.
666 * scm/define-grob-interfaces.scm (string-finger-interface): add
667 string-finger-interface
669 * lily/general-scheme.cc (LY_DEFINE): move
670 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
672 * Documentation/topdocs/NEWS.tely (Top): add note for
673 string-finger feature.
675 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
678 * scm/output-lib.scm (string-finger::calc-text): read 'digit
681 * input/regression/script-stack-horizontal.ly: new file.
683 * ly/engraver-init.ly: add Script_row_engraver.
685 * lily/script-column.cc (order_grobs): refactor: separate axis
687 (row_before_line_breaking): new function.
689 * lily/script-row-engraver.cc (Script_row_engraver): new file.
691 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
693 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
695 * Documentation/user/instrument-notation.itely: Cleanup: Remove
696 annoying skip notes from mensural ligature example. Update
697 @refbugs for ligatures and mensural ligatures.
699 * lily/coherent-ligature-engraver.cc,
700 lily/include/coherent-ligature-engraver.hh,
701 lily/mensural-ligature-engraver.cc,
702 lily/vaticana-ligature-engraver.cc: Revise code for item
703 reparentizing. There should now be less programming_error
706 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
708 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
709 Maintenance bugfix: Don't create empty Stencil (), but empty box
710 instead. This fix should eliminate some programming_error
713 * ly/engraver-init.ly (MensuralStaff): Set default accidental
716 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
717 \layout block _before_ score.
719 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
721 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
723 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
725 2006-10-13 Erlend Aasland <erlenda@gmail.com>
727 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
729 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
731 * VERSION (PATCH_LEVEL): bump version.
733 * COPYING: clarify exception note.
735 * lily/main.cc: remove remark about "COPYING".
737 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
738 system-count starts at 0 for each clip-region. Change name to
739 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
740 layout block, per score.
742 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
744 * lily/input-smob.cc: add equal_p for Input
746 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
749 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
751 * lily/prob.cc: Add equal_p predicate for Prob
753 * lily/translator.cc: small cleanup
755 * scm/document-music.cc: use data from translator listener
756 registration to generate documentation for event classes
758 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
760 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
762 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
764 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
766 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
768 * Documentation/topdocs/INSTALL.texi: Thinko.
770 * .cvsignore: Update.
772 * lexer-gcc-3.1.sh: Remove.
774 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
775 Update anonymous cvs access. Remove comment about gcc 3.0.4.
777 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
779 * VERSION: release 2.9.23
781 * lily/paper-column-engraver.cc (stop_translation_timestep): also
784 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
786 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
788 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
790 * input/regression/clip-systems.ly (Notes): new file.
792 * scm/lily.scm (define-scheme-options): add clip-systems option.
794 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
796 (dump-stencil-as-EPS): move bbox calculation from previous
798 (output-framework): use -dclip-systems
800 * scm/lily-library.scm (filtered-map): new function
802 * scm/framework-ps.scm (clip-system-EPS): new function.
803 (clip-system-EPSes): new function.
805 * lily/paper-column.cc: add rhythmic-location to interface
807 * scm/define-grob-properties.scm (all-user-grob-properties): add
808 rhythmic-location property.
810 * scm/clip-region.scm: new file: rhythmic-location data type and
811 system-clipped-x-extent function.
813 * ly/init.ly: use (scm clip-region)
815 * lily/paper-column-engraver.cc (stop_translation_timestep): set
816 rhythmic-location for paper column grobs.
818 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
820 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
822 * ly/engraver-init.ly: Remove obsolete comment on
825 * Documentation/user/instrument-notation.itely: Tune Ancient
826 Articulations figure, such that the episem actually shows.
828 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
829 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
831 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
834 2006-10-12 Graham Percival <gpermus@gmail.com>
836 * Documentation/user/ {some}: minor edits that were lost somehow.
838 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
840 * VERSION (PACKAGE_NAME): bump version.
842 * input/regression/lyric-tie.ly (texidoc): new file.
844 * Documentation/topdocs/NEWS.tely (Top): add new feature.
846 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
848 * scm/define-markup-commands.scm (tied-lyric): new function: split
849 string along ~ and reattach with U+203F (tie character) and
852 * scm/output-lib.scm (lyric-text::calc-text): new function.
854 * lily/lyric-engraver.cc (process_music): don't set 'text.
856 * scm/output-lib.scm (string-finger::calc-text): new function
857 (lyric-text::print): new function.
859 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
860 generic for fingering & string number. Use for string-finger.
862 * scm/define-music-types.scm (music-descriptions): add
865 * lily/fingering-engraver.cc (listen_string_finger): new function
867 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
869 * scm/define-context-properties.scm
870 (all-user-translation-properties): add stringFingerOrientations
872 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
874 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
875 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
877 * lily/dots.cc: Added style property for dots.
879 * mf/parmesan-heads.mf: Fix typo in comment.
881 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
882 adding longa head to feta font and removing obsolete default
885 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
887 * scm/output-lib.scm (fingering::calc-text): use origin
888 event-property, not music-property.
890 * lily/lilypond.rc.in: spell my name correctly.
892 2006-10-10 Joe Neeman <joeneeman@gmail.com>
894 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
895 already have a non-empty extent. Fixes estimation for Hara-kiri
898 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
900 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
903 * lily/ligature-engraver.cc: Remove unused #include.
905 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
906 Bugfix: remove method check_for_prefix_loss(Item *) from global
907 namespace to avoid namespace pollution.
909 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
911 * VERSION: release 2.9.22
913 * ly/generate-documentation.ly: update option name.
915 * lily/dynamic-text-spanner.cc (print): revert fix.
917 * scm/define-grob-interfaces.scm
918 (trill-pitch-accidental-interface):
919 add trill-pitch-accidental-interface
921 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
922 dereference if it's really a duration.
924 * lily/figured-bass-engraver.cc (process_music): clear spanner if
925 useBassFigureExtenders is not set.
926 (listen_bass_figure): record as new event if
927 useBassFigureExtenders not set. Fixes #103.
929 * scm/stencil.scm (circle-stencil): don't center stencil argument,
930 instead: move circle. Fixes #107.
932 * scm/define-grobs.scm (all-grob-descriptions): set
933 allow-loose-spacing for PaperColumn and
934 NonMusicalPaperColumn. Kludge for #110.
936 * lily/spaceable-grob.cc: add allow-loose-spacing property.
938 * lily/spacing-determine-loose-columns.cc (is_loose_column):
939 allow-loose-spacing property.
941 * scm/define-markup-commands.scm (postscript): gsave & grestore
942 around embedded PS. Do setlinewidth too. Fixes #109.
944 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
946 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
947 code. This patch fixes ligature brackets that were not at all
950 2006-10-08 Graham Percival <gpermus@gmail.com>
952 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
954 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
956 * scm/define-context-properties.scm: clarified docs (bug 91).
958 * Documentation/user/basic-notation.itely: document volta brackets
959 not aligning (bug 63).
961 * Documentation/user/ global.itely invoking.itely: ignore or
962 add warnings about texstr.
964 2006-10-08 John Mandereau <john.mandereau@free.fr>
966 * po/fr.po: update translation.
968 * po/: update msgids.
970 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
972 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
974 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
976 * Documentation/user/page.itely (Two-pass vertical spacing): add
977 documentation for two-pass spacing technique.
979 2006-10-06 Graham Percival <gpermus@gmail.com>
981 * Documentation/user/convert-ly.txt: new file; new
982 storage place for this file (moved from bugs/ CVS).
984 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
986 * lily/note-head.cc: Fixed programming_error message.
988 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
990 * scm/define-grobs.scm (pure-conversion): move pure-callback
993 * scm/script.scm (default-script-alist): set avoid-slur for turn,
994 marcato, stopped, thumb.
996 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
998 * lily/completion-note-heads-engraver.cc (process_music): don't
999 skimp on memory usage.
1001 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1004 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1005 parenthesis item. This fixes premature Y-extent triggering. Fixes
1008 * VERSION (PATCH_LEVEL): bump version.
1010 2006-10-04 Graham Percival <gpermus@gmail.com>
1012 * Documentation/user/advanced-notation.itely: added
1013 info about instrument names for piano or other contexts,
1016 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1018 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1019 solfa_base_notewidth as unit for non-DO-notes too.
1021 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1023 * VERSION: release 2.9.21
1025 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1028 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1030 * python/lilylib.py (progress): Minor fix.
1032 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1034 * lily/note-name-engraver.cc: doc engraver.
1036 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1038 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1040 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1043 * lily/stem-engraver.cc (make_stem): don't set duration-log
1045 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1046 write snippet-names binary.
1048 * python/lilylib.py (system): use os.system for mingw32
1050 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1053 * scm/backend-library.scm: update email address.
1055 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1058 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1061 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1062 handle dot creation separately.
1064 * lily/tab-note-heads-engraver.cc (process_music): idem.
1066 * lily/drum-note-engraver.cc (process_music): idem.
1068 * lily/note-heads-engraver.cc (process_music): idem.
1070 * lily/rest-engraver.cc: don't set duration-log.
1072 * scm/output-lib.scm (string-number::calc-text): new function.
1073 (note-head::calc-duration-log): new function.
1075 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1077 * scm/output-lib.scm (fingering::calc-text): new function.
1079 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1081 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1082 and include-eps-font -> include-eps-fonts
1084 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1086 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1088 * lily/timing-translator.cc: list properties.
1089 (start_translation_timestep): update internalBarNumber too.
1091 * scm/define-context-properties.scm
1092 (all-user-translation-properties): add internalBarNumber.
1094 * input/regression/spacing-no-note.ly: new file.
1096 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1098 * lily/book.cc: #include cleanup.
1100 * lily/include/lily-guile-macros.hh: add assert to
1101 scm_or_str2symbol(SCM).
1103 * VERSION (PATCH_LEVEL): bump version.
1105 * lily/spacing-spanner.cc (musical_column_spacing): handle
1106 musical->nonmusical spacing case, where there is no spacing
1107 wish. Fixes issue #61.
1109 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1110 (pango_item_string_stencil): use logical rect horizontally (to
1111 preserve spaces), ink_rect vertically (for time signatures).
1113 * lily/font-metric.cc (word_stencil): new interface function
1115 * input/regression/utf-8-mixed-text.ly: new file.
1117 * lily/percent-repeat-engraver.cc (listen_percent): remove
1120 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1121 non-dynamic scripts. Fixes #30.
1123 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1125 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1127 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1128 SCM_UNDEFINED for non-existent data.
1130 * lily/side-position-interface.cc (general_side_position): allow
1131 optional current_offset argument for chaining, so combinations of side-position
1132 and outside slur callback don't add up. Fixes issue #92.
1134 * lily/pango-font.cc (pango_item_string_stencil): use
1135 logical_rect. This prevents spaces after words from disappearing,
1138 * VERSION: release 2.9.20
1140 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1142 * scm/define-grob-properties.scm (all-user-grob-properties):
1143 mention stencil as user settable.
1145 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1147 * Documentation/user/page.itely (Page formatting):
1148 document auto-first-page-number
1150 * lily/page-breaking.cc (find_chunks_and_breaks):
1151 * lily/paper-score.cc (calc_breaking): Follow changes to the
1152 Constrained_breaking interface
1154 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1155 here backwards, as an optimisation
1156 (initialize): new function; move most of the code in resize () here
1157 (combine_demerits): cache ragged_right_
1158 (Constrained_breaking): constructor now takes the Paper_score
1160 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1162 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1163 avoid parser lookahead for 0-ary functions.
1165 * lily/translator.cc: Extract event classes from
1166 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1168 2006-10-02 Heikki Junes <hjunes@gmail.com>
1170 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1173 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1175 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1176 function. Call the page breaking function selected in the
1177 `page-breaking' \paper variable, then the post processing function
1178 chosen using the `page-post-process' \paper variable.
1179 (line-height): new function. Return the height of a system.
1180 (line-minimum-position-on-page): new function. Return the position
1181 of a system on page (using the previous line position), only
1182 considering between system padding.
1183 (stretchable-line?): new function. Says whether a line can be
1184 stretched (ie. is not a title nor a single staff system).
1185 (page-maximum-space-left): new function. Computes space left on a
1186 page, when all systems are separated by their padding.
1188 * lily/page-breaking.cc (breaking::make_pages): Move page post
1189 processing function call to page breaking wrapper (common to all
1192 * lily/paper-book.cc (book::pages): call the page breaking
1193 wrapper, instead of the page breaker directly
1195 * ly/paper-defaults.ly: Add \paper variables for page breaking
1196 wrapper and page post processing function. Make
1197 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1198 `system-maximum-stretch-procedure' variable for holding a function
1199 computing the maximum stretch a system allows.
1201 * scm/layout-page-dump.scm (write-page-breaks): computes the
1202 stretch to apply to systems on a page to minimize left
1203 space. Dump this stretch length.
1205 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1206 the system-stretch property of the tweak data to stretch the
1208 (includePageLayoutFile): Void function which includes the
1209 generated page-layout file if it exists and if the page layout
1210 dumping is not asked.
1211 (scoreTweak): if the score tweak named by the argument exists,
1214 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1216 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1217 handle correctly the case where there are multiple \noPageBreaks
1220 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1222 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1224 * abc2ly.py fix so that entering " -- " will translate to a -- in
1225 the lilypond instead of a " - - "
1227 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1229 * lily/align-interface.cc: fix typo
1231 * lily/dynamic-text-spanner.cc (print): Add a special case for
1232 trill spanner right sides.
1234 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1236 * lily/align-interface.cc (get_extents_aligned_translates): add
1237 support for padding variable.
1239 * lily/break-align-interface.cc (self_align_callback): oops: use
1240 loop variable in guard.
1242 * input/regression/repeat-percent-grace.ly: new file.
1244 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1245 remember first currentCommandColumn of a grace run. Fixes issue 70.
1247 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1248 move class definition to CC file.
1250 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1252 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1253 measure-long repeats.
1255 * flower/include/international.hh: include stdarg.h
1257 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1259 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1260 put_systems_on_pages to return an empty result, we need to assign
1261 demerits properly in that case.
1262 (put_systems_on_pages): Make the number of pages depend on the
1263 evenness of page_number. Add auto-first-page-number.
1264 (calc_subproblem): ensure that the page-number is even for the
1265 left-hand page. Warn if the first page-turn doesn't fit onto the
1266 first (right-hand) page.
1268 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1269 (min_page_count): make this publicly accessible
1270 (min_page_count): fix a bug when there are forced page breaks that
1271 was introduced when I made this loop run backwards
1272 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1273 replace space_systems_on_min_pages with these two. The logic in
1274 space_systems_on_min_pages was getting too convoluted and is better
1275 contained in page-turn-page-breaking.
1277 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1279 (breakable_column): typo
1281 * lily/source-file.cc (get_line): fix off-by-one error
1282 and clean up some of the logic
1284 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1286 * lily/page-breaking.cc (make_pages): honour the first-page-number
1289 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1291 * VERSION (PACKAGE_NAME): bump version.
1293 2006-09-26 Pal Benko <benko.pal@gmail.com>
1295 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1296 (the latter is the same as petrucci-f which is kept for compatibility)
1298 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1300 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1302 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1304 * lily/global-context.cc (run_iterator_on_me): break out of loop
1305 if moment doesn't increase.
1307 * scm/define-grob-properties.scm (all-user-grob-properties): add
1310 * lily/accidental.cc (after_line_breaking): read forced property.
1312 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1315 * input/regression/accidental-forced-tie.ly: new file.
1317 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1319 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1321 * lily/figured-bass-engraver.cc: only listen to rest events if
1322 ignoreFiguredBassRest is not set.
1324 * scm/define-context-properties.scm
1325 (all-user-translation-properties): add ignoreFiguredBassRest property
1327 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1329 * lily/paper-book.cc (get_system_specs):
1330 (set_system_penalty): fix breakbefore.
1331 We used to set a penalty on the system after the break, now we
1332 set a permission on the system before the break
1334 * lily/grob-property.cc: add scm debugging hooks into
1335 property modification
1337 * lily/context-property.cc:
1339 rename make_foo_from_properties to internal_make_foo and
1340 move it from context-property.cc to a member function of
1343 * lily/include/lily-guile-macros.hh:
1344 overload ly_symbol2scm macro so that there is no more need
1347 * lily/volta-repeat-iterator.cc:
1348 * lily/tweak-engraver.cc:
1349 * lily/tuplet-bracket.cc:
1350 * lily/span-bar-engraver.cc:
1351 * lily/script-engraver.cc:
1352 * lily/prob-scheme.cc:
1353 * lily/pointer-group-interface.cc:
1355 * lily/grob-scheme.cc:
1356 * lily/grob-property.cc:
1358 * lily/context-property.cc:
1359 * lily/break-substitution.cc:
1360 * lily/break-align-engraver.cc:
1361 * lily/axis-group-interface.cc:
1362 * lily/align-interface.cc:
1363 remove calls to internal_FOO
1365 * lily/system-start-delimiter-engraver.cc:
1366 * lily/parenthesis-engraver.cc:
1367 * lily/accidental-engraver.cc:
1368 remove calls to make_foo_from_properties
1370 2006-09-23 Graham Percival <gpermus@gmail.com>
1372 * Documentation/user/programming-iterfaces.itely: fix
1373 def-music-function -> define-music... leftover.
1375 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1377 * lily/page-spacing.cc (min_page_count): by running the loop
1378 backwards, we can calculate ragged_last properly.
1380 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1382 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1383 printfirst-page-number -> print-first-page-number
1385 * python/convertrules.py: corresponding rule.
1387 * Documentation/user/page.itely (Page formatting): Document the
1388 default values of all page layout parameters.
1390 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1392 * lily/lexer.ll: remove limitation on music function arity. New
1393 mode extratoken, which inserts extra EXPECT_* tokens after
1394 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1396 * lily/parser.yy: Change grammar for music function accordingly.
1398 * lily/include/lily-parser.hh: New method get_state, new member
1399 hidden_state. Works around a problem when parser fetches
1400 MUSIC_FUNCTION token but not the following EXPECT_* token.
1402 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1405 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1406 references to Music; use ASSIGN_EVENT_ONCE everywhere
1408 * lily/grob-info.cc: junk *music_cause
1410 * lily/music.cc: copy eventified articulations to stream event
1412 * lily/part-combine-iterator.cc: Cleanup using enums
1414 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1417 * lily/include/engraver.hh: Junk music.hh include
1419 * lily/stream-event.cc: Changed constructors
1421 2006-09-21 Graham Percival <gpermus@gmail.com>
1423 * Documentation/user/tweaks.itely (Fitting music onto fewer
1424 pages): change settings to avoid warning messages.
1426 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1428 * Documentation/user/tweaks.itely (Fitting music onto fewer
1429 pages): Add between-system-space setting.
1431 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1433 * lily/accidental-placement.cc (calc_positioning_done): don't
1434 trigger Y-extent calculation too early. Use pure_height instead.
1436 * lily/scale.cc (LY_DEFINE): new file.
1438 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1440 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1441 that happen at the start of a score: having a zero-length
1442 chunk was messing up min_system_count calculations.
1444 * lily/source-file.cc (get_line): lower_bound, not
1445 binary_search. Fixes problem where point-and-click would
1446 always point to the first line.
1448 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1450 * lily/accidental-placement.cc (calc_positioning_done): also put
1451 stems into accidental support.
1453 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1456 * scm/script.scm (default-script-alist): avoid-slur and
1457 slur-padding for portato script.
1459 * lily/stem-tremolo.cc (translated_stencil): new function.
1460 (height): use new function. Fixes tremolos on whole notes.
1462 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1465 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1467 * scripts/abc2ly.py (try_parse_comment): idem.
1469 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1470 bar_string iso. string.find()
1474 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1477 2006-09-18 Graham Percival <gpermus@gmail.com>
1479 * Documentation/user/basic-notation.itely: add bug
1480 warning about ties and octavation/clef.
1482 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1484 * VERSION (PACKAGE_NAME): release 2.9.18
1486 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1488 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1489 figure out midi file names right here.
1491 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1493 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1495 * scm/backend-library.scm: option naming: gs-font-load*s*
1497 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1500 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1502 * scm/define-music-types.scm (music-descriptions): remove
1503 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1504 Music::to_event doesn't complain.
1506 * lily/accidental-placement.cc (ape_compare):
1507 * lily/semi-tie.cc (compare):
1508 * lily/note-column.cc (shift_compare): replace by XXX_less
1510 * lily/tie-formatting-problem.cc (set_chord_outline):
1511 * lily/tie-column.cc (calc_positioning_done):
1512 * lily/system.cc (post_processing)
1514 * lily/stem.cc (note_head_positions)
1515 (calc_positioning_done):
1516 * lily/spanner.cc (do_break_processing)
1517 (find_broken_piece):
1518 * lily/span-bar.cc (print):
1519 * lily/semi-tie-column.cc (calc_positioning_done):
1520 * lily/rest-collision.cc (calc_positioning_done):
1521 * lily/program-option.cc (get_help_string):
1522 * lily/note-collision.cc (get_clash_groups):
1523 * lily/new-fingering-engraver.cc (position_scripts):
1524 * lily/keyword.cc (Keyword_table):
1525 * lily/hara-kiri-group-spanner.cc (request_suicide):
1526 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1527 * lily/accidental-placement.cc (calc_positioning_done):
1529 * lily/beam.cc (get_beam_segments):
1530 * lily/grob-array.cc (remove_duplicates):
1533 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1534 ragged-last-bottom = ##f (test the new page breaker)
1536 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1538 * scm/define-context-properties.scm
1539 (all-internal-translation-properties): remove properties that
1540 were used to communicate page-turn stuff to the paper-column
1543 * lily/lily-guile.cc (robust_scm2string): new function
1545 * lily/paper-column-engraver.cc: Clean up page turn stuff
1547 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1548 instead of cluttering up paper-column-engraver.cc
1550 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1552 * scm/layout-page-dump.scm (scm): export utility function names,
1553 to allow user writing cutsom dumping functions.
1555 * scm/layout-page-layout.scm: export utility function names to
1556 enable custom page breaking function writing. Tabify.
1557 (line-next-space): use ?-suffix only for predicates
1558 (page-maximum-space-to-fill): new function. Return the space
1559 between first and bottom system of a page, to give to
1561 (space-systems): use a space-to-fill argument (for instance as
1562 computed by page-maximum-space-to-fill) instead of computing
1563 internaly this space with the page height. That way, the caller
1564 can adjust the space to use.
1565 (make-page-from-systems, walk-paths): compute space to fill before
1566 calling space-systems.
1568 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1570 * scm/script.scm (default-script-alist): set paddings for every
1571 type here, increase for portato mark.
1573 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1576 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1578 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1579 use spanner::set-spacing-rods
1581 * lily/note-column.cc: reformat.
1583 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1584 step positioning for note/rest combinations.
1586 * input/regression/rest-note-collision.ly: new file.
1588 * scm/define-grobs.scm (all-grob-descriptions): add
1591 * flower/include/std-vector.hh: switch off again.
1593 * VERSION (PATCH_LEVEL): bump to 2.9.18
1595 * flower/include/std-string.hh: idem.
1597 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1599 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1601 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1604 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1606 * Documentation/user/page.itely: update page breaking documentation
1608 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1610 * lily/note-collision.cc (calc_positioning_done): only access
1611 first head if available.
1613 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1615 * scm/framework-ps.scm (output-preview-framework): use new name.
1617 * lily/program-option.cc (internal_set_option): use new names.
1619 * Documentation/user/SConscript (lilypond_book_flags): update -d
1622 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1623 output into other programs): new variable names.
1625 * scm/lily.scm (define-scheme-options): uniformize var names.
1627 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1628 tuplets_ is non-empty before popping.
1630 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1632 * lily/spanner.cc (find_broken_piece):
1633 * lily/spacing-spanner.cc (get_columns):
1634 * lily/source-file.cc (get_line):
1635 * lily/simple-spacer.cc (get_column_description):
1636 * lily/keyword.cc (lookup):
1637 use the new binary search.
1639 * flower/include/std-vector.hh: replace binary_search with
1640 a more STL-like version
1642 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1644 * lily/tie-performer.cc: remove unused last_event_ property.
1645 (class Tie_performer): add now_tied_heads_ property for
1646 partially-tied heads.
1647 (acknowledge_audio_element): when adding an Audio_note, put the
1648 note in now_tied_heads_ if the audio note is partially tied.
1649 (stop_translation_timestep): always include entries in
1650 now_tied_heads_ in heads_to_tie_.
1652 * lily/drum-note-performer.cc (process_music): look for tie-events
1653 in the articulations; pass to Audio_note constructor.
1655 * lily/note-performer.cc (process_music): look for tie-events in
1656 the articulations; pass to Audio_note constructor.
1658 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1661 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1662 include initializer in constructor.
1664 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1666 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1667 unless they are breakable. This fixes discrepancies between the forces
1668 calculated here and the forces calculated in get_line_configuration.
1670 * lily/grob.cc (pure_relative_y_coordinate): fix some
1671 mis-estimation that was happening with piano staves.
1673 * lily/constrained-breaking.cc (resize): don't choke if we get a
1674 measure that won't fit on a line.
1675 (combine_demerits): don't consider uniformity when ragged
1677 * lily/page-spacing.cc (solve): why the f* were there two of these?
1678 (calc_subproblem): properly handle the case where a system is taller
1681 * lily/system.cc (get_paper_system): ensure that all the permissions
1682 and penalties are passed to the paper systems.
1684 * lily/page-breaking.cc (create_system_list): support system-count.
1686 * scm/define-grobs.scm (pure-print-callbacks): add
1687 ly:script-interface::print
1689 * lily/page-spacing.cc (min_page_count): fix calculation of min
1690 pages if we are ragged and there are non-zero springs.
1692 * scm/layout-page-layout.scm: if the pure-height estimates are under
1693 the real height, allow space-systems to ignore padding if it is
1694 needed in order to fit the systems on one page
1696 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1698 (solve): fix performance problem. Make sure we always get at least
1701 * lily/page-breaking.cc (make_pages): include write-page-breaks
1704 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1706 * scm/define-grobs.scm: add the new slur-callback
1707 fix pure-relevant to not exclude grobs whose extent is already
1710 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1713 * lily/slur.cc (pure_height): new callback to estimate the height
1716 2006-09-02 Graham Percival <gpermus@gmail.com>
1718 * Documentation/user/invoking.itely: small update on
1719 MacOS X notes; thanks Trevor!
1721 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1723 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1725 * lily/lexer.ll: accept EOF in all states.
1727 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1729 * lily/source-file.cc (Source_file): always 0-terminate character
1730 array, to prevent Flex from barfing.
1732 * lily/global-context.cc (get_output): robustness: don't crash if
1733 no Score context found.
1735 * lily/include/book.hh (class Book): idem.
1737 * lily/include/context-def.hh (struct Context_def): idem.
1739 * lily/include/score.hh (class Score): don't derive from Input.
1741 * lily/book.cc (Book): add a copy ctor.
1743 * buildscripts/output-distance.py (FileLink.calc_distance): count
1744 orphans in distance too.
1746 * python/midi.c (midi_parse_track): robustness: don't read past
1749 * ly/performer-init.ly: add Control_track_performer, move
1750 Tempo_performer and Time_signature_performer to Score.
1752 * lily/score-performer.cc (acknowledge_audio_elements): override
1753 from base class: add to audio-columns
1755 * lily/control-track-performer.cc (add_text): new file: generate
1758 * lily/performance.cc: move output_header_track to
1759 Control_track_performer ()
1761 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1763 * lily/include/midi-item.hh (class Midi_channel_item): insert
1764 class into hierarchy, for items that can have a channel setting. Dehungarify.
1766 * lily/include/performer.hh (class Performer): remove
1767 play_element(); move functionality into announce/acknowledge.
1769 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1771 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1772 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1774 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1776 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1779 * lily/all-font-metrics.cc: remove TFM support.
1781 * lily/include/tfm.hh: remove TFM support, TFM reader.
1783 * lily/include/binary-source-file.hh: remove Binary_source_file.
1785 2006-08-27 Graham Percival <gpermus@gmail.com>
1787 * Documentation/topdocs/NEWS.itely: add @c marker for
1788 stuff I've processed.
1790 * Documentation/user/ various: info from NEWS.
1792 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1794 * lily/paper-column-engraver.cc (finalize): Oops, this change
1795 should have gone in on 2006-08-23
1797 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1799 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1800 quotes to quote arguments. Fixes Windows problem.
1802 * python/lilylib.py (progress): idem
1804 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1806 * scripts/musicxml2ly.py: fix for importing
1807 minor key signatures from MusicXML. (Phillip Kirlin)
1809 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1811 * python/musicxml.py:
1812 (Attributes.get_key_signature): now correctly retrieves mode from
1815 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1817 * lily/parser.yy (output_def_body): take ownership of identifier
1820 * Documentation/user/advanced-notation.itely (Metronome marks):
1821 update use of \tempo in \midi.
1823 * VERSION: release 2.9.16
1825 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1827 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1830 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1832 * input/regression/tie-chord-partial.ly: clarify example.
1834 * scm/define-music-properties.scm (all-music-properties): remove
1837 * ly/music-functions-init.ly: remove \untied.
1839 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1840 stream events and music events.
1841 (stop_translation_timestep): search acknowledged heads for
1844 * input/regression/tie-chord-partial.ly: new file.
1846 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1847 for \char markup command.
1849 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1851 * scm/define-music-types.scm (music-descriptions): consistency:
1852 Use solo-{one,two}-event iso. solo-[12]-event.
1854 * lily/part-combine-engraver.cc (process_music):
1855 Use solo-{one,two}-event iso. solo-[12]-event.
1857 * ly/declarations-init.ly (partCombineListener): add Timing as
1860 * flower/std-string.cc (string_copy): use copy ()
1862 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1864 2006-08-24 Graham Percival <gpermus@gmail.com>
1866 * Documentation/user/changing-defaults.itely, global.itely,
1867 lilypond-book.itely, page.itely: minor changes from mailist.
1869 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1871 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1874 * scm/define-context-properties.scm
1875 (translator-property-description): robustness: detect type errors
1876 in property definitions.
1878 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1879 after getting it from SCM.
1881 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1884 * lily/include/performer.hh (class Performer): strip get_tempo()
1887 * lily/midi-def.cc: strip file.
1889 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1891 * lily/include/context-def.hh (struct Context_def): use
1892 VIRTUAL_COPY_CONSTRUCTOR().
1894 * lily/source-file.cc: smobification.
1896 * lily/include/source-file.hh (class Source_file): smobify
1897 Source_file. Trim redundant members.
1899 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1900 clones after creation. This plugs a huge memory leak.
1902 * python/convertrules.py (FatalConversionError.sub_tempo):
1903 complete rule for \midi{ \tempo }
1905 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1907 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1909 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1911 * input/regression/optimal-page-breaking-hstretch.ly: test for
1912 ragged-last-bottom also
1914 * lily/paper-column-engraver.cc (finalize): make the end of a score
1915 breakable by default. This is to balance out a change in behaviour
1916 of the page-turn-breaker which no longer makes the end of a score
1919 * lily/paper-book.cc (pages): set the systems_ once the pages are
1922 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1923 Page_breaking interface.
1925 * lily/page-breaking.cc (class Page_breaking): make the interface
1926 more consistent and provide abstractions for dealing with
1929 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1930 algorithm. Use the new interface to Page_breaking.
1932 * lily/page-spacing.cc: better support for ragged-bottom and
1935 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1937 * python/convertrules.py (conv): warning on \tempo{}
1939 * ly/performer-init.ly: set tempoWholesPerMinute.
1941 * ly/midi-init.ly: remove \midi
1943 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1946 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1947 tempoUnitDuration for determining what to print.
1949 * lily/lyric-extender.cc: typo.
1951 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1953 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1956 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1958 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1959 eps-pad-boxes is set.
1961 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1963 * THANKS: update sponsors.
1965 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1967 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1969 * input/regression/tie-chord-untied.ly: new file.
1971 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1973 * scm/define-music-properties.scm (all-music-properties): add
1976 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1978 (headertext_nopics): sanitize no-examples text.
1980 * scm/page.scm (make-page-stencil): don't rely on extents of
1981 page-stencil. This fixes spurious space around .EPS files produced
1982 with the EPS backend.
1984 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1986 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1988 * lily/hara-kiri-engraver.cc (process_music): remember
1989 keepAliveInterfaces after processing \set
1991 * lily/lyric-extender.cc (print): support left/right-padding for
1994 * scm/documentation-generate.scm (string-append): revert lilypond/
1997 2006-08-20 Graham Percival <gpermus@gmail.com>
1999 * Documentation/user/lilypond.tely: clarification to
2000 license presentation (not to actual license).
2002 * Documentation/user/basic-notation.itely,
2003 instrument-notation.itely: minor changes.
2005 * input/ {regression, test}/+.ly: clarification to
2006 text (you can click on examples). Thanks, Mats!
2008 * input/manual/bar-lines.ly: adds ||: repeats.
2010 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2012 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2014 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2016 * Documentation/user/lilypond.tely: strip lilypond/ from info
2017 links, rename to category LilyPond
2019 * lily/pango-font.cc (description_string): new function.
2021 * VERSION: release 2.9.15
2023 * lily/spacing-engraver.cc (stop_translation_timestep): use
2024 Dscho's fix for spacing spanner.
2026 * scm/define-music-types.scm (music-descriptions): use
2027 apply-output-event for ApplyOutputEvent
2029 * lily/output-property-engraver.cc (listen_apply_output): rename
2030 from listen_layout_instruction.
2032 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2035 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2037 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2038 commandline args with contains, split by \n.
2040 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2041 write snippet-names file, call with -dread-file-list. Fixes
2042 command limitations on 64-bit systems.
2044 * input/regression/stencil-color-rotation.ly: new file.
2046 * lily/include/translator.hh (struct Acknowledge_information):
2047 revert: don't use Protected_scm in global objects, as GUILE can't
2048 handle gc_unprotect from automated destructors on MacOS X.
2050 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2051 color, not the original stencil. Fixes combinations of
2052 color/transparency/rotation.
2054 * scripts/lilypond-book.py (main): add --formats=eps for
2057 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2058 crash if spacing_ is nonexistent.
2060 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2062 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2063 \catcode`\@=12 in the LaTeX output.
2065 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2067 * scm/define-music-types.scm (music-descriptions):
2068 use sustain-event iso. sustain-pedal-event.
2070 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2072 * scripts/convert-ly.py: honour the -n command-line switch
2074 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2076 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2077 break specification.
2079 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2081 * Documentation/user: convert-ly the user manual
2083 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2085 * stepmake/aclocal.m4: version check patch (thanks MWD)
2087 * ly/music-functions-init.ly: robustness. Don't crash if
2088 currentBarNumber is not a number.
2090 * VERSION (PATCH_LEVEL): bump.
2092 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2094 * stepmake/aclocal.m4: better version check; handle fooX.Y
2097 * ly/performer-init.ly: instrument name fixup.
2099 * input/manual/chord-names-jazz.ly (banterProperties):
2100 instrumentName update
2102 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2104 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2106 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2107 function. Use hash tables to check membership.
2109 * lily/general-scheme.cc (LY_DEFINE): new function.
2111 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2113 * lily/include/translator.hh (struct Acknowledge_information): add
2116 * ly/music-functions-init.ly: change name to BreathingEvent
2118 * input/regression/*.ly: apply it.
2120 * python/convertrules.py (conv): better instrumentName conversion
2123 * scm/define-music-types.scm (music-descriptions): add
2124 line-break-event to LineBreakEvent music
2126 * lily/music.cc (to_event): don't crash if music type not set.
2128 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2131 * lily/spacing-engraver.cc (stop_translation_timestep): set
2132 spacing for proportional notation too.
2134 * scm/translation-functions.scm (format-bass-figure): inspect
2137 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2139 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2141 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2143 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2145 * scm/layout-page-layout.scm (make-page-from-systems): new function
2146 (optimal-page-breaks): use the new page-breaking calling convention
2148 * scm/define-context-properties.scm (all-user-translation-properties):
2151 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2152 revokePageTurns functionality. If there is a special barline within
2153 the breakable region, break there instead of at the end of the region.
2155 * lily/paper-book.cc (pages): use the new page-breaking calling
2158 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2160 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2162 * scripts/lilypond-book.py: insert \sourcefileline command in
2163 output, so lilypond error messages refer to the spot in the
2164 original .lytex / .itely sourcefile.
2166 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2168 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2169 space to next column for distance to fixed col.
2171 * VERSION (PACKAGE_NAME): release 2.9.14
2173 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2176 * lily/accidental-engraver.cc (process_acknowledged): don't create
2177 accidental for trill span event. This fixes spurious accidentals
2180 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2182 * scm/define-grob-properties.scm (all-user-grob-properties):
2183 Clarify documentation of side-axis and direction. Thanks to Paul
2184 for the inspiration.
2186 * lily/bar-line.cc: Add documentation for "||:" also in the
2187 interface documentation.
2189 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2191 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2193 * lily/paper-column.cc (set_system): new function.
2195 * lily/spacing-engraver.cc (stop_translation_timestep): store
2196 SpacingSpanner refs in Paper_column.
2198 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2199 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2201 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2203 * lily/beam-engraver.cc (listen_beam): add method for
2204 Grace_beam_engraver too.
2206 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2208 * python/convertrules.py: Fix indentation bug that broke
2209 conversion of files older than 1.3.117.
2210 Fix escape error in the description for 2.9.6.
2212 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2214 * lily/*-engraver.cc: convert all try_music functions to listen_*
2217 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2218 enums to represent pedal types, and calculate more data statically.
2220 * scm/part-combiner.scm (recording-group-emulate): create a
2221 softcoded substitute for recording-group-engraver.cc.
2223 * lily/music.cc: make a common transpose function for events and
2226 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2227 ManualMelismaEvent, and obsoletes Melisma_translator.
2229 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2231 * input/test/instrument-name-align.ly: update version.
2233 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2235 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2236 Doc the --pdf flag to lilypond-book.
2238 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2240 * Documentation/topdocs/NEWS.tely (Top): add description.
2242 * input/regression/tuplet-full-length-note.ly: add file.
2244 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2245 always store axis group.
2247 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2249 * input/regression/instrument-switch.ly: new file.
2251 * lily/instrument-switch-engraver.cc (process_music): new file.
2253 * ly/engraver-init.ly: add Instrument_switch_engraver
2255 * ly/music-functions-init.ly: \instrumentSwitch
2257 * scm/define-context-properties.scm
2258 (all-user-translation-properties): add instrumentCueName
2260 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2262 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2264 * ly/music-functions-init.ly: music function \transposition.
2266 * lily/parser.yy (command_element): softcode \transposition.
2268 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2269 (process_music): oops.
2271 * lily/instrument-name-engraver.cc (start_spanner): new
2272 function. Create spanner when property changes.
2273 (stop_spanner): new function.
2275 * python/convertrules.py (conv): add rule.
2277 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2278 shortInstrumentName iso. instr.
2280 * scm/output-ps.scm (dashed-line): add phase argument to
2283 * lily/bar-line.cc (dashed_bar_line): new function.
2284 (compound_barline): support \bar "dashed".
2286 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2287 --output=DIR to DIR/BASE if it is a dir.
2289 * flower/file-name.cc (file_part): new function
2290 (dir_part): new function
2292 * lily/lily-parser-scheme.cc (LY_DEFINE):
2294 * DEDICATION: update
2296 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2298 * lily/instrument-name-engraver.cc: formatting.
2300 * python/convertrules.py (conv): bugfix for \epsfile.
2302 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2306 * lily/gourlay-breaking.cc: Oops, these should have been included
2309 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2311 * scripts/*.py (program_name): cleanup relocation snippets.
2313 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2315 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2317 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2318 page-breakable by default
2320 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2321 correctly calculated for a single-system page
2323 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2324 bigger than the second number
2326 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2327 acknowledge that we aren't satisfying constraints)
2329 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2332 * lily/grob.cc (pure_height): add minimum-Y-extent
2334 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2337 * lily/constrained-breaking.cc: convert code to use new Matrix class
2338 (get_best_solution): new function
2340 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2341 is a page with no systems
2343 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2345 * VERSION (PACKAGE_NAME): release 2.9.13
2347 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2350 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2352 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2354 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2357 * scm/define-grob-properties.scm (all-user-grob-properties):
2358 remove grace-space-factor.
2360 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2361 grace-spacing-interface
2362 (spacing-options-interface): add.
2364 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2366 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2368 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2369 GraceSpacing object.
2371 * lily/note-spacing.cc: fix prop list formatting
2373 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2374 beaming for grace notes too.
2376 * input/regression/spacing-grace.ly: update.
2378 * lily/grace-spacing-engraver.cc: new file.
2380 * lily/spacing-spanner.cc: add strict-grace-spacing.
2382 2006-07-20 Graham Percival <gpermus@gmail.com>
2384 * lily/parser.yy: compile fix.
2386 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2388 * scm/define-grobs.scm (all-grob-descriptions): typo.
2390 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2391 .eps extension from includegraphics.
2393 * scripts/lilypond-book.py (main): add support for --pdf.
2395 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2396 callback to compute common shortest duration.
2397 (set_springs): typo.
2399 * scm/define-grob-properties.scm (all-user-grob-properties): add
2400 strict-grace-spacing.
2402 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2403 support float_grace_columns_.
2405 * lily/spacing-options.cc (init_from_grob): new file.
2407 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2409 * input/regression/spacing-loose-grace.ly: new file.
2411 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2413 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2414 tupletFullLengthNote too. Choose right bound depending on value.
2416 * input/regression/tuplet-full-length-note.ly: new file.
2418 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2420 * lily/*-performer.cc: Converted try_music to listen_*
2422 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2423 as a stream-event internally. Introduce event_cause (), deprecate
2426 * scm/define-music-types.scm: Removed BusyPlayingEvent
2428 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2430 * Documentation/user/advanced-notation.itely (Font selection):
2431 Document how to get a list of available fonts using 'lilypond
2432 -dshow-available-fonts blabla'.
2434 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2436 * GNUmakefile.in: filter lily-XXX.pdf files.
2438 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2440 * scm/define-grob-properties.scm (all-internal-grob-properties):
2441 remove delta-pitch. Use delta-position everywhere.
2443 * scm/output-lib.scm (fall::print): use new order.
2445 * scm/output-ps.scm (path): reorder arguments.
2447 * scm/output-svg.scm (path): support for path primitive.
2449 * input/regression/bend-after.ly: new file.
2451 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2452 recipe for eps -> pdf conversion.
2454 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2456 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2459 2006-07-19 Graham Percival <gpermus@gmail.com>
2461 * input/manual/screech-boink.ly: moved to here.
2463 * input/screech-boink.ly: deleted.
2465 * scm/define-grob-properties.scm: clarify doc string.
2467 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2469 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2471 * scm/output-ps.scm (path): define path.
2473 * scm/define-stencil-commands.scm
2474 (ly:register-stencil-expression): add path.
2476 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2478 * ly/engraver-init.ly: add Fall_engraver
2480 * lily/parser.yy (music_function_event): allow musicfunction
2481 without music arg as music_function_event.
2483 * lily/grob-scheme.cc (LY_DEFINE):
2484 ly:grob-robust-relative-extent. New function.
2486 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2488 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2490 * scm/output-lib.scm (fall::print): new function
2492 * lily/fall-engraver.cc (stop_fall): new file.
2494 * ly/music-functions-init.ly: alphabetise.
2496 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2499 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2501 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2503 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2506 * lily/translator-group.cc (connect_to_context): non const error message.
2508 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2510 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2513 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2515 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2517 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2520 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2522 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2524 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2526 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2528 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2530 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2532 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2534 * scm/layout-page-layout.scm: Define module, tidy code, use more
2535 functions iso. a single big one.
2537 * scm/layout-page-dump.scm: move page dump functions used in two
2538 pass spacing to this file. Define module.
2540 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2543 * ly/paper-defaults.ly: use module layout-page-layout.
2545 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2547 * lily/music.cc: Revised MusicEvent event class. It now contains
2548 event data directly instead of encapsulating it in music. The
2549 previously used class is renamed to OldMusicEvent.
2551 * lily/stream-event.cc: Stream events are now probs.
2553 * lily/translator-group.cc, lily/translator.cc: Translators can
2554 now listen directly to stream events, by using macros
2555 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2557 * lily/arpeggio-engraver.cc: Converted to use new event system
2559 * THANKS: Corrected spelling mistake.
2561 2006-07-12 Graham Percival <gpermus@gmail.com>
2563 * Documentation/user/SConscript, make/lilypond-vars.make,
2564 input/GNUmakefile: doc build looks in input/manual instead
2567 * input/manual/ GNUmakefile, SConscript: build files for
2570 * input/test/ various: some files moved to input/manual/
2572 * Documentation/user/basic-notation.itely: small updates;
2573 thanks Kieren and Charles!
2575 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2577 * VERSION (PACKAGE_NAME): release 2.9.11
2579 * Documentation/topdocs/NEWS.tely (Top): update prop value
2581 * Documentation/user/basic-notation.itely (Tuplets): new property
2584 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2586 * python/convertrules.py (conv): tweaks.
2588 * VERSION (PATCH_LEVEL): bump version.
2590 * python/convertrules.py (conv): add rule for
2591 tupletNumberFormatFunction.
2593 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2594 tupletNumberFormatFunction.
2596 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2597 text through 'text callback.
2599 * lily/time-scaled-music-iterator.cc (construct_children): copy
2600 tweaks generated events.
2602 * scm/define-context-properties.scm
2603 (all-user-translation-properties): remove tupletNumberFormatFunction
2605 * lily/tuplet-engraver.cc (process_music): don't read
2606 tupletNumberFormatFunction
2608 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2611 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2613 * lily/global-context-scheme.cc: Separated ly:run-translator into
2616 * lily/score-engraver.cc, lily/score-performer.cc,
2617 scm/define-context-properties.scm: Make paper/midi output
2618 accessable as a context property.
2620 * lily/score-translator.cc, lily/score-context.cc: Removed.
2622 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2624 * scm/ps-to-png.scm (Module):
2625 * scm/framework-tex.scm (Module):
2626 * scm/framework-ps.scm (Module):
2627 * scm/backend-library.scm (Module):
2628 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2629 "dDEVICEHEIGHTPOINTS".
2631 2006-07-04 Graham Percival <gpermus@gmail.com>
2633 * Documentation/user/ various: general improvements to
2634 "working with lilypond files" section.
2636 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2638 * lily/sequential-iterator.cc: Change the default get_music_list
2639 to read elements-callback music property
2641 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2642 processing of multimeasure rests. Softcoded
2643 sequential-music-iterator.
2645 * lily/sequential-music-iterator.cc: Removed.
2647 2006-06-28 Graham Percival <gpermus@gmail.com>
2649 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2651 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2653 * lily/parser.yy: Wrap non-post-events in EventChords before
2654 assigning them to identifiers.
2656 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2658 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2659 gives correct vertical placement of \bar ":" in all staff
2660 sizes. Thanks Martial!
2662 2006-06-26 Graham Percival <gpermus@gmail.com>
2664 * Documentation/user/invoking.itely : minor update from mailist.
2666 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2668 * lily/ various: Introduce stream events of types Prepare,
2669 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2670 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2672 * lily/global-context*.cc: Time is now -inf before iteration
2675 * lily/include/context.hh: Removed unique_, init_
2677 * Documentation/topdocs/NEWS: Make the feathered beam example
2678 avoid triggering a bug.
2680 2006-06-24 Graham Percival <gpermus@gmail.com>
2682 * Documentation/user/ various: small additions from mailist.
2684 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2686 * ly/performer-init.ly: Add some missing links in the context
2687 hierarchy for MIDI output. There are probably some more missing!
2689 2006-06-21 Graham Percival <gpermus@gmail.com>
2691 * Documentation/user/ various: minor spelling fixes;
2692 thanks Dave Luttinen!
2694 * Documentation/user/ various: small clarifications;
2695 thanks Anthony Youngman!
2697 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2699 * po/fr.po: add \n appropriately.
2701 * lily/lexer.ll: remove ? from version-seen?
2703 2006-06-19 John Mandereau <john.mandereau@free.fr>
2705 * po/fr.po; update translation, by Jean-Charles Malahieude and
2708 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2710 * THANKS: add Markus Schneider.
2712 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2713 Staff_symbol_engraver
2715 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2716 replace staff_engraver
2718 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2721 * lily/staff-collecting-engraver.cc
2722 (acknowledge_end_staff_symbol): new function
2724 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2726 * lily/staff-collecting-engraver.cc
2727 (acknowledge_end_staff_symbol): new function.
2729 * lily/main.cc: switch on relocation by default.
2731 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2733 * lily/spacing-spanner.cc (musical_column_spacing): set
2734 compound_fixed_note_space to 0.0. Document why.
2736 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2737 range of inverse_hooke_
2738 (Simple_spacer): init completely.
2740 (get_line_configuration): don't use cols.resize(); it introduces
2743 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2745 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2747 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2748 try. Divide by beatlength.
2750 * input/regression/beaming-ternary-metrum.ly: update doc.
2751 add beatLength hack.
2753 * scm/music-functions.scm (make-time-signature-set): add
2754 standard-beat-grouping.
2756 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2758 * input/regression/tie-whole.ly: new file.
2760 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2761 cross center of note head in case of invisible stem.
2763 2006-06-16 Graham Percival <gpermus@gmail.com>
2765 * Documentation/user/ various: small fixes from mailist.
2767 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2769 * lily/breathing-sign.cc (offset_callback): idem.
2771 * lily/align-interface.cc (align_to_fixed_distance): remove
2774 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2777 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2779 * VERSION (PACKAGE_NAME): release 2.9.9
2781 * ly/lilypond-book-preamble.ly: add \version
2783 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2785 * scripts/lilypond-book.py (PREAMBLE_LY): include
2786 lilypond-book-preamble.ly
2788 * lily/stem.cc (get_beaming): return max of 0 and
2789 scm_ilength. Fixes slurring from/to beams.
2791 * ly/lilypond-book-preamble.ly: new file.
2793 * lily/slur.cc: add inspect-index feature.
2795 2006-06-13 Graham Percival <gpermus@gmail.com>
2797 * Documentation/user/tutorial.itely: trivial fix.
2799 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2801 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2802 all non-event music in the parser via MAKE_SYNTAX.
2804 * lily/parser-scheme.cc: Add ly:parser-error function
2806 * scm/paper.scm: fix typo
2808 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2812 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2815 * buildscripts/output-distance.py (test_compare_signatures):
2817 (read_signature_file): use new signature format.
2819 * scm/stencil.scm (write-system-signature): simpler signature
2822 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2825 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2826 stem_end_position, but estimate instead.
2828 * lily/tuplet-bracket.cc (calc_positions): look at
2829 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2830 brackets narrower than beams.
2832 * lily/lexer.ll: set version-seen? even if version is
2835 * lily/rest.cc (y_offset_callback): bugfix: decide position
2836 override based on scm_is_number(). Fixes \rest on center staff
2839 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2840 patterns for 16th triplets.
2842 2006-06-10 Graham Percival <gpermus@gmail.com>
2844 * Documentation/user/ page.itely, global.itely: editing
2847 * Documentation/user/ various: findex -> funindex.
2849 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2851 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2852 insert extra tuplet events.
2854 2006-06-10 Graham Percival <gpermus@gmail.com>
2856 * Documentation/user/programming-interfaces.itely: add
2859 * python/convertrules.py: add annotatefoo -> annotate-foo
2862 * Documentation/user/global.itely: start editing.
2864 * Documentation/user/page.itely: major editing, new spacing
2867 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2869 * scm/define-markup-commands.scm (wordwrap-markups): use
2870 output-def 'line-width if undefined.
2872 * HACKING: trim outdated info.
2874 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2876 * scm/define-grobs.scm (all-grob-descriptions): Add
2877 line-spanner-interface to all grobs that already have
2878 text-spanner-interface or dynamic-text-spanner-interface
2880 * scm/page.scm: Rename annotate{headers,systems,page}->
2883 * input/regression/page-spacing.ly,
2884 input/regression/page-layout-manual-position.ly: idem
2886 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2888 * lily/line-spanner.cc: cleanup property list.
2890 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2891 generator expressions (2.3 compat).
2893 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2895 * lily/vertical-align-engraver.cc: Make sure that the
2896 align{Above,Below}Context properties are included in the automatic
2899 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2901 * scm/paper-system.scm (paper-system-annotate): also annotate the
2902 estimated pure-Y-extent
2904 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2906 * lily/system.cc (break_into_pieces): set the estimated height
2907 of each child system
2909 * lily/stem.cc (pure_height): new pure-Y-extent callback
2911 * lily/staff-symbol-referencer.cc (callback): don't destroy
2912 the staff-position property
2914 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2915 consider_suicide into two functions
2917 * lily/constrained-breaking.cc (resize): use the new pure
2918 callbacks to estimate the height of a system
2920 * lily/axis-group-interface.cc (pure_group_height): new
2921 side-effect-free VerticalAxisGroup height-callback
2923 * lily/align-interface.cc (get_extents_aligned_translates):
2924 split align_elements_to_extents into two functions
2925 (get_pure_child_y_translation): new function
2927 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2929 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2931 * lily/paper-score.cc: cache break_indices and columns
2933 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2935 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2937 * lily/font-config.cc (init_fontconfig): do the init if
2938 cache_file, but don't look at cache_file.
2940 * input/regression/quote-tie.ly: new file.
2942 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2943 to Head_event_tuple, so we deal gracefully with ties on
2946 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2949 2006-06-08 Graham Percival <gpermus@gmail.com>
2951 * input/test/ smart-transpose.ly, reverse-music.ly:
2952 \applyMusic to music functions update, thanks Michael!
2954 2006-06-07 Graham Percival <gpermus@gmail.com>
2956 * input/test/ add-staccato.ly, add-text-script.ly,
2957 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2958 music functions update, thanks to Michael Meixner.
2960 * Documentation/user/music-glossary.tely: small fix
2963 * Documentation/user/ various: minor additions from mailist.
2965 * Documentation/user/lilypond.tely, basic-notation.itely:
2966 small test of @funindex. (works here)
2968 * input/test/font-table.ly: reduce size to partially
2969 de-ugly version in manual.
2971 * Documentation/user/page.itely: new file (split former
2972 "global issues" into "page settings" and "non-musical
2975 * Documentation/user/ various: fix @ref{}s to match
2976 new chapter names (above).
2978 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2980 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2982 2006-06-06 Graham Percival <gpermus@gmail.com>
2984 * Documentation/user/advanced-notation.itely: add example
2985 for segno/coda on barline.
2987 * tex/texinfo.tex: merge from upstream.
2989 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2991 * scripts/lilypond-book.py (process_snippets): Argument fix.
2994 * buildscripts/builder.py:
2997 * Documentation/user/SConscript: More SCons fixes.
2999 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
3001 * lily/font-config.cc (init_fontconfig): Only initialize if
3002 global cache_file is found.
3004 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3006 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3009 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3011 * VERSION (PACKAGE_NAME): release 2.9.8
3013 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3014 function. Delay ledger modifying ledgered grobs to
3015 stop_translation_timestep(), to ensure that we're ledgering
3016 according to the new spanner.
3017 (acknowledge_staff_symbol): don't check for non-NULL
3018 staff_sym->get_bound()
3020 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3023 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3026 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3027 directly from srcdir/stepmake/aclocal.m4
3029 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3032 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3034 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3036 * lily/simple-spacer.cc (get_line_configuration): add
3037 keep-inside-line rods
3038 (struct Column_desc): add constructor
3039 (struct Rod_desc): add constructor
3040 (get_line_forces): check for forced page breaks here too
3042 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3043 support/elements cycles between InstrumentNames and AxisGroups
3045 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3047 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3049 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3050 make-txt-files target.
3052 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3053 make-txt-files target.
3055 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3057 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3060 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3062 * Documentation/user/instrument-notation.itely,
3063 input/regression/breathing-sign-ancient.ly,
3064 input/test/divisiones.ly: Removed redundant property settings for
3067 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3068 fix lyrics alignment problems. They are implemented now as scheme
3069 functions that add the appropriate unicode char to the first lyric
3070 event rather than adding a separate lyric event. Minor edit of
3073 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3075 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3076 pollute src dir with built .txt files, but install directly from
3077 Documentation/topdocs/out/
3079 * buildscripts/output-distance.py
3080 (ComparisonData.create_html_result_page): put version/directories
3083 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3086 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3087 Patch by Karl Hammar
3089 * buildscripts/readlink.py: add file.
3090 Patch by Karl Hammar
3092 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3094 * lily/tuplet-number.cc (print): prevent stencil from being
3097 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3099 * scm/stencil.scm (write-system-signature): explicitly
3100 -well, superfluously- close output port.
3102 * buildscripts/output-distance.py (main): oops. Add extra argument.
3104 2006-06-05 Graham Percival <gpermus@gmail.com>
3106 * Documentation/user/music-glossary.tely: clarified example
3107 from Francisco Vila, thanks!
3109 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3111 * input/regression/spacing-section.ly: new file.
3113 * lily/input.cc (programming_error): new function.
3115 * lily/spacing-engraver.cc (try_music): new function. Accept
3116 spacing-section-event
3118 * lily/spacing-spanner.cc (set_springs): take slices of all
3119 columns for spacing.
3121 * lily/include/paper-column.hh (class Paper_column): add
3122 Paper_column::compare.
3124 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3126 * scm/define-music-types.scm (music-descriptions): add
3129 * lily/music-iterator.cc (report_event): use programming_error for
3130 sending non-event error.
3132 * lily/input.cc (programming_error): new function
3134 * buildscripts/output-distance.py (main): use compare-XXX for
3136 (main): --threshold option, default at 0.30
3138 * output-distance.py (main): add --threshold option.
3140 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3142 * scm/paper-system.scm (paper-system-annotate): fix problem when
3143 annotating an empty system
3145 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3147 * GNUmakefile.in: reinstate old web tar/copying.
3149 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3151 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3152 nothing changes. (Erik S)
3154 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3157 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3159 * scm/define-markup-commands.scm (whiteout): do not force
3160 foreground color of argument markup to black.
3162 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3163 the left of the arrow, instead of below the arrow name, so that,
3164 when two little arrows are vertically stacked, their dimensions
3165 and name should not overlap. Add a color key parameter.
3167 * scm/paper-system.scm (paper-system-annotate): Annotate
3168 next-space+next-padding instead of next-space. Annotate space
3169 between next-padding and next-space+padding, respectively, and
3170 following system extent and refpoint-Y-extent. Use colors.
3172 * scm/page.scm (annotate-page): translate annotations slightly to
3175 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3177 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3178 fix for x-staff slurs. Thanks Joe!
3180 * buildscripts/output-distance.py
3181 (SystemLink.output_expression_change_count): keep track of changed
3182 details, and dump in details html page.
3184 * input/regression/figured-bass-staff.ly: add note about setting
3185 properties in Staff context.
3187 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3188 add slurs and ties to support too.
3190 * buildscripts/output-distance.py (main): set dest_dir
3191 argument. Add --max-count option.
3193 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3195 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3196 shortcuts for special unicode chars that are useful in chant
3197 notation. Revised exisiting and added new comments.
3199 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3201 * make/mutopia-rules.make: remove duplicate recipe.
3203 2006-06-02 Werner Lemberg <wl@gnu.org>
3205 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3206 Add support for U+0132 (IJ) and U+0133 (ij).
3208 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3210 * buildscripts/output-distance.py (FileLink): new class. collect
3211 info systems from one .ly file.
3212 (FileLink.link_files_for_html): further tweaks.
3214 2006-06-02 Graham Percival <gpermus@gmail.com>
3216 * tex/texinfo.tex: partial fix for @funindex.
3218 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3221 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3223 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3225 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3226 @example too. Backportme.
3228 2006-06-02 Graham Percival <gpermus@gmail.com>
3230 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3231 from Werner Lemberg.
3233 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3235 * Documentation/user/music-glossary.tely: additional spanish
3236 updates and a lyrics fix in an example.
3238 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3240 * scm/define-grob-properties.scm: Previous patch contained
3241 spurious line from another patch not yet committed. Fixed.
3243 * scm/define-grob-properties.scm: Add missing doc strings for
3246 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3248 * buildscripts/output-distance.py
3249 (ComparisonData.write_text_result_page): separate the scores, sort
3252 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3255 * buildscripts/output-distance.py (me_path): use argv[0] for
3257 (ComparisonData.img_cell): use colored borders.
3259 * scm/stencil.scm (write-system-signature): escape newlines too.
3260 (write-system-signature): use (1,-1) interval for empty interval
3262 2006-01-01 Graham Percival <gpermus@gmail.com>
3264 * Documentation/user/music-glossary.tely: Spanish updates
3265 from Francisco Vila.
3267 * Documentation/user/lilypond-book.itely: addition from
3270 * Documentation/user/ various: edits, small additions
3273 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3275 * GNUmakefile.in (tree-lib-prefix-current):
3276 (tree-share-prefix-current): Use version number in tree, add
3279 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3281 * GNUmakefile.in: write VERSION, again.
3283 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3284 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3286 * stepmake/aclocal.m4: robuster version detection.
3288 * buildscripts/output-distance.py
3289 (ComparisonData.create_html_result_page): copy only if file
3290 exists, fixup src paths.
3292 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3294 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3296 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3297 Another datarootdir reto.
3299 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3300 available. This should be moved to postinstall-lilypond-doc.
3302 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3304 * GNUmakefile.in: simplify local-WWW-post.
3305 remove -type l from find.
3307 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3308 fixes. Don't follow symlinks.
3309 (ComparisonData.create_html_result_page): remove previous results.
3310 insert ../python in path.
3312 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3314 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3316 * config.make.in (datadir): Add datarootdir to silence autoconf.
3318 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3320 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3322 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3324 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3325 slash beams too wide.
3327 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3329 * VERSION: release 2.9.7
3331 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3333 * lily/relocate.cc (read_relocation_dir): Do not blindly
3336 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3338 * lily/parser.yy: replace THIS by PARSER
3340 * Documentation/index.html.in: add link to test-results.html page.
3342 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3344 * scm/translation-functions.scm (format-bass-figure): translate
3345 digits over 10 to the left
3347 * scm/define-markup-commands.scm (translate-scaled): new markup.
3349 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3352 * ly/engraver-init.ly: add Figured_bass_engraver
3354 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3356 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3358 * lily/score-engraver.cc (announce_grob): only note START announces.
3360 * lily/include/engraver-group.hh (Translator_group):
3361 acknowledge_hash_table_ is now drul.
3363 * lily/engraver.cc (announce_end_grob): new method.
3365 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3367 * lily/translator-dispatch-list.cc (create): take start_end argument.
3369 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3370 acknowledge_static_array_ to drul
3372 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3374 * scm/define-grob-interfaces.scm
3375 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3377 * scm/define-grobs.scm (all-grob-descriptions): add
3378 BassFigureAlignmentPositioning
3380 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3381 number stays up to date. Backportme.
3383 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3385 * Documentation/user/basic-notation.itely (Bar lines): Document
3388 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3390 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3392 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3393 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3396 * Resurrect `scons lily' build.
3398 * SConstruct (symlink_tree): Bugfix: link
3399 music-drawing-routines.ps to file iso directory.
3401 * lily/SConscript: Remove kpath-guile from LIBS.
3403 * SConstruct (libdir_package_version): Typo.
3404 (configure): Comment-out fontforge for lack of fontforge.pc .
3405 Also add libdir* to environment.
3407 2006-05-30 Graham Percival <gpermus@gmail.com>
3409 * Documentation/user/ various: minor additions from mailist and
3412 2006-05-30 Paco <fravd@ya.com>
3414 * Documentation/user/music-glossary.tely: numerous corrections and
3415 some new translations.
3417 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3421 * buildscripts/output-distance.py
3422 (ComparisonData.create_html_result_page): new routine: summarise
3423 results in HTML page with images.
3424 (ComparisonData.create_text_result_page): create summary text files too.
3426 * GNUmakefile.in (web-ext): package .signature files too. They
3429 * scm/stencil.scm (write-system-signature): typo.
3431 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3433 * scm/stencil.scm (write-system-signature): better escaping.
3434 only write signature for music systems, not for markup systems.
3436 * scm/framework-ps.scm (output-framework): dump-signatures support
3439 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3441 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3442 for -dno-point-and-click
3444 * lily/grob.cc (get_print_stencil): don't read
3445 point_and_click_global to determine whether to set grob-cause.
3447 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3449 * buildscripts/output-distance.py (main): new function.
3450 (ComparisonData): new class.
3452 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3453 careful with generating new LedgerLineSpanners.
3455 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3457 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3458 context. This fixes double ledger lines in output.
3460 * lily/system.cc (get_paper_system): remove 3 layer limit.
3462 * buildscripts/output-distance.py (SystemLink.distance): new
3463 file. Compare signatures.
3465 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3467 * lily/grob-array.cc (remove_duplicates): rename from
3468 uniq(). Sort before calling uniq() so it actually works.
3470 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3472 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3473 \version from lilypond file snippet.
3474 (Lilypond_file_snippet.ly): oops. typo.
3475 (find_toplevel_snippets): urgh. again.
3477 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3478 prevent duplicated broken items in output.
3480 * scm/framework-eps.scm (output-classic-framework): only dump if
3481 dump-signatures is set.
3483 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3485 * scm/stencil.scm (write-system-signature): new routine: write
3486 python parseable signature of a separate paper system.
3489 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3491 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3495 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3497 * translator-group.cc: send music events to engravers in
3498 non-bottom contexts.
3500 * tuplet-engraver.cc: process tuplet brackets in correct order.
3502 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3504 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3505 arg 2 might point us to a new binary (patch by Karl Hammar)
3507 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3509 * VERSION (PACKAGE_NAME): release 2.9.6
3511 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3513 * Documentation/user/*.itely: 2nd
3514 attempt: replace funindex -> findex globally.
3516 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3518 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3519 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3521 * scm/define-music-display-methods.scm: display methods for
3522 breaks. Fix \applyOutput.
3524 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3526 * Documentation/user/macros.itexi: comment out funindex expansion.
3528 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3531 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3532 Karl Hammar. Backportme.
3534 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3536 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3538 * Documentation/user/programming-interface.itely (Running a
3539 function on all layout objects): idem.
3541 * Documentation/user/introduction.itely (Automated engraving):
3542 update \applyOutput syntax
3544 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3545 remove debugging hook.
3547 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3550 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3552 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3553 TEXI2DVI_FLAGS to texi2dvi invocation.
3555 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3557 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3558 works. More work is done by iterator now, and engraver has been
3559 very much simplified.
3561 * lily/translator-group.cc: try_music is now invoked through a
3564 * lily/*-iterator.cc: Massive cleanups. Junked
3565 try_music_in_children globally. Renamed try_music to report_event,
3566 and made that method descend to a bottom context automatically.
3568 * lily/event-iterator.cc: New file.
3570 * lily/output-property-iterator.cc,
3571 lily/old-lyric-combine-music-iterator.cc: Removed.
3573 * python/convert-rules.py: Modified the syntax for \applyOutput.
3575 2006-05-23 Graham Percival <gpermus@gmail.com>
3577 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3580 * Documentation/user/ various: stuff that might have helped
3581 to fix the pdf creation, plus some minor doc additions.
3583 * Documentation/user/changing-defaults.itely: remove @b from
3584 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3586 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3588 * lily/beaming-pattern.cc (beamify): deal with negative start
3589 moments for beaming patterns.
3591 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3593 * lily/beaming-info.cc (beamify): new function: read beatLength
3594 and beatGrouping from context.
3596 * input/regression/beam-beat-grouping.ly (Module): new file.
3598 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3600 * lily/beam.cc (get_beam_segments): generate events for
3601 max_connect_ case too.
3602 (get_beam_segments): read Stem::max-beam-connect.
3604 * input/regression/beam-single-stem.ly: new file.
3606 * lily/stem.cc (set_beaming): use #f as signaling value for
3609 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3611 * lily/beam.cc (set_beaming): read clip-edges property.
3612 (calc_direction): don't suicide for single stem.
3614 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3615 argument, remove 1<<15 hack. Remove clip_edges()
3617 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3619 2006-05-21 Graham Percival <gpermus@gmail.com>
3621 * Documentation/user/basic-notation.itely: reorg.
3623 * Documentation/user/ various: minor fixes.
3625 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3627 * lily/stencil-expression.cc (register_stencil_head): opps, append
3628 to cdr of static SCM object.
3630 2006-05-19 Graham Percival <gpermus@gmail.com>
3632 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3633 update framework for command index. DOC WRITERS: use @funindex
3634 instead of @cindex @code{}.
3636 * Documentation/user/ various: replace @cindex @code{} => @funindex
3638 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3640 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3641 case positions is set manually.
3643 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3645 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3648 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3650 * Documentation/user/changing-defaults.itely (Contexts explained):
3651 use absolute dimension for @image.
3653 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3654 out image for illustration too.
3655 ($(outdir)/%.png): add more png <-> eps rules.
3657 2006-05-17 Graham Percival <gpermus@gmail.com>
3659 * Documentation/user/ various: remove trailing whitespace, cosmetic
3660 change to reduce changes produced by diff.
3662 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3664 * lily/main.cc (do_chroot_jail): correctness tweak.
3666 * python/lilylib.py (system): import subprocess in system () only.
3668 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3670 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3671 variable. Backportme.
3673 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3675 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3677 2006-05-17 Werner Lemberg <wl@gnu.org>
3679 * lily/lexer.ll (init_signature_has_table): Add
3680 `scm-scm-music-music'.
3682 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3683 (Generic_prefix_music_scm): Add rule for it.
3685 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3686 `quoted-transposition' property.
3688 * ly/music-functions-init.ly (transposedCueDuring): New function.
3690 * scm/define-music-properties.scm (all-music-properties): Updated.
3692 * Documenation/topdocs/NEWS.itely: Document it.
3694 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3696 * python/lilylib.py (system): move import subprocess to system()
3699 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3701 * VERSION (PATCH_LEVEL): release 2.9.5
3703 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3706 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3708 2006-05-16 Graham Percival <gpermus@gmail.com>
3710 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3712 * Documentation/user/ various: minor fixes.
3714 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3716 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3718 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3720 * Documentation/user/advanced-notation.itely (Instrument names):
3721 Modified obsolete instruction on how to move instrument names away
3722 from the staves. Hmm, at second thought the bug probably has been
3723 solved, so the full bug description should probably be removed.
3725 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3727 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3728 currentCommandColumn.
3730 * lily/hairpin.cc (print): also add padding for non-neighbor
3733 * scm/define-context-properties.scm
3734 (all-user-translation-properties): add hairpinToBarline
3736 * input/regression/hairpin-to-barline.ly: new file.
3738 * lily/context.cc (internal_send_stream_event): thinko fix.
3740 * lily/tie.cc (set_default_control_points): robustness fix.
3742 * python/musicxml.py (Part.interpret): don't complain about
3743 incomplete measures.
3745 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3746 new music if last_event_chord() returned None.
3748 * python/musicxml.py (Part.interpret): skip back over chord notes.
3750 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3752 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3753 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3754 lily/slash-repeat-engraver.cc,
3755 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3756 iterator sends PercentEvents
3758 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3759 rework tuplets: send start/stop events to engraver
3761 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3762 dispatchers event-source and events-below to Context
3764 2006-05-15 Graham Percival <gpermus@gmail.com>
3766 * Documentation/user/README.txt: update info for doc writers.
3768 * Documentation/user/programming-interface.itely: integrate
3769 Nicolas' fixes for chapter rewrite.
3771 * Documentation/user/ various: minor fixes.
3773 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3775 * lily/clef-engraver.cc: cleanup.
3777 * Documentation/user/GNUmakefile: dist context-example.eps too.
3779 * lily/key-engraver.cc (create_key): use
3780 explicitKeySignatureVisibility for cancellation too.
3782 * lily/font-config.cc (init_fontconfig): don't close file if
3785 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3787 * Documentation/topdocs/NEWS.tely: niente and rotation news
3789 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3791 * lily/include/stencil.hh
3792 * lily/stencil.cc (rotate): new function. Makes it possible
3793 to rotate a stencil around a given offset.
3795 * lily/grob.cc (get_print_stencil): add rotation support
3797 * lily/stencil-interpret.cc (interpret_stencil_expression):
3798 add rotation support
3800 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3802 * scm/define-grob-properties.scm: add 'rotation property
3804 * scm/define-markup-commands.scm: add rotate markup command
3806 * scm/output-ps.scm: add rotation support in PostScript backend
3808 * scm/output-svg.scm: add rotation support in SVG backend
3810 2006-05-13 Graham Percival <gpermus@gmail.com>
3812 * Documentation/user/music-glossary.itely: French correction.
3814 * Documentation/user/programming-interface.itely: major
3815 new docs, some reorg, some info from Nicolas.
3817 * Documentation/user/ various: small fixes.
3819 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3821 * Documentation/user/programming-interface.itely (Markup
3822 programmer interface): Remove duplicate text.
3824 2006-05-12 Graham Percival <gpermus@gmail.com>
3826 * Documentation/user/context-example.eps: new file.
3828 * Documentation/user/changing-defaults.itely: set up file to
3831 * Documentation/user/programming-interface.itely: changes
3834 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3836 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3838 2006-05-11 Graham Percival <gpermus@gmail.com>
3840 * Documentation/user/programming-interface.itely: first round of
3841 editing and merging emails from Nicolas.
3843 * Documentation/user/scheme-tutorial: minor edit.
3845 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3847 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3849 (Xml_node.message): use it.
3851 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3852 oops. Add duration argument.
3854 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3856 * lily/paper-column-engraver.cc (make_columns):
3857 * scm/define-grobs.scm: Revert my previous change and set the default
3858 in define-grobs.scm instead.
3860 2006-05-09 Graham Percival <gpermus@gmail.com>
3862 * Documentation/user/changing-defaults.itely: general editing,
3863 info about \set and \override.
3865 * Documentation/user/tweaking.itely, advanced-notation.itely:
3866 fixes from Dave Luttinen, thanks!
3868 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3870 * lily/paper-column-engraver.cc (make_columns): By default, a column
3871 needs to be breakable.
3873 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3875 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3877 (musicxml_time_to_lily): idem
3878 (musicxml_key_to_lily): idem
3879 (instrument_drumtype_dict): dict for supported drumtypes.
3880 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3881 moments and pending mm rests
3882 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3883 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3884 (musicxml_voice_to_lily_voice): add mode change.
3885 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3886 speed and less memory usage (factor 5 to 10).
3887 (convert): write -defs.ly and driver file separately so people
3888 can script their own part extraction.
3890 * python/musicxml.py (minidom_demarshal_node): new function:
3891 separate minidom handling.
3892 (lxml_demarshal_node): new function: support lxml.etree too.
3893 (Xml_node.message): new function: verbose error message, with XML
3894 path to offending node.
3895 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3896 (Part_list.generate_id_instrument_dict): new method: collect
3897 instrument names, to be able to set drum_type.
3898 (Part.interpret): handle underfull measures
3899 (Part.interpret): assign instrument names.
3901 * python/musicexp.py (Output_printer.close): new method
3902 (MusicWrapper.print_ly): new class: support other modes,
3904 (BarCheck.print_ly): new class. Support bar checks, with comments
3905 and fancy barchecks.
3906 (NoteEvent.__init__): also set drum_type for drum notes.
3907 (MultiMeasureRest.lisp_expression): dump mm rests.
3909 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3910 line-break-permission if forbidBreak is not set.
3912 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3914 * scm/define-context-properties.scm:
3915 * scm/define-grob-properties.scm:
3916 * scm/define-grobs.scm:
3917 * scm/define-music-display-methods.scm:
3918 * scm/define-music-properties.scm:
3919 * scm/define-music-types.scm:
3920 * scm/music-functions.scm:
3921 * ly/declarations-init.ly:
3922 * lily/include/constrained-breaking.hh:
3924 * lily/spaceable-grob.cc:
3925 * lily/simple-spacer.cc:
3926 * lily/paper-score.cc:
3927 * lily/paper-column.cc:
3928 * lily/paper-column-engraver.cc:
3930 * lily/gourlay-breaking.cc:
3931 * lily/constrained-breaking.cc:
3932 * python/convertrules.py:
3933 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3934 "page-break-penalty" and "line-break-permission".
3935 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3936 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3938 * lily/bar-engraver.cc:
3939 * lily/beam-engraver.cc:
3940 * lily/forbid-break-engraver.cc:
3941 * lily/ligature-engraver.cc:
3942 * lily/paper-column-engraver.cc:
3943 * lily/percent-repeat-engraver.cc:
3944 * lily/score-engraver.cc:
3945 * lily/score-engraver.hh:
3946 * lily/paper-column-engraver.hh:
3947 Inter-engraver communication regarding line breaks is done through context
3948 properties (Score.forbidBreak) instead of function calls.
3950 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3952 * VERSION (PACKAGE_NAME): release 2.9.4
3954 2006-05-08 Graham Percival <gpermus@gmail.com>
3956 * Documentation/user/working.itely: proofreading from Dave
3959 * Doucmentation/user/README.txt: updated with manual style info.
3961 * Documentation/user/ various: trim linewidth to 78 chars.
3963 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3965 * scm/define-grob-properties.scm (all-internal-grob-properties):
3966 remove chord-tremolo property.
3968 * lily/beam.cc (get_beam_segments): don't use stem position as
3969 base for broken ends.
3971 2006-05-06 Graham Percival <gpermus@gmail.com>
3973 * Documentation/user/putting.itely: proofreading from Dave
3976 * Documentation/user/ various: more reorg and clarifications.
3978 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3980 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3982 * ly/music-functions-init.ly: new function featherDurations
3984 * lily/beam.cc: read grow-direction for feathered beaming.
3986 * Documentation/topdocs/NEWS.tely (Top): typo.
3988 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3990 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3993 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3994 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3995 used by music streams.
3997 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3998 lily/stream-event.cc, lily/stream-event-scheme.cc,
3999 lily/listener.cc, lily/scheme-listener.cc,
4000 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4001 lily/include/stream-event.hh, lily/include/listener.hh,
4002 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4003 Created data structures for music streams.
4005 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4007 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4008 construction of a beam.
4011 * flower/include/std-vector.hh (default_compare): use only one comparison.
4013 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4014 (note-by-number): further attachment fixes.
4016 * scm/lily-library.scm (ordered-cons): new function.
4017 (interval-index): new function
4019 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4021 * lily/note-head.cc (get_stem_attachment): new function.
4023 * scm/define-markup-commands.scm (note-by-number): read 'style
4026 * input/regression/markup-note.ly: show note-head style option.
4028 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4031 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4033 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4035 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4037 * lily/include/constrained-breaking.hh: GCC 4 fix.
4039 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4041 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4042 Replace it with functions get_line_forces and get_line_configuration.
4043 (class Simple_spacer): Make data private.
4044 Rewrite compression algorithm to be faster and simpler.
4046 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4047 * lily/gourlay-breaking.cc (solve):
4048 * lily/constrained_breaking.cc (space_line):
4049 Change it to the new simple-spacer code.
4051 * lily/paper-score.cc (get_paper_systems):
4054 Delay breaking the systems until they are requested.
4055 (find_break_indices):
4056 Use vsize for indices.
4058 Move the "Calculating line breaks" message here.
4060 * lily/system.cc (pre_processing):
4061 Move the "Calculating line breaks" message away from here.
4062 (break_into_pieces):
4063 Allow multiple calls to this function in sequence (with touching-but-
4064 not-overlapping breakpoints).
4066 * lily/constrained-breaking.cc:
4067 Replace most of the get_XXXX functions with get_line_details.
4068 Only calculate the force for each line. Calculate configurations only
4069 for the lines we will actually use.
4070 Replace cols_ with lines_.
4072 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4074 * mf/GNUmakefile (depth): remove FC_FIND.
4076 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4078 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4080 * scm/framework-ps.scm (write-preamble): new function.
4081 (write-preamble): load mac fonts via fondu, even if gs-font-load
4084 2006-05-03 Werner Lemberg <wl@gnu.org>
4086 * mf/GNUmakefile (FC_FIND): Fix typo.
4088 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4090 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4092 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4094 * stepmake/aclocal.m4: run python-config for crosscompiling
4097 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4098 -f png for HTML, TEXINFO formats.
4100 * input/tutorial/lbook-html-test.html: new file.
4102 * lily/include/tie-formatting-problem.hh (class
4103 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4104 [column, direction]. This fixes laissez vibrer ties.
4106 * flower/include/tuple.hh (struct Tuple2): new file.
4108 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4109 $(FCMATCH), only if $(NCSB_DIR) not set.
4111 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4113 * config.make.in (DOCUMENTATION): set FCMATCH.
4115 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4117 2006-05-03 Graham Percival <gpermus@gmail.com>
4119 * Documentation/user/ various: final round of reorg.
4121 * Documentation/user/instrument-notation.itely: some more
4122 fixes from Eduardo, thanks!
4124 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4126 * VERSION (PACKAGE_NAME): release 2.9.3
4128 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4130 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4132 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4134 * scm/define-grob-properties.scm (all-user-grob-properties):
4135 Correct typo, thanks to Eduardo.
4137 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4139 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4141 * buildscripts/lilypond-words.py (F): indent fix.
4143 * input/regression/tie-arpeggio-collision.ly: new file.
4145 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4146 function: store outlines per column rank.
4148 * lily/include/tie-configuration.hh (class Tie_configuration): add
4149 column_ranks_ to specification and configuration, to distinguish
4150 between ties for different heads in arpegiated chords.
4152 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4154 * *.py: more 4 space indents.
4156 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4158 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4160 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4162 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4164 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4166 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4168 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4170 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4172 * python/convertrules.py (conv): indent 4 for python files.
4174 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4176 * Documentation/user/changing-defaults.itely (Creating contexts):
4177 Clarify \new semantics.
4179 2006-04-28 Graham Percival <gpermus@gmail.com>
4181 * Documentation/user/ various: major new sections in the
4182 Learning manual, slight reorg elsewhere.
4184 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4186 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4188 * scm/framework-ps.scm (output-framework): remove PageMedia
4190 2006-04-27 Graham Percival <gpermus@gmail.com>
4192 * Documentation/user/ tweaks.itely, working.itely: new
4193 files, being more advanced "learning manual" chapters.
4195 * Documentation/user/ tutorial, putting, lilypond: reorg.
4197 2006-04-26 Graham Percival <gpermus@gmail.com>
4199 * input/regression/lyric-combine-polyphonic.ly: fixed test
4200 (no more "can't find context `one'" error).
4202 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4204 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4206 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4208 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4210 * lily/relocate.cc (read_relocation_dir): new function.
4212 2006-04-26 Graham Percival <gpermus@gmail.com>
4214 * Documentation/user/instrument-notation.itely: a few more fixes
4215 from Eduardo, thanks!
4217 * Documentation/user/README.txt: new file; contains info on
4218 style that used to be in lilypond.tely.
4220 * Documentation/user/ various: first round of doc reorg.
4222 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4223 graphic; this probably causes problems on some pdf
4224 viewers, notably Adobe Acrobat.
4226 2006-04-24 Graham Percival <gpermus@gmail.com>
4228 * Documentation/user/instrument-notation.itely: many alterations
4229 to Vocal music, from Eduardo Viera.
4231 2006-04-23 Graham Percival <gpermus@gmail.com>
4233 * Documentation/user/instrument-notation.itely: fix \new
4234 instead of \context problem.
4236 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4238 * lily/relocate.cc (expand_environment_variables): new function.
4240 (read_relocation_file): id.
4242 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4244 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4246 * ly/engraver-init.ly: remove old comments from TabVoice
4248 2006-04-20 Graham Percival <gpermus@gmail.com>
4250 * Documentation/user/instrument-notation.itely: added Erlend's
4251 latest doc patch, thanks!
4253 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4255 * lily/include/slur.hh:
4257 * lily/phrasing-slur-engraver.cc:
4258 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4259 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4260 Slur_engraver:: and putting it in
4261 Slur::auxiliary_acknowledge_extra_object ().
4263 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4265 * lily/note-collision.cc: fix a comment
4267 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4269 * stepmake/bin/add-html-footer.py: fix footer position in
4270 generated html files: before </body> and </html> tags.
4272 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4274 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4275 Earlier successive `make' commands finally compiled ok.
4277 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4279 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4281 * lily/include/stem-tremolo.hh:
4282 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4286 * lily/include/lookup.hh: add rotated_box ()
4288 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4290 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4291 been generated. Fixes "can't get `--help'" bug after make clean.
4293 * THANKS: alphabetize contributors.
4295 2006-04-17 Graham Percival <gpermus@gmail.com>
4297 * Documentation/user/instrument-notation.itely: added Erlend's
4298 tabs and banjo doc patch. Thanks!
4300 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4302 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4304 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4306 * scm/output-lib.scm: add some more predefined string tunings.
4308 * Documentation/user/instrument-notation.itely: and doc them.
4310 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4312 * ly/engraver.ly: Remove obsolete comments.
4314 * ly/gregorian-init.ly: Define default layout block.
4316 * input/puer-fragment.ly: Updated and extended.
4318 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4320 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4321 pdf conversion behaviour.
4323 * flower/file-name.cc (dir_name)
4324 (get_working_directory): Move from relocate.cc.
4326 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4328 * lily/relocate.cc: Encapsulate sys/stat.h in
4331 2006-04-14 Graham Percival <gpermus@gmail.com>
4333 * Documentation/user/ various: small updates from Cameron
4334 and Juergen, thanks!
4336 * Documentation/user/ various: small updates of my own.
4338 * THANKS: 2.7 -> 2.8.
4340 2006-04-11 Graham Percival <gpermus@gmail.com>
4342 * scm/define-context-properties.scm: typo.
4344 * Documentation/user/ : many more small updates.
4346 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4348 * scm/define-music-types.scm: disposed "docme".
4350 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4352 * lily/hairpin.cc: make niente circles a bit smaller.
4354 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4356 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4357 get-pfa and get-*-fonts targets.
4359 2006-04-10 Graham Percival <gpermus@gmail.com>
4361 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4362 music-glossary, programming-interface: more minor fixes
4365 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4367 * scm/define-context-properties.scm: another old \property update.
4368 This time tested for compiling!
4370 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4372 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4374 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4376 * scm/define-context-properties.scm (all-user-translation-properties):
4377 * Documentation/user/global.itely (Page formatting): Compile fix.
4379 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4381 * Documentation/user/advanced-notation.itely (Polymetric
4382 notation): Update the example to use the "+" symbol and add link
4383 to input/test/compound-time.ly.
4385 2006-04-08 Graham Percival <gpermus@gmail.com>
4387 * scm/define-grob-properties.scm: clarify docs for #'direction.
4389 * scm/define-context-properties.scm: update old \property override.
4391 * Documentation/user/ advanced-notation, global, lilypond-book:
4392 more minor doc updates.
4394 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4396 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4398 * scm/backend-library.scm (search-gs): oops.
4400 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4402 * scripts/lilypond-book.py (output): use base, not filename for href.
4404 * scm/backend-library.scm: only look for gs.
4406 * scripts/lilypond-book.py (output): fix printfilename.
4408 * lily/parser.yy (music_function_musicless_prefix): fold together
4409 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4411 * lily/slur.cc (print): only set font-size if not set yet.
4413 * lily/slur-configuration.cc (add_score): improved layout of debug
4416 2006-04-05 David Feuer <David.Feuer@gmail.com>
4418 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4419 (draw_circle): Hopefully fixed regression.
4420 Improved documentation for several procedures.
4422 2006-03-04 Werner Lemberg <wl@gnu.org>
4424 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4426 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4428 * scripts/musicxml2ly.py (bindir): add dynamic
4431 2006-04-04 Graham Percival <gpermus@gmail.com>
4433 * Documentation/user/ basic-notation, advanced-notation, putting,
4434 instrument-notation, invoking, lilypond, THANKS: another ream of small
4435 fixes from the Doc Helpers.
4437 2006-04-03 David Feuer <David.Feuer@gmail.com>
4439 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4441 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4443 * Cleaned up interfaces between PostScript and Scheme, and moved
4444 computations from PostScript to Scheme:
4446 * music-drawing-routines.ps
4447 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4448 with stroke_and_fill throughout.
4449 (euclidean_length, print_letter, draw_box): Deleted unused
4450 procedures. If someone needs draw_box, implement it using
4451 draw_round_box; don't duplicate code.
4452 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4453 Refactored/cleaned up interfaces.
4456 * output-ps.scm: reordered arguments to PostScript functions to
4457 match new interfaces
4458 (glyph-string): Rewrote glyph-string.
4459 (grob-cause): Replaced string-append with format.
4460 (repeat-slash): Rewrote to do computation here.
4461 (round-filled-box): Rewrote to do computation here.
4463 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4465 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4467 * stepmake/stepmake/toplevel- targets.make: print help info about
4470 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4472 * input/regression/hairpin-circled.ly: new file
4474 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4476 * lily/hairpin.cc (print): add support for circled tip
4478 * scm/define-grob-properties.scm: add circled-tip parameter
4480 * scm/define-grobs.scm: init circled-tip to false
4482 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4484 * scm/music-functions.scm (quote-substitute): set
4487 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4489 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4492 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4494 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4496 2006-03-31 David Feuer <david.feuer@gmail.com>
4498 * scm/framework-ps.scm:
4500 * scm/output-ps.scm: glyph-string now produces smaller, more
4501 readable, and probably faster PostScript. Several findfont
4502 scalefont setfont instances changed to selectfont
4503 Hacked-up string-appends changed to formats.
4505 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4507 2006-03-30 Graham Percival <gpermus@gmail.com>
4509 * scm/lily-library.scm: make "no version" warning message more polite.
4511 * lily/music.cc: add double quotes to failed octave check.
4513 * Documentation/user/ advanced-notation, changing-defaults,
4514 instrument-notation, invoking, music-glossary: whole bunch of minor
4517 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4519 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4520 $(buildscriptdir) iso. depth.
4522 * VERSION (PACKAGE_NAME): release 2.9.1
4524 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4526 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4528 * VERSION (PATCH_LEVEL): bump version number.
4530 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4533 * lily/pango-font.cc (pango_item_string_stencil): use
4536 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4537 $(outdir)/emmentaler-%.svg): remove canary.
4539 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4540 glyphnames if we have a ttf font.
4542 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4544 * Documentation/user/advanced-notation.itely (Font selection):
4545 Corrected reference to the font-family-override.ly example.
4547 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4549 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4550 stem-tremolo object in the stem (or else the stem might not be
4553 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4555 * lily/ttf.cc (print_trailer): only print existing glyphs.
4557 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4559 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4560 position the tremolo based on the position of the notehead.
4562 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4563 notes and update the texidoc line with the new positioning rules.
4565 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4567 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4569 * scripts/lilypond-book.py (Module): set default for linewidth if
4572 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4574 * VERSION (PACKAGE_NAME): release 2.9.0.
4576 * input/regression/stem-tremolo-position.ly: new file.
4578 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4580 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4582 * lily/stem-tremolo.cc (print): position
4583 the tremolo depending only on the end of the stem
4584 and not on the notehead
4585 (raw_stencil): center, on the middle staff line, the
4586 flag that is closest to the end of the stem (previously
4588 (calc_width): add this callback to shorten a tremolo when
4589 it is beamed or it is stemup with a flag
4590 (style): add this callback to make a tremolo rectangular when
4591 it is beamed or it is stemup with a flag
4592 (rotated_box): this is like Lookup::beam but makes a rotated
4593 rectangle instead of a parallelogram
4595 * lily/stem.cc (calc_stem_info): make sure the stem
4596 is long enough to fit the tremolo
4597 (calc-length): reduce the length of tremolo stems since the
4598 tremolo code is now capable of better positioning
4600 * scm/define-grobs.scm: make calc_width the default beam-width
4601 callback for stem-tremolo and add the style callback
4603 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4605 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4608 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4610 * lily/ttf.cc (make_index_to_charcode_map): restore old
4613 2006-03-28 Werner Lemberg <wl@gnu.org>
4615 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4617 2006-03-28 Graham Percival <gpermus@gmail.com>
4619 * THANKS: update for 2.9, add section for Documentation helpers.
4621 * Documentation/topdocs/NEWS.tely: compile fix.
4623 * Documentation/user/ basic-notation, global, advanced-notation,
4624 examples.itely: minor fixes from mailist.
4626 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4628 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4631 * lily/ttf.cc (print_trailer): use it.
4633 * lily/pango-font.cc (get_unicode_name): new function.
4635 * lily/ttf.cc (make_index_to_charcode_map): move function from
4637 (print_trailer): substitute uniXXXX name if applicable.
4639 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4640 (pango_item_string_stencil): use it to generate uniXXXX names.
4642 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4643 note heads, for uniform widths in shape note output.
4644 (overdone_heads): hmm. remove them again.
4646 * scripts/lilypond-book.py (output): add links to filenames.
4648 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4650 * lily/note-collision.cc (get_clash_groups): only consider when
4651 Note_column::dir <> CENTER.
4653 * scripts/lilypond-book.py (get_option_parser): init output_name
4656 2006-03-24 Graham Percival <gpermus@gmail.com>
4658 * Documentation/topdocs/NEWS.tely: add @end itemize
4660 * Documentation/user/ global, advanced-notation: minor
4663 2006-03-23 Graham Percival <gpermus@gmail.com>
4665 * Documentation/user/ lilypond.tely, music-glossary,
4666 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4668 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4670 * mf/GNUmakefile: don't install .enc files.
4672 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4674 * VERSION (PATCH_LEVEL): bump to 2.9.0
4676 2006-03-22 Graham Percival <gpermus@gmail.com>
4678 * Documentation/user/advanced-notation.itely: minor fixes
4681 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4683 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4685 * branch lilypond_2_8
4687 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4689 * scripts/lilypond-book.py (samefile): new function, for windoze
4692 2006-03-21 Graham Percival <gpermus@gmail.com>
4694 * ly/engraver-init.ly: add info about StaffGroup.
4696 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4698 * input/regression/stem-direction-context.ly: idem.
4700 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4704 * input/regression/page-layout-twopass.ly: comment out \markup so
4707 * lily/instrument-name-engraver.cc (finalize): add to instrument
4708 name global System. This also fixes chopped instrument names, but
4709 doesn't crash when there are slurs/beams.
4711 * lily/slur-configuration.cc (add_score): disallow negative slur
4714 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4716 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4718 * lily/instrument-name-engraver.cc (process_music): kludge: add
4719 InstrumentName spanner to axis group of left bound. Fixes chopped
4720 off instrument names in EPS images.
4722 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4724 * scripts/abc2ly.py (option_parser): update to 2.7.40
4726 2006-03-20 Graham Percival <gpermus@gmail.com>
4728 * THANKS: move small doc contributors to SUGGESTIONS.
4730 * Documentation/user/ basic-notation, advanced-notation,
4731 global: small changes from mailist.
4733 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4735 * Documentation/user/advanced-notation.itely (Text marks): update
4736 for new rehearsalMarkAlignSymbol convention.
4738 * VERSION (PATCH_LEVEL): bump version.
4740 * input/test/instrument-name-align.ly: new file.
4742 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4744 * input/test/instrument-name-align.ly: new file. Document how to
4745 align instrument names.
4747 * lily/mark-engraver.cc: remove properties.
4749 * scm/define-context-properties.scm
4750 (all-user-translation-properties): remove align symbol properties
4751 for barnumber/reh. mark.
4753 * lily/break-align-interface.cc (self_align_callback): new
4754 interface, new function. Look at complete alignment. This handles
4755 tunable break alignments in case break-align-symbols are missing.
4757 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4759 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4761 * python/convertrules.py (conv): mark/bar number alignment rule.
4763 * lily/break-align-interface.cc (calc_positioning_done): also
4764 store offset from last visible break-alignment to its
4765 neighbor. This makes alignment on non-visible objects more reliable.
4767 * po/lilypond.pot (Module): ran po-replace.
4769 * input/regression/tie-single-manual.ly (Module): new file.
4771 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4772 look at has_manual_position_.
4773 (from_ties): set has_manual_position_ if tie has staff-position set.
4775 * lily/tuplet-bracket.cc (calc_positions): idem.
4777 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4780 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4782 * scm/define-markup-commands.scm (smallCaps): new markup command
4783 for turning a text to small caps using smaller font size and upper
4786 2006-03-17 Graham Percival <gpermus@gmail.com>
4788 * Documentation/user/ examples, instrument-notation,
4789 advnaced-notation: minor fixes from mailist.
4791 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4793 * Documentation/user/tutorial.itely (First steps): change example
4796 2006-03-17 Graham Percival <gpermus@gmail.com>
4798 * Documentation/user/ examples, advanced: minor changes from mailist.
4800 * THANKS: add Geoff Horton, for documentation stuff.
4802 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4804 * python/lilylib.py (system): revert have_select kludge.
4806 * Documentation/user/tutorial.itely (Commenting input files):
4807 update version numbers in doc.
4809 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4810 bound-padding to multi-measure-interface
4812 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4814 * input/test/engraver-example.ily: update version number.
4816 * VERSION (PACKAGE_NAME): release 2.7.39
4818 * lily/note-spacing.cc (get_spacing): heighten threshold where
4819 accidentals/arpeggios influence previous spacing fully.
4821 * lily/rest.cc (y_offset_callback): only use direction if
4822 staff-position wasn't set before.
4824 * lily/bar-number-engraver.cc: add support for
4825 barNumberAlignSymbol.
4826 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4828 * lily/pointer-group-interface.cc (set_ordered): new function.
4829 (add_unordered_grob): new function.
4831 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4832 to ordered, unless the opposite has been proved. This fixes
4833 random reordering of large object groups across linebreaks,
4836 * lily/main.cc (do_chroot_jail): printf format fix.
4838 * lily/tie-formatting-problem.cc (generate_configuration):
4839 multiply y-shift for dot with direction.
4841 * scm/define-markup-commands.scm (note-by-number): put (magstep
4842 size) in y-attach too.
4844 * Documentation/topdocs/NEWS.tely (Top): show override.
4846 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4847 direction for stems.
4849 2006-03-15 Graham Percival <gpermus@gmail.com>
4851 * Documentation/user/ changing-defaults, global: minor
4854 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4856 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4858 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4859 breakable items after uniformly stretched notes.
4861 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4862 outline with outer edge of note heads. This prevents infinity
4863 problems with tied whole notes.
4865 * scripts/lilypond-book.py (do_file): use os.popen
4867 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4869 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4871 * Documentation/user/invoking.itely: Add ragged-right to bug report
4874 2006-03-14 Graham Percival <gpermus@gmail.com>
4876 * Documentation/user/global.itely: small fix from mailist.
4878 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4880 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4881 file descriptor returned by tempfile.mkstemp() when writing
4882 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4885 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4887 * po/fi.po: newline bugfix.
4889 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4891 * scm/paper.scm (paper-alist): Rounding fixes.
4893 2006-03-13 Graham Percival <gpermus@gmail.com>
4895 * Documentation/user/ changing-defaults, instrument-notation,
4896 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4898 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4902 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4904 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4907 * python/lilylib.py (print_environment): move ps_page_count to
4910 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4912 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4914 * scm/framework-ps.scm (embed-document): new function. Use to
4917 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4919 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4921 * Documentation/user/instrument-notation.itely (Setting simple
4922 songs): Added \book{...} around the full example, so the separate
4923 markups are included in the printed example.
4925 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4927 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4930 * python/lilylib.py (system): rewrite system() using
4931 subprocess. Remove >& redirection trickery.
4933 2006-03-11 Graham Percival <gpermus@gmail.com>
4935 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4936 notation-appendices.itely: minor fixes from mailist.
4938 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4940 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4941 unsplit man also needs images.
4943 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4945 * VERSION (PACKAGE_NAME): 2.7.38 released.
4947 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4949 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4952 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4954 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4955 respects the Score.skipTypesetting property.
4957 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4959 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4960 Prolog. No %%EOF after CFF file.
4962 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4964 * lily/constrained-breaking.cc (get_max_systems): used to return a
4966 (combine_demerits): use pointers to reduce copying data
4967 (calc_subproblem): idem
4968 (get_page_penalty): add page turn penalties
4970 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4972 * Documentation/user/invoking.itely (Invoking lilypond): better
4973 explanation of -e usage.
4975 * lily/main.cc (main_with_guile): don't append to
4976 init_scheme_code_string
4978 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4980 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4982 * scripts/convert-ly.py (do_options): don't print help for
4985 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4986 @code and @example. Update from texinfo.tex from CVS.
4988 2006-03-08 Graham Percival <gpermus@gmail.com>
4990 * Documentation/user/scheme-tutorial.itely: clarifies distances
4991 measured in staff-spaces.
4993 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4995 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4996 consider[k] is true.
4998 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5000 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5001 consider columns that have originals. Unifies spacing for mm
5002 rests around line breaks.
5004 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5005 (set_text_rods): idem.
5006 (calculate_spacing_rods): new function: share code between
5007 set_text_rods and set_spacing_rods.
5008 (set_text_rods): take extents of bounds into account.
5010 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5012 * Documentation/user/basic-notation.itely (Writing music in
5013 parallel): don't use relative.
5015 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5017 * ly/music-functions-init.ly (Module): add shiftDurations
5019 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5021 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5023 * ly/engraver-init.ly: init vocalName to nil.
5025 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5027 * scm/music-functions.scm (music->make-music): bugfix,
5028 KeyChangeEvents are now handled correctly.
5030 * scripts/lilypond-book.py: Add --debug option.
5032 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5034 * python/lilylib.py: add tempfile.
5036 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5038 * VERSION (PACKAGE_NAME): release 2.7.37
5040 * python/lilylib.py (ps_page_count): remove make_ps_images().
5041 (ps_page_count): remove mkdir_p
5042 (system): remove cleanup_temp.
5043 (exit): remove lilypond_version_(check)
5044 (error_log): remove pseudo_filter_p
5049 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5052 * lily/accidental-engraver.cc (make_standard_accidental): only add
5053 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5055 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5056 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5057 Make incompatibilities.
5059 * scm/output-ps.scm (grob-cause): replace backslashes by /
5060 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5062 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5064 * cygwin/GNUmakefile: Install fixes.
5066 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5068 * lily/note-head.cc (head::get_balltype): Compile fix.
5070 * flower/file-name.cc (dos_to_posix): Flower string fix.
5072 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5074 * python/lilylib.py: pychecker cleanups.
5076 * scripts/lilypond-book.py
5077 (Lilypond_snippet.output_print_filename): pychecker cleanups
5079 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5081 * python/lilylib.py (underscore): remove identify() , warranty()
5083 * ps/music-drawing-routines.ps: change Border routine for GSView
5086 * lily/stem.cc (height): use quantize-positions. This triggers
5087 set_stem_lengths, so scripts on beamed stems are handled correctly.
5089 * lily/side-position-interface.cc (aligned_side): check if edges
5090 of script are inside staff. Fixes accent of edge of the staff.
5092 * input/regression/staccato-pos.ly: more examples.
5094 * stepmake/aclocal.m4 (depth): fix bashism.
5096 * lily/lyric-combine-music-iterator.cc: move from
5097 new-lyric-combine-iterator.cc
5098 (process): add pending_grace_lyric_ member to delay lyrics on
5101 * lily/system-start-text.cc (print): suicide if we don't have any
5102 elements. Fixes hara kiri'd instrument names.
5104 * scripts/mup2ly.py (Module): remove.
5106 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5108 * Documentation/user/global.itely (A single music expression):
5109 close @lilypond properly
5111 * lily/volta-bracket.cc (modify_edge_height): change from
5112 after_line_breaking_callback. Suicide last bracket if appropriate.
5114 * python/lilylib.py: strip getopt support
5116 * scripts/etf2ly.py (do_options): use optparse
5118 * scripts/midi2ly.py: optparse, strip lilylib copy.
5120 * scripts/abc2ly.py (voices): use optparse.
5122 * stepmake/stepmake/generic-vars.make: new function absdir.
5124 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5126 * scripts/lilypond-book.py (find_file): use global_options for
5129 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5132 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5134 * python/lilylib.py (get_global_option): ughness for extracting
5135 global options from lilylib.
5136 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5138 * scripts/lilypond-book.py (get_option_parser): use optparse for
5139 option handling. Put options in global_options variable.
5141 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5143 * Documentation/index.html.in: clarify.
5145 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5147 * scm/layout-page-layout.scm (write-page-breaks): add a
5148 music-system-heights property to the page layout output.
5150 * scm/page.scm (make-page-stencil): take footer into account when
5151 computing the 'space-left page property
5152 (annotate-space-left): take footer into account when annonating
5155 2006-02-28 Graham Percival <gpermus@gmail.com>
5157 * Documentation/user/ advanced-notation, global: more (final)
5158 docs for music expressions, removed special fermatas.
5160 2006-02-27 Graham Percival <gpermus@gmail.com>
5162 * Documentation/user/ basic-notation, global: minor changes
5165 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5167 * scm/framework-ps.scm:
5168 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5169 layer for inf? and nan? from framework-ps to lily-library.
5171 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5173 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5174 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5176 * buildscripts/substitute-encoding.py (Module): remove file.
5178 * mf/GNUmakefile: more PFA strippage.
5180 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5182 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5185 * scm/framework-ps.scm: remove font name munging.
5187 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5189 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5191 * scm/markup.scm (define-markup-command): change
5192 def-markup-command to define-markup-command
5194 * scm/music-functions.scm (define-music-function): change
5195 def-music-function to define-music-function.
5197 * python/convertrules.py (conv): rules for def-music-function
5198 and def-markup-commands
5200 * Documentation/user/programming-interface.itely,
5201 input/no-notation/display-lily-tests.ly,
5202 input/regression/lily-in-scheme.ly,
5203 input/regression/markup-user.ly,
5204 input/regression/music-function.ly, input/regression/tie-chord.ly,
5205 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5206 ly/gregorian-init.ly: use new macro names (define-music-function,
5207 define-markup-command).
5209 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5211 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5212 (output): add comments to lp-book latex output.
5214 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5217 2006-02-23 Graham Percival <gpermus@gmail.com>
5219 * Documentation/user/ tutorial, global: minor changes.
5221 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5223 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5224 blocks (for make 3.80)
5226 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5227 \notemode so that user should not have to explicitely type it.
5229 * scm/define-music-display-methods.scm: various
5230 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5233 * input/no-notation/display-lily-tests.ly: new tests for
5234 \applyOutput and \applyContext
5236 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5238 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5239 changed it slightly so that the number of systems returned by
5240 solve () will be the same as the last value passed to resize
5241 (). I've also added more documentation, removed casts, fixed style
5242 problems and put in some recovery if constraints aren't satisfied."
5244 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5246 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5247 for emacs < 22 compatibility.
5248 (count-rexp): Use it.
5249 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5250 substring juggling (Milan Zamazal).
5252 2006-02-23 Graham Percival <gpermus@gmail.com>
5254 * Documentation/user/ basic-notation, advanced-notation,
5255 global.itely, invoking.itely, tutorial,itely:
5256 minor fixes from mailist.
5258 * scm/define-markup-commands.scm: improve docs of \filled-box.
5260 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5262 * Documentation/index.html.in: changes concern the previous release.
5264 * input/regression/+.ly: cultivate typographical terminology.
5266 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5268 * scm/define-grob-interfaces.scm (parentheses-interface): add
5269 padding to parentheses-interface.
5271 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5272 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5274 * VERSION (PATCH_LEVEL): release 2.7.36
5276 * lily/slur.cc: add avoid-slur (ugh.)
5278 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5279 intersection gets smaller. This fixes slurs over extreme points.
5281 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5282 stems with neutral-direction set.
5284 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5286 * lily/open-type-font.cc (load_table): format error.
5288 * lily/change-iterator.cc (process): format fix.
5290 * flower/include/international.hh (_f): idem.
5292 * flower/include/std-string.hh: add format printf attribute.
5294 * scm/define-grobs.scm (all-grob-descriptions): height of all
5295 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5297 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5300 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5302 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5304 * input/regression/: upgraded syntax for some files.
5306 * THANKS: Add bughunters.
5308 2006-02-22 Graham Percival <gpermus@gmail.com>
5310 * Documentation/user/ invoking.itely, advanced-notation.itely,
5311 global.itely: long-awaited "let's make chapter 10 not suck"
5312 update. Rearrange chapter 10; now called "global issues",
5313 addresses file structure, etc. Some info from other files
5314 moved into global.itely.
5316 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5318 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5319 catch trill-span-event notes.
5321 * Documentation/user/examples.itely (Ancient notation templates): typo.
5324 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5326 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5328 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5330 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5332 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5333 froum Laissez_vibrer_engraver.
5335 * ly/declarations-init.ly (repeatTie): add \repeatTie
5337 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5339 * scm/define-grob-properties.scm (all-user-grob-properties): add
5340 head-direction property.
5342 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5343 from_lv_ties. Take head direction argument.
5345 * lily/semi-tie-column.cc: rename from
5346 laissez-vibrer-tie-column.cc. Rename class too.
5348 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5351 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5353 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5355 (find_breaks): idem.
5357 2006-02-21 Graham Percival <gpermus@gmail.com>
5359 * Documentation/user/advanced-notation.itely: fixed make-moment]
5362 * Documentation/user/basic-notation.itely: more clarification to
5365 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5367 * lily/include/constrained-breaking.hh (class
5368 Constrained_breaking): new file.
5370 * lily/constrained-breaking.cc (resize): new file.
5372 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5374 * Documentation/user/advanced-notation.itely (Clusters): insert
5377 * lily/tie-column.cc (calc_positioning_done): support for
5380 * lily/tie-formatting-problem.cc
5381 (generate_extremal_tie_variations): factor out.
5382 (score_ties_configuration): annotate all tie
5383 (print_ties_configuration): new routine.
5384 (generate_configuration): nudge extremal ties outside of the head
5386 (score_ties_configuration): oops. convert to staff-space before
5387 determining position symmetry.
5389 2006-02-20 Graham Percival <gpermus@gmail.com>
5391 * Documentation/user/*-notation.itely: misc minor editing,
5392 shifting doc sections around.
5394 * Documentation/user/*-notation-itely, global.itely,
5395 changing-defaults.itely: added new stuff from NEWS.
5397 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5401 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5403 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5404 lilypond --verbose for lp-book.
5406 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5407 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5409 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5410 $(buildscript-dir) iso. absolute depth.
5412 * buildscripts/genicon.py (dir): thinko.
5414 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5416 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5418 * scm/output-lib.scm: swap darkcyan/darkyellow
5420 * THANKS: Add bughunters.
5422 2006-02-19 Graham Percival <gpermus@gmail.com>
5424 * Documentation/user/programming-interfaces.itely: fixed example.
5426 * Documentation/user/instrument-notation.itely: fix @{ @}.
5428 * scm/script.scm: add avoid-slur for \open.
5430 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5432 * lily/tie-formatting-problem.cc (score_configuration): use
5433 sliding score for min-length.
5435 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5436 spaghetti for icons.
5438 * buildscripts/genicon.py (program_name): new file.
5440 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5442 (generate_configuration): for small ties, also look for collisions
5443 at Y + DIR*h + DELTA_Y.
5444 (get_variations): consider variation for dot positions too.
5446 * lily/side-position-interface.cc (aligned_side): take abs for
5447 quantized rounded position. Fixes tenuto below staff.
5449 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5450 markers when necessary.
5452 * lily/program-option.cc (internal_set_option): add
5453 strict_infinity_checking option.
5455 * scm/output-lib.scm (cyan): swap yellow and cyan.
5457 2006-02-19 Graham Percival <gpermus@gmail.com>
5459 * darwin.patch: trivial linenumber update.
5461 * Documentation/user/ {various}: `\context foo = named' changed
5462 to `\new foo = "name"' in docs.
5464 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5466 * scm/stencil.scm (annotate-y-interval): use it.
5468 * scm/lily-library.scm (interval-sane?): new function.
5470 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5473 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5476 * flower/include/std-vector.hh (iterof): add iterof macro.
5478 * lily/enclosing-bracket.cc (width): new function.
5480 * lily/align-interface.cc (align_elements_to_extents): reinstate
5483 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5485 * Documentation/index.html.in: fix spelling: thankyous.
5487 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5489 * lily/lyric-hyphen.cc: typo.
5491 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5493 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5494 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5497 * VERSION: release 2.7.35
5499 * lily/beam.cc (get_default_dir): oops. Take abs () for
5501 (get_default_dir): use extreme position criterion only in absence
5502 of forced stem directions.
5504 * VERSION (PATCH_LEVEL): bump VERSION.
5506 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5507 dependencies. Necessary for -jX builds.
5509 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5511 * lily/relocate.cc (setup_paths): Yet another const fix.
5513 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5515 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5517 * lily/relocate.cc (setup_paths): oops.
5519 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5521 * Documentation/index.html.in: order links: html before PDF.
5523 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5525 * lily/tie-column-format.cc (Module): remove.
5527 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5529 * lily/text-spanner.cc (print): idem.
5531 * lily/dynamic-text-spanner.cc (print): only print line if longer
5534 * lily/auto-change-iterator.cc (change_to): formatting.
5536 * lily/beam.cc (get_default_dir): take extreme note head as input
5539 * lily/tie.cc (get_default_dir): only look directions for visible
5542 * lily/side-position-interface.cc (aligned_side): oops. Don't
5543 mutiply with direction. This fixes quantized (staccato, tenuto)
5544 scripts below notes.
5546 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5547 direction. Fixes c-lyrics-center-align.ly
5549 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5551 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5554 * lily/std-string.cc:
5555 * lily/include/std-vector.hh (split_string): Move and rename from
5556 lily/include/misc.hh, lily/misc.cc. Update callers.
5558 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5560 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5562 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5564 * flower/test-file.cc: New file.
5566 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5569 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5571 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5573 * flower/include/file-storage.hh: remove file.
5575 * lily/include/midi-item.hh (class Midi_track): idem.
5577 * lily/include/source.hh (class Sources): idem.
5579 * lily/include/performance.hh (class Performance): use vector
5582 * flower/include/cons.hh (class Cons): remove file.
5584 * flower/include/flower-proto.hh: remove template cruft.
5586 * lily/include/font-metric.hh: use size_t not vsize for indices.
5588 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5591 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5593 * lily/include/paper-book.hh (class Paper_book):
5594 make get_system_specs() public.
5596 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5597 the force=10000 case if we don't have a current-best.
5599 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5602 * flower/include/flower-proto.hh: remove outdated templates.
5604 * scm/page.scm: use annotate-spacing
5606 2006-02-15 Graham Percival <gpermus@gmail.com>
5608 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5610 * THANKS: moved Erlend Aasland to contributors.
5612 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5614 * config.hh.in: remove HAVE_PANGO_16
5616 * lily/tuplet-bracket.cc (calc_positions): multiply with
5617 staff-space for beam case. This fixes tuplets+beams on scaled
5620 * config.hh.in: remove all Kpathsea related defines.
5622 * lily/dot-column.cc (side_position): reach stem via dots->
5623 head->stem. Inspect all stems for dot collisions.
5625 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5628 * lily/bar-number-engraver.cc (process_music): document function
5631 * lily/score.cc (default_rendering): add pscore, not systems
5634 * lily/paper-book.cc (get_system_specs): separate generation of
5637 * flower/include/std-vector.hh: don't include config.hh
5639 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5641 * flower/include/std-vector.hh: Better wrapper compatibility with
5644 * flower/include/flower-proto.hh: Remove cheap forward declaration
5647 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5649 2006-02-14 Graham Percival <gpermus@gmail.com>
5651 * Documentation/user/invoking.itely: add warning about command line.
5653 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5655 * lily/include/lily-proto.hh: add Prob, rm Page.
5657 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5659 * VERSION: release 2.7.34
5661 * lily/relocate.cc (framework_relocation): show canary if
5662 GHOSTSCRIPT_VERSION undefined.
5664 * GNUmakefile.in: remove $(VERSION) symlink.
5666 * lily/relocate.cc (setup_paths): add +
5668 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5670 * Documentation/index.html.in: specify sizes for all big HTML pages.
5672 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5674 * config.hh.in: remove @FRAMEWORKDIR@
5676 * lily/system-start-text.cc (get_stencil): new file: separate out
5677 system-start-delimiter text support.
5679 * input/**ly: replace \context with \new where appropriate.
5683 * lily/slur-scoring.cc (get_base_attachments): use
5684 robust_relative_extent. This fixes problems with empty paper-columns.
5686 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5688 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5690 * scm/define-music-properties.scm (all-music-properties):
5691 create-new property.
5693 * lily/context-specced-music-iterator.cc (construct_children):
5694 inspect 'create-new property iso. magical $uniqueContextId context
5697 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5699 * lily/context-key-manager.cc (Module): new file. Encapsulate
5700 object key generation.
5702 * lily/include/context-key-manager.hh (Module): new file.
5704 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5706 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5709 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5711 (reloc_b): excise --enable-framework-dir
5713 * lily/relocate.cc (framework_relocation): use getenv
5714 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5716 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5718 * flower/include/std-string.hh:
5719 * flower/include/std-vector.hh: Finish std:: conversion; move
5720 flower extensions from std:: namespace. Update users.
5722 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5723 their expansion to vector<*>. Update users.
5725 2006-02-10 Graham Percival <gpermus@gmail.com>
5727 * Documentation/user/invoking.itely: add example to File structure.
5729 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5730 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5732 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5734 * ly/paper-defaults.ly: typo.
5736 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5737 set_parent() for parentheses. This will make it show up in bbox
5740 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5741 ly:grob-common* functions.
5743 * lily/grob-scheme.cc (LY_DEFINE):
5744 ly:grob-common-refpoint-of-array: new function
5745 ly:grob-common-refpoint: new function
5746 ly:grob-relative-coordinate: new function
5748 * lily/instrument-name-engraver.cc (process_music): use
5749 Text_interface::is_markup(). This fixes \markup on instrument names.
5751 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5754 * lily/slur.cc (print): idem.
5756 * lily/tie.cc: add line-thickness for ties.
5758 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5760 * scm/output-svg.scm: Document diversion from GNU coding standards
5761 as a workaround for a bug in Microsoft Internet Explorer.
5763 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5765 * lily/instrument-name-engraver.cc (process_music): use
5766 is_markup() iso. is_string()
5768 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5770 * lily/percent-repeat-engraver.cc (process_music): only look at
5771 main_part_ for % repeats.
5773 * lily/stem-tremolo.cc (get_beam_translation): new function.
5774 (calc_slope): new function.
5775 (height): don't use real slope.
5777 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5779 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5780 new connect-to-neighbor, control-points and staff-padding
5781 properties to make ligature brackets showing up again.
5783 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5785 * VERSION: release 2.7.33
5787 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5790 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5791 remove applyOutput example.
5792 (Objects connected to the input): document \tweak, \parenthesize
5794 * lily/relocate.cc (prefix_relocation): allow "current"
5795 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5796 changing VERSION in a lily tree less painful.
5798 * input/regression/parenthesize.ly: new file.
5800 * scm/output-lib.scm (parenthesize-element): new function.
5802 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5804 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5806 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5807 cause: accidentals are caused by note heads, not note events.
5809 2006-02-08 Graham Percival <gpermus@gmail.com>
5811 * darwin.patch: small patch from Erlend, thanks!
5813 * Documentation/user/basic-notation.itely: add stem-neutral example.
5815 * Documentation/user/putting.itely: clarifications.
5817 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5819 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5820 note, add more guidelines to what should go into NEWS.
5822 * input/sakura-sakura.ly: document how to override font.
5824 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5826 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5828 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5830 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5832 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5833 convertrules. Add explicit grouping, needed for python2.2.
5835 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5837 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5839 2006-02-07 Graham Percival <gpermus@gmail.com>
5841 * Documentation/user/global.itely: fix line-width in (text) docs.
5843 * Documentation/user/lilypond-book.itely: same.
5845 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5847 * VERSION (PACKAGE_NAME): release 2.7.32
5849 * Documentation/topdocs/NEWS.tely (Top): document new variable
5852 * flower/include/array.icc (Message): remove file.
5854 * flower/include/std-vector.hh: make sure vsize and VPOS are
5855 defined for binary_search_bounds().
5857 * flower/std-string.cc (std): add to_string(long unsigned).
5859 * configure.in (gui_b): excise std_string option.
5860 (gui_b): excise std_vector option.
5862 * flower/string.cc (Module): excise flower array & string
5864 * flower/include/std-string.hh: excise flower string.
5866 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5868 * python/convertrules.py (lilypond_version_re_str): require
5869 only numbers and dots in \version string.
5871 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5873 * lily/system-start-delimiter.cc (print): allow style = text too.
5875 * lily/system-start-delimiter-engraver.cc
5876 (acknowledge_system_start_text): new function, also add add to
5877 support of system-start-text (instrument names). This fixes
5878 instrument names on piano staves.
5880 * lily/instrument-name-engraver.cc: rewrite. Use
5881 system-start-delimiter approach. This save memory and cpu.
5883 * scm/define-grobs.scm (all-grob-descriptions): remove
5884 instrument-name from break-alignment.
5886 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5888 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5890 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5893 * configure.in (std_vector): On by default.
5895 * lily/include/font-metric.hh:
5896 * lily/include/tfm-reader.hh:
5897 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5900 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5902 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5904 * VERSION (PACKAGE_NAME): 2.7.31
5906 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5907 EPS edge at 0, but take minimum with left-overshoot. This fixes
5908 cut off system start delims.
5910 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5911 hack: add to axis group if not added yet. This fixes hara kiri'd
5914 * lily/hara-kiri-group-spanner.cc
5915 (force_hara_kiri_in_y_parent_callback): fix signatures.
5917 * lily/hairpin.cc (print): check next hairpin to see whether or
5918 not to be continuing.
5920 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5922 * Remove trailing whitespace from makefiles.
5924 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5927 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5929 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5931 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5933 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5935 * configure.in: Use it.
5937 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5939 * scm/music-functions.scm (pitch-of-note): new function.
5941 * ly/music-functions-init.ly: add \octave and \addquote
5943 * lily/parser.yy (music_function_chord_body): softcode \octave.
5944 (lilypond_header): softcode \addquote
5946 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5948 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5949 array.hh, parray.hh at all. Getting ready to flip the
5952 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5954 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5957 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5959 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5961 * flower/include/array.hh: typo.
5963 2006-02-02 Graham Percival <gpermus@gmail.com>
5965 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5967 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5969 * flower/include/pqueue.hh: Derive from std::vector.
5971 * flower/include/parray.hh: Conform to std::vector interface.
5974 2006-02-02 Graham Percival <gpermus@gmail.com>
5976 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5978 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5980 * flower/file-path.cc (is_file): remove if 0 section.
5982 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5983 selecting afii61352.
5985 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5987 * flower/include/std-vector.hh (boundary): Oops, reverse.
5989 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5990 remove superfluous `d'.
5992 * flower/include/std-vector.hh (boundary, top): Detach from class.
5993 Remove empty vector shell.
5995 * flower/include/array.hh (reverse, swap): Detach from class.
5998 * flower/include/std-vector.hh
5999 * flower/include/array.hh (concat): Globally change to insert ().
6001 * flower/include/std-vector.hh
6002 * flower/include/parray.hh
6003 * flower/include/array.hh (elem, elem_ref): Globally replace by
6006 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6008 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6010 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6011 anticipate on identifier substitutions.
6013 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6015 * flower/include/std-vector.hh (insert): Remove, replace by
6016 std::vector interface. Update callers.
6018 * flower/include/array.icc (insert): Change signature to
6019 match std::vector interface.
6021 * flower/include/array.icc (vector_sort): Bugfix.
6023 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6025 * lily/parser.yy (output_def_head_with_mode_switch): new
6026 production. Result: dashes and underscores may be used in the
6029 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6031 * python/convertrules.py (conv): oops. One slash too much.
6033 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6035 * flower/include/std-vector.hh (sort): Remove, replace by
6036 ::vector_sort. Update callers.
6038 * flower/include/std-vector.hh (slice): Remove. Update callers.
6041 * flower/test-std.cc (vector_sort): New test.
6043 2006-02-01 Graham Percival <gpermus@gmail.com>
6045 * Documentation/user/putting.itely: fixes from Erik.
6047 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6049 * flower/test-std.cc: Add simple unit test for vector migration.
6051 * stepmake/stepmake/test*: Unit test support.
6053 * flower/include/std-vector.hh (del): Remove. Use erase (),
6056 * flower/include/array.hh (begin, end): Add.
6059 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6061 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6062 std::string not String.
6064 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6067 * lily/prob.cc (Prob): copy type_ too.
6069 * lily/lily-guile.cc (mangle_cxx_identifier): new
6070 function. Class_bla::foo_bar_[px] ->
6071 ly:class-bla::foo-bar[?!]. Changes throughout
6073 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6075 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6077 * lily/beam.cc (calc_direction): take dir from visible stem in
6080 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6082 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6083 Fix -1, >=0 boundary checks for unsigned vsize.
6085 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6086 loop for unsigned vsize.
6088 * configure.in (--enable-std-vector): New option.
6089 (--enable-std-string): On by default.
6091 * flower/include/std-vector.hh: New file. Enable switch to
6092 std::vector, update client code.
6094 2006-01-30 Graham Percival <gpermus@gmail.com>
6096 * scm/document-translation.scm: clarify "this context is also
6097 known as". Thanks, Werner!
6099 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6101 * Documentation/user/invoking.itely: small fix from Don.
6103 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6105 * scm/lily.scm (define-scheme-options): rename option
6106 preview-include-book-title to book-title-preview
6107 (define-scheme-options): move force-eps-font-include (from paper
6108 block) to eps-font-include -d option.
6110 * VERSION (PATCH_LEVEL): release 2.7.30
6112 * input/bach-schenker.ly (staffPiano): new file.
6114 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6116 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6119 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6121 * ps/lilyponddefs.ps: remove start-system, stop-system,
6122 start-page fluff. This saves putting { } code on the stack, fixing
6123 stack overflows when including EPS files.
6125 2006-01-29 Graham Percival <gpermus@gmail.com>
6127 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6129 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6131 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6133 2006-01-28 Graham Percival <gpermus@gmail.com>
6135 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6137 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6139 * input/mutopia/claop.py: Update.
6141 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6143 * input/regression/completion-heads.ly (texidoc): fix.
6145 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6147 * lily/tie-formatting-problem.cc
6148 (set_ties_config_standard_directions): use abs iso fabs for ints.
6150 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6152 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6153 little less than noteheight, to prevent overlaps in chords.
6155 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6156 head, and fudge stem-attachment.
6158 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6160 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6162 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6164 * lily/main.cc (main): Debugging aid: catch exceptions.
6166 * flower/std-string.cc (to_string): Robustification. Fixes midi
6167 output with std::string.
6169 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6171 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6173 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6175 * Fix -DSTRING_UTILS_INLINED.
6177 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6179 * VERSION (PATCH_LEVEL): release 2.7.29
6181 * lily/relocate.cc (setup_paths): mingw uses std string too.
6183 * lily/*.cc: various fixes for substr(ARG).
6185 * lily/sustain-pedal.cc (print):
6187 * flower/file-name.cc (slashify): use std strings.
6189 * flower/string-convert.cc: remove publib.h
6191 * scm/define-markup-commands.scm (verbatim-file): new markup
6192 command \verbatim-file
6194 * Documentation/topdocs/NEWS.tely: fixup URLs
6196 * input/regression/alignment-vertical-manual-setting.ly (Module):
6199 * lily/align-interface.cc (align_elements_to_extents): overwrite
6200 translations with numbers in alignment-offsets from left bound
6202 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6203 (page-translate-systems): new function: take into account Y-offset.
6205 * Documentation/topdocs/NEWS.tely (Top): document new features.
6207 * input/regression/page-layout-manual-position.ly (Module): new
6210 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6212 * flower/file-path.cc (path::parse_path): Oops.
6214 * Finish std::string interface. For now, use std:: marker
6215 throughout for easy s/r.
6217 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6219 * Documentation/user/putting.itely (Score is a single musical
6221 (Score is a single musical expression): more typos.
6223 * scm/page.scm (annotate-space-left): thinko.
6224 (annotate-page): more thinkos.
6226 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6228 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6229 for different \score blocks separately.
6230 (post-process-pages): put write-page-layout into paper block.
6232 * lily/output-def.cc (get_parser): new file.
6234 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6237 * lily/include/output-def.hh (class Output_def): add parser_ member.
6239 * input/regression/page-layout-twopass.ly (Module): new file.
6241 * scm/lily.scm: remove cpp hack.
6243 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6245 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6247 * GNUmakefile.in (c-clean): New target.
6249 * flower/include/std-string.hh: String/std::string compatibility:
6250 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6253 * flower/rational.cc:
6254 * flower/include/rational.hh:
6257 * flower/include/offset.hh:
6259 * flower/interval.cc:
6260 * flower/include/interval.hh:
6262 * flower/string-convert.cc:
6263 * flower/include/string-convert.hh: Use std::string [interface].
6266 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6268 * Documentation/index.html.in: clean up.
6270 2006-01-25 Graham Percival <gpermus@gmail.com>
6272 * Documentation/user/putting.itely: another new untested doc section.
6274 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6276 * scm/layout-page-layout.scm (write-page-breaks): write
6277 \spacingTweaks #ALIST. Handle grace timing.
6279 * scm/: more imports.
6281 * scm/page.scm (make-page): add footer/header.
6282 (annotate-space-left): revise: only take page argument.
6283 (layout->page-init): new function.
6285 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6286 version of the system/spacing/linebreak hack writing to the output
6288 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6291 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6294 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6296 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6298 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6300 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6301 handling to page.scm
6303 * lily/prob-scheme.cc (LY_DEFINE): new file.
6304 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6306 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6309 * lily/music.cc (derived_mark): derive Music from Prob.
6311 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6313 * lily/prob.cc (Module): Implement Prob (Property Object), object
6314 with shared and r/w property alists.
6316 * lily/include/prob.hh (Module): new file. Declare Prob.
6318 * flower/string.cc: remove is_empty().
6320 * flower/include/string.hh (class String): remove String:: qualifier.
6322 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6323 substitute appropriate functions.
6325 * flower/include/string.hh (class String): remove to_str0 and
6326 is_empty(). S&R everywhere.
6328 2006-01-23 Graham Percival <gpermus@gmail.com>
6330 * Documentation/user/basic-notation.itely: add hairpin
6331 after-linebreak tweak to commonprop.
6333 * Documentation/user/putting.itely: added two new sections.
6335 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6337 * flower/international.cc:
6338 * flower/include/international.hh:
6340 * flower/getopt-long.cc:
6341 * flower/include/getopt-long.hh: Use std::string [interface].
6344 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6346 * stepmake/stepmake/executable-rules.make: Add dependency on
6349 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6351 * flower/file-path.cc:
6352 * flower/include/file-path.hh: Use std::string [interface].
6355 * flower/direction.cc:
6356 * flower/axis.cc: Unused. Remove.
6358 * configure.in (--enable-std-string): New option.
6360 * flower/std-string.cc:
6361 * flower/include/std-string.hh: New file.
6363 * flower/file-name.cc[STD_STRING]:
6364 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6366 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6368 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6370 * scm/define-markup-commands.scm (with-dimensions):
6371 with-dimensions markup command.
6373 * input/test/font-table.ly: use it.
6375 * lily/open-type-font.cc (glyph_list): new function.
6377 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6379 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6381 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6383 * ly/music-functions-init.ly (parallelMusic): new music function
6384 for parallel music entry.
6386 * scm/define-music-properties.scm (all-music-properties): new
6387 'void music property
6389 * scm/music-functions.scm (ly:music-message): make public, to be
6390 used in music function definitions
6392 * scm/lily-library.scm (collect-music-for-book): discard music
6393 when the 'void property is set.
6395 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6397 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6399 * mf/GNUmakefile: idem.
6401 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6403 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6405 * Documentation/user/notation-appendices.itely (The Feta font):
6408 * input/test/font-table.ly: new file. Generate font table within lily.
6410 * Documentation/user/notation-appendices.itely (The Feta font):
6411 use new font-table.ly file.
6413 * stepmake/stepmake/install-out-targets.make
6414 (local-install-outfiles): only create directory if
6415 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6417 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6419 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6421 * VERSION (PACKAGE_NAME): release 2.7.28
6423 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6424 the right font from a Mac dfont.
6425 (write-preamble): don't forget directory, only look at files.
6427 This fixes problems with TTF files in dfonts that don't match
6428 their PostScript names.
6430 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6431 PS name from TTF font.
6433 * input/regression/tie-manual.ly: document new feature.
6435 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6437 * VERSION (MY_PATCH_LEVEL): bump to .28
6439 * Documentation/user/basic-notation.itely (Ties): add tie examples
6442 * lily/tie-formatting-problem.cc (score_ties_configuration):
6443 symmetry penalties for outer ties.
6445 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6447 * lily/tie-formatting-problem.cc (generate_configuration)
6448 (set_manual_tie_configuration): skip non-pair manual
6449 tie-configuration, so you can set individual ties as
6451 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6453 * input/regression/tie-chord.ly: use generateTiePattern to
6456 * lily/tie-formatting-problem.cc (peak_around): new function.
6457 (score_configuration): use sliding criterion for staff line collisions.
6458 (score_configuration): idem for dot collisions.
6459 (generate_configuration): use separate stem_gap for gap to stem.
6461 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6462 separate penalty factors for x and y distance.
6463 (struct Tie_details): separate penalties for tip and center line collisions.
6465 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6467 * lily/tie-formatting-problem.cc (generate_configuration): make
6468 large ties avoid stafflines in the horizontal section.
6469 (score_configuration): use softcoded penalties
6470 (score_aptitude): idem.
6472 * lily/tie-helper.cc (from_grob): softcode tie details
6474 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6476 * lily/staff-symbol-referencer.cc (on_line): rename from
6479 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6481 * ly/music-functions-init.ly: remove duplicate tag.
6483 * lily/include/*.hh: GCC 4.1 fixes.
6485 006-01-16 Erlend Aasland <erlenda@gmail.com>
6487 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6489 * scm/define-music-types.scm: fix bug in desc. string
6490 for OverrideProperty
6492 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6494 * scripts/lilypond-book.py: bugfix
6496 * scm/define-music-types.scm: fix typos.
6498 2006-01-14 Graham Percival <gpermus@gmail.com>
6500 * Documentation/user/ basic-notation.itely, global.itely,
6501 advanced-notation.itely, instrument-notation.itely: small
6502 additions (bugs and commonly tweaked properties).
6504 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6506 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6507 detection of mingw build.
6508 (MINGW_BUILD): opps.
6510 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6512 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6515 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6517 * scm/music-functions.scm (skip->rest): add skip->rest
6519 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6521 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6524 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6525 config dirs. Aids debugging.
6526 (display_config): also display config files.
6528 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6530 * VERSION: release 2.7.27
6532 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6533 for determining bar size.
6535 * lily/staff-symbol.cc (print): place lines at distance line-positions
6537 * scm/define-grob-properties.scm (all-user-grob-properties): add
6540 * lily/staff-symbol.cc (height): new function.
6542 * input/regression/staff-line-positions.ly: new file.
6544 2006-01-06 Graham Percival <gpermus@gmail.com>
6546 * input/test/add-staccato.ly: remove reference to old file.
6548 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6550 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6551 lilypond binary too.
6553 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6555 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6557 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6559 * scripts/midi2ly.py: Bugfix: Declare datadir.
6561 * make/ly-rules.make:
6562 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6563 that seems to be gone). Fixes make web.
6565 * The grand 2005-2006 replace.
6567 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6569 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6571 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6572 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6573 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6574 like -dgs-font-load.
6576 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6577 remove absolute path to lilypond binary.
6579 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6581 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6583 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6585 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6587 * mf/GNUmakefile: remove broken dvips map symlink.
6589 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6592 * configure.in: Cosmetic fixes.
6594 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6596 * Documentation/user/music-glossary.tely (Pitch names): Added
6597 Spanish pitch names and durations, thanks to Ernesto Gancedo
6599 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6601 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6602 init. Fixes verbose printing of .scm files.
6604 * stepmake/aclocal.m4: add spaces before - options.
6606 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6608 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6609 of path search in local block variable.
6611 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6613 * configure.in (NCSB_DIR): --enable-ncsb-dir
6614 (LINK_GXX_STATICALLY): denko.
6616 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6618 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6619 use locate to find c059033l.pfb.
6621 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6623 * lily/tie-formatting-problem.cc
6624 (problem::generate_base_chord_configuration): Use my_round (was
6627 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6628 do not invoke mbrtowc.
6630 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6632 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6634 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6636 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6638 * Documentation/user/invoking.itely (svg): revise.
6640 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6642 * lily/lexer.ll: use sourcefilename iso. renameinput.
6644 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6646 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6647 <PostScriptName>.ttf instead of c059XXXttf.
6649 * lily/program-option.cc (LY_DEFINE): special support for
6650 --verbose, so it works before option init too.
6652 * mf/GNUmakefile (local-install): oops.
6654 * lily/lyric-hyphen.cc (print): oops.
6656 * buildscripts/pfx2ttf.fontforge: new file.
6658 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6659 ($(outdir)/%.ttf): new rule.
6661 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6664 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6667 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6669 * VERSION: release 2.7.26
6671 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6673 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6675 * lily/font-config.cc (init_fontconfig): verbosity.
6677 * THANKS: add Muziekacademie Lede.
6679 * scripts/musicxml2ly.py (print_voice_definitions): new function
6680 (print_score_setup): new function
6681 (convert): read part definition to output staves properly.
6683 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6686 * python/musicexp.py (Output_printer.__init__): use _ in data
6688 (Output_printer.unformatted_output): new function: no formatting,
6690 (Duration.get_length): remove isinstance() checks for
6691 Output_printer everywhere.
6693 * input/regression/lyrics-bar.ly (texidoc): add
6694 Separating_line_group_engraver.
6696 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6698 * lily/relocate.cc (framework_relocation): New function,
6699 factored from set_relocation ().
6700 (prefix_relocation): Rename from set_relocation ().
6701 (setup_paths): Use it.
6703 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6705 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6706 numbers. Patch by Erlend Aasland.
6708 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6710 * lily/font-config.cc (init_fontconfig): print warning if cache
6711 file is not existant.
6713 * lily/main.cc: don't use #ifdef but #if
6715 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6717 * lily/grob-property.cc (internal_set_property): don't abort on
6718 calculation-in-progress.
6720 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6722 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6723 connect-to-neighbor property not connect-to-other
6725 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6726 (LY_DEFINE): oops. don't forget protection.
6728 * flower/parse-afm.cc (Module): strip AFM handling completely.
6730 * lily/stencil-expression.cc: idem.
6732 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6734 * lily/function-documentation.cc (ly_add_function_documentation):
6735 use static member iso. Protected_scm
6737 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6739 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6741 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6743 * lily/relocate.cc (set_env_dir): New function.
6744 (set_relocation): Use it to fix setting PANGO_PREFIX.
6746 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6748 * input/regression/stem-direction-context.ly: remove rest.
6750 * lily/melody-engraver.cc (process_music): restart for bar lines.
6751 (acknowledge_slur): restart for slurs.
6753 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6755 * Documentation/user/invoking.itely: describe how to view SVG
6756 output using Inkscape which replace embedded fonts with OTF fonts.
6758 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6760 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6762 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6764 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6767 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6769 * VERSION (PACKAGE_NAME): release 2.7.25
6771 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6773 * input/regression/stem-direction-context.ly: new file.
6775 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6777 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6780 * ly/engraver-init.ly: add Melody_engraver
6782 * lily/beam.cc (calc_direction): use default-direction
6783 iso. get_default_direction()
6785 * scm/define-grob-properties.scm (all-user-grob-properties): add
6786 default-direction property.
6788 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6790 * lily/stem.cc (calc_default_direction): remove
6791 Stem::get_default_direction, use default-direction with callback
6794 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6796 * lily/melody-engraver.cc: new file. Acknowledge stems for
6797 interpolated stem directions.
6799 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6801 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6803 * lily/slur-configuration.cc (fit_factor): more robust check for
6804 point in curve X-extent.
6806 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6807 (outside_slur_callback): check for 'outside avoidance.
6809 * lily/slur-configuration.cc (score_extra_encompass): don't use
6810 bound->column() == avoid->column() for checking extents, as this
6811 doesn't work for accidentals.
6813 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6814 DynamicText hardcoding.
6816 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6817 crash if bound stem is NULL
6819 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6822 2005-12-22 Graham Percival <gpermus@gmail.com>
6824 * scm/define-markup-commands.scm: typo. @code{\raise}
6827 * darwin.patch: now used again, includes a
6828 required patch from fink.
6830 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6832 * po/TODO: mention gtranslator along with kbabel.
6833 * po/fi.po: update translations.
6835 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6837 * lily/relocate.cc (setup_paths): Bugfix.
6839 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6841 * lily/slur-configuration.cc (score_extra_encompass): don't use
6842 "avoid" choice for avoid-slur.
6844 * stepmake/bin/install.py (dest): don't create existing dir.
6846 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6848 * stepmake/bin/install.py: Remove file before copying.
6851 * stepmake/aclocal.m4: Do not substitute INSTALL.
6853 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6855 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6856 depend on link-tree.
6858 * lily/relocate.cc (setup_paths): only check path for non-absolute
6859 dir without directory part.
6861 * flower/file-name.cc (is_absolute): new method.
6862 (is_absolute): check root_ too.
6864 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6866 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6867 relocation code. Oops, don't comment out too much.
6869 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6872 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6875 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6877 * .cvsignore: Add install-sh.
6879 * autogen.sh (srcdir): Typo.
6881 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6883 * autogen.sh (srcdir): urg. Touch install-sh.
6885 * stepmake/bin/install-sh (Module): remove.
6887 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6889 * lily/include/relocate.hh: new file.
6891 * lily/relocate.cc: new file. Contain relocation logic.
6893 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6894 (main): read LILYPOND_VERBOSE as the first thing.
6896 * stepmake/aclocal.m4: remove INSTALL variable.
6898 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6899 separate target for making font symlinks.
6900 (documentation-dir): use $(if $(findstring )) for switching off
6903 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6904 something if DOCUMENTATION is no.
6906 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6908 * VERSION: release 2.7.24
6910 * lily/script-column-engraver.cc (stop_translation_timestep):
6911 delay adding to script-column.
6913 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6915 * python/convertrules.py (conv): rule for number-visibility
6917 * lily/slur-configuration.cc (score_extra_encompass): different
6918 distance measure for avoid and inside avoidance.
6919 (score_extra_encompass): use 1/(distance+eps) as penalty.
6921 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6922 encompass objects for generating slur curves.
6924 * lily/slur.cc: use details iso. slur-details property.
6926 * input/regression/slur-tuplet.ly: new file.
6928 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6930 * flower/include/offset.hh (class Offset): new operator /=
6932 * lily/tuplet-number.cc (print): new file, new interface.
6934 * scm/define-grob-properties.scm (all-user-grob-properties):
6935 remove number-visibility property.
6937 * lily/tuplet-bracket.cc (calc_control_points): new function
6938 (calc_connect_to_neighbors): new function.
6939 (print): remove text handling for tuplet numberdef.
6941 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6944 * lily/lily-guile.cc (robust_scm2booldrul): new function
6946 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6948 * lily/tuplet-bracket.cc (calc_position_and_height): use
6949 staff-padding to control whether tuplet brackets are over staves.
6951 * lily/grob.cc (suicide): clear dim_caches_.
6953 * lily/dimension-cache.cc (clear): new function.
6955 * lily/grob.cc (extent): swap order of min-extent and extent
6956 calculations. This fixes hara kiri staves.
6958 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6960 * lily/main.cc: Nitpick: relocation is not based on path, but on
6961 directory (location).
6963 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6965 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6967 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6969 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6971 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6973 * stepmake/stepmake/generic-vars.make (Module): idem.
6975 * stepmake/stepmake/executable-targets.make (default): use it.
6977 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6979 * make/GNUmakefile: don't install make rules.
6981 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6983 (prepend_env_path): more verbosity.
6985 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6987 * GNUmakefile.in: add dir argument for find command.
6989 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6990 fixes weird line numbers for point & click.
6992 * lily/source-file.cc (get_counts): init line/column/char counts.
6994 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6996 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6998 2005-12-16 Graham Percival <gpermus@gmail.com>
7000 * Documentation/user/basic-notation.itely, advanced-notation.itely:
7001 minor fixes from Fredric. Thanks!
7003 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7005 * ly/music-functions-init.ly: add \bar and \clef music function
7007 * lily/lily-lexer.cc: idem.
7009 * lily/parser.yy (FIXME): remove BAR and CLEF.
7011 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7013 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7015 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7016 function arguments too
7018 * lily/main.cc (set_relocation): new function.
7020 * scripts/musicxml2ly.py (convert): add \version
7022 * lily/tie.cc: remove get_default_attachments()
7024 * VERSION (PACKAGE_NAME): release 2.7.23
7026 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7027 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7029 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7031 * lily/tie-formatting-problem.cc (score_ties): new function
7032 (get_variations): new function. Try flipping dirs for collisions.
7033 (generate_optimal_chord_configuration): new function. 1-opt search
7034 for better configuration.
7036 * lily/tie-configuration.cc: new file.
7038 * lily/tie.cc: junk Tie::get_configuration()
7040 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7041 (score_ties_configuration): new function.
7042 (generate_ties_configuration): new function.
7043 (generate_base_chord_configuration): new function.
7044 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7045 (set_manual_tie_configuration): Move body from tie-column-format.cc
7047 * input/regression/tie-dot.ly: new file.
7049 * lily/tie-formatting-problem.cc (score_configuration): score
7052 * lily/tie-helper.cc (get_transformed_bezier): new function
7054 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7056 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7057 -undefined suppress iso. -framework Python
7059 * scm/define-grobs.scm (all-grob-descriptions): set
7060 springs-and-rods (thanks Joe Neeman!)
7062 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7064 * input/no-notation/display-lily-tests.ly (test):
7065 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7066 changed from \tag #'(a b) to \tag #'a \tag #'b
7068 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7070 * Documentation/topdocs/NEWS.tely: strip out-www.
7072 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7074 * config.make.in (AR): add AR and RANLIB
7076 * flower/libc-extension.cc: include cassert
7078 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7081 2005-12-11 Graham Percival <gpermus@gmail.com>
7083 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7085 * stepmake/stepmake/python-modules-vars.make: define
7086 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7088 * THANKS: added Johannes Schindelin.
7090 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7092 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7094 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7095 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7097 * lily/parser.yy: reorganize file layout.
7099 * ly/music-functions-init.ly: add tweak music function.
7101 * lily/grob-info.cc (ultimate_music_cause): new function:
7102 recursively lookup causes.
7104 * lily/parser.yy (chord_body_element): allow music functions for
7105 post-events, allow music functions for chord elements.
7107 * lily/font-config-scheme.cc (display_fontset): add cast.
7109 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7110 #'(a b) -> \tag #'a \tag #'b rule.
7112 * python/musicexp.py (Output_printer.dump_version): new function
7114 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7116 * lily/parser.yy (FIXME): remove \tag
7117 (FIXME): remove tag_music() function.
7119 * lily/lily-lexer.cc: remove \tag
7121 * ly/music-functions-init.ly: define music-function "tag"
7123 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7125 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7127 * VERSION (PATCH_LEVEL): release 2.7.22
7129 * input/regression/lyric-hyphen-retain.ly: renew.
7131 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7134 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7135 iso. minimum-length property for rods.
7137 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7138 LyricSpace item to keep lyrics spaced apart.
7140 * ly/engraver-init.ly: remove Separating_line_group_engraver
7142 * Documentation/user/music-glossary.tely: do setfilename before
7145 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7147 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7148 See xref documentation, for example.
7150 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7152 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7153 pending_skip iso. ly_voice[-1]
7154 (main): add if __main__ for debugging.
7156 * python/musicxml.py (Accidental.__init__): new class.
7158 * scripts/musicxml2ly.py (progress): new function
7159 (musicxml_key_to_lily): don't barf on modeless keys.
7160 (create_skip_music): new function.
7161 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7162 (musicxml_note_to_lily_main_event): new function.
7164 * python/musicexp.py (Music.__init__): add comment field.
7165 (NestedMusic.append): new routine.
7166 (SequentialMusic.print_ly): print comment.
7167 (ArpeggioEvent.ly_expression): new class
7168 (BeamEvent.ly_expression): new class
7169 (NoteEvent.__init__): support for cautionary/forced accs.
7171 * lily/lookup.cc (slur): normal order for array loop.
7173 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7176 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7179 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7181 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7183 * scripts/lilypond-book.py: Introduce option
7184 --preserve-line-breaks, for usage with srcltx
7186 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7188 * scm/output-lib.scm (print-circled-text-callback): draw circle
7189 around text using make-circle-markup.
7191 * Documentation/user/*: strip out-www from file names.
7193 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7195 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7196 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7198 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7200 * Documentation/user/GNUmakefile: idem.
7202 * Documentation/user/macros.itexi: strip out-www
7204 * python/rational.py: python 2.3 compat.
7206 * VERSION (PATCH_LEVEL): release 2.7.21
7208 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7209 option formatting, lilypond style.
7211 * python/musicexp.py: grab from Ikebana: a library for composing
7212 ly music expressions.
7213 (Output_printer): class for advanced .ly printing.
7216 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7217 convert to pythonesque structure.
7219 * python/rational.py: PD rational number class.
7221 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7223 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7225 * lily/part-combine-iterator.cc: Minor bugfix
7227 * THANKS: Update bughunters
7229 2005-12-02 Werner Lemberg <wl@gnu.org>
7231 * mf/README: Document process for proper mf2pt1 conversion.
7233 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7236 * mf/feta-harmonica.mf: Removed. Unused.
7238 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7240 * scripts/lilypond-book.py (do_file): fix thinkos.
7242 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7244 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7245 ($(outdir)/parser.cc):
7246 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7248 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7250 * ly/titling-init.ly (tagline): it should be a space between
7251 "Music engraving by LilyPond" and the version number.
7253 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7255 * VERSION (PACKAGE_NAME): release 2.7.20
7257 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7259 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7261 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7263 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7265 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7267 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7269 * kpath-guile/: remove directory
7271 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7272 file. Encapsulate kpathsea using commandline tools.
7274 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7277 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7279 * Documentation/user/advanced-notation.itely (Setting automatic
7280 beam behavior): Correct a few typos. Thanks to David Bobroff.
7282 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7283 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7285 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7287 * scripts/*.py: gmane address for bugs.
7289 2005-11-28 Pal Benko <benkop@freestart.hu>
7291 * make/ly-rules.make: add -f switch to mv
7293 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7295 * lily/bar-line.cc: interpret it
7297 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7299 * configure.in (--disable-documentation): New switch.
7301 * GNUmakefile.in: Use it.
7303 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7305 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7307 * scripts/lilypond-book.py (do_file): search chunks for
7310 * GNUmakefile.in: add copy step in between so we can lose the
7311 out-www directories.
7313 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7315 * lily/pango-font.cc (pango_item_string_stencil): put
7316 geometry.width into glyph-string too.
7318 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7320 * scm/define-music-display-methods.scm (RevertProperty):
7321 (OverrideProperty): Use grob-property-path property, a list of
7322 symbols, instead of grob-property, which used to be a single
7324 (BassFigureEvent): a figure can be a plain number, not necessarily a
7327 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7329 * VERSION: release 2.7.19
7331 * lily/figured-bass-engraver.cc (process_music): check
7332 figuredBassCenterContinuations first.
7334 * scm/translation-functions.scm (format-bass-figure): make double
7337 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7340 * lily/system-start-delimiter-engraver.cc: move from
7341 Nested_system_start_delimiter_engraver, rename
7342 Nested_system_start_delimiter_engraver ->
7343 System_start_delimiter_engraver.
7345 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7346 bracket type from hierarchy.
7348 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7350 * lily/rest.cc (y_offset_callback): read staff-position.
7352 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7353 mark after-line-breaking-callback as internal.
7355 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7357 2005-11-25 Werner Lemberg <wl@gnu.org>
7359 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7361 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7363 * stepmake/bin/add-html-footer.py (do_file): add google
7365 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7366 staff if first_start_ is true.
7368 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7370 * scripts/midi2ly.py (split_track): add __repr__ members.
7371 (track_first_item): only return Item if not None. This fixes a
7372 problem when dumping a track that starts with an empty channel.
7374 * python/midi.c: doc module.
7376 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7378 * Documentation/user/global.itely (Creating MIDI files): Fix
7379 compilation problem.
7381 2005-11-22 Graham Percival <gpermus@gmail.com>
7383 * Documentation/user/basic-notation.itely: clarify dynamic
7386 * Documentation/user/advanced-notation.itely: add unicode
7387 escape control example, whatever that is. :)
7389 * Documentation/user/global.itely: added "removing dynamics
7392 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7394 * VERSION (PATCH_LEVEL): release 2.7.18
7396 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7397 System_start_delimiter_engraver by
7398 Nested_system_start_delimiter_engraver.
7400 * lily/nested-system-start-delimiter-engraver.cc (struct
7401 Bracket_nesting_node): new class.
7402 (struct Bracket_nesting_group): new class
7403 (struct Bracket_nesting_staff): new class.
7404 (process_music): create hierarchy of grobs. This allows separate
7405 tuning of different SSDs.
7407 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7408 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7410 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7412 * lily/side-position-interface.cc (aligned_side): multiply
7415 * lily/script-engraver.cc (make_script_from_event): allow setting
7418 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7420 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7422 * scm/define-grobs.scm (all-grob-descriptions): new grob
7423 NestedSystemStartDelimiter.
7425 * input/regression/system-start-heavy-bar.ly: new file.
7427 * lily/nested-system-start-delimiter-engraver.cc: new file.
7429 * lily/nested-system-start-delimiter.cc: new file.
7431 * input/regression/system-start-nesting.ly: new file.
7433 * scm/define-grobs.scm (all-grob-descriptions): use X side
7434 positioning for positioning braces for nested contexts.
7436 * lily/system-start-delimiter.cc (print): don't divide extent by
7438 (print): use style iso. glyph.
7439 (staff_bracket): translate glyph inside routine already.
7441 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7443 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7446 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7448 * scm/define-context-properties.scm
7449 (all-user-translation-properties): rename figuredBassFormatter
7450 from newFiguredBassFormatter.
7452 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7454 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7456 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7458 * lily/beam.cc (calc_beaming): new function.
7459 (calc_shorten): new function.
7461 * THANKS: add Edward Neeman.
7463 * input/regression/accidental-clef-change.ly: new file.
7465 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7467 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7469 * lily/clef-engraver.cc (inspect_clef_properties): reset
7470 localKeySignature for clef changes.
7472 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7474 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7475 add dummy definition that works in Linux and add information in
7476 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7478 * Documentation/user/changing-defaults.itely (Modifying context
7479 plug-ins): Add index for \with.
7481 * Documentation/user/music-glossary.tely (dal segno): Updated
7482 example to version >=2.6.
7484 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7486 * Documentation/user/instrument-notation.itely (Printing chord
7487 names): Reorder \chordmode and \repeat in one example.
7489 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7491 * VERSION: release 2.7.17
7493 * Documentation/topdocs/NEWS.tely (Top): add note about
7496 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7497 new function. Search region of 3 positions for best tie.
7498 (score_configuration): new function.
7499 (score_aptitude): new function.
7500 (generate_configuration): new function.
7501 (get_configuration): new function.
7502 (Tie_formatting_problem): new function
7504 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7506 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7508 * THANKS: add Eduardo Vieira & Ralph Little
7510 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7513 * lily/include/tie-formatting-problem.hh (class
7514 Tie_formatting_problem): add Tie_details to
7515 Tie_formatting_problem. Update calling conventions.
7517 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7520 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7522 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7524 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7525 scm/define-context-properties.scm: Maintenance bugfix: make
7526 ligature brackets work again by removing obsolete ligature
7527 primitive callback push/pop.
7529 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7530 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7533 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7535 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7536 used and do not call it a path.
7537 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7539 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7541 * lily/include/tie-formatting-problem.hh (class
7542 Tie_formatting_problem): new file.
7544 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7546 * Documentation/misc/ChangeLog-2.3: new file.
7548 * lily/audio-staff.cc (output): degarianize.
7550 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7552 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7553 Unset PYTHONOPTIMIZE. Fixes install if set.
7555 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7557 * python/convertrules.py (conv): add warning about drums.
7559 * make/stepmake.make: include toplevel-version.make after config.make.
7561 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7562 also allow python2.4
7564 * config.make.in (configure-srcdir): remove GXX GCC vars.
7566 * stepmake/aclocal.m4: don't do non-srcdir build with
7567 symlinks. Use inclusion, so the src directory name can be changed.
7569 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7571 * make/mutopia-vars.make:
7572 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7575 2005-11-13 Werner Lemberg <wl@gnu.org>
7577 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7578 but the affected path. This ensures that the (overlapping) outlines
7579 have the same direction, which is a necessary prerequisite for
7580 FontForge's algorithm to remove overlaps.
7583 * mf/feta-haak.mf: Formatting.
7584 (draw_bracket): Slightly modify outline to avoid an unnecessary
7586 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7587 them from the affected paths.
7589 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7591 * mf/README: remove xpm / accordion notes.
7593 * lily/tie-column-format.cc (set_chord_outline): add dots into
7594 skyline extents. This fixes tie formatting if the left head has dots.
7596 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7597 space inside the staff.
7598 (get_configuration): shift another position if necessary in case
7601 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7603 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7604 buildscript-dir iso. $(depth)/buildscripts.
7606 * tex/GNUmakefile (local-uninstall): remove
7607 music-drawing-routines.ps juggling.
7609 * stepmake/stepmake/install-targets.make (local-install-files):
7610 prepend src-dir to install targets.
7612 * lily/system-start-delimiter-engraver.cc
7613 (acknowledge_system_start_delimiter): use
7614 add_offset_callback(). This fixes translation of nested
7617 * lily/grob-closure.cc (add_offset_callback): only encaps in
7618 simple_closure if it's a procedure.
7620 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7623 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7624 remove-empty where pertinent.
7626 2005-11-12 Graham Percival <gpermus@gmail.com>
7628 * Documentation/user/instrument-notation.itely: added
7629 Cameron Horsburgh's multiple stanzas docs. Thanks!
7631 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7634 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7635 make picture in builddir, not srcdir.
7637 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7639 * VERSION: release 2.7.16
7641 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7644 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7646 * Documentation/user/examples.itely (Piano templates): Minor
7647 modification to the Piano centered lyrics example.
7649 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7651 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7654 * Documentation/user/point-and-click.itely: simplify p&c
7655 instruction: don't configure firefox. Put lilypond-invoke-editor
7656 in front of the browser.
7658 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7659 (run-browser): new function.
7661 * lily/parser.yy (Lily_lexer): recognize Book
7663 * lily/book.cc (clone): new function
7665 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7667 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7669 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7670 Maintenance bugfix: reduce number of font related warnings by
7671 updating naming conventions for glyph-name.
7673 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7675 * scm/define-grobs.scm (all-grob-descriptions): add
7676 rhythmic-grob-interface to TabNoteHead.
7678 * scm/layout-beam.scm (check-quant-callbacks): remove
7681 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7683 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7684 alignment of centered divisiones.
7686 * scm/scripts.scm (articulations): Maintenance bugfix:
7687 follow-into-staff -> quantize-position.
7689 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7690 plica head in porrectus deminutus.
7692 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7694 * make/lilypond.fedora.spec.in (Group): add %clean section.
7696 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7697 less then 1/5th of total length.
7698 (print): use gap too. Fixes tupletUp-single-bracket.ly
7700 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7701 events into EventChord. This fixes textspanners on mm rests. Fixes
7704 * lily/side-position-interface.cc (get_axis): read side-axis
7705 (set_axis): set side-axis.
7707 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7708 properties everywhere.
7710 * lily/spacing-spanner.cc (breakable_column_spacing): add
7711 average-spacing-wishes. Take maximum if not set.
7712 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7714 * scm/define-grobs.scm (all-grob-descriptions): add
7715 average-spacing-wishes.
7717 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7718 offset callbacks. This fixes alignment for Fingering objects.
7720 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7721 space for key - timesig combination.
7723 * input/regression/script-stem-tremolo.ly (Module): new file.
7725 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7728 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7729 Fixes: c-tremolo-script.ly.
7731 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7733 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7735 * scm/define-grobs.scm (all-grob-descriptions): remove
7736 self-X-offset. Fixes alignment of octavate-8.
7738 * scripts/lilypond-book.py (datadir): look in
7739 LILYPONDPREFIX/share/lilypond/current/
7741 * GNUmakefile.in: symlink current to <VERSION>.
7743 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7745 * lily/main.cc: eps listed as a backend.
7747 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7749 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7751 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7753 * lily/include/score.hh (class Score): remove texts_ member.
7755 * lily/beam.cc (set_stem_lengths): force direction callback.
7756 (print): read quantized-positions, so we can force
7757 Beam::set_stem_lengths to occur.
7758 (rest_collision_callback): use common X parent.
7760 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7762 * flower/file-path.cc (find): Bugfix: Return name of file found.
7764 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7765 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7766 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7768 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7770 * flower/offset.cc: idem.
7772 * mf/*.mf: update email address.
7774 * lily/font-config-scheme.cc: new file.
7776 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7778 * lily/*: cs.uu.nl -> xs4all.nl
7780 * VERSION (PATCH_LEVEL): release 2.7.15
7782 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7785 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7787 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7789 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7791 * lily/staff-performer.cc (process_music): add audio
7792 elements. This makes MIDI instrument changes work once again.
7794 * lily/main.cc (LY_DEFINE): add gmane address.
7796 * lily/beam.cc: remove calc_positions()
7798 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7799 original_ in private scope.
7800 (class Grob): drop pscore_ pointer, change to output_def pointer.
7801 (class Grob): cleanup class definition.
7803 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7805 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7807 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7808 absolute. Better diagnostics.
7810 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7811 This makes lilypond run from the build directory using argv0
7812 relocation (without any --prefix or LILYPONDPREFIX setting).
7814 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7816 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7818 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7819 with simple-closure.
7821 * lily/self-aligment-interface.cc (set_align_self): new function
7822 (set_center_parent): new function.
7824 * lily/side-position-interface.cc (set_axis): new function.
7826 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7829 * scm/define-grob-properties.scm (all-user-grob-properties):
7830 remove [XY]-offset-callbacks add [YX]-offset
7832 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7834 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7835 entry for time signatures after breathing signs. Bug report by
7838 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7840 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7841 not absolute, make it absolute using PATH.
7843 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7845 * python/midi.c (initmidi): Fix type for mingw.
7847 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7849 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7851 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7854 * stepmake/aclocal.m4: Support python cross compiling.
7856 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7859 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7861 * scm/output-lib.scm (chain-grob-member-functions): replace
7864 * lily/chained-callback.cc (Module): remove file.
7866 * lily/rest-collision.cc (force_shift_callback_rest): change to
7869 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7871 * lily/grob.cc (y_parent_positioning): remove axis argument from
7872 parent_positioning callbacks.
7873 (Grob): junk init code
7874 (get_offset): use generic property callbacks for
7875 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7876 (axis_parent_positioning): new function
7877 (axis_offset_symbol): new function
7878 (chain_offset_callback): new function
7879 (add_offset_callback): new function
7881 * lily/beam.cc (rest_collision_callback): change signature; this
7882 is now a chained callback.
7884 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7885 callback administration.
7887 * lily/simple-closure.cc: new file. Smob type that allows "grob
7890 (ly:make-simple-closure FUNC A B)
7892 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7895 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7898 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7900 * lily/rest.cc (polyphonic_offset_callback): remove.
7902 * lily/script-engraver.cc (try_music): remove bool* argument.
7904 * scm/script.scm (default-script-alist): set quantize-position
7907 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7909 * lily/side-position-interface.cc (aligned_side): move staff
7910 position quantization from
7911 Side_position_interface::quantised_position().
7912 (quantised_position): remove
7914 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7916 * input/regression/beam-quant-standard.ly: reindent, set
7917 debug-beam-quanting to #t.
7919 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7920 10000 if this is a "hard" concave beam.
7922 * lily/beam.cc (calc_least_squares_positions): change from
7923 calc_least_squares_dy
7924 (set_stem_lengths): this is now a chained callback.
7926 * lily/context-property.cc (execute_general_pushpop_property):
7927 bugfix override with procedure should have effect.
7929 * scm/define-grob-properties.scm (all-internal-grob-properties):
7930 remove position-callbacks.
7932 * scm/define-grobs.scm (all-grob-descriptions): use
7933 ly:make-callback-chain for positions property.
7935 * scm/layout-beam.scm (check-quant-callbacks): return list of
7938 * scm/lily.scm (type-p-name-alist): add callback-chain
7940 * lily/lily-guile.cc (type_check_assignment): type check failure
7941 is warning not message.
7943 * lily/grob-property.cc (try_callback): walk callback chain if
7946 * lily/chained-callback.cc: new file. new smob type.
7948 * lily/lily-guile.cc (procedure_arity): new function.
7950 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7952 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7954 2005-10-25 John Mandereau <john.mandereau@free.fr>
7956 * Documentation/user/instrument-notation.itely (Figured bass):
7957 describe new features
7959 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7961 * lily/beam.cc (calc_least_squares_dy): use property callback.
7963 * lily/beam-concave.cc (calc_concaveness): use property callback.
7965 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7967 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7971 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7973 * scm/layout-page-layout.scm (page-headfoot): annotate
7976 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7978 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7979 doesn't take y-space.
7981 * scm/paper.scm (paper-alist): fix A7 dimensions.
7983 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7985 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7986 src-wildcard, remove $(wildcard).
7988 * po/GNUmakefile (PO_FILES):
7989 * ps/GNUmakefile (PS_FILES):
7990 * tex/GNUmakefile (TEX_FILES):
7991 * cygwin/GNUmakefile (POSTINSTALLS):
7992 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7993 some wildcard calls.
7995 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7997 * THANKS: add Thomas Bushnell.
7999 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
8001 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8002 (lilypond-main): Redirect to gui-main if 'gui is set.
8004 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8005 for alternative installations kludging s/share/lib/g
8008 * SConstruct (libdir_package_version): Define.
8010 * python/SConscript:
8011 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8014 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8016 * lily/main.cc: clarify --safe.
8018 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8020 * VERSION: release 2.7.14
8022 * Documentation/user/*.itely: remove minimumVerticalExtent.
8024 * scm/define-grobs.scm (all-grob-descriptions): remove
8025 RemoveEmptyVerticalGroup
8027 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8029 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8032 * python/convertrules.py (conv): add rules.
8034 * lily/grob.cc: remove is_empty()
8036 * lily/grob-property.cc: remove add_to_list_property().
8038 * scripts/convert-ly.py (datadir): add prefix switching hack to
8041 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8042 space-function tweak.
8044 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8046 * scm/define-grob-properties.scm (all-user-grob-properties):
8047 remove callback property.
8049 * lily/include/grob.hh (class Grob): remove property_callbacks_
8050 member. Properties of procedure type are assumed to be callbacks.
8052 * lily/ligature-engraver.cc (override_stencil_callback):
8053 rewrite. Use noteHeadLigaturePrimitive as source.
8055 * scm/define-grob-properties.scm (all-internal-grob-properties):
8056 remove ligature-primitive-callback
8058 * lily/include/dimension-cache.hh (class Dimension_cache): make
8059 class, with Grob as friend.
8061 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8062 has_extent_callback()
8064 * scm/translation-functions.scm (format-new-bass-figure): read
8065 figuredBassPlusDirection
8067 * scm/define-context-properties.scm
8068 (all-user-translation-properties): add figuredBassPlusDirection.
8070 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8072 * lily/align-interface.cc (set_ordered): new function.
8074 * lily/grob.cc (flush_extent_cache): rewrite.
8076 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8077 Interval pointer directly.
8079 * lily/main.cc (setup_paths): insert extra / .
8080 (setup_paths): junk cff entry.
8082 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8085 * lily/axis-group-engraver.cc (finalize): remove
8086 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8088 * lily/grob.cc (Grob): don't set extent from ctor.
8089 (extent): use property callbacks.
8091 * lily/axis-group-interface.cc: remove set_axes() function.
8093 * lily/grob-property.cc (del_property): new function.
8095 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8097 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8099 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8101 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8103 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8105 * mf/SConscript: Updates.
8107 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8109 * stepmake/stepmake/*:
8113 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8114 from any directory in build-dir. Cleanups.
8116 * make/srcdir.make.in: Remove.
8118 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8120 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8123 * lily/SConscript: Remove ttftools.
8125 * SConstruct: Resurrect.
8127 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8129 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8132 * lily/paper-book.cc (add_score_title): put Paper_score title into
8135 * scm/translation-functions.scm (format-new-bass-figure): also
8136 allow plus in combination with _
8138 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8140 * VERSION: 2.7.13 released.
8142 * lily/note-collision.cc (check_meshing_chords): don't wipe
8143 stencil, merely set transparent.
8145 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8146 (Top): document #'callbacks.
8147 (Top): document nested \override.
8149 * input/regression/figured-bass.ly: update for slash and pluses.
8151 * input/regression/figured-bass-continuation-forbid.ly (Module):
8154 * scm/translation-functions.scm (format-new-bass-figure): use
8155 slashed-digit if diminished is set.
8156 (format-new-bass-figure): add + if 'augmented is set.
8158 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8160 * input/test/piano-staff-distance.ly: remove file.
8162 * Documentation/user/advanced-notation.itely (Formatting cue
8163 notes): use length-fraction for making stems/beams smaller.
8165 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8168 * lily/new-figured-bass-engraver.cc: new property
8169 centerFiguredBassContinuations
8171 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8174 * lily/context-property.cc (execute_general_pushpop_property):
8177 * input/regression/override-nest.ly: new file.
8179 * python/convertrules.py (FatalConversionError.subber): conversion
8180 rule for #'callbacks
8182 * input/regression/override-nest.ly: new function.
8184 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8187 * lily/context-property.cc (lookup_nested_property): new function.
8188 (evict_from_alist): new function.
8189 (general_pushpop_property): new function.
8190 (execute_general_pushpop_property): rewrite. Support nested
8193 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8195 * lily/beam.cc: use length-fraction too.
8197 * scm/define-grob-properties.scm (all-user-grob-properties):
8198 remove property flag-width-function
8199 (all-user-grob-properties): remove space-function.
8201 * scm/layout-beam.scm: remove flag-width-function.
8203 * lily/beam.cc: remove flag-width-function
8205 * scm/layout-beam.scm: remove beam dir functions.
8207 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8209 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8210 for easier grace tweaks.
8212 * lily/beam.cc: remove dir-function.
8214 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8216 * lily/grob.cc: remove spacing-procedure.
8218 * lily/note-head.cc (calc_stem_attachment): new function.
8219 (internal_print): use callback to get glyph-name.
8221 * lily/grob-property.cc (get_interfaces): new function.
8223 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8225 * lily/stem.cc (calc_stem_end_position): new function.
8226 (calc_length): new function.
8227 document details for stem.
8228 remove Stem::get_direction()
8230 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8232 * lily/grob-property.cc (set_callback): new function.
8234 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8236 * lily/item-scheme.cc: new file.
8238 * lily/bar-line.cc (before_line_breaking): remove function.
8239 remove bar-size-procedure, break-glyph-function
8241 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8243 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8245 * lily/system-start-delimiter.cc (print): suicide from
8246 here. Remove after_line_breaking_callback.
8248 * lily/script-interface.cc (calc_direction): use callback for direction.
8250 * lily/side-position-interface.cc (aligned_side): don't use
8251 Side_position_interface::get_direction directly. Use callback.
8253 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8255 (get_print_stencil): rename from get_stencil: create stencil with
8256 transparency, color and cause.
8258 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8260 * python/convertrules.py (conv): insert temporary warning rule.
8262 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8264 * lily/grob-property.cc (try_callback): remove marker if applicable.
8266 * lily/grob.cc: elucidate doc about after/before-line-breaking
8268 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8270 * lily/stem.cc (height): idem.
8272 * lily/stem-tremolo.cc: idem.
8274 * lily/slur.cc (height): don't use get_uncached_stencil()
8276 * lily/rest.cc (y_offset_callback): use offset callback
8277 iso. after-line-breaking callback.
8279 * lily/grob.cc: change after/before-line-breaking-callback to
8280 after/before-line-breaking dummy properties.
8282 * lily/include/grob.hh: remove Grob_status.
8284 * scm/define-context-properties.scm
8285 (all-user-translation-properties): remove verticalAlignmentChildCallback
8287 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8288 (calc_direction): use callback
8289 (calc_positions): use callback.
8291 * lily/tie.cc (calc_direction): use callback. Only call parent
8292 positioning for more than one tie.
8294 * lily/tie-column.cc (calc_positioning_done): use callback
8296 * lily/slur-scoring.cc (calc_control_points): use callback
8298 * lily/slur.cc (calc_direction): use callback.
8300 * lily/note-collision.cc (force_shift_callback): remove.
8302 * lily/dot-column.cc (force_shift_callback): remove. Use
8303 other_axis_parent_positioning.
8305 * lily/grob.cc (other_axis_parent_positioning): new function.
8306 (same_axis_parent_positioning): new function
8308 * lily/align-interface.cc (alignment_callback): remove function.
8310 * lily/note-collision.cc (calc_positioning_done): use callback.
8312 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8313 (calc_direction): idem.
8314 remove print function.
8316 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8318 * lily/dot-column.cc (calc_positioning_done): use callback.
8320 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8322 * lily/beam.cc (calc_direction): use pseudo-property for beam
8324 (calc_positions): use callback
8326 * lily/align-interface.cc (calc_positioning_done): use
8327 callback. Fold fixed distance and normal alignment in one function.
8329 * lily/stem.cc (calc_stem_end_position): use callback.
8330 (calc_positioning_done): idem.
8331 (calc_direction): idem.
8332 (calc_stem_end_position): idem
8333 (calc_stem_info): idem.
8335 * lily/grob-property.cc (get_property_data): new function:
8336 (try_callback): new function.
8338 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8341 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8343 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8345 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8349 * lily/include/*.hh (Module): compile fixes.
8351 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8353 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8354 as an argument for char-syntax: use (char-syntax (or nil 0))
8355 instead of (char-syntax nil), thanks to Milan Zamazal.
8357 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8359 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8362 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8365 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8367 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8368 add class_name() method.
8370 * lily/music-scheme.cc: remove ly:music-name.
8372 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8374 * cygwin/postinstall-lilypond.sh: Remove cruft.
8376 * cygwin/postremove-lilypond.sh: Remove.
8378 * cygwin/GNUmakefile (default): Remove postremove rules.
8380 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8382 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8385 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8388 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8389 consider break index for broken spanner.
8391 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8392 characters from string before splitting.
8394 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8396 * scm/framework-ps.scm (output-preview-framework): use
8397 is-book-title to determine whether to chop off the booktitle.
8399 * lily/paper-book.cc (systems): init from book-title-properties
8400 (add_score_title): init score-title-properties.
8402 * ly/paper-defaults.ly: add {score,book}-title-properties.
8404 * scm/document-backend.scm (lookup-interface): error message if
8405 using unknown interface.
8407 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8410 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8412 (make_bracket): new function.
8414 * scm/lily.scm (define-scheme-options): add paper-size option.
8416 * ly/declarations-init.ly (laissezVibrer): get paper size from
8419 * scm/translation-functions.scm: use \fontsize for changing the
8422 * scm/define-grobs.scm (all-grob-descriptions): set
8423 between-length-limit to 1.0
8425 * lily/tie-helper.cc: add between_length_limit_ detail property.
8427 * mf/feta-bolletjes.mf: typos.
8429 * lily/note-head.cc (internal_print): don't shadow idx
8430 parameter. This fixes wrong attachment for do shape heads.
8432 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8434 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8436 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8438 * scm/layout-slur.scm: rename from slur.scm
8440 * scm/layout-page-layout.scm: rename from page-layout.scm
8442 * scm/layout-beam.scm: rename from beam.scm
8444 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8445 bass-figure-interface
8447 * lily/new-figured-bass-engraver.cc (process_music): add
8448 implicitBassFigures property.
8450 * scm/define-markup-commands.scm (pad-x): new markup.
8452 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8453 minimumVerticalExtent on FiguredBass context.
8455 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8456 case the continuation crosses a line break.
8458 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8460 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8461 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8462 absolute file name bug.
8464 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8466 * VERSION (PACKAGE_NAME): release 2.7.12
8468 * input/regression/figured-bass-continuation-center.ly: new file.
8470 * input/regression/beam-outside-beamlets.ly: new file.
8472 * lily/beam.cc (set_beaming): don't clip edges.
8473 (connect_beams): don't clip edges.
8475 * lily/beaming-info.cc (clip_edges): new function.
8477 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8479 * Documentation/user/instrument-notation.itely (Figured bass):
8480 demonstrate extenders, update seealso links.
8482 * scm/titling.scm (marked-up-headfoot): change tagline
8483 handling. tagline = ##f will blank the tagline as well.
8485 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8487 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8489 * lily/new-figured-bass-engraver.cc (struct
8490 New_figured_bass_engraver): add new_music_found_ member.
8492 * lily/lilypond-version.cc (Lilypond_version): deal with
8493 incorrectly formatted version strings.
8495 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8496 New_figured_bass_engraver by default.
8498 * lily/ttf.cc (print_trailer): only define glyph names when
8499 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8501 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8503 * lily/horizontal-bracket.cc (make_bracket): new function.
8505 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8506 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8507 BassFigureLine, BassFigureAlignment
8509 * lily/new-figured-bass-engraver.cc (process_music): new file.
8511 * lily/figured-bass-continuation.cc: new file.
8513 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8516 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8518 * scripts/lilypond-book.py: Bug fix, put the quote around the
8519 actual score for LaTeX documents.
8521 * scm/define-grobs.scm (all-grob-descriptions): Change
8522 collapse-height of the SystemStartBracket grob to 5.0,
8523 so the bracket disappears for single stave score lines (similarly
8524 to SystemStartBraces).
8526 * Documentation/user/advanced-notation.itely (Polymetric
8527 notation): Clarify the use of compressMusic.
8529 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8530 that the grace spacer note in other staves need the same duration
8531 and document the stroke-style property.
8533 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8535 * Documentation/user/global.itely (Vertical spacing): document
8536 alignment-extra-space and fixed-alignment-extra-space.
8538 * Documentation/topdocs/NEWS.tely (Top): add entry.
8540 * input/regression/alignment-vertical-spacing.ly: new file.
8542 * python/convertrules.py (conv): add rule.
8544 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8546 * lily/align-interface.cc (stretch_after_break): new
8547 function. Read fixed-alignment-extra-space property.
8548 (align_elements_to_extents): read alignment-extra-space property.
8550 * lily/lily-guile.cc (robust_scm2dir): new function.
8552 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8553 (annotate-space-left): new function. Annotate space left on page.
8554 (annotate-y-interval): new function.
8555 (paper-system-annotate-last): new function. Annotate bottom-space.
8557 * mf/feta-beugel.mf (y):
8559 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8561 * VERSION (PACKAGE_NAME): release 2.7.11
8563 * scm/lily-library.scm (interval-translate): new function
8564 (interval-center): new function.
8566 * scm/page-layout.scm (paper-system-annotate): new function. Add
8567 arrows for dimensions.
8569 * scm/stencil.scm (dimension-arrows): new function.
8571 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8573 * input/regression/page-spacing.ly: add annotatespacing
8575 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8576 (LY_DEFINE): new function ly:paper-system-set-property!
8578 * Documentation/user/global.itely (Paper size): explain how to add
8581 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8582 correspond to GS's definition.
8584 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8586 (print): only connect to next bracket if the next one is alive.
8587 (print): set padding to 0.0 if the bound is a breakable
8588 column. This makes tupletFullLength brackets reach up to the staff
8589 line if it doesn't connect to the next line.
8591 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8593 * lily/bar-number-engraver.cc: correct docs.
8595 * scm/output-lib.scm (first-bar-number-invisible): rename from
8596 default-bar-number-visibility
8598 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8600 * scm/define-music-properties.scm (all-music-properties): remove
8603 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8605 * po/fi.po: refresh.
8607 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8609 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8611 (disappear): bugfix.
8613 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8615 * lily/include/paper-system.hh (class Paper_system): remove
8616 staff_extents_ member.
8618 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8620 * lily/include/paper-system.hh (class Paper_system): remove
8621 number_ variable. Remove is_title_. Remove break_before_penalty_
8623 * lily/paper-book.cc (systems): use 'number property iso. number_
8626 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8627 remove ly:paper-system-number.
8629 * scm/lily-library.scm (paper-system-title?): new function.
8631 * lily/book.cc (process): bugfix: flip ?: cases.
8633 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8636 * ly/music-functions-init.ly: add outputProperty music function.
8638 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8640 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8642 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8644 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8646 * lily/paper-system.cc (internal_get_property): new function.
8648 * Documentation/user/global.itely (Vertical spacing): refer to
8651 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8654 * input/regression/page-spacing.ly: new file.
8656 * input/regression/page-top-space.ly: new file.
8658 * lily/spacing-spanner.cc: cmath -> math.h
8660 * lily/paper-system.cc (read_left_bound): new function. Read
8661 line-break-system-details from left bound to determine extents.
8663 * Documentation/user/programming-interface.itely (Using LilyPond
8664 syntax inside Scheme): change applyxxx -> applyXxx.
8666 * ly/music-functions-init.ly: add outputProperty music function.
8668 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8670 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8672 * python/convertrules.py (conv): rule
8674 * ly/music-functions-init.ly: applyxxx -> applyXxx
8676 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8679 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8681 * flower/include/real.hh: include <math.h> iso. <cmath>
8683 * flower/include/offset.hh: include real.hh
8685 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8687 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8688 fix example, now that 'interfaces is no longer directly available.
8690 * lily/book.cc (process): don't crash if paper == NULL.
8694 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8696 * scm/define-music-types.scm (music-descriptions): set length and
8697 start-callback for QuoteMusic
8699 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8701 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8702 arguments. Fixes compilation error with gcc 3.3.
8704 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8706 * VERSION: release 2.7.10
8708 * stepmake/stepmake/python-module-rules.make
8709 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8711 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8714 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8716 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8717 -Werror. Otherwise GCC barfs over various optimizations.
8719 * scm/define-grob-properties.scm (all-internal-grob-properties):
8720 add note-head property
8722 * Documentation/user/instrument-notation.itely (Laissez vibrer
8725 * input/regression/laissez-vibrer-ties.ly: new file.
8727 * lily/laissez-vibrer-engraver.cc: new file.
8729 * lily/include/tie-column-format.hh: new file.
8731 * lily/tie-column-format.cc: new file.
8733 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8735 * lily/laissez-vibrer-tie.cc: new file.
8737 * lily/include/laissez-vibrer-tie.hh: new file.
8739 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8741 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8743 * scm/define-grobs.scm (all-grob-descriptions): add
8744 LaissezVibrerTie, LaissezVibrerTieColumn
8746 * lily/tie-column.cc (set_tie_config_directions): new function
8747 (final_shape_adjustment): new function.
8748 (shift_small_ties): new function.
8750 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8752 * lily/include/tie.hh (struct Tie_details): add x_gap_
8753 (struct Tie_configuration): add head_position_
8755 * lily/tie-column.cc (set_chord_outline): new function.
8757 * mf/cmr.enc.in: remove file.
8759 2005-09-11 Graham Percival <gpermus@gmail.com>
8761 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8763 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8765 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8766 reduce aliasing effects.
8768 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8771 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8773 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8775 * flower/include/real.hh: std::fabs too.
8777 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8779 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8781 * lily, flower: Include C++ iso C headers. Import namespace std
8784 * lily/side-position-interface.cc:
8786 * lily/note-head.cc:
8787 * lily/include/includable-lexer.hh:
8788 * flower/include/string-data.icc: Remove using std::*.
8790 * lily, flower: Include C++ iso C headers. Import namespace std
8793 * lily/side-position-interface.cc:
8795 * lily/note-head.cc:
8796 * lily/include/includable-lexer.hh:
8797 * flower/include/string-data.icc: Remove using std::*.
8799 * Documentation/user/instrument-notation.itely (Entering lyrics):
8800 Multiple latin-1->utf-8 conversion fix.
8802 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8804 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8806 * lily/tie.cc (get_configuration): also avoid dots for non-space
8809 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8811 * Documentation/user/instrument-notation.itely: Bugfix.
8813 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8815 * tex/GNUmakefile: don't install texinfo.tex
8817 * tex/ : cleanup: remove unused files.
8819 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8821 * flower/include/real.hh: using std::{isnan,isinf}
8823 * VERSION (PATCH_LEVEL): release 2.7.9
8825 2005-09-05 Graham Percival <gpermus@gmail.com>
8827 * Documentation/user/ instrument-notation.itely,
8828 advanced-notation.itely: minor tweaks.
8830 * input/test/script-chart.ly: add item padding.
8832 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8834 * flower/offset.cc: use math.h iso. <cmath>
8836 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8839 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8840 (widen-left-stencil-edges): new function. Fix alignment problems
8841 with LaTeX includegraphics.
8843 * lily/text-interface.cc (interpret_markup): use abort().
8845 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8847 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8849 * lily/tie.cc (get_configuration): update bezier shape as we
8851 (get_configuration): don't move large ties if we're outside of the
8854 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8856 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8858 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8860 * .cvsignore: Add auto-generated configure files and then some.
8862 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8864 * scm/define-grobs.scm (DynamicLineSpanner): Add
8865 X-extent-callback. Fixes hairpin-slur collision.
8867 2005-08-31 Graham Percival <gpermus@gmail.com>
8869 * Documentation/user/advanced-notation.itely,
8870 basic-notation.itely: minor changes.
8872 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8874 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8875 \linebreak between each .eps file if \betweenLilyPondSystem is
8878 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8879 music): Document the \linebreak
8881 * Documentation/user/lilypond-book.itely,
8882 input/tutorial/lbook-latex-test.tex,
8883 Documentation/user/examples.itely: Remove \usepackage{graphics}
8885 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8887 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8889 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8892 * scripts/lilypond-book.py (PREAMBLE_LY): define
8893 inside-lilypond-book
8894 (modify_preamble): new function. Insert \RequirePackage{graphics}
8895 when no {graphics found in preamble.
8897 2005-08030 Graham Percival <gpermus@gmail.com>
8899 * Documentation/user/basic-notation.itely, global.itely,
8900 tutorial.itely: misc small changes.
8902 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8904 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8907 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8909 * lily/tie-column.cc (new_directions): put Tie down on center
8912 * lily/script-interface.cc (before_line_breaking): use
8913 Grob::programming_error
8915 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8917 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8920 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8922 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8924 2005-08-29 Werner Lemberg <wl@gnu.org>
8926 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8927 the `*.scale.pfa' files to avoid warnings.
8929 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8931 * lily/tempo-performer.cc (process_music): idem.
8933 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8935 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8937 * Documentation/user/advanced-notation.itely (Text markup): not a
8940 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8942 * lily/staff-performer.cc (initialize): add tempo/name to
8945 2005-08-26 Graham Percival <gpermus@gmail.com>
8947 * Documentation/user/advanced.itely: add text-only example.
8949 * Documentation/user/invoking.itely: add index entries for
8952 * Documentation/user/ tutorial.itely, basic-notation.itely:
8953 small fixes suggested by Steve D. Thanks!
8955 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8957 * input/regression/markup-bidi-pango.ly: new file.
8959 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8960 standard. Remove #ifdef. Remove memleak.
8961 (text_stencil): use text_dir to decide how to composite items.
8962 (text_stencil): determine uniform text direction for the entire
8965 * scripts/lilypond-book.py (output_name): remove
8966 latex_filter_cmd. Non-portable to non-Unix systems.
8967 (get_latex_textwidth): use File.write and os.unlink() instead.
8969 * THANKS: add Vicente & Trevor.
8971 * lily/grob.cc (discretionary_processing): look up origin for
8972 programming_error too.
8974 * input/regression/tie-broken.ly: new file.
8976 * lily/tie-column.cc (set_chord_outlines): set outline for line
8979 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8981 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8982 unscaled transform, just translate stencils.
8984 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8987 * scm/define-markup-commands.scm (wordwrap-string): use
8989 (wordwrap-stencils): idem.
8992 (wordwrap-stencils): translate last line to right for
8993 text-direction = LEFT.
8995 * scm/define-grob-properties.scm (all-user-grob-properties): add
8998 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
9000 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9001 when copying a Lily_parser object.
9003 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9005 * scm/define-markup-commands.scm (null): add null markup.
9007 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9009 * lily/item.cc: Add documentation of center-invisible
9011 2005-08-24 Graham Percival <gpermus@gmail.com>
9013 * Documentation/user/advanced-notation.itely: add info about
9016 * Documentation/user/programming-interface.itely: fix example
9017 involving raised text.
9019 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9021 * lily/beam.cc (print): fix X start/end points of isolated
9024 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9026 * lily/multi-measure-rest.cc (set_text_rods): new function.
9028 * lily/vertical-align-engraver.cc (process_music): call
9029 Align_interface::set_axis(). This forces #'elements to be ordered,
9030 preventing random vertical reordering of staves.
9032 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9033 add avoid-slur property.
9035 * Documentation/user/basic-notation.itely (Measure repeats): add
9036 countPercentRepeats example.
9038 * Documentation/user/advanced-notation.itely (Other text markup
9039 issues): remove remark about normal-font. We have \normal-text
9041 * input/regression/tie-chord.ly: add note about remaining bugs.
9043 * lily/tie.cc (print): try Tie_column::set_directions () if
9044 control-points not yet defined.
9046 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9048 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9049 extent. This fixes braces falling out of the EPS bbox.
9051 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9054 2005-08-23 Graham Percival <gpermus@gmail.com>
9056 * {various} : change #up->#UP and #down->#DOWN.
9058 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9060 * Documentation/user/advanced-notation.itely: clarify
9061 what objects handles text on a multimeasure rest.
9063 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9065 * VERSION (PATCH_LEVEL): release 2.7.7
9067 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9069 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9071 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9073 * input/regression/*.ly: formatting clean-up. Default layout
9074 before music expression.
9076 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9077 romanze28-2 example.
9079 * scm/ps-to-png.scm: remove dir-re function.
9080 (make-ps-images): generate page names, instead of globbing them.
9081 This brings down LilyPond memory usage for make web by a factor
9084 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9085 don't use glob. With 3000 files, globbing
9086 Documentation/user/out-www/ can take too much time.
9088 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9090 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9092 * input/regression/tie-manual.ly: new file
9094 * input/regression/tie-chord.ly: update.
9096 * flower/include/interval.hh (struct Interval_t):
9098 * lily/tie.cc (distance): new function
9099 (height): new function.
9100 (init): new function
9101 (Tie_details): new struct.
9103 * lily/skyline.cc (skyline_height): new function.
9105 * lily/tie-column.cc (set_chord_outlines): new function.
9106 (new_directions): read tie-configuration
9108 * lily/skyline.cc: fix ASCII art.
9110 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9112 * python/convertrules.py (string_or_scheme): Fix spelling error
9114 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9116 * lily/tie-column.cc (set_directions): set directions only once.
9117 (add_configuration): new function.
9119 * lily/tie.cc (set_control_points): new function
9121 * lily/tie-column.cc (new_directions): new function.
9123 * ly/music-functions-init.ly: set 'pitch property
9124 iso. trill-pitch. This makes \relative work with \pitchedTrill
9126 * lily/tie.cc (get_configuration): new function. Don't generate
9127 control points, rather, generate configuration.
9128 remove head-pair property.
9130 * lily/include/tie.hh (struct Tie_configuration): new struct.
9132 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9134 * Documentation/topdocs/NEWS.tely: clarify.
9136 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9138 * lily/tie.cc: remove minimum-length
9140 * scm/define-grob-properties.scm (all-user-grob-properties):
9141 remove staffline-clearance, y-offset
9143 * input/regression/tie-dots.ly (Module): remove.
9145 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9146 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9148 * input/regression/tie-single.ly: new file.
9150 2005-08-21 Graham Percival <gpermus@gmail.com>
9152 * ly/bagpipe.ly: fix compile problem.
9154 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9156 * lily/midi-item.cc (name): new method.
9158 * lily/staff-performer.cc (acknowledge_audio_element): use
9159 signature of baseclass.
9161 * lily/engraver-group.cc (do_announces): move recursion call out
9164 * lily/drum-note-performer.cc (class Drum_note_performer): use
9165 process_music everywhere.
9167 * ly/performer-init.ly: add default children everywhere.
9169 * lily/paper-book.cc (output): call paper-book-write-midis
9170 directly: always write MIDI, even if no \layout {} block.
9172 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9174 * VERSION (PACKAGE_NAME): release 2.7.6
9176 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9177 about not being able to handle repeat.
9179 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9181 * Documentation/user/examples.itely (Piano templates):
9182 * lily/include/performer-group.hh: Remove last traces of
9183 Performer_group_performer. Fixes make web.
9185 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9187 * Documentation/user/examples.itely (Piano templates): change
9188 Engraver_group_engraver -> Engraver_group
9190 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9191 scm_stand_in_procs is not weak_any.
9193 * lily/volta-bracket.cc (print): don't use strcmp().
9195 * lily/volta-engraver.cc (process_music): use
9196 Text_interface::is_markup() for setting the 'text property of the
9199 * input/mutopia/claop.py (accents): update syntax to 2.6
9201 * scm/define-context-properties.scm
9202 (all-user-translation-properties): add countPercentRepeats.
9204 * Documentation/user/basic-notation.itely (Measure repeats): add
9205 isolated percent example.
9207 2005-08-18 Graham Percival <gpermus@gmail.com>
9209 * input/ {various}: change direction #1, #-1 to
9210 #up/#down or \fooUp, \fooDown.
9212 * Documentation/user/music-glossary.tely: #-1 to #down.
9214 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9215 to #up, #-1 to #down.
9217 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9219 * lily/include/engraver-group.hh: rename.
9221 * lily/include/performer-group.hh: rename.
9223 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9225 * input/test/script-abbreviations.ly: Removed some old LaTeX
9228 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9230 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9231 Remove functions. Remove if 1: constructs, reindent.
9233 * scripts/convert-ly.py (add_version): Add functions from
9236 * scm/script.scm (default-script-alist):
9237 s/priority/script-priority. Fixes script stacking. Backportme.
9238 (Fermata): Very low priority.
9240 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9242 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9244 * input/regression/slur-script.ly: remove padding tweaks. Add
9247 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9248 time sigs and related stuff.
9250 * scm/define-grob-properties.scm (all-user-grob-properties): add