1 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3 git commit 64179afe25bf5723fe9bb5a6631799c050d12de2
5 * buildscripts/git-update-changelog.py:
8 git commit 614460c52e72c96824da0a583297123e510f6fff
13 git commit 6ca40e8913957dd9fa510855ae1c4efacde09603
16 * buildscripts/git-update-changelog.py:
17 script to update ChangeLog with Git messages.
19 git commit ef70710d3cf52502900408aa1f55a2354ed4e8ab
21 * lily/beam-engraver.cc:
22 * input/regression/rest-pitched-beam.ly:
23 don't set callback if staff-position set. Fixes #126.
25 git commit 6dcaa230251aa4f95e4153bd4de021c65207b798
27 * lily/bar-number-engraver.cc:
29 * lily/fingering-engraver.cc:
30 * lily/grob-property.cc:
32 * lily/include/grob.hh:
33 * lily/include/lily-guile-macros.hh:
34 * lily/mark-engraver.cc:
35 * lily/melody-engraver.cc:
36 * lily/script-column.cc:
37 * lily/tie-formatting-problem.cc:
39 internal_get_property_data() using ly_symbol2scm()
41 git commit 914e47b38f98b87c2622a5bbd8237ca97f97da34
43 * stepmake/stepmake/generic-targets.make:
44 create .gitignore in outdir.
46 git commit 122da86232bb745d50cddbd893e3cc48c3af6216
51 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
53 * input/test/vertical-extent.ly:
54 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
56 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
58 * stepmake/bin/add-html-footer.py (compose): remove setgcos
60 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
62 * GNUmakefile.in (install-help2man): install-help2man target.
64 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
66 * SConstruct (configure): Do not check for /bin/sh.
68 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
70 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
73 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
75 * input/regression/fret-boards.ly: new file.
77 * po/de.po: new po courtesy translation team.
79 * scripts/lilypond-book.py (get_option_parser): add newline to doc
82 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
84 * ly/gregorian-init.ly (neumeDemoLayout): update
85 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
87 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
88 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
90 2006-10-27 Erlend Aasland <erlenda@gmail.com>
92 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
93 Yet another build fix.
95 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
97 * SConstruct (lilypondprefix): use sorted() for list_sort()
100 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
102 * flower/SConscript: Unit test rules.
104 * flower/test-std.cc: Compile fix.
106 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
108 * python/midi.c (pymidi_parse_track): warning fixes.
110 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
111 include dot-column.hh
113 2006-10-26 Graham Percival <gpermus@gmail.com>
115 * Documentation/user/{basic-, global}: minor changes from mailist.
117 2006-10-26 Erlend Aasland <erlenda@gmail.com>
119 * scm/define-grobs.scm: trivial beautification
121 * lily/tie-performer.cc: no need to #include "pqueue.hh"
123 * lily/source-file.cc: put multibyte var inside #if clause
125 * scm/define-grob-interfaces.scm:
126 * scm/define-grob-properties.scm:
127 Build fix (string-fret-finger-combinations)
129 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
132 * Documentation/user/lilypond-book.itely: Build fix.
134 2006-10-26 Joe Neeman <joeneeman@gmail.com>
136 * lily/system.cc (get_paper_system):
137 * lily/paper-book.cc (systems):
138 move most of the backwards compatibility stuff into
141 * Documentation/topdocs/NEWS.tely: add 2 entries for the
144 * Documentation/user/page.itely: remove time-scaled-music
145 bug for the Page_turn_engraver
147 * lily/paper-book.cc (set_system_penalty): backwards
148 compatibility (breakbefore) for the old page breaker
150 2006-10-25 Graham Percival <gpermus@gmail.com>
152 * Diocumentation/user/instrument-notation.itely: added more
153 info about stanzas; thanks Geoff!
155 * Documentation/user/ {basic, advanced}: small fixes from
158 * THANKS: add some bug reporters.
160 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
162 * scm/define-context-properties.scm (all-user-translation-properties):
163 noteToFretFunction: Add.
165 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
166 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
168 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
170 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
173 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
174 Remove bashism in delete.
176 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
178 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
180 * scm/translation-functions.scm (determine-frets-mf): flatten let*
182 * scm/define-context-properties.scm
183 (all-user-translation-properties): add maximumFretStretch property.
185 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
187 * lily/source-file.cc (get_counts): use multibyte variable.
189 * scm/translation-functions.scm (determine-frets-mf): new
190 function: compute fret numbers.
192 * scm/output-lib.scm (string-frets->description) new function.
193 (fret-board::calc-stencil): new function
195 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
197 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
199 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
201 * lily/tab-note-heads-engraver.cc: cleanups.
203 * lily/fretboard-engraver.cc: new file
205 * ly/engraver-init.ly: add FretBoards context
207 2006-10-24 Joe Neeman <joeneeman@gmail.com>
209 * lily/grob.cc (pure_relative_y_coordinate)
210 (pure_height): use the new call_pure_function stuff
212 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
215 * lily/side-position-interface.cc (pure_y_aligned_side): add an
218 * lily/simple-closure.cc (ly_eval_simple_closure): make
219 simple-closure evaluatable from scheme
220 (evaluate_with_simple_closure): make simple-closures pure-
223 * lily/slur.cc (pure_outside_slur_callback): new function
225 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
226 fits in with previous changes that made the page forces much
229 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
230 and pure-Y-extent into this new function.
231 (pure-conversions-alist): add outside-slur-callback
233 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
235 * Documentation/user/advanced-notation.itely (Instrument names):
236 Remove obsolete bug workaround for instrument names on piano
239 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
241 * Documentation/user/lilypond-book.itely (Integrating DocBook and
242 music): patch by Bertalan Fodor for docbook.
244 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
245 of $(LILYPOND). Prevents lilypond run for .txt files.
247 * INSTALL.txt: gitness.
249 * .cvsignore: update to force gitness.
251 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
253 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
254 detect suicide in nested tuplets.
256 2006-10-23 Werner Lemberg <wl@gnu.org>
258 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
259 typo in argument to FT_Get_X11_Font_Format.
261 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
263 * stepmake/stepmake/po-vars.make: more gitness.
265 * flower/polynomial.cc (check_sol): no empty if bodies.
267 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
269 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
271 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
273 * Documentation/user/examples.itely (Transcription of mensural
274 music): Added more comments in .ly source. Suggest to remove
275 Forbid_line_break_engraver to allow line breaking at all bars.
277 * Documentation/user/instrument-notation.itely (Ancient
278 articulations): Updated @refbugs regarding episem.
280 * Documentation/user/instrument-notation.itely (Gregorian square
281 neumes ligatures): Added \augmentum dots. Updated @refbugs
282 regarding \augmentum.
284 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
286 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
289 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
292 * ly/gregorian-init.ly: Added \augmentum macro.
294 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
296 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
298 * lily/pango-font.cc (pango_item_string_stencil): use
299 FT_Get_X11_Font_Format()
301 2006-10-22 John Mandereau <john.mandereau@free.fr>
303 * po/fr.po: update translation.
305 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
307 * VERSION (PATCH_LEVEL): bump version
309 * input/regression/horizontal-bracket-break.ly: new file.
311 * scm/define-grobs.scm (all-grob-descriptions): calc
314 * lily/horizontal-bracket.cc (make_bracket): support
315 connect-to-neighbor. Fix #118
317 * VERSION: release 2.9.26-2
319 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
321 * VERSION (PACKAGE_NAME): release 2.9.26
323 * buildscripts/output-distance.py (test_basic_compare): add
325 (FileLink.multi_img_cell): new function, glob multi-page png
328 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
330 * po/lilypond.pot: update.
332 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
334 * Documentation/user/global.itely (File structure): remove
337 * lily/parser.yy (FIXME): remove ADDQUOTE
339 * Documentation/user/global.itely (Extracting fragments of
340 notation): new node, about clip systems.
342 * Documentation/user/lilypond-book.itely (Many quotes of a large
343 score): ref to clip systems.
345 * Documentation/user/instrument-notation.itely (Entering lyrics):
346 add note about lyric ties and required font.
348 * lily/open-type-font.cc (glyph_list): format errors.
350 * Documentation/user/programming-interface.itely (Scheme
351 procedures as properties): more doco on simple-closure and scheme
353 (Input variables and Scheme): use lilypond[verbatim], document
356 * Documentation/user/page.itely (Displaying spacing): use \book
357 explicitly, so arrows show .
358 (Line breaking): add note about Forbid_line_break_engraver
360 * Documentation/user/tweaks.itely (Common tweaks): also set length
361 to prevent tie squeezing.
362 (Default files): use @var{}
364 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
365 (Generating LilyPond files): add FOMUS.
367 2006-10-20 Joe Neeman <joeneeman@gmail.com>
369 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
370 Y-offset for TextScript and Script
372 * lily/text-engraver.cc (make_item):
373 * lily/script-engraver.cc (make_script_from_event):
374 remove call to Side_position_interface::set_axis since all scripts
375 now have this set by default
378 * lily/prob.cc: use variables
380 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
382 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
383 at typography, rather analyse stream event duration.
385 * Documentation/user/page.itely (Page formatting): set a6 paper
386 for system separator example.
388 * lily/arpeggio.cc (Module): idem.
390 * lily/accidental-placement.cc: add script-priority property.
392 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
394 * lily/ttf.cc (print_trailer): if all else fails: use
395 glyphIndexXXXX as glyph name. Fixes #117.
397 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
398 entry if cmap contains glyph.
399 (get_index_to_charcode_map): remove from Pango_font class, use
400 global filename -> font mapping.
401 (get_glyph_index_name): new function.
402 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
405 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
407 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
410 * scm/define-grob-properties.scm (all-user-grob-properties):
411 remove outdated doc. Fixes #116
413 * lily/completion-note-heads-engraver.cc (process_music): always
414 clone input events; otherwise we may overwrite input 'duration
415 property. Fixes #115.
417 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
420 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
423 * VERSION (PATCH_LEVEL): bump version.
425 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
427 * lily/engraver.cc (internal_make_grob): use variables.
429 * flower/string-convert.cc (dec2double): clean-up warnings.
431 * configure.in (CXXFLAGS): add -Werror.
433 * VERSION (PACKAGE_NAME): release 2.9.25
435 2006-10-18 Joe Neeman <joeneeman@gmail.com>
437 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
438 line even if we precede a forced break.
440 * lily/optimal-page-breaking.cc (try_page_spacing): square line
441 forces too. Make page-spacing weight default to 10 because the
442 changes to vertical springs decreased the page force/line force
443 proportions. Also, take the average of line force and page force
444 instead of just the sum.
446 * lily/constrained-breaking.cc (initialize): make the stiffness
447 of the vertical springs depend on the height of the system. This
448 prevents pages with only a few large systems from getting huge
451 * Documentation/user/page.itely (Page formatting): document the
452 change in default page-spacing-weight
454 * lily/include/constrained-breaking.hh: initialise bottom_padding_
456 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
458 * input/typography-demo.ly (melody): remove superfluous slur.
460 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
461 add piano-pedal-script-interface
463 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
465 * scripts/lilypond-book.py: DocBook support.
467 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
469 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
471 (stop_translation_timestep): set bound to currentMusicalColumn if
472 not set yet. Fixes #102
474 * lily/piano-pedal-bracket.cc: formatting.
476 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
478 * lily/piano-pedal-align-engraver.cc: new class
479 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
482 2006-10-18 Heikki Junes <hjunes@gmail.com>
484 * po/fi.po: Update Finnish translation (before the next release).
486 2006-10-17 Joe Neeman <joeneeman@gmail.com>
488 * lily/system.cc (get_paper_system): reinstate the backwards-
489 compatible page breaking for the old page breaker.
491 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
493 * lily/recording-group-engraver.cc: removed
495 * lily/context.cc, lily/translator-group.cc: Don't touch
496 Context::implementation_ if it's null
498 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
500 * scm/paper.scm: only use left-margin if defined.
502 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
504 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
506 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
507 strokeFingerOrientations
509 * lily/script-column.cc (row_before_line_breaking): also handle
510 accidentals and arpeggios in horizontal script stacking.
512 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
515 * input/regression/script-stack-horizontal.ly: trim.
517 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
519 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
522 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
523 'text if string argument.
525 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
527 * scm/define-context-properties.scm
528 (all-user-translation-properties): change to strokeFingerOrientations
530 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
532 * lily/parser.yy: remove debug output
534 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
536 * ly/paper-defaults.ly: set left/right margin.
538 * scm/paper.scm (set-paper-dimensions): use left-margin and
539 right-margin for computing linewidth.
541 * Documentation/topdocs/NEWS.tely (Top): idem.
543 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
546 * scm/define-markup-commands.scm (tied-lyric): increase negative
547 space: space syllables tighter.
549 * VERSION (PATCH_LEVEL): bump version.
551 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
554 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
556 * COPYING: further clarification
558 * VERSION: release 2.9.24
560 * input/regression/script-stack-horizontal.ly: add version.
562 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
564 * input/regression/lyric-tie.ly (texidoc): use different words.
566 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
568 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
570 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
571 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
573 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
575 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
577 * Doxyfile: remove file.
579 * scm/define-grob-interfaces.scm (string-finger-interface): add
580 string-finger-interface
582 * lily/general-scheme.cc (LY_DEFINE): move
583 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
585 * Documentation/topdocs/NEWS.tely (Top): add note for
586 string-finger feature.
588 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
591 * scm/output-lib.scm (string-finger::calc-text): read 'digit
594 * input/regression/script-stack-horizontal.ly: new file.
596 * ly/engraver-init.ly: add Script_row_engraver.
598 * lily/script-column.cc (order_grobs): refactor: separate axis
600 (row_before_line_breaking): new function.
602 * lily/script-row-engraver.cc (Script_row_engraver): new file.
604 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
606 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
608 * Documentation/user/instrument-notation.itely: Cleanup: Remove
609 annoying skip notes from mensural ligature example. Update
610 @refbugs for ligatures and mensural ligatures.
612 * lily/coherent-ligature-engraver.cc,
613 lily/include/coherent-ligature-engraver.hh,
614 lily/mensural-ligature-engraver.cc,
615 lily/vaticana-ligature-engraver.cc: Revise code for item
616 reparentizing. There should now be less programming_error
619 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
621 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
622 Maintenance bugfix: Don't create empty Stencil (), but empty box
623 instead. This fix should eliminate some programming_error
626 * ly/engraver-init.ly (MensuralStaff): Set default accidental
629 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
630 \layout block _before_ score.
632 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
634 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
636 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
638 2006-10-13 Erlend Aasland <erlenda@gmail.com>
640 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
642 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
644 * VERSION (PATCH_LEVEL): bump version.
646 * COPYING: clarify exception note.
648 * lily/main.cc: remove remark about "COPYING".
650 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
651 system-count starts at 0 for each clip-region. Change name to
652 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
653 layout block, per score.
655 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
657 * lily/input-smob.cc: add equal_p for Input
659 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
662 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
664 * lily/prob.cc: Add equal_p predicate for Prob
666 * lily/translator.cc: small cleanup
668 * scm/document-music.cc: use data from translator listener
669 registration to generate documentation for event classes
671 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
673 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
675 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
677 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
679 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
681 * Documentation/topdocs/INSTALL.texi: Thinko.
683 * .cvsignore: Update.
685 * lexer-gcc-3.1.sh: Remove.
687 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
688 Update anonymous cvs access. Remove comment about gcc 3.0.4.
690 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
692 * VERSION: release 2.9.23
694 * lily/paper-column-engraver.cc (stop_translation_timestep): also
697 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
699 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
701 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
703 * input/regression/clip-systems.ly (Notes): new file.
705 * scm/lily.scm (define-scheme-options): add clip-systems option.
707 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
709 (dump-stencil-as-EPS): move bbox calculation from previous
711 (output-framework): use -dclip-systems
713 * scm/lily-library.scm (filtered-map): new function
715 * scm/framework-ps.scm (clip-system-EPS): new function.
716 (clip-system-EPSes): new function.
718 * lily/paper-column.cc: add rhythmic-location to interface
720 * scm/define-grob-properties.scm (all-user-grob-properties): add
721 rhythmic-location property.
723 * scm/clip-region.scm: new file: rhythmic-location data type and
724 system-clipped-x-extent function.
726 * ly/init.ly: use (scm clip-region)
728 * lily/paper-column-engraver.cc (stop_translation_timestep): set
729 rhythmic-location for paper column grobs.
731 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
733 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
735 * ly/engraver-init.ly: Remove obsolete comment on
738 * Documentation/user/instrument-notation.itely: Tune Ancient
739 Articulations figure, such that the episem actually shows.
741 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
742 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
744 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
747 2006-10-12 Graham Percival <gpermus@gmail.com>
749 * Documentation/user/ {some}: minor edits that were lost somehow.
751 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
753 * VERSION (PACKAGE_NAME): bump version.
755 * input/regression/lyric-tie.ly (texidoc): new file.
757 * Documentation/topdocs/NEWS.tely (Top): add new feature.
759 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
761 * scm/define-markup-commands.scm (tied-lyric): new function: split
762 string along ~ and reattach with U+203F (tie character) and
765 * scm/output-lib.scm (lyric-text::calc-text): new function.
767 * lily/lyric-engraver.cc (process_music): don't set 'text.
769 * scm/output-lib.scm (string-finger::calc-text): new function
770 (lyric-text::print): new function.
772 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
773 generic for fingering & string number. Use for string-finger.
775 * scm/define-music-types.scm (music-descriptions): add
778 * lily/fingering-engraver.cc (listen_string_finger): new function
780 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
782 * scm/define-context-properties.scm
783 (all-user-translation-properties): add stringFingerOrientations
785 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
787 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
788 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
790 * lily/dots.cc: Added style property for dots.
792 * mf/parmesan-heads.mf: Fix typo in comment.
794 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
795 adding longa head to feta font and removing obsolete default
798 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
800 * scm/output-lib.scm (fingering::calc-text): use origin
801 event-property, not music-property.
803 * lily/lilypond.rc.in: spell my name correctly.
805 2006-10-10 Joe Neeman <joeneeman@gmail.com>
807 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
808 already have a non-empty extent. Fixes estimation for Hara-kiri
811 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
813 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
816 * lily/ligature-engraver.cc: Remove unused #include.
818 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
819 Bugfix: remove method check_for_prefix_loss(Item *) from global
820 namespace to avoid namespace pollution.
822 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
824 * VERSION: release 2.9.22
826 * ly/generate-documentation.ly: update option name.
828 * lily/dynamic-text-spanner.cc (print): revert fix.
830 * scm/define-grob-interfaces.scm
831 (trill-pitch-accidental-interface):
832 add trill-pitch-accidental-interface
834 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
835 dereference if it's really a duration.
837 * lily/figured-bass-engraver.cc (process_music): clear spanner if
838 useBassFigureExtenders is not set.
839 (listen_bass_figure): record as new event if
840 useBassFigureExtenders not set. Fixes #103.
842 * scm/stencil.scm (circle-stencil): don't center stencil argument,
843 instead: move circle. Fixes #107.
845 * scm/define-grobs.scm (all-grob-descriptions): set
846 allow-loose-spacing for PaperColumn and
847 NonMusicalPaperColumn. Kludge for #110.
849 * lily/spaceable-grob.cc: add allow-loose-spacing property.
851 * lily/spacing-determine-loose-columns.cc (is_loose_column):
852 allow-loose-spacing property.
854 * scm/define-markup-commands.scm (postscript): gsave & grestore
855 around embedded PS. Do setlinewidth too. Fixes #109.
857 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
859 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
860 code. This patch fixes ligature brackets that were not at all
863 2006-10-08 Graham Percival <gpermus@gmail.com>
865 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
867 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
869 * scm/define-context-properties.scm: clarified docs (bug 91).
871 * Documentation/user/basic-notation.itely: document volta brackets
872 not aligning (bug 63).
874 * Documentation/user/ global.itely invoking.itely: ignore or
875 add warnings about texstr.
877 2006-10-08 John Mandereau <john.mandereau@free.fr>
879 * po/fr.po: update translation.
881 * po/: update msgids.
883 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
885 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
887 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
889 * Documentation/user/page.itely (Two-pass vertical spacing): add
890 documentation for two-pass spacing technique.
892 2006-10-06 Graham Percival <gpermus@gmail.com>
894 * Documentation/user/convert-ly.txt: new file; new
895 storage place for this file (moved from bugs/ CVS).
897 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
899 * lily/note-head.cc: Fixed programming_error message.
901 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
903 * scm/define-grobs.scm (pure-conversion): move pure-callback
906 * scm/script.scm (default-script-alist): set avoid-slur for turn,
907 marcato, stopped, thumb.
909 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
911 * lily/completion-note-heads-engraver.cc (process_music): don't
912 skimp on memory usage.
914 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
917 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
918 parenthesis item. This fixes premature Y-extent triggering. Fixes
921 * VERSION (PATCH_LEVEL): bump version.
923 2006-10-04 Graham Percival <gpermus@gmail.com>
925 * Documentation/user/advanced-notation.itely: added
926 info about instrument names for piano or other contexts,
929 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
931 * mf/feta-bolletjes.mf (solfa_quarter_width): use
932 solfa_base_notewidth as unit for non-DO-notes too.
934 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
936 * VERSION: release 2.9.21
938 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
941 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
943 * python/lilylib.py (progress): Minor fix.
945 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
947 * lily/note-name-engraver.cc: doc engraver.
949 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
951 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
953 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
956 * lily/stem-engraver.cc (make_stem): don't set duration-log
958 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
959 write snippet-names binary.
961 * python/lilylib.py (system): use os.system for mingw32
963 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
966 * scm/backend-library.scm: update email address.
968 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
971 * scm/define-grobs.scm (all-grob-descriptions): use callback to
974 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
975 handle dot creation separately.
977 * lily/tab-note-heads-engraver.cc (process_music): idem.
979 * lily/drum-note-engraver.cc (process_music): idem.
981 * lily/note-heads-engraver.cc (process_music): idem.
983 * lily/rest-engraver.cc: don't set duration-log.
985 * scm/output-lib.scm (string-number::calc-text): new function.
986 (note-head::calc-duration-log): new function.
988 * lily/fingering-engraver.cc (make_script): remove 'text setting.
990 * scm/output-lib.scm (fingering::calc-text): new function.
992 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
994 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
995 and include-eps-font -> include-eps-fonts
997 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
999 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1001 * lily/timing-translator.cc: list properties.
1002 (start_translation_timestep): update internalBarNumber too.
1004 * scm/define-context-properties.scm
1005 (all-user-translation-properties): add internalBarNumber.
1007 * input/regression/spacing-no-note.ly: new file.
1009 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1011 * lily/book.cc: #include cleanup.
1013 * lily/include/lily-guile-macros.hh: add assert to
1014 scm_or_str2symbol(SCM).
1016 * VERSION (PATCH_LEVEL): bump version.
1018 * lily/spacing-spanner.cc (musical_column_spacing): handle
1019 musical->nonmusical spacing case, where there is no spacing
1020 wish. Fixes issue #61.
1022 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1023 (pango_item_string_stencil): use logical rect horizontally (to
1024 preserve spaces), ink_rect vertically (for time signatures).
1026 * lily/font-metric.cc (word_stencil): new interface function
1028 * input/regression/utf-8-mixed-text.ly: new file.
1030 * lily/percent-repeat-engraver.cc (listen_percent): remove
1033 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1034 non-dynamic scripts. Fixes #30.
1036 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1038 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1040 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1041 SCM_UNDEFINED for non-existent data.
1043 * lily/side-position-interface.cc (general_side_position): allow
1044 optional current_offset argument for chaining, so combinations of side-position
1045 and outside slur callback don't add up. Fixes issue #92.
1047 * lily/pango-font.cc (pango_item_string_stencil): use
1048 logical_rect. This prevents spaces after words from disappearing,
1051 * VERSION: release 2.9.20
1053 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1055 * scm/define-grob-properties.scm (all-user-grob-properties):
1056 mention stencil as user settable.
1058 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1060 * Documentation/user/page.itely (Page formatting):
1061 document auto-first-page-number
1063 * lily/page-breaking.cc (find_chunks_and_breaks):
1064 * lily/paper-score.cc (calc_breaking): Follow changes to the
1065 Constrained_breaking interface
1067 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1068 here backwards, as an optimisation
1069 (initialize): new function; move most of the code in resize () here
1070 (combine_demerits): cache ragged_right_
1071 (Constrained_breaking): constructor now takes the Paper_score
1073 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1075 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1076 avoid parser lookahead for 0-ary functions.
1078 * lily/translator.cc: Extract event classes from
1079 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1081 2006-10-02 Heikki Junes <hjunes@gmail.com>
1083 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1086 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1088 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1089 function. Call the page breaking function selected in the
1090 `page-breaking' \paper variable, then the post processing function
1091 chosen using the `page-post-process' \paper variable.
1092 (line-height): new function. Return the height of a system.
1093 (line-minimum-position-on-page): new function. Return the position
1094 of a system on page (using the previous line position), only
1095 considering between system padding.
1096 (stretchable-line?): new function. Says whether a line can be
1097 stretched (ie. is not a title nor a single staff system).
1098 (page-maximum-space-left): new function. Computes space left on a
1099 page, when all systems are separated by their padding.
1101 * lily/page-breaking.cc (breaking::make_pages): Move page post
1102 processing function call to page breaking wrapper (common to all
1105 * lily/paper-book.cc (book::pages): call the page breaking
1106 wrapper, instead of the page breaker directly
1108 * ly/paper-defaults.ly: Add \paper variables for page breaking
1109 wrapper and page post processing function. Make
1110 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1111 `system-maximum-stretch-procedure' variable for holding a function
1112 computing the maximum stretch a system allows.
1114 * scm/layout-page-dump.scm (write-page-breaks): computes the
1115 stretch to apply to systems on a page to minimize left
1116 space. Dump this stretch length.
1118 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1119 the system-stretch property of the tweak data to stretch the
1121 (includePageLayoutFile): Void function which includes the
1122 generated page-layout file if it exists and if the page layout
1123 dumping is not asked.
1124 (scoreTweak): if the score tweak named by the argument exists,
1127 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1129 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1130 handle correctly the case where there are multiple \noPageBreaks
1133 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1135 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1137 * abc2ly.py fix so that entering " -- " will translate to a -- in
1138 the lilypond instead of a " - - "
1140 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1142 * lily/align-interface.cc: fix typo
1144 * lily/dynamic-text-spanner.cc (print): Add a special case for
1145 trill spanner right sides.
1147 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1149 * lily/align-interface.cc (get_extents_aligned_translates): add
1150 support for padding variable.
1152 * lily/break-align-interface.cc (self_align_callback): oops: use
1153 loop variable in guard.
1155 * input/regression/repeat-percent-grace.ly: new file.
1157 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1158 remember first currentCommandColumn of a grace run. Fixes issue 70.
1160 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1161 move class definition to CC file.
1163 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1165 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1166 measure-long repeats.
1168 * flower/include/international.hh: include stdarg.h
1170 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1172 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1173 put_systems_on_pages to return an empty result, we need to assign
1174 demerits properly in that case.
1175 (put_systems_on_pages): Make the number of pages depend on the
1176 evenness of page_number. Add auto-first-page-number.
1177 (calc_subproblem): ensure that the page-number is even for the
1178 left-hand page. Warn if the first page-turn doesn't fit onto the
1179 first (right-hand) page.
1181 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1182 (min_page_count): make this publicly accessible
1183 (min_page_count): fix a bug when there are forced page breaks that
1184 was introduced when I made this loop run backwards
1185 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1186 replace space_systems_on_min_pages with these two. The logic in
1187 space_systems_on_min_pages was getting too convoluted and is better
1188 contained in page-turn-page-breaking.
1190 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1192 (breakable_column): typo
1194 * lily/source-file.cc (get_line): fix off-by-one error
1195 and clean up some of the logic
1197 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1199 * lily/page-breaking.cc (make_pages): honour the first-page-number
1202 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1204 * VERSION (PACKAGE_NAME): bump version.
1206 2006-09-26 Pal Benko <benko.pal@gmail.com>
1208 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1209 (the latter is the same as petrucci-f which is kept for compatibility)
1211 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1213 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1215 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1217 * lily/global-context.cc (run_iterator_on_me): break out of loop
1218 if moment doesn't increase.
1220 * scm/define-grob-properties.scm (all-user-grob-properties): add
1223 * lily/accidental.cc (after_line_breaking): read forced property.
1225 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1228 * input/regression/accidental-forced-tie.ly: new file.
1230 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1232 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1234 * lily/figured-bass-engraver.cc: only listen to rest events if
1235 ignoreFiguredBassRest is not set.
1237 * scm/define-context-properties.scm
1238 (all-user-translation-properties): add ignoreFiguredBassRest property
1240 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1242 * lily/paper-book.cc (get_system_specs):
1243 (set_system_penalty): fix breakbefore.
1244 We used to set a penalty on the system after the break, now we
1245 set a permission on the system before the break
1247 * lily/grob-property.cc: add scm debugging hooks into
1248 property modification
1250 * lily/context-property.cc:
1252 rename make_foo_from_properties to internal_make_foo and
1253 move it from context-property.cc to a member function of
1256 * lily/include/lily-guile-macros.hh:
1257 overload ly_symbol2scm macro so that there is no more need
1260 * lily/volta-repeat-iterator.cc:
1261 * lily/tweak-engraver.cc:
1262 * lily/tuplet-bracket.cc:
1263 * lily/span-bar-engraver.cc:
1264 * lily/script-engraver.cc:
1265 * lily/prob-scheme.cc:
1266 * lily/pointer-group-interface.cc:
1268 * lily/grob-scheme.cc:
1269 * lily/grob-property.cc:
1271 * lily/context-property.cc:
1272 * lily/break-substitution.cc:
1273 * lily/break-align-engraver.cc:
1274 * lily/axis-group-interface.cc:
1275 * lily/align-interface.cc:
1276 remove calls to internal_FOO
1278 * lily/system-start-delimiter-engraver.cc:
1279 * lily/parenthesis-engraver.cc:
1280 * lily/accidental-engraver.cc:
1281 remove calls to make_foo_from_properties
1283 2006-09-23 Graham Percival <gpermus@gmail.com>
1285 * Documentation/user/programming-iterfaces.itely: fix
1286 def-music-function -> define-music... leftover.
1288 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1290 * lily/page-spacing.cc (min_page_count): by running the loop
1291 backwards, we can calculate ragged_last properly.
1293 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1295 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1296 printfirst-page-number -> print-first-page-number
1298 * python/convertrules.py: corresponding rule.
1300 * Documentation/user/page.itely (Page formatting): Document the
1301 default values of all page layout parameters.
1303 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1305 * lily/lexer.ll: remove limitation on music function arity. New
1306 mode extratoken, which inserts extra EXPECT_* tokens after
1307 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1309 * lily/parser.yy: Change grammar for music function accordingly.
1311 * lily/include/lily-parser.hh: New method get_state, new member
1312 hidden_state. Works around a problem when parser fetches
1313 MUSIC_FUNCTION token but not the following EXPECT_* token.
1315 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1318 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1319 references to Music; use ASSIGN_EVENT_ONCE everywhere
1321 * lily/grob-info.cc: junk *music_cause
1323 * lily/music.cc: copy eventified articulations to stream event
1325 * lily/part-combine-iterator.cc: Cleanup using enums
1327 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1330 * lily/include/engraver.hh: Junk music.hh include
1332 * lily/stream-event.cc: Changed constructors
1334 2006-09-21 Graham Percival <gpermus@gmail.com>
1336 * Documentation/user/tweaks.itely (Fitting music onto fewer
1337 pages): change settings to avoid warning messages.
1339 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1341 * Documentation/user/tweaks.itely (Fitting music onto fewer
1342 pages): Add between-system-space setting.
1344 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1346 * lily/accidental-placement.cc (calc_positioning_done): don't
1347 trigger Y-extent calculation too early. Use pure_height instead.
1349 * lily/scale.cc (LY_DEFINE): new file.
1351 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1353 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1354 that happen at the start of a score: having a zero-length
1355 chunk was messing up min_system_count calculations.
1357 * lily/source-file.cc (get_line): lower_bound, not
1358 binary_search. Fixes problem where point-and-click would
1359 always point to the first line.
1361 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1363 * lily/accidental-placement.cc (calc_positioning_done): also put
1364 stems into accidental support.
1366 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1369 * scm/script.scm (default-script-alist): avoid-slur and
1370 slur-padding for portato script.
1372 * lily/stem-tremolo.cc (translated_stencil): new function.
1373 (height): use new function. Fixes tremolos on whole notes.
1375 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1378 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1380 * scripts/abc2ly.py (try_parse_comment): idem.
1382 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1383 bar_string iso. string.find()
1387 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1390 2006-09-18 Graham Percival <gpermus@gmail.com>
1392 * Documentation/user/basic-notation.itely: add bug
1393 warning about ties and octavation/clef.
1395 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1397 * VERSION (PACKAGE_NAME): release 2.9.18
1399 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1401 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1402 figure out midi file names right here.
1404 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1406 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1408 * scm/backend-library.scm: option naming: gs-font-load*s*
1410 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1413 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1415 * scm/define-music-types.scm (music-descriptions): remove
1416 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1417 Music::to_event doesn't complain.
1419 * lily/accidental-placement.cc (ape_compare):
1420 * lily/semi-tie.cc (compare):
1421 * lily/note-column.cc (shift_compare): replace by XXX_less
1423 * lily/tie-formatting-problem.cc (set_chord_outline):
1424 * lily/tie-column.cc (calc_positioning_done):
1425 * lily/system.cc (post_processing)
1427 * lily/stem.cc (note_head_positions)
1428 (calc_positioning_done):
1429 * lily/spanner.cc (do_break_processing)
1430 (find_broken_piece):
1431 * lily/span-bar.cc (print):
1432 * lily/semi-tie-column.cc (calc_positioning_done):
1433 * lily/rest-collision.cc (calc_positioning_done):
1434 * lily/program-option.cc (get_help_string):
1435 * lily/note-collision.cc (get_clash_groups):
1436 * lily/new-fingering-engraver.cc (position_scripts):
1437 * lily/keyword.cc (Keyword_table):
1438 * lily/hara-kiri-group-spanner.cc (request_suicide):
1439 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1440 * lily/accidental-placement.cc (calc_positioning_done):
1442 * lily/beam.cc (get_beam_segments):
1443 * lily/grob-array.cc (remove_duplicates):
1446 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1447 ragged-last-bottom = ##f (test the new page breaker)
1449 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1451 * scm/define-context-properties.scm
1452 (all-internal-translation-properties): remove properties that
1453 were used to communicate page-turn stuff to the paper-column
1456 * lily/lily-guile.cc (robust_scm2string): new function
1458 * lily/paper-column-engraver.cc: Clean up page turn stuff
1460 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1461 instead of cluttering up paper-column-engraver.cc
1463 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1465 * scm/layout-page-dump.scm (scm): export utility function names,
1466 to allow user writing cutsom dumping functions.
1468 * scm/layout-page-layout.scm: export utility function names to
1469 enable custom page breaking function writing. Tabify.
1470 (line-next-space): use ?-suffix only for predicates
1471 (page-maximum-space-to-fill): new function. Return the space
1472 between first and bottom system of a page, to give to
1474 (space-systems): use a space-to-fill argument (for instance as
1475 computed by page-maximum-space-to-fill) instead of computing
1476 internaly this space with the page height. That way, the caller
1477 can adjust the space to use.
1478 (make-page-from-systems, walk-paths): compute space to fill before
1479 calling space-systems.
1481 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1483 * scm/script.scm (default-script-alist): set paddings for every
1484 type here, increase for portato mark.
1486 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1489 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1491 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1492 use spanner::set-spacing-rods
1494 * lily/note-column.cc: reformat.
1496 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1497 step positioning for note/rest combinations.
1499 * input/regression/rest-note-collision.ly: new file.
1501 * scm/define-grobs.scm (all-grob-descriptions): add
1504 * flower/include/std-vector.hh: switch off again.
1506 * VERSION (PATCH_LEVEL): bump to 2.9.18
1508 * flower/include/std-string.hh: idem.
1510 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1512 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1514 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1517 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1519 * Documentation/user/page.itely: update page breaking documentation
1521 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1523 * lily/note-collision.cc (calc_positioning_done): only access
1524 first head if available.
1526 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1528 * scm/framework-ps.scm (output-preview-framework): use new name.
1530 * lily/program-option.cc (internal_set_option): use new names.
1532 * Documentation/user/SConscript (lilypond_book_flags): update -d
1535 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1536 output into other programs): new variable names.
1538 * scm/lily.scm (define-scheme-options): uniformize var names.
1540 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1541 tuplets_ is non-empty before popping.
1543 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1545 * lily/spanner.cc (find_broken_piece):
1546 * lily/spacing-spanner.cc (get_columns):
1547 * lily/source-file.cc (get_line):
1548 * lily/simple-spacer.cc (get_column_description):
1549 * lily/keyword.cc (lookup):
1550 use the new binary search.
1552 * flower/include/std-vector.hh: replace binary_search with
1553 a more STL-like version
1555 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1557 * lily/tie-performer.cc: remove unused last_event_ property.
1558 (class Tie_performer): add now_tied_heads_ property for
1559 partially-tied heads.
1560 (acknowledge_audio_element): when adding an Audio_note, put the
1561 note in now_tied_heads_ if the audio note is partially tied.
1562 (stop_translation_timestep): always include entries in
1563 now_tied_heads_ in heads_to_tie_.
1565 * lily/drum-note-performer.cc (process_music): look for tie-events
1566 in the articulations; pass to Audio_note constructor.
1568 * lily/note-performer.cc (process_music): look for tie-events in
1569 the articulations; pass to Audio_note constructor.
1571 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1574 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1575 include initializer in constructor.
1577 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1579 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1580 unless they are breakable. This fixes discrepancies between the forces
1581 calculated here and the forces calculated in get_line_configuration.
1583 * lily/grob.cc (pure_relative_y_coordinate): fix some
1584 mis-estimation that was happening with piano staves.
1586 * lily/constrained-breaking.cc (resize): don't choke if we get a
1587 measure that won't fit on a line.
1588 (combine_demerits): don't consider uniformity when ragged
1590 * lily/page-spacing.cc (solve): why the f* were there two of these?
1591 (calc_subproblem): properly handle the case where a system is taller
1594 * lily/system.cc (get_paper_system): ensure that all the permissions
1595 and penalties are passed to the paper systems.
1597 * lily/page-breaking.cc (create_system_list): support system-count.
1599 * scm/define-grobs.scm (pure-print-callbacks): add
1600 ly:script-interface::print
1602 * lily/page-spacing.cc (min_page_count): fix calculation of min
1603 pages if we are ragged and there are non-zero springs.
1605 * scm/layout-page-layout.scm: if the pure-height estimates are under
1606 the real height, allow space-systems to ignore padding if it is
1607 needed in order to fit the systems on one page
1609 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1611 (solve): fix performance problem. Make sure we always get at least
1614 * lily/page-breaking.cc (make_pages): include write-page-breaks
1617 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1619 * scm/define-grobs.scm: add the new slur-callback
1620 fix pure-relevant to not exclude grobs whose extent is already
1623 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1626 * lily/slur.cc (pure_height): new callback to estimate the height
1629 2006-09-02 Graham Percival <gpermus@gmail.com>
1631 * Documentation/user/invoking.itely: small update on
1632 MacOS X notes; thanks Trevor!
1634 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1636 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1638 * lily/lexer.ll: accept EOF in all states.
1640 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1642 * lily/source-file.cc (Source_file): always 0-terminate character
1643 array, to prevent Flex from barfing.
1645 * lily/global-context.cc (get_output): robustness: don't crash if
1646 no Score context found.
1648 * lily/include/book.hh (class Book): idem.
1650 * lily/include/context-def.hh (struct Context_def): idem.
1652 * lily/include/score.hh (class Score): don't derive from Input.
1654 * lily/book.cc (Book): add a copy ctor.
1656 * buildscripts/output-distance.py (FileLink.calc_distance): count
1657 orphans in distance too.
1659 * python/midi.c (midi_parse_track): robustness: don't read past
1662 * ly/performer-init.ly: add Control_track_performer, move
1663 Tempo_performer and Time_signature_performer to Score.
1665 * lily/score-performer.cc (acknowledge_audio_elements): override
1666 from base class: add to audio-columns
1668 * lily/control-track-performer.cc (add_text): new file: generate
1671 * lily/performance.cc: move output_header_track to
1672 Control_track_performer ()
1674 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1676 * lily/include/midi-item.hh (class Midi_channel_item): insert
1677 class into hierarchy, for items that can have a channel setting. Dehungarify.
1679 * lily/include/performer.hh (class Performer): remove
1680 play_element(); move functionality into announce/acknowledge.
1682 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1684 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1685 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1687 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1689 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1692 * lily/all-font-metrics.cc: remove TFM support.
1694 * lily/include/tfm.hh: remove TFM support, TFM reader.
1696 * lily/include/binary-source-file.hh: remove Binary_source_file.
1698 2006-08-27 Graham Percival <gpermus@gmail.com>
1700 * Documentation/topdocs/NEWS.itely: add @c marker for
1701 stuff I've processed.
1703 * Documentation/user/ various: info from NEWS.
1705 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1707 * lily/paper-column-engraver.cc (finalize): Oops, this change
1708 should have gone in on 2006-08-23
1710 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1712 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1713 quotes to quote arguments. Fixes Windows problem.
1715 * python/lilylib.py (progress): idem
1717 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1719 * scripts/musicxml2ly.py: fix for importing
1720 minor key signatures from MusicXML. (Phillip Kirlin)
1722 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1724 * python/musicxml.py:
1725 (Attributes.get_key_signature): now correctly retrieves mode from
1728 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1730 * lily/parser.yy (output_def_body): take ownership of identifier
1733 * Documentation/user/advanced-notation.itely (Metronome marks):
1734 update use of \tempo in \midi.
1736 * VERSION: release 2.9.16
1738 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1740 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1743 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1745 * input/regression/tie-chord-partial.ly: clarify example.
1747 * scm/define-music-properties.scm (all-music-properties): remove
1750 * ly/music-functions-init.ly: remove \untied.
1752 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1753 stream events and music events.
1754 (stop_translation_timestep): search acknowledged heads for
1757 * input/regression/tie-chord-partial.ly: new file.
1759 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1760 for \char markup command.
1762 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1764 * scm/define-music-types.scm (music-descriptions): consistency:
1765 Use solo-{one,two}-event iso. solo-[12]-event.
1767 * lily/part-combine-engraver.cc (process_music):
1768 Use solo-{one,two}-event iso. solo-[12]-event.
1770 * ly/declarations-init.ly (partCombineListener): add Timing as
1773 * flower/std-string.cc (string_copy): use copy ()
1775 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1777 2006-08-24 Graham Percival <gpermus@gmail.com>
1779 * Documentation/user/changing-defaults.itely, global.itely,
1780 lilypond-book.itely, page.itely: minor changes from mailist.
1782 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1784 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1787 * scm/define-context-properties.scm
1788 (translator-property-description): robustness: detect type errors
1789 in property definitions.
1791 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1792 after getting it from SCM.
1794 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1797 * lily/include/performer.hh (class Performer): strip get_tempo()
1800 * lily/midi-def.cc: strip file.
1802 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1804 * lily/include/context-def.hh (struct Context_def): use
1805 VIRTUAL_COPY_CONSTRUCTOR().
1807 * lily/source-file.cc: smobification.
1809 * lily/include/source-file.hh (class Source_file): smobify
1810 Source_file. Trim redundant members.
1812 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1813 clones after creation. This plugs a huge memory leak.
1815 * python/convertrules.py (FatalConversionError.sub_tempo):
1816 complete rule for \midi{ \tempo }
1818 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1820 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1822 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1824 * input/regression/optimal-page-breaking-hstretch.ly: test for
1825 ragged-last-bottom also
1827 * lily/paper-column-engraver.cc (finalize): make the end of a score
1828 breakable by default. This is to balance out a change in behaviour
1829 of the page-turn-breaker which no longer makes the end of a score
1832 * lily/paper-book.cc (pages): set the systems_ once the pages are
1835 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1836 Page_breaking interface.
1838 * lily/page-breaking.cc (class Page_breaking): make the interface
1839 more consistent and provide abstractions for dealing with
1842 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1843 algorithm. Use the new interface to Page_breaking.
1845 * lily/page-spacing.cc: better support for ragged-bottom and
1848 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1850 * python/convertrules.py (conv): warning on \tempo{}
1852 * ly/performer-init.ly: set tempoWholesPerMinute.
1854 * ly/midi-init.ly: remove \midi
1856 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1859 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1860 tempoUnitDuration for determining what to print.
1862 * lily/lyric-extender.cc: typo.
1864 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1866 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1869 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1871 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1872 eps-pad-boxes is set.
1874 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1876 * THANKS: update sponsors.
1878 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1880 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1882 * input/regression/tie-chord-untied.ly: new file.
1884 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1886 * scm/define-music-properties.scm (all-music-properties): add
1889 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1891 (headertext_nopics): sanitize no-examples text.
1893 * scm/page.scm (make-page-stencil): don't rely on extents of
1894 page-stencil. This fixes spurious space around .EPS files produced
1895 with the EPS backend.
1897 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1899 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1901 * lily/hara-kiri-engraver.cc (process_music): remember
1902 keepAliveInterfaces after processing \set
1904 * lily/lyric-extender.cc (print): support left/right-padding for
1907 * scm/documentation-generate.scm (string-append): revert lilypond/
1910 2006-08-20 Graham Percival <gpermus@gmail.com>
1912 * Documentation/user/lilypond.tely: clarification to
1913 license presentation (not to actual license).
1915 * Documentation/user/basic-notation.itely,
1916 instrument-notation.itely: minor changes.
1918 * input/ {regression, test}/+.ly: clarification to
1919 text (you can click on examples). Thanks, Mats!
1921 * input/manual/bar-lines.ly: adds ||: repeats.
1923 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1925 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1927 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1929 * Documentation/user/lilypond.tely: strip lilypond/ from info
1930 links, rename to category LilyPond
1932 * lily/pango-font.cc (description_string): new function.
1934 * VERSION: release 2.9.15
1936 * lily/spacing-engraver.cc (stop_translation_timestep): use
1937 Dscho's fix for spacing spanner.
1939 * scm/define-music-types.scm (music-descriptions): use
1940 apply-output-event for ApplyOutputEvent
1942 * lily/output-property-engraver.cc (listen_apply_output): rename
1943 from listen_layout_instruction.
1945 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1948 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1950 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1951 commandline args with contains, split by \n.
1953 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1954 write snippet-names file, call with -dread-file-list. Fixes
1955 command limitations on 64-bit systems.
1957 * input/regression/stencil-color-rotation.ly: new file.
1959 * lily/include/translator.hh (struct Acknowledge_information):
1960 revert: don't use Protected_scm in global objects, as GUILE can't
1961 handle gc_unprotect from automated destructors on MacOS X.
1963 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1964 color, not the original stencil. Fixes combinations of
1965 color/transparency/rotation.
1967 * scripts/lilypond-book.py (main): add --formats=eps for
1970 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1971 crash if spacing_ is nonexistent.
1973 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1975 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1976 \catcode`\@=12 in the LaTeX output.
1978 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1980 * scm/define-music-types.scm (music-descriptions):
1981 use sustain-event iso. sustain-pedal-event.
1983 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1985 * scripts/convert-ly.py: honour the -n command-line switch
1987 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1989 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1990 break specification.
1992 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1994 * Documentation/user: convert-ly the user manual
1996 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1998 * stepmake/aclocal.m4: version check patch (thanks MWD)
2000 * ly/music-functions-init.ly: robustness. Don't crash if
2001 currentBarNumber is not a number.
2003 * VERSION (PATCH_LEVEL): bump.
2005 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2007 * stepmake/aclocal.m4: better version check; handle fooX.Y
2010 * ly/performer-init.ly: instrument name fixup.
2012 * input/manual/chord-names-jazz.ly (banterProperties):
2013 instrumentName update
2015 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2017 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2019 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2020 function. Use hash tables to check membership.
2022 * lily/general-scheme.cc (LY_DEFINE): new function.
2024 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2026 * lily/include/translator.hh (struct Acknowledge_information): add
2029 * ly/music-functions-init.ly: change name to BreathingEvent
2031 * input/regression/*.ly: apply it.
2033 * python/convertrules.py (conv): better instrumentName conversion
2036 * scm/define-music-types.scm (music-descriptions): add
2037 line-break-event to LineBreakEvent music
2039 * lily/music.cc (to_event): don't crash if music type not set.
2041 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2044 * lily/spacing-engraver.cc (stop_translation_timestep): set
2045 spacing for proportional notation too.
2047 * scm/translation-functions.scm (format-bass-figure): inspect
2050 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2052 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2054 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2056 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2058 * scm/layout-page-layout.scm (make-page-from-systems): new function
2059 (optimal-page-breaks): use the new page-breaking calling convention
2061 * scm/define-context-properties.scm (all-user-translation-properties):
2064 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2065 revokePageTurns functionality. If there is a special barline within
2066 the breakable region, break there instead of at the end of the region.
2068 * lily/paper-book.cc (pages): use the new page-breaking calling
2071 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2073 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2075 * scripts/lilypond-book.py: insert \sourcefileline command in
2076 output, so lilypond error messages refer to the spot in the
2077 original .lytex / .itely sourcefile.
2079 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2081 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2082 space to next column for distance to fixed col.
2084 * VERSION (PACKAGE_NAME): release 2.9.14
2086 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2089 * lily/accidental-engraver.cc (process_acknowledged): don't create
2090 accidental for trill span event. This fixes spurious accidentals
2093 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2095 * scm/define-grob-properties.scm (all-user-grob-properties):
2096 Clarify documentation of side-axis and direction. Thanks to Paul
2097 for the inspiration.
2099 * lily/bar-line.cc: Add documentation for "||:" also in the
2100 interface documentation.
2102 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2104 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2106 * lily/paper-column.cc (set_system): new function.
2108 * lily/spacing-engraver.cc (stop_translation_timestep): store
2109 SpacingSpanner refs in Paper_column.
2111 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2112 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2114 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2116 * lily/beam-engraver.cc (listen_beam): add method for
2117 Grace_beam_engraver too.
2119 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2121 * python/convertrules.py: Fix indentation bug that broke
2122 conversion of files older than 1.3.117.
2123 Fix escape error in the description for 2.9.6.
2125 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2127 * lily/*-engraver.cc: convert all try_music functions to listen_*
2130 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2131 enums to represent pedal types, and calculate more data statically.
2133 * scm/part-combiner.scm (recording-group-emulate): create a
2134 softcoded substitute for recording-group-engraver.cc.
2136 * lily/music.cc: make a common transpose function for events and
2139 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2140 ManualMelismaEvent, and obsoletes Melisma_translator.
2142 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2144 * input/test/instrument-name-align.ly: update version.
2146 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2148 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2149 Doc the --pdf flag to lilypond-book.
2151 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2153 * Documentation/topdocs/NEWS.tely (Top): add description.
2155 * input/regression/tuplet-full-length-note.ly: add file.
2157 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2158 always store axis group.
2160 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2162 * input/regression/instrument-switch.ly: new file.
2164 * lily/instrument-switch-engraver.cc (process_music): new file.
2166 * ly/engraver-init.ly: add Instrument_switch_engraver
2168 * ly/music-functions-init.ly: \instrumentSwitch
2170 * scm/define-context-properties.scm
2171 (all-user-translation-properties): add instrumentCueName
2173 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2175 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2177 * ly/music-functions-init.ly: music function \transposition.
2179 * lily/parser.yy (command_element): softcode \transposition.
2181 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2182 (process_music): oops.
2184 * lily/instrument-name-engraver.cc (start_spanner): new
2185 function. Create spanner when property changes.
2186 (stop_spanner): new function.
2188 * python/convertrules.py (conv): add rule.
2190 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2191 shortInstrumentName iso. instr.
2193 * scm/output-ps.scm (dashed-line): add phase argument to
2196 * lily/bar-line.cc (dashed_bar_line): new function.
2197 (compound_barline): support \bar "dashed".
2199 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2200 --output=DIR to DIR/BASE if it is a dir.
2202 * flower/file-name.cc (file_part): new function
2203 (dir_part): new function
2205 * lily/lily-parser-scheme.cc (LY_DEFINE):
2207 * DEDICATION: update
2209 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2211 * lily/instrument-name-engraver.cc: formatting.
2213 * python/convertrules.py (conv): bugfix for \epsfile.
2215 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2219 * lily/gourlay-breaking.cc: Oops, these should have been included
2222 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2224 * scripts/*.py (program_name): cleanup relocation snippets.
2226 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2228 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2230 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2231 page-breakable by default
2233 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2234 correctly calculated for a single-system page
2236 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2237 bigger than the second number
2239 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2240 acknowledge that we aren't satisfying constraints)
2242 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2245 * lily/grob.cc (pure_height): add minimum-Y-extent
2247 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2250 * lily/constrained-breaking.cc: convert code to use new Matrix class
2251 (get_best_solution): new function
2253 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2254 is a page with no systems
2256 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2258 * VERSION (PACKAGE_NAME): release 2.9.13
2260 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2263 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2265 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2267 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2270 * scm/define-grob-properties.scm (all-user-grob-properties):
2271 remove grace-space-factor.
2273 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2274 grace-spacing-interface
2275 (spacing-options-interface): add.
2277 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2279 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2281 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2282 GraceSpacing object.
2284 * lily/note-spacing.cc: fix prop list formatting
2286 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2287 beaming for grace notes too.
2289 * input/regression/spacing-grace.ly: update.
2291 * lily/grace-spacing-engraver.cc: new file.
2293 * lily/spacing-spanner.cc: add strict-grace-spacing.
2295 2006-07-20 Graham Percival <gpermus@gmail.com>
2297 * lily/parser.yy: compile fix.
2299 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2301 * scm/define-grobs.scm (all-grob-descriptions): typo.
2303 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2304 .eps extension from includegraphics.
2306 * scripts/lilypond-book.py (main): add support for --pdf.
2308 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2309 callback to compute common shortest duration.
2310 (set_springs): typo.
2312 * scm/define-grob-properties.scm (all-user-grob-properties): add
2313 strict-grace-spacing.
2315 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2316 support float_grace_columns_.
2318 * lily/spacing-options.cc (init_from_grob): new file.
2320 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2322 * input/regression/spacing-loose-grace.ly: new file.
2324 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2326 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2327 tupletFullLengthNote too. Choose right bound depending on value.
2329 * input/regression/tuplet-full-length-note.ly: new file.
2331 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2333 * lily/*-performer.cc: Converted try_music to listen_*
2335 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2336 as a stream-event internally. Introduce event_cause (), deprecate
2339 * scm/define-music-types.scm: Removed BusyPlayingEvent
2341 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2343 * Documentation/user/advanced-notation.itely (Font selection):
2344 Document how to get a list of available fonts using 'lilypond
2345 -dshow-available-fonts blabla'.
2347 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2349 * GNUmakefile.in: filter lily-XXX.pdf files.
2351 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2353 * scm/define-grob-properties.scm (all-internal-grob-properties):
2354 remove delta-pitch. Use delta-position everywhere.
2356 * scm/output-lib.scm (fall::print): use new order.
2358 * scm/output-ps.scm (path): reorder arguments.
2360 * scm/output-svg.scm (path): support for path primitive.
2362 * input/regression/bend-after.ly: new file.
2364 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2365 recipe for eps -> pdf conversion.
2367 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2369 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2372 2006-07-19 Graham Percival <gpermus@gmail.com>
2374 * input/manual/screech-boink.ly: moved to here.
2376 * input/screech-boink.ly: deleted.
2378 * scm/define-grob-properties.scm: clarify doc string.
2380 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2382 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2384 * scm/output-ps.scm (path): define path.
2386 * scm/define-stencil-commands.scm
2387 (ly:register-stencil-expression): add path.
2389 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2391 * ly/engraver-init.ly: add Fall_engraver
2393 * lily/parser.yy (music_function_event): allow musicfunction
2394 without music arg as music_function_event.
2396 * lily/grob-scheme.cc (LY_DEFINE):
2397 ly:grob-robust-relative-extent. New function.
2399 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2401 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2403 * scm/output-lib.scm (fall::print): new function
2405 * lily/fall-engraver.cc (stop_fall): new file.
2407 * ly/music-functions-init.ly: alphabetise.
2409 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2412 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2414 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2416 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2419 * lily/translator-group.cc (connect_to_context): non const error message.
2421 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2423 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2426 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2428 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2430 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2433 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2435 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2437 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2439 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2441 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2443 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2445 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2447 * scm/layout-page-layout.scm: Define module, tidy code, use more
2448 functions iso. a single big one.
2450 * scm/layout-page-dump.scm: move page dump functions used in two
2451 pass spacing to this file. Define module.
2453 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2456 * ly/paper-defaults.ly: use module layout-page-layout.
2458 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2460 * lily/music.cc: Revised MusicEvent event class. It now contains
2461 event data directly instead of encapsulating it in music. The
2462 previously used class is renamed to OldMusicEvent.
2464 * lily/stream-event.cc: Stream events are now probs.
2466 * lily/translator-group.cc, lily/translator.cc: Translators can
2467 now listen directly to stream events, by using macros
2468 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2470 * lily/arpeggio-engraver.cc: Converted to use new event system
2472 * THANKS: Corrected spelling mistake.
2474 2006-07-12 Graham Percival <gpermus@gmail.com>
2476 * Documentation/user/SConscript, make/lilypond-vars.make,
2477 input/GNUmakefile: doc build looks in input/manual instead
2480 * input/manual/ GNUmakefile, SConscript: build files for
2483 * input/test/ various: some files moved to input/manual/
2485 * Documentation/user/basic-notation.itely: small updates;
2486 thanks Kieren and Charles!
2488 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2490 * VERSION (PACKAGE_NAME): release 2.9.11
2492 * Documentation/topdocs/NEWS.tely (Top): update prop value
2494 * Documentation/user/basic-notation.itely (Tuplets): new property
2497 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2499 * python/convertrules.py (conv): tweaks.
2501 * VERSION (PATCH_LEVEL): bump version.
2503 * python/convertrules.py (conv): add rule for
2504 tupletNumberFormatFunction.
2506 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2507 tupletNumberFormatFunction.
2509 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2510 text through 'text callback.
2512 * lily/time-scaled-music-iterator.cc (construct_children): copy
2513 tweaks generated events.
2515 * scm/define-context-properties.scm
2516 (all-user-translation-properties): remove tupletNumberFormatFunction
2518 * lily/tuplet-engraver.cc (process_music): don't read
2519 tupletNumberFormatFunction
2521 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2524 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2526 * lily/global-context-scheme.cc: Separated ly:run-translator into
2529 * lily/score-engraver.cc, lily/score-performer.cc,
2530 scm/define-context-properties.scm: Make paper/midi output
2531 accessable as a context property.
2533 * lily/score-translator.cc, lily/score-context.cc: Removed.
2535 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2537 * scm/ps-to-png.scm (Module):
2538 * scm/framework-tex.scm (Module):
2539 * scm/framework-ps.scm (Module):
2540 * scm/backend-library.scm (Module):
2541 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2542 "dDEVICEHEIGHTPOINTS".
2544 2006-07-04 Graham Percival <gpermus@gmail.com>
2546 * Documentation/user/ various: general improvements to
2547 "working with lilypond files" section.
2549 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2551 * lily/sequential-iterator.cc: Change the default get_music_list
2552 to read elements-callback music property
2554 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2555 processing of multimeasure rests. Softcoded
2556 sequential-music-iterator.
2558 * lily/sequential-music-iterator.cc: Removed.
2560 2006-06-28 Graham Percival <gpermus@gmail.com>
2562 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2564 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2566 * lily/parser.yy: Wrap non-post-events in EventChords before
2567 assigning them to identifiers.
2569 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2571 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2572 gives correct vertical placement of \bar ":" in all staff
2573 sizes. Thanks Martial!
2575 2006-06-26 Graham Percival <gpermus@gmail.com>
2577 * Documentation/user/invoking.itely : minor update from mailist.
2579 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2581 * lily/ various: Introduce stream events of types Prepare,
2582 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2583 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2585 * lily/global-context*.cc: Time is now -inf before iteration
2588 * lily/include/context.hh: Removed unique_, init_
2590 * Documentation/topdocs/NEWS: Make the feathered beam example
2591 avoid triggering a bug.
2593 2006-06-24 Graham Percival <gpermus@gmail.com>
2595 * Documentation/user/ various: small additions from mailist.
2597 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2599 * ly/performer-init.ly: Add some missing links in the context
2600 hierarchy for MIDI output. There are probably some more missing!
2602 2006-06-21 Graham Percival <gpermus@gmail.com>
2604 * Documentation/user/ various: minor spelling fixes;
2605 thanks Dave Luttinen!
2607 * Documentation/user/ various: small clarifications;
2608 thanks Anthony Youngman!
2610 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2612 * po/fr.po: add \n appropriately.
2614 * lily/lexer.ll: remove ? from version-seen?
2616 2006-06-19 John Mandereau <john.mandereau@free.fr>
2618 * po/fr.po; update translation, by Jean-Charles Malahieude and
2621 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2623 * THANKS: add Markus Schneider.
2625 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2626 Staff_symbol_engraver
2628 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2629 replace staff_engraver
2631 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2634 * lily/staff-collecting-engraver.cc
2635 (acknowledge_end_staff_symbol): new function
2637 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2639 * lily/staff-collecting-engraver.cc
2640 (acknowledge_end_staff_symbol): new function.
2642 * lily/main.cc: switch on relocation by default.
2644 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2646 * lily/spacing-spanner.cc (musical_column_spacing): set
2647 compound_fixed_note_space to 0.0. Document why.
2649 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2650 range of inverse_hooke_
2651 (Simple_spacer): init completely.
2653 (get_line_configuration): don't use cols.resize(); it introduces
2656 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2658 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2660 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2661 try. Divide by beatlength.
2663 * input/regression/beaming-ternary-metrum.ly: update doc.
2664 add beatLength hack.
2666 * scm/music-functions.scm (make-time-signature-set): add
2667 standard-beat-grouping.
2669 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2671 * input/regression/tie-whole.ly: new file.
2673 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2674 cross center of note head in case of invisible stem.
2676 2006-06-16 Graham Percival <gpermus@gmail.com>
2678 * Documentation/user/ various: small fixes from mailist.
2680 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2682 * lily/breathing-sign.cc (offset_callback): idem.
2684 * lily/align-interface.cc (align_to_fixed_distance): remove
2687 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2690 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2692 * VERSION (PACKAGE_NAME): release 2.9.9
2694 * ly/lilypond-book-preamble.ly: add \version
2696 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2698 * scripts/lilypond-book.py (PREAMBLE_LY): include
2699 lilypond-book-preamble.ly
2701 * lily/stem.cc (get_beaming): return max of 0 and
2702 scm_ilength. Fixes slurring from/to beams.
2704 * ly/lilypond-book-preamble.ly: new file.
2706 * lily/slur.cc: add inspect-index feature.
2708 2006-06-13 Graham Percival <gpermus@gmail.com>
2710 * Documentation/user/tutorial.itely: trivial fix.
2712 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2714 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2715 all non-event music in the parser via MAKE_SYNTAX.
2717 * lily/parser-scheme.cc: Add ly:parser-error function
2719 * scm/paper.scm: fix typo
2721 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2725 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2728 * buildscripts/output-distance.py (test_compare_signatures):
2730 (read_signature_file): use new signature format.
2732 * scm/stencil.scm (write-system-signature): simpler signature
2735 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2738 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2739 stem_end_position, but estimate instead.
2741 * lily/tuplet-bracket.cc (calc_positions): look at
2742 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2743 brackets narrower than beams.
2745 * lily/lexer.ll: set version-seen? even if version is
2748 * lily/rest.cc (y_offset_callback): bugfix: decide position
2749 override based on scm_is_number(). Fixes \rest on center staff
2752 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2753 patterns for 16th triplets.
2755 2006-06-10 Graham Percival <gpermus@gmail.com>
2757 * Documentation/user/ page.itely, global.itely: editing
2760 * Documentation/user/ various: findex -> funindex.
2762 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2764 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2765 insert extra tuplet events.
2767 2006-06-10 Graham Percival <gpermus@gmail.com>
2769 * Documentation/user/programming-interfaces.itely: add
2772 * python/convertrules.py: add annotatefoo -> annotate-foo
2775 * Documentation/user/global.itely: start editing.
2777 * Documentation/user/page.itely: major editing, new spacing
2780 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2782 * scm/define-markup-commands.scm (wordwrap-markups): use
2783 output-def 'line-width if undefined.
2785 * HACKING: trim outdated info.
2787 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2789 * scm/define-grobs.scm (all-grob-descriptions): Add
2790 line-spanner-interface to all grobs that already have
2791 text-spanner-interface or dynamic-text-spanner-interface
2793 * scm/page.scm: Rename annotate{headers,systems,page}->
2796 * input/regression/page-spacing.ly,
2797 input/regression/page-layout-manual-position.ly: idem
2799 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2801 * lily/line-spanner.cc: cleanup property list.
2803 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2804 generator expressions (2.3 compat).
2806 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2808 * lily/vertical-align-engraver.cc: Make sure that the
2809 align{Above,Below}Context properties are included in the automatic
2812 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2814 * scm/paper-system.scm (paper-system-annotate): also annotate the
2815 estimated pure-Y-extent
2817 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2819 * lily/system.cc (break_into_pieces): set the estimated height
2820 of each child system
2822 * lily/stem.cc (pure_height): new pure-Y-extent callback
2824 * lily/staff-symbol-referencer.cc (callback): don't destroy
2825 the staff-position property
2827 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2828 consider_suicide into two functions
2830 * lily/constrained-breaking.cc (resize): use the new pure
2831 callbacks to estimate the height of a system
2833 * lily/axis-group-interface.cc (pure_group_height): new
2834 side-effect-free VerticalAxisGroup height-callback
2836 * lily/align-interface.cc (get_extents_aligned_translates):
2837 split align_elements_to_extents into two functions
2838 (get_pure_child_y_translation): new function
2840 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2842 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2844 * lily/paper-score.cc: cache break_indices and columns
2846 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2848 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2850 * lily/font-config.cc (init_fontconfig): do the init if
2851 cache_file, but don't look at cache_file.
2853 * input/regression/quote-tie.ly: new file.
2855 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2856 to Head_event_tuple, so we deal gracefully with ties on
2859 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2862 2006-06-08 Graham Percival <gpermus@gmail.com>
2864 * input/test/ smart-transpose.ly, reverse-music.ly:
2865 \applyMusic to music functions update, thanks Michael!
2867 2006-06-07 Graham Percival <gpermus@gmail.com>
2869 * input/test/ add-staccato.ly, add-text-script.ly,
2870 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2871 music functions update, thanks to Michael Meixner.
2873 * Documentation/user/music-glossary.tely: small fix
2876 * Documentation/user/ various: minor additions from mailist.
2878 * Documentation/user/lilypond.tely, basic-notation.itely:
2879 small test of @funindex. (works here)
2881 * input/test/font-table.ly: reduce size to partially
2882 de-ugly version in manual.
2884 * Documentation/user/page.itely: new file (split former
2885 "global issues" into "page settings" and "non-musical
2888 * Documentation/user/ various: fix @ref{}s to match
2889 new chapter names (above).
2891 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2893 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2895 2006-06-06 Graham Percival <gpermus@gmail.com>
2897 * Documentation/user/advanced-notation.itely: add example
2898 for segno/coda on barline.
2900 * tex/texinfo.tex: merge from upstream.
2902 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2904 * scripts/lilypond-book.py (process_snippets): Argument fix.
2907 * buildscripts/builder.py:
2910 * Documentation/user/SConscript: More SCons fixes.
2912 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2914 * lily/font-config.cc (init_fontconfig): Only initialize if
2915 global cache_file is found.
2917 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2919 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2922 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2924 * VERSION (PACKAGE_NAME): release 2.9.8
2926 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2927 function. Delay ledger modifying ledgered grobs to
2928 stop_translation_timestep(), to ensure that we're ledgering
2929 according to the new spanner.
2930 (acknowledge_staff_symbol): don't check for non-NULL
2931 staff_sym->get_bound()
2933 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2936 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2939 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2940 directly from srcdir/stepmake/aclocal.m4
2942 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2945 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2947 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2949 * lily/simple-spacer.cc (get_line_configuration): add
2950 keep-inside-line rods
2951 (struct Column_desc): add constructor
2952 (struct Rod_desc): add constructor
2953 (get_line_forces): check for forced page breaks here too
2955 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2956 support/elements cycles between InstrumentNames and AxisGroups
2958 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2960 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2962 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2963 make-txt-files target.
2965 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2966 make-txt-files target.
2968 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2970 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2973 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2975 * Documentation/user/instrument-notation.itely,
2976 input/regression/breathing-sign-ancient.ly,
2977 input/test/divisiones.ly: Removed redundant property settings for
2980 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2981 fix lyrics alignment problems. They are implemented now as scheme
2982 functions that add the appropriate unicode char to the first lyric
2983 event rather than adding a separate lyric event. Minor edit of
2986 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2988 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2989 pollute src dir with built .txt files, but install directly from
2990 Documentation/topdocs/out/
2992 * buildscripts/output-distance.py
2993 (ComparisonData.create_html_result_page): put version/directories
2996 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2999 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3000 Patch by Karl Hammar
3002 * buildscripts/readlink.py: add file.
3003 Patch by Karl Hammar
3005 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3007 * lily/tuplet-number.cc (print): prevent stencil from being
3010 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3012 * scm/stencil.scm (write-system-signature): explicitly
3013 -well, superfluously- close output port.
3015 * buildscripts/output-distance.py (main): oops. Add extra argument.
3017 2006-06-05 Graham Percival <gpermus@gmail.com>
3019 * Documentation/user/music-glossary.tely: clarified example
3020 from Francisco Vila, thanks!
3022 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3024 * input/regression/spacing-section.ly: new file.
3026 * lily/input.cc (programming_error): new function.
3028 * lily/spacing-engraver.cc (try_music): new function. Accept
3029 spacing-section-event
3031 * lily/spacing-spanner.cc (set_springs): take slices of all
3032 columns for spacing.
3034 * lily/include/paper-column.hh (class Paper_column): add
3035 Paper_column::compare.
3037 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3039 * scm/define-music-types.scm (music-descriptions): add
3042 * lily/music-iterator.cc (report_event): use programming_error for
3043 sending non-event error.
3045 * lily/input.cc (programming_error): new function
3047 * buildscripts/output-distance.py (main): use compare-XXX for
3049 (main): --threshold option, default at 0.30
3051 * output-distance.py (main): add --threshold option.
3053 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3055 * scm/paper-system.scm (paper-system-annotate): fix problem when
3056 annotating an empty system
3058 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3060 * GNUmakefile.in: reinstate old web tar/copying.
3062 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3064 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3065 nothing changes. (Erik S)
3067 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3070 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3072 * scm/define-markup-commands.scm (whiteout): do not force
3073 foreground color of argument markup to black.
3075 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3076 the left of the arrow, instead of below the arrow name, so that,
3077 when two little arrows are vertically stacked, their dimensions
3078 and name should not overlap. Add a color key parameter.
3080 * scm/paper-system.scm (paper-system-annotate): Annotate
3081 next-space+next-padding instead of next-space. Annotate space
3082 between next-padding and next-space+padding, respectively, and
3083 following system extent and refpoint-Y-extent. Use colors.
3085 * scm/page.scm (annotate-page): translate annotations slightly to
3088 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3090 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3091 fix for x-staff slurs. Thanks Joe!
3093 * buildscripts/output-distance.py
3094 (SystemLink.output_expression_change_count): keep track of changed
3095 details, and dump in details html page.
3097 * input/regression/figured-bass-staff.ly: add note about setting
3098 properties in Staff context.
3100 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3101 add slurs and ties to support too.
3103 * buildscripts/output-distance.py (main): set dest_dir
3104 argument. Add --max-count option.
3106 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3108 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3109 shortcuts for special unicode chars that are useful in chant
3110 notation. Revised exisiting and added new comments.
3112 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3114 * make/mutopia-rules.make: remove duplicate recipe.
3116 2006-06-02 Werner Lemberg <wl@gnu.org>
3118 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3119 Add support for U+0132 (IJ) and U+0133 (ij).
3121 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3123 * buildscripts/output-distance.py (FileLink): new class. collect
3124 info systems from one .ly file.
3125 (FileLink.link_files_for_html): further tweaks.
3127 2006-06-02 Graham Percival <gpermus@gmail.com>
3129 * tex/texinfo.tex: partial fix for @funindex.
3131 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3134 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3136 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3138 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3139 @example too. Backportme.
3141 2006-06-02 Graham Percival <gpermus@gmail.com>
3143 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3144 from Werner Lemberg.
3146 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3148 * Documentation/user/music-glossary.tely: additional spanish
3149 updates and a lyrics fix in an example.
3151 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3153 * scm/define-grob-properties.scm: Previous patch contained
3154 spurious line from another patch not yet committed. Fixed.
3156 * scm/define-grob-properties.scm: Add missing doc strings for
3159 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3161 * buildscripts/output-distance.py
3162 (ComparisonData.write_text_result_page): separate the scores, sort
3165 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3168 * buildscripts/output-distance.py (me_path): use argv[0] for
3170 (ComparisonData.img_cell): use colored borders.
3172 * scm/stencil.scm (write-system-signature): escape newlines too.
3173 (write-system-signature): use (1,-1) interval for empty interval
3175 2006-01-01 Graham Percival <gpermus@gmail.com>
3177 * Documentation/user/music-glossary.tely: Spanish updates
3178 from Francisco Vila.
3180 * Documentation/user/lilypond-book.itely: addition from
3183 * Documentation/user/ various: edits, small additions
3186 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3188 * GNUmakefile.in (tree-lib-prefix-current):
3189 (tree-share-prefix-current): Use version number in tree, add
3192 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3194 * GNUmakefile.in: write VERSION, again.
3196 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3197 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3199 * stepmake/aclocal.m4: robuster version detection.
3201 * buildscripts/output-distance.py
3202 (ComparisonData.create_html_result_page): copy only if file
3203 exists, fixup src paths.
3205 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3207 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3209 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3210 Another datarootdir reto.
3212 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3213 available. This should be moved to postinstall-lilypond-doc.
3215 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3217 * GNUmakefile.in: simplify local-WWW-post.
3218 remove -type l from find.
3220 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3221 fixes. Don't follow symlinks.
3222 (ComparisonData.create_html_result_page): remove previous results.
3223 insert ../python in path.
3225 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3227 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3229 * config.make.in (datadir): Add datarootdir to silence autoconf.
3231 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3233 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3235 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3237 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3238 slash beams too wide.
3240 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3242 * VERSION: release 2.9.7
3244 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3246 * lily/relocate.cc (read_relocation_dir): Do not blindly
3249 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3251 * lily/parser.yy: replace THIS by PARSER
3253 * Documentation/index.html.in: add link to test-results.html page.
3255 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3257 * scm/translation-functions.scm (format-bass-figure): translate
3258 digits over 10 to the left
3260 * scm/define-markup-commands.scm (translate-scaled): new markup.
3262 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3265 * ly/engraver-init.ly: add Figured_bass_engraver
3267 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3269 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3271 * lily/score-engraver.cc (announce_grob): only note START announces.
3273 * lily/include/engraver-group.hh (Translator_group):
3274 acknowledge_hash_table_ is now drul.
3276 * lily/engraver.cc (announce_end_grob): new method.
3278 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3280 * lily/translator-dispatch-list.cc (create): take start_end argument.
3282 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3283 acknowledge_static_array_ to drul
3285 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3287 * scm/define-grob-interfaces.scm
3288 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3290 * scm/define-grobs.scm (all-grob-descriptions): add
3291 BassFigureAlignmentPositioning
3293 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3294 number stays up to date. Backportme.
3296 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3298 * Documentation/user/basic-notation.itely (Bar lines): Document
3301 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3303 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3305 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3306 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3309 * Resurrect `scons lily' build.
3311 * SConstruct (symlink_tree): Bugfix: link
3312 music-drawing-routines.ps to file iso directory.
3314 * lily/SConscript: Remove kpath-guile from LIBS.
3316 * SConstruct (libdir_package_version): Typo.
3317 (configure): Comment-out fontforge for lack of fontforge.pc .
3318 Also add libdir* to environment.
3320 2006-05-30 Graham Percival <gpermus@gmail.com>
3322 * Documentation/user/ various: minor additions from mailist and
3325 2006-05-30 Paco <fravd@ya.com>
3327 * Documentation/user/music-glossary.tely: numerous corrections and
3328 some new translations.
3330 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3334 * buildscripts/output-distance.py
3335 (ComparisonData.create_html_result_page): new routine: summarise
3336 results in HTML page with images.
3337 (ComparisonData.create_text_result_page): create summary text files too.
3339 * GNUmakefile.in (web-ext): package .signature files too. They
3342 * scm/stencil.scm (write-system-signature): typo.
3344 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3346 * scm/stencil.scm (write-system-signature): better escaping.
3347 only write signature for music systems, not for markup systems.
3349 * scm/framework-ps.scm (output-framework): dump-signatures support
3352 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3354 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3355 for -dno-point-and-click
3357 * lily/grob.cc (get_print_stencil): don't read
3358 point_and_click_global to determine whether to set grob-cause.
3360 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3362 * buildscripts/output-distance.py (main): new function.
3363 (ComparisonData): new class.
3365 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3366 careful with generating new LedgerLineSpanners.
3368 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3370 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3371 context. This fixes double ledger lines in output.
3373 * lily/system.cc (get_paper_system): remove 3 layer limit.
3375 * buildscripts/output-distance.py (SystemLink.distance): new
3376 file. Compare signatures.
3378 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3380 * lily/grob-array.cc (remove_duplicates): rename from
3381 uniq(). Sort before calling uniq() so it actually works.
3383 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3385 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3386 \version from lilypond file snippet.
3387 (Lilypond_file_snippet.ly): oops. typo.
3388 (find_toplevel_snippets): urgh. again.
3390 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3391 prevent duplicated broken items in output.
3393 * scm/framework-eps.scm (output-classic-framework): only dump if
3394 dump-signatures is set.
3396 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3398 * scm/stencil.scm (write-system-signature): new routine: write
3399 python parseable signature of a separate paper system.
3402 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3404 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3408 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3410 * translator-group.cc: send music events to engravers in
3411 non-bottom contexts.
3413 * tuplet-engraver.cc: process tuplet brackets in correct order.
3415 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3417 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3418 arg 2 might point us to a new binary (patch by Karl Hammar)
3420 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3422 * VERSION (PACKAGE_NAME): release 2.9.6
3424 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3426 * Documentation/user/*.itely: 2nd
3427 attempt: replace funindex -> findex globally.
3429 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3431 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3432 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3434 * scm/define-music-display-methods.scm: display methods for
3435 breaks. Fix \applyOutput.
3437 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3439 * Documentation/user/macros.itexi: comment out funindex expansion.
3441 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3444 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3445 Karl Hammar. Backportme.
3447 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3449 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3451 * Documentation/user/programming-interface.itely (Running a
3452 function on all layout objects): idem.
3454 * Documentation/user/introduction.itely (Automated engraving):
3455 update \applyOutput syntax
3457 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3458 remove debugging hook.
3460 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3463 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3465 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3466 TEXI2DVI_FLAGS to texi2dvi invocation.
3468 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3470 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3471 works. More work is done by iterator now, and engraver has been
3472 very much simplified.
3474 * lily/translator-group.cc: try_music is now invoked through a
3477 * lily/*-iterator.cc: Massive cleanups. Junked
3478 try_music_in_children globally. Renamed try_music to report_event,
3479 and made that method descend to a bottom context automatically.
3481 * lily/event-iterator.cc: New file.
3483 * lily/output-property-iterator.cc,
3484 lily/old-lyric-combine-music-iterator.cc: Removed.
3486 * python/convert-rules.py: Modified the syntax for \applyOutput.
3488 2006-05-23 Graham Percival <gpermus@gmail.com>
3490 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3493 * Documentation/user/ various: stuff that might have helped
3494 to fix the pdf creation, plus some minor doc additions.
3496 * Documentation/user/changing-defaults.itely: remove @b from
3497 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3499 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3501 * lily/beaming-pattern.cc (beamify): deal with negative start
3502 moments for beaming patterns.
3504 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3506 * lily/beaming-info.cc (beamify): new function: read beatLength
3507 and beatGrouping from context.
3509 * input/regression/beam-beat-grouping.ly (Module): new file.
3511 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3513 * lily/beam.cc (get_beam_segments): generate events for
3514 max_connect_ case too.
3515 (get_beam_segments): read Stem::max-beam-connect.
3517 * input/regression/beam-single-stem.ly: new file.
3519 * lily/stem.cc (set_beaming): use #f as signaling value for
3522 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3524 * lily/beam.cc (set_beaming): read clip-edges property.
3525 (calc_direction): don't suicide for single stem.
3527 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3528 argument, remove 1<<15 hack. Remove clip_edges()
3530 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3532 2006-05-21 Graham Percival <gpermus@gmail.com>
3534 * Documentation/user/basic-notation.itely: reorg.
3536 * Documentation/user/ various: minor fixes.
3538 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3540 * lily/stencil-expression.cc (register_stencil_head): opps, append
3541 to cdr of static SCM object.
3543 2006-05-19 Graham Percival <gpermus@gmail.com>
3545 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3546 update framework for command index. DOC WRITERS: use @funindex
3547 instead of @cindex @code{}.
3549 * Documentation/user/ various: replace @cindex @code{} => @funindex
3551 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3553 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3554 case positions is set manually.
3556 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3558 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3561 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3563 * Documentation/user/changing-defaults.itely (Contexts explained):
3564 use absolute dimension for @image.
3566 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3567 out image for illustration too.
3568 ($(outdir)/%.png): add more png <-> eps rules.
3570 2006-05-17 Graham Percival <gpermus@gmail.com>
3572 * Documentation/user/ various: remove trailing whitespace, cosmetic
3573 change to reduce changes produced by diff.
3575 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3577 * lily/main.cc (do_chroot_jail): correctness tweak.
3579 * python/lilylib.py (system): import subprocess in system () only.
3581 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3583 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3584 variable. Backportme.
3586 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3588 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3590 2006-05-17 Werner Lemberg <wl@gnu.org>
3592 * lily/lexer.ll (init_signature_has_table): Add
3593 `scm-scm-music-music'.
3595 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3596 (Generic_prefix_music_scm): Add rule for it.
3598 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3599 `quoted-transposition' property.
3601 * ly/music-functions-init.ly (transposedCueDuring): New function.
3603 * scm/define-music-properties.scm (all-music-properties): Updated.
3605 * Documenation/topdocs/NEWS.itely: Document it.
3607 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3609 * python/lilylib.py (system): move import subprocess to system()
3612 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3614 * VERSION (PATCH_LEVEL): release 2.9.5
3616 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3619 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3621 2006-05-16 Graham Percival <gpermus@gmail.com>
3623 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3625 * Documentation/user/ various: minor fixes.
3627 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3629 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3631 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3633 * Documentation/user/advanced-notation.itely (Instrument names):
3634 Modified obsolete instruction on how to move instrument names away
3635 from the staves. Hmm, at second thought the bug probably has been
3636 solved, so the full bug description should probably be removed.
3638 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3640 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3641 currentCommandColumn.
3643 * lily/hairpin.cc (print): also add padding for non-neighbor
3646 * scm/define-context-properties.scm
3647 (all-user-translation-properties): add hairpinToBarline
3649 * input/regression/hairpin-to-barline.ly: new file.
3651 * lily/context.cc (internal_send_stream_event): thinko fix.
3653 * lily/tie.cc (set_default_control_points): robustness fix.
3655 * python/musicxml.py (Part.interpret): don't complain about
3656 incomplete measures.
3658 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3659 new music if last_event_chord() returned None.
3661 * python/musicxml.py (Part.interpret): skip back over chord notes.
3663 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3665 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3666 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3667 lily/slash-repeat-engraver.cc,
3668 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3669 iterator sends PercentEvents
3671 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3672 rework tuplets: send start/stop events to engraver
3674 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3675 dispatchers event-source and events-below to Context
3677 2006-05-15 Graham Percival <gpermus@gmail.com>
3679 * Documentation/user/README.txt: update info for doc writers.
3681 * Documentation/user/programming-interface.itely: integrate
3682 Nicolas' fixes for chapter rewrite.
3684 * Documentation/user/ various: minor fixes.
3686 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3688 * lily/clef-engraver.cc: cleanup.
3690 * Documentation/user/GNUmakefile: dist context-example.eps too.
3692 * lily/key-engraver.cc (create_key): use
3693 explicitKeySignatureVisibility for cancellation too.
3695 * lily/font-config.cc (init_fontconfig): don't close file if
3698 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3700 * Documentation/topdocs/NEWS.tely: niente and rotation news
3702 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3704 * lily/include/stencil.hh
3705 * lily/stencil.cc (rotate): new function. Makes it possible
3706 to rotate a stencil around a given offset.
3708 * lily/grob.cc (get_print_stencil): add rotation support
3710 * lily/stencil-interpret.cc (interpret_stencil_expression):
3711 add rotation support
3713 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3715 * scm/define-grob-properties.scm: add 'rotation property
3717 * scm/define-markup-commands.scm: add rotate markup command
3719 * scm/output-ps.scm: add rotation support in PostScript backend
3721 * scm/output-svg.scm: add rotation support in SVG backend
3723 2006-05-13 Graham Percival <gpermus@gmail.com>
3725 * Documentation/user/music-glossary.itely: French correction.
3727 * Documentation/user/programming-interface.itely: major
3728 new docs, some reorg, some info from Nicolas.
3730 * Documentation/user/ various: small fixes.
3732 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3734 * Documentation/user/programming-interface.itely (Markup
3735 programmer interface): Remove duplicate text.
3737 2006-05-12 Graham Percival <gpermus@gmail.com>
3739 * Documentation/user/context-example.eps: new file.
3741 * Documentation/user/changing-defaults.itely: set up file to
3744 * Documentation/user/programming-interface.itely: changes
3747 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3749 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3751 2006-05-11 Graham Percival <gpermus@gmail.com>
3753 * Documentation/user/programming-interface.itely: first round of
3754 editing and merging emails from Nicolas.
3756 * Documentation/user/scheme-tutorial: minor edit.
3758 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3760 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3762 (Xml_node.message): use it.
3764 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3765 oops. Add duration argument.
3767 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3769 * lily/paper-column-engraver.cc (make_columns):
3770 * scm/define-grobs.scm: Revert my previous change and set the default
3771 in define-grobs.scm instead.
3773 2006-05-09 Graham Percival <gpermus@gmail.com>
3775 * Documentation/user/changing-defaults.itely: general editing,
3776 info about \set and \override.
3778 * Documentation/user/tweaking.itely, advanced-notation.itely:
3779 fixes from Dave Luttinen, thanks!
3781 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3783 * lily/paper-column-engraver.cc (make_columns): By default, a column
3784 needs to be breakable.
3786 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3788 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3790 (musicxml_time_to_lily): idem
3791 (musicxml_key_to_lily): idem
3792 (instrument_drumtype_dict): dict for supported drumtypes.
3793 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3794 moments and pending mm rests
3795 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3796 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3797 (musicxml_voice_to_lily_voice): add mode change.
3798 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3799 speed and less memory usage (factor 5 to 10).
3800 (convert): write -defs.ly and driver file separately so people
3801 can script their own part extraction.
3803 * python/musicxml.py (minidom_demarshal_node): new function:
3804 separate minidom handling.
3805 (lxml_demarshal_node): new function: support lxml.etree too.
3806 (Xml_node.message): new function: verbose error message, with XML
3807 path to offending node.
3808 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3809 (Part_list.generate_id_instrument_dict): new method: collect
3810 instrument names, to be able to set drum_type.
3811 (Part.interpret): handle underfull measures
3812 (Part.interpret): assign instrument names.
3814 * python/musicexp.py (Output_printer.close): new method
3815 (MusicWrapper.print_ly): new class: support other modes,
3817 (BarCheck.print_ly): new class. Support bar checks, with comments
3818 and fancy barchecks.
3819 (NoteEvent.__init__): also set drum_type for drum notes.
3820 (MultiMeasureRest.lisp_expression): dump mm rests.
3822 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3823 line-break-permission if forbidBreak is not set.
3825 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3827 * scm/define-context-properties.scm:
3828 * scm/define-grob-properties.scm:
3829 * scm/define-grobs.scm:
3830 * scm/define-music-display-methods.scm:
3831 * scm/define-music-properties.scm:
3832 * scm/define-music-types.scm:
3833 * scm/music-functions.scm:
3834 * ly/declarations-init.ly:
3835 * lily/include/constrained-breaking.hh:
3837 * lily/spaceable-grob.cc:
3838 * lily/simple-spacer.cc:
3839 * lily/paper-score.cc:
3840 * lily/paper-column.cc:
3841 * lily/paper-column-engraver.cc:
3843 * lily/gourlay-breaking.cc:
3844 * lily/constrained-breaking.cc:
3845 * python/convertrules.py:
3846 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3847 "page-break-penalty" and "line-break-permission".
3848 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3849 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3851 * lily/bar-engraver.cc:
3852 * lily/beam-engraver.cc:
3853 * lily/forbid-break-engraver.cc:
3854 * lily/ligature-engraver.cc:
3855 * lily/paper-column-engraver.cc:
3856 * lily/percent-repeat-engraver.cc:
3857 * lily/score-engraver.cc:
3858 * lily/score-engraver.hh:
3859 * lily/paper-column-engraver.hh:
3860 Inter-engraver communication regarding line breaks is done through context
3861 properties (Score.forbidBreak) instead of function calls.
3863 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3865 * VERSION (PACKAGE_NAME): release 2.9.4
3867 2006-05-08 Graham Percival <gpermus@gmail.com>
3869 * Documentation/user/working.itely: proofreading from Dave
3872 * Doucmentation/user/README.txt: updated with manual style info.
3874 * Documentation/user/ various: trim linewidth to 78 chars.
3876 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3878 * scm/define-grob-properties.scm (all-internal-grob-properties):
3879 remove chord-tremolo property.
3881 * lily/beam.cc (get_beam_segments): don't use stem position as
3882 base for broken ends.
3884 2006-05-06 Graham Percival <gpermus@gmail.com>
3886 * Documentation/user/putting.itely: proofreading from Dave
3889 * Documentation/user/ various: more reorg and clarifications.
3891 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3893 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3895 * ly/music-functions-init.ly: new function featherDurations
3897 * lily/beam.cc: read grow-direction for feathered beaming.
3899 * Documentation/topdocs/NEWS.tely (Top): typo.
3901 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3903 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3906 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3907 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3908 used by music streams.
3910 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3911 lily/stream-event.cc, lily/stream-event-scheme.cc,
3912 lily/listener.cc, lily/scheme-listener.cc,
3913 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3914 lily/include/stream-event.hh, lily/include/listener.hh,
3915 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3916 Created data structures for music streams.
3918 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3920 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3921 construction of a beam.
3924 * flower/include/std-vector.hh (default_compare): use only one comparison.
3926 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3927 (note-by-number): further attachment fixes.
3929 * scm/lily-library.scm (ordered-cons): new function.
3930 (interval-index): new function
3932 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3934 * lily/note-head.cc (get_stem_attachment): new function.
3936 * scm/define-markup-commands.scm (note-by-number): read 'style
3939 * input/regression/markup-note.ly: show note-head style option.
3941 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3944 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3946 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3948 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3950 * lily/include/constrained-breaking.hh: GCC 4 fix.
3952 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3954 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3955 Replace it with functions get_line_forces and get_line_configuration.
3956 (class Simple_spacer): Make data private.
3957 Rewrite compression algorithm to be faster and simpler.
3959 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3960 * lily/gourlay-breaking.cc (solve):
3961 * lily/constrained_breaking.cc (space_line):
3962 Change it to the new simple-spacer code.
3964 * lily/paper-score.cc (get_paper_systems):
3967 Delay breaking the systems until they are requested.
3968 (find_break_indices):
3969 Use vsize for indices.
3971 Move the "Calculating line breaks" message here.
3973 * lily/system.cc (pre_processing):
3974 Move the "Calculating line breaks" message away from here.
3975 (break_into_pieces):
3976 Allow multiple calls to this function in sequence (with touching-but-
3977 not-overlapping breakpoints).
3979 * lily/constrained-breaking.cc:
3980 Replace most of the get_XXXX functions with get_line_details.
3981 Only calculate the force for each line. Calculate configurations only
3982 for the lines we will actually use.
3983 Replace cols_ with lines_.
3985 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3987 * mf/GNUmakefile (depth): remove FC_FIND.
3989 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3991 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3993 * scm/framework-ps.scm (write-preamble): new function.
3994 (write-preamble): load mac fonts via fondu, even if gs-font-load
3997 2006-05-03 Werner Lemberg <wl@gnu.org>
3999 * mf/GNUmakefile (FC_FIND): Fix typo.
4001 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4003 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4005 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4007 * stepmake/aclocal.m4: run python-config for crosscompiling
4010 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4011 -f png for HTML, TEXINFO formats.
4013 * input/tutorial/lbook-html-test.html: new file.
4015 * lily/include/tie-formatting-problem.hh (class
4016 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4017 [column, direction]. This fixes laissez vibrer ties.
4019 * flower/include/tuple.hh (struct Tuple2): new file.
4021 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4022 $(FCMATCH), only if $(NCSB_DIR) not set.
4024 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4026 * config.make.in (DOCUMENTATION): set FCMATCH.
4028 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4030 2006-05-03 Graham Percival <gpermus@gmail.com>
4032 * Documentation/user/ various: final round of reorg.
4034 * Documentation/user/instrument-notation.itely: some more
4035 fixes from Eduardo, thanks!
4037 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4039 * VERSION (PACKAGE_NAME): release 2.9.3
4041 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4043 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4045 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4047 * scm/define-grob-properties.scm (all-user-grob-properties):
4048 Correct typo, thanks to Eduardo.
4050 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4052 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4054 * buildscripts/lilypond-words.py (F): indent fix.
4056 * input/regression/tie-arpeggio-collision.ly: new file.
4058 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4059 function: store outlines per column rank.
4061 * lily/include/tie-configuration.hh (class Tie_configuration): add
4062 column_ranks_ to specification and configuration, to distinguish
4063 between ties for different heads in arpegiated chords.
4065 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4067 * *.py: more 4 space indents.
4069 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4071 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4073 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4075 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4077 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4079 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4081 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4083 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4085 * python/convertrules.py (conv): indent 4 for python files.
4087 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4089 * Documentation/user/changing-defaults.itely (Creating contexts):
4090 Clarify \new semantics.
4092 2006-04-28 Graham Percival <gpermus@gmail.com>
4094 * Documentation/user/ various: major new sections in the
4095 Learning manual, slight reorg elsewhere.
4097 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4099 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4101 * scm/framework-ps.scm (output-framework): remove PageMedia
4103 2006-04-27 Graham Percival <gpermus@gmail.com>
4105 * Documentation/user/ tweaks.itely, working.itely: new
4106 files, being more advanced "learning manual" chapters.
4108 * Documentation/user/ tutorial, putting, lilypond: reorg.
4110 2006-04-26 Graham Percival <gpermus@gmail.com>
4112 * input/regression/lyric-combine-polyphonic.ly: fixed test
4113 (no more "can't find context `one'" error).
4115 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4117 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4119 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4121 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4123 * lily/relocate.cc (read_relocation_dir): new function.
4125 2006-04-26 Graham Percival <gpermus@gmail.com>
4127 * Documentation/user/instrument-notation.itely: a few more fixes
4128 from Eduardo, thanks!
4130 * Documentation/user/README.txt: new file; contains info on
4131 style that used to be in lilypond.tely.
4133 * Documentation/user/ various: first round of doc reorg.
4135 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4136 graphic; this probably causes problems on some pdf
4137 viewers, notably Adobe Acrobat.
4139 2006-04-24 Graham Percival <gpermus@gmail.com>
4141 * Documentation/user/instrument-notation.itely: many alterations
4142 to Vocal music, from Eduardo Viera.
4144 2006-04-23 Graham Percival <gpermus@gmail.com>
4146 * Documentation/user/instrument-notation.itely: fix \new
4147 instead of \context problem.
4149 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4151 * lily/relocate.cc (expand_environment_variables): new function.
4153 (read_relocation_file): id.
4155 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4157 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4159 * ly/engraver-init.ly: remove old comments from TabVoice
4161 2006-04-20 Graham Percival <gpermus@gmail.com>
4163 * Documentation/user/instrument-notation.itely: added Erlend's
4164 latest doc patch, thanks!
4166 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4168 * lily/include/slur.hh:
4170 * lily/phrasing-slur-engraver.cc:
4171 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4172 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4173 Slur_engraver:: and putting it in
4174 Slur::auxiliary_acknowledge_extra_object ().
4176 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4178 * lily/note-collision.cc: fix a comment
4180 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4182 * stepmake/bin/add-html-footer.py: fix footer position in
4183 generated html files: before </body> and </html> tags.
4185 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4187 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4188 Earlier successive `make' commands finally compiled ok.
4190 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4192 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4194 * lily/include/stem-tremolo.hh:
4195 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4199 * lily/include/lookup.hh: add rotated_box ()
4201 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4203 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4204 been generated. Fixes "can't get `--help'" bug after make clean.
4206 * THANKS: alphabetize contributors.
4208 2006-04-17 Graham Percival <gpermus@gmail.com>
4210 * Documentation/user/instrument-notation.itely: added Erlend's
4211 tabs and banjo doc patch. Thanks!
4213 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4215 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4217 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4219 * scm/output-lib.scm: add some more predefined string tunings.
4221 * Documentation/user/instrument-notation.itely: and doc them.
4223 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4225 * ly/engraver.ly: Remove obsolete comments.
4227 * ly/gregorian-init.ly: Define default layout block.
4229 * input/puer-fragment.ly: Updated and extended.
4231 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4233 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4234 pdf conversion behaviour.
4236 * flower/file-name.cc (dir_name)
4237 (get_working_directory): Move from relocate.cc.
4239 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4241 * lily/relocate.cc: Encapsulate sys/stat.h in
4244 2006-04-14 Graham Percival <gpermus@gmail.com>
4246 * Documentation/user/ various: small updates from Cameron
4247 and Juergen, thanks!
4249 * Documentation/user/ various: small updates of my own.
4251 * THANKS: 2.7 -> 2.8.
4253 2006-04-11 Graham Percival <gpermus@gmail.com>
4255 * scm/define-context-properties.scm: typo.
4257 * Documentation/user/ : many more small updates.
4259 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4261 * scm/define-music-types.scm: disposed "docme".
4263 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4265 * lily/hairpin.cc: make niente circles a bit smaller.
4267 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4269 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4270 get-pfa and get-*-fonts targets.
4272 2006-04-10 Graham Percival <gpermus@gmail.com>
4274 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4275 music-glossary, programming-interface: more minor fixes
4278 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4280 * scm/define-context-properties.scm: another old \property update.
4281 This time tested for compiling!
4283 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4285 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4287 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4289 * scm/define-context-properties.scm (all-user-translation-properties):
4290 * Documentation/user/global.itely (Page formatting): Compile fix.
4292 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4294 * Documentation/user/advanced-notation.itely (Polymetric
4295 notation): Update the example to use the "+" symbol and add link
4296 to input/test/compound-time.ly.
4298 2006-04-08 Graham Percival <gpermus@gmail.com>
4300 * scm/define-grob-properties.scm: clarify docs for #'direction.
4302 * scm/define-context-properties.scm: update old \property override.
4304 * Documentation/user/ advanced-notation, global, lilypond-book:
4305 more minor doc updates.
4307 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4309 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4311 * scm/backend-library.scm (search-gs): oops.
4313 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4315 * scripts/lilypond-book.py (output): use base, not filename for href.
4317 * scm/backend-library.scm: only look for gs.
4319 * scripts/lilypond-book.py (output): fix printfilename.
4321 * lily/parser.yy (music_function_musicless_prefix): fold together
4322 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4324 * lily/slur.cc (print): only set font-size if not set yet.
4326 * lily/slur-configuration.cc (add_score): improved layout of debug
4329 2006-04-05 David Feuer <David.Feuer@gmail.com>
4331 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4332 (draw_circle): Hopefully fixed regression.
4333 Improved documentation for several procedures.
4335 2006-03-04 Werner Lemberg <wl@gnu.org>
4337 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4339 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4341 * scripts/musicxml2ly.py (bindir): add dynamic
4344 2006-04-04 Graham Percival <gpermus@gmail.com>
4346 * Documentation/user/ basic-notation, advanced-notation, putting,
4347 instrument-notation, invoking, lilypond, THANKS: another ream of small
4348 fixes from the Doc Helpers.
4350 2006-04-03 David Feuer <David.Feuer@gmail.com>
4352 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4354 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4356 * Cleaned up interfaces between PostScript and Scheme, and moved
4357 computations from PostScript to Scheme:
4359 * music-drawing-routines.ps
4360 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4361 with stroke_and_fill throughout.
4362 (euclidean_length, print_letter, draw_box): Deleted unused
4363 procedures. If someone needs draw_box, implement it using
4364 draw_round_box; don't duplicate code.
4365 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4366 Refactored/cleaned up interfaces.
4369 * output-ps.scm: reordered arguments to PostScript functions to
4370 match new interfaces
4371 (glyph-string): Rewrote glyph-string.
4372 (grob-cause): Replaced string-append with format.
4373 (repeat-slash): Rewrote to do computation here.
4374 (round-filled-box): Rewrote to do computation here.
4376 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4378 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4380 * stepmake/stepmake/toplevel- targets.make: print help info about
4383 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4385 * input/regression/hairpin-circled.ly: new file
4387 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4389 * lily/hairpin.cc (print): add support for circled tip
4391 * scm/define-grob-properties.scm: add circled-tip parameter
4393 * scm/define-grobs.scm: init circled-tip to false
4395 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4397 * scm/music-functions.scm (quote-substitute): set
4400 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4402 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4405 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4407 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4409 2006-03-31 David Feuer <david.feuer@gmail.com>
4411 * scm/framework-ps.scm:
4413 * scm/output-ps.scm: glyph-string now produces smaller, more
4414 readable, and probably faster PostScript. Several findfont
4415 scalefont setfont instances changed to selectfont
4416 Hacked-up string-appends changed to formats.
4418 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4420 2006-03-30 Graham Percival <gpermus@gmail.com>
4422 * scm/lily-library.scm: make "no version" warning message more polite.
4424 * lily/music.cc: add double quotes to failed octave check.
4426 * Documentation/user/ advanced-notation, changing-defaults,
4427 instrument-notation, invoking, music-glossary: whole bunch of minor
4430 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4432 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4433 $(buildscriptdir) iso. depth.
4435 * VERSION (PACKAGE_NAME): release 2.9.1
4437 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4439 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4441 * VERSION (PATCH_LEVEL): bump version number.
4443 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4446 * lily/pango-font.cc (pango_item_string_stencil): use
4449 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4450 $(outdir)/emmentaler-%.svg): remove canary.
4452 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4453 glyphnames if we have a ttf font.
4455 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4457 * Documentation/user/advanced-notation.itely (Font selection):
4458 Corrected reference to the font-family-override.ly example.
4460 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4462 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4463 stem-tremolo object in the stem (or else the stem might not be
4466 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4468 * lily/ttf.cc (print_trailer): only print existing glyphs.
4470 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4472 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4473 position the tremolo based on the position of the notehead.
4475 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4476 notes and update the texidoc line with the new positioning rules.
4478 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4480 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4482 * scripts/lilypond-book.py (Module): set default for linewidth if
4485 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4487 * VERSION (PACKAGE_NAME): release 2.9.0.
4489 * input/regression/stem-tremolo-position.ly: new file.
4491 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4493 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4495 * lily/stem-tremolo.cc (print): position
4496 the tremolo depending only on the end of the stem
4497 and not on the notehead
4498 (raw_stencil): center, on the middle staff line, the
4499 flag that is closest to the end of the stem (previously
4501 (calc_width): add this callback to shorten a tremolo when
4502 it is beamed or it is stemup with a flag
4503 (style): add this callback to make a tremolo rectangular when
4504 it is beamed or it is stemup with a flag
4505 (rotated_box): this is like Lookup::beam but makes a rotated
4506 rectangle instead of a parallelogram
4508 * lily/stem.cc (calc_stem_info): make sure the stem
4509 is long enough to fit the tremolo
4510 (calc-length): reduce the length of tremolo stems since the
4511 tremolo code is now capable of better positioning
4513 * scm/define-grobs.scm: make calc_width the default beam-width
4514 callback for stem-tremolo and add the style callback
4516 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4518 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4521 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4523 * lily/ttf.cc (make_index_to_charcode_map): restore old
4526 2006-03-28 Werner Lemberg <wl@gnu.org>
4528 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4530 2006-03-28 Graham Percival <gpermus@gmail.com>
4532 * THANKS: update for 2.9, add section for Documentation helpers.
4534 * Documentation/topdocs/NEWS.tely: compile fix.
4536 * Documentation/user/ basic-notation, global, advanced-notation,
4537 examples.itely: minor fixes from mailist.
4539 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4541 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4544 * lily/ttf.cc (print_trailer): use it.
4546 * lily/pango-font.cc (get_unicode_name): new function.
4548 * lily/ttf.cc (make_index_to_charcode_map): move function from
4550 (print_trailer): substitute uniXXXX name if applicable.
4552 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4553 (pango_item_string_stencil): use it to generate uniXXXX names.
4555 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4556 note heads, for uniform widths in shape note output.
4557 (overdone_heads): hmm. remove them again.
4559 * scripts/lilypond-book.py (output): add links to filenames.
4561 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4563 * lily/note-collision.cc (get_clash_groups): only consider when
4564 Note_column::dir <> CENTER.
4566 * scripts/lilypond-book.py (get_option_parser): init output_name
4569 2006-03-24 Graham Percival <gpermus@gmail.com>
4571 * Documentation/topdocs/NEWS.tely: add @end itemize
4573 * Documentation/user/ global, advanced-notation: minor
4576 2006-03-23 Graham Percival <gpermus@gmail.com>
4578 * Documentation/user/ lilypond.tely, music-glossary,
4579 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4581 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4583 * mf/GNUmakefile: don't install .enc files.
4585 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4587 * VERSION (PATCH_LEVEL): bump to 2.9.0
4589 2006-03-22 Graham Percival <gpermus@gmail.com>
4591 * Documentation/user/advanced-notation.itely: minor fixes
4594 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4596 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4598 * branch lilypond_2_8
4600 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4602 * scripts/lilypond-book.py (samefile): new function, for windoze
4605 2006-03-21 Graham Percival <gpermus@gmail.com>
4607 * ly/engraver-init.ly: add info about StaffGroup.
4609 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4611 * input/regression/stem-direction-context.ly: idem.
4613 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4617 * input/regression/page-layout-twopass.ly: comment out \markup so
4620 * lily/instrument-name-engraver.cc (finalize): add to instrument
4621 name global System. This also fixes chopped instrument names, but
4622 doesn't crash when there are slurs/beams.
4624 * lily/slur-configuration.cc (add_score): disallow negative slur
4627 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4629 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4631 * lily/instrument-name-engraver.cc (process_music): kludge: add
4632 InstrumentName spanner to axis group of left bound. Fixes chopped
4633 off instrument names in EPS images.
4635 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4637 * scripts/abc2ly.py (option_parser): update to 2.7.40
4639 2006-03-20 Graham Percival <gpermus@gmail.com>
4641 * THANKS: move small doc contributors to SUGGESTIONS.
4643 * Documentation/user/ basic-notation, advanced-notation,
4644 global: small changes from mailist.
4646 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4648 * Documentation/user/advanced-notation.itely (Text marks): update
4649 for new rehearsalMarkAlignSymbol convention.
4651 * VERSION (PATCH_LEVEL): bump version.
4653 * input/test/instrument-name-align.ly: new file.
4655 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4657 * input/test/instrument-name-align.ly: new file. Document how to
4658 align instrument names.
4660 * lily/mark-engraver.cc: remove properties.
4662 * scm/define-context-properties.scm
4663 (all-user-translation-properties): remove align symbol properties
4664 for barnumber/reh. mark.
4666 * lily/break-align-interface.cc (self_align_callback): new
4667 interface, new function. Look at complete alignment. This handles
4668 tunable break alignments in case break-align-symbols are missing.
4670 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4672 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4674 * python/convertrules.py (conv): mark/bar number alignment rule.
4676 * lily/break-align-interface.cc (calc_positioning_done): also
4677 store offset from last visible break-alignment to its
4678 neighbor. This makes alignment on non-visible objects more reliable.
4680 * po/lilypond.pot (Module): ran po-replace.
4682 * input/regression/tie-single-manual.ly (Module): new file.
4684 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4685 look at has_manual_position_.
4686 (from_ties): set has_manual_position_ if tie has staff-position set.
4688 * lily/tuplet-bracket.cc (calc_positions): idem.
4690 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4693 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4695 * scm/define-markup-commands.scm (smallCaps): new markup command
4696 for turning a text to small caps using smaller font size and upper
4699 2006-03-17 Graham Percival <gpermus@gmail.com>
4701 * Documentation/user/ examples, instrument-notation,
4702 advnaced-notation: minor fixes from mailist.
4704 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4706 * Documentation/user/tutorial.itely (First steps): change example
4709 2006-03-17 Graham Percival <gpermus@gmail.com>
4711 * Documentation/user/ examples, advanced: minor changes from mailist.
4713 * THANKS: add Geoff Horton, for documentation stuff.
4715 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4717 * python/lilylib.py (system): revert have_select kludge.
4719 * Documentation/user/tutorial.itely (Commenting input files):
4720 update version numbers in doc.
4722 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4723 bound-padding to multi-measure-interface
4725 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4727 * input/test/engraver-example.ily: update version number.
4729 * VERSION (PACKAGE_NAME): release 2.7.39
4731 * lily/note-spacing.cc (get_spacing): heighten threshold where
4732 accidentals/arpeggios influence previous spacing fully.
4734 * lily/rest.cc (y_offset_callback): only use direction if
4735 staff-position wasn't set before.
4737 * lily/bar-number-engraver.cc: add support for
4738 barNumberAlignSymbol.
4739 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4741 * lily/pointer-group-interface.cc (set_ordered): new function.
4742 (add_unordered_grob): new function.
4744 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4745 to ordered, unless the opposite has been proved. This fixes
4746 random reordering of large object groups across linebreaks,
4749 * lily/main.cc (do_chroot_jail): printf format fix.
4751 * lily/tie-formatting-problem.cc (generate_configuration):
4752 multiply y-shift for dot with direction.
4754 * scm/define-markup-commands.scm (note-by-number): put (magstep
4755 size) in y-attach too.
4757 * Documentation/topdocs/NEWS.tely (Top): show override.
4759 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4760 direction for stems.
4762 2006-03-15 Graham Percival <gpermus@gmail.com>
4764 * Documentation/user/ changing-defaults, global: minor
4767 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4769 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4771 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4772 breakable items after uniformly stretched notes.
4774 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4775 outline with outer edge of note heads. This prevents infinity
4776 problems with tied whole notes.
4778 * scripts/lilypond-book.py (do_file): use os.popen
4780 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4782 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4784 * Documentation/user/invoking.itely: Add ragged-right to bug report
4787 2006-03-14 Graham Percival <gpermus@gmail.com>
4789 * Documentation/user/global.itely: small fix from mailist.
4791 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4793 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4794 file descriptor returned by tempfile.mkstemp() when writing
4795 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4798 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4800 * po/fi.po: newline bugfix.
4802 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4804 * scm/paper.scm (paper-alist): Rounding fixes.
4806 2006-03-13 Graham Percival <gpermus@gmail.com>
4808 * Documentation/user/ changing-defaults, instrument-notation,
4809 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4811 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4815 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4817 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4820 * python/lilylib.py (print_environment): move ps_page_count to
4823 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4825 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4827 * scm/framework-ps.scm (embed-document): new function. Use to
4830 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4832 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4834 * Documentation/user/instrument-notation.itely (Setting simple
4835 songs): Added \book{...} around the full example, so the separate
4836 markups are included in the printed example.
4838 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4840 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4843 * python/lilylib.py (system): rewrite system() using
4844 subprocess. Remove >& redirection trickery.
4846 2006-03-11 Graham Percival <gpermus@gmail.com>
4848 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4849 notation-appendices.itely: minor fixes from mailist.
4851 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4853 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4854 unsplit man also needs images.
4856 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4858 * VERSION (PACKAGE_NAME): 2.7.38 released.
4860 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4862 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4865 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4867 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4868 respects the Score.skipTypesetting property.
4870 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4872 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4873 Prolog. No %%EOF after CFF file.
4875 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4877 * lily/constrained-breaking.cc (get_max_systems): used to return a
4879 (combine_demerits): use pointers to reduce copying data
4880 (calc_subproblem): idem
4881 (get_page_penalty): add page turn penalties
4883 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4885 * Documentation/user/invoking.itely (Invoking lilypond): better
4886 explanation of -e usage.
4888 * lily/main.cc (main_with_guile): don't append to
4889 init_scheme_code_string
4891 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4893 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4895 * scripts/convert-ly.py (do_options): don't print help for
4898 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4899 @code and @example. Update from texinfo.tex from CVS.
4901 2006-03-08 Graham Percival <gpermus@gmail.com>
4903 * Documentation/user/scheme-tutorial.itely: clarifies distances
4904 measured in staff-spaces.
4906 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4908 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4909 consider[k] is true.
4911 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4913 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4914 consider columns that have originals. Unifies spacing for mm
4915 rests around line breaks.
4917 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4918 (set_text_rods): idem.
4919 (calculate_spacing_rods): new function: share code between
4920 set_text_rods and set_spacing_rods.
4921 (set_text_rods): take extents of bounds into account.
4923 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4925 * Documentation/user/basic-notation.itely (Writing music in
4926 parallel): don't use relative.
4928 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4930 * ly/music-functions-init.ly (Module): add shiftDurations
4932 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4934 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4936 * ly/engraver-init.ly: init vocalName to nil.
4938 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4940 * scm/music-functions.scm (music->make-music): bugfix,
4941 KeyChangeEvents are now handled correctly.
4943 * scripts/lilypond-book.py: Add --debug option.
4945 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4947 * python/lilylib.py: add tempfile.
4949 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4951 * VERSION (PACKAGE_NAME): release 2.7.37
4953 * python/lilylib.py (ps_page_count): remove make_ps_images().
4954 (ps_page_count): remove mkdir_p
4955 (system): remove cleanup_temp.
4956 (exit): remove lilypond_version_(check)
4957 (error_log): remove pseudo_filter_p
4962 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4965 * lily/accidental-engraver.cc (make_standard_accidental): only add
4966 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4968 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4969 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4970 Make incompatibilities.
4972 * scm/output-ps.scm (grob-cause): replace backslashes by /
4973 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4975 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4977 * cygwin/GNUmakefile: Install fixes.
4979 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4981 * lily/note-head.cc (head::get_balltype): Compile fix.
4983 * flower/file-name.cc (dos_to_posix): Flower string fix.
4985 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4987 * python/lilylib.py: pychecker cleanups.
4989 * scripts/lilypond-book.py
4990 (Lilypond_snippet.output_print_filename): pychecker cleanups
4992 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4994 * python/lilylib.py (underscore): remove identify() , warranty()
4996 * ps/music-drawing-routines.ps: change Border routine for GSView
4999 * lily/stem.cc (height): use quantize-positions. This triggers
5000 set_stem_lengths, so scripts on beamed stems are handled correctly.
5002 * lily/side-position-interface.cc (aligned_side): check if edges
5003 of script are inside staff. Fixes accent of edge of the staff.
5005 * input/regression/staccato-pos.ly: more examples.
5007 * stepmake/aclocal.m4 (depth): fix bashism.
5009 * lily/lyric-combine-music-iterator.cc: move from
5010 new-lyric-combine-iterator.cc
5011 (process): add pending_grace_lyric_ member to delay lyrics on
5014 * lily/system-start-text.cc (print): suicide if we don't have any
5015 elements. Fixes hara kiri'd instrument names.
5017 * scripts/mup2ly.py (Module): remove.
5019 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5021 * Documentation/user/global.itely (A single music expression):
5022 close @lilypond properly
5024 * lily/volta-bracket.cc (modify_edge_height): change from
5025 after_line_breaking_callback. Suicide last bracket if appropriate.
5027 * python/lilylib.py: strip getopt support
5029 * scripts/etf2ly.py (do_options): use optparse
5031 * scripts/midi2ly.py: optparse, strip lilylib copy.
5033 * scripts/abc2ly.py (voices): use optparse.
5035 * stepmake/stepmake/generic-vars.make: new function absdir.
5037 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5039 * scripts/lilypond-book.py (find_file): use global_options for
5042 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5045 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5047 * python/lilylib.py (get_global_option): ughness for extracting
5048 global options from lilylib.
5049 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5051 * scripts/lilypond-book.py (get_option_parser): use optparse for
5052 option handling. Put options in global_options variable.
5054 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5056 * Documentation/index.html.in: clarify.
5058 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5060 * scm/layout-page-layout.scm (write-page-breaks): add a
5061 music-system-heights property to the page layout output.
5063 * scm/page.scm (make-page-stencil): take footer into account when
5064 computing the 'space-left page property
5065 (annotate-space-left): take footer into account when annonating
5068 2006-02-28 Graham Percival <gpermus@gmail.com>
5070 * Documentation/user/ advanced-notation, global: more (final)
5071 docs for music expressions, removed special fermatas.
5073 2006-02-27 Graham Percival <gpermus@gmail.com>
5075 * Documentation/user/ basic-notation, global: minor changes
5078 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5080 * scm/framework-ps.scm:
5081 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5082 layer for inf? and nan? from framework-ps to lily-library.
5084 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5086 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5087 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5089 * buildscripts/substitute-encoding.py (Module): remove file.
5091 * mf/GNUmakefile: more PFA strippage.
5093 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5095 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5098 * scm/framework-ps.scm: remove font name munging.
5100 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5102 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5104 * scm/markup.scm (define-markup-command): change
5105 def-markup-command to define-markup-command
5107 * scm/music-functions.scm (define-music-function): change
5108 def-music-function to define-music-function.
5110 * python/convertrules.py (conv): rules for def-music-function
5111 and def-markup-commands
5113 * Documentation/user/programming-interface.itely,
5114 input/no-notation/display-lily-tests.ly,
5115 input/regression/lily-in-scheme.ly,
5116 input/regression/markup-user.ly,
5117 input/regression/music-function.ly, input/regression/tie-chord.ly,
5118 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5119 ly/gregorian-init.ly: use new macro names (define-music-function,
5120 define-markup-command).
5122 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5124 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5125 (output): add comments to lp-book latex output.
5127 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5130 2006-02-23 Graham Percival <gpermus@gmail.com>
5132 * Documentation/user/ tutorial, global: minor changes.
5134 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5136 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5137 blocks (for make 3.80)
5139 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5140 \notemode so that user should not have to explicitely type it.
5142 * scm/define-music-display-methods.scm: various
5143 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5146 * input/no-notation/display-lily-tests.ly: new tests for
5147 \applyOutput and \applyContext
5149 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5151 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5152 changed it slightly so that the number of systems returned by
5153 solve () will be the same as the last value passed to resize
5154 (). I've also added more documentation, removed casts, fixed style
5155 problems and put in some recovery if constraints aren't satisfied."
5157 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5159 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5160 for emacs < 22 compatibility.
5161 (count-rexp): Use it.
5162 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5163 substring juggling (Milan Zamazal).
5165 2006-02-23 Graham Percival <gpermus@gmail.com>
5167 * Documentation/user/ basic-notation, advanced-notation,
5168 global.itely, invoking.itely, tutorial,itely:
5169 minor fixes from mailist.
5171 * scm/define-markup-commands.scm: improve docs of \filled-box.
5173 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5175 * Documentation/index.html.in: changes concern the previous release.
5177 * input/regression/+.ly: cultivate typographical terminology.
5179 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5181 * scm/define-grob-interfaces.scm (parentheses-interface): add
5182 padding to parentheses-interface.
5184 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5185 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5187 * VERSION (PATCH_LEVEL): release 2.7.36
5189 * lily/slur.cc: add avoid-slur (ugh.)
5191 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5192 intersection gets smaller. This fixes slurs over extreme points.
5194 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5195 stems with neutral-direction set.
5197 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5199 * lily/open-type-font.cc (load_table): format error.
5201 * lily/change-iterator.cc (process): format fix.
5203 * flower/include/international.hh (_f): idem.
5205 * flower/include/std-string.hh: add format printf attribute.
5207 * scm/define-grobs.scm (all-grob-descriptions): height of all
5208 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5210 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5213 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5215 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5217 * input/regression/: upgraded syntax for some files.
5219 * THANKS: Add bughunters.
5221 2006-02-22 Graham Percival <gpermus@gmail.com>
5223 * Documentation/user/ invoking.itely, advanced-notation.itely,
5224 global.itely: long-awaited "let's make chapter 10 not suck"
5225 update. Rearrange chapter 10; now called "global issues",
5226 addresses file structure, etc. Some info from other files
5227 moved into global.itely.
5229 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5231 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5232 catch trill-span-event notes.
5234 * Documentation/user/examples.itely (Ancient notation templates): typo.
5237 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5239 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5241 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5243 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5245 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5246 froum Laissez_vibrer_engraver.
5248 * ly/declarations-init.ly (repeatTie): add \repeatTie
5250 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5252 * scm/define-grob-properties.scm (all-user-grob-properties): add
5253 head-direction property.
5255 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5256 from_lv_ties. Take head direction argument.
5258 * lily/semi-tie-column.cc: rename from
5259 laissez-vibrer-tie-column.cc. Rename class too.
5261 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5264 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5266 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5268 (find_breaks): idem.
5270 2006-02-21 Graham Percival <gpermus@gmail.com>
5272 * Documentation/user/advanced-notation.itely: fixed make-moment]
5275 * Documentation/user/basic-notation.itely: more clarification to
5278 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5280 * lily/include/constrained-breaking.hh (class
5281 Constrained_breaking): new file.
5283 * lily/constrained-breaking.cc (resize): new file.
5285 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5287 * Documentation/user/advanced-notation.itely (Clusters): insert
5290 * lily/tie-column.cc (calc_positioning_done): support for
5293 * lily/tie-formatting-problem.cc
5294 (generate_extremal_tie_variations): factor out.
5295 (score_ties_configuration): annotate all tie
5296 (print_ties_configuration): new routine.
5297 (generate_configuration): nudge extremal ties outside of the head
5299 (score_ties_configuration): oops. convert to staff-space before
5300 determining position symmetry.
5302 2006-02-20 Graham Percival <gpermus@gmail.com>
5304 * Documentation/user/*-notation.itely: misc minor editing,
5305 shifting doc sections around.
5307 * Documentation/user/*-notation-itely, global.itely,
5308 changing-defaults.itely: added new stuff from NEWS.
5310 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5314 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5316 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5317 lilypond --verbose for lp-book.
5319 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5320 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5322 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5323 $(buildscript-dir) iso. absolute depth.
5325 * buildscripts/genicon.py (dir): thinko.
5327 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5329 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5331 * scm/output-lib.scm: swap darkcyan/darkyellow
5333 * THANKS: Add bughunters.
5335 2006-02-19 Graham Percival <gpermus@gmail.com>
5337 * Documentation/user/programming-interfaces.itely: fixed example.
5339 * Documentation/user/instrument-notation.itely: fix @{ @}.
5341 * scm/script.scm: add avoid-slur for \open.
5343 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5345 * lily/tie-formatting-problem.cc (score_configuration): use
5346 sliding score for min-length.
5348 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5349 spaghetti for icons.
5351 * buildscripts/genicon.py (program_name): new file.
5353 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5355 (generate_configuration): for small ties, also look for collisions
5356 at Y + DIR*h + DELTA_Y.
5357 (get_variations): consider variation for dot positions too.
5359 * lily/side-position-interface.cc (aligned_side): take abs for
5360 quantized rounded position. Fixes tenuto below staff.
5362 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5363 markers when necessary.
5365 * lily/program-option.cc (internal_set_option): add
5366 strict_infinity_checking option.
5368 * scm/output-lib.scm (cyan): swap yellow and cyan.
5370 2006-02-19 Graham Percival <gpermus@gmail.com>
5372 * darwin.patch: trivial linenumber update.
5374 * Documentation/user/ {various}: `\context foo = named' changed
5375 to `\new foo = "name"' in docs.
5377 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5379 * scm/stencil.scm (annotate-y-interval): use it.
5381 * scm/lily-library.scm (interval-sane?): new function.
5383 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5386 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5389 * flower/include/std-vector.hh (iterof): add iterof macro.
5391 * lily/enclosing-bracket.cc (width): new function.
5393 * lily/align-interface.cc (align_elements_to_extents): reinstate
5396 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5398 * Documentation/index.html.in: fix spelling: thankyous.
5400 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5402 * lily/lyric-hyphen.cc: typo.
5404 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5406 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5407 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5410 * VERSION: release 2.7.35
5412 * lily/beam.cc (get_default_dir): oops. Take abs () for
5414 (get_default_dir): use extreme position criterion only in absence
5415 of forced stem directions.
5417 * VERSION (PATCH_LEVEL): bump VERSION.
5419 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5420 dependencies. Necessary for -jX builds.
5422 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5424 * lily/relocate.cc (setup_paths): Yet another const fix.
5426 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5428 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5430 * lily/relocate.cc (setup_paths): oops.
5432 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5434 * Documentation/index.html.in: order links: html before PDF.
5436 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5438 * lily/tie-column-format.cc (Module): remove.
5440 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5442 * lily/text-spanner.cc (print): idem.
5444 * lily/dynamic-text-spanner.cc (print): only print line if longer
5447 * lily/auto-change-iterator.cc (change_to): formatting.
5449 * lily/beam.cc (get_default_dir): take extreme note head as input
5452 * lily/tie.cc (get_default_dir): only look directions for visible
5455 * lily/side-position-interface.cc (aligned_side): oops. Don't
5456 mutiply with direction. This fixes quantized (staccato, tenuto)
5457 scripts below notes.
5459 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5460 direction. Fixes c-lyrics-center-align.ly
5462 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5464 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5467 * lily/std-string.cc:
5468 * lily/include/std-vector.hh (split_string): Move and rename from
5469 lily/include/misc.hh, lily/misc.cc. Update callers.
5471 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5473 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5475 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5477 * flower/test-file.cc: New file.
5479 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5482 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5484 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5486 * flower/include/file-storage.hh: remove file.
5488 * lily/include/midi-item.hh (class Midi_track): idem.
5490 * lily/include/source.hh (class Sources): idem.
5492 * lily/include/performance.hh (class Performance): use vector
5495 * flower/include/cons.hh (class Cons): remove file.
5497 * flower/include/flower-proto.hh: remove template cruft.
5499 * lily/include/font-metric.hh: use size_t not vsize for indices.
5501 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5504 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5506 * lily/include/paper-book.hh (class Paper_book):
5507 make get_system_specs() public.
5509 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5510 the force=10000 case if we don't have a current-best.
5512 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5515 * flower/include/flower-proto.hh: remove outdated templates.
5517 * scm/page.scm: use annotate-spacing
5519 2006-02-15 Graham Percival <gpermus@gmail.com>
5521 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5523 * THANKS: moved Erlend Aasland to contributors.
5525 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5527 * config.hh.in: remove HAVE_PANGO_16
5529 * lily/tuplet-bracket.cc (calc_positions): multiply with
5530 staff-space for beam case. This fixes tuplets+beams on scaled
5533 * config.hh.in: remove all Kpathsea related defines.
5535 * lily/dot-column.cc (side_position): reach stem via dots->
5536 head->stem. Inspect all stems for dot collisions.
5538 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5541 * lily/bar-number-engraver.cc (process_music): document function
5544 * lily/score.cc (default_rendering): add pscore, not systems
5547 * lily/paper-book.cc (get_system_specs): separate generation of
5550 * flower/include/std-vector.hh: don't include config.hh
5552 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5554 * flower/include/std-vector.hh: Better wrapper compatibility with
5557 * flower/include/flower-proto.hh: Remove cheap forward declaration
5560 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5562 2006-02-14 Graham Percival <gpermus@gmail.com>
5564 * Documentation/user/invoking.itely: add warning about command line.
5566 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5568 * lily/include/lily-proto.hh: add Prob, rm Page.
5570 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5572 * VERSION: release 2.7.34
5574 * lily/relocate.cc (framework_relocation): show canary if
5575 GHOSTSCRIPT_VERSION undefined.
5577 * GNUmakefile.in: remove $(VERSION) symlink.
5579 * lily/relocate.cc (setup_paths): add +
5581 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5583 * Documentation/index.html.in: specify sizes for all big HTML pages.
5585 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5587 * config.hh.in: remove @FRAMEWORKDIR@
5589 * lily/system-start-text.cc (get_stencil): new file: separate out
5590 system-start-delimiter text support.
5592 * input/**ly: replace \context with \new where appropriate.
5596 * lily/slur-scoring.cc (get_base_attachments): use
5597 robust_relative_extent. This fixes problems with empty paper-columns.
5599 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5601 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5603 * scm/define-music-properties.scm (all-music-properties):
5604 create-new property.
5606 * lily/context-specced-music-iterator.cc (construct_children):
5607 inspect 'create-new property iso. magical $uniqueContextId context
5610 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5612 * lily/context-key-manager.cc (Module): new file. Encapsulate
5613 object key generation.
5615 * lily/include/context-key-manager.hh (Module): new file.
5617 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5619 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5622 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5624 (reloc_b): excise --enable-framework-dir
5626 * lily/relocate.cc (framework_relocation): use getenv
5627 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5629 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5631 * flower/include/std-string.hh:
5632 * flower/include/std-vector.hh: Finish std:: conversion; move
5633 flower extensions from std:: namespace. Update users.
5635 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5636 their expansion to vector<*>. Update users.
5638 2006-02-10 Graham Percival <gpermus@gmail.com>
5640 * Documentation/user/invoking.itely: add example to File structure.
5642 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5643 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5645 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5647 * ly/paper-defaults.ly: typo.
5649 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5650 set_parent() for parentheses. This will make it show up in bbox
5653 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5654 ly:grob-common* functions.
5656 * lily/grob-scheme.cc (LY_DEFINE):
5657 ly:grob-common-refpoint-of-array: new function
5658 ly:grob-common-refpoint: new function
5659 ly:grob-relative-coordinate: new function
5661 * lily/instrument-name-engraver.cc (process_music): use
5662 Text_interface::is_markup(). This fixes \markup on instrument names.
5664 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5667 * lily/slur.cc (print): idem.
5669 * lily/tie.cc: add line-thickness for ties.
5671 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5673 * scm/output-svg.scm: Document diversion from GNU coding standards
5674 as a workaround for a bug in Microsoft Internet Explorer.
5676 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5678 * lily/instrument-name-engraver.cc (process_music): use
5679 is_markup() iso. is_string()
5681 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5683 * lily/percent-repeat-engraver.cc (process_music): only look at
5684 main_part_ for % repeats.
5686 * lily/stem-tremolo.cc (get_beam_translation): new function.
5687 (calc_slope): new function.
5688 (height): don't use real slope.
5690 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5692 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5693 new connect-to-neighbor, control-points and staff-padding
5694 properties to make ligature brackets showing up again.
5696 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5698 * VERSION: release 2.7.33
5700 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5703 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5704 remove applyOutput example.
5705 (Objects connected to the input): document \tweak, \parenthesize
5707 * lily/relocate.cc (prefix_relocation): allow "current"
5708 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5709 changing VERSION in a lily tree less painful.
5711 * input/regression/parenthesize.ly: new file.
5713 * scm/output-lib.scm (parenthesize-element): new function.
5715 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5717 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5719 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5720 cause: accidentals are caused by note heads, not note events.
5722 2006-02-08 Graham Percival <gpermus@gmail.com>
5724 * darwin.patch: small patch from Erlend, thanks!
5726 * Documentation/user/basic-notation.itely: add stem-neutral example.
5728 * Documentation/user/putting.itely: clarifications.
5730 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5732 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5733 note, add more guidelines to what should go into NEWS.
5735 * input/sakura-sakura.ly: document how to override font.
5737 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5739 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5741 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5743 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5745 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5746 convertrules. Add explicit grouping, needed for python2.2.
5748 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5750 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5752 2006-02-07 Graham Percival <gpermus@gmail.com>
5754 * Documentation/user/global.itely: fix line-width in (text) docs.
5756 * Documentation/user/lilypond-book.itely: same.
5758 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5760 * VERSION (PACKAGE_NAME): release 2.7.32
5762 * Documentation/topdocs/NEWS.tely (Top): document new variable
5765 * flower/include/array.icc (Message): remove file.
5767 * flower/include/std-vector.hh: make sure vsize and VPOS are
5768 defined for binary_search_bounds().
5770 * flower/std-string.cc (std): add to_string(long unsigned).
5772 * configure.in (gui_b): excise std_string option.
5773 (gui_b): excise std_vector option.
5775 * flower/string.cc (Module): excise flower array & string
5777 * flower/include/std-string.hh: excise flower string.
5779 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5781 * python/convertrules.py (lilypond_version_re_str): require
5782 only numbers and dots in \version string.
5784 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5786 * lily/system-start-delimiter.cc (print): allow style = text too.
5788 * lily/system-start-delimiter-engraver.cc
5789 (acknowledge_system_start_text): new function, also add add to
5790 support of system-start-text (instrument names). This fixes
5791 instrument names on piano staves.
5793 * lily/instrument-name-engraver.cc: rewrite. Use
5794 system-start-delimiter approach. This save memory and cpu.
5796 * scm/define-grobs.scm (all-grob-descriptions): remove
5797 instrument-name from break-alignment.
5799 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5801 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5803 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5806 * configure.in (std_vector): On by default.
5808 * lily/include/font-metric.hh:
5809 * lily/include/tfm-reader.hh:
5810 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5813 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5815 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5817 * VERSION (PACKAGE_NAME): 2.7.31
5819 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5820 EPS edge at 0, but take minimum with left-overshoot. This fixes
5821 cut off system start delims.
5823 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5824 hack: add to axis group if not added yet. This fixes hara kiri'd
5827 * lily/hara-kiri-group-spanner.cc
5828 (force_hara_kiri_in_y_parent_callback): fix signatures.
5830 * lily/hairpin.cc (print): check next hairpin to see whether or
5831 not to be continuing.
5833 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5835 * Remove trailing whitespace from makefiles.
5837 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5840 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5842 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5844 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5846 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5848 * configure.in: Use it.
5850 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5852 * scm/music-functions.scm (pitch-of-note): new function.
5854 * ly/music-functions-init.ly: add \octave and \addquote
5856 * lily/parser.yy (music_function_chord_body): softcode \octave.
5857 (lilypond_header): softcode \addquote
5859 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5861 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5862 array.hh, parray.hh at all. Getting ready to flip the
5865 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5867 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5870 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5872 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5874 * flower/include/array.hh: typo.
5876 2006-02-02 Graham Percival <gpermus@gmail.com>
5878 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5880 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5882 * flower/include/pqueue.hh: Derive from std::vector.
5884 * flower/include/parray.hh: Conform to std::vector interface.
5887 2006-02-02 Graham Percival <gpermus@gmail.com>
5889 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5891 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5893 * flower/file-path.cc (is_file): remove if 0 section.
5895 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5896 selecting afii61352.
5898 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5900 * flower/include/std-vector.hh (boundary): Oops, reverse.
5902 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5903 remove superfluous `d'.
5905 * flower/include/std-vector.hh (boundary, top): Detach from class.
5906 Remove empty vector shell.
5908 * flower/include/array.hh (reverse, swap): Detach from class.
5911 * flower/include/std-vector.hh
5912 * flower/include/array.hh (concat): Globally change to insert ().
5915 * flower/include/std-vector.hh
5916 * flower/include/parray.hh
5917 * flower/include/array.hh (elem, elem_ref): Globally replace by
5920 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5922 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5924 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5925 anticipate on identifier substitutions.
5927 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5929 * flower/include/std-vector.hh (insert): Remove, replace by
5930 std::vector interface. Update callers.
5932 * flower/include/array.icc (insert): Change signature to
5933 match std::vector interface.
5935 * flower/include/array.icc (vector_sort): Bugfix.
5937 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5939 * lily/parser.yy (output_def_head_with_mode_switch): new
5940 production. Result: dashes and underscores may be used in the
5943 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5945 * python/convertrules.py (conv): oops. One slash too much.
5947 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5949 * flower/include/std-vector.hh (sort): Remove, replace by
5950 ::vector_sort. Update callers.
5952 * flower/include/std-vector.hh (slice): Remove. Update callers.
5955 * flower/test-std.cc (vector_sort): New test.
5957 2006-02-01 Graham Percival <gpermus@gmail.com>
5959 * Documentation/user/putting.itely: fixes from Erik.
5961 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5963 * flower/test-std.cc: Add simple unit test for vector migration.
5965 * stepmake/stepmake/test*: Unit test support.
5967 * flower/include/std-vector.hh (del): Remove. Use erase (),
5970 * flower/include/array.hh (begin, end): Add.
5973 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5975 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5976 std::string not String.
5978 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5981 * lily/prob.cc (Prob): copy type_ too.
5983 * lily/lily-guile.cc (mangle_cxx_identifier): new
5984 function. Class_bla::foo_bar_[px] ->
5985 ly:class-bla::foo-bar[?!]. Changes throughout
5987 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5989 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5991 * lily/beam.cc (calc_direction): take dir from visible stem in
5994 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5996 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5997 Fix -1, >=0 boundary checks for unsigned vsize.
5999 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6000 loop for unsigned vsize.
6002 * configure.in (--enable-std-vector): New option.
6003 (--enable-std-string): On by default.
6005 * flower/include/std-vector.hh: New file. Enable switch to
6006 std::vector, update client code.
6008 2006-01-30 Graham Percival <gpermus@gmail.com>
6010 * scm/document-translation.scm: clarify "this context is also
6011 known as". Thanks, Werner!
6013 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6015 * Documentation/user/invoking.itely: small fix from Don.
6017 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6019 * scm/lily.scm (define-scheme-options): rename option
6020 preview-include-book-title to book-title-preview
6021 (define-scheme-options): move force-eps-font-include (from paper
6022 block) to eps-font-include -d option.
6024 * VERSION (PATCH_LEVEL): release 2.7.30
6026 * input/bach-schenker.ly (staffPiano): new file.
6028 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6030 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6033 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6035 * ps/lilyponddefs.ps: remove start-system, stop-system,
6036 start-page fluff. This saves putting { } code on the stack, fixing
6037 stack overflows when including EPS files.
6039 2006-01-29 Graham Percival <gpermus@gmail.com>
6041 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6043 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6045 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6047 2006-01-28 Graham Percival <gpermus@gmail.com>
6049 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6051 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6053 * input/mutopia/claop.py: Update.
6055 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6057 * input/regression/completion-heads.ly (texidoc): fix.
6059 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6061 * lily/tie-formatting-problem.cc
6062 (set_ties_config_standard_directions): use abs iso fabs for ints.
6064 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6066 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6067 little less than noteheight, to prevent overlaps in chords.
6069 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6070 head, and fudge stem-attachment.
6072 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6074 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6076 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6078 * lily/main.cc (main): Debugging aid: catch exceptions.
6080 * flower/std-string.cc (to_string): Robustification. Fixes midi
6081 output with std::string.
6083 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6085 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6087 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6089 * Fix -DSTRING_UTILS_INLINED.
6091 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6093 * VERSION (PATCH_LEVEL): release 2.7.29
6095 * lily/relocate.cc (setup_paths): mingw uses std string too.
6097 * lily/*.cc: various fixes for substr(ARG).
6099 * lily/sustain-pedal.cc (print):
6101 * flower/file-name.cc (slashify): use std strings.
6103 * flower/string-convert.cc: remove publib.h
6105 * scm/define-markup-commands.scm (verbatim-file): new markup
6106 command \verbatim-file
6108 * Documentation/topdocs/NEWS.tely: fixup URLs
6110 * input/regression/alignment-vertical-manual-setting.ly (Module):
6113 * lily/align-interface.cc (align_elements_to_extents): overwrite
6114 translations with numbers in alignment-offsets from left bound
6116 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6117 (page-translate-systems): new function: take into account Y-offset.
6119 * Documentation/topdocs/NEWS.tely (Top): document new features.
6121 * input/regression/page-layout-manual-position.ly (Module): new
6124 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6126 * flower/file-path.cc (path::parse_path): Oops.
6128 * Finish std::string interface. For now, use std:: marker
6129 throughout for easy s/r.
6131 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6133 * Documentation/user/putting.itely (Score is a single musical
6135 (Score is a single musical expression): more typos.
6137 * scm/page.scm (annotate-space-left): thinko.
6138 (annotate-page): more thinkos.
6140 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6142 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6143 for different \score blocks separately.
6144 (post-process-pages): put write-page-layout into paper block.
6146 * lily/output-def.cc (get_parser): new file.
6148 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6151 * lily/include/output-def.hh (class Output_def): add parser_ member.
6153 * input/regression/page-layout-twopass.ly (Module): new file.
6155 * scm/lily.scm: remove cpp hack.
6157 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6159 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6161 * GNUmakefile.in (c-clean): New target.
6163 * flower/include/std-string.hh: String/std::string compatibility:
6164 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6167 * flower/rational.cc:
6168 * flower/include/rational.hh:
6171 * flower/include/offset.hh:
6173 * flower/interval.cc:
6174 * flower/include/interval.hh:
6176 * flower/string-convert.cc:
6177 * flower/include/string-convert.hh: Use std::string [interface].
6180 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6182 * Documentation/index.html.in: clean up.
6184 2006-01-25 Graham Percival <gpermus@gmail.com>
6186 * Documentation/user/putting.itely: another new untested doc section.
6188 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6190 * scm/layout-page-layout.scm (write-page-breaks): write
6191 \spacingTweaks #ALIST. Handle grace timing.
6193 * scm/: more imports.
6195 * scm/page.scm (make-page): add footer/header.
6196 (annotate-space-left): revise: only take page argument.
6197 (layout->page-init): new function.
6199 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6200 version of the system/spacing/linebreak hack writing to the output
6202 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6205 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6208 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6210 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6212 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6214 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6215 handling to page.scm
6217 * lily/prob-scheme.cc (LY_DEFINE): new file.
6218 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6220 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6223 * lily/music.cc (derived_mark): derive Music from Prob.
6225 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6227 * lily/prob.cc (Module): Implement Prob (Property Object), object
6228 with shared and r/w property alists.
6230 * lily/include/prob.hh (Module): new file. Declare Prob.
6232 * flower/string.cc: remove is_empty().
6234 * flower/include/string.hh (class String): remove String:: qualifier.
6236 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6237 substitute appropriate functions.
6239 * flower/include/string.hh (class String): remove to_str0 and
6240 is_empty(). S&R everywhere.
6242 2006-01-23 Graham Percival <gpermus@gmail.com>
6244 * Documentation/user/basic-notation.itely: add hairpin
6245 after-linebreak tweak to commonprop.
6247 * Documentation/user/putting.itely: added two new sections.
6249 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6251 * flower/international.cc:
6252 * flower/include/international.hh:
6254 * flower/getopt-long.cc:
6255 * flower/include/getopt-long.hh: Use std::string [interface].
6258 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6260 * stepmake/stepmake/executable-rules.make: Add dependency on
6263 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6265 * flower/file-path.cc:
6266 * flower/include/file-path.hh: Use std::string [interface].
6269 * flower/direction.cc:
6270 * flower/axis.cc: Unused. Remove.
6272 * configure.in (--enable-std-string): New option.
6274 * flower/std-string.cc:
6275 * flower/include/std-string.hh: New file.
6277 * flower/file-name.cc[STD_STRING]:
6278 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6280 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6282 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6284 * scm/define-markup-commands.scm (with-dimensions):
6285 with-dimensions markup command.
6287 * input/test/font-table.ly: use it.
6289 * lily/open-type-font.cc (glyph_list): new function.
6291 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6293 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6295 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6297 * ly/music-functions-init.ly (parallelMusic): new music function
6298 for parallel music entry.
6300 * scm/define-music-properties.scm (all-music-properties): new
6301 'void music property
6303 * scm/music-functions.scm (ly:music-message): make public, to be
6304 used in music function definitions
6306 * scm/lily-library.scm (collect-music-for-book): discard music
6307 when the 'void property is set.
6309 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6311 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6313 * mf/GNUmakefile: idem.
6315 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6317 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6319 * Documentation/user/notation-appendices.itely (The Feta font):
6322 * input/test/font-table.ly: new file. Generate font table within lily.
6324 * Documentation/user/notation-appendices.itely (The Feta font):
6325 use new font-table.ly file.
6327 * stepmake/stepmake/install-out-targets.make
6328 (local-install-outfiles): only create directory if
6329 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6331 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6333 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6335 * VERSION (PACKAGE_NAME): release 2.7.28
6337 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6338 the right font from a Mac dfont.
6339 (write-preamble): don't forget directory, only look at files.
6341 This fixes problems with TTF files in dfonts that don't match
6342 their PostScript names.
6344 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6345 PS name from TTF font.
6347 * input/regression/tie-manual.ly: document new feature.
6349 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6351 * VERSION (MY_PATCH_LEVEL): bump to .28
6353 * Documentation/user/basic-notation.itely (Ties): add tie examples
6356 * lily/tie-formatting-problem.cc (score_ties_configuration):
6357 symmetry penalties for outer ties.
6359 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6361 * lily/tie-formatting-problem.cc (generate_configuration)
6362 (set_manual_tie_configuration): skip non-pair manual
6363 tie-configuration, so you can set individual ties as
6365 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6367 * input/regression/tie-chord.ly: use generateTiePattern to
6370 * lily/tie-formatting-problem.cc (peak_around): new function.
6371 (score_configuration): use sliding criterion for staff line collisions.
6372 (score_configuration): idem for dot collisions.
6373 (generate_configuration): use separate stem_gap for gap to stem.
6375 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6376 separate penalty factors for x and y distance.
6377 (struct Tie_details): separate penalties for tip and center line collisions.
6379 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6381 * lily/tie-formatting-problem.cc (generate_configuration): make
6382 large ties avoid stafflines in the horizontal section.
6383 (score_configuration): use softcoded penalties
6384 (score_aptitude): idem.
6386 * lily/tie-helper.cc (from_grob): softcode tie details
6388 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6390 * lily/staff-symbol-referencer.cc (on_line): rename from
6393 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6395 * ly/music-functions-init.ly: remove duplicate tag.
6397 * lily/include/*.hh: GCC 4.1 fixes.
6399 006-01-16 Erlend Aasland <erlenda@gmail.com>
6401 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6403 * scm/define-music-types.scm: fix bug in desc. string
6404 for OverrideProperty
6406 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6408 * scripts/lilypond-book.py: bugfix
6410 * scm/define-music-types.scm: fix typos.
6412 2006-01-14 Graham Percival <gpermus@gmail.com>
6414 * Documentation/user/ basic-notation.itely, global.itely,
6415 advanced-notation.itely, instrument-notation.itely: small
6416 additions (bugs and commonly tweaked properties).
6418 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6420 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6421 detection of mingw build.
6422 (MINGW_BUILD): opps.
6424 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6426 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6429 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6431 * scm/music-functions.scm (skip->rest): add skip->rest
6433 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6435 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6438 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6439 config dirs. Aids debugging.
6440 (display_config): also display config files.
6442 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6444 * VERSION: release 2.7.27
6446 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6447 for determining bar size.
6449 * lily/staff-symbol.cc (print): place lines at distance line-positions
6451 * scm/define-grob-properties.scm (all-user-grob-properties): add
6454 * lily/staff-symbol.cc (height): new function.
6456 * input/regression/staff-line-positions.ly: new file.
6458 2006-01-06 Graham Percival <gpermus@gmail.com>
6460 * input/test/add-staccato.ly: remove reference to old file.
6462 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6464 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6465 lilypond binary too.
6467 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6469 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6471 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6473 * scripts/midi2ly.py: Bugfix: Declare datadir.
6475 * make/ly-rules.make:
6476 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6477 that seems to be gone). Fixes make web.
6479 * The grand 2005-2006 replace.
6481 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6483 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6485 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6486 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6487 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6488 like -dgs-font-load.
6490 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6491 remove absolute path to lilypond binary.
6493 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6495 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6497 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6499 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6501 * mf/GNUmakefile: remove broken dvips map symlink.
6503 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6506 * configure.in: Cosmetic fixes.
6508 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6510 * Documentation/user/music-glossary.tely (Pitch names): Added
6511 Spanish pitch names and durations, thanks to Ernesto Gancedo
6513 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6515 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6516 init. Fixes verbose printing of .scm files.
6518 * stepmake/aclocal.m4: add spaces before - options.
6520 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6522 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6523 of path search in local block variable.
6525 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6527 * configure.in (NCSB_DIR): --enable-ncsb-dir
6528 (LINK_GXX_STATICALLY): denko.
6530 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6532 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6533 use locate to find c059033l.pfb.
6535 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6537 * lily/tie-formatting-problem.cc
6538 (problem::generate_base_chord_configuration): Use my_round (was
6541 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6542 do not invoke mbrtowc.
6544 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6546 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6548 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6550 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6552 * Documentation/user/invoking.itely (svg): revise.
6554 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6556 * lily/lexer.ll: use sourcefilename iso. renameinput.
6558 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6560 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6561 <PostScriptName>.ttf instead of c059XXXttf.
6563 * lily/program-option.cc (LY_DEFINE): special support for
6564 --verbose, so it works before option init too.
6566 * mf/GNUmakefile (local-install): oops.
6568 * lily/lyric-hyphen.cc (print): oops.
6570 * buildscripts/pfx2ttf.fontforge: new file.
6572 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6573 ($(outdir)/%.ttf): new rule.
6575 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6578 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6581 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6583 * VERSION: release 2.7.26
6585 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6587 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6589 * lily/font-config.cc (init_fontconfig): verbosity.
6591 * THANKS: add Muziekacademie Lede.
6593 * scripts/musicxml2ly.py (print_voice_definitions): new function
6594 (print_score_setup): new function
6595 (convert): read part definition to output staves properly.
6597 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6600 * python/musicexp.py (Output_printer.__init__): use _ in data
6602 (Output_printer.unformatted_output): new function: no formatting,
6604 (Duration.get_length): remove isinstance() checks for
6605 Output_printer everywhere.
6607 * input/regression/lyrics-bar.ly (texidoc): add
6608 Separating_line_group_engraver.
6610 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6612 * lily/relocate.cc (framework_relocation): New function,
6613 factored from set_relocation ().
6614 (prefix_relocation): Rename from set_relocation ().
6615 (setup_paths): Use it.
6617 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6619 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6620 numbers. Patch by Erlend Aasland.
6622 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6624 * lily/font-config.cc (init_fontconfig): print warning if cache
6625 file is not existant.
6627 * lily/main.cc: don't use #ifdef but #if
6629 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6631 * lily/grob-property.cc (internal_set_property): don't abort on
6632 calculation-in-progress.
6634 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6636 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6637 connect-to-neighbor property not connect-to-other
6639 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6640 (LY_DEFINE): oops. don't forget protection.
6642 * flower/parse-afm.cc (Module): strip AFM handling completely.
6644 * lily/stencil-expression.cc: idem.
6646 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6648 * lily/function-documentation.cc (ly_add_function_documentation):
6649 use static member iso. Protected_scm
6651 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6653 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6655 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6657 * lily/relocate.cc (set_env_dir): New function.
6658 (set_relocation): Use it to fix setting PANGO_PREFIX.
6660 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6662 * input/regression/stem-direction-context.ly: remove rest.
6664 * lily/melody-engraver.cc (process_music): restart for bar lines.
6665 (acknowledge_slur): restart for slurs.
6667 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6669 * Documentation/user/invoking.itely: describe how to view SVG
6670 output using Inkscape which replace embedded fonts with OTF fonts.
6672 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6674 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6676 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6678 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6681 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6683 * VERSION (PACKAGE_NAME): release 2.7.25
6685 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6687 * input/regression/stem-direction-context.ly: new file.
6689 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6691 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6694 * ly/engraver-init.ly: add Melody_engraver
6696 * lily/beam.cc (calc_direction): use default-direction
6697 iso. get_default_direction()
6699 * scm/define-grob-properties.scm (all-user-grob-properties): add
6700 default-direction property.
6702 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6704 * lily/stem.cc (calc_default_direction): remove
6705 Stem::get_default_direction, use default-direction with callback
6708 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6710 * lily/melody-engraver.cc: new file. Acknowledge stems for
6711 interpolated stem directions.
6713 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6715 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6717 * lily/slur-configuration.cc (fit_factor): more robust check for
6718 point in curve X-extent.
6720 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6721 (outside_slur_callback): check for 'outside avoidance.
6723 * lily/slur-configuration.cc (score_extra_encompass): don't use
6724 bound->column() == avoid->column() for checking extents, as this
6725 doesn't work for accidentals.
6727 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6728 DynamicText hardcoding.
6730 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6731 crash if bound stem is NULL
6733 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6736 2005-12-22 Graham Percival <gpermus@gmail.com>
6738 * scm/define-markup-commands.scm: typo. @code{\raise}
6741 * darwin.patch: now used again, includes a
6742 required patch from fink.
6744 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6746 * po/TODO: mention gtranslator along with kbabel.
6747 * po/fi.po: update translations.
6749 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6751 * lily/relocate.cc (setup_paths): Bugfix.
6753 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6755 * lily/slur-configuration.cc (score_extra_encompass): don't use
6756 "avoid" choice for avoid-slur.
6758 * stepmake/bin/install.py (dest): don't create existing dir.
6760 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6762 * stepmake/bin/install.py: Remove file before copying.
6765 * stepmake/aclocal.m4: Do not substitute INSTALL.
6767 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6769 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6770 depend on link-tree.
6772 * lily/relocate.cc (setup_paths): only check path for non-absolute
6773 dir without directory part.
6775 * flower/file-name.cc (is_absolute): new method.
6776 (is_absolute): check root_ too.
6778 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6780 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6781 relocation code. Oops, don't comment out too much.
6783 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6786 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6789 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6791 * .cvsignore: Add install-sh.
6793 * autogen.sh (srcdir): Typo.
6795 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6797 * autogen.sh (srcdir): urg. Touch install-sh.
6799 * stepmake/bin/install-sh (Module): remove.
6801 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6803 * lily/include/relocate.hh: new file.
6805 * lily/relocate.cc: new file. Contain relocation logic.
6807 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6808 (main): read LILYPOND_VERBOSE as the first thing.
6810 * stepmake/aclocal.m4: remove INSTALL variable.
6812 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6813 separate target for making font symlinks.
6814 (documentation-dir): use $(if $(findstring )) for switching off
6817 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6818 something if DOCUMENTATION is no.
6820 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6822 * VERSION: release 2.7.24
6824 * lily/script-column-engraver.cc (stop_translation_timestep):
6825 delay adding to script-column.
6827 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6829 * python/convertrules.py (conv): rule for number-visibility
6831 * lily/slur-configuration.cc (score_extra_encompass): different
6832 distance measure for avoid and inside avoidance.
6833 (score_extra_encompass): use 1/(distance+eps) as penalty.
6835 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6836 encompass objects for generating slur curves.
6838 * lily/slur.cc: use details iso. slur-details property.
6840 * input/regression/slur-tuplet.ly: new file.
6842 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6844 * flower/include/offset.hh (class Offset): new operator /=
6846 * lily/tuplet-number.cc (print): new file, new interface.
6848 * scm/define-grob-properties.scm (all-user-grob-properties):
6849 remove number-visibility property.
6851 * lily/tuplet-bracket.cc (calc_control_points): new function
6852 (calc_connect_to_neighbors): new function.
6853 (print): remove text handling for tuplet numberdef.
6855 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6858 * lily/lily-guile.cc (robust_scm2booldrul): new function
6860 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6862 * lily/tuplet-bracket.cc (calc_position_and_height): use
6863 staff-padding to control whether tuplet brackets are over staves.
6865 * lily/grob.cc (suicide): clear dim_caches_.
6867 * lily/dimension-cache.cc (clear): new function.
6869 * lily/grob.cc (extent): swap order of min-extent and extent
6870 calculations. This fixes hara kiri staves.
6872 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6874 * lily/main.cc: Nitpick: relocation is not based on path, but on
6875 directory (location).
6877 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6879 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6881 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6883 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6885 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6887 * stepmake/stepmake/generic-vars.make (Module): idem.
6889 * stepmake/stepmake/executable-targets.make (default): use it.
6891 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6893 * make/GNUmakefile: don't install make rules.
6895 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6897 (prepend_env_path): more verbosity.
6899 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6901 * GNUmakefile.in: add dir argument for find command.
6903 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6904 fixes weird line numbers for point & click.
6906 * lily/source-file.cc (get_counts): init line/column/char counts.
6908 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6910 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6912 2005-12-16 Graham Percival <gpermus@gmail.com>
6914 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6915 minor fixes from Fredric. Thanks!
6917 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6919 * ly/music-functions-init.ly: add \bar and \clef music function
6921 * lily/lily-lexer.cc: idem.
6923 * lily/parser.yy (FIXME): remove BAR and CLEF.
6925 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6927 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6929 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6930 function arguments too
6932 * lily/main.cc (set_relocation): new function.
6934 * scripts/musicxml2ly.py (convert): add \version
6936 * lily/tie.cc: remove get_default_attachments()
6938 * VERSION (PACKAGE_NAME): release 2.7.23
6940 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6941 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6943 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6945 * lily/tie-formatting-problem.cc (score_ties): new function
6946 (get_variations): new function. Try flipping dirs for collisions.
6947 (generate_optimal_chord_configuration): new function. 1-opt search
6948 for better configuration.
6950 * lily/tie-configuration.cc: new file.
6952 * lily/tie.cc: junk Tie::get_configuration()
6954 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6955 (score_ties_configuration): new function.
6956 (generate_ties_configuration): new function.
6957 (generate_base_chord_configuration): new function.
6958 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6959 (set_manual_tie_configuration): Move body from tie-column-format.cc
6961 * input/regression/tie-dot.ly: new file.
6963 * lily/tie-formatting-problem.cc (score_configuration): score
6966 * lily/tie-helper.cc (get_transformed_bezier): new function
6968 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6970 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6971 -undefined suppress iso. -framework Python
6973 * scm/define-grobs.scm (all-grob-descriptions): set
6974 springs-and-rods (thanks Joe Neeman!)
6976 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6978 * input/no-notation/display-lily-tests.ly (test):
6979 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6980 changed from \tag #'(a b) to \tag #'a \tag #'b
6982 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6984 * Documentation/topdocs/NEWS.tely: strip out-www.
6986 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6988 * config.make.in (AR): add AR and RANLIB
6990 * flower/libc-extension.cc: include cassert
6992 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6995 2005-12-11 Graham Percival <gpermus@gmail.com>
6997 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6999 * stepmake/stepmake/python-modules-vars.make: define
7000 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7002 * THANKS: added Johannes Schindelin.
7004 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7006 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7008 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7009 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7011 * lily/parser.yy: reorganize file layout.
7013 * ly/music-functions-init.ly: add tweak music function.
7015 * lily/grob-info.cc (ultimate_music_cause): new function:
7016 recursively lookup causes.
7018 * lily/parser.yy (chord_body_element): allow music functions for
7019 post-events, allow music functions for chord elements.
7021 * lily/font-config-scheme.cc (display_fontset): add cast.
7023 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7024 #'(a b) -> \tag #'a \tag #'b rule.
7026 * python/musicexp.py (Output_printer.dump_version): new function
7028 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7030 * lily/parser.yy (FIXME): remove \tag
7031 (FIXME): remove tag_music() function.
7033 * lily/lily-lexer.cc: remove \tag
7035 * ly/music-functions-init.ly: define music-function "tag"
7037 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7039 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7041 * VERSION (PATCH_LEVEL): release 2.7.22
7043 * input/regression/lyric-hyphen-retain.ly: renew.
7045 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7048 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7049 iso. minimum-length property for rods.
7051 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7052 LyricSpace item to keep lyrics spaced apart.
7054 * ly/engraver-init.ly: remove Separating_line_group_engraver
7056 * Documentation/user/music-glossary.tely: do setfilename before
7059 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7061 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7062 See xref documentation, for example.
7064 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7066 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7067 pending_skip iso. ly_voice[-1]
7068 (main): add if __main__ for debugging.
7070 * python/musicxml.py (Accidental.__init__): new class.
7072 * scripts/musicxml2ly.py (progress): new function
7073 (musicxml_key_to_lily): don't barf on modeless keys.
7074 (create_skip_music): new function.
7075 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7076 (musicxml_note_to_lily_main_event): new function.
7078 * python/musicexp.py (Music.__init__): add comment field.
7079 (NestedMusic.append): new routine.
7080 (SequentialMusic.print_ly): print comment.
7081 (ArpeggioEvent.ly_expression): new class
7082 (BeamEvent.ly_expression): new class
7083 (NoteEvent.__init__): support for cautionary/forced accs.
7085 * lily/lookup.cc (slur): normal order for array loop.
7087 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7090 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7093 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7095 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7097 * scripts/lilypond-book.py: Introduce option
7098 --preserve-line-breaks, for usage with srcltx
7100 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7102 * scm/output-lib.scm (print-circled-text-callback): draw circle
7103 around text using make-circle-markup.
7105 * Documentation/user/*: strip out-www from file names.
7107 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7109 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7110 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7112 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7114 * Documentation/user/GNUmakefile: idem.
7116 * Documentation/user/macros.itexi: strip out-www
7118 * python/rational.py: python 2.3 compat.
7120 * VERSION (PATCH_LEVEL): release 2.7.21
7122 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7123 option formatting, lilypond style.
7125 * python/musicexp.py: grab from Ikebana: a library for composing
7126 ly music expressions.
7127 (Output_printer): class for advanced .ly printing.
7130 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7131 convert to pythonesque structure.
7133 * python/rational.py: PD rational number class.
7135 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7137 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7139 * lily/part-combine-iterator.cc: Minor bugfix
7141 * THANKS: Update bughunters
7143 2005-12-02 Werner Lemberg <wl@gnu.org>
7145 * mf/README: Document process for proper mf2pt1 conversion.
7147 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7150 * mf/feta-harmonica.mf: Removed. Unused.
7152 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7154 * scripts/lilypond-book.py (do_file): fix thinkos.
7156 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7158 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7159 ($(outdir)/parser.cc):
7160 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7162 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7164 * ly/titling-init.ly (tagline): it should be a space between
7165 "Music engraving by LilyPond" and the version number.
7167 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7169 * VERSION (PACKAGE_NAME): release 2.7.20
7171 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7173 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7175 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7177 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7179 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7181 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7183 * kpath-guile/: remove directory
7185 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7186 file. Encapsulate kpathsea using commandline tools.
7188 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7191 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7193 * Documentation/user/advanced-notation.itely (Setting automatic
7194 beam behavior): Correct a few typos. Thanks to David Bobroff.
7196 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7197 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7199 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7201 * scripts/*.py: gmane address for bugs.
7203 2005-11-28 Pal Benko <benkop@freestart.hu>
7205 * make/ly-rules.make: add -f switch to mv
7207 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7209 * lily/bar-line.cc: interpret it
7211 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7213 * configure.in (--disable-documentation): New switch.
7215 * GNUmakefile.in: Use it.
7217 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7219 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7221 * scripts/lilypond-book.py (do_file): search chunks for
7224 * GNUmakefile.in: add copy step in between so we can lose the
7225 out-www directories.
7227 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7229 * lily/pango-font.cc (pango_item_string_stencil): put
7230 geometry.width into glyph-string too.
7232 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7234 * scm/define-music-display-methods.scm (RevertProperty):
7235 (OverrideProperty): Use grob-property-path property, a list of
7236 symbols, instead of grob-property, which used to be a single
7238 (BassFigureEvent): a figure can be a plain number, not necessarily a
7241 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7243 * VERSION: release 2.7.19
7245 * lily/figured-bass-engraver.cc (process_music): check
7246 figuredBassCenterContinuations first.
7248 * scm/translation-functions.scm (format-bass-figure): make double
7251 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7254 * lily/system-start-delimiter-engraver.cc: move from
7255 Nested_system_start_delimiter_engraver, rename
7256 Nested_system_start_delimiter_engraver ->
7257 System_start_delimiter_engraver.
7259 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7260 bracket type from hierarchy.
7262 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7264 * lily/rest.cc (y_offset_callback): read staff-position.
7266 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7267 mark after-line-breaking-callback as internal.
7269 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7271 2005-11-25 Werner Lemberg <wl@gnu.org>
7273 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7275 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7277 * stepmake/bin/add-html-footer.py (do_file): add google
7279 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7280 staff if first_start_ is true.
7282 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7284 * scripts/midi2ly.py (split_track): add __repr__ members.
7285 (track_first_item): only return Item if not None. This fixes a
7286 problem when dumping a track that starts with an empty channel.
7288 * python/midi.c: doc module.
7290 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7292 * Documentation/user/global.itely (Creating MIDI files): Fix
7293 compilation problem.
7295 2005-11-22 Graham Percival <gpermus@gmail.com>
7297 * Documentation/user/basic-notation.itely: clarify dynamic
7300 * Documentation/user/advanced-notation.itely: add unicode
7301 escape control example, whatever that is. :)
7303 * Documentation/user/global.itely: added "removing dynamics
7306 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7308 * VERSION (PATCH_LEVEL): release 2.7.18
7310 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7311 System_start_delimiter_engraver by
7312 Nested_system_start_delimiter_engraver.
7314 * lily/nested-system-start-delimiter-engraver.cc (struct
7315 Bracket_nesting_node): new class.
7316 (struct Bracket_nesting_group): new class
7317 (struct Bracket_nesting_staff): new class.
7318 (process_music): create hierarchy of grobs. This allows separate
7319 tuning of different SSDs.
7321 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7322 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7324 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7326 * lily/side-position-interface.cc (aligned_side): multiply
7329 * lily/script-engraver.cc (make_script_from_event): allow setting
7332 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7334 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7336 * scm/define-grobs.scm (all-grob-descriptions): new grob
7337 NestedSystemStartDelimiter.
7339 * input/regression/system-start-heavy-bar.ly: new file.
7341 * lily/nested-system-start-delimiter-engraver.cc: new file.
7343 * lily/nested-system-start-delimiter.cc: new file.
7345 * input/regression/system-start-nesting.ly: new file.
7347 * scm/define-grobs.scm (all-grob-descriptions): use X side
7348 positioning for positioning braces for nested contexts.
7350 * lily/system-start-delimiter.cc (print): don't divide extent by
7352 (print): use style iso. glyph.
7353 (staff_bracket): translate glyph inside routine already.
7355 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7357 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7360 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7362 * scm/define-context-properties.scm
7363 (all-user-translation-properties): rename figuredBassFormatter
7364 from newFiguredBassFormatter.
7366 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7368 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7370 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7372 * lily/beam.cc (calc_beaming): new function.
7373 (calc_shorten): new function.
7375 * THANKS: add Edward Neeman.
7377 * input/regression/accidental-clef-change.ly: new file.
7379 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7381 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7383 * lily/clef-engraver.cc (inspect_clef_properties): reset
7384 localKeySignature for clef changes.
7386 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7388 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7389 add dummy definition that works in Linux and add information in
7390 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7392 * Documentation/user/changing-defaults.itely (Modifying context
7393 plug-ins): Add index for \with.
7395 * Documentation/user/music-glossary.tely (dal segno): Updated
7396 example to version >=2.6.
7398 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7400 * Documentation/user/instrument-notation.itely (Printing chord
7401 names): Reorder \chordmode and \repeat in one example.
7403 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7405 * VERSION: release 2.7.17
7407 * Documentation/topdocs/NEWS.tely (Top): add note about
7410 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7411 new function. Search region of 3 positions for best tie.
7412 (score_configuration): new function.
7413 (score_aptitude): new function.
7414 (generate_configuration): new function.
7415 (get_configuration): new function.
7416 (Tie_formatting_problem): new function
7418 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7420 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7422 * THANKS: add Eduardo Vieira & Ralph Little
7424 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7427 * lily/include/tie-formatting-problem.hh (class
7428 Tie_formatting_problem): add Tie_details to
7429 Tie_formatting_problem. Update calling conventions.
7431 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7434 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7436 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7438 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7439 scm/define-context-properties.scm: Maintenance bugfix: make
7440 ligature brackets work again by removing obsolete ligature
7441 primitive callback push/pop.
7443 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7444 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7447 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7449 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7450 used and do not call it a path.
7451 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7453 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7455 * lily/include/tie-formatting-problem.hh (class
7456 Tie_formatting_problem): new file.
7458 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7460 * Documentation/misc/ChangeLog-2.3: new file.
7462 * lily/audio-staff.cc (output): degarianize.
7464 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7466 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7467 Unset PYTHONOPTIMIZE. Fixes install if set.
7469 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7471 * python/convertrules.py (conv): add warning about drums.
7473 * make/stepmake.make: include toplevel-version.make after config.make.
7475 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7476 also allow python2.4
7478 * config.make.in (configure-srcdir): remove GXX GCC vars.
7480 * stepmake/aclocal.m4: don't do non-srcdir build with
7481 symlinks. Use inclusion, so the src directory name can be changed.
7483 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7485 * make/mutopia-vars.make:
7486 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7489 2005-11-13 Werner Lemberg <wl@gnu.org>
7491 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7492 but the affected path. This ensures that the (overlapping) outlines
7493 have the same direction, which is a necessary prerequisite for
7494 FontForge's algorithm to remove overlaps.
7497 * mf/feta-haak.mf: Formatting.
7498 (draw_bracket): Slightly modify outline to avoid an unnecessary
7500 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7501 them from the affected paths.
7503 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7505 * mf/README: remove xpm / accordion notes.
7507 * lily/tie-column-format.cc (set_chord_outline): add dots into
7508 skyline extents. This fixes tie formatting if the left head has dots.
7510 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7511 space inside the staff.
7512 (get_configuration): shift another position if necessary in case
7515 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7517 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7518 buildscript-dir iso. $(depth)/buildscripts.
7520 * tex/GNUmakefile (local-uninstall): remove
7521 music-drawing-routines.ps juggling.
7523 * stepmake/stepmake/install-targets.make (local-install-files):
7524 prepend src-dir to install targets.
7526 * lily/system-start-delimiter-engraver.cc
7527 (acknowledge_system_start_delimiter): use
7528 add_offset_callback(). This fixes translation of nested
7531 * lily/grob-closure.cc (add_offset_callback): only encaps in
7532 simple_closure if it's a procedure.
7534 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7537 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7538 remove-empty where pertinent.
7540 2005-11-12 Graham Percival <gpermus@gmail.com>
7542 * Documentation/user/instrument-notation.itely: added
7543 Cameron Horsburgh's multiple stanzas docs. Thanks!
7545 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7548 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7549 make picture in builddir, not srcdir.
7551 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7553 * VERSION: release 2.7.16
7555 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7558 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7560 * Documentation/user/examples.itely (Piano templates): Minor
7561 modification to the Piano centered lyrics example.
7563 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7565 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7568 * Documentation/user/point-and-click.itely: simplify p&c
7569 instruction: don't configure firefox. Put lilypond-invoke-editor
7570 in front of the browser.
7572 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7573 (run-browser): new function.
7575 * lily/parser.yy (Lily_lexer): recognize Book
7577 * lily/book.cc (clone): new function
7579 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7581 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7583 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7584 Maintenance bugfix: reduce number of font related warnings by
7585 updating naming conventions for glyph-name.
7587 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7589 * scm/define-grobs.scm (all-grob-descriptions): add
7590 rhythmic-grob-interface to TabNoteHead.
7592 * scm/layout-beam.scm (check-quant-callbacks): remove
7595 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7597 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7598 alignment of centered divisiones.
7600 * scm/scripts.scm (articulations): Maintenance bugfix:
7601 follow-into-staff -> quantize-position.
7603 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7604 plica head in porrectus deminutus.
7606 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7608 * make/lilypond.fedora.spec.in (Group): add %clean section.
7610 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7611 less then 1/5th of total length.
7612 (print): use gap too. Fixes tupletUp-single-bracket.ly
7614 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7615 events into EventChord. This fixes textspanners on mm rests. Fixes
7618 * lily/side-position-interface.cc (get_axis): read side-axis
7619 (set_axis): set side-axis.
7621 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7622 properties everywhere.
7624 * lily/spacing-spanner.cc (breakable_column_spacing): add
7625 average-spacing-wishes. Take maximum if not set.
7626 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7628 * scm/define-grobs.scm (all-grob-descriptions): add
7629 average-spacing-wishes.
7631 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7632 offset callbacks. This fixes alignment for Fingering objects.
7634 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7635 space for key - timesig combination.
7637 * input/regression/script-stem-tremolo.ly (Module): new file.
7639 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7642 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7643 Fixes: c-tremolo-script.ly.
7645 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7647 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7649 * scm/define-grobs.scm (all-grob-descriptions): remove
7650 self-X-offset. Fixes alignment of octavate-8.
7652 * scripts/lilypond-book.py (datadir): look in
7653 LILYPONDPREFIX/share/lilypond/current/
7655 * GNUmakefile.in: symlink current to <VERSION>.
7657 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7659 * lily/main.cc: eps listed as a backend.
7661 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7663 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7665 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7667 * lily/include/score.hh (class Score): remove texts_ member.
7669 * lily/beam.cc (set_stem_lengths): force direction callback.
7670 (print): read quantized-positions, so we can force
7671 Beam::set_stem_lengths to occur.
7672 (rest_collision_callback): use common X parent.
7674 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7676 * flower/file-path.cc (find): Bugfix: Return name of file found.
7678 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7679 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7680 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7682 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7684 * flower/offset.cc: idem.
7686 * mf/*.mf: update email address.
7688 * lily/font-config-scheme.cc: new file.
7690 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7692 * lily/*: cs.uu.nl -> xs4all.nl
7694 * VERSION (PATCH_LEVEL): release 2.7.15
7696 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7699 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7701 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7703 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7705 * lily/staff-performer.cc (process_music): add audio
7706 elements. This makes MIDI instrument changes work once again.
7708 * lily/main.cc (LY_DEFINE): add gmane address.
7710 * lily/beam.cc: remove calc_positions()
7712 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7713 original_ in private scope.
7714 (class Grob): drop pscore_ pointer, change to output_def pointer.
7715 (class Grob): cleanup class definition.
7717 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7719 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7721 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7722 absolute. Better diagnostics.
7724 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7725 This makes lilypond run from the build directory using argv0
7726 relocation (without any --prefix or LILYPONDPREFIX setting).
7728 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7730 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7732 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7733 with simple-closure.
7735 * lily/self-aligment-interface.cc (set_align_self): new function
7736 (set_center_parent): new function.
7738 * lily/side-position-interface.cc (set_axis): new function.
7740 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7743 * scm/define-grob-properties.scm (all-user-grob-properties):
7744 remove [XY]-offset-callbacks add [YX]-offset
7746 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7748 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7749 entry for time signatures after breathing signs. Bug report by
7752 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7754 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7755 not absolute, make it absolute using PATH.
7757 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7759 * python/midi.c (initmidi): Fix type for mingw.
7761 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7763 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7765 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7768 * stepmake/aclocal.m4: Support python cross compiling.
7770 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7773 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7775 * scm/output-lib.scm (chain-grob-member-functions): replace
7778 * lily/chained-callback.cc (Module): remove file.
7780 * lily/rest-collision.cc (force_shift_callback_rest): change to
7783 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7785 * lily/grob.cc (y_parent_positioning): remove axis argument from
7786 parent_positioning callbacks.
7787 (Grob): junk init code
7788 (get_offset): use generic property callbacks for
7789 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7790 (axis_parent_positioning): new function
7791 (axis_offset_symbol): new function
7792 (chain_offset_callback): new function
7793 (add_offset_callback): new function
7795 * lily/beam.cc (rest_collision_callback): change signature; this
7796 is now a chained callback.
7798 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7799 callback administration.
7801 * lily/simple-closure.cc: new file. Smob type that allows "grob
7804 (ly:make-simple-closure FUNC A B)
7806 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7809 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7812 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7814 * lily/rest.cc (polyphonic_offset_callback): remove.
7816 * lily/script-engraver.cc (try_music): remove bool* argument.
7818 * scm/script.scm (default-script-alist): set quantize-position
7821 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7823 * lily/side-position-interface.cc (aligned_side): move staff
7824 position quantization from
7825 Side_position_interface::quantised_position().
7826 (quantised_position): remove
7828 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7830 * input/regression/beam-quant-standard.ly: reindent, set
7831 debug-beam-quanting to #t.
7833 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7834 10000 if this is a "hard" concave beam.
7836 * lily/beam.cc (calc_least_squares_positions): change from
7837 calc_least_squares_dy
7838 (set_stem_lengths): this is now a chained callback.
7840 * lily/context-property.cc (execute_general_pushpop_property):
7841 bugfix override with procedure should have effect.
7843 * scm/define-grob-properties.scm (all-internal-grob-properties):
7844 remove position-callbacks.
7846 * scm/define-grobs.scm (all-grob-descriptions): use
7847 ly:make-callback-chain for positions property.
7849 * scm/layout-beam.scm (check-quant-callbacks): return list of
7852 * scm/lily.scm (type-p-name-alist): add callback-chain
7854 * lily/lily-guile.cc (type_check_assignment): type check failure
7855 is warning not message.
7857 * lily/grob-property.cc (try_callback): walk callback chain if
7860 * lily/chained-callback.cc: new file. new smob type.
7862 * lily/lily-guile.cc (procedure_arity): new function.
7864 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7866 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7868 2005-10-25 John Mandereau <john.mandereau@free.fr>
7870 * Documentation/user/instrument-notation.itely (Figured bass):
7871 describe new features
7873 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7875 * lily/beam.cc (calc_least_squares_dy): use property callback.
7877 * lily/beam-concave.cc (calc_concaveness): use property callback.
7879 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7881 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7885 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7887 * scm/layout-page-layout.scm (page-headfoot): annotate
7890 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7892 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7893 doesn't take y-space.
7895 * scm/paper.scm (paper-alist): fix A7 dimensions.
7897 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7899 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7900 src-wildcard, remove $(wildcard).
7902 * po/GNUmakefile (PO_FILES):
7903 * ps/GNUmakefile (PS_FILES):
7904 * tex/GNUmakefile (TEX_FILES):
7905 * cygwin/GNUmakefile (POSTINSTALLS):
7906 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7907 some wildcard calls.
7909 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7911 * THANKS: add Thomas Bushnell.
7913 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7915 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7916 (lilypond-main): Redirect to gui-main if 'gui is set.
7918 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7919 for alternative installations kludging s/share/lib/g
7922 * SConstruct (libdir_package_version): Define.
7924 * python/SConscript:
7925 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7928 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7930 * lily/main.cc: clarify --safe.
7932 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7934 * VERSION: release 2.7.14
7936 * Documentation/user/*.itely: remove minimumVerticalExtent.
7938 * scm/define-grobs.scm (all-grob-descriptions): remove
7939 RemoveEmptyVerticalGroup
7941 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7943 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7946 * python/convertrules.py (conv): add rules.
7948 * lily/grob.cc: remove is_empty()
7950 * lily/grob-property.cc: remove add_to_list_property().
7952 * scripts/convert-ly.py (datadir): add prefix switching hack to
7955 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7956 space-function tweak.
7958 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7960 * scm/define-grob-properties.scm (all-user-grob-properties):
7961 remove callback property.
7963 * lily/include/grob.hh (class Grob): remove property_callbacks_
7964 member. Properties of procedure type are assumed to be callbacks.
7966 * lily/ligature-engraver.cc (override_stencil_callback):
7967 rewrite. Use noteHeadLigaturePrimitive as source.
7969 * scm/define-grob-properties.scm (all-internal-grob-properties):
7970 remove ligature-primitive-callback
7972 * lily/include/dimension-cache.hh (class Dimension_cache): make
7973 class, with Grob as friend.
7975 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7976 has_extent_callback()
7978 * scm/translation-functions.scm (format-new-bass-figure): read
7979 figuredBassPlusDirection
7981 * scm/define-context-properties.scm
7982 (all-user-translation-properties): add figuredBassPlusDirection.
7984 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7986 * lily/align-interface.cc (set_ordered): new function.
7988 * lily/grob.cc (flush_extent_cache): rewrite.
7990 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7991 Interval pointer directly.
7993 * lily/main.cc (setup_paths): insert extra / .
7994 (setup_paths): junk cff entry.
7996 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7999 * lily/axis-group-engraver.cc (finalize): remove
8000 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8002 * lily/grob.cc (Grob): don't set extent from ctor.
8003 (extent): use property callbacks.
8005 * lily/axis-group-interface.cc: remove set_axes() function.
8007 * lily/grob-property.cc (del_property): new function.
8009 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8011 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8013 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8015 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8017 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8019 * mf/SConscript: Updates.
8021 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8023 * stepmake/stepmake/*:
8027 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8028 from any directory in build-dir. Cleanups.
8030 * make/srcdir.make.in: Remove.
8032 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8034 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8037 * lily/SConscript: Remove ttftools.
8039 * SConstruct: Resurrect.
8041 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8043 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8046 * lily/paper-book.cc (add_score_title): put Paper_score title into
8049 * scm/translation-functions.scm (format-new-bass-figure): also
8050 allow plus in combination with _
8052 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8054 * VERSION: 2.7.13 released.
8056 * lily/note-collision.cc (check_meshing_chords): don't wipe
8057 stencil, merely set transparent.
8059 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8060 (Top): document #'callbacks.
8061 (Top): document nested \override.
8063 * input/regression/figured-bass.ly: update for slash and pluses.
8065 * input/regression/figured-bass-continuation-forbid.ly (Module):
8068 * scm/translation-functions.scm (format-new-bass-figure): use
8069 slashed-digit if diminished is set.
8070 (format-new-bass-figure): add + if 'augmented is set.
8072 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8074 * input/test/piano-staff-distance.ly: remove file.
8076 * Documentation/user/advanced-notation.itely (Formatting cue
8077 notes): use length-fraction for making stems/beams smaller.
8079 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8082 * lily/new-figured-bass-engraver.cc: new property
8083 centerFiguredBassContinuations
8085 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8088 * lily/context-property.cc (execute_general_pushpop_property):
8091 * input/regression/override-nest.ly: new file.
8093 * python/convertrules.py (FatalConversionError.subber): conversion
8094 rule for #'callbacks
8096 * input/regression/override-nest.ly: new function.
8098 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8101 * lily/context-property.cc (lookup_nested_property): new function.
8102 (evict_from_alist): new function.
8103 (general_pushpop_property): new function.
8104 (execute_general_pushpop_property): rewrite. Support nested
8107 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8109 * lily/beam.cc: use length-fraction too.
8111 * scm/define-grob-properties.scm (all-user-grob-properties):
8112 remove property flag-width-function
8113 (all-user-grob-properties): remove space-function.
8115 * scm/layout-beam.scm: remove flag-width-function.
8117 * lily/beam.cc: remove flag-width-function
8119 * scm/layout-beam.scm: remove beam dir functions.
8121 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8123 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8124 for easier grace tweaks.
8126 * lily/beam.cc: remove dir-function.
8128 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8130 * lily/grob.cc: remove spacing-procedure.
8132 * lily/note-head.cc (calc_stem_attachment): new function.
8133 (internal_print): use callback to get glyph-name.
8135 * lily/grob-property.cc (get_interfaces): new function.
8137 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8139 * lily/stem.cc (calc_stem_end_position): new function.
8140 (calc_length): new function.
8141 document details for stem.
8142 remove Stem::get_direction()
8144 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8146 * lily/grob-property.cc (set_callback): new function.
8148 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8150 * lily/item-scheme.cc: new file.
8152 * lily/bar-line.cc (before_line_breaking): remove function.
8153 remove bar-size-procedure, break-glyph-function
8155 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8157 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8159 * lily/system-start-delimiter.cc (print): suicide from
8160 here. Remove after_line_breaking_callback.
8162 * lily/script-interface.cc (calc_direction): use callback for direction.
8164 * lily/side-position-interface.cc (aligned_side): don't use
8165 Side_position_interface::get_direction directly. Use callback.
8167 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8169 (get_print_stencil): rename from get_stencil: create stencil with
8170 transparency, color and cause.
8172 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8174 * python/convertrules.py (conv): insert temporary warning rule.
8176 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8178 * lily/grob-property.cc (try_callback): remove marker if applicable.
8180 * lily/grob.cc: elucidate doc about after/before-line-breaking
8182 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8184 * lily/stem.cc (height): idem.
8186 * lily/stem-tremolo.cc: idem.
8188 * lily/slur.cc (height): don't use get_uncached_stencil()
8190 * lily/rest.cc (y_offset_callback): use offset callback
8191 iso. after-line-breaking callback.
8193 * lily/grob.cc: change after/before-line-breaking-callback to
8194 after/before-line-breaking dummy properties.
8196 * lily/include/grob.hh: remove Grob_status.
8198 * scm/define-context-properties.scm
8199 (all-user-translation-properties): remove verticalAlignmentChildCallback
8201 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8202 (calc_direction): use callback
8203 (calc_positions): use callback.
8205 * lily/tie.cc (calc_direction): use callback. Only call parent
8206 positioning for more than one tie.
8208 * lily/tie-column.cc (calc_positioning_done): use callback
8210 * lily/slur-scoring.cc (calc_control_points): use callback
8212 * lily/slur.cc (calc_direction): use callback.
8214 * lily/note-collision.cc (force_shift_callback): remove.
8216 * lily/dot-column.cc (force_shift_callback): remove. Use
8217 other_axis_parent_positioning.
8219 * lily/grob.cc (other_axis_parent_positioning): new function.
8220 (same_axis_parent_positioning): new function
8222 * lily/align-interface.cc (alignment_callback): remove function.
8224 * lily/note-collision.cc (calc_positioning_done): use callback.
8226 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8227 (calc_direction): idem.
8228 remove print function.
8230 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8232 * lily/dot-column.cc (calc_positioning_done): use callback.
8234 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8236 * lily/beam.cc (calc_direction): use pseudo-property for beam
8238 (calc_positions): use callback
8240 * lily/align-interface.cc (calc_positioning_done): use
8241 callback. Fold fixed distance and normal alignment in one function.
8243 * lily/stem.cc (calc_stem_end_position): use callback.
8244 (calc_positioning_done): idem.
8245 (calc_direction): idem.
8246 (calc_stem_end_position): idem
8247 (calc_stem_info): idem.
8249 * lily/grob-property.cc (get_property_data): new function:
8250 (try_callback): new function.
8252 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8255 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8257 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8259 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8263 * lily/include/*.hh (Module): compile fixes.
8265 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8267 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8268 as an argument for char-syntax: use (char-syntax (or nil 0))
8269 instead of (char-syntax nil), thanks to Milan Zamazal.
8271 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8273 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8276 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8279 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8281 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8282 add class_name() method.
8284 * lily/music-scheme.cc: remove ly:music-name.
8286 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8288 * cygwin/postinstall-lilypond.sh: Remove cruft.
8290 * cygwin/postremove-lilypond.sh: Remove.
8292 * cygwin/GNUmakefile (default): Remove postremove rules.
8294 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8296 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8299 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8302 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8303 consider break index for broken spanner.
8305 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8306 characters from string before splitting.
8308 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8310 * scm/framework-ps.scm (output-preview-framework): use
8311 is-book-title to determine whether to chop off the booktitle.
8313 * lily/paper-book.cc (systems): init from book-title-properties
8314 (add_score_title): init score-title-properties.
8316 * ly/paper-defaults.ly: add {score,book}-title-properties.
8318 * scm/document-backend.scm (lookup-interface): error message if
8319 using unknown interface.
8321 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8324 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8326 (make_bracket): new function.
8328 * scm/lily.scm (define-scheme-options): add paper-size option.
8330 * ly/declarations-init.ly (laissezVibrer): get paper size from
8333 * scm/translation-functions.scm: use \fontsize for changing the
8336 * scm/define-grobs.scm (all-grob-descriptions): set
8337 between-length-limit to 1.0
8339 * lily/tie-helper.cc: add between_length_limit_ detail property.
8341 * mf/feta-bolletjes.mf: typos.
8343 * lily/note-head.cc (internal_print): don't shadow idx
8344 parameter. This fixes wrong attachment for do shape heads.
8346 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8348 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8350 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8352 * scm/layout-slur.scm: rename from slur.scm
8354 * scm/layout-page-layout.scm: rename from page-layout.scm
8356 * scm/layout-beam.scm: rename from beam.scm
8358 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8359 bass-figure-interface
8361 * lily/new-figured-bass-engraver.cc (process_music): add
8362 implicitBassFigures property.
8364 * scm/define-markup-commands.scm (pad-x): new markup.
8366 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8367 minimumVerticalExtent on FiguredBass context.
8369 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8370 case the continuation crosses a line break.
8372 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8374 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8375 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8376 absolute file name bug.
8378 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8380 * VERSION (PACKAGE_NAME): release 2.7.12
8382 * input/regression/figured-bass-continuation-center.ly: new file.
8384 * input/regression/beam-outside-beamlets.ly: new file.
8386 * lily/beam.cc (set_beaming): don't clip edges.
8387 (connect_beams): don't clip edges.
8389 * lily/beaming-info.cc (clip_edges): new function.
8391 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8393 * Documentation/user/instrument-notation.itely (Figured bass):
8394 demonstrate extenders, update seealso links.
8396 * scm/titling.scm (marked-up-headfoot): change tagline
8397 handling. tagline = ##f will blank the tagline as well.
8399 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8401 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8403 * lily/new-figured-bass-engraver.cc (struct
8404 New_figured_bass_engraver): add new_music_found_ member.
8406 * lily/lilypond-version.cc (Lilypond_version): deal with
8407 incorrectly formatted version strings.
8409 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8410 New_figured_bass_engraver by default.
8412 * lily/ttf.cc (print_trailer): only define glyph names when
8413 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8415 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8417 * lily/horizontal-bracket.cc (make_bracket): new function.
8419 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8420 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8421 BassFigureLine, BassFigureAlignment
8423 * lily/new-figured-bass-engraver.cc (process_music): new file.
8425 * lily/figured-bass-continuation.cc: new file.
8427 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8430 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8432 * scripts/lilypond-book.py: Bug fix, put the quote around the
8433 actual score for LaTeX documents.
8435 * scm/define-grobs.scm (all-grob-descriptions): Change
8436 collapse-height of the SystemStartBracket grob to 5.0,
8437 so the bracket disappears for single stave score lines (similarly
8438 to SystemStartBraces).
8440 * Documentation/user/advanced-notation.itely (Polymetric
8441 notation): Clarify the use of compressMusic.
8443 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8444 that the grace spacer note in other staves need the same duration
8445 and document the stroke-style property.
8447 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8449 * Documentation/user/global.itely (Vertical spacing): document
8450 alignment-extra-space and fixed-alignment-extra-space.
8452 * Documentation/topdocs/NEWS.tely (Top): add entry.
8454 * input/regression/alignment-vertical-spacing.ly: new file.
8456 * python/convertrules.py (conv): add rule.
8458 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8460 * lily/align-interface.cc (stretch_after_break): new
8461 function. Read fixed-alignment-extra-space property.
8462 (align_elements_to_extents): read alignment-extra-space property.
8464 * lily/lily-guile.cc (robust_scm2dir): new function.
8466 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8467 (annotate-space-left): new function. Annotate space left on page.
8468 (annotate-y-interval): new function.
8469 (paper-system-annotate-last): new function. Annotate bottom-space.
8471 * mf/feta-beugel.mf (y):
8473 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8475 * VERSION (PACKAGE_NAME): release 2.7.11
8477 * scm/lily-library.scm (interval-translate): new function
8478 (interval-center): new function.
8480 * scm/page-layout.scm (paper-system-annotate): new function. Add
8481 arrows for dimensions.
8483 * scm/stencil.scm (dimension-arrows): new function.
8485 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8487 * input/regression/page-spacing.ly: add annotatespacing
8489 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8490 (LY_DEFINE): new function ly:paper-system-set-property!
8492 * Documentation/user/global.itely (Paper size): explain how to add
8495 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8496 correspond to GS's definition.
8498 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8500 (print): only connect to next bracket if the next one is alive.
8501 (print): set padding to 0.0 if the bound is a breakable
8502 column. This makes tupletFullLength brackets reach up to the staff
8503 line if it doesn't connect to the next line.
8505 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8507 * lily/bar-number-engraver.cc: correct docs.
8509 * scm/output-lib.scm (first-bar-number-invisible): rename from
8510 default-bar-number-visibility
8512 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8514 * scm/define-music-properties.scm (all-music-properties): remove
8517 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8519 * po/fi.po: refresh.
8521 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8523 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8525 (disappear): bugfix.
8527 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8529 * lily/include/paper-system.hh (class Paper_system): remove
8530 staff_extents_ member.
8532 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8534 * lily/include/paper-system.hh (class Paper_system): remove
8535 number_ variable. Remove is_title_. Remove break_before_penalty_
8537 * lily/paper-book.cc (systems): use 'number property iso. number_
8540 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8541 remove ly:paper-system-number.
8543 * scm/lily-library.scm (paper-system-title?): new function.
8545 * lily/book.cc (process): bugfix: flip ?: cases.
8547 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8550 * ly/music-functions-init.ly: add outputProperty music function.
8552 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8554 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8556 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8558 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8560 * lily/paper-system.cc (internal_get_property): new function.
8562 * Documentation/user/global.itely (Vertical spacing): refer to
8565 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8568 * input/regression/page-spacing.ly: new file.
8570 * input/regression/page-top-space.ly: new file.
8572 * lily/spacing-spanner.cc: cmath -> math.h
8574 * lily/paper-system.cc (read_left_bound): new function. Read
8575 line-break-system-details from left bound to determine extents.
8577 * Documentation/user/programming-interface.itely (Using LilyPond
8578 syntax inside Scheme): change applyxxx -> applyXxx.
8580 * ly/music-functions-init.ly: add outputProperty music function.
8582 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8584 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8586 * python/convertrules.py (conv): rule
8588 * ly/music-functions-init.ly: applyxxx -> applyXxx
8590 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8593 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8595 * flower/include/real.hh: include <math.h> iso. <cmath>
8597 * flower/include/offset.hh: include real.hh
8599 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8601 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8602 fix example, now that 'interfaces is no longer directly available.
8604 * lily/book.cc (process): don't crash if paper == NULL.
8608 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8610 * scm/define-music-types.scm (music-descriptions): set length and
8611 start-callback for QuoteMusic
8613 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8615 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8616 arguments. Fixes compilation error with gcc 3.3.
8618 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8620 * VERSION: release 2.7.10
8622 * stepmake/stepmake/python-module-rules.make
8623 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8625 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8628 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8630 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8631 -Werror. Otherwise GCC barfs over various optimizations.
8633 * scm/define-grob-properties.scm (all-internal-grob-properties):
8634 add note-head property
8636 * Documentation/user/instrument-notation.itely (Laissez vibrer
8639 * input/regression/laissez-vibrer-ties.ly: new file.
8641 * lily/laissez-vibrer-engraver.cc: new file.
8643 * lily/include/tie-column-format.hh: new file.
8645 * lily/tie-column-format.cc: new file.
8647 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8649 * lily/laissez-vibrer-tie.cc: new file.
8651 * lily/include/laissez-vibrer-tie.hh: new file.
8653 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8655 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8657 * scm/define-grobs.scm (all-grob-descriptions): add
8658 LaissezVibrerTie, LaissezVibrerTieColumn
8660 * lily/tie-column.cc (set_tie_config_directions): new function
8661 (final_shape_adjustment): new function.
8662 (shift_small_ties): new function.
8664 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8666 * lily/include/tie.hh (struct Tie_details): add x_gap_
8667 (struct Tie_configuration): add head_position_
8669 * lily/tie-column.cc (set_chord_outline): new function.
8671 * mf/cmr.enc.in: remove file.
8673 2005-09-11 Graham Percival <gpermus@gmail.com>
8675 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8677 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8679 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8680 reduce aliasing effects.
8682 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8685 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8687 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8689 * flower/include/real.hh: std::fabs too.
8691 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8693 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8695 * lily, flower: Include C++ iso C headers. Import namespace std
8698 * lily/side-position-interface.cc:
8700 * lily/note-head.cc:
8701 * lily/include/includable-lexer.hh:
8702 * flower/include/string-data.icc: Remove using std::*.
8704 * lily, flower: Include C++ iso C headers. Import namespace std
8707 * lily/side-position-interface.cc:
8709 * lily/note-head.cc:
8710 * lily/include/includable-lexer.hh:
8711 * flower/include/string-data.icc: Remove using std::*.
8713 * Documentation/user/instrument-notation.itely (Entering lyrics):
8714 Multiple latin-1->utf-8 conversion fix.
8716 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8718 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8720 * lily/tie.cc (get_configuration): also avoid dots for non-space
8723 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8725 * Documentation/user/instrument-notation.itely: Bugfix.
8727 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8729 * tex/GNUmakefile: don't install texinfo.tex
8731 * tex/ : cleanup: remove unused files.
8733 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8735 * flower/include/real.hh: using std::{isnan,isinf}
8737 * VERSION (PATCH_LEVEL): release 2.7.9
8739 2005-09-05 Graham Percival <gpermus@gmail.com>
8741 * Documentation/user/ instrument-notation.itely,
8742 advanced-notation.itely: minor tweaks.
8744 * input/test/script-chart.ly: add item padding.
8746 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8748 * flower/offset.cc: use math.h iso. <cmath>
8750 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8753 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8754 (widen-left-stencil-edges): new function. Fix alignment problems
8755 with LaTeX includegraphics.
8757 * lily/text-interface.cc (interpret_markup): use abort().
8759 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8761 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8763 * lily/tie.cc (get_configuration): update bezier shape as we
8765 (get_configuration): don't move large ties if we're outside of the
8768 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8770 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8772 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8774 * .cvsignore: Add auto-generated configure files and then some.
8776 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8778 * scm/define-grobs.scm (DynamicLineSpanner): Add
8779 X-extent-callback. Fixes hairpin-slur collision.
8781 2005-08-31 Graham Percival <gpermus@gmail.com>
8783 * Documentation/user/advanced-notation.itely,
8784 basic-notation.itely: minor changes.
8786 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8788 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8789 \linebreak between each .eps file if \betweenLilyPondSystem is
8792 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8793 music): Document the \linebreak
8795 * Documentation/user/lilypond-book.itely,
8796 input/tutorial/lbook-latex-test.tex,
8797 Documentation/user/examples.itely: Remove \usepackage{graphics}
8799 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8801 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8803 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8806 * scripts/lilypond-book.py (PREAMBLE_LY): define
8807 inside-lilypond-book
8808 (modify_preamble): new function. Insert \RequirePackage{graphics}
8809 when no {graphics found in preamble.
8811 2005-08030 Graham Percival <gpermus@gmail.com>
8813 * Documentation/user/basic-notation.itely, global.itely,
8814 tutorial.itely: misc small changes.
8816 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8818 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8821 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8823 * lily/tie-column.cc (new_directions): put Tie down on center
8826 * lily/script-interface.cc (before_line_breaking): use
8827 Grob::programming_error
8829 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8831 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8834 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8836 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8838 2005-08-29 Werner Lemberg <wl@gnu.org>
8840 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8841 the `*.scale.pfa' files to avoid warnings.
8843 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8845 * lily/tempo-performer.cc (process_music): idem.
8847 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8849 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8851 * Documentation/user/advanced-notation.itely (Text markup): not a
8854 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8856 * lily/staff-performer.cc (initialize): add tempo/name to
8860 2005-08-26 Graham Percival <gpermus@gmail.com>
8862 * Documentation/user/advanced.itely: add text-only example.
8864 * Documentation/user/invoking.itely: add index entries for
8867 * Documentation/user/ tutorial.itely, basic-notation.itely:
8868 small fixes suggested by Steve D. Thanks!
8870 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8872 * input/regression/markup-bidi-pango.ly: new file.
8874 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8875 standard. Remove #ifdef. Remove memleak.
8876 (text_stencil): use text_dir to decide how to composite items.
8877 (text_stencil): determine uniform text direction for the entire
8880 * scripts/lilypond-book.py (output_name): remove
8881 latex_filter_cmd. Non-portable to non-Unix systems.
8882 (get_latex_textwidth): use File.write and os.unlink() instead.
8884 * THANKS: add Vicente & Trevor.
8886 * lily/grob.cc (discretionary_processing): look up origin for
8887 programming_error too.
8889 * input/regression/tie-broken.ly: new file.
8891 * lily/tie-column.cc (set_chord_outlines): set outline for line
8894 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8896 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8897 unscaled transform, just translate stencils.
8899 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8902 * scm/define-markup-commands.scm (wordwrap-string): use
8904 (wordwrap-stencils): idem.
8907 (wordwrap-stencils): translate last line to right for
8908 text-direction = LEFT.
8910 * scm/define-grob-properties.scm (all-user-grob-properties): add
8913 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8915 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8916 when copying a Lily_parser object.
8918 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8920 * scm/define-markup-commands.scm (null): add null markup.
8922 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8924 * lily/item.cc: Add documentation of center-invisible
8926 2005-08-24 Graham Percival <gpermus@gmail.com>
8928 * Documentation/user/advanced-notation.itely: add info about
8931 * Documentation/user/programming-interface.itely: fix example
8932 involving raised text.
8934 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8936 * lily/beam.cc (print): fix X start/end points of isolated
8939 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8941 * lily/multi-measure-rest.cc (set_text_rods): new function.
8943 * lily/vertical-align-engraver.cc (process_music): call
8944 Align_interface::set_axis(). This forces #'elements to be ordered,
8945 preventing random vertical reordering of staves.
8947 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8948 add avoid-slur property.
8950 * Documentation/user/basic-notation.itely (Measure repeats): add
8951 countPercentRepeats example.
8953 * Documentation/user/advanced-notation.itely (Other text markup
8954 issues): remove remark about normal-font. We have \normal-text
8956 * input/regression/tie-chord.ly: add note about remaining bugs.
8958 * lily/tie.cc (print): try Tie_column::set_directions () if
8959 control-points not yet defined.
8961 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8963 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8964 extent. This fixes braces falling out of the EPS bbox.
8966 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8969 2005-08-23 Graham Percival <gpermus@gmail.com>
8971 * {various} : change #up->#UP and #down->#DOWN.
8973 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8975 * Documentation/user/advanced-notation.itely: clarify
8976 what objects handles text on a multimeasure rest.
8978 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8980 * VERSION (PATCH_LEVEL): release 2.7.7
8982 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8984 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8986 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8988 * input/regression/*.ly: formatting clean-up. Default layout
8989 before music expression.
8991 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8992 romanze28-2 example.
8994 * scm/ps-to-png.scm: remove dir-re function.
8995 (make-ps-images): generate page names, instead of globbing them.
8996 This brings down LilyPond memory usage for make web by a factor
8999 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9000 don't use glob. With 3000 files, globbing
9001 Documentation/user/out-www/ can take too much time.
9003 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9005 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9007 * input/regression/tie-manual.ly: new file
9009 * input/regression/tie-chord.ly: update.
9011 * flower/include/interval.hh (struct Interval_t):
9013 * lily/tie.cc (distance): new function
9014 (height): new function.
9015 (init): new function
9016 (Tie_details): new struct.
9018 * lily/skyline.cc (skyline_height): new function.
9020 * lily/tie-column.cc (set_chord_outlines): new function.
9021 (new_directions): read tie-configuration
9023 * lily/skyline.cc: fix ASCII art.
9025 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9027 * python/convertrules.py (string_or_scheme): Fix spelling error
9029 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9031 * lily/tie-column.cc (set_directions): set directions only once.
9032 (add_configuration): new function.
9034 * lily/tie.cc (set_control_points): new function
9036 * lily/tie-column.cc (new_directions): new function.
9038 * ly/music-functions-init.ly: set 'pitch property
9039 iso. trill-pitch. This makes \relative work with \pitchedTrill
9041 * lily/tie.cc (get_configuration): new function. Don't generate
9042 control points, rather, generate configuration.
9043 remove head-pair property.
9045 * lily/include/tie.hh (struct Tie_configuration): new struct.
9047 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9049 * Documentation/topdocs/NEWS.tely: clarify.
9051 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9053 * lily/tie.cc: remove minimum-length
9055 * scm/define-grob-properties.scm (all-user-grob-properties):
9056 remove staffline-clearance, y-offset
9058 * input/regression/tie-dots.ly (Module): remove.
9060 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9061 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9063 * input/regression/tie-single.ly: new file.
9065 2005-08-21 Graham Percival <gpermus@gmail.com>
9067 * ly/bagpipe.ly: fix compile problem.
9069 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9071 * lily/midi-item.cc (name): new method.
9073 * lily/staff-performer.cc (acknowledge_audio_element): use
9074 signature of baseclass.
9076 * lily/engraver-group.cc (do_announces): move recursion call out
9079 * lily/drum-note-performer.cc (class Drum_note_performer): use
9080 process_music everywhere.
9082 * ly/performer-init.ly: add default children everywhere.
9084 * lily/paper-book.cc (output): call paper-book-write-midis
9085 directly: always write MIDI, even if no \layout {} block.
9087 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9089 * VERSION (PACKAGE_NAME): release 2.7.6
9091 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9092 about not being able to handle repeat.
9094 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9096 * Documentation/user/examples.itely (Piano templates):
9097 * lily/include/performer-group.hh: Remove last traces of
9098 Performer_group_performer. Fixes make web.
9100 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9102 * Documentation/user/examples.itely (Piano templates): change
9103 Engraver_group_engraver -> Engraver_group
9105 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9106 scm_stand_in_procs is not weak_any.
9108 * lily/volta-bracket.cc (print): don't use strcmp().
9110 * lily/volta-engraver.cc (process_music): use
9111 Text_interface::is_markup() for setting the 'text property of the
9114 * input/mutopia/claop.py (accents): update syntax to 2.6
9116 * scm/define-context-properties.scm
9117 (all-user-translation-properties): add countPercentRepeats.
9119 * Documentation/user/basic-notation.itely (Measure repeats): add
9120 isolated percent example.
9122 2005-08-18 Graham Percival <gpermus@gmail.com>
9124 * input/ {various}: change direction #1, #-1 to
9125 #up/#down or \fooUp, \fooDown.
9127 * Documentation/user/music-glossary.tely: #-1 to #down.
9129 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9130 to #up, #-1 to #down.
9132 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9134 * lily/include/engraver-group.hh: rename.
9136 * lily/include/performer-group.hh: rename.
9138 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9140 * input/test/script-abbreviations.ly: Removed some old LaTeX
9143 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9145 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9146 Remove functions. Remove if 1: constructs, reindent.
9148 * scripts/convert-ly.py (add_version): Add functions from
9151 * scm/script.scm (default-script-alist):
9152 s/priority/script-priority. Fixes script stacking. Backportme.
9153 (Fermata): Very low priority.
9155 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9157 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9159 * input/regression/slur-script.ly: remove padding tweaks. Add
9162 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9163 time sigs and related stuff.
9165 * scm/define-grob-properties.scm (all-user-grob-properties): add