1 2006-11-01 Joe Neeman <joeneeman@gmail.com>
3 * lily/optimal-page-breaking.cc (try_page_spacing): don't average
6 2006-11-01 Han-Wen Nienhuys <hanwen@lilypond.org>
8 * GNUmakefile.in (SUBDIRS): remove cygwin dir too.
10 2006-10-31 Han-Wen Nienhuys <hanwen@lilypond.org>
12 * Documentation/user/GNUmakefile:
13 don't use ImageMagick, use GS directly.
16 otf depends on otf-g?table. Fixes race condition in -j2 build.
17 (cherry picked from b0628c40c47202bddac01e18cd4808b3c9d12faf commit)
23 remove .deb/.rpm downloading.
25 * buildscripts/git-update-changelog.py:
26 bugfixes for git-update-changelog.py
28 * Documentation/user/GNUmakefile:
31 2006-10-30 Han-Wen Nienhuys <hanwen@lilypond.org>
33 * input/regression/tie-semi-single.ly:
34 use position/direction from single tie case too. This fixes
35 overrides and defaults for single laissez-vibrer and repeat ties.
37 * buildscripts/git-update-changelog.py:
38 only prepend header if one patch was successful.
40 2006-10-31 Jan Nieuwenhuizen <janneke@gnu.org>
42 * cygwin/GNUmakefile (#INSTALLATION_OUT_DIR): Remove postinstall
43 stuff. Remove cygwin packaging stuff.
45 2006-10-30 Jan Nieuwenhuizen <janneke@gnu.org>
47 * python/convertrules.py (conv): Part 2 fixes vertical extent.
49 * input/test/vertical-extent.ly: Fix and elaborate on vertical
50 staff extent. (Thanks Mats)
52 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
54 * buildscripts/git-update-changelog.py (main): write .msg and cvs
57 * scm/define-grobs.scm:
58 separation-items have width
64 * Documentation/topdocs/NEWS.tely:
65 * lily/separating-group-spanner.cc:
66 * lily/slur-engraver.cc:
67 * lily/slur-scoring.cc:
68 * scm/define-grobs.scm:
69 * input/regression/slur-clef.ly:
70 add breakableSeparationItem to extra encompass for slurs. This
71 fixes slur/clef slur/key collisions etc. Should fix #49
73 * lily/include/slur-scoring.hh:
74 * lily/slur-scoring.cc:
75 Use X of separation item as slur start. Fixes #120
77 2006-10-29 Han-Wen Nienhuys <hanwen@lilypond.org>
79 * buildscripts/git-update-changelog.py (changelog_body): don't
82 * lily/grob.cc: add avoid-slur
84 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
88 move server/emacsclient to elisp/
90 * buildscripts/git-update-changelog.py (Commit.note_del_file):
93 * elisp/server.el.patch:
96 * elisp/emacsclient.patch:
99 * buildscripts/git-update-changelog.py:
106 * buildscripts/git-update-changelog.py:
107 script to update ChangeLog with Git messages.
109 * lily/beam-engraver.cc:
110 * input/regression/rest-pitched-beam.ly:
111 don't set callback if staff-position set. Fixes #126.
113 * lily/bar-number-engraver.cc:
115 * lily/fingering-engraver.cc:
116 * lily/grob-property.cc:
118 * lily/include/grob.hh:
119 * lily/include/lily-guile-macros.hh:
120 * lily/mark-engraver.cc:
121 * lily/melody-engraver.cc:
122 * lily/script-column.cc:
123 * lily/tie-formatting-problem.cc:
125 internal_get_property_data() using ly_symbol2scm()
127 * stepmake/stepmake/generic-targets.make:
128 create .gitignore in outdir.
133 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
135 * input/test/vertical-extent.ly:
136 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
138 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
140 * stepmake/bin/add-html-footer.py (compose): remove setgcos
142 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
144 * GNUmakefile.in (install-help2man): install-help2man target.
146 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
148 * SConstruct (configure): Do not check for /bin/sh.
150 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
152 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
155 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
157 * input/regression/fret-boards.ly: new file.
159 * po/de.po: new po courtesy translation team.
161 * scripts/lilypond-book.py (get_option_parser): add newline to doc
164 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
166 * ly/gregorian-init.ly (neumeDemoLayout): update
167 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
169 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
170 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
172 2006-10-27 Erlend Aasland <erlenda@gmail.com>
174 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
175 Yet another build fix.
177 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
179 * SConstruct (lilypondprefix): use sorted() for list_sort()
182 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
184 * flower/SConscript: Unit test rules.
186 * flower/test-std.cc: Compile fix.
188 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
190 * python/midi.c (pymidi_parse_track): warning fixes.
192 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
193 include dot-column.hh
195 2006-10-26 Graham Percival <gpermus@gmail.com>
197 * Documentation/user/{basic-, global}: minor changes from mailist.
199 2006-10-26 Erlend Aasland <erlenda@gmail.com>
201 * scm/define-grobs.scm: trivial beautification
203 * lily/tie-performer.cc: no need to #include "pqueue.hh"
205 * lily/source-file.cc: put multibyte var inside #if clause
207 * scm/define-grob-interfaces.scm:
208 * scm/define-grob-properties.scm:
209 Build fix (string-fret-finger-combinations)
211 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
214 * Documentation/user/lilypond-book.itely: Build fix.
216 2006-10-26 Joe Neeman <joeneeman@gmail.com>
218 * lily/system.cc (get_paper_system):
219 * lily/paper-book.cc (systems):
220 move most of the backwards compatibility stuff into
223 * Documentation/topdocs/NEWS.tely: add 2 entries for the
226 * Documentation/user/page.itely: remove time-scaled-music
227 bug for the Page_turn_engraver
229 * lily/paper-book.cc (set_system_penalty): backwards
230 compatibility (breakbefore) for the old page breaker
232 2006-10-25 Graham Percival <gpermus@gmail.com>
234 * Diocumentation/user/instrument-notation.itely: added more
235 info about stanzas; thanks Geoff!
237 * Documentation/user/ {basic, advanced}: small fixes from
240 * THANKS: add some bug reporters.
242 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
244 * scm/define-context-properties.scm (all-user-translation-properties):
245 noteToFretFunction: Add.
247 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
248 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
250 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
252 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
255 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
256 Remove bashism in delete.
258 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
260 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
262 * scm/translation-functions.scm (determine-frets-mf): flatten let*
264 * scm/define-context-properties.scm
265 (all-user-translation-properties): add maximumFretStretch property.
267 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
269 * lily/source-file.cc (get_counts): use multibyte variable.
271 * scm/translation-functions.scm (determine-frets-mf): new
272 function: compute fret numbers.
274 * scm/output-lib.scm (string-frets->description) new function.
275 (fret-board::calc-stencil): new function
277 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
279 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
281 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
283 * lily/tab-note-heads-engraver.cc: cleanups.
285 * lily/fretboard-engraver.cc: new file
287 * ly/engraver-init.ly: add FretBoards context
289 2006-10-24 Joe Neeman <joeneeman@gmail.com>
291 * lily/grob.cc (pure_relative_y_coordinate)
292 (pure_height): use the new call_pure_function stuff
294 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
297 * lily/side-position-interface.cc (pure_y_aligned_side): add an
300 * lily/simple-closure.cc (ly_eval_simple_closure): make
301 simple-closure evaluatable from scheme
302 (evaluate_with_simple_closure): make simple-closures pure-
305 * lily/slur.cc (pure_outside_slur_callback): new function
307 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
308 fits in with previous changes that made the page forces much
311 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
312 and pure-Y-extent into this new function.
313 (pure-conversions-alist): add outside-slur-callback
315 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
317 * Documentation/user/advanced-notation.itely (Instrument names):
318 Remove obsolete bug workaround for instrument names on piano
321 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
323 * Documentation/user/lilypond-book.itely (Integrating DocBook and
324 music): patch by Bertalan Fodor for docbook.
326 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
327 of $(LILYPOND). Prevents lilypond run for .txt files.
329 * INSTALL.txt: gitness.
331 * .cvsignore: update to force gitness.
333 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
335 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
336 detect suicide in nested tuplets.
338 2006-10-23 Werner Lemberg <wl@gnu.org>
340 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
341 typo in argument to FT_Get_X11_Font_Format.
343 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
345 * stepmake/stepmake/po-vars.make: more gitness.
347 * flower/polynomial.cc (check_sol): no empty if bodies.
349 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
351 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
353 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
355 * Documentation/user/examples.itely (Transcription of mensural
356 music): Added more comments in .ly source. Suggest to remove
357 Forbid_line_break_engraver to allow line breaking at all bars.
359 * Documentation/user/instrument-notation.itely (Ancient
360 articulations): Updated @refbugs regarding episem.
362 * Documentation/user/instrument-notation.itely (Gregorian square
363 neumes ligatures): Added \augmentum dots. Updated @refbugs
364 regarding \augmentum.
366 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
368 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
371 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
374 * ly/gregorian-init.ly: Added \augmentum macro.
376 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
378 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
380 * lily/pango-font.cc (pango_item_string_stencil): use
381 FT_Get_X11_Font_Format()
383 2006-10-22 John Mandereau <john.mandereau@free.fr>
385 * po/fr.po: update translation.
387 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
389 * VERSION (PATCH_LEVEL): bump version
391 * input/regression/horizontal-bracket-break.ly: new file.
393 * scm/define-grobs.scm (all-grob-descriptions): calc
396 * lily/horizontal-bracket.cc (make_bracket): support
397 connect-to-neighbor. Fix #118
399 * VERSION: release 2.9.26-2
401 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
403 * VERSION (PACKAGE_NAME): release 2.9.26
405 * buildscripts/output-distance.py (test_basic_compare): add
407 (FileLink.multi_img_cell): new function, glob multi-page png
410 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
412 * po/lilypond.pot: update.
414 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
416 * Documentation/user/global.itely (File structure): remove
419 * lily/parser.yy (FIXME): remove ADDQUOTE
421 * Documentation/user/global.itely (Extracting fragments of
422 notation): new node, about clip systems.
424 * Documentation/user/lilypond-book.itely (Many quotes of a large
425 score): ref to clip systems.
427 * Documentation/user/instrument-notation.itely (Entering lyrics):
428 add note about lyric ties and required font.
430 * lily/open-type-font.cc (glyph_list): format errors.
432 * Documentation/user/programming-interface.itely (Scheme
433 procedures as properties): more doco on simple-closure and scheme
435 (Input variables and Scheme): use lilypond[verbatim], document
438 * Documentation/user/page.itely (Displaying spacing): use \book
439 explicitly, so arrows show .
440 (Line breaking): add note about Forbid_line_break_engraver
442 * Documentation/user/tweaks.itely (Common tweaks): also set length
443 to prevent tie squeezing.
444 (Default files): use @var{}
446 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
447 (Generating LilyPond files): add FOMUS.
449 2006-10-20 Joe Neeman <joeneeman@gmail.com>
451 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
452 Y-offset for TextScript and Script
454 * lily/text-engraver.cc (make_item):
455 * lily/script-engraver.cc (make_script_from_event):
456 remove call to Side_position_interface::set_axis since all scripts
457 now have this set by default
460 * lily/prob.cc: use variables
462 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
464 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
465 at typography, rather analyse stream event duration.
467 * Documentation/user/page.itely (Page formatting): set a6 paper
468 for system separator example.
470 * lily/arpeggio.cc (Module): idem.
472 * lily/accidental-placement.cc: add script-priority property.
474 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
476 * lily/ttf.cc (print_trailer): if all else fails: use
477 glyphIndexXXXX as glyph name. Fixes #117.
479 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
480 entry if cmap contains glyph.
481 (get_index_to_charcode_map): remove from Pango_font class, use
482 global filename -> font mapping.
483 (get_glyph_index_name): new function.
484 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
487 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
489 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
492 * scm/define-grob-properties.scm (all-user-grob-properties):
493 remove outdated doc. Fixes #116
495 * lily/completion-note-heads-engraver.cc (process_music): always
496 clone input events; otherwise we may overwrite input 'duration
497 property. Fixes #115.
499 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
502 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
505 * VERSION (PATCH_LEVEL): bump version.
507 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
509 * lily/engraver.cc (internal_make_grob): use variables.
511 * flower/string-convert.cc (dec2double): clean-up warnings.
513 * configure.in (CXXFLAGS): add -Werror.
515 * VERSION (PACKAGE_NAME): release 2.9.25
517 2006-10-18 Joe Neeman <joeneeman@gmail.com>
519 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
520 line even if we precede a forced break.
522 * lily/optimal-page-breaking.cc (try_page_spacing): square line
523 forces too. Make page-spacing weight default to 10 because the
524 changes to vertical springs decreased the page force/line force
525 proportions. Also, take the average of line force and page force
526 instead of just the sum.
528 * lily/constrained-breaking.cc (initialize): make the stiffness
529 of the vertical springs depend on the height of the system. This
530 prevents pages with only a few large systems from getting huge
533 * Documentation/user/page.itely (Page formatting): document the
534 change in default page-spacing-weight
536 * lily/include/constrained-breaking.hh: initialise bottom_padding_
538 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
540 * input/typography-demo.ly (melody): remove superfluous slur.
542 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
543 add piano-pedal-script-interface
545 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
547 * scripts/lilypond-book.py: DocBook support.
549 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
551 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
553 (stop_translation_timestep): set bound to currentMusicalColumn if
554 not set yet. Fixes #102
556 * lily/piano-pedal-bracket.cc: formatting.
558 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
560 * lily/piano-pedal-align-engraver.cc: new class
561 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
564 2006-10-18 Heikki Junes <hjunes@gmail.com>
566 * po/fi.po: Update Finnish translation (before the next release).
568 2006-10-17 Joe Neeman <joeneeman@gmail.com>
570 * lily/system.cc (get_paper_system): reinstate the backwards-
571 compatible page breaking for the old page breaker.
573 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
575 * lily/recording-group-engraver.cc: removed
577 * lily/context.cc, lily/translator-group.cc: Don't touch
578 Context::implementation_ if it's null
580 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
582 * scm/paper.scm: only use left-margin if defined.
584 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
586 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
588 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
589 strokeFingerOrientations
591 * lily/script-column.cc (row_before_line_breaking): also handle
592 accidentals and arpeggios in horizontal script stacking.
594 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
597 * input/regression/script-stack-horizontal.ly: trim.
599 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
601 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
604 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
605 'text if string argument.
607 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
609 * scm/define-context-properties.scm
610 (all-user-translation-properties): change to strokeFingerOrientations
612 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
614 * lily/parser.yy: remove debug output
616 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
618 * ly/paper-defaults.ly: set left/right margin.
620 * scm/paper.scm (set-paper-dimensions): use left-margin and
621 right-margin for computing linewidth.
623 * Documentation/topdocs/NEWS.tely (Top): idem.
625 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
628 * scm/define-markup-commands.scm (tied-lyric): increase negative
629 space: space syllables tighter.
631 * VERSION (PATCH_LEVEL): bump version.
633 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
636 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
638 * COPYING: further clarification
640 * VERSION: release 2.9.24
642 * input/regression/script-stack-horizontal.ly: add version.
644 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
646 * input/regression/lyric-tie.ly (texidoc): use different words.
648 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
650 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
652 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
653 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
655 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
657 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
659 * Doxyfile: remove file.
661 * scm/define-grob-interfaces.scm (string-finger-interface): add
662 string-finger-interface
664 * lily/general-scheme.cc (LY_DEFINE): move
665 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
667 * Documentation/topdocs/NEWS.tely (Top): add note for
668 string-finger feature.
670 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
673 * scm/output-lib.scm (string-finger::calc-text): read 'digit
676 * input/regression/script-stack-horizontal.ly: new file.
678 * ly/engraver-init.ly: add Script_row_engraver.
680 * lily/script-column.cc (order_grobs): refactor: separate axis
682 (row_before_line_breaking): new function.
684 * lily/script-row-engraver.cc (Script_row_engraver): new file.
686 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
688 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
690 * Documentation/user/instrument-notation.itely: Cleanup: Remove
691 annoying skip notes from mensural ligature example. Update
692 @refbugs for ligatures and mensural ligatures.
694 * lily/coherent-ligature-engraver.cc,
695 lily/include/coherent-ligature-engraver.hh,
696 lily/mensural-ligature-engraver.cc,
697 lily/vaticana-ligature-engraver.cc: Revise code for item
698 reparentizing. There should now be less programming_error
701 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
703 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
704 Maintenance bugfix: Don't create empty Stencil (), but empty box
705 instead. This fix should eliminate some programming_error
708 * ly/engraver-init.ly (MensuralStaff): Set default accidental
711 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
712 \layout block _before_ score.
714 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
716 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
718 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
720 2006-10-13 Erlend Aasland <erlenda@gmail.com>
722 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
724 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
726 * VERSION (PATCH_LEVEL): bump version.
728 * COPYING: clarify exception note.
730 * lily/main.cc: remove remark about "COPYING".
732 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
733 system-count starts at 0 for each clip-region. Change name to
734 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
735 layout block, per score.
737 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
739 * lily/input-smob.cc: add equal_p for Input
741 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
744 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
746 * lily/prob.cc: Add equal_p predicate for Prob
748 * lily/translator.cc: small cleanup
750 * scm/document-music.cc: use data from translator listener
751 registration to generate documentation for event classes
753 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
755 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
757 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
759 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
761 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
763 * Documentation/topdocs/INSTALL.texi: Thinko.
765 * .cvsignore: Update.
767 * lexer-gcc-3.1.sh: Remove.
769 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
770 Update anonymous cvs access. Remove comment about gcc 3.0.4.
772 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
774 * VERSION: release 2.9.23
776 * lily/paper-column-engraver.cc (stop_translation_timestep): also
779 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
781 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
783 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
785 * input/regression/clip-systems.ly (Notes): new file.
787 * scm/lily.scm (define-scheme-options): add clip-systems option.
789 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
791 (dump-stencil-as-EPS): move bbox calculation from previous
793 (output-framework): use -dclip-systems
795 * scm/lily-library.scm (filtered-map): new function
797 * scm/framework-ps.scm (clip-system-EPS): new function.
798 (clip-system-EPSes): new function.
800 * lily/paper-column.cc: add rhythmic-location to interface
802 * scm/define-grob-properties.scm (all-user-grob-properties): add
803 rhythmic-location property.
805 * scm/clip-region.scm: new file: rhythmic-location data type and
806 system-clipped-x-extent function.
808 * ly/init.ly: use (scm clip-region)
810 * lily/paper-column-engraver.cc (stop_translation_timestep): set
811 rhythmic-location for paper column grobs.
813 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
815 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
817 * ly/engraver-init.ly: Remove obsolete comment on
820 * Documentation/user/instrument-notation.itely: Tune Ancient
821 Articulations figure, such that the episem actually shows.
823 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
824 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
826 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
829 2006-10-12 Graham Percival <gpermus@gmail.com>
831 * Documentation/user/ {some}: minor edits that were lost somehow.
833 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
835 * VERSION (PACKAGE_NAME): bump version.
837 * input/regression/lyric-tie.ly (texidoc): new file.
839 * Documentation/topdocs/NEWS.tely (Top): add new feature.
841 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
843 * scm/define-markup-commands.scm (tied-lyric): new function: split
844 string along ~ and reattach with U+203F (tie character) and
847 * scm/output-lib.scm (lyric-text::calc-text): new function.
849 * lily/lyric-engraver.cc (process_music): don't set 'text.
851 * scm/output-lib.scm (string-finger::calc-text): new function
852 (lyric-text::print): new function.
854 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
855 generic for fingering & string number. Use for string-finger.
857 * scm/define-music-types.scm (music-descriptions): add
860 * lily/fingering-engraver.cc (listen_string_finger): new function
862 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
864 * scm/define-context-properties.scm
865 (all-user-translation-properties): add stringFingerOrientations
867 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
869 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
870 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
872 * lily/dots.cc: Added style property for dots.
874 * mf/parmesan-heads.mf: Fix typo in comment.
876 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
877 adding longa head to feta font and removing obsolete default
880 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
882 * scm/output-lib.scm (fingering::calc-text): use origin
883 event-property, not music-property.
885 * lily/lilypond.rc.in: spell my name correctly.
887 2006-10-10 Joe Neeman <joeneeman@gmail.com>
889 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
890 already have a non-empty extent. Fixes estimation for Hara-kiri
893 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
895 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
898 * lily/ligature-engraver.cc: Remove unused #include.
900 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
901 Bugfix: remove method check_for_prefix_loss(Item *) from global
902 namespace to avoid namespace pollution.
904 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
906 * VERSION: release 2.9.22
908 * ly/generate-documentation.ly: update option name.
910 * lily/dynamic-text-spanner.cc (print): revert fix.
912 * scm/define-grob-interfaces.scm
913 (trill-pitch-accidental-interface):
914 add trill-pitch-accidental-interface
916 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
917 dereference if it's really a duration.
919 * lily/figured-bass-engraver.cc (process_music): clear spanner if
920 useBassFigureExtenders is not set.
921 (listen_bass_figure): record as new event if
922 useBassFigureExtenders not set. Fixes #103.
924 * scm/stencil.scm (circle-stencil): don't center stencil argument,
925 instead: move circle. Fixes #107.
927 * scm/define-grobs.scm (all-grob-descriptions): set
928 allow-loose-spacing for PaperColumn and
929 NonMusicalPaperColumn. Kludge for #110.
931 * lily/spaceable-grob.cc: add allow-loose-spacing property.
933 * lily/spacing-determine-loose-columns.cc (is_loose_column):
934 allow-loose-spacing property.
936 * scm/define-markup-commands.scm (postscript): gsave & grestore
937 around embedded PS. Do setlinewidth too. Fixes #109.
939 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
941 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
942 code. This patch fixes ligature brackets that were not at all
945 2006-10-08 Graham Percival <gpermus@gmail.com>
947 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
949 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
951 * scm/define-context-properties.scm: clarified docs (bug 91).
953 * Documentation/user/basic-notation.itely: document volta brackets
954 not aligning (bug 63).
956 * Documentation/user/ global.itely invoking.itely: ignore or
957 add warnings about texstr.
959 2006-10-08 John Mandereau <john.mandereau@free.fr>
961 * po/fr.po: update translation.
963 * po/: update msgids.
965 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
967 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
969 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
971 * Documentation/user/page.itely (Two-pass vertical spacing): add
972 documentation for two-pass spacing technique.
974 2006-10-06 Graham Percival <gpermus@gmail.com>
976 * Documentation/user/convert-ly.txt: new file; new
977 storage place for this file (moved from bugs/ CVS).
979 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
981 * lily/note-head.cc: Fixed programming_error message.
983 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
985 * scm/define-grobs.scm (pure-conversion): move pure-callback
988 * scm/script.scm (default-script-alist): set avoid-slur for turn,
989 marcato, stopped, thumb.
991 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
993 * lily/completion-note-heads-engraver.cc (process_music): don't
994 skimp on memory usage.
996 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
999 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1000 parenthesis item. This fixes premature Y-extent triggering. Fixes
1003 * VERSION (PATCH_LEVEL): bump version.
1005 2006-10-04 Graham Percival <gpermus@gmail.com>
1007 * Documentation/user/advanced-notation.itely: added
1008 info about instrument names for piano or other contexts,
1011 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1013 * mf/feta-bolletjes.mf (solfa_quarter_width): use
1014 solfa_base_notewidth as unit for non-DO-notes too.
1016 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1018 * VERSION: release 2.9.21
1020 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1023 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1025 * python/lilylib.py (progress): Minor fix.
1027 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1029 * lily/note-name-engraver.cc: doc engraver.
1031 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1033 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1035 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1038 * lily/stem-engraver.cc (make_stem): don't set duration-log
1040 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1041 write snippet-names binary.
1043 * python/lilylib.py (system): use os.system for mingw32
1045 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1048 * scm/backend-library.scm: update email address.
1050 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1053 * scm/define-grobs.scm (all-grob-descriptions): use callback to
1056 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1057 handle dot creation separately.
1059 * lily/tab-note-heads-engraver.cc (process_music): idem.
1061 * lily/drum-note-engraver.cc (process_music): idem.
1063 * lily/note-heads-engraver.cc (process_music): idem.
1065 * lily/rest-engraver.cc: don't set duration-log.
1067 * scm/output-lib.scm (string-number::calc-text): new function.
1068 (note-head::calc-duration-log): new function.
1070 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1072 * scm/output-lib.scm (fingering::calc-text): new function.
1074 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1076 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1077 and include-eps-font -> include-eps-fonts
1079 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1081 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1083 * lily/timing-translator.cc: list properties.
1084 (start_translation_timestep): update internalBarNumber too.
1086 * scm/define-context-properties.scm
1087 (all-user-translation-properties): add internalBarNumber.
1089 * input/regression/spacing-no-note.ly: new file.
1091 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1093 * lily/book.cc: #include cleanup.
1095 * lily/include/lily-guile-macros.hh: add assert to
1096 scm_or_str2symbol(SCM).
1098 * VERSION (PATCH_LEVEL): bump version.
1100 * lily/spacing-spanner.cc (musical_column_spacing): handle
1101 musical->nonmusical spacing case, where there is no spacing
1102 wish. Fixes issue #61.
1104 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1105 (pango_item_string_stencil): use logical rect horizontally (to
1106 preserve spaces), ink_rect vertically (for time signatures).
1108 * lily/font-metric.cc (word_stencil): new interface function
1110 * input/regression/utf-8-mixed-text.ly: new file.
1112 * lily/percent-repeat-engraver.cc (listen_percent): remove
1115 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1116 non-dynamic scripts. Fixes #30.
1118 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1120 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1122 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1123 SCM_UNDEFINED for non-existent data.
1125 * lily/side-position-interface.cc (general_side_position): allow
1126 optional current_offset argument for chaining, so combinations of side-position
1127 and outside slur callback don't add up. Fixes issue #92.
1129 * lily/pango-font.cc (pango_item_string_stencil): use
1130 logical_rect. This prevents spaces after words from disappearing,
1133 * VERSION: release 2.9.20
1135 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1137 * scm/define-grob-properties.scm (all-user-grob-properties):
1138 mention stencil as user settable.
1140 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1142 * Documentation/user/page.itely (Page formatting):
1143 document auto-first-page-number
1145 * lily/page-breaking.cc (find_chunks_and_breaks):
1146 * lily/paper-score.cc (calc_breaking): Follow changes to the
1147 Constrained_breaking interface
1149 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1150 here backwards, as an optimisation
1151 (initialize): new function; move most of the code in resize () here
1152 (combine_demerits): cache ragged_right_
1153 (Constrained_breaking): constructor now takes the Paper_score
1155 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1157 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1158 avoid parser lookahead for 0-ary functions.
1160 * lily/translator.cc: Extract event classes from
1161 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1163 2006-10-02 Heikki Junes <hjunes@gmail.com>
1165 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1168 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1170 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1171 function. Call the page breaking function selected in the
1172 `page-breaking' \paper variable, then the post processing function
1173 chosen using the `page-post-process' \paper variable.
1174 (line-height): new function. Return the height of a system.
1175 (line-minimum-position-on-page): new function. Return the position
1176 of a system on page (using the previous line position), only
1177 considering between system padding.
1178 (stretchable-line?): new function. Says whether a line can be
1179 stretched (ie. is not a title nor a single staff system).
1180 (page-maximum-space-left): new function. Computes space left on a
1181 page, when all systems are separated by their padding.
1183 * lily/page-breaking.cc (breaking::make_pages): Move page post
1184 processing function call to page breaking wrapper (common to all
1187 * lily/paper-book.cc (book::pages): call the page breaking
1188 wrapper, instead of the page breaker directly
1190 * ly/paper-defaults.ly: Add \paper variables for page breaking
1191 wrapper and page post processing function. Make
1192 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1193 `system-maximum-stretch-procedure' variable for holding a function
1194 computing the maximum stretch a system allows.
1196 * scm/layout-page-dump.scm (write-page-breaks): computes the
1197 stretch to apply to systems on a page to minimize left
1198 space. Dump this stretch length.
1200 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1201 the system-stretch property of the tweak data to stretch the
1203 (includePageLayoutFile): Void function which includes the
1204 generated page-layout file if it exists and if the page layout
1205 dumping is not asked.
1206 (scoreTweak): if the score tweak named by the argument exists,
1209 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1211 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1212 handle correctly the case where there are multiple \noPageBreaks
1215 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1217 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1219 * abc2ly.py fix so that entering " -- " will translate to a -- in
1220 the lilypond instead of a " - - "
1222 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1224 * lily/align-interface.cc: fix typo
1226 * lily/dynamic-text-spanner.cc (print): Add a special case for
1227 trill spanner right sides.
1229 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1231 * lily/align-interface.cc (get_extents_aligned_translates): add
1232 support for padding variable.
1234 * lily/break-align-interface.cc (self_align_callback): oops: use
1235 loop variable in guard.
1237 * input/regression/repeat-percent-grace.ly: new file.
1239 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1240 remember first currentCommandColumn of a grace run. Fixes issue 70.
1242 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1243 move class definition to CC file.
1245 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1247 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1248 measure-long repeats.
1250 * flower/include/international.hh: include stdarg.h
1252 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1254 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1255 put_systems_on_pages to return an empty result, we need to assign
1256 demerits properly in that case.
1257 (put_systems_on_pages): Make the number of pages depend on the
1258 evenness of page_number. Add auto-first-page-number.
1259 (calc_subproblem): ensure that the page-number is even for the
1260 left-hand page. Warn if the first page-turn doesn't fit onto the
1261 first (right-hand) page.
1263 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1264 (min_page_count): make this publicly accessible
1265 (min_page_count): fix a bug when there are forced page breaks that
1266 was introduced when I made this loop run backwards
1267 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1268 replace space_systems_on_min_pages with these two. The logic in
1269 space_systems_on_min_pages was getting too convoluted and is better
1270 contained in page-turn-page-breaking.
1272 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1274 (breakable_column): typo
1276 * lily/source-file.cc (get_line): fix off-by-one error
1277 and clean up some of the logic
1279 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1281 * lily/page-breaking.cc (make_pages): honour the first-page-number
1284 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1286 * VERSION (PACKAGE_NAME): bump version.
1288 2006-09-26 Pal Benko <benko.pal@gmail.com>
1290 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1291 (the latter is the same as petrucci-f which is kept for compatibility)
1293 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1295 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1297 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1299 * lily/global-context.cc (run_iterator_on_me): break out of loop
1300 if moment doesn't increase.
1302 * scm/define-grob-properties.scm (all-user-grob-properties): add
1305 * lily/accidental.cc (after_line_breaking): read forced property.
1307 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1310 * input/regression/accidental-forced-tie.ly: new file.
1312 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1314 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1316 * lily/figured-bass-engraver.cc: only listen to rest events if
1317 ignoreFiguredBassRest is not set.
1319 * scm/define-context-properties.scm
1320 (all-user-translation-properties): add ignoreFiguredBassRest property
1322 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1324 * lily/paper-book.cc (get_system_specs):
1325 (set_system_penalty): fix breakbefore.
1326 We used to set a penalty on the system after the break, now we
1327 set a permission on the system before the break
1329 * lily/grob-property.cc: add scm debugging hooks into
1330 property modification
1332 * lily/context-property.cc:
1334 rename make_foo_from_properties to internal_make_foo and
1335 move it from context-property.cc to a member function of
1338 * lily/include/lily-guile-macros.hh:
1339 overload ly_symbol2scm macro so that there is no more need
1342 * lily/volta-repeat-iterator.cc:
1343 * lily/tweak-engraver.cc:
1344 * lily/tuplet-bracket.cc:
1345 * lily/span-bar-engraver.cc:
1346 * lily/script-engraver.cc:
1347 * lily/prob-scheme.cc:
1348 * lily/pointer-group-interface.cc:
1350 * lily/grob-scheme.cc:
1351 * lily/grob-property.cc:
1353 * lily/context-property.cc:
1354 * lily/break-substitution.cc:
1355 * lily/break-align-engraver.cc:
1356 * lily/axis-group-interface.cc:
1357 * lily/align-interface.cc:
1358 remove calls to internal_FOO
1360 * lily/system-start-delimiter-engraver.cc:
1361 * lily/parenthesis-engraver.cc:
1362 * lily/accidental-engraver.cc:
1363 remove calls to make_foo_from_properties
1365 2006-09-23 Graham Percival <gpermus@gmail.com>
1367 * Documentation/user/programming-iterfaces.itely: fix
1368 def-music-function -> define-music... leftover.
1370 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1372 * lily/page-spacing.cc (min_page_count): by running the loop
1373 backwards, we can calculate ragged_last properly.
1375 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1377 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1378 printfirst-page-number -> print-first-page-number
1380 * python/convertrules.py: corresponding rule.
1382 * Documentation/user/page.itely (Page formatting): Document the
1383 default values of all page layout parameters.
1385 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1387 * lily/lexer.ll: remove limitation on music function arity. New
1388 mode extratoken, which inserts extra EXPECT_* tokens after
1389 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1391 * lily/parser.yy: Change grammar for music function accordingly.
1393 * lily/include/lily-parser.hh: New method get_state, new member
1394 hidden_state. Works around a problem when parser fetches
1395 MUSIC_FUNCTION token but not the following EXPECT_* token.
1397 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1400 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1401 references to Music; use ASSIGN_EVENT_ONCE everywhere
1403 * lily/grob-info.cc: junk *music_cause
1405 * lily/music.cc: copy eventified articulations to stream event
1407 * lily/part-combine-iterator.cc: Cleanup using enums
1409 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1412 * lily/include/engraver.hh: Junk music.hh include
1414 * lily/stream-event.cc: Changed constructors
1416 2006-09-21 Graham Percival <gpermus@gmail.com>
1418 * Documentation/user/tweaks.itely (Fitting music onto fewer
1419 pages): change settings to avoid warning messages.
1421 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1423 * Documentation/user/tweaks.itely (Fitting music onto fewer
1424 pages): Add between-system-space setting.
1426 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1428 * lily/accidental-placement.cc (calc_positioning_done): don't
1429 trigger Y-extent calculation too early. Use pure_height instead.
1431 * lily/scale.cc (LY_DEFINE): new file.
1433 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1435 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1436 that happen at the start of a score: having a zero-length
1437 chunk was messing up min_system_count calculations.
1439 * lily/source-file.cc (get_line): lower_bound, not
1440 binary_search. Fixes problem where point-and-click would
1441 always point to the first line.
1443 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1445 * lily/accidental-placement.cc (calc_positioning_done): also put
1446 stems into accidental support.
1448 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1451 * scm/script.scm (default-script-alist): avoid-slur and
1452 slur-padding for portato script.
1454 * lily/stem-tremolo.cc (translated_stencil): new function.
1455 (height): use new function. Fixes tremolos on whole notes.
1457 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1460 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1462 * scripts/abc2ly.py (try_parse_comment): idem.
1464 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1465 bar_string iso. string.find()
1469 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1472 2006-09-18 Graham Percival <gpermus@gmail.com>
1474 * Documentation/user/basic-notation.itely: add bug
1475 warning about ties and octavation/clef.
1477 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1479 * VERSION (PACKAGE_NAME): release 2.9.18
1481 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1483 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1484 figure out midi file names right here.
1486 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1488 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1490 * scm/backend-library.scm: option naming: gs-font-load*s*
1492 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1495 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1497 * scm/define-music-types.scm (music-descriptions): remove
1498 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1499 Music::to_event doesn't complain.
1501 * lily/accidental-placement.cc (ape_compare):
1502 * lily/semi-tie.cc (compare):
1503 * lily/note-column.cc (shift_compare): replace by XXX_less
1505 * lily/tie-formatting-problem.cc (set_chord_outline):
1506 * lily/tie-column.cc (calc_positioning_done):
1507 * lily/system.cc (post_processing)
1509 * lily/stem.cc (note_head_positions)
1510 (calc_positioning_done):
1511 * lily/spanner.cc (do_break_processing)
1512 (find_broken_piece):
1513 * lily/span-bar.cc (print):
1514 * lily/semi-tie-column.cc (calc_positioning_done):
1515 * lily/rest-collision.cc (calc_positioning_done):
1516 * lily/program-option.cc (get_help_string):
1517 * lily/note-collision.cc (get_clash_groups):
1518 * lily/new-fingering-engraver.cc (position_scripts):
1519 * lily/keyword.cc (Keyword_table):
1520 * lily/hara-kiri-group-spanner.cc (request_suicide):
1521 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1522 * lily/accidental-placement.cc (calc_positioning_done):
1524 * lily/beam.cc (get_beam_segments):
1525 * lily/grob-array.cc (remove_duplicates):
1528 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1529 ragged-last-bottom = ##f (test the new page breaker)
1531 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1533 * scm/define-context-properties.scm
1534 (all-internal-translation-properties): remove properties that
1535 were used to communicate page-turn stuff to the paper-column
1538 * lily/lily-guile.cc (robust_scm2string): new function
1540 * lily/paper-column-engraver.cc: Clean up page turn stuff
1542 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1543 instead of cluttering up paper-column-engraver.cc
1545 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1547 * scm/layout-page-dump.scm (scm): export utility function names,
1548 to allow user writing cutsom dumping functions.
1550 * scm/layout-page-layout.scm: export utility function names to
1551 enable custom page breaking function writing. Tabify.
1552 (line-next-space): use ?-suffix only for predicates
1553 (page-maximum-space-to-fill): new function. Return the space
1554 between first and bottom system of a page, to give to
1556 (space-systems): use a space-to-fill argument (for instance as
1557 computed by page-maximum-space-to-fill) instead of computing
1558 internaly this space with the page height. That way, the caller
1559 can adjust the space to use.
1560 (make-page-from-systems, walk-paths): compute space to fill before
1561 calling space-systems.
1563 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1565 * scm/script.scm (default-script-alist): set paddings for every
1566 type here, increase for portato mark.
1568 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1571 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1573 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1574 use spanner::set-spacing-rods
1576 * lily/note-column.cc: reformat.
1578 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1579 step positioning for note/rest combinations.
1581 * input/regression/rest-note-collision.ly: new file.
1583 * scm/define-grobs.scm (all-grob-descriptions): add
1586 * flower/include/std-vector.hh: switch off again.
1588 * VERSION (PATCH_LEVEL): bump to 2.9.18
1590 * flower/include/std-string.hh: idem.
1592 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1594 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1596 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1599 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1601 * Documentation/user/page.itely: update page breaking documentation
1603 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1605 * lily/note-collision.cc (calc_positioning_done): only access
1606 first head if available.
1608 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1610 * scm/framework-ps.scm (output-preview-framework): use new name.
1612 * lily/program-option.cc (internal_set_option): use new names.
1614 * Documentation/user/SConscript (lilypond_book_flags): update -d
1617 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1618 output into other programs): new variable names.
1620 * scm/lily.scm (define-scheme-options): uniformize var names.
1622 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1623 tuplets_ is non-empty before popping.
1625 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1627 * lily/spanner.cc (find_broken_piece):
1628 * lily/spacing-spanner.cc (get_columns):
1629 * lily/source-file.cc (get_line):
1630 * lily/simple-spacer.cc (get_column_description):
1631 * lily/keyword.cc (lookup):
1632 use the new binary search.
1634 * flower/include/std-vector.hh: replace binary_search with
1635 a more STL-like version
1637 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1639 * lily/tie-performer.cc: remove unused last_event_ property.
1640 (class Tie_performer): add now_tied_heads_ property for
1641 partially-tied heads.
1642 (acknowledge_audio_element): when adding an Audio_note, put the
1643 note in now_tied_heads_ if the audio note is partially tied.
1644 (stop_translation_timestep): always include entries in
1645 now_tied_heads_ in heads_to_tie_.
1647 * lily/drum-note-performer.cc (process_music): look for tie-events
1648 in the articulations; pass to Audio_note constructor.
1650 * lily/note-performer.cc (process_music): look for tie-events in
1651 the articulations; pass to Audio_note constructor.
1653 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1656 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1657 include initializer in constructor.
1659 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1661 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1662 unless they are breakable. This fixes discrepancies between the forces
1663 calculated here and the forces calculated in get_line_configuration.
1665 * lily/grob.cc (pure_relative_y_coordinate): fix some
1666 mis-estimation that was happening with piano staves.
1668 * lily/constrained-breaking.cc (resize): don't choke if we get a
1669 measure that won't fit on a line.
1670 (combine_demerits): don't consider uniformity when ragged
1672 * lily/page-spacing.cc (solve): why the f* were there two of these?
1673 (calc_subproblem): properly handle the case where a system is taller
1676 * lily/system.cc (get_paper_system): ensure that all the permissions
1677 and penalties are passed to the paper systems.
1679 * lily/page-breaking.cc (create_system_list): support system-count.
1681 * scm/define-grobs.scm (pure-print-callbacks): add
1682 ly:script-interface::print
1684 * lily/page-spacing.cc (min_page_count): fix calculation of min
1685 pages if we are ragged and there are non-zero springs.
1687 * scm/layout-page-layout.scm: if the pure-height estimates are under
1688 the real height, allow space-systems to ignore padding if it is
1689 needed in order to fit the systems on one page
1691 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1693 (solve): fix performance problem. Make sure we always get at least
1696 * lily/page-breaking.cc (make_pages): include write-page-breaks
1699 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1701 * scm/define-grobs.scm: add the new slur-callback
1702 fix pure-relevant to not exclude grobs whose extent is already
1705 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1708 * lily/slur.cc (pure_height): new callback to estimate the height
1711 2006-09-02 Graham Percival <gpermus@gmail.com>
1713 * Documentation/user/invoking.itely: small update on
1714 MacOS X notes; thanks Trevor!
1716 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1718 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1720 * lily/lexer.ll: accept EOF in all states.
1722 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1724 * lily/source-file.cc (Source_file): always 0-terminate character
1725 array, to prevent Flex from barfing.
1727 * lily/global-context.cc (get_output): robustness: don't crash if
1728 no Score context found.
1730 * lily/include/book.hh (class Book): idem.
1732 * lily/include/context-def.hh (struct Context_def): idem.
1734 * lily/include/score.hh (class Score): don't derive from Input.
1736 * lily/book.cc (Book): add a copy ctor.
1738 * buildscripts/output-distance.py (FileLink.calc_distance): count
1739 orphans in distance too.
1741 * python/midi.c (midi_parse_track): robustness: don't read past
1744 * ly/performer-init.ly: add Control_track_performer, move
1745 Tempo_performer and Time_signature_performer to Score.
1747 * lily/score-performer.cc (acknowledge_audio_elements): override
1748 from base class: add to audio-columns
1750 * lily/control-track-performer.cc (add_text): new file: generate
1753 * lily/performance.cc: move output_header_track to
1754 Control_track_performer ()
1756 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1758 * lily/include/midi-item.hh (class Midi_channel_item): insert
1759 class into hierarchy, for items that can have a channel setting. Dehungarify.
1761 * lily/include/performer.hh (class Performer): remove
1762 play_element(); move functionality into announce/acknowledge.
1764 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1766 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1767 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1769 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1771 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1774 * lily/all-font-metrics.cc: remove TFM support.
1776 * lily/include/tfm.hh: remove TFM support, TFM reader.
1778 * lily/include/binary-source-file.hh: remove Binary_source_file.
1780 2006-08-27 Graham Percival <gpermus@gmail.com>
1782 * Documentation/topdocs/NEWS.itely: add @c marker for
1783 stuff I've processed.
1785 * Documentation/user/ various: info from NEWS.
1787 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1789 * lily/paper-column-engraver.cc (finalize): Oops, this change
1790 should have gone in on 2006-08-23
1792 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1794 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1795 quotes to quote arguments. Fixes Windows problem.
1797 * python/lilylib.py (progress): idem
1799 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1801 * scripts/musicxml2ly.py: fix for importing
1802 minor key signatures from MusicXML. (Phillip Kirlin)
1804 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1806 * python/musicxml.py:
1807 (Attributes.get_key_signature): now correctly retrieves mode from
1810 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1812 * lily/parser.yy (output_def_body): take ownership of identifier
1815 * Documentation/user/advanced-notation.itely (Metronome marks):
1816 update use of \tempo in \midi.
1818 * VERSION: release 2.9.16
1820 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1822 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1825 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1827 * input/regression/tie-chord-partial.ly: clarify example.
1829 * scm/define-music-properties.scm (all-music-properties): remove
1832 * ly/music-functions-init.ly: remove \untied.
1834 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1835 stream events and music events.
1836 (stop_translation_timestep): search acknowledged heads for
1839 * input/regression/tie-chord-partial.ly: new file.
1841 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1842 for \char markup command.
1844 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1846 * scm/define-music-types.scm (music-descriptions): consistency:
1847 Use solo-{one,two}-event iso. solo-[12]-event.
1849 * lily/part-combine-engraver.cc (process_music):
1850 Use solo-{one,two}-event iso. solo-[12]-event.
1852 * ly/declarations-init.ly (partCombineListener): add Timing as
1855 * flower/std-string.cc (string_copy): use copy ()
1857 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1859 2006-08-24 Graham Percival <gpermus@gmail.com>
1861 * Documentation/user/changing-defaults.itely, global.itely,
1862 lilypond-book.itely, page.itely: minor changes from mailist.
1864 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1866 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1869 * scm/define-context-properties.scm
1870 (translator-property-description): robustness: detect type errors
1871 in property definitions.
1873 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1874 after getting it from SCM.
1876 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1879 * lily/include/performer.hh (class Performer): strip get_tempo()
1882 * lily/midi-def.cc: strip file.
1884 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1886 * lily/include/context-def.hh (struct Context_def): use
1887 VIRTUAL_COPY_CONSTRUCTOR().
1889 * lily/source-file.cc: smobification.
1891 * lily/include/source-file.hh (class Source_file): smobify
1892 Source_file. Trim redundant members.
1894 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1895 clones after creation. This plugs a huge memory leak.
1897 * python/convertrules.py (FatalConversionError.sub_tempo):
1898 complete rule for \midi{ \tempo }
1900 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1902 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1904 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1906 * input/regression/optimal-page-breaking-hstretch.ly: test for
1907 ragged-last-bottom also
1909 * lily/paper-column-engraver.cc (finalize): make the end of a score
1910 breakable by default. This is to balance out a change in behaviour
1911 of the page-turn-breaker which no longer makes the end of a score
1914 * lily/paper-book.cc (pages): set the systems_ once the pages are
1917 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1918 Page_breaking interface.
1920 * lily/page-breaking.cc (class Page_breaking): make the interface
1921 more consistent and provide abstractions for dealing with
1924 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1925 algorithm. Use the new interface to Page_breaking.
1927 * lily/page-spacing.cc: better support for ragged-bottom and
1930 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1932 * python/convertrules.py (conv): warning on \tempo{}
1934 * ly/performer-init.ly: set tempoWholesPerMinute.
1936 * ly/midi-init.ly: remove \midi
1938 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1941 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1942 tempoUnitDuration for determining what to print.
1944 * lily/lyric-extender.cc: typo.
1946 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1948 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1951 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1953 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1954 eps-pad-boxes is set.
1956 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1958 * THANKS: update sponsors.
1960 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1962 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1964 * input/regression/tie-chord-untied.ly: new file.
1966 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1968 * scm/define-music-properties.scm (all-music-properties): add
1971 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1973 (headertext_nopics): sanitize no-examples text.
1975 * scm/page.scm (make-page-stencil): don't rely on extents of
1976 page-stencil. This fixes spurious space around .EPS files produced
1977 with the EPS backend.
1979 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1981 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1983 * lily/hara-kiri-engraver.cc (process_music): remember
1984 keepAliveInterfaces after processing \set
1986 * lily/lyric-extender.cc (print): support left/right-padding for
1989 * scm/documentation-generate.scm (string-append): revert lilypond/
1992 2006-08-20 Graham Percival <gpermus@gmail.com>
1994 * Documentation/user/lilypond.tely: clarification to
1995 license presentation (not to actual license).
1997 * Documentation/user/basic-notation.itely,
1998 instrument-notation.itely: minor changes.
2000 * input/ {regression, test}/+.ly: clarification to
2001 text (you can click on examples). Thanks, Mats!
2003 * input/manual/bar-lines.ly: adds ||: repeats.
2005 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2007 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
2009 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2011 * Documentation/user/lilypond.tely: strip lilypond/ from info
2012 links, rename to category LilyPond
2014 * lily/pango-font.cc (description_string): new function.
2016 * VERSION: release 2.9.15
2018 * lily/spacing-engraver.cc (stop_translation_timestep): use
2019 Dscho's fix for spacing spanner.
2021 * scm/define-music-types.scm (music-descriptions): use
2022 apply-output-event for ApplyOutputEvent
2024 * lily/output-property-engraver.cc (listen_apply_output): rename
2025 from listen_layout_instruction.
2027 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2030 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2032 * scm/lily.scm (lilypond-all): option read-file-list: substitute
2033 commandline args with contains, split by \n.
2035 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2036 write snippet-names file, call with -dread-file-list. Fixes
2037 command limitations on 64-bit systems.
2039 * input/regression/stencil-color-rotation.ly: new file.
2041 * lily/include/translator.hh (struct Acknowledge_information):
2042 revert: don't use Protected_scm in global objects, as GUILE can't
2043 handle gc_unprotect from automated destructors on MacOS X.
2045 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2046 color, not the original stencil. Fixes combinations of
2047 color/transparency/rotation.
2049 * scripts/lilypond-book.py (main): add --formats=eps for
2052 * lily/spacing-engraver.cc (stop_translation_timestep): don't
2053 crash if spacing_ is nonexistent.
2055 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
2057 * scripts/lilypond-book.py (output): Remove obsolete(!?)
2058 \catcode`\@=12 in the LaTeX output.
2060 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2062 * scm/define-music-types.scm (music-descriptions):
2063 use sustain-event iso. sustain-pedal-event.
2065 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2067 * scripts/convert-ly.py: honour the -n command-line switch
2069 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2071 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2072 break specification.
2074 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2076 * Documentation/user: convert-ly the user manual
2078 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2080 * stepmake/aclocal.m4: version check patch (thanks MWD)
2082 * ly/music-functions-init.ly: robustness. Don't crash if
2083 currentBarNumber is not a number.
2085 * VERSION (PATCH_LEVEL): bump.
2087 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2089 * stepmake/aclocal.m4: better version check; handle fooX.Y
2092 * ly/performer-init.ly: instrument name fixup.
2094 * input/manual/chord-names-jazz.ly (banterProperties):
2095 instrumentName update
2097 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2099 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2101 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2102 function. Use hash tables to check membership.
2104 * lily/general-scheme.cc (LY_DEFINE): new function.
2106 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2108 * lily/include/translator.hh (struct Acknowledge_information): add
2111 * ly/music-functions-init.ly: change name to BreathingEvent
2113 * input/regression/*.ly: apply it.
2115 * python/convertrules.py (conv): better instrumentName conversion
2118 * scm/define-music-types.scm (music-descriptions): add
2119 line-break-event to LineBreakEvent music
2121 * lily/music.cc (to_event): don't crash if music type not set.
2123 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2126 * lily/spacing-engraver.cc (stop_translation_timestep): set
2127 spacing for proportional notation too.
2129 * scm/translation-functions.scm (format-bass-figure): inspect
2132 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2134 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2136 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2138 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2140 * scm/layout-page-layout.scm (make-page-from-systems): new function
2141 (optimal-page-breaks): use the new page-breaking calling convention
2143 * scm/define-context-properties.scm (all-user-translation-properties):
2146 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2147 revokePageTurns functionality. If there is a special barline within
2148 the breakable region, break there instead of at the end of the region.
2150 * lily/paper-book.cc (pages): use the new page-breaking calling
2153 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2155 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2157 * scripts/lilypond-book.py: insert \sourcefileline command in
2158 output, so lilypond error messages refer to the spot in the
2159 original .lytex / .itely sourcefile.
2161 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2163 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2164 space to next column for distance to fixed col.
2166 * VERSION (PACKAGE_NAME): release 2.9.14
2168 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2171 * lily/accidental-engraver.cc (process_acknowledged): don't create
2172 accidental for trill span event. This fixes spurious accidentals
2175 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2177 * scm/define-grob-properties.scm (all-user-grob-properties):
2178 Clarify documentation of side-axis and direction. Thanks to Paul
2179 for the inspiration.
2181 * lily/bar-line.cc: Add documentation for "||:" also in the
2182 interface documentation.
2184 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2186 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2188 * lily/paper-column.cc (set_system): new function.
2190 * lily/spacing-engraver.cc (stop_translation_timestep): store
2191 SpacingSpanner refs in Paper_column.
2193 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2194 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2196 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2198 * lily/beam-engraver.cc (listen_beam): add method for
2199 Grace_beam_engraver too.
2201 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2203 * python/convertrules.py: Fix indentation bug that broke
2204 conversion of files older than 1.3.117.
2205 Fix escape error in the description for 2.9.6.
2207 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2209 * lily/*-engraver.cc: convert all try_music functions to listen_*
2212 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2213 enums to represent pedal types, and calculate more data statically.
2215 * scm/part-combiner.scm (recording-group-emulate): create a
2216 softcoded substitute for recording-group-engraver.cc.
2218 * lily/music.cc: make a common transpose function for events and
2221 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2222 ManualMelismaEvent, and obsoletes Melisma_translator.
2224 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2226 * input/test/instrument-name-align.ly: update version.
2228 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2230 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2231 Doc the --pdf flag to lilypond-book.
2233 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2235 * Documentation/topdocs/NEWS.tely (Top): add description.
2237 * input/regression/tuplet-full-length-note.ly: add file.
2239 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2240 always store axis group.
2242 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2244 * input/regression/instrument-switch.ly: new file.
2246 * lily/instrument-switch-engraver.cc (process_music): new file.
2248 * ly/engraver-init.ly: add Instrument_switch_engraver
2250 * ly/music-functions-init.ly: \instrumentSwitch
2252 * scm/define-context-properties.scm
2253 (all-user-translation-properties): add instrumentCueName
2255 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2257 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2259 * ly/music-functions-init.ly: music function \transposition.
2261 * lily/parser.yy (command_element): softcode \transposition.
2263 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2264 (process_music): oops.
2266 * lily/instrument-name-engraver.cc (start_spanner): new
2267 function. Create spanner when property changes.
2268 (stop_spanner): new function.
2270 * python/convertrules.py (conv): add rule.
2272 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2273 shortInstrumentName iso. instr.
2275 * scm/output-ps.scm (dashed-line): add phase argument to
2278 * lily/bar-line.cc (dashed_bar_line): new function.
2279 (compound_barline): support \bar "dashed".
2281 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2282 --output=DIR to DIR/BASE if it is a dir.
2284 * flower/file-name.cc (file_part): new function
2285 (dir_part): new function
2287 * lily/lily-parser-scheme.cc (LY_DEFINE):
2289 * DEDICATION: update
2291 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2293 * lily/instrument-name-engraver.cc: formatting.
2295 * python/convertrules.py (conv): bugfix for \epsfile.
2297 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2301 * lily/gourlay-breaking.cc: Oops, these should have been included
2304 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2306 * scripts/*.py (program_name): cleanup relocation snippets.
2308 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2310 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2312 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2313 page-breakable by default
2315 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2316 correctly calculated for a single-system page
2318 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2319 bigger than the second number
2321 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2322 acknowledge that we aren't satisfying constraints)
2324 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2327 * lily/grob.cc (pure_height): add minimum-Y-extent
2329 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2332 * lily/constrained-breaking.cc: convert code to use new Matrix class
2333 (get_best_solution): new function
2335 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2336 is a page with no systems
2338 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2340 * VERSION (PACKAGE_NAME): release 2.9.13
2342 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2345 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2347 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2349 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2352 * scm/define-grob-properties.scm (all-user-grob-properties):
2353 remove grace-space-factor.
2355 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2356 grace-spacing-interface
2357 (spacing-options-interface): add.
2359 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2361 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2363 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2364 GraceSpacing object.
2366 * lily/note-spacing.cc: fix prop list formatting
2368 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2369 beaming for grace notes too.
2371 * input/regression/spacing-grace.ly: update.
2373 * lily/grace-spacing-engraver.cc: new file.
2375 * lily/spacing-spanner.cc: add strict-grace-spacing.
2377 2006-07-20 Graham Percival <gpermus@gmail.com>
2379 * lily/parser.yy: compile fix.
2381 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2383 * scm/define-grobs.scm (all-grob-descriptions): typo.
2385 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2386 .eps extension from includegraphics.
2388 * scripts/lilypond-book.py (main): add support for --pdf.
2390 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2391 callback to compute common shortest duration.
2392 (set_springs): typo.
2394 * scm/define-grob-properties.scm (all-user-grob-properties): add
2395 strict-grace-spacing.
2397 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2398 support float_grace_columns_.
2400 * lily/spacing-options.cc (init_from_grob): new file.
2402 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2404 * input/regression/spacing-loose-grace.ly: new file.
2406 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2408 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2409 tupletFullLengthNote too. Choose right bound depending on value.
2411 * input/regression/tuplet-full-length-note.ly: new file.
2413 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2415 * lily/*-performer.cc: Converted try_music to listen_*
2417 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2418 as a stream-event internally. Introduce event_cause (), deprecate
2421 * scm/define-music-types.scm: Removed BusyPlayingEvent
2423 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2425 * Documentation/user/advanced-notation.itely (Font selection):
2426 Document how to get a list of available fonts using 'lilypond
2427 -dshow-available-fonts blabla'.
2429 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2431 * GNUmakefile.in: filter lily-XXX.pdf files.
2433 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2435 * scm/define-grob-properties.scm (all-internal-grob-properties):
2436 remove delta-pitch. Use delta-position everywhere.
2438 * scm/output-lib.scm (fall::print): use new order.
2440 * scm/output-ps.scm (path): reorder arguments.
2442 * scm/output-svg.scm (path): support for path primitive.
2444 * input/regression/bend-after.ly: new file.
2446 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2447 recipe for eps -> pdf conversion.
2449 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2451 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2454 2006-07-19 Graham Percival <gpermus@gmail.com>
2456 * input/manual/screech-boink.ly: moved to here.
2458 * input/screech-boink.ly: deleted.
2460 * scm/define-grob-properties.scm: clarify doc string.
2462 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2464 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2466 * scm/output-ps.scm (path): define path.
2468 * scm/define-stencil-commands.scm
2469 (ly:register-stencil-expression): add path.
2471 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2473 * ly/engraver-init.ly: add Fall_engraver
2475 * lily/parser.yy (music_function_event): allow musicfunction
2476 without music arg as music_function_event.
2478 * lily/grob-scheme.cc (LY_DEFINE):
2479 ly:grob-robust-relative-extent. New function.
2481 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2483 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2485 * scm/output-lib.scm (fall::print): new function
2487 * lily/fall-engraver.cc (stop_fall): new file.
2489 * ly/music-functions-init.ly: alphabetise.
2491 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2494 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2496 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2498 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2501 * lily/translator-group.cc (connect_to_context): non const error message.
2503 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2505 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2508 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2510 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2512 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2515 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2517 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2519 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2521 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2523 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2525 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2527 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2529 * scm/layout-page-layout.scm: Define module, tidy code, use more
2530 functions iso. a single big one.
2532 * scm/layout-page-dump.scm: move page dump functions used in two
2533 pass spacing to this file. Define module.
2535 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2538 * ly/paper-defaults.ly: use module layout-page-layout.
2540 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2542 * lily/music.cc: Revised MusicEvent event class. It now contains
2543 event data directly instead of encapsulating it in music. The
2544 previously used class is renamed to OldMusicEvent.
2546 * lily/stream-event.cc: Stream events are now probs.
2548 * lily/translator-group.cc, lily/translator.cc: Translators can
2549 now listen directly to stream events, by using macros
2550 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2552 * lily/arpeggio-engraver.cc: Converted to use new event system
2554 * THANKS: Corrected spelling mistake.
2556 2006-07-12 Graham Percival <gpermus@gmail.com>
2558 * Documentation/user/SConscript, make/lilypond-vars.make,
2559 input/GNUmakefile: doc build looks in input/manual instead
2562 * input/manual/ GNUmakefile, SConscript: build files for
2565 * input/test/ various: some files moved to input/manual/
2567 * Documentation/user/basic-notation.itely: small updates;
2568 thanks Kieren and Charles!
2570 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2572 * VERSION (PACKAGE_NAME): release 2.9.11
2574 * Documentation/topdocs/NEWS.tely (Top): update prop value
2576 * Documentation/user/basic-notation.itely (Tuplets): new property
2579 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2581 * python/convertrules.py (conv): tweaks.
2583 * VERSION (PATCH_LEVEL): bump version.
2585 * python/convertrules.py (conv): add rule for
2586 tupletNumberFormatFunction.
2588 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2589 tupletNumberFormatFunction.
2591 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2592 text through 'text callback.
2594 * lily/time-scaled-music-iterator.cc (construct_children): copy
2595 tweaks generated events.
2597 * scm/define-context-properties.scm
2598 (all-user-translation-properties): remove tupletNumberFormatFunction
2600 * lily/tuplet-engraver.cc (process_music): don't read
2601 tupletNumberFormatFunction
2603 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2606 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2608 * lily/global-context-scheme.cc: Separated ly:run-translator into
2611 * lily/score-engraver.cc, lily/score-performer.cc,
2612 scm/define-context-properties.scm: Make paper/midi output
2613 accessable as a context property.
2615 * lily/score-translator.cc, lily/score-context.cc: Removed.
2617 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2619 * scm/ps-to-png.scm (Module):
2620 * scm/framework-tex.scm (Module):
2621 * scm/framework-ps.scm (Module):
2622 * scm/backend-library.scm (Module):
2623 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2624 "dDEVICEHEIGHTPOINTS".
2626 2006-07-04 Graham Percival <gpermus@gmail.com>
2628 * Documentation/user/ various: general improvements to
2629 "working with lilypond files" section.
2631 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2633 * lily/sequential-iterator.cc: Change the default get_music_list
2634 to read elements-callback music property
2636 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2637 processing of multimeasure rests. Softcoded
2638 sequential-music-iterator.
2640 * lily/sequential-music-iterator.cc: Removed.
2642 2006-06-28 Graham Percival <gpermus@gmail.com>
2644 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2646 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2648 * lily/parser.yy: Wrap non-post-events in EventChords before
2649 assigning them to identifiers.
2651 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2653 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2654 gives correct vertical placement of \bar ":" in all staff
2655 sizes. Thanks Martial!
2657 2006-06-26 Graham Percival <gpermus@gmail.com>
2659 * Documentation/user/invoking.itely : minor update from mailist.
2661 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2663 * lily/ various: Introduce stream events of types Prepare,
2664 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2665 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2667 * lily/global-context*.cc: Time is now -inf before iteration
2670 * lily/include/context.hh: Removed unique_, init_
2672 * Documentation/topdocs/NEWS: Make the feathered beam example
2673 avoid triggering a bug.
2675 2006-06-24 Graham Percival <gpermus@gmail.com>
2677 * Documentation/user/ various: small additions from mailist.
2679 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2681 * ly/performer-init.ly: Add some missing links in the context
2682 hierarchy for MIDI output. There are probably some more missing!
2684 2006-06-21 Graham Percival <gpermus@gmail.com>
2686 * Documentation/user/ various: minor spelling fixes;
2687 thanks Dave Luttinen!
2689 * Documentation/user/ various: small clarifications;
2690 thanks Anthony Youngman!
2692 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2694 * po/fr.po: add \n appropriately.
2696 * lily/lexer.ll: remove ? from version-seen?
2698 2006-06-19 John Mandereau <john.mandereau@free.fr>
2700 * po/fr.po; update translation, by Jean-Charles Malahieude and
2703 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2705 * THANKS: add Markus Schneider.
2707 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2708 Staff_symbol_engraver
2710 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2711 replace staff_engraver
2713 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2716 * lily/staff-collecting-engraver.cc
2717 (acknowledge_end_staff_symbol): new function
2719 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2721 * lily/staff-collecting-engraver.cc
2722 (acknowledge_end_staff_symbol): new function.
2724 * lily/main.cc: switch on relocation by default.
2726 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2728 * lily/spacing-spanner.cc (musical_column_spacing): set
2729 compound_fixed_note_space to 0.0. Document why.
2731 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2732 range of inverse_hooke_
2733 (Simple_spacer): init completely.
2735 (get_line_configuration): don't use cols.resize(); it introduces
2738 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2740 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2742 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2743 try. Divide by beatlength.
2745 * input/regression/beaming-ternary-metrum.ly: update doc.
2746 add beatLength hack.
2748 * scm/music-functions.scm (make-time-signature-set): add
2749 standard-beat-grouping.
2751 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2753 * input/regression/tie-whole.ly: new file.
2755 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2756 cross center of note head in case of invisible stem.
2758 2006-06-16 Graham Percival <gpermus@gmail.com>
2760 * Documentation/user/ various: small fixes from mailist.
2762 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2764 * lily/breathing-sign.cc (offset_callback): idem.
2766 * lily/align-interface.cc (align_to_fixed_distance): remove
2769 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2772 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2774 * VERSION (PACKAGE_NAME): release 2.9.9
2776 * ly/lilypond-book-preamble.ly: add \version
2778 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2780 * scripts/lilypond-book.py (PREAMBLE_LY): include
2781 lilypond-book-preamble.ly
2783 * lily/stem.cc (get_beaming): return max of 0 and
2784 scm_ilength. Fixes slurring from/to beams.
2786 * ly/lilypond-book-preamble.ly: new file.
2788 * lily/slur.cc: add inspect-index feature.
2790 2006-06-13 Graham Percival <gpermus@gmail.com>
2792 * Documentation/user/tutorial.itely: trivial fix.
2794 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2796 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2797 all non-event music in the parser via MAKE_SYNTAX.
2799 * lily/parser-scheme.cc: Add ly:parser-error function
2801 * scm/paper.scm: fix typo
2803 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2807 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2810 * buildscripts/output-distance.py (test_compare_signatures):
2812 (read_signature_file): use new signature format.
2814 * scm/stencil.scm (write-system-signature): simpler signature
2817 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2820 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2821 stem_end_position, but estimate instead.
2823 * lily/tuplet-bracket.cc (calc_positions): look at
2824 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2825 brackets narrower than beams.
2827 * lily/lexer.ll: set version-seen? even if version is
2830 * lily/rest.cc (y_offset_callback): bugfix: decide position
2831 override based on scm_is_number(). Fixes \rest on center staff
2834 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2835 patterns for 16th triplets.
2837 2006-06-10 Graham Percival <gpermus@gmail.com>
2839 * Documentation/user/ page.itely, global.itely: editing
2842 * Documentation/user/ various: findex -> funindex.
2844 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2846 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2847 insert extra tuplet events.
2849 2006-06-10 Graham Percival <gpermus@gmail.com>
2851 * Documentation/user/programming-interfaces.itely: add
2854 * python/convertrules.py: add annotatefoo -> annotate-foo
2857 * Documentation/user/global.itely: start editing.
2859 * Documentation/user/page.itely: major editing, new spacing
2862 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2864 * scm/define-markup-commands.scm (wordwrap-markups): use
2865 output-def 'line-width if undefined.
2867 * HACKING: trim outdated info.
2869 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2871 * scm/define-grobs.scm (all-grob-descriptions): Add
2872 line-spanner-interface to all grobs that already have
2873 text-spanner-interface or dynamic-text-spanner-interface
2875 * scm/page.scm: Rename annotate{headers,systems,page}->
2878 * input/regression/page-spacing.ly,
2879 input/regression/page-layout-manual-position.ly: idem
2881 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2883 * lily/line-spanner.cc: cleanup property list.
2885 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2886 generator expressions (2.3 compat).
2888 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2890 * lily/vertical-align-engraver.cc: Make sure that the
2891 align{Above,Below}Context properties are included in the automatic
2894 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2896 * scm/paper-system.scm (paper-system-annotate): also annotate the
2897 estimated pure-Y-extent
2899 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2901 * lily/system.cc (break_into_pieces): set the estimated height
2902 of each child system
2904 * lily/stem.cc (pure_height): new pure-Y-extent callback
2906 * lily/staff-symbol-referencer.cc (callback): don't destroy
2907 the staff-position property
2909 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2910 consider_suicide into two functions
2912 * lily/constrained-breaking.cc (resize): use the new pure
2913 callbacks to estimate the height of a system
2915 * lily/axis-group-interface.cc (pure_group_height): new
2916 side-effect-free VerticalAxisGroup height-callback
2918 * lily/align-interface.cc (get_extents_aligned_translates):
2919 split align_elements_to_extents into two functions
2920 (get_pure_child_y_translation): new function
2922 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2924 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2926 * lily/paper-score.cc: cache break_indices and columns
2928 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2930 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2932 * lily/font-config.cc (init_fontconfig): do the init if
2933 cache_file, but don't look at cache_file.
2935 * input/regression/quote-tie.ly: new file.
2937 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2938 to Head_event_tuple, so we deal gracefully with ties on
2941 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2944 2006-06-08 Graham Percival <gpermus@gmail.com>
2946 * input/test/ smart-transpose.ly, reverse-music.ly:
2947 \applyMusic to music functions update, thanks Michael!
2949 2006-06-07 Graham Percival <gpermus@gmail.com>
2951 * input/test/ add-staccato.ly, add-text-script.ly,
2952 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2953 music functions update, thanks to Michael Meixner.
2955 * Documentation/user/music-glossary.tely: small fix
2958 * Documentation/user/ various: minor additions from mailist.
2960 * Documentation/user/lilypond.tely, basic-notation.itely:
2961 small test of @funindex. (works here)
2963 * input/test/font-table.ly: reduce size to partially
2964 de-ugly version in manual.
2966 * Documentation/user/page.itely: new file (split former
2967 "global issues" into "page settings" and "non-musical
2970 * Documentation/user/ various: fix @ref{}s to match
2971 new chapter names (above).
2973 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2975 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2977 2006-06-06 Graham Percival <gpermus@gmail.com>
2979 * Documentation/user/advanced-notation.itely: add example
2980 for segno/coda on barline.
2982 * tex/texinfo.tex: merge from upstream.
2984 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2986 * scripts/lilypond-book.py (process_snippets): Argument fix.
2989 * buildscripts/builder.py:
2992 * Documentation/user/SConscript: More SCons fixes.
2994 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2996 * lily/font-config.cc (init_fontconfig): Only initialize if
2997 global cache_file is found.
2999 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
3001 * ly/music-functions-init.ly: Updated \overrideProperty to use the
3004 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3006 * VERSION (PACKAGE_NAME): release 2.9.8
3008 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3009 function. Delay ledger modifying ledgered grobs to
3010 stop_translation_timestep(), to ensure that we're ledgering
3011 according to the new spanner.
3012 (acknowledge_staff_symbol): don't check for non-NULL
3013 staff_sym->get_bound()
3015 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3018 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3021 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3022 directly from srcdir/stepmake/aclocal.m4
3024 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3027 * lily/simple-spacer.cc (get_column_desc): desc -> description.
3029 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3031 * lily/simple-spacer.cc (get_line_configuration): add
3032 keep-inside-line rods
3033 (struct Column_desc): add constructor
3034 (struct Rod_desc): add constructor
3035 (get_line_forces): check for forced page breaks here too
3037 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3038 support/elements cycles between InstrumentNames and AxisGroups
3040 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3042 * config.make.in (METAFONT): remove MAKEINFO_VERSION
3044 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3045 make-txt-files target.
3047 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3048 make-txt-files target.
3050 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3052 * stepmake/stepmake/generic-vars.make (distdir): create dist in
3055 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
3057 * Documentation/user/instrument-notation.itely,
3058 input/regression/breathing-sign-ancient.ly,
3059 input/test/divisiones.ly: Removed redundant property settings for
3062 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3063 fix lyrics alignment problems. They are implemented now as scheme
3064 functions that add the appropriate unicode char to the first lyric
3065 event rather than adding a separate lyric event. Minor edit of
3068 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3070 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3071 pollute src dir with built .txt files, but install directly from
3072 Documentation/topdocs/out/
3074 * buildscripts/output-distance.py
3075 (ComparisonData.create_html_result_page): put version/directories
3078 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3081 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3082 Patch by Karl Hammar
3084 * buildscripts/readlink.py: add file.
3085 Patch by Karl Hammar
3087 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3089 * lily/tuplet-number.cc (print): prevent stencil from being
3092 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3094 * scm/stencil.scm (write-system-signature): explicitly
3095 -well, superfluously- close output port.
3097 * buildscripts/output-distance.py (main): oops. Add extra argument.
3099 2006-06-05 Graham Percival <gpermus@gmail.com>
3101 * Documentation/user/music-glossary.tely: clarified example
3102 from Francisco Vila, thanks!
3104 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3106 * input/regression/spacing-section.ly: new file.
3108 * lily/input.cc (programming_error): new function.
3110 * lily/spacing-engraver.cc (try_music): new function. Accept
3111 spacing-section-event
3113 * lily/spacing-spanner.cc (set_springs): take slices of all
3114 columns for spacing.
3116 * lily/include/paper-column.hh (class Paper_column): add
3117 Paper_column::compare.
3119 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3121 * scm/define-music-types.scm (music-descriptions): add
3124 * lily/music-iterator.cc (report_event): use programming_error for
3125 sending non-event error.
3127 * lily/input.cc (programming_error): new function
3129 * buildscripts/output-distance.py (main): use compare-XXX for
3131 (main): --threshold option, default at 0.30
3133 * output-distance.py (main): add --threshold option.
3135 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3137 * scm/paper-system.scm (paper-system-annotate): fix problem when
3138 annotating an empty system
3140 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3142 * GNUmakefile.in: reinstate old web tar/copying.
3144 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3146 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3147 nothing changes. (Erik S)
3149 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3152 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3154 * scm/define-markup-commands.scm (whiteout): do not force
3155 foreground color of argument markup to black.
3157 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3158 the left of the arrow, instead of below the arrow name, so that,
3159 when two little arrows are vertically stacked, their dimensions
3160 and name should not overlap. Add a color key parameter.
3162 * scm/paper-system.scm (paper-system-annotate): Annotate
3163 next-space+next-padding instead of next-space. Annotate space
3164 between next-padding and next-space+padding, respectively, and
3165 following system extent and refpoint-Y-extent. Use colors.
3167 * scm/page.scm (annotate-page): translate annotations slightly to
3170 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3172 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3173 fix for x-staff slurs. Thanks Joe!
3175 * buildscripts/output-distance.py
3176 (SystemLink.output_expression_change_count): keep track of changed
3177 details, and dump in details html page.
3179 * input/regression/figured-bass-staff.ly: add note about setting
3180 properties in Staff context.
3182 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3183 add slurs and ties to support too.
3185 * buildscripts/output-distance.py (main): set dest_dir
3186 argument. Add --max-count option.
3188 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3190 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3191 shortcuts for special unicode chars that are useful in chant
3192 notation. Revised exisiting and added new comments.
3194 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3196 * make/mutopia-rules.make: remove duplicate recipe.
3198 2006-06-02 Werner Lemberg <wl@gnu.org>
3200 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3201 Add support for U+0132 (IJ) and U+0133 (ij).
3203 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3205 * buildscripts/output-distance.py (FileLink): new class. collect
3206 info systems from one .ly file.
3207 (FileLink.link_files_for_html): further tweaks.
3209 2006-06-02 Graham Percival <gpermus@gmail.com>
3211 * tex/texinfo.tex: partial fix for @funindex.
3213 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3216 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3218 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3220 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3221 @example too. Backportme.
3223 2006-06-02 Graham Percival <gpermus@gmail.com>
3225 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3226 from Werner Lemberg.
3228 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3230 * Documentation/user/music-glossary.tely: additional spanish
3231 updates and a lyrics fix in an example.
3233 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3235 * scm/define-grob-properties.scm: Previous patch contained
3236 spurious line from another patch not yet committed. Fixed.
3238 * scm/define-grob-properties.scm: Add missing doc strings for
3241 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3243 * buildscripts/output-distance.py
3244 (ComparisonData.write_text_result_page): separate the scores, sort
3247 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3250 * buildscripts/output-distance.py (me_path): use argv[0] for
3252 (ComparisonData.img_cell): use colored borders.
3254 * scm/stencil.scm (write-system-signature): escape newlines too.
3255 (write-system-signature): use (1,-1) interval for empty interval
3257 2006-01-01 Graham Percival <gpermus@gmail.com>
3259 * Documentation/user/music-glossary.tely: Spanish updates
3260 from Francisco Vila.
3262 * Documentation/user/lilypond-book.itely: addition from
3265 * Documentation/user/ various: edits, small additions
3268 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3270 * GNUmakefile.in (tree-lib-prefix-current):
3271 (tree-share-prefix-current): Use version number in tree, add
3274 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3276 * GNUmakefile.in: write VERSION, again.
3278 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3279 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3281 * stepmake/aclocal.m4: robuster version detection.
3283 * buildscripts/output-distance.py
3284 (ComparisonData.create_html_result_page): copy only if file
3285 exists, fixup src paths.
3287 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3289 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3291 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3292 Another datarootdir reto.
3294 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3295 available. This should be moved to postinstall-lilypond-doc.
3297 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3299 * GNUmakefile.in: simplify local-WWW-post.
3300 remove -type l from find.
3302 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3303 fixes. Don't follow symlinks.
3304 (ComparisonData.create_html_result_page): remove previous results.
3305 insert ../python in path.
3307 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3309 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3311 * config.make.in (datadir): Add datarootdir to silence autoconf.
3313 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3315 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3317 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3319 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3320 slash beams too wide.
3322 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3324 * VERSION: release 2.9.7
3326 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3328 * lily/relocate.cc (read_relocation_dir): Do not blindly
3331 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3333 * lily/parser.yy: replace THIS by PARSER
3335 * Documentation/index.html.in: add link to test-results.html page.
3337 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3339 * scm/translation-functions.scm (format-bass-figure): translate
3340 digits over 10 to the left
3342 * scm/define-markup-commands.scm (translate-scaled): new markup.
3344 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3347 * ly/engraver-init.ly: add Figured_bass_engraver
3349 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3351 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3353 * lily/score-engraver.cc (announce_grob): only note START announces.
3355 * lily/include/engraver-group.hh (Translator_group):
3356 acknowledge_hash_table_ is now drul.
3358 * lily/engraver.cc (announce_end_grob): new method.
3360 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3362 * lily/translator-dispatch-list.cc (create): take start_end argument.
3364 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3365 acknowledge_static_array_ to drul
3367 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3369 * scm/define-grob-interfaces.scm
3370 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3372 * scm/define-grobs.scm (all-grob-descriptions): add
3373 BassFigureAlignmentPositioning
3375 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3376 number stays up to date. Backportme.
3378 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3380 * Documentation/user/basic-notation.itely (Bar lines): Document
3383 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3385 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3387 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3388 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3391 * Resurrect `scons lily' build.
3393 * SConstruct (symlink_tree): Bugfix: link
3394 music-drawing-routines.ps to file iso directory.
3396 * lily/SConscript: Remove kpath-guile from LIBS.
3398 * SConstruct (libdir_package_version): Typo.
3399 (configure): Comment-out fontforge for lack of fontforge.pc .
3400 Also add libdir* to environment.
3402 2006-05-30 Graham Percival <gpermus@gmail.com>
3404 * Documentation/user/ various: minor additions from mailist and
3407 2006-05-30 Paco <fravd@ya.com>
3409 * Documentation/user/music-glossary.tely: numerous corrections and
3410 some new translations.
3412 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3416 * buildscripts/output-distance.py
3417 (ComparisonData.create_html_result_page): new routine: summarise
3418 results in HTML page with images.
3419 (ComparisonData.create_text_result_page): create summary text files too.
3421 * GNUmakefile.in (web-ext): package .signature files too. They
3424 * scm/stencil.scm (write-system-signature): typo.
3426 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3428 * scm/stencil.scm (write-system-signature): better escaping.
3429 only write signature for music systems, not for markup systems.
3431 * scm/framework-ps.scm (output-framework): dump-signatures support
3434 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3436 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3437 for -dno-point-and-click
3439 * lily/grob.cc (get_print_stencil): don't read
3440 point_and_click_global to determine whether to set grob-cause.
3442 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3444 * buildscripts/output-distance.py (main): new function.
3445 (ComparisonData): new class.
3447 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3448 careful with generating new LedgerLineSpanners.
3450 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3452 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3453 context. This fixes double ledger lines in output.
3455 * lily/system.cc (get_paper_system): remove 3 layer limit.
3457 * buildscripts/output-distance.py (SystemLink.distance): new
3458 file. Compare signatures.
3460 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3462 * lily/grob-array.cc (remove_duplicates): rename from
3463 uniq(). Sort before calling uniq() so it actually works.
3465 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3467 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3468 \version from lilypond file snippet.
3469 (Lilypond_file_snippet.ly): oops. typo.
3470 (find_toplevel_snippets): urgh. again.
3472 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3473 prevent duplicated broken items in output.
3475 * scm/framework-eps.scm (output-classic-framework): only dump if
3476 dump-signatures is set.
3478 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3480 * scm/stencil.scm (write-system-signature): new routine: write
3481 python parseable signature of a separate paper system.
3484 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3486 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3490 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3492 * translator-group.cc: send music events to engravers in
3493 non-bottom contexts.
3495 * tuplet-engraver.cc: process tuplet brackets in correct order.
3497 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3499 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3500 arg 2 might point us to a new binary (patch by Karl Hammar)
3502 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3504 * VERSION (PACKAGE_NAME): release 2.9.6
3506 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3508 * Documentation/user/*.itely: 2nd
3509 attempt: replace funindex -> findex globally.
3511 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3513 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3514 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3516 * scm/define-music-display-methods.scm: display methods for
3517 breaks. Fix \applyOutput.
3519 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3521 * Documentation/user/macros.itexi: comment out funindex expansion.
3523 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3526 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3527 Karl Hammar. Backportme.
3529 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3531 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3533 * Documentation/user/programming-interface.itely (Running a
3534 function on all layout objects): idem.
3536 * Documentation/user/introduction.itely (Automated engraving):
3537 update \applyOutput syntax
3539 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3540 remove debugging hook.
3542 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3545 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3547 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3548 TEXI2DVI_FLAGS to texi2dvi invocation.
3550 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3552 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3553 works. More work is done by iterator now, and engraver has been
3554 very much simplified.
3556 * lily/translator-group.cc: try_music is now invoked through a
3559 * lily/*-iterator.cc: Massive cleanups. Junked
3560 try_music_in_children globally. Renamed try_music to report_event,
3561 and made that method descend to a bottom context automatically.
3563 * lily/event-iterator.cc: New file.
3565 * lily/output-property-iterator.cc,
3566 lily/old-lyric-combine-music-iterator.cc: Removed.
3568 * python/convert-rules.py: Modified the syntax for \applyOutput.
3570 2006-05-23 Graham Percival <gpermus@gmail.com>
3572 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3575 * Documentation/user/ various: stuff that might have helped
3576 to fix the pdf creation, plus some minor doc additions.
3578 * Documentation/user/changing-defaults.itely: remove @b from
3579 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3581 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3583 * lily/beaming-pattern.cc (beamify): deal with negative start
3584 moments for beaming patterns.
3586 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3588 * lily/beaming-info.cc (beamify): new function: read beatLength
3589 and beatGrouping from context.
3591 * input/regression/beam-beat-grouping.ly (Module): new file.
3593 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3595 * lily/beam.cc (get_beam_segments): generate events for
3596 max_connect_ case too.
3597 (get_beam_segments): read Stem::max-beam-connect.
3599 * input/regression/beam-single-stem.ly: new file.
3601 * lily/stem.cc (set_beaming): use #f as signaling value for
3604 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3606 * lily/beam.cc (set_beaming): read clip-edges property.
3607 (calc_direction): don't suicide for single stem.
3609 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3610 argument, remove 1<<15 hack. Remove clip_edges()
3612 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3614 2006-05-21 Graham Percival <gpermus@gmail.com>
3616 * Documentation/user/basic-notation.itely: reorg.
3618 * Documentation/user/ various: minor fixes.
3620 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3622 * lily/stencil-expression.cc (register_stencil_head): opps, append
3623 to cdr of static SCM object.
3625 2006-05-19 Graham Percival <gpermus@gmail.com>
3627 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3628 update framework for command index. DOC WRITERS: use @funindex
3629 instead of @cindex @code{}.
3631 * Documentation/user/ various: replace @cindex @code{} => @funindex
3633 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3635 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3636 case positions is set manually.
3638 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3640 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3643 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3645 * Documentation/user/changing-defaults.itely (Contexts explained):
3646 use absolute dimension for @image.
3648 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3649 out image for illustration too.
3650 ($(outdir)/%.png): add more png <-> eps rules.
3652 2006-05-17 Graham Percival <gpermus@gmail.com>
3654 * Documentation/user/ various: remove trailing whitespace, cosmetic
3655 change to reduce changes produced by diff.
3657 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3659 * lily/main.cc (do_chroot_jail): correctness tweak.
3661 * python/lilylib.py (system): import subprocess in system () only.
3663 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3665 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3666 variable. Backportme.
3668 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3670 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3672 2006-05-17 Werner Lemberg <wl@gnu.org>
3674 * lily/lexer.ll (init_signature_has_table): Add
3675 `scm-scm-music-music'.
3677 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3678 (Generic_prefix_music_scm): Add rule for it.
3680 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3681 `quoted-transposition' property.
3683 * ly/music-functions-init.ly (transposedCueDuring): New function.
3685 * scm/define-music-properties.scm (all-music-properties): Updated.
3687 * Documenation/topdocs/NEWS.itely: Document it.
3689 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3691 * python/lilylib.py (system): move import subprocess to system()
3694 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3696 * VERSION (PATCH_LEVEL): release 2.9.5
3698 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3701 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3703 2006-05-16 Graham Percival <gpermus@gmail.com>
3705 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3707 * Documentation/user/ various: minor fixes.
3709 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3711 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3713 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3715 * Documentation/user/advanced-notation.itely (Instrument names):
3716 Modified obsolete instruction on how to move instrument names away
3717 from the staves. Hmm, at second thought the bug probably has been
3718 solved, so the full bug description should probably be removed.
3720 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3722 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3723 currentCommandColumn.
3725 * lily/hairpin.cc (print): also add padding for non-neighbor
3728 * scm/define-context-properties.scm
3729 (all-user-translation-properties): add hairpinToBarline
3731 * input/regression/hairpin-to-barline.ly: new file.
3733 * lily/context.cc (internal_send_stream_event): thinko fix.
3735 * lily/tie.cc (set_default_control_points): robustness fix.
3737 * python/musicxml.py (Part.interpret): don't complain about
3738 incomplete measures.
3740 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3741 new music if last_event_chord() returned None.
3743 * python/musicxml.py (Part.interpret): skip back over chord notes.
3745 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3747 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3748 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3749 lily/slash-repeat-engraver.cc,
3750 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3751 iterator sends PercentEvents
3753 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3754 rework tuplets: send start/stop events to engraver
3756 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3757 dispatchers event-source and events-below to Context
3759 2006-05-15 Graham Percival <gpermus@gmail.com>
3761 * Documentation/user/README.txt: update info for doc writers.
3763 * Documentation/user/programming-interface.itely: integrate
3764 Nicolas' fixes for chapter rewrite.
3766 * Documentation/user/ various: minor fixes.
3768 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3770 * lily/clef-engraver.cc: cleanup.
3772 * Documentation/user/GNUmakefile: dist context-example.eps too.
3774 * lily/key-engraver.cc (create_key): use
3775 explicitKeySignatureVisibility for cancellation too.
3777 * lily/font-config.cc (init_fontconfig): don't close file if
3780 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3782 * Documentation/topdocs/NEWS.tely: niente and rotation news
3784 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3786 * lily/include/stencil.hh
3787 * lily/stencil.cc (rotate): new function. Makes it possible
3788 to rotate a stencil around a given offset.
3790 * lily/grob.cc (get_print_stencil): add rotation support
3792 * lily/stencil-interpret.cc (interpret_stencil_expression):
3793 add rotation support
3795 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3797 * scm/define-grob-properties.scm: add 'rotation property
3799 * scm/define-markup-commands.scm: add rotate markup command
3801 * scm/output-ps.scm: add rotation support in PostScript backend
3803 * scm/output-svg.scm: add rotation support in SVG backend
3805 2006-05-13 Graham Percival <gpermus@gmail.com>
3807 * Documentation/user/music-glossary.itely: French correction.
3809 * Documentation/user/programming-interface.itely: major
3810 new docs, some reorg, some info from Nicolas.
3812 * Documentation/user/ various: small fixes.
3814 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3816 * Documentation/user/programming-interface.itely (Markup
3817 programmer interface): Remove duplicate text.
3819 2006-05-12 Graham Percival <gpermus@gmail.com>
3821 * Documentation/user/context-example.eps: new file.
3823 * Documentation/user/changing-defaults.itely: set up file to
3826 * Documentation/user/programming-interface.itely: changes
3829 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3831 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3833 2006-05-11 Graham Percival <gpermus@gmail.com>
3835 * Documentation/user/programming-interface.itely: first round of
3836 editing and merging emails from Nicolas.
3838 * Documentation/user/scheme-tutorial: minor edit.
3840 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3842 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3844 (Xml_node.message): use it.
3846 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3847 oops. Add duration argument.
3849 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3851 * lily/paper-column-engraver.cc (make_columns):
3852 * scm/define-grobs.scm: Revert my previous change and set the default
3853 in define-grobs.scm instead.
3855 2006-05-09 Graham Percival <gpermus@gmail.com>
3857 * Documentation/user/changing-defaults.itely: general editing,
3858 info about \set and \override.
3860 * Documentation/user/tweaking.itely, advanced-notation.itely:
3861 fixes from Dave Luttinen, thanks!
3863 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3865 * lily/paper-column-engraver.cc (make_columns): By default, a column
3866 needs to be breakable.
3868 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3870 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3872 (musicxml_time_to_lily): idem
3873 (musicxml_key_to_lily): idem
3874 (instrument_drumtype_dict): dict for supported drumtypes.
3875 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3876 moments and pending mm rests
3877 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3878 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3879 (musicxml_voice_to_lily_voice): add mode change.
3880 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3881 speed and less memory usage (factor 5 to 10).
3882 (convert): write -defs.ly and driver file separately so people
3883 can script their own part extraction.
3885 * python/musicxml.py (minidom_demarshal_node): new function:
3886 separate minidom handling.
3887 (lxml_demarshal_node): new function: support lxml.etree too.
3888 (Xml_node.message): new function: verbose error message, with XML
3889 path to offending node.
3890 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3891 (Part_list.generate_id_instrument_dict): new method: collect
3892 instrument names, to be able to set drum_type.
3893 (Part.interpret): handle underfull measures
3894 (Part.interpret): assign instrument names.
3896 * python/musicexp.py (Output_printer.close): new method
3897 (MusicWrapper.print_ly): new class: support other modes,
3899 (BarCheck.print_ly): new class. Support bar checks, with comments
3900 and fancy barchecks.
3901 (NoteEvent.__init__): also set drum_type for drum notes.
3902 (MultiMeasureRest.lisp_expression): dump mm rests.
3904 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3905 line-break-permission if forbidBreak is not set.
3907 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3909 * scm/define-context-properties.scm:
3910 * scm/define-grob-properties.scm:
3911 * scm/define-grobs.scm:
3912 * scm/define-music-display-methods.scm:
3913 * scm/define-music-properties.scm:
3914 * scm/define-music-types.scm:
3915 * scm/music-functions.scm:
3916 * ly/declarations-init.ly:
3917 * lily/include/constrained-breaking.hh:
3919 * lily/spaceable-grob.cc:
3920 * lily/simple-spacer.cc:
3921 * lily/paper-score.cc:
3922 * lily/paper-column.cc:
3923 * lily/paper-column-engraver.cc:
3925 * lily/gourlay-breaking.cc:
3926 * lily/constrained-breaking.cc:
3927 * python/convertrules.py:
3928 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3929 "page-break-penalty" and "line-break-permission".
3930 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3931 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3933 * lily/bar-engraver.cc:
3934 * lily/beam-engraver.cc:
3935 * lily/forbid-break-engraver.cc:
3936 * lily/ligature-engraver.cc:
3937 * lily/paper-column-engraver.cc:
3938 * lily/percent-repeat-engraver.cc:
3939 * lily/score-engraver.cc:
3940 * lily/score-engraver.hh:
3941 * lily/paper-column-engraver.hh:
3942 Inter-engraver communication regarding line breaks is done through context
3943 properties (Score.forbidBreak) instead of function calls.
3945 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3947 * VERSION (PACKAGE_NAME): release 2.9.4
3949 2006-05-08 Graham Percival <gpermus@gmail.com>
3951 * Documentation/user/working.itely: proofreading from Dave
3954 * Doucmentation/user/README.txt: updated with manual style info.
3956 * Documentation/user/ various: trim linewidth to 78 chars.
3958 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3960 * scm/define-grob-properties.scm (all-internal-grob-properties):
3961 remove chord-tremolo property.
3963 * lily/beam.cc (get_beam_segments): don't use stem position as
3964 base for broken ends.
3966 2006-05-06 Graham Percival <gpermus@gmail.com>
3968 * Documentation/user/putting.itely: proofreading from Dave
3971 * Documentation/user/ various: more reorg and clarifications.
3973 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3975 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3977 * ly/music-functions-init.ly: new function featherDurations
3979 * lily/beam.cc: read grow-direction for feathered beaming.
3981 * Documentation/topdocs/NEWS.tely (Top): typo.
3983 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3985 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3988 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3989 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3990 used by music streams.
3992 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3993 lily/stream-event.cc, lily/stream-event-scheme.cc,
3994 lily/listener.cc, lily/scheme-listener.cc,
3995 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3996 lily/include/stream-event.hh, lily/include/listener.hh,
3997 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3998 Created data structures for music streams.
4000 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4002 * lily/beam.cc (get_beam_segments): new function. Reorganise the
4003 construction of a beam.
4006 * flower/include/std-vector.hh (default_compare): use only one comparison.
4008 * scm/define-markup-commands.scm (note-by-number): remove debug display.
4009 (note-by-number): further attachment fixes.
4011 * scm/lily-library.scm (ordered-cons): new function.
4012 (interval-index): new function
4014 * lily/note-head-scheme.cc (LY_DEFINE): new file.
4016 * lily/note-head.cc (get_stem_attachment): new function.
4018 * scm/define-markup-commands.scm (note-by-number): read 'style
4021 * input/regression/markup-note.ly: show note-head style option.
4023 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4026 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
4028 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4030 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4032 * lily/include/constrained-breaking.hh: GCC 4 fix.
4034 2006-05-04 Joe Neeman <joeneeman@gmail.com>
4036 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4037 Replace it with functions get_line_forces and get_line_configuration.
4038 (class Simple_spacer): Make data private.
4039 Rewrite compression algorithm to be faster and simpler.
4041 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4042 * lily/gourlay-breaking.cc (solve):
4043 * lily/constrained_breaking.cc (space_line):
4044 Change it to the new simple-spacer code.
4046 * lily/paper-score.cc (get_paper_systems):
4049 Delay breaking the systems until they are requested.
4050 (find_break_indices):
4051 Use vsize for indices.
4053 Move the "Calculating line breaks" message here.
4055 * lily/system.cc (pre_processing):
4056 Move the "Calculating line breaks" message away from here.
4057 (break_into_pieces):
4058 Allow multiple calls to this function in sequence (with touching-but-
4059 not-overlapping breakpoints).
4061 * lily/constrained-breaking.cc:
4062 Replace most of the get_XXXX functions with get_line_details.
4063 Only calculate the force for each line. Calculate configurations only
4064 for the lines we will actually use.
4065 Replace cols_ with lines_.
4067 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4069 * mf/GNUmakefile (depth): remove FC_FIND.
4071 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4073 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4075 * scm/framework-ps.scm (write-preamble): new function.
4076 (write-preamble): load mac fonts via fondu, even if gs-font-load
4079 2006-05-03 Werner Lemberg <wl@gnu.org>
4081 * mf/GNUmakefile (FC_FIND): Fix typo.
4083 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4085 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4087 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4089 * stepmake/aclocal.m4: run python-config for crosscompiling
4092 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4093 -f png for HTML, TEXINFO formats.
4095 * input/tutorial/lbook-html-test.html: new file.
4097 * lily/include/tie-formatting-problem.hh (class
4098 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4099 [column, direction]. This fixes laissez vibrer ties.
4101 * flower/include/tuple.hh (struct Tuple2): new file.
4103 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4104 $(FCMATCH), only if $(NCSB_DIR) not set.
4106 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4108 * config.make.in (DOCUMENTATION): set FCMATCH.
4110 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4112 2006-05-03 Graham Percival <gpermus@gmail.com>
4114 * Documentation/user/ various: final round of reorg.
4116 * Documentation/user/instrument-notation.itely: some more
4117 fixes from Eduardo, thanks!
4119 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4121 * VERSION (PACKAGE_NAME): release 2.9.3
4123 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4125 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4127 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4129 * scm/define-grob-properties.scm (all-user-grob-properties):
4130 Correct typo, thanks to Eduardo.
4132 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4134 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4136 * buildscripts/lilypond-words.py (F): indent fix.
4138 * input/regression/tie-arpeggio-collision.ly: new file.
4140 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4141 function: store outlines per column rank.
4143 * lily/include/tie-configuration.hh (class Tie_configuration): add
4144 column_ranks_ to specification and configuration, to distinguish
4145 between ties for different heads in arpegiated chords.
4147 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4149 * *.py: more 4 space indents.
4151 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4153 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4155 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4157 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4159 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4161 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4163 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4165 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4167 * python/convertrules.py (conv): indent 4 for python files.
4169 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4171 * Documentation/user/changing-defaults.itely (Creating contexts):
4172 Clarify \new semantics.
4174 2006-04-28 Graham Percival <gpermus@gmail.com>
4176 * Documentation/user/ various: major new sections in the
4177 Learning manual, slight reorg elsewhere.
4179 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4181 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4183 * scm/framework-ps.scm (output-framework): remove PageMedia
4185 2006-04-27 Graham Percival <gpermus@gmail.com>
4187 * Documentation/user/ tweaks.itely, working.itely: new
4188 files, being more advanced "learning manual" chapters.
4190 * Documentation/user/ tutorial, putting, lilypond: reorg.
4192 2006-04-26 Graham Percival <gpermus@gmail.com>
4194 * input/regression/lyric-combine-polyphonic.ly: fixed test
4195 (no more "can't find context `one'" error).
4197 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4199 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4201 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4203 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4205 * lily/relocate.cc (read_relocation_dir): new function.
4207 2006-04-26 Graham Percival <gpermus@gmail.com>
4209 * Documentation/user/instrument-notation.itely: a few more fixes
4210 from Eduardo, thanks!
4212 * Documentation/user/README.txt: new file; contains info on
4213 style that used to be in lilypond.tely.
4215 * Documentation/user/ various: first round of doc reorg.
4217 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4218 graphic; this probably causes problems on some pdf
4219 viewers, notably Adobe Acrobat.
4221 2006-04-24 Graham Percival <gpermus@gmail.com>
4223 * Documentation/user/instrument-notation.itely: many alterations
4224 to Vocal music, from Eduardo Viera.
4226 2006-04-23 Graham Percival <gpermus@gmail.com>
4228 * Documentation/user/instrument-notation.itely: fix \new
4229 instead of \context problem.
4231 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4233 * lily/relocate.cc (expand_environment_variables): new function.
4235 (read_relocation_file): id.
4237 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4239 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4241 * ly/engraver-init.ly: remove old comments from TabVoice
4243 2006-04-20 Graham Percival <gpermus@gmail.com>
4245 * Documentation/user/instrument-notation.itely: added Erlend's
4246 latest doc patch, thanks!
4248 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4250 * lily/include/slur.hh:
4252 * lily/phrasing-slur-engraver.cc:
4253 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4254 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4255 Slur_engraver:: and putting it in
4256 Slur::auxiliary_acknowledge_extra_object ().
4258 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4260 * lily/note-collision.cc: fix a comment
4262 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4264 * stepmake/bin/add-html-footer.py: fix footer position in
4265 generated html files: before </body> and </html> tags.
4267 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4269 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4270 Earlier successive `make' commands finally compiled ok.
4272 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4274 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4276 * lily/include/stem-tremolo.hh:
4277 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4281 * lily/include/lookup.hh: add rotated_box ()
4283 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4285 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4286 been generated. Fixes "can't get `--help'" bug after make clean.
4288 * THANKS: alphabetize contributors.
4290 2006-04-17 Graham Percival <gpermus@gmail.com>
4292 * Documentation/user/instrument-notation.itely: added Erlend's
4293 tabs and banjo doc patch. Thanks!
4295 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4297 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4299 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4301 * scm/output-lib.scm: add some more predefined string tunings.
4303 * Documentation/user/instrument-notation.itely: and doc them.
4305 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4307 * ly/engraver.ly: Remove obsolete comments.
4309 * ly/gregorian-init.ly: Define default layout block.
4311 * input/puer-fragment.ly: Updated and extended.
4313 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4315 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4316 pdf conversion behaviour.
4318 * flower/file-name.cc (dir_name)
4319 (get_working_directory): Move from relocate.cc.
4321 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4323 * lily/relocate.cc: Encapsulate sys/stat.h in
4326 2006-04-14 Graham Percival <gpermus@gmail.com>
4328 * Documentation/user/ various: small updates from Cameron
4329 and Juergen, thanks!
4331 * Documentation/user/ various: small updates of my own.
4333 * THANKS: 2.7 -> 2.8.
4335 2006-04-11 Graham Percival <gpermus@gmail.com>
4337 * scm/define-context-properties.scm: typo.
4339 * Documentation/user/ : many more small updates.
4341 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4343 * scm/define-music-types.scm: disposed "docme".
4345 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4347 * lily/hairpin.cc: make niente circles a bit smaller.
4349 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4351 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4352 get-pfa and get-*-fonts targets.
4354 2006-04-10 Graham Percival <gpermus@gmail.com>
4356 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4357 music-glossary, programming-interface: more minor fixes
4360 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4362 * scm/define-context-properties.scm: another old \property update.
4363 This time tested for compiling!
4365 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4367 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4369 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4371 * scm/define-context-properties.scm (all-user-translation-properties):
4372 * Documentation/user/global.itely (Page formatting): Compile fix.
4374 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4376 * Documentation/user/advanced-notation.itely (Polymetric
4377 notation): Update the example to use the "+" symbol and add link
4378 to input/test/compound-time.ly.
4380 2006-04-08 Graham Percival <gpermus@gmail.com>
4382 * scm/define-grob-properties.scm: clarify docs for #'direction.
4384 * scm/define-context-properties.scm: update old \property override.
4386 * Documentation/user/ advanced-notation, global, lilypond-book:
4387 more minor doc updates.
4389 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4391 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4393 * scm/backend-library.scm (search-gs): oops.
4395 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4397 * scripts/lilypond-book.py (output): use base, not filename for href.
4399 * scm/backend-library.scm: only look for gs.
4401 * scripts/lilypond-book.py (output): fix printfilename.
4403 * lily/parser.yy (music_function_musicless_prefix): fold together
4404 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4406 * lily/slur.cc (print): only set font-size if not set yet.
4408 * lily/slur-configuration.cc (add_score): improved layout of debug
4411 2006-04-05 David Feuer <David.Feuer@gmail.com>
4413 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4414 (draw_circle): Hopefully fixed regression.
4415 Improved documentation for several procedures.
4417 2006-03-04 Werner Lemberg <wl@gnu.org>
4419 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4421 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4423 * scripts/musicxml2ly.py (bindir): add dynamic
4426 2006-04-04 Graham Percival <gpermus@gmail.com>
4428 * Documentation/user/ basic-notation, advanced-notation, putting,
4429 instrument-notation, invoking, lilypond, THANKS: another ream of small
4430 fixes from the Doc Helpers.
4432 2006-04-03 David Feuer <David.Feuer@gmail.com>
4434 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4436 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4438 * Cleaned up interfaces between PostScript and Scheme, and moved
4439 computations from PostScript to Scheme:
4441 * music-drawing-routines.ps
4442 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4443 with stroke_and_fill throughout.
4444 (euclidean_length, print_letter, draw_box): Deleted unused
4445 procedures. If someone needs draw_box, implement it using
4446 draw_round_box; don't duplicate code.
4447 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4448 Refactored/cleaned up interfaces.
4451 * output-ps.scm: reordered arguments to PostScript functions to
4452 match new interfaces
4453 (glyph-string): Rewrote glyph-string.
4454 (grob-cause): Replaced string-append with format.
4455 (repeat-slash): Rewrote to do computation here.
4456 (round-filled-box): Rewrote to do computation here.
4458 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4460 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4462 * stepmake/stepmake/toplevel- targets.make: print help info about
4465 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4467 * input/regression/hairpin-circled.ly: new file
4469 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4471 * lily/hairpin.cc (print): add support for circled tip
4473 * scm/define-grob-properties.scm: add circled-tip parameter
4475 * scm/define-grobs.scm: init circled-tip to false
4477 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4479 * scm/music-functions.scm (quote-substitute): set
4482 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4484 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4487 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4489 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4491 2006-03-31 David Feuer <david.feuer@gmail.com>
4493 * scm/framework-ps.scm:
4495 * scm/output-ps.scm: glyph-string now produces smaller, more
4496 readable, and probably faster PostScript. Several findfont
4497 scalefont setfont instances changed to selectfont
4498 Hacked-up string-appends changed to formats.
4500 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4502 2006-03-30 Graham Percival <gpermus@gmail.com>
4504 * scm/lily-library.scm: make "no version" warning message more polite.
4506 * lily/music.cc: add double quotes to failed octave check.
4508 * Documentation/user/ advanced-notation, changing-defaults,
4509 instrument-notation, invoking, music-glossary: whole bunch of minor
4512 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4514 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4515 $(buildscriptdir) iso. depth.
4517 * VERSION (PACKAGE_NAME): release 2.9.1
4519 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4521 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4523 * VERSION (PATCH_LEVEL): bump version number.
4525 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4528 * lily/pango-font.cc (pango_item_string_stencil): use
4531 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4532 $(outdir)/emmentaler-%.svg): remove canary.
4534 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4535 glyphnames if we have a ttf font.
4537 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4539 * Documentation/user/advanced-notation.itely (Font selection):
4540 Corrected reference to the font-family-override.ly example.
4542 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4544 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4545 stem-tremolo object in the stem (or else the stem might not be
4548 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4550 * lily/ttf.cc (print_trailer): only print existing glyphs.
4552 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4554 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4555 position the tremolo based on the position of the notehead.
4557 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4558 notes and update the texidoc line with the new positioning rules.
4560 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4562 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4564 * scripts/lilypond-book.py (Module): set default for linewidth if
4567 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4569 * VERSION (PACKAGE_NAME): release 2.9.0.
4571 * input/regression/stem-tremolo-position.ly: new file.
4573 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4575 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4577 * lily/stem-tremolo.cc (print): position
4578 the tremolo depending only on the end of the stem
4579 and not on the notehead
4580 (raw_stencil): center, on the middle staff line, the
4581 flag that is closest to the end of the stem (previously
4583 (calc_width): add this callback to shorten a tremolo when
4584 it is beamed or it is stemup with a flag
4585 (style): add this callback to make a tremolo rectangular when
4586 it is beamed or it is stemup with a flag
4587 (rotated_box): this is like Lookup::beam but makes a rotated
4588 rectangle instead of a parallelogram
4590 * lily/stem.cc (calc_stem_info): make sure the stem
4591 is long enough to fit the tremolo
4592 (calc-length): reduce the length of tremolo stems since the
4593 tremolo code is now capable of better positioning
4595 * scm/define-grobs.scm: make calc_width the default beam-width
4596 callback for stem-tremolo and add the style callback
4598 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4600 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4603 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4605 * lily/ttf.cc (make_index_to_charcode_map): restore old
4608 2006-03-28 Werner Lemberg <wl@gnu.org>
4610 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4612 2006-03-28 Graham Percival <gpermus@gmail.com>
4614 * THANKS: update for 2.9, add section for Documentation helpers.
4616 * Documentation/topdocs/NEWS.tely: compile fix.
4618 * Documentation/user/ basic-notation, global, advanced-notation,
4619 examples.itely: minor fixes from mailist.
4621 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4623 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4626 * lily/ttf.cc (print_trailer): use it.
4628 * lily/pango-font.cc (get_unicode_name): new function.
4630 * lily/ttf.cc (make_index_to_charcode_map): move function from
4632 (print_trailer): substitute uniXXXX name if applicable.
4634 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4635 (pango_item_string_stencil): use it to generate uniXXXX names.
4637 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4638 note heads, for uniform widths in shape note output.
4639 (overdone_heads): hmm. remove them again.
4641 * scripts/lilypond-book.py (output): add links to filenames.
4643 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4645 * lily/note-collision.cc (get_clash_groups): only consider when
4646 Note_column::dir <> CENTER.
4648 * scripts/lilypond-book.py (get_option_parser): init output_name
4651 2006-03-24 Graham Percival <gpermus@gmail.com>
4653 * Documentation/topdocs/NEWS.tely: add @end itemize
4655 * Documentation/user/ global, advanced-notation: minor
4658 2006-03-23 Graham Percival <gpermus@gmail.com>
4660 * Documentation/user/ lilypond.tely, music-glossary,
4661 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4663 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4665 * mf/GNUmakefile: don't install .enc files.
4667 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4669 * VERSION (PATCH_LEVEL): bump to 2.9.0
4671 2006-03-22 Graham Percival <gpermus@gmail.com>
4673 * Documentation/user/advanced-notation.itely: minor fixes
4676 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4678 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4680 * branch lilypond_2_8
4682 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4684 * scripts/lilypond-book.py (samefile): new function, for windoze
4687 2006-03-21 Graham Percival <gpermus@gmail.com>
4689 * ly/engraver-init.ly: add info about StaffGroup.
4691 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4693 * input/regression/stem-direction-context.ly: idem.
4695 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4699 * input/regression/page-layout-twopass.ly: comment out \markup so
4702 * lily/instrument-name-engraver.cc (finalize): add to instrument
4703 name global System. This also fixes chopped instrument names, but
4704 doesn't crash when there are slurs/beams.
4706 * lily/slur-configuration.cc (add_score): disallow negative slur
4709 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4711 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4713 * lily/instrument-name-engraver.cc (process_music): kludge: add
4714 InstrumentName spanner to axis group of left bound. Fixes chopped
4715 off instrument names in EPS images.
4717 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4719 * scripts/abc2ly.py (option_parser): update to 2.7.40
4721 2006-03-20 Graham Percival <gpermus@gmail.com>
4723 * THANKS: move small doc contributors to SUGGESTIONS.
4725 * Documentation/user/ basic-notation, advanced-notation,
4726 global: small changes from mailist.
4728 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4730 * Documentation/user/advanced-notation.itely (Text marks): update
4731 for new rehearsalMarkAlignSymbol convention.
4733 * VERSION (PATCH_LEVEL): bump version.
4735 * input/test/instrument-name-align.ly: new file.
4737 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4739 * input/test/instrument-name-align.ly: new file. Document how to
4740 align instrument names.
4742 * lily/mark-engraver.cc: remove properties.
4744 * scm/define-context-properties.scm
4745 (all-user-translation-properties): remove align symbol properties
4746 for barnumber/reh. mark.
4748 * lily/break-align-interface.cc (self_align_callback): new
4749 interface, new function. Look at complete alignment. This handles
4750 tunable break alignments in case break-align-symbols are missing.
4752 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4754 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4756 * python/convertrules.py (conv): mark/bar number alignment rule.
4758 * lily/break-align-interface.cc (calc_positioning_done): also
4759 store offset from last visible break-alignment to its
4760 neighbor. This makes alignment on non-visible objects more reliable.
4762 * po/lilypond.pot (Module): ran po-replace.
4764 * input/regression/tie-single-manual.ly (Module): new file.
4766 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4767 look at has_manual_position_.
4768 (from_ties): set has_manual_position_ if tie has staff-position set.
4770 * lily/tuplet-bracket.cc (calc_positions): idem.
4772 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4775 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4777 * scm/define-markup-commands.scm (smallCaps): new markup command
4778 for turning a text to small caps using smaller font size and upper
4781 2006-03-17 Graham Percival <gpermus@gmail.com>
4783 * Documentation/user/ examples, instrument-notation,
4784 advnaced-notation: minor fixes from mailist.
4786 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4788 * Documentation/user/tutorial.itely (First steps): change example
4791 2006-03-17 Graham Percival <gpermus@gmail.com>
4793 * Documentation/user/ examples, advanced: minor changes from mailist.
4795 * THANKS: add Geoff Horton, for documentation stuff.
4797 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4799 * python/lilylib.py (system): revert have_select kludge.
4801 * Documentation/user/tutorial.itely (Commenting input files):
4802 update version numbers in doc.
4804 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4805 bound-padding to multi-measure-interface
4807 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4809 * input/test/engraver-example.ily: update version number.
4811 * VERSION (PACKAGE_NAME): release 2.7.39
4813 * lily/note-spacing.cc (get_spacing): heighten threshold where
4814 accidentals/arpeggios influence previous spacing fully.
4816 * lily/rest.cc (y_offset_callback): only use direction if
4817 staff-position wasn't set before.
4819 * lily/bar-number-engraver.cc: add support for
4820 barNumberAlignSymbol.
4821 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4823 * lily/pointer-group-interface.cc (set_ordered): new function.
4824 (add_unordered_grob): new function.
4826 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4827 to ordered, unless the opposite has been proved. This fixes
4828 random reordering of large object groups across linebreaks,
4831 * lily/main.cc (do_chroot_jail): printf format fix.
4833 * lily/tie-formatting-problem.cc (generate_configuration):
4834 multiply y-shift for dot with direction.
4836 * scm/define-markup-commands.scm (note-by-number): put (magstep
4837 size) in y-attach too.
4839 * Documentation/topdocs/NEWS.tely (Top): show override.
4841 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4842 direction for stems.
4844 2006-03-15 Graham Percival <gpermus@gmail.com>
4846 * Documentation/user/ changing-defaults, global: minor
4849 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4851 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4853 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4854 breakable items after uniformly stretched notes.
4856 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4857 outline with outer edge of note heads. This prevents infinity
4858 problems with tied whole notes.
4860 * scripts/lilypond-book.py (do_file): use os.popen
4862 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4864 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4866 * Documentation/user/invoking.itely: Add ragged-right to bug report
4869 2006-03-14 Graham Percival <gpermus@gmail.com>
4871 * Documentation/user/global.itely: small fix from mailist.
4873 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4875 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4876 file descriptor returned by tempfile.mkstemp() when writing
4877 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4880 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4882 * po/fi.po: newline bugfix.
4884 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4886 * scm/paper.scm (paper-alist): Rounding fixes.
4888 2006-03-13 Graham Percival <gpermus@gmail.com>
4890 * Documentation/user/ changing-defaults, instrument-notation,
4891 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4893 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4897 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4899 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4902 * python/lilylib.py (print_environment): move ps_page_count to
4905 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4907 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4909 * scm/framework-ps.scm (embed-document): new function. Use to
4912 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4914 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4916 * Documentation/user/instrument-notation.itely (Setting simple
4917 songs): Added \book{...} around the full example, so the separate
4918 markups are included in the printed example.
4920 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4922 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4925 * python/lilylib.py (system): rewrite system() using
4926 subprocess. Remove >& redirection trickery.
4928 2006-03-11 Graham Percival <gpermus@gmail.com>
4930 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4931 notation-appendices.itely: minor fixes from mailist.
4933 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4935 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4936 unsplit man also needs images.
4938 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4940 * VERSION (PACKAGE_NAME): 2.7.38 released.
4942 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4944 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4947 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4949 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4950 respects the Score.skipTypesetting property.
4952 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4954 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4955 Prolog. No %%EOF after CFF file.
4957 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4959 * lily/constrained-breaking.cc (get_max_systems): used to return a
4961 (combine_demerits): use pointers to reduce copying data
4962 (calc_subproblem): idem
4963 (get_page_penalty): add page turn penalties
4965 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4967 * Documentation/user/invoking.itely (Invoking lilypond): better
4968 explanation of -e usage.
4970 * lily/main.cc (main_with_guile): don't append to
4971 init_scheme_code_string
4973 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4975 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4977 * scripts/convert-ly.py (do_options): don't print help for
4980 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4981 @code and @example. Update from texinfo.tex from CVS.
4983 2006-03-08 Graham Percival <gpermus@gmail.com>
4985 * Documentation/user/scheme-tutorial.itely: clarifies distances
4986 measured in staff-spaces.
4988 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4990 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4991 consider[k] is true.
4993 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4995 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4996 consider columns that have originals. Unifies spacing for mm
4997 rests around line breaks.
4999 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5000 (set_text_rods): idem.
5001 (calculate_spacing_rods): new function: share code between
5002 set_text_rods and set_spacing_rods.
5003 (set_text_rods): take extents of bounds into account.
5005 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5007 * Documentation/user/basic-notation.itely (Writing music in
5008 parallel): don't use relative.
5010 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5012 * ly/music-functions-init.ly (Module): add shiftDurations
5014 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5016 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
5018 * ly/engraver-init.ly: init vocalName to nil.
5020 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
5022 * scm/music-functions.scm (music->make-music): bugfix,
5023 KeyChangeEvents are now handled correctly.
5025 * scripts/lilypond-book.py: Add --debug option.
5027 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5029 * python/lilylib.py: add tempfile.
5031 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5033 * VERSION (PACKAGE_NAME): release 2.7.37
5035 * python/lilylib.py (ps_page_count): remove make_ps_images().
5036 (ps_page_count): remove mkdir_p
5037 (system): remove cleanup_temp.
5038 (exit): remove lilypond_version_(check)
5039 (error_log): remove pseudo_filter_p
5044 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5047 * lily/accidental-engraver.cc (make_standard_accidental): only add
5048 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5050 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5051 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5052 Make incompatibilities.
5054 * scm/output-ps.scm (grob-cause): replace backslashes by /
5055 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5057 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
5059 * cygwin/GNUmakefile: Install fixes.
5061 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5063 * lily/note-head.cc (head::get_balltype): Compile fix.
5065 * flower/file-name.cc (dos_to_posix): Flower string fix.
5067 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5069 * python/lilylib.py: pychecker cleanups.
5071 * scripts/lilypond-book.py
5072 (Lilypond_snippet.output_print_filename): pychecker cleanups
5074 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5076 * python/lilylib.py (underscore): remove identify() , warranty()
5078 * ps/music-drawing-routines.ps: change Border routine for GSView
5081 * lily/stem.cc (height): use quantize-positions. This triggers
5082 set_stem_lengths, so scripts on beamed stems are handled correctly.
5084 * lily/side-position-interface.cc (aligned_side): check if edges
5085 of script are inside staff. Fixes accent of edge of the staff.
5087 * input/regression/staccato-pos.ly: more examples.
5089 * stepmake/aclocal.m4 (depth): fix bashism.
5091 * lily/lyric-combine-music-iterator.cc: move from
5092 new-lyric-combine-iterator.cc
5093 (process): add pending_grace_lyric_ member to delay lyrics on
5096 * lily/system-start-text.cc (print): suicide if we don't have any
5097 elements. Fixes hara kiri'd instrument names.
5099 * scripts/mup2ly.py (Module): remove.
5101 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5103 * Documentation/user/global.itely (A single music expression):
5104 close @lilypond properly
5106 * lily/volta-bracket.cc (modify_edge_height): change from
5107 after_line_breaking_callback. Suicide last bracket if appropriate.
5109 * python/lilylib.py: strip getopt support
5111 * scripts/etf2ly.py (do_options): use optparse
5113 * scripts/midi2ly.py: optparse, strip lilylib copy.
5115 * scripts/abc2ly.py (voices): use optparse.
5117 * stepmake/stepmake/generic-vars.make: new function absdir.
5119 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5121 * scripts/lilypond-book.py (find_file): use global_options for
5124 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5127 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5129 * python/lilylib.py (get_global_option): ughness for extracting
5130 global options from lilylib.
5131 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5133 * scripts/lilypond-book.py (get_option_parser): use optparse for
5134 option handling. Put options in global_options variable.
5136 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5138 * Documentation/index.html.in: clarify.
5140 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5142 * scm/layout-page-layout.scm (write-page-breaks): add a
5143 music-system-heights property to the page layout output.
5145 * scm/page.scm (make-page-stencil): take footer into account when
5146 computing the 'space-left page property
5147 (annotate-space-left): take footer into account when annonating
5150 2006-02-28 Graham Percival <gpermus@gmail.com>
5152 * Documentation/user/ advanced-notation, global: more (final)
5153 docs for music expressions, removed special fermatas.
5155 2006-02-27 Graham Percival <gpermus@gmail.com>
5157 * Documentation/user/ basic-notation, global: minor changes
5160 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5162 * scm/framework-ps.scm:
5163 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5164 layer for inf? and nan? from framework-ps to lily-library.
5166 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5168 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5169 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5171 * buildscripts/substitute-encoding.py (Module): remove file.
5173 * mf/GNUmakefile: more PFA strippage.
5175 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5177 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5180 * scm/framework-ps.scm: remove font name munging.
5182 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5184 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5186 * scm/markup.scm (define-markup-command): change
5187 def-markup-command to define-markup-command
5189 * scm/music-functions.scm (define-music-function): change
5190 def-music-function to define-music-function.
5192 * python/convertrules.py (conv): rules for def-music-function
5193 and def-markup-commands
5195 * Documentation/user/programming-interface.itely,
5196 input/no-notation/display-lily-tests.ly,
5197 input/regression/lily-in-scheme.ly,
5198 input/regression/markup-user.ly,
5199 input/regression/music-function.ly, input/regression/tie-chord.ly,
5200 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5201 ly/gregorian-init.ly: use new macro names (define-music-function,
5202 define-markup-command).
5204 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5206 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5207 (output): add comments to lp-book latex output.
5209 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5212 2006-02-23 Graham Percival <gpermus@gmail.com>
5214 * Documentation/user/ tutorial, global: minor changes.
5216 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5218 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5219 blocks (for make 3.80)
5221 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5222 \notemode so that user should not have to explicitely type it.
5224 * scm/define-music-display-methods.scm: various
5225 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5228 * input/no-notation/display-lily-tests.ly: new tests for
5229 \applyOutput and \applyContext
5231 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5233 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5234 changed it slightly so that the number of systems returned by
5235 solve () will be the same as the last value passed to resize
5236 (). I've also added more documentation, removed casts, fixed style
5237 problems and put in some recovery if constraints aren't satisfied."
5239 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5241 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5242 for emacs < 22 compatibility.
5243 (count-rexp): Use it.
5244 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5245 substring juggling (Milan Zamazal).
5247 2006-02-23 Graham Percival <gpermus@gmail.com>
5249 * Documentation/user/ basic-notation, advanced-notation,
5250 global.itely, invoking.itely, tutorial,itely:
5251 minor fixes from mailist.
5253 * scm/define-markup-commands.scm: improve docs of \filled-box.
5255 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5257 * Documentation/index.html.in: changes concern the previous release.
5259 * input/regression/+.ly: cultivate typographical terminology.
5261 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5263 * scm/define-grob-interfaces.scm (parentheses-interface): add
5264 padding to parentheses-interface.
5266 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5267 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5269 * VERSION (PATCH_LEVEL): release 2.7.36
5271 * lily/slur.cc: add avoid-slur (ugh.)
5273 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5274 intersection gets smaller. This fixes slurs over extreme points.
5276 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5277 stems with neutral-direction set.
5279 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5281 * lily/open-type-font.cc (load_table): format error.
5283 * lily/change-iterator.cc (process): format fix.
5285 * flower/include/international.hh (_f): idem.
5287 * flower/include/std-string.hh: add format printf attribute.
5289 * scm/define-grobs.scm (all-grob-descriptions): height of all
5290 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5292 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5295 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5297 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5299 * input/regression/: upgraded syntax for some files.
5301 * THANKS: Add bughunters.
5303 2006-02-22 Graham Percival <gpermus@gmail.com>
5305 * Documentation/user/ invoking.itely, advanced-notation.itely,
5306 global.itely: long-awaited "let's make chapter 10 not suck"
5307 update. Rearrange chapter 10; now called "global issues",
5308 addresses file structure, etc. Some info from other files
5309 moved into global.itely.
5311 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5313 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5314 catch trill-span-event notes.
5316 * Documentation/user/examples.itely (Ancient notation templates): typo.
5319 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5321 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5323 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5325 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5327 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5328 froum Laissez_vibrer_engraver.
5330 * ly/declarations-init.ly (repeatTie): add \repeatTie
5332 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5334 * scm/define-grob-properties.scm (all-user-grob-properties): add
5335 head-direction property.
5337 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5338 from_lv_ties. Take head direction argument.
5340 * lily/semi-tie-column.cc: rename from
5341 laissez-vibrer-tie-column.cc. Rename class too.
5343 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5346 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5348 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5350 (find_breaks): idem.
5352 2006-02-21 Graham Percival <gpermus@gmail.com>
5354 * Documentation/user/advanced-notation.itely: fixed make-moment]
5357 * Documentation/user/basic-notation.itely: more clarification to
5360 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5362 * lily/include/constrained-breaking.hh (class
5363 Constrained_breaking): new file.
5365 * lily/constrained-breaking.cc (resize): new file.
5367 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5369 * Documentation/user/advanced-notation.itely (Clusters): insert
5372 * lily/tie-column.cc (calc_positioning_done): support for
5375 * lily/tie-formatting-problem.cc
5376 (generate_extremal_tie_variations): factor out.
5377 (score_ties_configuration): annotate all tie
5378 (print_ties_configuration): new routine.
5379 (generate_configuration): nudge extremal ties outside of the head
5381 (score_ties_configuration): oops. convert to staff-space before
5382 determining position symmetry.
5384 2006-02-20 Graham Percival <gpermus@gmail.com>
5386 * Documentation/user/*-notation.itely: misc minor editing,
5387 shifting doc sections around.
5389 * Documentation/user/*-notation-itely, global.itely,
5390 changing-defaults.itely: added new stuff from NEWS.
5392 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5396 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5398 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5399 lilypond --verbose for lp-book.
5401 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5402 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5404 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5405 $(buildscript-dir) iso. absolute depth.
5407 * buildscripts/genicon.py (dir): thinko.
5409 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5411 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5413 * scm/output-lib.scm: swap darkcyan/darkyellow
5415 * THANKS: Add bughunters.
5417 2006-02-19 Graham Percival <gpermus@gmail.com>
5419 * Documentation/user/programming-interfaces.itely: fixed example.
5421 * Documentation/user/instrument-notation.itely: fix @{ @}.
5423 * scm/script.scm: add avoid-slur for \open.
5425 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5427 * lily/tie-formatting-problem.cc (score_configuration): use
5428 sliding score for min-length.
5430 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5431 spaghetti for icons.
5433 * buildscripts/genicon.py (program_name): new file.
5435 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5437 (generate_configuration): for small ties, also look for collisions
5438 at Y + DIR*h + DELTA_Y.
5439 (get_variations): consider variation for dot positions too.
5441 * lily/side-position-interface.cc (aligned_side): take abs for
5442 quantized rounded position. Fixes tenuto below staff.
5444 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5445 markers when necessary.
5447 * lily/program-option.cc (internal_set_option): add
5448 strict_infinity_checking option.
5450 * scm/output-lib.scm (cyan): swap yellow and cyan.
5452 2006-02-19 Graham Percival <gpermus@gmail.com>
5454 * darwin.patch: trivial linenumber update.
5456 * Documentation/user/ {various}: `\context foo = named' changed
5457 to `\new foo = "name"' in docs.
5459 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5461 * scm/stencil.scm (annotate-y-interval): use it.
5463 * scm/lily-library.scm (interval-sane?): new function.
5465 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5468 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5471 * flower/include/std-vector.hh (iterof): add iterof macro.
5473 * lily/enclosing-bracket.cc (width): new function.
5475 * lily/align-interface.cc (align_elements_to_extents): reinstate
5478 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5480 * Documentation/index.html.in: fix spelling: thankyous.
5482 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5484 * lily/lyric-hyphen.cc: typo.
5486 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5488 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5489 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5492 * VERSION: release 2.7.35
5494 * lily/beam.cc (get_default_dir): oops. Take abs () for
5496 (get_default_dir): use extreme position criterion only in absence
5497 of forced stem directions.
5499 * VERSION (PATCH_LEVEL): bump VERSION.
5501 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5502 dependencies. Necessary for -jX builds.
5504 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5506 * lily/relocate.cc (setup_paths): Yet another const fix.
5508 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5510 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5512 * lily/relocate.cc (setup_paths): oops.
5514 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5516 * Documentation/index.html.in: order links: html before PDF.
5518 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5520 * lily/tie-column-format.cc (Module): remove.
5522 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5524 * lily/text-spanner.cc (print): idem.
5526 * lily/dynamic-text-spanner.cc (print): only print line if longer
5529 * lily/auto-change-iterator.cc (change_to): formatting.
5531 * lily/beam.cc (get_default_dir): take extreme note head as input
5534 * lily/tie.cc (get_default_dir): only look directions for visible
5537 * lily/side-position-interface.cc (aligned_side): oops. Don't
5538 mutiply with direction. This fixes quantized (staccato, tenuto)
5539 scripts below notes.
5541 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5542 direction. Fixes c-lyrics-center-align.ly
5544 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5546 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5549 * lily/std-string.cc:
5550 * lily/include/std-vector.hh (split_string): Move and rename from
5551 lily/include/misc.hh, lily/misc.cc. Update callers.
5553 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5555 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5557 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5559 * flower/test-file.cc: New file.
5561 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5564 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5566 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5568 * flower/include/file-storage.hh: remove file.
5570 * lily/include/midi-item.hh (class Midi_track): idem.
5572 * lily/include/source.hh (class Sources): idem.
5574 * lily/include/performance.hh (class Performance): use vector
5577 * flower/include/cons.hh (class Cons): remove file.
5579 * flower/include/flower-proto.hh: remove template cruft.
5581 * lily/include/font-metric.hh: use size_t not vsize for indices.
5583 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5586 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5588 * lily/include/paper-book.hh (class Paper_book):
5589 make get_system_specs() public.
5591 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5592 the force=10000 case if we don't have a current-best.
5594 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5597 * flower/include/flower-proto.hh: remove outdated templates.
5599 * scm/page.scm: use annotate-spacing
5601 2006-02-15 Graham Percival <gpermus@gmail.com>
5603 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5605 * THANKS: moved Erlend Aasland to contributors.
5607 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5609 * config.hh.in: remove HAVE_PANGO_16
5611 * lily/tuplet-bracket.cc (calc_positions): multiply with
5612 staff-space for beam case. This fixes tuplets+beams on scaled
5615 * config.hh.in: remove all Kpathsea related defines.
5617 * lily/dot-column.cc (side_position): reach stem via dots->
5618 head->stem. Inspect all stems for dot collisions.
5620 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5623 * lily/bar-number-engraver.cc (process_music): document function
5626 * lily/score.cc (default_rendering): add pscore, not systems
5629 * lily/paper-book.cc (get_system_specs): separate generation of
5632 * flower/include/std-vector.hh: don't include config.hh
5634 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5636 * flower/include/std-vector.hh: Better wrapper compatibility with
5639 * flower/include/flower-proto.hh: Remove cheap forward declaration
5642 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5644 2006-02-14 Graham Percival <gpermus@gmail.com>
5646 * Documentation/user/invoking.itely: add warning about command line.
5648 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5650 * lily/include/lily-proto.hh: add Prob, rm Page.
5652 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5654 * VERSION: release 2.7.34
5656 * lily/relocate.cc (framework_relocation): show canary if
5657 GHOSTSCRIPT_VERSION undefined.
5659 * GNUmakefile.in: remove $(VERSION) symlink.
5661 * lily/relocate.cc (setup_paths): add +
5663 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5665 * Documentation/index.html.in: specify sizes for all big HTML pages.
5667 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5669 * config.hh.in: remove @FRAMEWORKDIR@
5671 * lily/system-start-text.cc (get_stencil): new file: separate out
5672 system-start-delimiter text support.
5674 * input/**ly: replace \context with \new where appropriate.
5678 * lily/slur-scoring.cc (get_base_attachments): use
5679 robust_relative_extent. This fixes problems with empty paper-columns.
5681 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5683 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5685 * scm/define-music-properties.scm (all-music-properties):
5686 create-new property.
5688 * lily/context-specced-music-iterator.cc (construct_children):
5689 inspect 'create-new property iso. magical $uniqueContextId context
5692 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5694 * lily/context-key-manager.cc (Module): new file. Encapsulate
5695 object key generation.
5697 * lily/include/context-key-manager.hh (Module): new file.
5699 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5701 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5704 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5706 (reloc_b): excise --enable-framework-dir
5708 * lily/relocate.cc (framework_relocation): use getenv
5709 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5711 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5713 * flower/include/std-string.hh:
5714 * flower/include/std-vector.hh: Finish std:: conversion; move
5715 flower extensions from std:: namespace. Update users.
5717 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5718 their expansion to vector<*>. Update users.
5720 2006-02-10 Graham Percival <gpermus@gmail.com>
5722 * Documentation/user/invoking.itely: add example to File structure.
5724 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5725 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5727 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5729 * ly/paper-defaults.ly: typo.
5731 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5732 set_parent() for parentheses. This will make it show up in bbox
5735 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5736 ly:grob-common* functions.
5738 * lily/grob-scheme.cc (LY_DEFINE):
5739 ly:grob-common-refpoint-of-array: new function
5740 ly:grob-common-refpoint: new function
5741 ly:grob-relative-coordinate: new function
5743 * lily/instrument-name-engraver.cc (process_music): use
5744 Text_interface::is_markup(). This fixes \markup on instrument names.
5746 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5749 * lily/slur.cc (print): idem.
5751 * lily/tie.cc: add line-thickness for ties.
5753 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5755 * scm/output-svg.scm: Document diversion from GNU coding standards
5756 as a workaround for a bug in Microsoft Internet Explorer.
5758 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5760 * lily/instrument-name-engraver.cc (process_music): use
5761 is_markup() iso. is_string()
5763 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5765 * lily/percent-repeat-engraver.cc (process_music): only look at
5766 main_part_ for % repeats.
5768 * lily/stem-tremolo.cc (get_beam_translation): new function.
5769 (calc_slope): new function.
5770 (height): don't use real slope.
5772 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5774 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5775 new connect-to-neighbor, control-points and staff-padding
5776 properties to make ligature brackets showing up again.
5778 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5780 * VERSION: release 2.7.33
5782 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5785 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5786 remove applyOutput example.
5787 (Objects connected to the input): document \tweak, \parenthesize
5789 * lily/relocate.cc (prefix_relocation): allow "current"
5790 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5791 changing VERSION in a lily tree less painful.
5793 * input/regression/parenthesize.ly: new file.
5795 * scm/output-lib.scm (parenthesize-element): new function.
5797 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5799 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5801 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5802 cause: accidentals are caused by note heads, not note events.
5804 2006-02-08 Graham Percival <gpermus@gmail.com>
5806 * darwin.patch: small patch from Erlend, thanks!
5808 * Documentation/user/basic-notation.itely: add stem-neutral example.
5810 * Documentation/user/putting.itely: clarifications.
5812 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5814 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5815 note, add more guidelines to what should go into NEWS.
5817 * input/sakura-sakura.ly: document how to override font.
5819 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5821 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5823 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5825 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5827 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5828 convertrules. Add explicit grouping, needed for python2.2.
5830 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5832 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5834 2006-02-07 Graham Percival <gpermus@gmail.com>
5836 * Documentation/user/global.itely: fix line-width in (text) docs.
5838 * Documentation/user/lilypond-book.itely: same.
5840 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5842 * VERSION (PACKAGE_NAME): release 2.7.32
5844 * Documentation/topdocs/NEWS.tely (Top): document new variable
5847 * flower/include/array.icc (Message): remove file.
5849 * flower/include/std-vector.hh: make sure vsize and VPOS are
5850 defined for binary_search_bounds().
5852 * flower/std-string.cc (std): add to_string(long unsigned).
5854 * configure.in (gui_b): excise std_string option.
5855 (gui_b): excise std_vector option.
5857 * flower/string.cc (Module): excise flower array & string
5859 * flower/include/std-string.hh: excise flower string.
5861 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5863 * python/convertrules.py (lilypond_version_re_str): require
5864 only numbers and dots in \version string.
5866 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5868 * lily/system-start-delimiter.cc (print): allow style = text too.
5870 * lily/system-start-delimiter-engraver.cc
5871 (acknowledge_system_start_text): new function, also add add to
5872 support of system-start-text (instrument names). This fixes
5873 instrument names on piano staves.
5875 * lily/instrument-name-engraver.cc: rewrite. Use
5876 system-start-delimiter approach. This save memory and cpu.
5878 * scm/define-grobs.scm (all-grob-descriptions): remove
5879 instrument-name from break-alignment.
5881 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5883 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5885 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5888 * configure.in (std_vector): On by default.
5890 * lily/include/font-metric.hh:
5891 * lily/include/tfm-reader.hh:
5892 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5895 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5897 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5899 * VERSION (PACKAGE_NAME): 2.7.31
5901 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5902 EPS edge at 0, but take minimum with left-overshoot. This fixes
5903 cut off system start delims.
5905 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5906 hack: add to axis group if not added yet. This fixes hara kiri'd
5909 * lily/hara-kiri-group-spanner.cc
5910 (force_hara_kiri_in_y_parent_callback): fix signatures.
5912 * lily/hairpin.cc (print): check next hairpin to see whether or
5913 not to be continuing.
5915 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5917 * Remove trailing whitespace from makefiles.
5919 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5922 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5924 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5926 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5928 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5930 * configure.in: Use it.
5932 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5934 * scm/music-functions.scm (pitch-of-note): new function.
5936 * ly/music-functions-init.ly: add \octave and \addquote
5938 * lily/parser.yy (music_function_chord_body): softcode \octave.
5939 (lilypond_header): softcode \addquote
5941 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5943 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5944 array.hh, parray.hh at all. Getting ready to flip the
5947 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5949 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5952 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5954 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5956 * flower/include/array.hh: typo.
5958 2006-02-02 Graham Percival <gpermus@gmail.com>
5960 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5962 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5964 * flower/include/pqueue.hh: Derive from std::vector.
5966 * flower/include/parray.hh: Conform to std::vector interface.
5969 2006-02-02 Graham Percival <gpermus@gmail.com>
5971 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5973 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5975 * flower/file-path.cc (is_file): remove if 0 section.
5977 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5978 selecting afii61352.
5980 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5982 * flower/include/std-vector.hh (boundary): Oops, reverse.
5984 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5985 remove superfluous `d'.
5987 * flower/include/std-vector.hh (boundary, top): Detach from class.
5988 Remove empty vector shell.
5990 * flower/include/array.hh (reverse, swap): Detach from class.
5993 * flower/include/std-vector.hh
5994 * flower/include/array.hh (concat): Globally change to insert ().
5996 * flower/include/std-vector.hh
5997 * flower/include/parray.hh
5998 * flower/include/array.hh (elem, elem_ref): Globally replace by
6001 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6003 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6005 * python/convertrules.py (FatalConversionError.sub_cxx_id):
6006 anticipate on identifier substitutions.
6008 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6010 * flower/include/std-vector.hh (insert): Remove, replace by
6011 std::vector interface. Update callers.
6013 * flower/include/array.icc (insert): Change signature to
6014 match std::vector interface.
6016 * flower/include/array.icc (vector_sort): Bugfix.
6018 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6020 * lily/parser.yy (output_def_head_with_mode_switch): new
6021 production. Result: dashes and underscores may be used in the
6024 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
6026 * python/convertrules.py (conv): oops. One slash too much.
6028 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
6030 * flower/include/std-vector.hh (sort): Remove, replace by
6031 ::vector_sort. Update callers.
6033 * flower/include/std-vector.hh (slice): Remove. Update callers.
6036 * flower/test-std.cc (vector_sort): New test.
6038 2006-02-01 Graham Percival <gpermus@gmail.com>
6040 * Documentation/user/putting.itely: fixes from Erik.
6042 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
6044 * flower/test-std.cc: Add simple unit test for vector migration.
6046 * stepmake/stepmake/test*: Unit test support.
6048 * flower/include/std-vector.hh (del): Remove. Use erase (),
6051 * flower/include/array.hh (begin, end): Add.
6054 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6056 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6057 std::string not String.
6059 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6062 * lily/prob.cc (Prob): copy type_ too.
6064 * lily/lily-guile.cc (mangle_cxx_identifier): new
6065 function. Class_bla::foo_bar_[px] ->
6066 ly:class-bla::foo-bar[?!]. Changes throughout
6068 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6070 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6072 * lily/beam.cc (calc_direction): take dir from visible stem in
6075 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6077 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6078 Fix -1, >=0 boundary checks for unsigned vsize.
6080 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6081 loop for unsigned vsize.
6083 * configure.in (--enable-std-vector): New option.
6084 (--enable-std-string): On by default.
6086 * flower/include/std-vector.hh: New file. Enable switch to
6087 std::vector, update client code.
6089 2006-01-30 Graham Percival <gpermus@gmail.com>
6091 * scm/document-translation.scm: clarify "this context is also
6092 known as". Thanks, Werner!
6094 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6096 * Documentation/user/invoking.itely: small fix from Don.
6098 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6100 * scm/lily.scm (define-scheme-options): rename option
6101 preview-include-book-title to book-title-preview
6102 (define-scheme-options): move force-eps-font-include (from paper
6103 block) to eps-font-include -d option.
6105 * VERSION (PATCH_LEVEL): release 2.7.30
6107 * input/bach-schenker.ly (staffPiano): new file.
6109 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6111 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6114 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6116 * ps/lilyponddefs.ps: remove start-system, stop-system,
6117 start-page fluff. This saves putting { } code on the stack, fixing
6118 stack overflows when including EPS files.
6120 2006-01-29 Graham Percival <gpermus@gmail.com>
6122 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6124 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6126 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6128 2006-01-28 Graham Percival <gpermus@gmail.com>
6130 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6132 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6134 * input/mutopia/claop.py: Update.
6136 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6138 * input/regression/completion-heads.ly (texidoc): fix.
6140 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6142 * lily/tie-formatting-problem.cc
6143 (set_ties_config_standard_directions): use abs iso fabs for ints.
6145 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6147 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6148 little less than noteheight, to prevent overlaps in chords.
6150 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6151 head, and fudge stem-attachment.
6153 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6155 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6157 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6159 * lily/main.cc (main): Debugging aid: catch exceptions.
6161 * flower/std-string.cc (to_string): Robustification. Fixes midi
6162 output with std::string.
6164 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6166 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6168 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6170 * Fix -DSTRING_UTILS_INLINED.
6172 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6174 * VERSION (PATCH_LEVEL): release 2.7.29
6176 * lily/relocate.cc (setup_paths): mingw uses std string too.
6178 * lily/*.cc: various fixes for substr(ARG).
6180 * lily/sustain-pedal.cc (print):
6182 * flower/file-name.cc (slashify): use std strings.
6184 * flower/string-convert.cc: remove publib.h
6186 * scm/define-markup-commands.scm (verbatim-file): new markup
6187 command \verbatim-file
6189 * Documentation/topdocs/NEWS.tely: fixup URLs
6191 * input/regression/alignment-vertical-manual-setting.ly (Module):
6194 * lily/align-interface.cc (align_elements_to_extents): overwrite
6195 translations with numbers in alignment-offsets from left bound
6197 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6198 (page-translate-systems): new function: take into account Y-offset.
6200 * Documentation/topdocs/NEWS.tely (Top): document new features.
6202 * input/regression/page-layout-manual-position.ly (Module): new
6205 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6207 * flower/file-path.cc (path::parse_path): Oops.
6209 * Finish std::string interface. For now, use std:: marker
6210 throughout for easy s/r.
6212 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6214 * Documentation/user/putting.itely (Score is a single musical
6216 (Score is a single musical expression): more typos.
6218 * scm/page.scm (annotate-space-left): thinko.
6219 (annotate-page): more thinkos.
6221 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6223 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6224 for different \score blocks separately.
6225 (post-process-pages): put write-page-layout into paper block.
6227 * lily/output-def.cc (get_parser): new file.
6229 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6232 * lily/include/output-def.hh (class Output_def): add parser_ member.
6234 * input/regression/page-layout-twopass.ly (Module): new file.
6236 * scm/lily.scm: remove cpp hack.
6238 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6240 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6242 * GNUmakefile.in (c-clean): New target.
6244 * flower/include/std-string.hh: String/std::string compatibility:
6245 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6248 * flower/rational.cc:
6249 * flower/include/rational.hh:
6252 * flower/include/offset.hh:
6254 * flower/interval.cc:
6255 * flower/include/interval.hh:
6257 * flower/string-convert.cc:
6258 * flower/include/string-convert.hh: Use std::string [interface].
6261 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6263 * Documentation/index.html.in: clean up.
6265 2006-01-25 Graham Percival <gpermus@gmail.com>
6267 * Documentation/user/putting.itely: another new untested doc section.
6269 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6271 * scm/layout-page-layout.scm (write-page-breaks): write
6272 \spacingTweaks #ALIST. Handle grace timing.
6274 * scm/: more imports.
6276 * scm/page.scm (make-page): add footer/header.
6277 (annotate-space-left): revise: only take page argument.
6278 (layout->page-init): new function.
6280 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6281 version of the system/spacing/linebreak hack writing to the output
6283 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6286 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6289 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6291 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6293 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6295 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6296 handling to page.scm
6298 * lily/prob-scheme.cc (LY_DEFINE): new file.
6299 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6301 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6304 * lily/music.cc (derived_mark): derive Music from Prob.
6306 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6308 * lily/prob.cc (Module): Implement Prob (Property Object), object
6309 with shared and r/w property alists.
6311 * lily/include/prob.hh (Module): new file. Declare Prob.
6313 * flower/string.cc: remove is_empty().
6315 * flower/include/string.hh (class String): remove String:: qualifier.
6317 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6318 substitute appropriate functions.
6320 * flower/include/string.hh (class String): remove to_str0 and
6321 is_empty(). S&R everywhere.
6323 2006-01-23 Graham Percival <gpermus@gmail.com>
6325 * Documentation/user/basic-notation.itely: add hairpin
6326 after-linebreak tweak to commonprop.
6328 * Documentation/user/putting.itely: added two new sections.
6330 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6332 * flower/international.cc:
6333 * flower/include/international.hh:
6335 * flower/getopt-long.cc:
6336 * flower/include/getopt-long.hh: Use std::string [interface].
6339 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6341 * stepmake/stepmake/executable-rules.make: Add dependency on
6344 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6346 * flower/file-path.cc:
6347 * flower/include/file-path.hh: Use std::string [interface].
6350 * flower/direction.cc:
6351 * flower/axis.cc: Unused. Remove.
6353 * configure.in (--enable-std-string): New option.
6355 * flower/std-string.cc:
6356 * flower/include/std-string.hh: New file.
6358 * flower/file-name.cc[STD_STRING]:
6359 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6361 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6363 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6365 * scm/define-markup-commands.scm (with-dimensions):
6366 with-dimensions markup command.
6368 * input/test/font-table.ly: use it.
6370 * lily/open-type-font.cc (glyph_list): new function.
6372 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6374 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6376 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6378 * ly/music-functions-init.ly (parallelMusic): new music function
6379 for parallel music entry.
6381 * scm/define-music-properties.scm (all-music-properties): new
6382 'void music property
6384 * scm/music-functions.scm (ly:music-message): make public, to be
6385 used in music function definitions
6387 * scm/lily-library.scm (collect-music-for-book): discard music
6388 when the 'void property is set.
6390 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6392 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6394 * mf/GNUmakefile: idem.
6396 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6398 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6400 * Documentation/user/notation-appendices.itely (The Feta font):
6403 * input/test/font-table.ly: new file. Generate font table within lily.
6405 * Documentation/user/notation-appendices.itely (The Feta font):
6406 use new font-table.ly file.
6408 * stepmake/stepmake/install-out-targets.make
6409 (local-install-outfiles): only create directory if
6410 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6412 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6414 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6416 * VERSION (PACKAGE_NAME): release 2.7.28
6418 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6419 the right font from a Mac dfont.
6420 (write-preamble): don't forget directory, only look at files.
6422 This fixes problems with TTF files in dfonts that don't match
6423 their PostScript names.
6425 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6426 PS name from TTF font.
6428 * input/regression/tie-manual.ly: document new feature.
6430 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6432 * VERSION (MY_PATCH_LEVEL): bump to .28
6434 * Documentation/user/basic-notation.itely (Ties): add tie examples
6437 * lily/tie-formatting-problem.cc (score_ties_configuration):
6438 symmetry penalties for outer ties.
6440 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6442 * lily/tie-formatting-problem.cc (generate_configuration)
6443 (set_manual_tie_configuration): skip non-pair manual
6444 tie-configuration, so you can set individual ties as
6446 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6448 * input/regression/tie-chord.ly: use generateTiePattern to
6451 * lily/tie-formatting-problem.cc (peak_around): new function.
6452 (score_configuration): use sliding criterion for staff line collisions.
6453 (score_configuration): idem for dot collisions.
6454 (generate_configuration): use separate stem_gap for gap to stem.
6456 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6457 separate penalty factors for x and y distance.
6458 (struct Tie_details): separate penalties for tip and center line collisions.
6460 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6462 * lily/tie-formatting-problem.cc (generate_configuration): make
6463 large ties avoid stafflines in the horizontal section.
6464 (score_configuration): use softcoded penalties
6465 (score_aptitude): idem.
6467 * lily/tie-helper.cc (from_grob): softcode tie details
6469 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6471 * lily/staff-symbol-referencer.cc (on_line): rename from
6474 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6476 * ly/music-functions-init.ly: remove duplicate tag.
6478 * lily/include/*.hh: GCC 4.1 fixes.
6480 006-01-16 Erlend Aasland <erlenda@gmail.com>
6482 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6484 * scm/define-music-types.scm: fix bug in desc. string
6485 for OverrideProperty
6487 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6489 * scripts/lilypond-book.py: bugfix
6491 * scm/define-music-types.scm: fix typos.
6493 2006-01-14 Graham Percival <gpermus@gmail.com>
6495 * Documentation/user/ basic-notation.itely, global.itely,
6496 advanced-notation.itely, instrument-notation.itely: small
6497 additions (bugs and commonly tweaked properties).
6499 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6501 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6502 detection of mingw build.
6503 (MINGW_BUILD): opps.
6505 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6507 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6510 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6512 * scm/music-functions.scm (skip->rest): add skip->rest
6514 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6516 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6519 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6520 config dirs. Aids debugging.
6521 (display_config): also display config files.
6523 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6525 * VERSION: release 2.7.27
6527 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6528 for determining bar size.
6530 * lily/staff-symbol.cc (print): place lines at distance line-positions
6532 * scm/define-grob-properties.scm (all-user-grob-properties): add
6535 * lily/staff-symbol.cc (height): new function.
6537 * input/regression/staff-line-positions.ly: new file.
6539 2006-01-06 Graham Percival <gpermus@gmail.com>
6541 * input/test/add-staccato.ly: remove reference to old file.
6543 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6545 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6546 lilypond binary too.
6548 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6550 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6552 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6554 * scripts/midi2ly.py: Bugfix: Declare datadir.
6556 * make/ly-rules.make:
6557 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6558 that seems to be gone). Fixes make web.
6560 * The grand 2005-2006 replace.
6562 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6564 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6566 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6567 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6568 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6569 like -dgs-font-load.
6571 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6572 remove absolute path to lilypond binary.
6574 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6576 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6578 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6580 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6582 * mf/GNUmakefile: remove broken dvips map symlink.
6584 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6587 * configure.in: Cosmetic fixes.
6589 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6591 * Documentation/user/music-glossary.tely (Pitch names): Added
6592 Spanish pitch names and durations, thanks to Ernesto Gancedo
6594 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6596 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6597 init. Fixes verbose printing of .scm files.
6599 * stepmake/aclocal.m4: add spaces before - options.
6601 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6603 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6604 of path search in local block variable.
6606 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6608 * configure.in (NCSB_DIR): --enable-ncsb-dir
6609 (LINK_GXX_STATICALLY): denko.
6611 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6613 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6614 use locate to find c059033l.pfb.
6616 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6618 * lily/tie-formatting-problem.cc
6619 (problem::generate_base_chord_configuration): Use my_round (was
6622 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6623 do not invoke mbrtowc.
6625 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6627 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6629 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6631 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6633 * Documentation/user/invoking.itely (svg): revise.
6635 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6637 * lily/lexer.ll: use sourcefilename iso. renameinput.
6639 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6641 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6642 <PostScriptName>.ttf instead of c059XXXttf.
6644 * lily/program-option.cc (LY_DEFINE): special support for
6645 --verbose, so it works before option init too.
6647 * mf/GNUmakefile (local-install): oops.
6649 * lily/lyric-hyphen.cc (print): oops.
6651 * buildscripts/pfx2ttf.fontforge: new file.
6653 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6654 ($(outdir)/%.ttf): new rule.
6656 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6659 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6662 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6664 * VERSION: release 2.7.26
6666 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6668 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6670 * lily/font-config.cc (init_fontconfig): verbosity.
6672 * THANKS: add Muziekacademie Lede.
6674 * scripts/musicxml2ly.py (print_voice_definitions): new function
6675 (print_score_setup): new function
6676 (convert): read part definition to output staves properly.
6678 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6681 * python/musicexp.py (Output_printer.__init__): use _ in data
6683 (Output_printer.unformatted_output): new function: no formatting,
6685 (Duration.get_length): remove isinstance() checks for
6686 Output_printer everywhere.
6688 * input/regression/lyrics-bar.ly (texidoc): add
6689 Separating_line_group_engraver.
6691 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6693 * lily/relocate.cc (framework_relocation): New function,
6694 factored from set_relocation ().
6695 (prefix_relocation): Rename from set_relocation ().
6696 (setup_paths): Use it.
6698 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6700 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6701 numbers. Patch by Erlend Aasland.
6703 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6705 * lily/font-config.cc (init_fontconfig): print warning if cache
6706 file is not existant.
6708 * lily/main.cc: don't use #ifdef but #if
6710 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6712 * lily/grob-property.cc (internal_set_property): don't abort on
6713 calculation-in-progress.
6715 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6717 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6718 connect-to-neighbor property not connect-to-other
6720 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6721 (LY_DEFINE): oops. don't forget protection.
6723 * flower/parse-afm.cc (Module): strip AFM handling completely.
6725 * lily/stencil-expression.cc: idem.
6727 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6729 * lily/function-documentation.cc (ly_add_function_documentation):
6730 use static member iso. Protected_scm
6732 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6734 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6736 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6738 * lily/relocate.cc (set_env_dir): New function.
6739 (set_relocation): Use it to fix setting PANGO_PREFIX.
6741 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6743 * input/regression/stem-direction-context.ly: remove rest.
6745 * lily/melody-engraver.cc (process_music): restart for bar lines.
6746 (acknowledge_slur): restart for slurs.
6748 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6750 * Documentation/user/invoking.itely: describe how to view SVG
6751 output using Inkscape which replace embedded fonts with OTF fonts.
6753 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6755 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6757 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6759 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6762 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6764 * VERSION (PACKAGE_NAME): release 2.7.25
6766 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6768 * input/regression/stem-direction-context.ly: new file.
6770 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6772 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6775 * ly/engraver-init.ly: add Melody_engraver
6777 * lily/beam.cc (calc_direction): use default-direction
6778 iso. get_default_direction()
6780 * scm/define-grob-properties.scm (all-user-grob-properties): add
6781 default-direction property.
6783 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6785 * lily/stem.cc (calc_default_direction): remove
6786 Stem::get_default_direction, use default-direction with callback
6789 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6791 * lily/melody-engraver.cc: new file. Acknowledge stems for
6792 interpolated stem directions.
6794 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6796 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6798 * lily/slur-configuration.cc (fit_factor): more robust check for
6799 point in curve X-extent.
6801 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6802 (outside_slur_callback): check for 'outside avoidance.
6804 * lily/slur-configuration.cc (score_extra_encompass): don't use
6805 bound->column() == avoid->column() for checking extents, as this
6806 doesn't work for accidentals.
6808 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6809 DynamicText hardcoding.
6811 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6812 crash if bound stem is NULL
6814 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6817 2005-12-22 Graham Percival <gpermus@gmail.com>
6819 * scm/define-markup-commands.scm: typo. @code{\raise}
6822 * darwin.patch: now used again, includes a
6823 required patch from fink.
6825 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6827 * po/TODO: mention gtranslator along with kbabel.
6828 * po/fi.po: update translations.
6830 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6832 * lily/relocate.cc (setup_paths): Bugfix.
6834 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6836 * lily/slur-configuration.cc (score_extra_encompass): don't use
6837 "avoid" choice for avoid-slur.
6839 * stepmake/bin/install.py (dest): don't create existing dir.
6841 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6843 * stepmake/bin/install.py: Remove file before copying.
6846 * stepmake/aclocal.m4: Do not substitute INSTALL.
6848 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6850 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6851 depend on link-tree.
6853 * lily/relocate.cc (setup_paths): only check path for non-absolute
6854 dir without directory part.
6856 * flower/file-name.cc (is_absolute): new method.
6857 (is_absolute): check root_ too.
6859 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6861 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6862 relocation code. Oops, don't comment out too much.
6864 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6867 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6870 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6872 * .cvsignore: Add install-sh.
6874 * autogen.sh (srcdir): Typo.
6876 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6878 * autogen.sh (srcdir): urg. Touch install-sh.
6880 * stepmake/bin/install-sh (Module): remove.
6882 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6884 * lily/include/relocate.hh: new file.
6886 * lily/relocate.cc: new file. Contain relocation logic.
6888 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6889 (main): read LILYPOND_VERBOSE as the first thing.
6891 * stepmake/aclocal.m4: remove INSTALL variable.
6893 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6894 separate target for making font symlinks.
6895 (documentation-dir): use $(if $(findstring )) for switching off
6898 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6899 something if DOCUMENTATION is no.
6901 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6903 * VERSION: release 2.7.24
6905 * lily/script-column-engraver.cc (stop_translation_timestep):
6906 delay adding to script-column.
6908 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6910 * python/convertrules.py (conv): rule for number-visibility
6912 * lily/slur-configuration.cc (score_extra_encompass): different
6913 distance measure for avoid and inside avoidance.
6914 (score_extra_encompass): use 1/(distance+eps) as penalty.
6916 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6917 encompass objects for generating slur curves.
6919 * lily/slur.cc: use details iso. slur-details property.
6921 * input/regression/slur-tuplet.ly: new file.
6923 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6925 * flower/include/offset.hh (class Offset): new operator /=
6927 * lily/tuplet-number.cc (print): new file, new interface.
6929 * scm/define-grob-properties.scm (all-user-grob-properties):
6930 remove number-visibility property.
6932 * lily/tuplet-bracket.cc (calc_control_points): new function
6933 (calc_connect_to_neighbors): new function.
6934 (print): remove text handling for tuplet numberdef.
6936 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6939 * lily/lily-guile.cc (robust_scm2booldrul): new function
6941 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6943 * lily/tuplet-bracket.cc (calc_position_and_height): use
6944 staff-padding to control whether tuplet brackets are over staves.
6946 * lily/grob.cc (suicide): clear dim_caches_.
6948 * lily/dimension-cache.cc (clear): new function.
6950 * lily/grob.cc (extent): swap order of min-extent and extent
6951 calculations. This fixes hara kiri staves.
6953 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6955 * lily/main.cc: Nitpick: relocation is not based on path, but on
6956 directory (location).
6958 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6960 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6962 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6964 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6966 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6968 * stepmake/stepmake/generic-vars.make (Module): idem.
6970 * stepmake/stepmake/executable-targets.make (default): use it.
6972 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6974 * make/GNUmakefile: don't install make rules.
6976 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6978 (prepend_env_path): more verbosity.
6980 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6982 * GNUmakefile.in: add dir argument for find command.
6984 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6985 fixes weird line numbers for point & click.
6987 * lily/source-file.cc (get_counts): init line/column/char counts.
6989 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6991 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6993 2005-12-16 Graham Percival <gpermus@gmail.com>
6995 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6996 minor fixes from Fredric. Thanks!
6998 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7000 * ly/music-functions-init.ly: add \bar and \clef music function
7002 * lily/lily-lexer.cc: idem.
7004 * lily/parser.yy (FIXME): remove BAR and CLEF.
7006 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7008 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7010 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7011 function arguments too
7013 * lily/main.cc (set_relocation): new function.
7015 * scripts/musicxml2ly.py (convert): add \version
7017 * lily/tie.cc: remove get_default_attachments()
7019 * VERSION (PACKAGE_NAME): release 2.7.23
7021 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7022 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7024 * Documentation/topdocs/NEWS.tely (Top): document new feature.
7026 * lily/tie-formatting-problem.cc (score_ties): new function
7027 (get_variations): new function. Try flipping dirs for collisions.
7028 (generate_optimal_chord_configuration): new function. 1-opt search
7029 for better configuration.
7031 * lily/tie-configuration.cc: new file.
7033 * lily/tie.cc: junk Tie::get_configuration()
7035 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7036 (score_ties_configuration): new function.
7037 (generate_ties_configuration): new function.
7038 (generate_base_chord_configuration): new function.
7039 (set_ties_config_standard_directions): Move body from tie-column-format.cc
7040 (set_manual_tie_configuration): Move body from tie-column-format.cc
7042 * input/regression/tie-dot.ly: new file.
7044 * lily/tie-formatting-problem.cc (score_configuration): score
7047 * lily/tie-helper.cc (get_transformed_bezier): new function
7049 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7051 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7052 -undefined suppress iso. -framework Python
7054 * scm/define-grobs.scm (all-grob-descriptions): set
7055 springs-and-rods (thanks Joe Neeman!)
7057 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
7059 * input/no-notation/display-lily-tests.ly (test):
7060 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7061 changed from \tag #'(a b) to \tag #'a \tag #'b
7063 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7065 * Documentation/topdocs/NEWS.tely: strip out-www.
7067 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7069 * config.make.in (AR): add AR and RANLIB
7071 * flower/libc-extension.cc: include cassert
7073 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7076 2005-12-11 Graham Percival <gpermus@gmail.com>
7078 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7080 * stepmake/stepmake/python-modules-vars.make: define
7081 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7083 * THANKS: added Johannes Schindelin.
7085 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7087 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7089 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7090 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7092 * lily/parser.yy: reorganize file layout.
7094 * ly/music-functions-init.ly: add tweak music function.
7096 * lily/grob-info.cc (ultimate_music_cause): new function:
7097 recursively lookup causes.
7099 * lily/parser.yy (chord_body_element): allow music functions for
7100 post-events, allow music functions for chord elements.
7102 * lily/font-config-scheme.cc (display_fontset): add cast.
7104 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7105 #'(a b) -> \tag #'a \tag #'b rule.
7107 * python/musicexp.py (Output_printer.dump_version): new function
7109 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7111 * lily/parser.yy (FIXME): remove \tag
7112 (FIXME): remove tag_music() function.
7114 * lily/lily-lexer.cc: remove \tag
7116 * ly/music-functions-init.ly: define music-function "tag"
7118 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7120 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7122 * VERSION (PATCH_LEVEL): release 2.7.22
7124 * input/regression/lyric-hyphen-retain.ly: renew.
7126 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7129 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7130 iso. minimum-length property for rods.
7132 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7133 LyricSpace item to keep lyrics spaced apart.
7135 * ly/engraver-init.ly: remove Separating_line_group_engraver
7137 * Documentation/user/music-glossary.tely: do setfilename before
7140 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7142 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7143 See xref documentation, for example.
7145 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7147 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7148 pending_skip iso. ly_voice[-1]
7149 (main): add if __main__ for debugging.
7151 * python/musicxml.py (Accidental.__init__): new class.
7153 * scripts/musicxml2ly.py (progress): new function
7154 (musicxml_key_to_lily): don't barf on modeless keys.
7155 (create_skip_music): new function.
7156 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7157 (musicxml_note_to_lily_main_event): new function.
7159 * python/musicexp.py (Music.__init__): add comment field.
7160 (NestedMusic.append): new routine.
7161 (SequentialMusic.print_ly): print comment.
7162 (ArpeggioEvent.ly_expression): new class
7163 (BeamEvent.ly_expression): new class
7164 (NoteEvent.__init__): support for cautionary/forced accs.
7166 * lily/lookup.cc (slur): normal order for array loop.
7168 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7171 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7174 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7176 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7178 * scripts/lilypond-book.py: Introduce option
7179 --preserve-line-breaks, for usage with srcltx
7181 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7183 * scm/output-lib.scm (print-circled-text-callback): draw circle
7184 around text using make-circle-markup.
7186 * Documentation/user/*: strip out-www from file names.
7188 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7190 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7191 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7193 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7195 * Documentation/user/GNUmakefile: idem.
7197 * Documentation/user/macros.itexi: strip out-www
7199 * python/rational.py: python 2.3 compat.
7201 * VERSION (PATCH_LEVEL): release 2.7.21
7203 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7204 option formatting, lilypond style.
7206 * python/musicexp.py: grab from Ikebana: a library for composing
7207 ly music expressions.
7208 (Output_printer): class for advanced .ly printing.
7211 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7212 convert to pythonesque structure.
7214 * python/rational.py: PD rational number class.
7216 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7218 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7220 * lily/part-combine-iterator.cc: Minor bugfix
7222 * THANKS: Update bughunters
7224 2005-12-02 Werner Lemberg <wl@gnu.org>
7226 * mf/README: Document process for proper mf2pt1 conversion.
7228 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7231 * mf/feta-harmonica.mf: Removed. Unused.
7233 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7235 * scripts/lilypond-book.py (do_file): fix thinkos.
7237 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7239 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7240 ($(outdir)/parser.cc):
7241 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7243 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7245 * ly/titling-init.ly (tagline): it should be a space between
7246 "Music engraving by LilyPond" and the version number.
7248 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7250 * VERSION (PACKAGE_NAME): release 2.7.20
7252 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7254 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7256 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7258 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7260 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7262 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7264 * kpath-guile/: remove directory
7266 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7267 file. Encapsulate kpathsea using commandline tools.
7269 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7272 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7274 * Documentation/user/advanced-notation.itely (Setting automatic
7275 beam behavior): Correct a few typos. Thanks to David Bobroff.
7277 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7278 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7280 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7282 * scripts/*.py: gmane address for bugs.
7284 2005-11-28 Pal Benko <benkop@freestart.hu>
7286 * make/ly-rules.make: add -f switch to mv
7288 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7290 * lily/bar-line.cc: interpret it
7292 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7294 * configure.in (--disable-documentation): New switch.
7296 * GNUmakefile.in: Use it.
7298 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7300 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7302 * scripts/lilypond-book.py (do_file): search chunks for
7305 * GNUmakefile.in: add copy step in between so we can lose the
7306 out-www directories.
7308 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7310 * lily/pango-font.cc (pango_item_string_stencil): put
7311 geometry.width into glyph-string too.
7313 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7315 * scm/define-music-display-methods.scm (RevertProperty):
7316 (OverrideProperty): Use grob-property-path property, a list of
7317 symbols, instead of grob-property, which used to be a single
7319 (BassFigureEvent): a figure can be a plain number, not necessarily a
7322 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7324 * VERSION: release 2.7.19
7326 * lily/figured-bass-engraver.cc (process_music): check
7327 figuredBassCenterContinuations first.
7329 * scm/translation-functions.scm (format-bass-figure): make double
7332 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7335 * lily/system-start-delimiter-engraver.cc: move from
7336 Nested_system_start_delimiter_engraver, rename
7337 Nested_system_start_delimiter_engraver ->
7338 System_start_delimiter_engraver.
7340 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7341 bracket type from hierarchy.
7343 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7345 * lily/rest.cc (y_offset_callback): read staff-position.
7347 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7348 mark after-line-breaking-callback as internal.
7350 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7352 2005-11-25 Werner Lemberg <wl@gnu.org>
7354 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7356 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7358 * stepmake/bin/add-html-footer.py (do_file): add google
7360 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7361 staff if first_start_ is true.
7363 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7365 * scripts/midi2ly.py (split_track): add __repr__ members.
7366 (track_first_item): only return Item if not None. This fixes a
7367 problem when dumping a track that starts with an empty channel.
7369 * python/midi.c: doc module.
7371 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7373 * Documentation/user/global.itely (Creating MIDI files): Fix
7374 compilation problem.
7376 2005-11-22 Graham Percival <gpermus@gmail.com>
7378 * Documentation/user/basic-notation.itely: clarify dynamic
7381 * Documentation/user/advanced-notation.itely: add unicode
7382 escape control example, whatever that is. :)
7384 * Documentation/user/global.itely: added "removing dynamics
7387 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7389 * VERSION (PATCH_LEVEL): release 2.7.18
7391 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7392 System_start_delimiter_engraver by
7393 Nested_system_start_delimiter_engraver.
7395 * lily/nested-system-start-delimiter-engraver.cc (struct
7396 Bracket_nesting_node): new class.
7397 (struct Bracket_nesting_group): new class
7398 (struct Bracket_nesting_staff): new class.
7399 (process_music): create hierarchy of grobs. This allows separate
7400 tuning of different SSDs.
7402 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7403 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7405 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7407 * lily/side-position-interface.cc (aligned_side): multiply
7410 * lily/script-engraver.cc (make_script_from_event): allow setting
7413 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7415 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7417 * scm/define-grobs.scm (all-grob-descriptions): new grob
7418 NestedSystemStartDelimiter.
7420 * input/regression/system-start-heavy-bar.ly: new file.
7422 * lily/nested-system-start-delimiter-engraver.cc: new file.
7424 * lily/nested-system-start-delimiter.cc: new file.
7426 * input/regression/system-start-nesting.ly: new file.
7428 * scm/define-grobs.scm (all-grob-descriptions): use X side
7429 positioning for positioning braces for nested contexts.
7431 * lily/system-start-delimiter.cc (print): don't divide extent by
7433 (print): use style iso. glyph.
7434 (staff_bracket): translate glyph inside routine already.
7436 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7438 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7441 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7443 * scm/define-context-properties.scm
7444 (all-user-translation-properties): rename figuredBassFormatter
7445 from newFiguredBassFormatter.
7447 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7449 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7451 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7453 * lily/beam.cc (calc_beaming): new function.
7454 (calc_shorten): new function.
7456 * THANKS: add Edward Neeman.
7458 * input/regression/accidental-clef-change.ly: new file.
7460 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7462 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7464 * lily/clef-engraver.cc (inspect_clef_properties): reset
7465 localKeySignature for clef changes.
7467 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7469 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7470 add dummy definition that works in Linux and add information in
7471 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7473 * Documentation/user/changing-defaults.itely (Modifying context
7474 plug-ins): Add index for \with.
7476 * Documentation/user/music-glossary.tely (dal segno): Updated
7477 example to version >=2.6.
7479 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7481 * Documentation/user/instrument-notation.itely (Printing chord
7482 names): Reorder \chordmode and \repeat in one example.
7484 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7486 * VERSION: release 2.7.17
7488 * Documentation/topdocs/NEWS.tely (Top): add note about
7491 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7492 new function. Search region of 3 positions for best tie.
7493 (score_configuration): new function.
7494 (score_aptitude): new function.
7495 (generate_configuration): new function.
7496 (get_configuration): new function.
7497 (Tie_formatting_problem): new function
7499 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7501 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7503 * THANKS: add Eduardo Vieira & Ralph Little
7505 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7508 * lily/include/tie-formatting-problem.hh (class
7509 Tie_formatting_problem): add Tie_details to
7510 Tie_formatting_problem. Update calling conventions.
7512 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7515 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7517 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7519 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7520 scm/define-context-properties.scm: Maintenance bugfix: make
7521 ligature brackets work again by removing obsolete ligature
7522 primitive callback push/pop.
7524 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7525 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7528 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7530 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7531 used and do not call it a path.
7532 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7534 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7536 * lily/include/tie-formatting-problem.hh (class
7537 Tie_formatting_problem): new file.
7539 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7541 * Documentation/misc/ChangeLog-2.3: new file.
7543 * lily/audio-staff.cc (output): degarianize.
7545 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7547 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7548 Unset PYTHONOPTIMIZE. Fixes install if set.
7550 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7552 * python/convertrules.py (conv): add warning about drums.
7554 * make/stepmake.make: include toplevel-version.make after config.make.
7556 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7557 also allow python2.4
7559 * config.make.in (configure-srcdir): remove GXX GCC vars.
7561 * stepmake/aclocal.m4: don't do non-srcdir build with
7562 symlinks. Use inclusion, so the src directory name can be changed.
7564 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7566 * make/mutopia-vars.make:
7567 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7570 2005-11-13 Werner Lemberg <wl@gnu.org>
7572 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7573 but the affected path. This ensures that the (overlapping) outlines
7574 have the same direction, which is a necessary prerequisite for
7575 FontForge's algorithm to remove overlaps.
7578 * mf/feta-haak.mf: Formatting.
7579 (draw_bracket): Slightly modify outline to avoid an unnecessary
7581 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7582 them from the affected paths.
7584 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7586 * mf/README: remove xpm / accordion notes.
7588 * lily/tie-column-format.cc (set_chord_outline): add dots into
7589 skyline extents. This fixes tie formatting if the left head has dots.
7591 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7592 space inside the staff.
7593 (get_configuration): shift another position if necessary in case
7596 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7598 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7599 buildscript-dir iso. $(depth)/buildscripts.
7601 * tex/GNUmakefile (local-uninstall): remove
7602 music-drawing-routines.ps juggling.
7604 * stepmake/stepmake/install-targets.make (local-install-files):
7605 prepend src-dir to install targets.
7607 * lily/system-start-delimiter-engraver.cc
7608 (acknowledge_system_start_delimiter): use
7609 add_offset_callback(). This fixes translation of nested
7612 * lily/grob-closure.cc (add_offset_callback): only encaps in
7613 simple_closure if it's a procedure.
7615 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7618 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7619 remove-empty where pertinent.
7621 2005-11-12 Graham Percival <gpermus@gmail.com>
7623 * Documentation/user/instrument-notation.itely: added
7624 Cameron Horsburgh's multiple stanzas docs. Thanks!
7626 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7629 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7630 make picture in builddir, not srcdir.
7632 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7634 * VERSION: release 2.7.16
7636 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7639 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7641 * Documentation/user/examples.itely (Piano templates): Minor
7642 modification to the Piano centered lyrics example.
7644 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7646 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7649 * Documentation/user/point-and-click.itely: simplify p&c
7650 instruction: don't configure firefox. Put lilypond-invoke-editor
7651 in front of the browser.
7653 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7654 (run-browser): new function.
7656 * lily/parser.yy (Lily_lexer): recognize Book
7658 * lily/book.cc (clone): new function
7660 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7662 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7664 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7665 Maintenance bugfix: reduce number of font related warnings by
7666 updating naming conventions for glyph-name.
7668 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7670 * scm/define-grobs.scm (all-grob-descriptions): add
7671 rhythmic-grob-interface to TabNoteHead.
7673 * scm/layout-beam.scm (check-quant-callbacks): remove
7676 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7678 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7679 alignment of centered divisiones.
7681 * scm/scripts.scm (articulations): Maintenance bugfix:
7682 follow-into-staff -> quantize-position.
7684 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7685 plica head in porrectus deminutus.
7687 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7689 * make/lilypond.fedora.spec.in (Group): add %clean section.
7691 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7692 less then 1/5th of total length.
7693 (print): use gap too. Fixes tupletUp-single-bracket.ly
7695 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7696 events into EventChord. This fixes textspanners on mm rests. Fixes
7699 * lily/side-position-interface.cc (get_axis): read side-axis
7700 (set_axis): set side-axis.
7702 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7703 properties everywhere.
7705 * lily/spacing-spanner.cc (breakable_column_spacing): add
7706 average-spacing-wishes. Take maximum if not set.
7707 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7709 * scm/define-grobs.scm (all-grob-descriptions): add
7710 average-spacing-wishes.
7712 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7713 offset callbacks. This fixes alignment for Fingering objects.
7715 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7716 space for key - timesig combination.
7718 * input/regression/script-stem-tremolo.ly (Module): new file.
7720 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7723 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7724 Fixes: c-tremolo-script.ly.
7726 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7728 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7730 * scm/define-grobs.scm (all-grob-descriptions): remove
7731 self-X-offset. Fixes alignment of octavate-8.
7733 * scripts/lilypond-book.py (datadir): look in
7734 LILYPONDPREFIX/share/lilypond/current/
7736 * GNUmakefile.in: symlink current to <VERSION>.
7738 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7740 * lily/main.cc: eps listed as a backend.
7742 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7744 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7746 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7748 * lily/include/score.hh (class Score): remove texts_ member.
7750 * lily/beam.cc (set_stem_lengths): force direction callback.
7751 (print): read quantized-positions, so we can force
7752 Beam::set_stem_lengths to occur.
7753 (rest_collision_callback): use common X parent.
7755 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7757 * flower/file-path.cc (find): Bugfix: Return name of file found.
7759 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7760 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7761 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7763 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7765 * flower/offset.cc: idem.
7767 * mf/*.mf: update email address.
7769 * lily/font-config-scheme.cc: new file.
7771 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7773 * lily/*: cs.uu.nl -> xs4all.nl
7775 * VERSION (PATCH_LEVEL): release 2.7.15
7777 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7780 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7782 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7784 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7786 * lily/staff-performer.cc (process_music): add audio
7787 elements. This makes MIDI instrument changes work once again.
7789 * lily/main.cc (LY_DEFINE): add gmane address.
7791 * lily/beam.cc: remove calc_positions()
7793 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7794 original_ in private scope.
7795 (class Grob): drop pscore_ pointer, change to output_def pointer.
7796 (class Grob): cleanup class definition.
7798 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7800 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7802 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7803 absolute. Better diagnostics.
7805 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7806 This makes lilypond run from the build directory using argv0
7807 relocation (without any --prefix or LILYPONDPREFIX setting).
7809 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7811 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7813 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7814 with simple-closure.
7816 * lily/self-aligment-interface.cc (set_align_self): new function
7817 (set_center_parent): new function.
7819 * lily/side-position-interface.cc (set_axis): new function.
7821 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7824 * scm/define-grob-properties.scm (all-user-grob-properties):
7825 remove [XY]-offset-callbacks add [YX]-offset
7827 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7829 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7830 entry for time signatures after breathing signs. Bug report by
7833 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7835 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7836 not absolute, make it absolute using PATH.
7838 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7840 * python/midi.c (initmidi): Fix type for mingw.
7842 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7844 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7846 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7849 * stepmake/aclocal.m4: Support python cross compiling.
7851 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7854 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7856 * scm/output-lib.scm (chain-grob-member-functions): replace
7859 * lily/chained-callback.cc (Module): remove file.
7861 * lily/rest-collision.cc (force_shift_callback_rest): change to
7864 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7866 * lily/grob.cc (y_parent_positioning): remove axis argument from
7867 parent_positioning callbacks.
7868 (Grob): junk init code
7869 (get_offset): use generic property callbacks for
7870 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7871 (axis_parent_positioning): new function
7872 (axis_offset_symbol): new function
7873 (chain_offset_callback): new function
7874 (add_offset_callback): new function
7876 * lily/beam.cc (rest_collision_callback): change signature; this
7877 is now a chained callback.
7879 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7880 callback administration.
7882 * lily/simple-closure.cc: new file. Smob type that allows "grob
7885 (ly:make-simple-closure FUNC A B)
7887 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7890 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7893 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7895 * lily/rest.cc (polyphonic_offset_callback): remove.
7897 * lily/script-engraver.cc (try_music): remove bool* argument.
7899 * scm/script.scm (default-script-alist): set quantize-position
7902 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7904 * lily/side-position-interface.cc (aligned_side): move staff
7905 position quantization from
7906 Side_position_interface::quantised_position().
7907 (quantised_position): remove
7909 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7911 * input/regression/beam-quant-standard.ly: reindent, set
7912 debug-beam-quanting to #t.
7914 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7915 10000 if this is a "hard" concave beam.
7917 * lily/beam.cc (calc_least_squares_positions): change from
7918 calc_least_squares_dy
7919 (set_stem_lengths): this is now a chained callback.
7921 * lily/context-property.cc (execute_general_pushpop_property):
7922 bugfix override with procedure should have effect.
7924 * scm/define-grob-properties.scm (all-internal-grob-properties):
7925 remove position-callbacks.
7927 * scm/define-grobs.scm (all-grob-descriptions): use
7928 ly:make-callback-chain for positions property.
7930 * scm/layout-beam.scm (check-quant-callbacks): return list of
7933 * scm/lily.scm (type-p-name-alist): add callback-chain
7935 * lily/lily-guile.cc (type_check_assignment): type check failure
7936 is warning not message.
7938 * lily/grob-property.cc (try_callback): walk callback chain if
7941 * lily/chained-callback.cc: new file. new smob type.
7943 * lily/lily-guile.cc (procedure_arity): new function.
7945 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7947 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7949 2005-10-25 John Mandereau <john.mandereau@free.fr>
7951 * Documentation/user/instrument-notation.itely (Figured bass):
7952 describe new features
7954 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7956 * lily/beam.cc (calc_least_squares_dy): use property callback.
7958 * lily/beam-concave.cc (calc_concaveness): use property callback.
7960 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7962 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7966 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7968 * scm/layout-page-layout.scm (page-headfoot): annotate
7971 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7973 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7974 doesn't take y-space.
7976 * scm/paper.scm (paper-alist): fix A7 dimensions.
7978 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7980 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7981 src-wildcard, remove $(wildcard).
7983 * po/GNUmakefile (PO_FILES):
7984 * ps/GNUmakefile (PS_FILES):
7985 * tex/GNUmakefile (TEX_FILES):
7986 * cygwin/GNUmakefile (POSTINSTALLS):
7987 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7988 some wildcard calls.
7990 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7992 * THANKS: add Thomas Bushnell.
7994 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7996 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7997 (lilypond-main): Redirect to gui-main if 'gui is set.
7999 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8000 for alternative installations kludging s/share/lib/g
8003 * SConstruct (libdir_package_version): Define.
8005 * python/SConscript:
8006 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8009 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8011 * lily/main.cc: clarify --safe.
8013 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8015 * VERSION: release 2.7.14
8017 * Documentation/user/*.itely: remove minimumVerticalExtent.
8019 * scm/define-grobs.scm (all-grob-descriptions): remove
8020 RemoveEmptyVerticalGroup
8022 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8024 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8027 * python/convertrules.py (conv): add rules.
8029 * lily/grob.cc: remove is_empty()
8031 * lily/grob-property.cc: remove add_to_list_property().
8033 * scripts/convert-ly.py (datadir): add prefix switching hack to
8036 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8037 space-function tweak.
8039 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8041 * scm/define-grob-properties.scm (all-user-grob-properties):
8042 remove callback property.
8044 * lily/include/grob.hh (class Grob): remove property_callbacks_
8045 member. Properties of procedure type are assumed to be callbacks.
8047 * lily/ligature-engraver.cc (override_stencil_callback):
8048 rewrite. Use noteHeadLigaturePrimitive as source.
8050 * scm/define-grob-properties.scm (all-internal-grob-properties):
8051 remove ligature-primitive-callback
8053 * lily/include/dimension-cache.hh (class Dimension_cache): make
8054 class, with Grob as friend.
8056 * lily/grob.cc: remove set_extent_callback(), set_extent() and
8057 has_extent_callback()
8059 * scm/translation-functions.scm (format-new-bass-figure): read
8060 figuredBassPlusDirection
8062 * scm/define-context-properties.scm
8063 (all-user-translation-properties): add figuredBassPlusDirection.
8065 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8067 * lily/align-interface.cc (set_ordered): new function.
8069 * lily/grob.cc (flush_extent_cache): rewrite.
8071 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8072 Interval pointer directly.
8074 * lily/main.cc (setup_paths): insert extra / .
8075 (setup_paths): junk cff entry.
8077 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8080 * lily/axis-group-engraver.cc (finalize): remove
8081 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8083 * lily/grob.cc (Grob): don't set extent from ctor.
8084 (extent): use property callbacks.
8086 * lily/axis-group-interface.cc: remove set_axes() function.
8088 * lily/grob-property.cc (del_property): new function.
8090 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8092 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8094 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8096 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8098 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8100 * mf/SConscript: Updates.
8102 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8104 * stepmake/stepmake/*:
8108 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8109 from any directory in build-dir. Cleanups.
8111 * make/srcdir.make.in: Remove.
8113 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8115 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8118 * lily/SConscript: Remove ttftools.
8120 * SConstruct: Resurrect.
8122 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8124 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8127 * lily/paper-book.cc (add_score_title): put Paper_score title into
8130 * scm/translation-functions.scm (format-new-bass-figure): also
8131 allow plus in combination with _
8133 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8135 * VERSION: 2.7.13 released.
8137 * lily/note-collision.cc (check_meshing_chords): don't wipe
8138 stencil, merely set transparent.
8140 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8141 (Top): document #'callbacks.
8142 (Top): document nested \override.
8144 * input/regression/figured-bass.ly: update for slash and pluses.
8146 * input/regression/figured-bass-continuation-forbid.ly (Module):
8149 * scm/translation-functions.scm (format-new-bass-figure): use
8150 slashed-digit if diminished is set.
8151 (format-new-bass-figure): add + if 'augmented is set.
8153 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8155 * input/test/piano-staff-distance.ly: remove file.
8157 * Documentation/user/advanced-notation.itely (Formatting cue
8158 notes): use length-fraction for making stems/beams smaller.
8160 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8163 * lily/new-figured-bass-engraver.cc: new property
8164 centerFiguredBassContinuations
8166 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8169 * lily/context-property.cc (execute_general_pushpop_property):
8172 * input/regression/override-nest.ly: new file.
8174 * python/convertrules.py (FatalConversionError.subber): conversion
8175 rule for #'callbacks
8177 * input/regression/override-nest.ly: new function.
8179 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8182 * lily/context-property.cc (lookup_nested_property): new function.
8183 (evict_from_alist): new function.
8184 (general_pushpop_property): new function.
8185 (execute_general_pushpop_property): rewrite. Support nested
8188 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8190 * lily/beam.cc: use length-fraction too.
8192 * scm/define-grob-properties.scm (all-user-grob-properties):
8193 remove property flag-width-function
8194 (all-user-grob-properties): remove space-function.
8196 * scm/layout-beam.scm: remove flag-width-function.
8198 * lily/beam.cc: remove flag-width-function
8200 * scm/layout-beam.scm: remove beam dir functions.
8202 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8204 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8205 for easier grace tweaks.
8207 * lily/beam.cc: remove dir-function.
8209 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8211 * lily/grob.cc: remove spacing-procedure.
8213 * lily/note-head.cc (calc_stem_attachment): new function.
8214 (internal_print): use callback to get glyph-name.
8216 * lily/grob-property.cc (get_interfaces): new function.
8218 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8220 * lily/stem.cc (calc_stem_end_position): new function.
8221 (calc_length): new function.
8222 document details for stem.
8223 remove Stem::get_direction()
8225 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8227 * lily/grob-property.cc (set_callback): new function.
8229 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8231 * lily/item-scheme.cc: new file.
8233 * lily/bar-line.cc (before_line_breaking): remove function.
8234 remove bar-size-procedure, break-glyph-function
8236 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8238 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8240 * lily/system-start-delimiter.cc (print): suicide from
8241 here. Remove after_line_breaking_callback.
8243 * lily/script-interface.cc (calc_direction): use callback for direction.
8245 * lily/side-position-interface.cc (aligned_side): don't use
8246 Side_position_interface::get_direction directly. Use callback.
8248 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8250 (get_print_stencil): rename from get_stencil: create stencil with
8251 transparency, color and cause.
8253 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8255 * python/convertrules.py (conv): insert temporary warning rule.
8257 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8259 * lily/grob-property.cc (try_callback): remove marker if applicable.
8261 * lily/grob.cc: elucidate doc about after/before-line-breaking
8263 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8265 * lily/stem.cc (height): idem.
8267 * lily/stem-tremolo.cc: idem.
8269 * lily/slur.cc (height): don't use get_uncached_stencil()
8271 * lily/rest.cc (y_offset_callback): use offset callback
8272 iso. after-line-breaking callback.
8274 * lily/grob.cc: change after/before-line-breaking-callback to
8275 after/before-line-breaking dummy properties.
8277 * lily/include/grob.hh: remove Grob_status.
8279 * scm/define-context-properties.scm
8280 (all-user-translation-properties): remove verticalAlignmentChildCallback
8282 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8283 (calc_direction): use callback
8284 (calc_positions): use callback.
8286 * lily/tie.cc (calc_direction): use callback. Only call parent
8287 positioning for more than one tie.
8289 * lily/tie-column.cc (calc_positioning_done): use callback
8291 * lily/slur-scoring.cc (calc_control_points): use callback
8293 * lily/slur.cc (calc_direction): use callback.
8295 * lily/note-collision.cc (force_shift_callback): remove.
8297 * lily/dot-column.cc (force_shift_callback): remove. Use
8298 other_axis_parent_positioning.
8300 * lily/grob.cc (other_axis_parent_positioning): new function.
8301 (same_axis_parent_positioning): new function
8303 * lily/align-interface.cc (alignment_callback): remove function.
8305 * lily/note-collision.cc (calc_positioning_done): use callback.
8307 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8308 (calc_direction): idem.
8309 remove print function.
8311 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8313 * lily/dot-column.cc (calc_positioning_done): use callback.
8315 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8317 * lily/beam.cc (calc_direction): use pseudo-property for beam
8319 (calc_positions): use callback
8321 * lily/align-interface.cc (calc_positioning_done): use
8322 callback. Fold fixed distance and normal alignment in one function.
8324 * lily/stem.cc (calc_stem_end_position): use callback.
8325 (calc_positioning_done): idem.
8326 (calc_direction): idem.
8327 (calc_stem_end_position): idem
8328 (calc_stem_info): idem.
8330 * lily/grob-property.cc (get_property_data): new function:
8331 (try_callback): new function.
8333 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8336 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8338 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8340 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8344 * lily/include/*.hh (Module): compile fixes.
8346 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8348 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8349 as an argument for char-syntax: use (char-syntax (or nil 0))
8350 instead of (char-syntax nil), thanks to Milan Zamazal.
8352 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8354 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8357 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8360 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8362 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8363 add class_name() method.
8365 * lily/music-scheme.cc: remove ly:music-name.
8367 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8369 * cygwin/postinstall-lilypond.sh: Remove cruft.
8371 * cygwin/postremove-lilypond.sh: Remove.
8373 * cygwin/GNUmakefile (default): Remove postremove rules.
8375 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8377 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8380 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8383 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8384 consider break index for broken spanner.
8386 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8387 characters from string before splitting.
8389 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8391 * scm/framework-ps.scm (output-preview-framework): use
8392 is-book-title to determine whether to chop off the booktitle.
8394 * lily/paper-book.cc (systems): init from book-title-properties
8395 (add_score_title): init score-title-properties.
8397 * ly/paper-defaults.ly: add {score,book}-title-properties.
8399 * scm/document-backend.scm (lookup-interface): error message if
8400 using unknown interface.
8402 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8405 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8407 (make_bracket): new function.
8409 * scm/lily.scm (define-scheme-options): add paper-size option.
8411 * ly/declarations-init.ly (laissezVibrer): get paper size from
8414 * scm/translation-functions.scm: use \fontsize for changing the
8417 * scm/define-grobs.scm (all-grob-descriptions): set
8418 between-length-limit to 1.0
8420 * lily/tie-helper.cc: add between_length_limit_ detail property.
8422 * mf/feta-bolletjes.mf: typos.
8424 * lily/note-head.cc (internal_print): don't shadow idx
8425 parameter. This fixes wrong attachment for do shape heads.
8427 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8429 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8431 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8433 * scm/layout-slur.scm: rename from slur.scm
8435 * scm/layout-page-layout.scm: rename from page-layout.scm
8437 * scm/layout-beam.scm: rename from beam.scm
8439 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8440 bass-figure-interface
8442 * lily/new-figured-bass-engraver.cc (process_music): add
8443 implicitBassFigures property.
8445 * scm/define-markup-commands.scm (pad-x): new markup.
8447 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8448 minimumVerticalExtent on FiguredBass context.
8450 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8451 case the continuation crosses a line break.
8453 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8455 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8456 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8457 absolute file name bug.
8459 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8461 * VERSION (PACKAGE_NAME): release 2.7.12
8463 * input/regression/figured-bass-continuation-center.ly: new file.
8465 * input/regression/beam-outside-beamlets.ly: new file.
8467 * lily/beam.cc (set_beaming): don't clip edges.
8468 (connect_beams): don't clip edges.
8470 * lily/beaming-info.cc (clip_edges): new function.
8472 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8474 * Documentation/user/instrument-notation.itely (Figured bass):
8475 demonstrate extenders, update seealso links.
8477 * scm/titling.scm (marked-up-headfoot): change tagline
8478 handling. tagline = ##f will blank the tagline as well.
8480 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8482 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8484 * lily/new-figured-bass-engraver.cc (struct
8485 New_figured_bass_engraver): add new_music_found_ member.
8487 * lily/lilypond-version.cc (Lilypond_version): deal with
8488 incorrectly formatted version strings.
8490 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8491 New_figured_bass_engraver by default.
8493 * lily/ttf.cc (print_trailer): only define glyph names when
8494 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8496 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8498 * lily/horizontal-bracket.cc (make_bracket): new function.
8500 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8501 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8502 BassFigureLine, BassFigureAlignment
8504 * lily/new-figured-bass-engraver.cc (process_music): new file.
8506 * lily/figured-bass-continuation.cc: new file.
8508 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8511 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8513 * scripts/lilypond-book.py: Bug fix, put the quote around the
8514 actual score for LaTeX documents.
8516 * scm/define-grobs.scm (all-grob-descriptions): Change
8517 collapse-height of the SystemStartBracket grob to 5.0,
8518 so the bracket disappears for single stave score lines (similarly
8519 to SystemStartBraces).
8521 * Documentation/user/advanced-notation.itely (Polymetric
8522 notation): Clarify the use of compressMusic.
8524 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8525 that the grace spacer note in other staves need the same duration
8526 and document the stroke-style property.
8528 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8530 * Documentation/user/global.itely (Vertical spacing): document
8531 alignment-extra-space and fixed-alignment-extra-space.
8533 * Documentation/topdocs/NEWS.tely (Top): add entry.
8535 * input/regression/alignment-vertical-spacing.ly: new file.
8537 * python/convertrules.py (conv): add rule.
8539 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8541 * lily/align-interface.cc (stretch_after_break): new
8542 function. Read fixed-alignment-extra-space property.
8543 (align_elements_to_extents): read alignment-extra-space property.
8545 * lily/lily-guile.cc (robust_scm2dir): new function.
8547 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8548 (annotate-space-left): new function. Annotate space left on page.
8549 (annotate-y-interval): new function.
8550 (paper-system-annotate-last): new function. Annotate bottom-space.
8552 * mf/feta-beugel.mf (y):
8554 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8556 * VERSION (PACKAGE_NAME): release 2.7.11
8558 * scm/lily-library.scm (interval-translate): new function
8559 (interval-center): new function.
8561 * scm/page-layout.scm (paper-system-annotate): new function. Add
8562 arrows for dimensions.
8564 * scm/stencil.scm (dimension-arrows): new function.
8566 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8568 * input/regression/page-spacing.ly: add annotatespacing
8570 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8571 (LY_DEFINE): new function ly:paper-system-set-property!
8573 * Documentation/user/global.itely (Paper size): explain how to add
8576 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8577 correspond to GS's definition.
8579 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8581 (print): only connect to next bracket if the next one is alive.
8582 (print): set padding to 0.0 if the bound is a breakable
8583 column. This makes tupletFullLength brackets reach up to the staff
8584 line if it doesn't connect to the next line.
8586 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8588 * lily/bar-number-engraver.cc: correct docs.
8590 * scm/output-lib.scm (first-bar-number-invisible): rename from
8591 default-bar-number-visibility
8593 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8595 * scm/define-music-properties.scm (all-music-properties): remove
8598 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8600 * po/fi.po: refresh.
8602 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8604 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8606 (disappear): bugfix.
8608 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8610 * lily/include/paper-system.hh (class Paper_system): remove
8611 staff_extents_ member.
8613 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8615 * lily/include/paper-system.hh (class Paper_system): remove
8616 number_ variable. Remove is_title_. Remove break_before_penalty_
8618 * lily/paper-book.cc (systems): use 'number property iso. number_
8621 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8622 remove ly:paper-system-number.
8624 * scm/lily-library.scm (paper-system-title?): new function.
8626 * lily/book.cc (process): bugfix: flip ?: cases.
8628 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8631 * ly/music-functions-init.ly: add outputProperty music function.
8633 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8635 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8637 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8639 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8641 * lily/paper-system.cc (internal_get_property): new function.
8643 * Documentation/user/global.itely (Vertical spacing): refer to
8646 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8649 * input/regression/page-spacing.ly: new file.
8651 * input/regression/page-top-space.ly: new file.
8653 * lily/spacing-spanner.cc: cmath -> math.h
8655 * lily/paper-system.cc (read_left_bound): new function. Read
8656 line-break-system-details from left bound to determine extents.
8658 * Documentation/user/programming-interface.itely (Using LilyPond
8659 syntax inside Scheme): change applyxxx -> applyXxx.
8661 * ly/music-functions-init.ly: add outputProperty music function.
8663 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8665 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8667 * python/convertrules.py (conv): rule
8669 * ly/music-functions-init.ly: applyxxx -> applyXxx
8671 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8674 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8676 * flower/include/real.hh: include <math.h> iso. <cmath>
8678 * flower/include/offset.hh: include real.hh
8680 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8682 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8683 fix example, now that 'interfaces is no longer directly available.
8685 * lily/book.cc (process): don't crash if paper == NULL.
8689 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8691 * scm/define-music-types.scm (music-descriptions): set length and
8692 start-callback for QuoteMusic
8694 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8696 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8697 arguments. Fixes compilation error with gcc 3.3.
8699 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8701 * VERSION: release 2.7.10
8703 * stepmake/stepmake/python-module-rules.make
8704 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8706 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8709 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8711 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8712 -Werror. Otherwise GCC barfs over various optimizations.
8714 * scm/define-grob-properties.scm (all-internal-grob-properties):
8715 add note-head property
8717 * Documentation/user/instrument-notation.itely (Laissez vibrer
8720 * input/regression/laissez-vibrer-ties.ly: new file.
8722 * lily/laissez-vibrer-engraver.cc: new file.
8724 * lily/include/tie-column-format.hh: new file.
8726 * lily/tie-column-format.cc: new file.
8728 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8730 * lily/laissez-vibrer-tie.cc: new file.
8732 * lily/include/laissez-vibrer-tie.hh: new file.
8734 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8736 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8738 * scm/define-grobs.scm (all-grob-descriptions): add
8739 LaissezVibrerTie, LaissezVibrerTieColumn
8741 * lily/tie-column.cc (set_tie_config_directions): new function
8742 (final_shape_adjustment): new function.
8743 (shift_small_ties): new function.
8745 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8747 * lily/include/tie.hh (struct Tie_details): add x_gap_
8748 (struct Tie_configuration): add head_position_
8750 * lily/tie-column.cc (set_chord_outline): new function.
8752 * mf/cmr.enc.in: remove file.
8754 2005-09-11 Graham Percival <gpermus@gmail.com>
8756 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8758 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8760 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8761 reduce aliasing effects.
8763 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8766 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8768 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8770 * flower/include/real.hh: std::fabs too.
8772 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8774 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8776 * lily, flower: Include C++ iso C headers. Import namespace std
8779 * lily/side-position-interface.cc:
8781 * lily/note-head.cc:
8782 * lily/include/includable-lexer.hh:
8783 * flower/include/string-data.icc: Remove using std::*.
8785 * lily, flower: Include C++ iso C headers. Import namespace std
8788 * lily/side-position-interface.cc:
8790 * lily/note-head.cc:
8791 * lily/include/includable-lexer.hh:
8792 * flower/include/string-data.icc: Remove using std::*.
8794 * Documentation/user/instrument-notation.itely (Entering lyrics):
8795 Multiple latin-1->utf-8 conversion fix.
8797 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8799 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8801 * lily/tie.cc (get_configuration): also avoid dots for non-space
8804 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8806 * Documentation/user/instrument-notation.itely: Bugfix.
8808 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8810 * tex/GNUmakefile: don't install texinfo.tex
8812 * tex/ : cleanup: remove unused files.
8814 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8816 * flower/include/real.hh: using std::{isnan,isinf}
8818 * VERSION (PATCH_LEVEL): release 2.7.9
8820 2005-09-05 Graham Percival <gpermus@gmail.com>
8822 * Documentation/user/ instrument-notation.itely,
8823 advanced-notation.itely: minor tweaks.
8825 * input/test/script-chart.ly: add item padding.
8827 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8829 * flower/offset.cc: use math.h iso. <cmath>
8831 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8834 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8835 (widen-left-stencil-edges): new function. Fix alignment problems
8836 with LaTeX includegraphics.
8838 * lily/text-interface.cc (interpret_markup): use abort().
8840 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8842 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8844 * lily/tie.cc (get_configuration): update bezier shape as we
8846 (get_configuration): don't move large ties if we're outside of the
8849 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8851 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8853 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8855 * .cvsignore: Add auto-generated configure files and then some.
8857 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8859 * scm/define-grobs.scm (DynamicLineSpanner): Add
8860 X-extent-callback. Fixes hairpin-slur collision.
8862 2005-08-31 Graham Percival <gpermus@gmail.com>
8864 * Documentation/user/advanced-notation.itely,
8865 basic-notation.itely: minor changes.
8867 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8869 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8870 \linebreak between each .eps file if \betweenLilyPondSystem is
8873 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8874 music): Document the \linebreak
8876 * Documentation/user/lilypond-book.itely,
8877 input/tutorial/lbook-latex-test.tex,
8878 Documentation/user/examples.itely: Remove \usepackage{graphics}
8880 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8882 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8884 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8887 * scripts/lilypond-book.py (PREAMBLE_LY): define
8888 inside-lilypond-book
8889 (modify_preamble): new function. Insert \RequirePackage{graphics}
8890 when no {graphics found in preamble.
8892 2005-08030 Graham Percival <gpermus@gmail.com>
8894 * Documentation/user/basic-notation.itely, global.itely,
8895 tutorial.itely: misc small changes.
8897 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8899 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8902 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8904 * lily/tie-column.cc (new_directions): put Tie down on center
8907 * lily/script-interface.cc (before_line_breaking): use
8908 Grob::programming_error
8910 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8912 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8915 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8917 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8919 2005-08-29 Werner Lemberg <wl@gnu.org>
8921 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8922 the `*.scale.pfa' files to avoid warnings.
8924 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8926 * lily/tempo-performer.cc (process_music): idem.
8928 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8930 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8932 * Documentation/user/advanced-notation.itely (Text markup): not a
8935 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8937 * lily/staff-performer.cc (initialize): add tempo/name to
8940 2005-08-26 Graham Percival <gpermus@gmail.com>
8942 * Documentation/user/advanced.itely: add text-only example.
8944 * Documentation/user/invoking.itely: add index entries for
8947 * Documentation/user/ tutorial.itely, basic-notation.itely:
8948 small fixes suggested by Steve D. Thanks!
8950 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8952 * input/regression/markup-bidi-pango.ly: new file.
8954 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8955 standard. Remove #ifdef. Remove memleak.
8956 (text_stencil): use text_dir to decide how to composite items.
8957 (text_stencil): determine uniform text direction for the entire
8960 * scripts/lilypond-book.py (output_name): remove
8961 latex_filter_cmd. Non-portable to non-Unix systems.
8962 (get_latex_textwidth): use File.write and os.unlink() instead.
8964 * THANKS: add Vicente & Trevor.
8966 * lily/grob.cc (discretionary_processing): look up origin for
8967 programming_error too.
8969 * input/regression/tie-broken.ly: new file.
8971 * lily/tie-column.cc (set_chord_outlines): set outline for line
8974 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8976 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8977 unscaled transform, just translate stencils.
8979 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8982 * scm/define-markup-commands.scm (wordwrap-string): use
8984 (wordwrap-stencils): idem.
8987 (wordwrap-stencils): translate last line to right for
8988 text-direction = LEFT.
8990 * scm/define-grob-properties.scm (all-user-grob-properties): add
8993 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8995 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8996 when copying a Lily_parser object.
8998 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
9000 * scm/define-markup-commands.scm (null): add null markup.
9002 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
9004 * lily/item.cc: Add documentation of center-invisible
9006 2005-08-24 Graham Percival <gpermus@gmail.com>
9008 * Documentation/user/advanced-notation.itely: add info about
9011 * Documentation/user/programming-interface.itely: fix example
9012 involving raised text.
9014 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
9016 * lily/beam.cc (print): fix X start/end points of isolated
9019 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9021 * lily/multi-measure-rest.cc (set_text_rods): new function.
9023 * lily/vertical-align-engraver.cc (process_music): call
9024 Align_interface::set_axis(). This forces #'elements to be ordered,
9025 preventing random vertical reordering of staves.
9027 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9028 add avoid-slur property.
9030 * Documentation/user/basic-notation.itely (Measure repeats): add
9031 countPercentRepeats example.
9033 * Documentation/user/advanced-notation.itely (Other text markup
9034 issues): remove remark about normal-font. We have \normal-text
9036 * input/regression/tie-chord.ly: add note about remaining bugs.
9038 * lily/tie.cc (print): try Tie_column::set_directions () if
9039 control-points not yet defined.
9041 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9043 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9044 extent. This fixes braces falling out of the EPS bbox.
9046 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9049 2005-08-23 Graham Percival <gpermus@gmail.com>
9051 * {various} : change #up->#UP and #down->#DOWN.
9053 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9055 * Documentation/user/advanced-notation.itely: clarify
9056 what objects handles text on a multimeasure rest.
9058 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
9060 * VERSION (PATCH_LEVEL): release 2.7.7
9062 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9064 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9066 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9068 * input/regression/*.ly: formatting clean-up. Default layout
9069 before music expression.
9071 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9072 romanze28-2 example.
9074 * scm/ps-to-png.scm: remove dir-re function.
9075 (make-ps-images): generate page names, instead of globbing them.
9076 This brings down LilyPond memory usage for make web by a factor
9079 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9080 don't use glob. With 3000 files, globbing
9081 Documentation/user/out-www/ can take too much time.
9083 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9085 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9087 * input/regression/tie-manual.ly: new file
9089 * input/regression/tie-chord.ly: update.
9091 * flower/include/interval.hh (struct Interval_t):
9093 * lily/tie.cc (distance): new function
9094 (height): new function.
9095 (init): new function
9096 (Tie_details): new struct.
9098 * lily/skyline.cc (skyline_height): new function.
9100 * lily/tie-column.cc (set_chord_outlines): new function.
9101 (new_directions): read tie-configuration
9103 * lily/skyline.cc: fix ASCII art.
9105 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9107 * python/convertrules.py (string_or_scheme): Fix spelling error
9109 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9111 * lily/tie-column.cc (set_directions): set directions only once.
9112 (add_configuration): new function.
9114 * lily/tie.cc (set_control_points): new function
9116 * lily/tie-column.cc (new_directions): new function.
9118 * ly/music-functions-init.ly: set 'pitch property
9119 iso. trill-pitch. This makes \relative work with \pitchedTrill
9121 * lily/tie.cc (get_configuration): new function. Don't generate
9122 control points, rather, generate configuration.
9123 remove head-pair property.
9125 * lily/include/tie.hh (struct Tie_configuration): new struct.
9127 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9129 * Documentation/topdocs/NEWS.tely: clarify.
9131 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9133 * lily/tie.cc: remove minimum-length
9135 * scm/define-grob-properties.scm (all-user-grob-properties):
9136 remove staffline-clearance, y-offset
9138 * input/regression/tie-dots.ly (Module): remove.
9140 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9141 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9143 * input/regression/tie-single.ly: new file.
9145 2005-08-21 Graham Percival <gpermus@gmail.com>
9147 * ly/bagpipe.ly: fix compile problem.
9149 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9151 * lily/midi-item.cc (name): new method.
9153 * lily/staff-performer.cc (acknowledge_audio_element): use
9154 signature of baseclass.
9156 * lily/engraver-group.cc (do_announces): move recursion call out
9159 * lily/drum-note-performer.cc (class Drum_note_performer): use
9160 process_music everywhere.
9162 * ly/performer-init.ly: add default children everywhere.
9164 * lily/paper-book.cc (output): call paper-book-write-midis
9165 directly: always write MIDI, even if no \layout {} block.
9167 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9169 * VERSION (PACKAGE_NAME): release 2.7.6
9171 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9172 about not being able to handle repeat.
9174 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9176 * Documentation/user/examples.itely (Piano templates):
9177 * lily/include/performer-group.hh: Remove last traces of
9178 Performer_group_performer. Fixes make web.
9180 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9182 * Documentation/user/examples.itely (Piano templates): change
9183 Engraver_group_engraver -> Engraver_group
9185 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9186 scm_stand_in_procs is not weak_any.
9188 * lily/volta-bracket.cc (print): don't use strcmp().
9190 * lily/volta-engraver.cc (process_music): use
9191 Text_interface::is_markup() for setting the 'text property of the
9194 * input/mutopia/claop.py (accents): update syntax to 2.6
9196 * scm/define-context-properties.scm
9197 (all-user-translation-properties): add countPercentRepeats.
9199 * Documentation/user/basic-notation.itely (Measure repeats): add
9200 isolated percent example.
9202 2005-08-18 Graham Percival <gpermus@gmail.com>
9204 * input/ {various}: change direction #1, #-1 to
9205 #up/#down or \fooUp, \fooDown.
9207 * Documentation/user/music-glossary.tely: #-1 to #down.
9209 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9210 to #up, #-1 to #down.
9212 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9214 * lily/include/engraver-group.hh: rename.
9216 * lily/include/performer-group.hh: rename.
9218 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9220 * input/test/script-abbreviations.ly: Removed some old LaTeX
9223 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9225 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9226 Remove functions. Remove if 1: constructs, reindent.
9228 * scripts/convert-ly.py (add_version): Add functions from
9231 * scm/script.scm (default-script-alist):
9232 s/priority/script-priority. Fixes script stacking. Backportme.
9233 (Fermata): Very low priority.
9235 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9237 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9239 * input/regression/slur-script.ly: remove padding tweaks. Add
9242 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9243 time sigs and related stuff.
9245 * scm/define-grob-properties.scm (all-user-grob-properties): add